@cloudscape-design/components 3.0.737 → 3.0.739
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/autosuggest/options-controller.d.ts.map +1 -1
- package/autosuggest/options-controller.js.map +1 -1
- package/button-dropdown/interfaces.d.ts +1 -1
- package/button-dropdown/interfaces.d.ts.map +1 -1
- package/button-dropdown/interfaces.js.map +1 -1
- package/button-dropdown/internal.d.ts.map +1 -1
- package/button-dropdown/internal.js +2 -1
- package/button-dropdown/internal.js.map +1 -1
- package/button-dropdown/styles.css.js +17 -16
- package/button-dropdown/styles.scoped.css +30 -24
- package/button-dropdown/styles.selectors.js +17 -16
- package/internal/environment.js +1 -1
- package/internal/environment.json +1 -1
- package/internal/manifest.json +1 -1
- package/mixed-line-bar-chart/chart-container.js +1 -1
- package/mixed-line-bar-chart/chart-container.js.map +1 -1
- package/package.json +1 -1
- package/property-filter/controller.d.ts +4 -3
- package/property-filter/controller.d.ts.map +1 -1
- package/property-filter/controller.js +27 -11
- package/property-filter/controller.js.map +1 -1
- package/property-filter/i18n-utils.d.ts +4 -24
- package/property-filter/i18n-utils.d.ts.map +1 -1
- package/property-filter/i18n-utils.js +12 -6
- package/property-filter/i18n-utils.js.map +1 -1
- package/property-filter/interfaces.d.ts +25 -8
- package/property-filter/interfaces.d.ts.map +1 -1
- package/property-filter/interfaces.js.map +1 -1
- package/property-filter/internal.d.ts +3 -4
- package/property-filter/internal.d.ts.map +1 -1
- package/property-filter/internal.js +20 -13
- package/property-filter/internal.js.map +1 -1
- package/property-filter/styles.css.js +38 -38
- package/property-filter/styles.scoped.css +46 -38
- package/property-filter/styles.selectors.js +38 -38
- package/property-filter/token-editor.d.ts +4 -3
- package/property-filter/token-editor.d.ts.map +1 -1
- package/property-filter/token-editor.js +15 -13
- package/property-filter/token-editor.js.map +1 -1
- package/property-filter/token.d.ts +3 -3
- package/property-filter/token.d.ts.map +1 -1
- package/property-filter/token.js +46 -19
- package/property-filter/token.js.map +1 -1
- package/property-filter/utils.d.ts +12 -0
- package/property-filter/utils.d.ts.map +1 -1
- package/property-filter/utils.js +22 -0
- package/property-filter/utils.js.map +1 -1
- package/test-utils/dom/property-filter/index.d.ts +17 -15
- package/test-utils/dom/property-filter/index.js +34 -39
- package/test-utils/dom/property-filter/index.js.map +1 -1
- package/test-utils/selectors/property-filter/index.d.ts +17 -15
- package/test-utils/selectors/property-filter/index.js +36 -39
- package/test-utils/selectors/property-filter/index.js.map +1 -1
- package/test-utils/tsconfig.tsbuildinfo +1 -1
package/property-filter/token.js
CHANGED
|
@@ -3,34 +3,61 @@
|
|
|
3
3
|
import React, { useRef, useState } from 'react';
|
|
4
4
|
import FilteringToken from './filtering-token';
|
|
5
5
|
import { TokenEditor } from './token-editor';
|
|
6
|
+
import { tokenGroupToTokens } from './utils';
|
|
6
7
|
import styles from './styles.css.js';
|
|
7
|
-
const emptyHandler = () => { };
|
|
8
8
|
export const TokenButton = ({ query, onUpdateToken, onUpdateOperation, onRemoveToken, tokenIndex, filteringProperties, filteringOptions, asyncProps, onLoadItems, i18nStrings, asyncProperties, hideOperations, customGroupsText, disabled, freeTextFiltering, expandToViewport, enableTokenGroups, }) => {
|
|
9
|
-
var _a, _b, _c, _d, _e
|
|
9
|
+
var _a, _b, _c, _d, _e;
|
|
10
10
|
const tokenRef = useRef(null);
|
|
11
|
-
const
|
|
11
|
+
const hasGroups = query.tokens.some(tokenOrGroup => 'operation' in tokenOrGroup);
|
|
12
12
|
const first = tokenIndex === 0;
|
|
13
|
-
const
|
|
14
|
-
const [
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
const tokenOrGroup = query.tokens[tokenIndex];
|
|
14
|
+
const tokens = tokenGroupToTokens([tokenOrGroup]).map(t => (Object.assign(Object.assign({}, t), { standaloneIndex: undefined })));
|
|
15
|
+
const operation = query.operation;
|
|
16
|
+
const groupOperation = 'operation' in tokenOrGroup ? tokenOrGroup.operation : operation === 'and' ? 'or' : 'and';
|
|
17
|
+
const [tempTokens, setTempTokens] = useState(tokens);
|
|
18
|
+
const capturedTokenIndices = tempTokens.map(token => token.standaloneIndex).filter(index => index !== undefined);
|
|
19
|
+
const tokensToCapture = [];
|
|
20
|
+
for (let index = 0; index < query.tokens.length; index++) {
|
|
21
|
+
const token = query.tokens[index];
|
|
22
|
+
if ('operator' in token && token !== tokenOrGroup && !capturedTokenIndices.includes(index)) {
|
|
23
|
+
tokensToCapture.push(token);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
const [tempReleasedTokens, setTempReleasedTokens] = useState([]);
|
|
27
|
+
tokensToCapture.push(...tempReleasedTokens);
|
|
28
|
+
return (React.createElement(FilteringToken, { ref: tokenRef, tokens: tokens.map(token => {
|
|
29
|
+
const formattedToken = i18nStrings.formatToken(token);
|
|
30
|
+
return {
|
|
17
31
|
content: (React.createElement("span", { className: styles['token-trigger'] },
|
|
18
32
|
React.createElement(TokenTrigger, { token: formattedToken, allProperties: token.property === null }))),
|
|
19
33
|
ariaLabel: formattedToken.formattedText,
|
|
20
|
-
dismissAriaLabel:
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
34
|
+
dismissAriaLabel: i18nStrings.removeTokenButtonAriaLabel(token),
|
|
35
|
+
};
|
|
36
|
+
}), showOperation: !first && !hideOperations, operation: operation, andText: (_a = i18nStrings.operationAndText) !== null && _a !== void 0 ? _a : '', orText: (_b = i18nStrings.operationOrText) !== null && _b !== void 0 ? _b : '', operationAriaLabel: (_c = i18nStrings.tokenOperatorAriaLabel) !== null && _c !== void 0 ? _c : '', onChangeOperation: onUpdateOperation, onDismissToken: (removeIndex) => {
|
|
37
|
+
if (tokens.length === 1) {
|
|
38
|
+
onRemoveToken();
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
const newTokens = tokens.filter((_, index) => index !== removeIndex);
|
|
42
|
+
const updatedToken = newTokens.length === 1 ? newTokens[0] : { operation: groupOperation, tokens: newTokens };
|
|
43
|
+
onUpdateToken(updatedToken, []);
|
|
44
|
+
}
|
|
45
|
+
}, disabled: disabled, editorContent: React.createElement(TokenEditor, { supportsGroups: enableTokenGroups, filteringProperties: filteringProperties, filteringOptions: filteringOptions, tempGroup: tempTokens, onChangeTempGroup: setTempTokens, tokensToCapture: tokensToCapture, onTokenCapture: capturedToken => setTempReleasedTokens(prev => prev.filter(token => token !== capturedToken)), onTokenRelease: releasedToken => {
|
|
46
|
+
if (releasedToken.standaloneIndex === undefined) {
|
|
47
|
+
setTempReleasedTokens(prev => [...prev, releasedToken]);
|
|
48
|
+
}
|
|
49
|
+
}, asyncProps: asyncProps, onLoadItems: onLoadItems, i18nStrings: i18nStrings, asyncProperties: asyncProperties, customGroupsText: customGroupsText, freeTextFiltering: freeTextFiltering, onDismiss: () => {
|
|
50
|
+
var _a;
|
|
51
|
+
(_a = tokenRef.current) === null || _a === void 0 ? void 0 : _a.closeEditor();
|
|
52
|
+
}, onSubmit: () => {
|
|
27
53
|
var _a;
|
|
28
|
-
|
|
54
|
+
const updatedToken = tempTokens.length === 1 ? tempTokens[0] : { operation: groupOperation, tokens: tempTokens };
|
|
55
|
+
onUpdateToken(updatedToken, tempReleasedTokens);
|
|
29
56
|
(_a = tokenRef.current) === null || _a === void 0 ? void 0 : _a.closeEditor();
|
|
30
|
-
} }), editorHeader: (
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
groupOperation:
|
|
57
|
+
} }), editorHeader: (_d = i18nStrings.editTokenHeader) !== null && _d !== void 0 ? _d : '', editorDismissAriaLabel: (_e = i18nStrings.dismissAriaLabel) !== null && _e !== void 0 ? _e : '', editorExpandToViewport: !!expandToViewport, onEditorOpen: () => {
|
|
58
|
+
setTempTokens(tokens);
|
|
59
|
+
setTempReleasedTokens([]);
|
|
60
|
+
}, groupOperation: groupOperation, onChangeGroupOperation: operation => onUpdateToken({ operation, tokens }, []), groupAriaLabel: i18nStrings.groupAriaLabel({ operation: groupOperation, tokens }), groupEditAriaLabel: i18nStrings.groupEditAriaLabel({ operation: groupOperation, tokens }), hasGroups: hasGroups, popoverSize: enableTokenGroups ? 'content' : 'large' }));
|
|
34
61
|
};
|
|
35
62
|
const TokenTrigger = ({ token: { propertyLabel, operator, value }, allProperties, }) => {
|
|
36
63
|
if (propertyLabel) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/property-filter/token.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport React, { useRef, useState } from 'react';\n\nimport { DropdownStatusProps } from '../internal/components/dropdown-status/interfaces';\nimport { NonCancelableEventHandler } from '../internal/events';\nimport FilteringToken, { FilteringTokenRef } from './filtering-token';\nimport { I18nStringsInternal } from './i18n-utils';\nimport {\n FormattedToken,\n GroupText,\n InternalFilteringOption,\n InternalFilteringProperty,\n InternalFreeTextFiltering,\n InternalQuery,\n InternalToken,\n JoinOperation,\n LoadItemsDetail,\n} from './interfaces';\nimport { TokenEditor } from './token-editor';\n\nimport styles from './styles.css.js';\n\ninterface TokenProps {\n query: InternalQuery;\n tokenIndex: number;\n onUpdateToken: (newToken: InternalToken) => void;\n onUpdateOperation: (newOperation: JoinOperation) => void;\n onRemoveToken: () => void;\n asyncProperties?: boolean;\n asyncProps: DropdownStatusProps;\n customGroupsText: readonly GroupText[];\n disabled?: boolean;\n freeTextFiltering: InternalFreeTextFiltering;\n expandToViewport?: boolean;\n filteringProperties: readonly InternalFilteringProperty[];\n filteringOptions: readonly InternalFilteringOption[];\n hideOperations?: boolean;\n i18nStrings: I18nStringsInternal;\n onLoadItems?: NonCancelableEventHandler<LoadItemsDetail>;\n enableTokenGroups: boolean;\n}\n\nconst emptyHandler = () => {};\n\nexport const TokenButton = ({\n query,\n onUpdateToken,\n onUpdateOperation,\n onRemoveToken,\n tokenIndex,\n filteringProperties,\n filteringOptions,\n asyncProps,\n onLoadItems,\n i18nStrings,\n asyncProperties,\n hideOperations,\n customGroupsText,\n disabled,\n freeTextFiltering,\n expandToViewport,\n enableTokenGroups,\n}: TokenProps) => {\n const tokenRef = useRef<FilteringTokenRef>(null);\n const token = query.tokens[tokenIndex];\n const first = tokenIndex === 0;\n const formattedToken = i18nStrings.formatToken(token);\n const [temporaryToken, setTemporaryToken] = useState<InternalToken>(token);\n return (\n <FilteringToken\n ref={tokenRef}\n tokens={[\n {\n content: (\n <span className={styles['token-trigger']}>\n <TokenTrigger token={formattedToken} allProperties={token.property === null} />\n </span>\n ),\n ariaLabel: formattedToken.formattedText,\n dismissAriaLabel: i18nStrings?.removeTokenButtonAriaLabel?.(token) ?? '',\n },\n ]}\n showOperation={!first && !hideOperations}\n operation={query.operation}\n andText={i18nStrings.operationAndText ?? ''}\n orText={i18nStrings.operationOrText ?? ''}\n operationAriaLabel={i18nStrings.tokenOperatorAriaLabel ?? ''}\n onChangeOperation={onUpdateOperation}\n onDismissToken={onRemoveToken}\n disabled={disabled}\n editorContent={\n <TokenEditor\n supportsGroups={enableTokenGroups}\n filteringProperties={filteringProperties}\n filteringOptions={filteringOptions}\n tempGroup={[temporaryToken]}\n onChangeTempGroup={newGroup => setTemporaryToken(newGroup[0])}\n // This property will be needed when supportsGroups={true}\n standaloneTokens={[]}\n // This property will be needed when supportsGroups={true}\n onChangeStandalone={emptyHandler}\n asyncProps={asyncProps}\n onLoadItems={onLoadItems}\n i18nStrings={i18nStrings}\n asyncProperties={asyncProperties}\n customGroupsText={customGroupsText}\n freeTextFiltering={freeTextFiltering}\n onDismiss={() => tokenRef.current?.closeEditor()}\n onSubmit={() => {\n onUpdateToken(temporaryToken);\n tokenRef.current?.closeEditor();\n }}\n />\n }\n editorHeader={i18nStrings.editTokenHeader ?? ''}\n editorDismissAriaLabel={i18nStrings.dismissAriaLabel ?? ''}\n editorExpandToViewport={!!expandToViewport}\n onEditorOpen={() => setTemporaryToken(token)}\n // The properties below are only relevant for grouped tokens that are not supported\n // by the property filter component yet.\n groupOperation={query.operation}\n groupAriaLabel={i18nStrings.formatToken(token).formattedText}\n groupEditAriaLabel={i18nStrings.groupEditAriaLabel({ operation: query.operation, tokens: [token] })}\n onChangeGroupOperation={() => {}}\n hasGroups={false}\n popoverSize={enableTokenGroups ? 'content' : 'large'}\n />\n );\n};\n\nconst TokenTrigger = ({\n token: { propertyLabel, operator, value },\n allProperties,\n}: {\n token: FormattedToken;\n allProperties: boolean;\n}) => {\n if (propertyLabel) {\n propertyLabel += ' ';\n }\n const freeTextContainsToken = operator === ':' && allProperties;\n const operatorText = freeTextContainsToken ? '' : operator + ' ';\n return (\n <>\n {allProperties ? '' : propertyLabel}\n <span className={styles['token-operator']}>{operatorText}</span>\n {value}\n </>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/property-filter/token.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport React, { useRef, useState } from 'react';\n\nimport { DropdownStatusProps } from '../internal/components/dropdown-status/interfaces';\nimport { NonCancelableEventHandler } from '../internal/events';\nimport FilteringToken, { FilteringTokenRef } from './filtering-token';\nimport { I18nStringsInternal } from './i18n-utils';\nimport {\n FormattedToken,\n GroupText,\n InternalFilteringOption,\n InternalFilteringProperty,\n InternalFreeTextFiltering,\n InternalQuery,\n InternalToken,\n InternalTokenGroup,\n JoinOperation,\n LoadItemsDetail,\n} from './interfaces';\nimport { TokenEditor } from './token-editor';\nimport { tokenGroupToTokens } from './utils';\n\nimport styles from './styles.css.js';\n\ninterface TokenProps {\n query: InternalQuery;\n tokenIndex: number;\n onUpdateToken: (updatedToken: InternalToken | InternalTokenGroup, releasedTokens: InternalToken[]) => void;\n onUpdateOperation: (updatedOperation: JoinOperation) => void;\n onRemoveToken: () => void;\n asyncProperties?: boolean;\n asyncProps: DropdownStatusProps;\n customGroupsText: readonly GroupText[];\n disabled?: boolean;\n freeTextFiltering: InternalFreeTextFiltering;\n expandToViewport?: boolean;\n filteringProperties: readonly InternalFilteringProperty[];\n filteringOptions: readonly InternalFilteringOption[];\n hideOperations?: boolean;\n i18nStrings: I18nStringsInternal;\n onLoadItems?: NonCancelableEventHandler<LoadItemsDetail>;\n enableTokenGroups: boolean;\n}\n\nexport const TokenButton = ({\n query,\n onUpdateToken,\n onUpdateOperation,\n onRemoveToken,\n tokenIndex,\n filteringProperties,\n filteringOptions,\n asyncProps,\n onLoadItems,\n i18nStrings,\n asyncProperties,\n hideOperations,\n customGroupsText,\n disabled,\n freeTextFiltering,\n expandToViewport,\n enableTokenGroups,\n}: TokenProps) => {\n const tokenRef = useRef<FilteringTokenRef>(null);\n\n const hasGroups = query.tokens.some(tokenOrGroup => 'operation' in tokenOrGroup);\n const first = tokenIndex === 0;\n\n const tokenOrGroup = query.tokens[tokenIndex];\n const tokens = tokenGroupToTokens<InternalToken>([tokenOrGroup]).map(t => ({ ...t, standaloneIndex: undefined }));\n const operation = query.operation;\n const groupOperation = 'operation' in tokenOrGroup ? tokenOrGroup.operation : operation === 'and' ? 'or' : 'and';\n\n const [tempTokens, setTempTokens] = useState<InternalToken[]>(tokens);\n const capturedTokenIndices = tempTokens.map(token => token.standaloneIndex).filter(index => index !== undefined);\n const tokensToCapture: InternalToken[] = [];\n for (let index = 0; index < query.tokens.length; index++) {\n const token = query.tokens[index];\n if ('operator' in token && token !== tokenOrGroup && !capturedTokenIndices.includes(index)) {\n tokensToCapture.push(token);\n }\n }\n const [tempReleasedTokens, setTempReleasedTokens] = useState<InternalToken[]>([]);\n tokensToCapture.push(...tempReleasedTokens);\n\n return (\n <FilteringToken\n ref={tokenRef}\n tokens={tokens.map(token => {\n const formattedToken = i18nStrings.formatToken(token);\n return {\n content: (\n <span className={styles['token-trigger']}>\n <TokenTrigger token={formattedToken} allProperties={token.property === null} />\n </span>\n ),\n ariaLabel: formattedToken.formattedText,\n dismissAriaLabel: i18nStrings.removeTokenButtonAriaLabel(token),\n };\n })}\n showOperation={!first && !hideOperations}\n operation={operation}\n andText={i18nStrings.operationAndText ?? ''}\n orText={i18nStrings.operationOrText ?? ''}\n operationAriaLabel={i18nStrings.tokenOperatorAriaLabel ?? ''}\n onChangeOperation={onUpdateOperation}\n onDismissToken={(removeIndex: number) => {\n if (tokens.length === 1) {\n onRemoveToken();\n } else {\n const newTokens = tokens.filter((_, index) => index !== removeIndex);\n const updatedToken = newTokens.length === 1 ? newTokens[0] : { operation: groupOperation, tokens: newTokens };\n onUpdateToken(updatedToken, []);\n }\n }}\n disabled={disabled}\n editorContent={\n <TokenEditor\n supportsGroups={enableTokenGroups}\n filteringProperties={filteringProperties}\n filteringOptions={filteringOptions}\n tempGroup={tempTokens}\n onChangeTempGroup={setTempTokens}\n tokensToCapture={tokensToCapture}\n onTokenCapture={capturedToken => setTempReleasedTokens(prev => prev.filter(token => token !== capturedToken))}\n onTokenRelease={releasedToken => {\n if (releasedToken.standaloneIndex === undefined) {\n setTempReleasedTokens(prev => [...prev, releasedToken]);\n }\n }}\n asyncProps={asyncProps}\n onLoadItems={onLoadItems}\n i18nStrings={i18nStrings}\n asyncProperties={asyncProperties}\n customGroupsText={customGroupsText}\n freeTextFiltering={freeTextFiltering}\n onDismiss={() => {\n tokenRef.current?.closeEditor();\n }}\n onSubmit={() => {\n const updatedToken =\n tempTokens.length === 1 ? tempTokens[0] : { operation: groupOperation, tokens: tempTokens };\n onUpdateToken(updatedToken, tempReleasedTokens);\n tokenRef.current?.closeEditor();\n }}\n />\n }\n editorHeader={i18nStrings.editTokenHeader ?? ''}\n editorDismissAriaLabel={i18nStrings.dismissAriaLabel ?? ''}\n editorExpandToViewport={!!expandToViewport}\n onEditorOpen={() => {\n setTempTokens(tokens);\n setTempReleasedTokens([]);\n }}\n groupOperation={groupOperation}\n onChangeGroupOperation={operation => onUpdateToken({ operation, tokens }, [])}\n groupAriaLabel={i18nStrings.groupAriaLabel({ operation: groupOperation, tokens })}\n groupEditAriaLabel={i18nStrings.groupEditAriaLabel({ operation: groupOperation, tokens })}\n hasGroups={hasGroups}\n popoverSize={enableTokenGroups ? 'content' : 'large'}\n />\n );\n};\n\nconst TokenTrigger = ({\n token: { propertyLabel, operator, value },\n allProperties,\n}: {\n token: FormattedToken;\n allProperties: boolean;\n}) => {\n if (propertyLabel) {\n propertyLabel += ' ';\n }\n const freeTextContainsToken = operator === ':' && allProperties;\n const operatorText = freeTextContainsToken ? '' : operator + ' ';\n return (\n <>\n {allProperties ? '' : propertyLabel}\n <span className={styles['token-operator']}>{operatorText}</span>\n {value}\n </>\n );\n};\n"]}
|
|
@@ -6,4 +6,16 @@ export declare function matchTokenValue({ property, operator, value }: InternalT
|
|
|
6
6
|
export declare function trimStart(source: string): string;
|
|
7
7
|
export declare function trimFirstSpace(source: string): string;
|
|
8
8
|
export declare function removeOperator(source: string, operator: string): string;
|
|
9
|
+
interface AbstractToken {
|
|
10
|
+
operator: any;
|
|
11
|
+
}
|
|
12
|
+
interface AbstractTokenGroup<T extends AbstractToken> {
|
|
13
|
+
operation: any;
|
|
14
|
+
tokens: readonly (T | AbstractTokenGroup<T>)[];
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Transforms query token groups to tokens (only taking 1 level of nesting).
|
|
18
|
+
*/
|
|
19
|
+
export declare function tokenGroupToTokens<T extends AbstractToken>(tokenGroups: readonly (T | AbstractTokenGroup<T>)[]): T[];
|
|
20
|
+
export {};
|
|
9
21
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/property-filter/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,aAAa,EACb,KAAK,EACN,MAAM,cAAc,CAAC;AAGtB,wBAAgB,sBAAsB,CACpC,mBAAmB,EAAE,SAAS,yBAAyB,EAAE,EACzD,aAAa,EAAE,MAAM,GACpB,IAAI,GAAG,yBAAyB,CAgBlC;AAGD,wBAAgB,aAAa,CAC3B,gBAAgB,EAAE,SAAS,kBAAkB,EAAE,EAC/C,aAAa,EAAE,MAAM,GACpB,IAAI,GAAG,kBAAkB,CAc3B;AAGD,wBAAgB,mBAAmB,CACjC,gBAAgB,EAAE,SAAS,kBAAkB,EAAE,EAC/C,aAAa,EAAE,MAAM,GACpB,IAAI,GAAG,MAAM,CAUf;AAED,wBAAgB,eAAe,CAC7B,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,aAAa,EAC5C,gBAAgB,EAAE,SAAS,uBAAuB,EAAE,GACnD,KAAK,CAkBP;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAUhD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAQ9D"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/property-filter/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,aAAa,EACb,KAAK,EACN,MAAM,cAAc,CAAC;AAGtB,wBAAgB,sBAAsB,CACpC,mBAAmB,EAAE,SAAS,yBAAyB,EAAE,EACzD,aAAa,EAAE,MAAM,GACpB,IAAI,GAAG,yBAAyB,CAgBlC;AAGD,wBAAgB,aAAa,CAC3B,gBAAgB,EAAE,SAAS,kBAAkB,EAAE,EAC/C,aAAa,EAAE,MAAM,GACpB,IAAI,GAAG,kBAAkB,CAc3B;AAGD,wBAAgB,mBAAmB,CACjC,gBAAgB,EAAE,SAAS,kBAAkB,EAAE,EAC/C,aAAa,EAAE,MAAM,GACpB,IAAI,GAAG,MAAM,CAUf;AAED,wBAAgB,eAAe,CAC7B,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,aAAa,EAC5C,gBAAgB,EAAE,SAAS,uBAAuB,EAAE,GACnD,KAAK,CAkBP;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAUhD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAQ9D;AAMD,UAAU,aAAa;IACrB,QAAQ,EAAE,GAAG,CAAC;CACf;AAED,UAAU,kBAAkB,CAAC,CAAC,SAAS,aAAa;IAClD,SAAS,EAAE,GAAG,CAAC;IACf,MAAM,EAAE,SAAS,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;CAChD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,aAAa,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAgBpH"}
|
package/property-filter/utils.js
CHANGED
|
@@ -84,4 +84,26 @@ export function removeOperator(source, operator) {
|
|
|
84
84
|
function startsWith(source, target) {
|
|
85
85
|
return source.indexOf(target) === 0;
|
|
86
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* Transforms query token groups to tokens (only taking 1 level of nesting).
|
|
89
|
+
*/
|
|
90
|
+
export function tokenGroupToTokens(tokenGroups) {
|
|
91
|
+
const tokens = [];
|
|
92
|
+
for (const tokenOrGroup of tokenGroups) {
|
|
93
|
+
if ('operator' in tokenOrGroup) {
|
|
94
|
+
tokens.push(tokenOrGroup);
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
for (const nestedTokenOrGroup of tokenOrGroup.tokens) {
|
|
98
|
+
if ('operator' in nestedTokenOrGroup) {
|
|
99
|
+
tokens.push(nestedTokenOrGroup);
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
// Ignore deeply nested tokens
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
return tokens;
|
|
108
|
+
}
|
|
87
109
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/property-filter/utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport {\n ComparisonOperator,\n InternalFilteringOption,\n InternalFilteringProperty,\n InternalToken,\n Token,\n} from './interfaces';\n\n// Finds the longest property the filtering text starts from.\nexport function matchFilteringProperty(\n filteringProperties: readonly InternalFilteringProperty[],\n filteringText: string\n): null | InternalFilteringProperty {\n let maxLength = 0;\n let matchedProperty: null | InternalFilteringProperty = null;\n\n for (const property of filteringProperties) {\n if (\n (property.propertyLabel.length >= maxLength && startsWith(filteringText, property.propertyLabel)) ||\n (property.propertyLabel.length > maxLength &&\n startsWith(filteringText.toLowerCase(), property.propertyLabel.toLowerCase()))\n ) {\n maxLength = property.propertyLabel.length;\n matchedProperty = property;\n }\n }\n\n return matchedProperty;\n}\n\n// Finds the longest operator the filtering text starts from.\nexport function matchOperator(\n allowedOperators: readonly ComparisonOperator[],\n filteringText: string\n): null | ComparisonOperator {\n filteringText = filteringText.toLowerCase();\n\n let maxLength = 0;\n let matchedOperator: null | ComparisonOperator = null;\n\n for (const operator of allowedOperators) {\n if (operator.length > maxLength && startsWith(filteringText, operator.toLowerCase())) {\n maxLength = operator.length;\n matchedOperator = operator;\n }\n }\n\n return matchedOperator;\n}\n\n// Finds if the filtering text matches any operator prefix.\nexport function matchOperatorPrefix(\n allowedOperators: readonly ComparisonOperator[],\n filteringText: string\n): null | string {\n if (filteringText.trim().length === 0) {\n return '';\n }\n for (const operator of allowedOperators) {\n if (startsWith(operator.toLowerCase(), filteringText.toLowerCase())) {\n return filteringText;\n }\n }\n return null;\n}\n\nexport function matchTokenValue(\n { property, operator, value }: InternalToken,\n filteringOptions: readonly InternalFilteringOption[]\n): Token {\n const propertyOptions = filteringOptions.filter(option => option.property === property);\n const bestMatch: Token = { propertyKey: property?.propertyKey, operator, value };\n for (const option of propertyOptions) {\n if ((option.label && option.label === value) || (!option.label && option.value === value)) {\n // exact match found: return it\n return { propertyKey: property?.propertyKey, operator, value: option.value };\n }\n\n // By default, the token value is a string, but when a custom property is used,\n // the token value can be any, therefore we need to check for its type before calling toLowerCase()\n if (typeof value === 'string' && value.toLowerCase() === (option.label ?? option.value ?? '').toLowerCase()) {\n // non-exact match: save and keep running in case exact match found later\n bestMatch.value = option.value;\n }\n }\n\n return bestMatch;\n}\n\nexport function trimStart(source: string): string {\n let spacesLength = 0;\n for (let i = 0; i < source.length; i++) {\n if (source[i] === ' ') {\n spacesLength++;\n } else {\n break;\n }\n }\n return source.slice(spacesLength);\n}\n\nexport function trimFirstSpace(source: string): string {\n return source[0] === ' ' ? source.slice(1) : source;\n}\n\nexport function removeOperator(source: string, operator: string) {\n const operatorLastIndex = source.indexOf(operator) + operator.length;\n const textWithoutOperator = source.slice(operatorLastIndex);\n // We need to remove the first leading space in case the user presses space\n // after the operator, for example: Owner: admin, will result in value of ` admin`\n // and we need to remove the first space, if the user added any more spaces only the\n // first one will be removed.\n return trimFirstSpace(textWithoutOperator);\n}\n\nfunction startsWith(source: string, target: string): boolean {\n return source.indexOf(target) === 0;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/property-filter/utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport {\n ComparisonOperator,\n InternalFilteringOption,\n InternalFilteringProperty,\n InternalToken,\n Token,\n} from './interfaces';\n\n// Finds the longest property the filtering text starts from.\nexport function matchFilteringProperty(\n filteringProperties: readonly InternalFilteringProperty[],\n filteringText: string\n): null | InternalFilteringProperty {\n let maxLength = 0;\n let matchedProperty: null | InternalFilteringProperty = null;\n\n for (const property of filteringProperties) {\n if (\n (property.propertyLabel.length >= maxLength && startsWith(filteringText, property.propertyLabel)) ||\n (property.propertyLabel.length > maxLength &&\n startsWith(filteringText.toLowerCase(), property.propertyLabel.toLowerCase()))\n ) {\n maxLength = property.propertyLabel.length;\n matchedProperty = property;\n }\n }\n\n return matchedProperty;\n}\n\n// Finds the longest operator the filtering text starts from.\nexport function matchOperator(\n allowedOperators: readonly ComparisonOperator[],\n filteringText: string\n): null | ComparisonOperator {\n filteringText = filteringText.toLowerCase();\n\n let maxLength = 0;\n let matchedOperator: null | ComparisonOperator = null;\n\n for (const operator of allowedOperators) {\n if (operator.length > maxLength && startsWith(filteringText, operator.toLowerCase())) {\n maxLength = operator.length;\n matchedOperator = operator;\n }\n }\n\n return matchedOperator;\n}\n\n// Finds if the filtering text matches any operator prefix.\nexport function matchOperatorPrefix(\n allowedOperators: readonly ComparisonOperator[],\n filteringText: string\n): null | string {\n if (filteringText.trim().length === 0) {\n return '';\n }\n for (const operator of allowedOperators) {\n if (startsWith(operator.toLowerCase(), filteringText.toLowerCase())) {\n return filteringText;\n }\n }\n return null;\n}\n\nexport function matchTokenValue(\n { property, operator, value }: InternalToken,\n filteringOptions: readonly InternalFilteringOption[]\n): Token {\n const propertyOptions = filteringOptions.filter(option => option.property === property);\n const bestMatch: Token = { propertyKey: property?.propertyKey, operator, value };\n for (const option of propertyOptions) {\n if ((option.label && option.label === value) || (!option.label && option.value === value)) {\n // exact match found: return it\n return { propertyKey: property?.propertyKey, operator, value: option.value };\n }\n\n // By default, the token value is a string, but when a custom property is used,\n // the token value can be any, therefore we need to check for its type before calling toLowerCase()\n if (typeof value === 'string' && value.toLowerCase() === (option.label ?? option.value ?? '').toLowerCase()) {\n // non-exact match: save and keep running in case exact match found later\n bestMatch.value = option.value;\n }\n }\n\n return bestMatch;\n}\n\nexport function trimStart(source: string): string {\n let spacesLength = 0;\n for (let i = 0; i < source.length; i++) {\n if (source[i] === ' ') {\n spacesLength++;\n } else {\n break;\n }\n }\n return source.slice(spacesLength);\n}\n\nexport function trimFirstSpace(source: string): string {\n return source[0] === ' ' ? source.slice(1) : source;\n}\n\nexport function removeOperator(source: string, operator: string) {\n const operatorLastIndex = source.indexOf(operator) + operator.length;\n const textWithoutOperator = source.slice(operatorLastIndex);\n // We need to remove the first leading space in case the user presses space\n // after the operator, for example: Owner: admin, will result in value of ` admin`\n // and we need to remove the first space, if the user added any more spaces only the\n // first one will be removed.\n return trimFirstSpace(textWithoutOperator);\n}\n\nfunction startsWith(source: string, target: string): boolean {\n return source.indexOf(target) === 0;\n}\n\ninterface AbstractToken {\n operator: any;\n}\n\ninterface AbstractTokenGroup<T extends AbstractToken> {\n operation: any;\n tokens: readonly (T | AbstractTokenGroup<T>)[];\n}\n\n/**\n * Transforms query token groups to tokens (only taking 1 level of nesting).\n */\nexport function tokenGroupToTokens<T extends AbstractToken>(tokenGroups: readonly (T | AbstractTokenGroup<T>)[]): T[] {\n const tokens: T[] = [];\n for (const tokenOrGroup of tokenGroups) {\n if ('operator' in tokenOrGroup) {\n tokens.push(tokenOrGroup);\n } else {\n for (const nestedTokenOrGroup of tokenOrGroup.tokens) {\n if ('operator' in nestedTokenOrGroup) {\n tokens.push(nestedTokenOrGroup);\n } else {\n // Ignore deeply nested tokens\n }\n }\n }\n }\n return tokens;\n}\n"]}
|
|
@@ -41,16 +41,6 @@ export declare class FilteringTokenWrapper extends ComponentWrapper {
|
|
|
41
41
|
expandToViewport: boolean;
|
|
42
42
|
}): null | PropertyFilterEditorDropdownWrapper;
|
|
43
43
|
}
|
|
44
|
-
export declare class InternalFilteringTokenWrapper extends FilteringTokenWrapper {
|
|
45
|
-
findEditButton(): ElementWrapper<HTMLButtonElement>;
|
|
46
|
-
findGroupTokens(): Array<FilteringGroupedTokenWrapper>;
|
|
47
|
-
}
|
|
48
|
-
export declare class FilteringGroupedTokenWrapper extends ComponentWrapper {
|
|
49
|
-
static rootSelector: string;
|
|
50
|
-
findLabel(): ElementWrapper;
|
|
51
|
-
findRemoveButton(): ElementWrapper<HTMLButtonElement>;
|
|
52
|
-
findTokenOperation(): SelectWrapper | null;
|
|
53
|
-
}
|
|
54
44
|
export declare class PropertyFilterEditorDropdownWrapper extends ComponentWrapper {
|
|
55
45
|
findHeader(): ElementWrapper;
|
|
56
46
|
findDismissButton(): ButtonWrapper;
|
|
@@ -61,14 +51,26 @@ export declare class PropertyFilterEditorDropdownWrapper extends ComponentWrappe
|
|
|
61
51
|
findCancelButton(): ButtonWrapper;
|
|
62
52
|
findSubmitButton(): ButtonWrapper;
|
|
63
53
|
}
|
|
64
|
-
export declare class
|
|
65
|
-
|
|
66
|
-
|
|
54
|
+
export declare class PropertyFilterWrapperInternal extends PropertyFilterWrapper {
|
|
55
|
+
findTokens(): Array<FilteringTokenWrapperInternal>;
|
|
56
|
+
}
|
|
57
|
+
export declare class FilteringTokenWrapperInternal extends FilteringTokenWrapper {
|
|
58
|
+
findEditorDropdown(options?: {
|
|
59
|
+
expandToViewport: boolean;
|
|
60
|
+
}): null | PropertyFilterEditorDropdownWrapperInternal;
|
|
61
|
+
findEditButton(): ElementWrapper<HTMLButtonElement>;
|
|
62
|
+
findGroupTokens(): Array<FilteringGroupedTokenWrapper>;
|
|
63
|
+
}
|
|
64
|
+
export declare class FilteringGroupedTokenWrapper extends ComponentWrapper {
|
|
65
|
+
static rootSelector: string;
|
|
66
|
+
findLabel(): ElementWrapper;
|
|
67
|
+
findRemoveButton(): ElementWrapper<HTMLButtonElement>;
|
|
68
|
+
findTokenOperation(): SelectWrapper | null;
|
|
69
|
+
}
|
|
70
|
+
export declare class PropertyFilterEditorDropdownWrapperInternal extends PropertyFilterEditorDropdownWrapper {
|
|
67
71
|
findPropertyField(index?: number): FormFieldWrapper;
|
|
68
72
|
findOperatorField(index?: number): FormFieldWrapper;
|
|
69
73
|
findValueField(index?: number): FormFieldWrapper;
|
|
70
74
|
findTokenRemoveActions(index?: number): null | ButtonDropdownWrapper;
|
|
71
75
|
findTokenAddActions(): null | ButtonDropdownWrapper;
|
|
72
|
-
findCancelButton(): ButtonWrapper;
|
|
73
|
-
findSubmitButton(): ButtonWrapper;
|
|
74
76
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.PropertyFilterEditorDropdownWrapperInternal = exports.FilteringGroupedTokenWrapper = exports.FilteringTokenWrapperInternal = exports.PropertyFilterWrapperInternal = exports.PropertyFilterEditorDropdownWrapper = exports.FilteringTokenWrapper = void 0;
|
|
4
4
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
5
5
|
// SPDX-License-Identifier: Apache-2.0
|
|
6
6
|
const dom_1 = require("@cloudscape-design/test-utils-core/dom");
|
|
@@ -75,30 +75,6 @@ class FilteringTokenWrapper extends dom_1.ComponentWrapper {
|
|
|
75
75
|
}
|
|
76
76
|
exports.FilteringTokenWrapper = FilteringTokenWrapper;
|
|
77
77
|
FilteringTokenWrapper.rootSelector = styles_selectors_js_4.default['filtering-token'];
|
|
78
|
-
// The internal wrapper has two extra methods that are not available publicly
|
|
79
|
-
// until the property filter token grouping is supported.
|
|
80
|
-
class InternalFilteringTokenWrapper extends FilteringTokenWrapper {
|
|
81
|
-
findEditButton() {
|
|
82
|
-
return this.findByClassName(styles_selectors_js_4.default['filtering-token-edit-button']);
|
|
83
|
-
}
|
|
84
|
-
findGroupTokens() {
|
|
85
|
-
return this.findAllByClassName(styles_selectors_js_4.default['filtering-token-inner']).map(w => new FilteringGroupedTokenWrapper(w.getElement()));
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
exports.InternalFilteringTokenWrapper = InternalFilteringTokenWrapper;
|
|
89
|
-
class FilteringGroupedTokenWrapper extends dom_1.ComponentWrapper {
|
|
90
|
-
findLabel() {
|
|
91
|
-
return this.findByClassName(styles_selectors_js_4.default['filtering-token-inner-content']);
|
|
92
|
-
}
|
|
93
|
-
findRemoveButton() {
|
|
94
|
-
return this.findByClassName(styles_selectors_js_4.default['filtering-token-inner-dismiss-button']);
|
|
95
|
-
}
|
|
96
|
-
findTokenOperation() {
|
|
97
|
-
return this.findComponent(`.${styles_selectors_js_4.default['filtering-token-inner-select']}`, select_1.default);
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
exports.FilteringGroupedTokenWrapper = FilteringGroupedTokenWrapper;
|
|
101
|
-
FilteringGroupedTokenWrapper.rootSelector = styles_selectors_js_4.default['filtering-token-inner'];
|
|
102
78
|
class PropertyFilterEditorDropdownWrapper extends dom_1.ComponentWrapper {
|
|
103
79
|
findHeader() {
|
|
104
80
|
return this.findByClassName(styles_selectors_js_2.default.header);
|
|
@@ -126,15 +102,40 @@ class PropertyFilterEditorDropdownWrapper extends dom_1.ComponentWrapper {
|
|
|
126
102
|
}
|
|
127
103
|
}
|
|
128
104
|
exports.PropertyFilterEditorDropdownWrapper = PropertyFilterEditorDropdownWrapper;
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
findHeader() {
|
|
133
|
-
return this.findByClassName(styles_selectors_js_2.default.header);
|
|
105
|
+
class PropertyFilterWrapperInternal extends PropertyFilterWrapper {
|
|
106
|
+
findTokens() {
|
|
107
|
+
return this.findAllByClassName(FilteringTokenWrapperInternal.rootSelector).map((elementWrapper) => new FilteringTokenWrapperInternal(elementWrapper.getElement()));
|
|
134
108
|
}
|
|
135
|
-
|
|
136
|
-
|
|
109
|
+
}
|
|
110
|
+
exports.PropertyFilterWrapperInternal = PropertyFilterWrapperInternal;
|
|
111
|
+
class FilteringTokenWrapperInternal extends FilteringTokenWrapper {
|
|
112
|
+
findEditorDropdown(options = { expandToViewport: false }) {
|
|
113
|
+
const root = options.expandToViewport ? (0, dom_1.createWrapper)() : this;
|
|
114
|
+
const popoverBody = root.findByClassName(styles_selectors_js_2.default.body);
|
|
115
|
+
return popoverBody ? new PropertyFilterEditorDropdownWrapperInternal(popoverBody.getElement()) : null;
|
|
116
|
+
}
|
|
117
|
+
findEditButton() {
|
|
118
|
+
return this.findByClassName(styles_selectors_js_4.default['filtering-token-edit-button']);
|
|
119
|
+
}
|
|
120
|
+
findGroupTokens() {
|
|
121
|
+
return this.findAllByClassName(styles_selectors_js_4.default['filtering-token-inner']).map(w => new FilteringGroupedTokenWrapper(w.getElement()));
|
|
137
122
|
}
|
|
123
|
+
}
|
|
124
|
+
exports.FilteringTokenWrapperInternal = FilteringTokenWrapperInternal;
|
|
125
|
+
class FilteringGroupedTokenWrapper extends dom_1.ComponentWrapper {
|
|
126
|
+
findLabel() {
|
|
127
|
+
return this.findByClassName(styles_selectors_js_4.default['filtering-token-inner-content']);
|
|
128
|
+
}
|
|
129
|
+
findRemoveButton() {
|
|
130
|
+
return this.findByClassName(styles_selectors_js_4.default['filtering-token-inner-dismiss-button']);
|
|
131
|
+
}
|
|
132
|
+
findTokenOperation() {
|
|
133
|
+
return this.findComponent(`.${styles_selectors_js_4.default['filtering-token-inner-select']}`, select_1.default);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
exports.FilteringGroupedTokenWrapper = FilteringGroupedTokenWrapper;
|
|
137
|
+
FilteringGroupedTokenWrapper.rootSelector = styles_selectors_js_4.default['filtering-token-inner'];
|
|
138
|
+
class PropertyFilterEditorDropdownWrapperInternal extends PropertyFilterEditorDropdownWrapper {
|
|
138
139
|
findPropertyField(index = 1) {
|
|
139
140
|
const dataIndex = `[data-testindex="${index - 1}"]`;
|
|
140
141
|
return this.findComponent(`.${styles_selectors_js_4.default['token-editor-field-property']}${dataIndex}`, form_field_1.default);
|
|
@@ -156,12 +157,6 @@ class InternalPropertyFilterEditorDropdownWrapper extends dom_1.ComponentWrapper
|
|
|
156
157
|
const buttonDropdown = this.find(`.${styles_selectors_js_4.default['token-editor-token-add-actions']}`);
|
|
157
158
|
return buttonDropdown ? new button_dropdown_1.default(buttonDropdown.getElement()) : null;
|
|
158
159
|
}
|
|
159
|
-
findCancelButton() {
|
|
160
|
-
return this.findComponent(`.${styles_selectors_js_4.default['token-editor-cancel']}`, button_1.default);
|
|
161
|
-
}
|
|
162
|
-
findSubmitButton() {
|
|
163
|
-
return this.findComponent(`.${styles_selectors_js_4.default['token-editor-submit']}`, button_1.default);
|
|
164
|
-
}
|
|
165
160
|
}
|
|
166
|
-
exports.
|
|
161
|
+
exports.PropertyFilterEditorDropdownWrapperInternal = PropertyFilterEditorDropdownWrapperInternal;
|
|
167
162
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/test-utils/dom/property-filter/index.ts"],"names":[],"mappings":";;;AAAA,qEAAqE;AACrE,sCAAsC;AACtC,gEAAyG;AAEzG,gDAAgD;AAChD,sCAAsC;AACtC,wDAAuD;AACvD,8CAA6C;AAC7C,sCAAsC;AAEtC,qGAA6F;AAC7F,8EAAiE;AACjE,sFAAkE;AAClE,mGAAuF;AACvF,kFAAwE;AAExE,MAAqB,qBAAsB,SAAQ,qBAAkB;IAGnE,gBAAgB;QACd,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAgB,CAAC,OAAO,CAAE,CAAC;IACzD,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC,GAAG,CACpE,CAAC,cAA8B,EAAE,EAAE,CAAC,IAAI,qBAAqB,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,CAC3F,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAkB,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,mBAAmB;QACjB,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,uBAAuB;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAM,CAAC,UAAU,CAAC,CAAC;IACjD,CAAC;;AA9CH,wCA+CC;AA9CQ,kCAAY,GAAG,6BAAM,CAAC,IAAI,CAAC;AAgDpC,MAAa,qBAAsB,SAAQ,sBAAgB;IAGzD,SAAS;QACP,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAc,CAAC,yBAAyB,CAAC,CAAE,CAAC,eAAe,CAAC,6BAAa,CAAC,OAAO,CAAE,CAAC;IAClH,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,eAAe,CAAoB,6BAAc,CAAC,gCAAgC,CAAC,CAAE,CAAC;IACpG,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,6BAAc,CAAC,wBAAwB,CAAC,EAAE,EAAE,gBAAa,CAAC,CAAC;IAC3F,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,OAAO,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE;QACtD,MAAM,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAA,mBAAa,GAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,6BAAa,CAAC,IAAI,CAAC,CAAC;QAC7D,OAAO,WAAW,CAAC,CAAC,CAAC,IAAI,mCAAmC,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChG,CAAC;;AAtBH,sDAuBC;AAtBQ,kCAAY,GAAG,6BAAc,CAAC,iBAAiB,CAAC,CAAC;AAwB1D,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/test-utils/dom/property-filter/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,16 +41,6 @@ export declare class FilteringTokenWrapper extends ComponentWrapper {
|
|
|
41
41
|
expandToViewport: boolean;
|
|
42
42
|
}): PropertyFilterEditorDropdownWrapper | null;
|
|
43
43
|
}
|
|
44
|
-
export declare class InternalFilteringTokenWrapper extends FilteringTokenWrapper {
|
|
45
|
-
findEditButton(): ElementWrapper;
|
|
46
|
-
findGroupTokens(): import("@cloudscape-design/test-utils-core/selectors").MultiElementWrapper<FilteringGroupedTokenWrapper>;
|
|
47
|
-
}
|
|
48
|
-
export declare class FilteringGroupedTokenWrapper extends ComponentWrapper {
|
|
49
|
-
static rootSelector: string;
|
|
50
|
-
findLabel(): ElementWrapper;
|
|
51
|
-
findRemoveButton(): ElementWrapper;
|
|
52
|
-
findTokenOperation(): SelectWrapper;
|
|
53
|
-
}
|
|
54
44
|
export declare class PropertyFilterEditorDropdownWrapper extends ComponentWrapper {
|
|
55
45
|
findHeader(): ElementWrapper;
|
|
56
46
|
findDismissButton(): ButtonWrapper;
|
|
@@ -61,14 +51,26 @@ export declare class PropertyFilterEditorDropdownWrapper extends ComponentWrappe
|
|
|
61
51
|
findCancelButton(): ButtonWrapper;
|
|
62
52
|
findSubmitButton(): ButtonWrapper;
|
|
63
53
|
}
|
|
64
|
-
export declare class
|
|
65
|
-
|
|
66
|
-
|
|
54
|
+
export declare class PropertyFilterWrapperInternal extends PropertyFilterWrapper {
|
|
55
|
+
findTokens(): import("@cloudscape-design/test-utils-core/selectors").MultiElementWrapper<FilteringTokenWrapperInternal>;
|
|
56
|
+
}
|
|
57
|
+
export declare class FilteringTokenWrapperInternal extends FilteringTokenWrapper {
|
|
58
|
+
findEditorDropdown(options?: {
|
|
59
|
+
expandToViewport: boolean;
|
|
60
|
+
}): PropertyFilterEditorDropdownWrapperInternal | null;
|
|
61
|
+
findEditButton(): ElementWrapper;
|
|
62
|
+
findGroupTokens(): import("@cloudscape-design/test-utils-core/selectors").MultiElementWrapper<FilteringGroupedTokenWrapper>;
|
|
63
|
+
}
|
|
64
|
+
export declare class FilteringGroupedTokenWrapper extends ComponentWrapper {
|
|
65
|
+
static rootSelector: string;
|
|
66
|
+
findLabel(): ElementWrapper;
|
|
67
|
+
findRemoveButton(): ElementWrapper;
|
|
68
|
+
findTokenOperation(): SelectWrapper;
|
|
69
|
+
}
|
|
70
|
+
export declare class PropertyFilterEditorDropdownWrapperInternal extends PropertyFilterEditorDropdownWrapper {
|
|
67
71
|
findPropertyField(index?: number): FormFieldWrapper;
|
|
68
72
|
findOperatorField(index?: number): FormFieldWrapper;
|
|
69
73
|
findValueField(index?: number): FormFieldWrapper;
|
|
70
74
|
findTokenRemoveActions(index?: number): ButtonDropdownWrapper | null;
|
|
71
75
|
findTokenAddActions(): ButtonDropdownWrapper | null;
|
|
72
|
-
findCancelButton(): ButtonWrapper;
|
|
73
|
-
findSubmitButton(): ButtonWrapper;
|
|
74
76
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.PropertyFilterEditorDropdownWrapperInternal = exports.FilteringGroupedTokenWrapper = exports.FilteringTokenWrapperInternal = exports.PropertyFilterWrapperInternal = exports.PropertyFilterEditorDropdownWrapper = exports.FilteringTokenWrapper = void 0;
|
|
4
4
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
5
5
|
// SPDX-License-Identifier: Apache-2.0
|
|
6
6
|
const selectors_1 = require("@cloudscape-design/test-utils-core/selectors");
|
|
@@ -77,30 +77,6 @@ class FilteringTokenWrapper extends selectors_1.ComponentWrapper {
|
|
|
77
77
|
}
|
|
78
78
|
exports.FilteringTokenWrapper = FilteringTokenWrapper;
|
|
79
79
|
FilteringTokenWrapper.rootSelector = styles_selectors_js_4.default['filtering-token'];
|
|
80
|
-
// The internal wrapper has two extra methods that are not available publicly
|
|
81
|
-
// until the property filter token grouping is supported.
|
|
82
|
-
class InternalFilteringTokenWrapper extends FilteringTokenWrapper {
|
|
83
|
-
findEditButton() {
|
|
84
|
-
return this.findByClassName(styles_selectors_js_4.default['filtering-token-edit-button']);
|
|
85
|
-
}
|
|
86
|
-
findGroupTokens() {
|
|
87
|
-
return this.findAllByClassName(styles_selectors_js_4.default['filtering-token-inner']).map(w => new FilteringGroupedTokenWrapper(w.getElement()));
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
exports.InternalFilteringTokenWrapper = InternalFilteringTokenWrapper;
|
|
91
|
-
class FilteringGroupedTokenWrapper extends selectors_1.ComponentWrapper {
|
|
92
|
-
findLabel() {
|
|
93
|
-
return this.findByClassName(styles_selectors_js_4.default['filtering-token-inner-content']);
|
|
94
|
-
}
|
|
95
|
-
findRemoveButton() {
|
|
96
|
-
return this.findByClassName(styles_selectors_js_4.default['filtering-token-inner-dismiss-button']);
|
|
97
|
-
}
|
|
98
|
-
findTokenOperation() {
|
|
99
|
-
return this.findComponent(`.${styles_selectors_js_4.default['filtering-token-inner-select']}`, select_1.default);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
exports.FilteringGroupedTokenWrapper = FilteringGroupedTokenWrapper;
|
|
103
|
-
FilteringGroupedTokenWrapper.rootSelector = styles_selectors_js_4.default['filtering-token-inner'];
|
|
104
80
|
class PropertyFilterEditorDropdownWrapper extends selectors_1.ComponentWrapper {
|
|
105
81
|
findHeader() {
|
|
106
82
|
return this.findByClassName(styles_selectors_js_2.default.header);
|
|
@@ -128,15 +104,42 @@ class PropertyFilterEditorDropdownWrapper extends selectors_1.ComponentWrapper {
|
|
|
128
104
|
}
|
|
129
105
|
}
|
|
130
106
|
exports.PropertyFilterEditorDropdownWrapper = PropertyFilterEditorDropdownWrapper;
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
findHeader() {
|
|
135
|
-
return this.findByClassName(styles_selectors_js_2.default.header);
|
|
107
|
+
class PropertyFilterWrapperInternal extends PropertyFilterWrapper {
|
|
108
|
+
findTokens() {
|
|
109
|
+
return this.findAllByClassName(FilteringTokenWrapperInternal.rootSelector).map((elementWrapper) => new FilteringTokenWrapperInternal(elementWrapper.getElement()));
|
|
136
110
|
}
|
|
137
|
-
|
|
138
|
-
|
|
111
|
+
}
|
|
112
|
+
exports.PropertyFilterWrapperInternal = PropertyFilterWrapperInternal;
|
|
113
|
+
class FilteringTokenWrapperInternal extends FilteringTokenWrapper {
|
|
114
|
+
findEditorDropdown(options = {
|
|
115
|
+
expandToViewport: false
|
|
116
|
+
}) {
|
|
117
|
+
const root = options.expandToViewport ? (0, selectors_1.createWrapper)() : this;
|
|
118
|
+
const popoverBody = root.findByClassName(styles_selectors_js_2.default.body);
|
|
119
|
+
return popoverBody ? new PropertyFilterEditorDropdownWrapperInternal(popoverBody.getElement()) : null;
|
|
120
|
+
}
|
|
121
|
+
findEditButton() {
|
|
122
|
+
return this.findByClassName(styles_selectors_js_4.default['filtering-token-edit-button']);
|
|
123
|
+
}
|
|
124
|
+
findGroupTokens() {
|
|
125
|
+
return this.findAllByClassName(styles_selectors_js_4.default['filtering-token-inner']).map(w => new FilteringGroupedTokenWrapper(w.getElement()));
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
exports.FilteringTokenWrapperInternal = FilteringTokenWrapperInternal;
|
|
129
|
+
class FilteringGroupedTokenWrapper extends selectors_1.ComponentWrapper {
|
|
130
|
+
findLabel() {
|
|
131
|
+
return this.findByClassName(styles_selectors_js_4.default['filtering-token-inner-content']);
|
|
132
|
+
}
|
|
133
|
+
findRemoveButton() {
|
|
134
|
+
return this.findByClassName(styles_selectors_js_4.default['filtering-token-inner-dismiss-button']);
|
|
139
135
|
}
|
|
136
|
+
findTokenOperation() {
|
|
137
|
+
return this.findComponent(`.${styles_selectors_js_4.default['filtering-token-inner-select']}`, select_1.default);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
exports.FilteringGroupedTokenWrapper = FilteringGroupedTokenWrapper;
|
|
141
|
+
FilteringGroupedTokenWrapper.rootSelector = styles_selectors_js_4.default['filtering-token-inner'];
|
|
142
|
+
class PropertyFilterEditorDropdownWrapperInternal extends PropertyFilterEditorDropdownWrapper {
|
|
140
143
|
findPropertyField(index = 1) {
|
|
141
144
|
const dataIndex = `[data-testindex="${index - 1}"]`;
|
|
142
145
|
return this.findComponent(`.${styles_selectors_js_4.default['token-editor-field-property']}${dataIndex}`, form_field_1.default);
|
|
@@ -158,12 +161,6 @@ class InternalPropertyFilterEditorDropdownWrapper extends selectors_1.ComponentW
|
|
|
158
161
|
const buttonDropdown = this.find(`.${styles_selectors_js_4.default['token-editor-token-add-actions']}`);
|
|
159
162
|
return buttonDropdown ? new button_dropdown_1.default(buttonDropdown.getElement()) : null;
|
|
160
163
|
}
|
|
161
|
-
findCancelButton() {
|
|
162
|
-
return this.findComponent(`.${styles_selectors_js_4.default['token-editor-cancel']}`, button_1.default);
|
|
163
|
-
}
|
|
164
|
-
findSubmitButton() {
|
|
165
|
-
return this.findComponent(`.${styles_selectors_js_4.default['token-editor-submit']}`, button_1.default);
|
|
166
|
-
}
|
|
167
164
|
}
|
|
168
|
-
exports.
|
|
165
|
+
exports.PropertyFilterEditorDropdownWrapperInternal = PropertyFilterEditorDropdownWrapperInternal;
|
|
169
166
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/test-utils/selectors/property-filter/index.ts"],"names":[],"mappings":";;;AAAA,qEAAqE;AACrE,sCAAsC;AACtC,4EAA+G;AAC/G,gDAAgD;AAChD,sCAAsC;AACtC,wDAAuD;AACvD,8CAA6C;AAC7C,sCAAsC;AACtC,qGAA6F;AAC7F,8EAAiE;AACjE,sFAAkE;AAClE,mGAAuF;AACvF,kFAAwE;AACxE,MAAqB,qBAAsB,SAAQ,qBAAkB;IAEnE,gBAAgB;QACd,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAgB,CAAC,OAAO,CAAE,CAAC;IACzD,CAAC;IACD,UAAU;QACR,OAAO,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,cAA8B,EAAE,EAAE,CAAC,IAAI,qBAAqB,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IACrK,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAkB,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,mBAAmB;QACjB,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,uBAAuB;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAM,CAAC,UAAU,CAAC,CAAC;IACjD,CAAC;;AA1CH,wCA2CC;AA1CQ,kCAAY,GAAG,6BAAM,CAAC,IAAI,CAAC;AA2CpC,MAAa,qBAAsB,SAAQ,4BAAgB;IAEzD,SAAS;QACP,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAc,CAAC,yBAAyB,CAAC,CAAE,CAAC,eAAe,CAAC,6BAAa,CAAC,OAAO,CAAE,CAAC;IAClH,CAAC;IACD,gBAAgB;QACd,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAc,CAAC,gCAAgC,CAAC,CAAE,CAAC;IACjF,CAAC;IACD,kBAAkB;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,6BAAc,CAAC,wBAAwB,CAAC,EAAE,EAAE,gBAAa,CAAC,CAAC;IAC3F,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,OAAO,GAAG;QAC3B,gBAAgB,EAAE,KAAK;KACxB;QACC,MAAM,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAA,yBAAa,GAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,6BAAa,CAAC,IAAI,CAAC,CAAC;QAC7D,OAAO,WAAW,CAAC,CAAC,CAAC,IAAI,mCAAmC,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChG,CAAC;;AArBH,sDAsBC;AArBQ,kCAAY,GAAG,6BAAc,CAAC,iBAAiB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/test-utils/selectors/property-filter/index.ts"],"names":[],"mappings":"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"}
|