Files
teleport/web/packages/shared/components/Search/PredicateDoc.tsx
T
Jeff Pihach 3f75acb163 Add license headers to web files that were missing it. (#21315)
* Lint the web files but not node_modules or vendored files.

* Add license headers to web files that were missing it.

* Add missing licenses.
2023-02-07 16:27:31 +00:00

72 lines
2.1 KiB
TypeScript

/**
* Copyright 2023 Gravitational, Inc
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import React from 'react';
import { Text, Link } from 'design';
const GUIDE_URL =
'https://goteleport.com/docs/setup/reference/predicate-language/#resource-filtering';
export const PredicateDoc = () => (
<>
<Text typography="paragraph2">
Advanced search allows you to perform more sophisticated searches using
the predicate language. The language supports the basic operators:{' '}
<Text as="span" bold>
<code>==</code>{' '}
</Text>
,{' '}
<Text as="span" bold>
<code>!=</code>
</Text>
,{' '}
<Text as="span" bold>
<code>&&</code>
</Text>
, and{' '}
<Text as="span" bold>
<code>||</code>
</Text>
</Text>
<Text typography="h4" mt={2} mb={1}>
Usage Examples
</Text>
<Text typography="paragraph2">
Label Matching:{' '}
<Text ml={1} as="span" bold>
<code>labels["key"] == "value" && labels["key2"] != "value2"</code>{' '}
</Text>
<br />
Fuzzy Searching:{' '}
<Text ml={1} as="span" bold>
<code>search("foo", "bar", "some phrase")</code>
</Text>
<br />
Combination:{' '}
<Text ml={1} as="span" bold>
<code>labels["key1"] == "value1" && search("foo")</code>
</Text>
</Text>
<Text typography="paragraph2" mt={2}>
Check out our{' '}
<Link href={GUIDE_URL} target="_blank">
predicate language guide
</Link>{' '}
for a more in-depth explanation of the language.
</Text>
</>
);