@cloudscape-design/components 3.0.51 → 3.0.54
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/collection-preferences/styles.css.js +19 -19
- package/collection-preferences/styles.scoped.css +20 -21
- package/collection-preferences/styles.selectors.js +19 -19
- package/{internal/components/date-input → date-input}/index.d.ts +1 -1
- package/date-input/index.d.ts.map +1 -0
- package/date-input/index.js +15 -0
- package/date-input/index.js.map +1 -0
- package/date-input/interfaces.d.ts +9 -0
- package/date-input/interfaces.d.ts.map +1 -0
- package/date-input/interfaces.js +4 -0
- package/date-input/interfaces.js.map +1 -0
- package/date-input/internal.d.ts +6 -0
- package/date-input/internal.d.ts.map +1 -0
- package/date-input/internal.js +30 -0
- package/date-input/internal.js.map +1 -0
- package/date-input/styles.css.js +6 -0
- package/date-input/styles.scoped.css +7 -0
- package/date-input/styles.selectors.js +7 -0
- package/date-picker/calendar/grid/index.d.ts +4 -8
- package/date-picker/calendar/grid/index.d.ts.map +1 -1
- package/date-picker/calendar/grid/index.js +4 -6
- package/date-picker/calendar/grid/index.js.map +1 -1
- package/date-picker/calendar/index.d.ts +11 -19
- package/date-picker/calendar/index.d.ts.map +1 -1
- package/date-picker/calendar/index.js +29 -19
- package/date-picker/calendar/index.js.map +1 -1
- package/date-picker/calendar/utils/memoized-date.d.ts +1 -1
- package/date-picker/calendar/utils/memoized-date.d.ts.map +1 -1
- package/date-picker/calendar/utils/memoized-date.js +1 -1
- package/date-picker/calendar/utils/memoized-date.js.map +1 -1
- package/date-picker/index.d.ts.map +1 -1
- package/date-picker/index.js +11 -19
- package/date-picker/index.js.map +1 -1
- package/date-range-picker/calendar/index.js +3 -3
- package/date-range-picker/calendar/index.js.map +1 -1
- package/internal/environment.js +1 -1
- package/package.json +1 -1
- package/property-filter/index.d.ts.map +1 -1
- package/property-filter/index.js +1 -1
- package/property-filter/index.js.map +1 -1
- package/property-filter/property-filter-autosuggest.d.ts.map +1 -1
- package/property-filter/property-filter-autosuggest.js +4 -2
- package/property-filter/property-filter-autosuggest.js.map +1 -1
- package/property-filter/styles.css.js +30 -27
- package/property-filter/styles.scoped.css +59 -34
- package/property-filter/styles.selectors.js +30 -27
- package/property-filter/token-editor.d.ts.map +1 -1
- package/property-filter/token-editor.js +17 -22
- package/property-filter/token-editor.js.map +1 -1
- package/test-utils/dom/date-input/index.d.ts +4 -0
- package/test-utils/dom/date-input/index.js +31 -0
- package/test-utils/dom/date-input/index.js.map +1 -0
- package/test-utils/selectors/date-input/index.d.ts +4 -0
- package/test-utils/selectors/date-input/index.js +31 -0
- package/test-utils/selectors/date-input/index.js.map +1 -0
- package/test-utils/tsconfig.tsbuildinfo +1 -1
- package/date-picker/calendar/definitions.d.ts +0 -9
- package/date-picker/calendar/definitions.d.ts.map +0 -1
- package/date-picker/calendar/definitions.js +0 -2
- package/date-picker/calendar/definitions.js.map +0 -1
- package/date-picker/embedded.d.ts +0 -3
- package/date-picker/embedded.d.ts.map +0 -1
- package/date-picker/embedded.js +0 -15
- package/date-picker/embedded.js.map +0 -1
- package/date-picker/use-date-picker.d.ts +0 -17
- package/date-picker/use-date-picker.d.ts.map +0 -1
- package/date-picker/use-date-picker.js +0 -48
- package/date-picker/use-date-picker.js.map +0 -1
- package/internal/components/date-input/index.d.ts.map +0 -1
- package/internal/components/date-input/index.js +0 -28
- package/internal/components/date-input/index.js.map +0 -1
- package/internal/components/date-input/interfaces.d.ts +0 -16
- package/internal/components/date-input/interfaces.d.ts.map +0 -1
- package/internal/components/date-input/interfaces.js +0 -2
- package/internal/components/date-input/interfaces.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"property-filter-autosuggest.js","sourceRoot":"","sources":["../../../src/property-filter/property-filter-autosuggest.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, { Ref, useRef } from 'react';\n\nimport { useAutosuggestItems } from '../autosuggest/options-controller';\nimport { AutosuggestItem, AutosuggestProps } from '../autosuggest/interfaces';\n\nimport { useDropdownStatus } from '../internal/components/dropdown-status';\nimport DropdownFooter from '../internal/components/dropdown-footer';\n\nimport { generateUniqueId, useUniqueId } from '../internal/hooks/use-unique-id';\nimport {\n fireNonCancelableEvent,\n CancelableEventHandler,\n NonCancelableCustomEvent,\n BaseKeyDetail,\n} from '../internal/events';\nimport { BaseChangeDetail } from '../input/interfaces';\nimport styles from '../autosuggest/styles.css.js';\nimport { fireCancelableEvent } from '../internal/events/index';\nimport { InternalBaseComponentProps } from '../internal/hooks/use-base-component';\nimport AutosuggestOptionsList from '../autosuggest/options-list';\nimport { useAutosuggestLoadMore } from '../autosuggest/load-more-controller';\nimport { OptionsLoadItemsDetail } from '../internal/components/dropdown/interfaces';\nimport AutosuggestInput, { AutosuggestInputRef } from '../internal/components/autosuggest-input';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\n\nconst DROPDOWN_WIDTH = 300;\n\nexport interface PropertyFilterAutosuggestProps extends AutosuggestProps, InternalBaseComponentProps {\n filterText?: string;\n onOptionClick?: CancelableEventHandler<AutosuggestProps.Option>;\n hideEnteredTextOption?: boolean;\n}\n\nconst PropertyFilterAutosuggest = React.forwardRef(\n (props: PropertyFilterAutosuggestProps, ref: Ref<AutosuggestInputRef>) => {\n const {\n value,\n onChange,\n onFocus,\n onBlur,\n onLoadItems,\n options,\n filteringType = 'auto',\n statusType = 'finished',\n placeholder,\n disabled,\n ariaLabel,\n enteredTextLabel,\n onKeyDown,\n virtualScroll,\n expandToViewport,\n filterText,\n onOptionClick,\n hideEnteredTextOption,\n ...rest\n } = props;\n const highlightText = filterText === undefined ? value : filterText;\n\n const autosuggestInputRef = useRef<AutosuggestInputRef>(null);\n const mergedRef = useMergeRefs(autosuggestInputRef, ref);\n\n const [autosuggestItemsState, autosuggestItemsHandlers] = useAutosuggestItems({\n options: options || [],\n filterValue: value,\n filterText: highlightText,\n filteringType,\n hideEnteredTextLabel: hideEnteredTextOption,\n onSelectItem: (option: AutosuggestItem) => {\n const value = option.value || '';\n fireNonCancelableEvent(onChange, { value });\n const selectedCancelled = fireCancelableEvent(onOptionClick, option);\n if (!selectedCancelled) {\n autosuggestInputRef.current?.close();\n } else {\n autosuggestItemsHandlers.resetHighlightWithKeyboard();\n }\n },\n });\n\n const autosuggestLoadMoreHandlers = useAutosuggestLoadMore({\n options,\n statusType,\n onLoadItems: (detail: OptionsLoadItemsDetail) => fireNonCancelableEvent(onLoadItems, detail),\n });\n\n const handleChange = (event: NonCancelableCustomEvent<BaseChangeDetail>) => {\n autosuggestItemsHandlers.resetHighlightWithKeyboard();\n fireNonCancelableEvent(onChange, event.detail);\n };\n\n const handleDelayedInput = (event: NonCancelableCustomEvent<BaseChangeDetail>) => {\n autosuggestLoadMoreHandlers.fireLoadMoreOnInputChange(event.detail.value);\n };\n\n const handleFocus = () => {\n autosuggestLoadMoreHandlers.fireLoadMoreOnInputFocus();\n fireCancelableEvent(onFocus, null);\n };\n\n const handleBlur = () => {\n fireCancelableEvent(onBlur, null);\n };\n\n const handleKeyDown = (e: CustomEvent<BaseKeyDetail>) => {\n fireCancelableEvent(onKeyDown, e.detail);\n };\n\n const handlePressArrowDown = () => {\n autosuggestItemsHandlers.moveHighlightWithKeyboard(1);\n };\n\n const handlePressArrowUp = () => {\n autosuggestItemsHandlers.moveHighlightWithKeyboard(-1);\n };\n\n const handlePressEnter = () => {\n return autosuggestItemsHandlers.selectHighlightedOptionWithKeyboard();\n };\n\n const handleCloseDropdown = () => {\n autosuggestItemsHandlers.resetHighlightWithKeyboard();\n };\n\n const handleRecoveryClick = () => {\n autosuggestLoadMoreHandlers.fireLoadMoreOnRecoveryClick();\n autosuggestInputRef.current?.focus();\n };\n\n const handleDropdownMouseDown: React.MouseEventHandler = event => {\n // Prevent currently focused element from losing focus.\n event.preventDefault();\n };\n\n const selfControlId = useUniqueId('input');\n const controlId = rest.controlId ?? selfControlId;\n const listId = useUniqueId('list');\n const highlightedOptionId = autosuggestItemsState.highlightedOption ? generateUniqueId() : undefined;\n\n const isEmpty = !value && !autosuggestItemsState.items.length;\n const dropdownStatus = useDropdownStatus({ ...props, isEmpty, onRecoveryClick: handleRecoveryClick });\n\n return (\n <AutosuggestInput\n ref={mergedRef}\n className={styles.root}\n value={value}\n onChange={handleChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n controlId={controlId}\n placeholder={placeholder}\n disabled={disabled}\n ariaLabel={ariaLabel}\n expandToViewport={expandToViewport}\n ariaControls={listId}\n ariaActivedescendant={highlightedOptionId}\n dropdownExpanded={autosuggestItemsState.items.length > 1}\n dropdownContent={\n <AutosuggestOptionsList\n autosuggestItemsState={autosuggestItemsState}\n autosuggestItemsHandlers={autosuggestItemsHandlers}\n highlightedOptionId={highlightedOptionId}\n highlightText={highlightText}\n listId={listId}\n controlId={controlId}\n enteredTextLabel={enteredTextLabel}\n handleLoadMore={autosuggestLoadMoreHandlers.fireLoadMoreOnScroll}\n hasDropdownStatus={dropdownStatus.content !== null}\n virtualScroll={virtualScroll}\n listBottom={!dropdownStatus.isSticky ? <DropdownFooter content={dropdownStatus.content} /> : null}\n />\n }\n dropdownFooter={\n dropdownStatus.isSticky ? (\n <DropdownFooter content={dropdownStatus.content} hasItems={autosuggestItemsState.items.length >= 1} />\n ) : null\n }\n dropdownWidth={DROPDOWN_WIDTH}\n onDropdownMouseDown={handleDropdownMouseDown}\n onCloseDropdown={handleCloseDropdown}\n onDelayedInput={handleDelayedInput}\n onPressArrowDown={handlePressArrowDown}\n onPressArrowUp={handlePressArrowUp}\n onPressEnter={handlePressEnter}\n {...rest}\n />\n );\n }\n);\n\nexport default PropertyFilterAutosuggest;\n"]}
|
|
1
|
+
{"version":3,"file":"property-filter-autosuggest.js","sourceRoot":"","sources":["../../../src/property-filter/property-filter-autosuggest.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, { Ref, useRef } from 'react';\n\nimport { useAutosuggestItems } from '../autosuggest/options-controller';\nimport { AutosuggestItem, AutosuggestProps } from '../autosuggest/interfaces';\n\nimport { useDropdownStatus } from '../internal/components/dropdown-status';\nimport DropdownFooter from '../internal/components/dropdown-footer';\n\nimport { generateUniqueId, useUniqueId } from '../internal/hooks/use-unique-id';\nimport {\n fireNonCancelableEvent,\n CancelableEventHandler,\n NonCancelableCustomEvent,\n BaseKeyDetail,\n} from '../internal/events';\nimport { BaseChangeDetail } from '../input/interfaces';\nimport autosuggestStyles from '../autosuggest/styles.css.js';\nimport styles from './styles.css.js';\nimport { fireCancelableEvent } from '../internal/events/index';\nimport { InternalBaseComponentProps } from '../internal/hooks/use-base-component';\nimport AutosuggestOptionsList from '../autosuggest/options-list';\nimport { useAutosuggestLoadMore } from '../autosuggest/load-more-controller';\nimport { OptionsLoadItemsDetail } from '../internal/components/dropdown/interfaces';\nimport AutosuggestInput, { AutosuggestInputRef } from '../internal/components/autosuggest-input';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\nimport clsx from 'clsx';\n\nconst DROPDOWN_WIDTH = 300;\n\nexport interface PropertyFilterAutosuggestProps extends AutosuggestProps, InternalBaseComponentProps {\n filterText?: string;\n onOptionClick?: CancelableEventHandler<AutosuggestProps.Option>;\n hideEnteredTextOption?: boolean;\n}\n\nconst PropertyFilterAutosuggest = React.forwardRef(\n (props: PropertyFilterAutosuggestProps, ref: Ref<AutosuggestInputRef>) => {\n const {\n value,\n onChange,\n onFocus,\n onBlur,\n onLoadItems,\n options,\n filteringType = 'auto',\n statusType = 'finished',\n placeholder,\n disabled,\n ariaLabel,\n enteredTextLabel,\n onKeyDown,\n virtualScroll,\n expandToViewport,\n filterText,\n onOptionClick,\n hideEnteredTextOption,\n ...rest\n } = props;\n const highlightText = filterText === undefined ? value : filterText;\n\n const autosuggestInputRef = useRef<AutosuggestInputRef>(null);\n const mergedRef = useMergeRefs(autosuggestInputRef, ref);\n\n const [autosuggestItemsState, autosuggestItemsHandlers] = useAutosuggestItems({\n options: options || [],\n filterValue: value,\n filterText: highlightText,\n filteringType,\n hideEnteredTextLabel: hideEnteredTextOption,\n onSelectItem: (option: AutosuggestItem) => {\n const value = option.value || '';\n fireNonCancelableEvent(onChange, { value });\n const selectedCancelled = fireCancelableEvent(onOptionClick, option);\n if (!selectedCancelled) {\n autosuggestInputRef.current?.close();\n } else {\n autosuggestItemsHandlers.resetHighlightWithKeyboard();\n }\n },\n });\n\n const autosuggestLoadMoreHandlers = useAutosuggestLoadMore({\n options,\n statusType,\n onLoadItems: (detail: OptionsLoadItemsDetail) => fireNonCancelableEvent(onLoadItems, detail),\n });\n\n const handleChange = (event: NonCancelableCustomEvent<BaseChangeDetail>) => {\n autosuggestItemsHandlers.resetHighlightWithKeyboard();\n fireNonCancelableEvent(onChange, event.detail);\n };\n\n const handleDelayedInput = (event: NonCancelableCustomEvent<BaseChangeDetail>) => {\n autosuggestLoadMoreHandlers.fireLoadMoreOnInputChange(event.detail.value);\n };\n\n const handleFocus = () => {\n autosuggestLoadMoreHandlers.fireLoadMoreOnInputFocus();\n fireCancelableEvent(onFocus, null);\n };\n\n const handleBlur = () => {\n fireCancelableEvent(onBlur, null);\n };\n\n const handleKeyDown = (e: CustomEvent<BaseKeyDetail>) => {\n fireCancelableEvent(onKeyDown, e.detail);\n };\n\n const handlePressArrowDown = () => {\n autosuggestItemsHandlers.moveHighlightWithKeyboard(1);\n };\n\n const handlePressArrowUp = () => {\n autosuggestItemsHandlers.moveHighlightWithKeyboard(-1);\n };\n\n const handlePressEnter = () => {\n return autosuggestItemsHandlers.selectHighlightedOptionWithKeyboard();\n };\n\n const handleCloseDropdown = () => {\n autosuggestItemsHandlers.resetHighlightWithKeyboard();\n };\n\n const handleRecoveryClick = () => {\n autosuggestLoadMoreHandlers.fireLoadMoreOnRecoveryClick();\n autosuggestInputRef.current?.focus();\n };\n\n const handleDropdownMouseDown: React.MouseEventHandler = event => {\n // Prevent currently focused element from losing focus.\n event.preventDefault();\n };\n\n const selfControlId = useUniqueId('input');\n const controlId = rest.controlId ?? selfControlId;\n const listId = useUniqueId('list');\n const highlightedOptionId = autosuggestItemsState.highlightedOption ? generateUniqueId() : undefined;\n\n const isEmpty = !value && !autosuggestItemsState.items.length;\n const dropdownStatus = useDropdownStatus({ ...props, isEmpty, onRecoveryClick: handleRecoveryClick });\n\n return (\n <AutosuggestInput\n ref={mergedRef}\n {...rest}\n className={clsx(autosuggestStyles.root, styles.input)}\n value={value}\n onChange={handleChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n controlId={controlId}\n placeholder={placeholder}\n disabled={disabled}\n ariaLabel={ariaLabel}\n expandToViewport={expandToViewport}\n ariaControls={listId}\n ariaActivedescendant={highlightedOptionId}\n dropdownExpanded={autosuggestItemsState.items.length > 1}\n dropdownContent={\n <AutosuggestOptionsList\n autosuggestItemsState={autosuggestItemsState}\n autosuggestItemsHandlers={autosuggestItemsHandlers}\n highlightedOptionId={highlightedOptionId}\n highlightText={highlightText}\n listId={listId}\n controlId={controlId}\n enteredTextLabel={enteredTextLabel}\n handleLoadMore={autosuggestLoadMoreHandlers.fireLoadMoreOnScroll}\n hasDropdownStatus={dropdownStatus.content !== null}\n virtualScroll={virtualScroll}\n listBottom={!dropdownStatus.isSticky ? <DropdownFooter content={dropdownStatus.content} /> : null}\n />\n }\n dropdownFooter={\n dropdownStatus.isSticky ? (\n <DropdownFooter content={dropdownStatus.content} hasItems={autosuggestItemsState.items.length >= 1} />\n ) : null\n }\n dropdownWidth={DROPDOWN_WIDTH}\n onDropdownMouseDown={handleDropdownMouseDown}\n onCloseDropdown={handleCloseDropdown}\n onDelayedInput={handleDelayedInput}\n onPressArrowDown={handlePressArrowDown}\n onPressArrowUp={handlePressArrowUp}\n onPressEnter={handlePressEnter}\n />\n );\n }\n);\n\nexport default PropertyFilterAutosuggest;\n"]}
|
|
@@ -1,32 +1,35 @@
|
|
|
1
1
|
|
|
2
2
|
import './styles.scoped.css';
|
|
3
3
|
export default {
|
|
4
|
-
"root": "
|
|
5
|
-
"search-field": "awsui_search-
|
|
6
|
-
"input-wrapper": "awsui_input-
|
|
7
|
-
"add-token": "awsui_add-
|
|
8
|
-
"tokens": "
|
|
9
|
-
"token-operator": "awsui_token-
|
|
10
|
-
"token-editor": "awsui_token-
|
|
11
|
-
"token-editor-
|
|
12
|
-
"token-editor-label": "awsui_token-editor-
|
|
13
|
-
"token-editor-
|
|
14
|
-
"token-editor-
|
|
15
|
-
"token-editor-
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
4
|
+
"root": "awsui_root_1wzqe_1rh4s_93",
|
|
5
|
+
"search-field": "awsui_search-field_1wzqe_1rh4s_104",
|
|
6
|
+
"input-wrapper": "awsui_input-wrapper_1wzqe_1rh4s_110",
|
|
7
|
+
"add-token": "awsui_add-token_1wzqe_1rh4s_114",
|
|
8
|
+
"tokens": "awsui_tokens_1wzqe_1rh4s_121",
|
|
9
|
+
"token-operator": "awsui_token-operator_1wzqe_1rh4s_125",
|
|
10
|
+
"token-editor": "awsui_token-editor_1wzqe_1rh4s_129",
|
|
11
|
+
"token-editor-form": "awsui_token-editor-form_1wzqe_1rh4s_136",
|
|
12
|
+
"token-editor-label": "awsui_token-editor-label_1wzqe_1rh4s_142",
|
|
13
|
+
"token-editor-label-text": "awsui_token-editor-label-text_1wzqe_1rh4s_146",
|
|
14
|
+
"token-editor-label-property": "awsui_token-editor-label-property_1wzqe_1rh4s_151",
|
|
15
|
+
"token-editor-label-operator": "awsui_token-editor-label-operator_1wzqe_1rh4s_155",
|
|
16
|
+
"token-editor-label-value": "awsui_token-editor-label-value_1wzqe_1rh4s_159",
|
|
17
|
+
"token-editor-field-property": "awsui_token-editor-field-property_1wzqe_1rh4s_163",
|
|
18
|
+
"token-editor-field-operator": "awsui_token-editor-field-operator_1wzqe_1rh4s_167",
|
|
19
|
+
"token-editor-field-value": "awsui_token-editor-field-value_1wzqe_1rh4s_171",
|
|
20
|
+
"token-editor-actions": "awsui_token-editor-actions_1wzqe_1rh4s_175",
|
|
21
|
+
"token-editor-commit": "awsui_token-editor-commit_1wzqe_1rh4s_184",
|
|
22
|
+
"custom-control": "awsui_custom-control_1wzqe_1rh4s_188",
|
|
23
|
+
"input": "awsui_input_1wzqe_1rh4s_110",
|
|
24
|
+
"results": "awsui_results_1wzqe_1rh4s_196",
|
|
25
|
+
"results-visible": "awsui_results-visible_1wzqe_1rh4s_202",
|
|
26
|
+
"separator": "awsui_separator_1wzqe_1rh4s_206",
|
|
27
|
+
"toggle-collapsed": "awsui_toggle-collapsed_1wzqe_1rh4s_213",
|
|
28
|
+
"token-trigger": "awsui_token-trigger_1wzqe_1rh4s_218",
|
|
29
|
+
"token-editor-cancel": "awsui_token-editor-cancel_1wzqe_1rh4s_224",
|
|
30
|
+
"remove-all": "awsui_remove-all_1wzqe_1rh4s_228",
|
|
31
|
+
"token-label": "awsui_token-label_1wzqe_1rh4s_229",
|
|
32
|
+
"join-operation": "awsui_join-operation_1wzqe_1rh4s_230",
|
|
33
|
+
"token-editor-submit": "awsui_token-editor-submit_1wzqe_1rh4s_231"
|
|
31
34
|
};
|
|
32
35
|
|
|
@@ -90,7 +90,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
90
90
|
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
91
91
|
SPDX-License-Identifier: Apache-2.0
|
|
92
92
|
*/
|
|
93
|
-
.
|
|
93
|
+
.awsui_root_1wzqe_1rh4s_93:not(#\9) {
|
|
94
94
|
/* stylelint-disable-next-line plugin/no-unsupported-browser-features */
|
|
95
95
|
border-collapse: separate;
|
|
96
96
|
border-spacing: 0;
|
|
@@ -127,108 +127,133 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
127
127
|
font-family: var(--font-family-base-qnistn, "Open Sans", "Helvetica Neue", Roboto, Arial, sans-serif);
|
|
128
128
|
}
|
|
129
129
|
|
|
130
|
-
.awsui_search-
|
|
130
|
+
.awsui_search-field_1wzqe_1rh4s_104:not(#\9) {
|
|
131
131
|
display: flex;
|
|
132
132
|
align-items: center;
|
|
133
133
|
max-width: calc(688px - 2 * var(--space-l-4vl6xu, 20px));
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
-
.awsui_input-
|
|
136
|
+
.awsui_input-wrapper_1wzqe_1rh4s_110:not(#\9) {
|
|
137
137
|
flex-grow: 1;
|
|
138
138
|
}
|
|
139
139
|
|
|
140
|
-
.awsui_add-
|
|
140
|
+
.awsui_add-token_1wzqe_1rh4s_114:not(#\9) {
|
|
141
141
|
border-left: 1px solid var(--color-border-divider-default-7s2wjw, #e9ebed);
|
|
142
142
|
box-sizing: border-box;
|
|
143
143
|
margin-left: var(--space-m-17eucw, 16px);
|
|
144
144
|
padding-left: var(--space-m-17eucw, 16px);
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
-
.
|
|
147
|
+
.awsui_tokens_1wzqe_1rh4s_121:not(#\9) {
|
|
148
148
|
margin-top: var(--space-xs-rsr2qu, 8px);
|
|
149
149
|
}
|
|
150
150
|
|
|
151
|
-
.awsui_token-
|
|
151
|
+
.awsui_token-operator_1wzqe_1rh4s_125:not(#\9) {
|
|
152
152
|
font-weight: bold;
|
|
153
153
|
}
|
|
154
154
|
|
|
155
|
-
.awsui_token-
|
|
155
|
+
.awsui_token-editor_1wzqe_1rh4s_129:not(#\9) {
|
|
156
156
|
margin: var(--space-xxs-ynfts5, 4px);
|
|
157
157
|
min-width: 300px;
|
|
158
158
|
display: flex;
|
|
159
159
|
flex-direction: column;
|
|
160
160
|
justify-content: space-between;
|
|
161
161
|
}
|
|
162
|
-
.awsui_token-editor-
|
|
163
|
-
display:
|
|
164
|
-
|
|
165
|
-
|
|
162
|
+
.awsui_token-editor-form_1wzqe_1rh4s_136:not(#\9) {
|
|
163
|
+
display: grid;
|
|
164
|
+
grid-template-columns: max-content minmax(var(--space-xl-a39hup, 24px), 1fr) minmax(200px, min-content);
|
|
165
|
+
grid-row-gap: var(--space-scaled-l-t03y3z, 20px);
|
|
166
|
+
margin-bottom: var(--space-scaled-l-t03y3z, 20px);
|
|
166
167
|
}
|
|
167
|
-
.awsui_token-editor-
|
|
168
|
+
.awsui_token-editor-label_1wzqe_1rh4s_142:not(#\9) {
|
|
169
|
+
max-width: 200px;
|
|
170
|
+
align-self: center;
|
|
171
|
+
}
|
|
172
|
+
.awsui_token-editor-label-text_1wzqe_1rh4s_146:not(#\9) {
|
|
168
173
|
word-wrap: break-word;
|
|
169
174
|
max-width: 100%;
|
|
170
175
|
overflow: hidden;
|
|
171
176
|
}
|
|
172
|
-
.awsui_token-editor-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
177
|
+
.awsui_token-editor-label-property_1wzqe_1rh4s_151:not(#\9) {
|
|
178
|
+
grid-row: 1;
|
|
179
|
+
grid-column: 1;
|
|
180
|
+
}
|
|
181
|
+
.awsui_token-editor-label-operator_1wzqe_1rh4s_155:not(#\9) {
|
|
182
|
+
grid-row: 2;
|
|
183
|
+
grid-column: 1;
|
|
184
|
+
}
|
|
185
|
+
.awsui_token-editor-label-value_1wzqe_1rh4s_159:not(#\9) {
|
|
186
|
+
grid-row: 3;
|
|
187
|
+
grid-column: 1;
|
|
188
|
+
}
|
|
189
|
+
.awsui_token-editor-field-property_1wzqe_1rh4s_163:not(#\9) {
|
|
190
|
+
grid-row: 1;
|
|
191
|
+
grid-column: 3;
|
|
192
|
+
}
|
|
193
|
+
.awsui_token-editor-field-operator_1wzqe_1rh4s_167:not(#\9) {
|
|
194
|
+
grid-row: 2;
|
|
195
|
+
grid-column: 3;
|
|
196
|
+
}
|
|
197
|
+
.awsui_token-editor-field-value_1wzqe_1rh4s_171:not(#\9) {
|
|
198
|
+
grid-row: 3;
|
|
199
|
+
grid-column: 3;
|
|
176
200
|
}
|
|
177
|
-
.awsui_token-editor-
|
|
201
|
+
.awsui_token-editor-actions_1wzqe_1rh4s_175:not(#\9) {
|
|
178
202
|
display: flex;
|
|
179
203
|
justify-content: flex-end;
|
|
180
|
-
|
|
204
|
+
padding-top: var(--space-s-hv8c1d, 12px);
|
|
205
|
+
border-top: 1px solid var(--color-border-dropdown-item-default-faosd8, #e9ebed);
|
|
206
|
+
padding-right: calc(var(--space-m-17eucw, 16px) + var(--space-xxs-ynfts5, 4px));
|
|
207
|
+
margin-left: calc(-1 * var(--space-m-17eucw, 16px) + -1 * var(--space-xxs-ynfts5, 4px));
|
|
208
|
+
margin-right: calc(-1 * var(--space-m-17eucw, 16px) + -1 * var(--space-xxs-ynfts5, 4px));
|
|
181
209
|
}
|
|
182
|
-
.awsui_token-editor-
|
|
210
|
+
.awsui_token-editor-commit_1wzqe_1rh4s_184:not(#\9) {
|
|
183
211
|
margin-left: var(--space-xs-rsr2qu, 8px);
|
|
184
212
|
}
|
|
185
213
|
|
|
186
|
-
.awsui_custom-
|
|
214
|
+
.awsui_custom-control_1wzqe_1rh4s_188:not(#\9) {
|
|
187
215
|
margin-right: var(--space-s-hv8c1d, 12px);
|
|
188
216
|
}
|
|
189
217
|
|
|
190
|
-
.
|
|
218
|
+
.awsui_input_1wzqe_1rh4s_110:not(#\9) {
|
|
191
219
|
flex: 1;
|
|
192
220
|
}
|
|
193
221
|
|
|
194
|
-
.
|
|
222
|
+
.awsui_results_1wzqe_1rh4s_196:not(#\9) {
|
|
195
223
|
color: var(--color-text-form-label-k3j0b4, #000716);
|
|
196
224
|
display: inline-block;
|
|
197
225
|
box-sizing: border-box;
|
|
198
226
|
white-space: nowrap;
|
|
199
227
|
}
|
|
200
|
-
.awsui_results-
|
|
228
|
+
.awsui_results-visible_1wzqe_1rh4s_202:not(#\9) {
|
|
201
229
|
padding-left: var(--space-s-hv8c1d, 12px);
|
|
202
230
|
}
|
|
203
231
|
|
|
204
|
-
.
|
|
232
|
+
.awsui_separator_1wzqe_1rh4s_206:not(#\9) {
|
|
205
233
|
margin: 0px var(--space-scaled-m-pv0fmt, 16px);
|
|
206
234
|
height: 100%;
|
|
207
235
|
width: var(--border-divider-section-width-4wm2it, 2px);
|
|
208
236
|
background-color: var(--color-border-divider-default-7s2wjw, #e9ebed);
|
|
209
237
|
}
|
|
210
238
|
|
|
211
|
-
.awsui_toggle-
|
|
239
|
+
.awsui_toggle-collapsed_1wzqe_1rh4s_213:not(#\9) {
|
|
212
240
|
margin-top: calc(-1 * var(--space-scaled-xxs-95dhkm, 4px));
|
|
213
241
|
margin-left: var(--space-xs-rsr2qu, 8px);
|
|
214
242
|
}
|
|
215
243
|
|
|
216
|
-
.awsui_token-
|
|
244
|
+
.awsui_token-trigger_1wzqe_1rh4s_218:not(#\9) {
|
|
217
245
|
min-width: 0;
|
|
218
246
|
-ms-word-break: break-all;
|
|
219
247
|
word-break: break-word;
|
|
220
248
|
}
|
|
221
249
|
|
|
222
|
-
.awsui_token-editor-
|
|
250
|
+
.awsui_token-editor-cancel_1wzqe_1rh4s_224:not(#\9) {
|
|
223
251
|
margin-right: var(--space-xs-rsr2qu, 8px);
|
|
224
252
|
}
|
|
225
253
|
|
|
226
|
-
.awsui_remove-
|
|
227
|
-
.awsui_token-
|
|
228
|
-
.awsui_join-
|
|
229
|
-
.
|
|
230
|
-
.awsui_operator-selector_1wzqe_5ev6f_204:not(#\9),
|
|
231
|
-
.awsui_value-selector_1wzqe_5ev6f_205:not(#\9),
|
|
232
|
-
.awsui_token-editor-submit_1wzqe_5ev6f_206:not(#\9) {
|
|
254
|
+
.awsui_remove-all_1wzqe_1rh4s_228:not(#\9),
|
|
255
|
+
.awsui_token-label_1wzqe_1rh4s_229:not(#\9),
|
|
256
|
+
.awsui_join-operation_1wzqe_1rh4s_230:not(#\9),
|
|
257
|
+
.awsui_token-editor-submit_1wzqe_1rh4s_231:not(#\9) {
|
|
233
258
|
/* used in test-utils */
|
|
234
259
|
}
|
|
@@ -2,32 +2,35 @@
|
|
|
2
2
|
// es-module interop with Babel and Typescript
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
module.exports.default = {
|
|
5
|
-
"root": "
|
|
6
|
-
"search-field": "awsui_search-
|
|
7
|
-
"input-wrapper": "awsui_input-
|
|
8
|
-
"add-token": "awsui_add-
|
|
9
|
-
"tokens": "
|
|
10
|
-
"token-operator": "awsui_token-
|
|
11
|
-
"token-editor": "awsui_token-
|
|
12
|
-
"token-editor-
|
|
13
|
-
"token-editor-label": "awsui_token-editor-
|
|
14
|
-
"token-editor-
|
|
15
|
-
"token-editor-
|
|
16
|
-
"token-editor-
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
5
|
+
"root": "awsui_root_1wzqe_1rh4s_93",
|
|
6
|
+
"search-field": "awsui_search-field_1wzqe_1rh4s_104",
|
|
7
|
+
"input-wrapper": "awsui_input-wrapper_1wzqe_1rh4s_110",
|
|
8
|
+
"add-token": "awsui_add-token_1wzqe_1rh4s_114",
|
|
9
|
+
"tokens": "awsui_tokens_1wzqe_1rh4s_121",
|
|
10
|
+
"token-operator": "awsui_token-operator_1wzqe_1rh4s_125",
|
|
11
|
+
"token-editor": "awsui_token-editor_1wzqe_1rh4s_129",
|
|
12
|
+
"token-editor-form": "awsui_token-editor-form_1wzqe_1rh4s_136",
|
|
13
|
+
"token-editor-label": "awsui_token-editor-label_1wzqe_1rh4s_142",
|
|
14
|
+
"token-editor-label-text": "awsui_token-editor-label-text_1wzqe_1rh4s_146",
|
|
15
|
+
"token-editor-label-property": "awsui_token-editor-label-property_1wzqe_1rh4s_151",
|
|
16
|
+
"token-editor-label-operator": "awsui_token-editor-label-operator_1wzqe_1rh4s_155",
|
|
17
|
+
"token-editor-label-value": "awsui_token-editor-label-value_1wzqe_1rh4s_159",
|
|
18
|
+
"token-editor-field-property": "awsui_token-editor-field-property_1wzqe_1rh4s_163",
|
|
19
|
+
"token-editor-field-operator": "awsui_token-editor-field-operator_1wzqe_1rh4s_167",
|
|
20
|
+
"token-editor-field-value": "awsui_token-editor-field-value_1wzqe_1rh4s_171",
|
|
21
|
+
"token-editor-actions": "awsui_token-editor-actions_1wzqe_1rh4s_175",
|
|
22
|
+
"token-editor-commit": "awsui_token-editor-commit_1wzqe_1rh4s_184",
|
|
23
|
+
"custom-control": "awsui_custom-control_1wzqe_1rh4s_188",
|
|
24
|
+
"input": "awsui_input_1wzqe_1rh4s_110",
|
|
25
|
+
"results": "awsui_results_1wzqe_1rh4s_196",
|
|
26
|
+
"results-visible": "awsui_results-visible_1wzqe_1rh4s_202",
|
|
27
|
+
"separator": "awsui_separator_1wzqe_1rh4s_206",
|
|
28
|
+
"toggle-collapsed": "awsui_toggle-collapsed_1wzqe_1rh4s_213",
|
|
29
|
+
"token-trigger": "awsui_token-trigger_1wzqe_1rh4s_218",
|
|
30
|
+
"token-editor-cancel": "awsui_token-editor-cancel_1wzqe_1rh4s_224",
|
|
31
|
+
"remove-all": "awsui_remove-all_1wzqe_1rh4s_228",
|
|
32
|
+
"token-label": "awsui_token-label_1wzqe_1rh4s_229",
|
|
33
|
+
"join-operation": "awsui_join-operation_1wzqe_1rh4s_230",
|
|
34
|
+
"token-editor-submit": "awsui_token-editor-submit_1wzqe_1rh4s_231"
|
|
32
35
|
};
|
|
33
36
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-editor.d.ts","sourceRoot":"","sources":["../../../src/property-filter/token-editor.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA2B,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"token-editor.d.ts","sourceRoot":"","sources":["../../../src/property-filter/token-editor.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAUhD,OAAO,EAEL,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,WAAW,EACX,eAAe,EACf,KAAK,EACN,MAAM,cAAc,CAAC;AAUtB,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AA6KxF,UAAU,gBAAgB;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,EAAE,mBAAmB,CAAC;IAChC,gBAAgB,EAAE,SAAS,SAAS,EAAE,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,EAAE,SAAS,eAAe,EAAE,CAAC;IAC7C,mBAAmB,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAClD,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,CAAC,EAAE,yBAAyB,CAAC,eAAe,CAAC,CAAC;IACzD,QAAQ,EAAE,CAAC,QAAQ,EAAE,KAAK,KAAK,IAAI,CAAC;IACpC,KAAK,EAAE,KAAK,CAAC;IACb,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACpC;AAED,wBAAgB,WAAW,CAAC,EAC1B,eAAe,EACf,UAAU,EACV,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,QAAQ,EACR,KAAK,EACL,gBAAgB,GACjB,EAAE,gBAAgB,eAgHlB"}
|
|
@@ -4,7 +4,6 @@ import { __assign } from "tslib";
|
|
|
4
4
|
import React, { useState, useRef } from 'react';
|
|
5
5
|
import clsx from 'clsx';
|
|
6
6
|
import InternalSelect from '../select/internal';
|
|
7
|
-
import InternalSpaceBetween from '../space-between/internal';
|
|
8
7
|
import InternalAutosuggest from '../autosuggest/internal';
|
|
9
8
|
import InternalPopover from '../popover/internal';
|
|
10
9
|
import { InternalButton } from '../button/internal';
|
|
@@ -14,11 +13,12 @@ import { useLoadItems } from './use-load-items';
|
|
|
14
13
|
import { getAllowedOperators, getPropertyOptions, getPropertyByKey, operatorToDescription, getPropertySuggestions, } from './controller';
|
|
15
14
|
var freeTextOperators = [':', '!:'];
|
|
16
15
|
function TokenEditorField(_a) {
|
|
17
|
-
var
|
|
16
|
+
var type = _a.type, label = _a.label, children = _a.children;
|
|
18
17
|
var controlId = useUniqueId();
|
|
19
|
-
return (React.createElement(
|
|
20
|
-
React.createElement("label", { className: styles['token-editor-label'], htmlFor: controlId },
|
|
21
|
-
|
|
18
|
+
return (React.createElement(React.Fragment, null,
|
|
19
|
+
React.createElement("label", { className: clsx(styles['token-editor-label'], styles["token-editor-label-".concat(type)]), htmlFor: controlId },
|
|
20
|
+
React.createElement("span", { className: styles['token-editor-label-text'] }, label)),
|
|
21
|
+
React.createElement("div", { className: clsx(styles['token-editor-field'], styles["token-editor-field-".concat(type)]) }, children({ controlId: controlId }))));
|
|
22
22
|
}
|
|
23
23
|
function PropertyInput(_a) {
|
|
24
24
|
var controlId = _a.controlId, propertyKey = _a.propertyKey, onChangePropertyKey = _a.onChangePropertyKey, asyncProps = _a.asyncProps, filteringProperties = _a.filteringProperties, onLoadItems = _a.onLoadItems, customGroupsText = _a.customGroupsText, i18nStrings = _a.i18nStrings, disableFreeTextFiltering = _a.disableFreeTextFiltering;
|
|
@@ -76,14 +76,6 @@ function ValueInput(_a) {
|
|
|
76
76
|
? __assign(__assign({}, valueAutosuggestHandlers), asyncProps) : { empty: asyncProps.empty };
|
|
77
77
|
return (React.createElement(InternalAutosuggest, __assign({ controlId: controlId, enteredTextLabel: i18nStrings.enteredTextLabel, value: value !== null && value !== void 0 ? value : '', onChange: function (e) { return onChangeValue(e.detail.value); }, disabled: !operator, options: valueOptions }, asyncValueAutosuggesProps, { virtualScroll: true })));
|
|
78
78
|
}
|
|
79
|
-
function TokenEditorForm(_a) {
|
|
80
|
-
var i18nStrings = _a.i18nStrings, onCancel = _a.onCancel, onSubmit = _a.onSubmit, children = _a.children;
|
|
81
|
-
return (React.createElement("div", { className: styles['token-editor'] },
|
|
82
|
-
children,
|
|
83
|
-
React.createElement("div", { className: styles['token-editor-actions'] },
|
|
84
|
-
React.createElement(InternalButton, { variant: "link", className: styles['token-editor-cancel'], onClick: onCancel }, i18nStrings.cancelActionText),
|
|
85
|
-
React.createElement(InternalButton, { className: styles['token-editor-submit'], onClick: onSubmit }, i18nStrings.applyActionText))));
|
|
86
|
-
}
|
|
87
79
|
export function TokenEditor(_a) {
|
|
88
80
|
var asyncProperties = _a.asyncProperties, asyncProps = _a.asyncProps, customGroupsText = _a.customGroupsText, disableFreeTextFiltering = _a.disableFreeTextFiltering, expandToViewport = _a.expandToViewport, filteringOptions = _a.filteringOptions, filteringProperties = _a.filteringProperties, i18nStrings = _a.i18nStrings, onLoadItems = _a.onLoadItems, setToken = _a.setToken, token = _a.token, triggerComponent = _a.triggerComponent;
|
|
89
81
|
var _b = useState(token), temporaryToken = _b[0], setTemporaryToken = _b[1];
|
|
@@ -108,22 +100,25 @@ export function TokenEditor(_a) {
|
|
|
108
100
|
var onChangeValue = function (newValue) {
|
|
109
101
|
setTemporaryToken(__assign(__assign({}, temporaryToken), { value: newValue }));
|
|
110
102
|
};
|
|
111
|
-
return (React.createElement(InternalPopover, { ref: popoverRef, className: styles['token-label'], triggerType: "text", header: i18nStrings.editTokenHeader, size: "large", position: "right", dismissAriaLabel: i18nStrings.dismissAriaLabel, __onOpen: function () { return setTemporaryToken(token); }, renderWithPortal: expandToViewport, content: React.createElement(
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
} },
|
|
115
|
-
React.createElement(InternalSpaceBetween, { size: "l" },
|
|
116
|
-
React.createElement(TokenEditorField, { label: i18nStrings.propertyText, className: styles['property-selector'] }, function (_a) {
|
|
103
|
+
return (React.createElement(InternalPopover, { ref: popoverRef, className: styles['token-label'], triggerType: "text", header: i18nStrings.editTokenHeader, size: "large", position: "right", dismissAriaLabel: i18nStrings.dismissAriaLabel, __onOpen: function () { return setTemporaryToken(token); }, renderWithPortal: expandToViewport, content: React.createElement("div", { className: styles['token-editor'] },
|
|
104
|
+
React.createElement("div", { className: styles['token-editor-form'] },
|
|
105
|
+
React.createElement(TokenEditorField, { label: i18nStrings.propertyText, type: "property" }, function (_a) {
|
|
117
106
|
var controlId = _a.controlId;
|
|
118
107
|
return (React.createElement(PropertyInput, { controlId: controlId, propertyKey: propertyKey, onChangePropertyKey: onChangePropertyKey, asyncProps: asyncProperties ? asyncProps : null, filteringProperties: filteringProperties, onLoadItems: onLoadItems, customGroupsText: customGroupsText, i18nStrings: i18nStrings, disableFreeTextFiltering: disableFreeTextFiltering }));
|
|
119
108
|
}),
|
|
120
|
-
React.createElement(TokenEditorField, { label: i18nStrings.operatorText,
|
|
109
|
+
React.createElement(TokenEditorField, { label: i18nStrings.operatorText, type: "operator" }, function (_a) {
|
|
121
110
|
var controlId = _a.controlId;
|
|
122
111
|
return (React.createElement(OperatorInput, { controlId: controlId, propertyKey: propertyKey, operator: operator, onChangeOperator: onChangeOperator, filteringProperties: filteringProperties, i18nStrings: i18nStrings }));
|
|
123
112
|
}),
|
|
124
|
-
React.createElement(TokenEditorField, { label: i18nStrings.valueText,
|
|
113
|
+
React.createElement(TokenEditorField, { label: i18nStrings.valueText, type: "value" }, function (_a) {
|
|
125
114
|
var controlId = _a.controlId;
|
|
126
115
|
return (React.createElement(ValueInput, { controlId: controlId, propertyKey: propertyKey, operator: operator, value: value, onChangeValue: onChangeValue, asyncProps: asyncProps, filteringProperties: filteringProperties, filteringOptions: filteringOptions, onLoadItems: onLoadItems, i18nStrings: i18nStrings }));
|
|
127
|
-
}))
|
|
116
|
+
})),
|
|
117
|
+
React.createElement("div", { className: styles['token-editor-actions'] },
|
|
118
|
+
React.createElement(InternalButton, { variant: "link", className: styles['token-editor-cancel'], onClick: closePopover }, i18nStrings.cancelActionText),
|
|
119
|
+
React.createElement(InternalButton, { className: styles['token-editor-submit'], onClick: function () {
|
|
120
|
+
setToken(temporaryToken);
|
|
121
|
+
closePopover();
|
|
122
|
+
} }, i18nStrings.applyActionText))) }, triggerComponent));
|
|
128
123
|
}
|
|
129
124
|
//# sourceMappingURL=token-editor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-editor.js","sourceRoot":"","sources":["../../../src/property-filter/token-editor.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\nimport React, { useState, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { SelectProps } from '../select/interfaces';\nimport InternalSelect from '../select/internal';\nimport InternalSpaceBetween from '../space-between/internal';\nimport InternalAutosuggest from '../autosuggest/internal';\nimport InternalPopover, { InternalPopoverRef } from '../popover/internal';\nimport { InternalButton } from '../button/internal';\nimport { useUniqueId } from '../internal/hooks/use-unique-id/index';\n\nimport {\n ComparisonOperator,\n FilteringOption,\n FilteringProperty,\n GroupText,\n I18nStrings,\n LoadItemsDetail,\n Token,\n} from './interfaces';\nimport styles from './styles.css.js';\nimport { useLoadItems } from './use-load-items';\nimport {\n getAllowedOperators,\n getPropertyOptions,\n getPropertyByKey,\n operatorToDescription,\n getPropertySuggestions,\n} from './controller';\nimport { NonCancelableEventHandler } from '../internal/events';\nimport { DropdownStatusProps } from '../internal/components/dropdown-status/interfaces';\n\nconst freeTextOperators: ComparisonOperator[] = [':', '!:'];\n\ninterface TokenEditorFieldProps {\n label: React.ReactNode;\n className: string;\n children: ({ controlId }: { controlId: string }) => React.ReactNode;\n}\n\nfunction TokenEditorField({ className, label, children }: TokenEditorFieldProps) {\n const controlId = useUniqueId();\n return (\n <div className={clsx(styles['token-editor-line'], className)}>\n <label className={styles['token-editor-label']} htmlFor={controlId}>\n {label}\n </label>\n <div className={styles['token-editor-field']}>{children({ controlId })}</div>\n </div>\n );\n}\n\ninterface PropertyInputProps {\n controlId: string;\n asyncProps: null | DropdownStatusProps;\n customGroupsText: readonly GroupText[];\n disableFreeTextFiltering?: boolean;\n filteringProperties: readonly FilteringProperty[];\n i18nStrings: I18nStrings;\n onChangePropertyKey: (propertyKey: undefined | string) => void;\n onLoadItems?: NonCancelableEventHandler<LoadItemsDetail>;\n propertyKey: undefined | string;\n}\n\nfunction PropertyInput({\n controlId,\n propertyKey,\n onChangePropertyKey,\n asyncProps,\n filteringProperties,\n onLoadItems,\n customGroupsText,\n i18nStrings,\n disableFreeTextFiltering,\n}: PropertyInputProps) {\n const property = propertyKey !== undefined ? getPropertyByKey(filteringProperties, propertyKey) : undefined;\n const propertySelectHandlers = useLoadItems(onLoadItems);\n const asyncPropertySelectProps = asyncProps ? { ...asyncProps, ...propertySelectHandlers } : {};\n const propertyOptions: (SelectProps.Option | SelectProps.OptionGroup)[] = getPropertySuggestions(\n filteringProperties,\n customGroupsText,\n i18nStrings,\n ({ propertyLabel, key }) => ({\n value: key,\n label: propertyLabel,\n dontCloseOnSelect: true,\n })\n );\n const allPropertiesOption = {\n label: i18nStrings.allPropertiesLabel,\n value: undefined,\n };\n if (!disableFreeTextFiltering) {\n propertyOptions.unshift(allPropertiesOption);\n }\n return (\n <InternalSelect\n controlId={controlId}\n options={propertyOptions}\n selectedOption={\n property\n ? {\n value: propertyKey ?? undefined,\n label: property.propertyLabel,\n }\n : allPropertiesOption\n }\n onChange={e => onChangePropertyKey(e.detail.selectedOption.value)}\n {...asyncPropertySelectProps}\n />\n );\n}\n\ninterface OperatorInputProps {\n controlId: string;\n filteringProperties: readonly FilteringProperty[];\n i18nStrings: I18nStrings;\n onChangeOperator: (operator: ComparisonOperator) => void;\n operator: undefined | ComparisonOperator;\n propertyKey: undefined | string;\n}\n\nfunction OperatorInput({\n controlId,\n propertyKey,\n operator,\n onChangeOperator,\n filteringProperties,\n i18nStrings,\n}: OperatorInputProps) {\n const property = propertyKey !== undefined ? getPropertyByKey(filteringProperties, propertyKey) : undefined;\n const freeTextOperators: ComparisonOperator[] = [':', '!:'];\n const operatorOptions = (property ? getAllowedOperators(property) : freeTextOperators).map(operator => ({\n value: operator,\n label: operator,\n description: operatorToDescription(operator, i18nStrings),\n }));\n return (\n <InternalSelect\n controlId={controlId}\n options={operatorOptions}\n triggerVariant=\"option\"\n selectedOption={\n operator\n ? {\n value: operator,\n label: operator,\n description: operatorToDescription(operator, i18nStrings),\n }\n : null\n }\n onChange={e => onChangeOperator(e.detail.selectedOption.value as ComparisonOperator)}\n />\n );\n}\n\ninterface ValueInputProps {\n controlId: string;\n asyncProps: DropdownStatusProps;\n filteringOptions: readonly FilteringOption[];\n filteringProperties: readonly FilteringProperty[];\n i18nStrings: I18nStrings;\n onChangeValue: (value: string) => void;\n onLoadItems?: NonCancelableEventHandler<LoadItemsDetail>;\n operator: undefined | ComparisonOperator;\n propertyKey: undefined | string;\n value: undefined | string;\n}\n\nfunction ValueInput({\n controlId,\n propertyKey,\n operator,\n value,\n onChangeValue,\n asyncProps,\n filteringProperties,\n filteringOptions,\n onLoadItems,\n i18nStrings,\n}: ValueInputProps) {\n const property = propertyKey !== undefined ? getPropertyByKey(filteringProperties, propertyKey) : undefined;\n const valueOptions = property ? getPropertyOptions(property, filteringOptions).map(({ value }) => ({ value })) : [];\n const valueAutosuggestHandlers = useLoadItems(onLoadItems, '', property);\n const asyncValueAutosuggesProps = propertyKey\n ? { ...valueAutosuggestHandlers, ...asyncProps }\n : { empty: asyncProps.empty };\n return (\n <InternalAutosuggest\n controlId={controlId}\n enteredTextLabel={i18nStrings.enteredTextLabel}\n value={value ?? ''}\n onChange={e => onChangeValue(e.detail.value)}\n disabled={!operator}\n options={valueOptions}\n {...asyncValueAutosuggesProps}\n virtualScroll={true}\n />\n );\n}\n\ninterface TokenEditorFormProps {\n i18nStrings: I18nStrings;\n onCancel(): void;\n onSubmit(): void;\n children: React.ReactNode;\n}\n\nfunction TokenEditorForm({ i18nStrings, onCancel, onSubmit, children }: TokenEditorFormProps) {\n return (\n <div className={styles['token-editor']}>\n {children}\n\n <div className={styles['token-editor-actions']}>\n <InternalButton variant=\"link\" className={styles['token-editor-cancel']} onClick={onCancel}>\n {i18nStrings.cancelActionText}\n </InternalButton>\n <InternalButton className={styles['token-editor-submit']} onClick={onSubmit}>\n {i18nStrings.applyActionText}\n </InternalButton>\n </div>\n </div>\n );\n}\n\ninterface TokenEditorProps {\n asyncProperties?: boolean;\n asyncProps: DropdownStatusProps;\n customGroupsText: readonly GroupText[];\n disabled?: boolean;\n disableFreeTextFiltering?: boolean;\n expandToViewport?: boolean;\n filteringOptions: readonly FilteringOption[];\n filteringProperties: readonly FilteringProperty[];\n i18nStrings: I18nStrings;\n onLoadItems?: NonCancelableEventHandler<LoadItemsDetail>;\n setToken: (newToken: Token) => void;\n token: Token;\n triggerComponent?: React.ReactNode;\n}\n\nexport function TokenEditor({\n asyncProperties,\n asyncProps,\n customGroupsText,\n disableFreeTextFiltering,\n expandToViewport,\n filteringOptions,\n filteringProperties,\n i18nStrings,\n onLoadItems,\n setToken,\n token,\n triggerComponent,\n}: TokenEditorProps) {\n const [temporaryToken, setTemporaryToken] = useState<Token>(token);\n const popoverRef = useRef<InternalPopoverRef>(null);\n const closePopover = () => {\n popoverRef.current && popoverRef.current.dismissPopover();\n };\n\n const propertyKey = temporaryToken.propertyKey;\n const onChangePropertyKey = (newPropertyKey: undefined | string) => {\n const filteringProperty = filteringProperties.reduce<FilteringProperty | undefined>(\n (acc, property) => (property.key === newPropertyKey ? property : acc),\n undefined\n );\n const allowedOperators = filteringProperty ? getAllowedOperators(filteringProperty) : freeTextOperators;\n const operator =\n temporaryToken.operator && allowedOperators.indexOf(temporaryToken.operator) !== -1\n ? temporaryToken.operator\n : allowedOperators[0];\n setTemporaryToken({ ...temporaryToken, propertyKey: newPropertyKey, operator });\n };\n\n const operator = temporaryToken.operator;\n const onChangeOperator = (newOperator: ComparisonOperator) => {\n setTemporaryToken({ ...temporaryToken, operator: newOperator });\n };\n\n const value = temporaryToken.value;\n const onChangeValue = (newValue: string) => {\n setTemporaryToken({ ...temporaryToken, value: newValue });\n };\n\n return (\n <InternalPopover\n ref={popoverRef}\n className={styles['token-label']}\n triggerType=\"text\"\n header={i18nStrings.editTokenHeader}\n size=\"large\"\n position=\"right\"\n dismissAriaLabel={i18nStrings.dismissAriaLabel}\n __onOpen={() => setTemporaryToken(token)}\n renderWithPortal={expandToViewport}\n content={\n <TokenEditorForm\n i18nStrings={i18nStrings}\n onCancel={closePopover}\n onSubmit={() => {\n setToken(temporaryToken as Token);\n closePopover();\n }}\n >\n <InternalSpaceBetween size=\"l\">\n <TokenEditorField label={i18nStrings.propertyText} className={styles['property-selector']}>\n {({ controlId }) => (\n <PropertyInput\n controlId={controlId}\n propertyKey={propertyKey}\n onChangePropertyKey={onChangePropertyKey}\n asyncProps={asyncProperties ? asyncProps : null}\n filteringProperties={filteringProperties}\n onLoadItems={onLoadItems}\n customGroupsText={customGroupsText}\n i18nStrings={i18nStrings}\n disableFreeTextFiltering={disableFreeTextFiltering}\n />\n )}\n </TokenEditorField>\n\n <TokenEditorField label={i18nStrings.operatorText} className={styles['operator-selector']}>\n {({ controlId }) => (\n <OperatorInput\n controlId={controlId}\n propertyKey={propertyKey}\n operator={operator}\n onChangeOperator={onChangeOperator}\n filteringProperties={filteringProperties}\n i18nStrings={i18nStrings}\n />\n )}\n </TokenEditorField>\n\n <TokenEditorField label={i18nStrings.valueText} className={styles['value-selector']}>\n {({ controlId }) => (\n <ValueInput\n controlId={controlId}\n propertyKey={propertyKey}\n operator={operator}\n value={value}\n onChangeValue={onChangeValue}\n asyncProps={asyncProps}\n filteringProperties={filteringProperties}\n filteringOptions={filteringOptions}\n onLoadItems={onLoadItems}\n i18nStrings={i18nStrings}\n />\n )}\n </TokenEditorField>\n </InternalSpaceBetween>\n </TokenEditorForm>\n }\n >\n {triggerComponent}\n </InternalPopover>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"token-editor.js","sourceRoot":"","sources":["../../../src/property-filter/token-editor.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\nimport React, { useState, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { SelectProps } from '../select/interfaces';\nimport InternalSelect from '../select/internal';\nimport InternalAutosuggest from '../autosuggest/internal';\nimport InternalPopover, { InternalPopoverRef } from '../popover/internal';\nimport { InternalButton } from '../button/internal';\nimport { useUniqueId } from '../internal/hooks/use-unique-id/index';\n\nimport {\n ComparisonOperator,\n FilteringOption,\n FilteringProperty,\n GroupText,\n I18nStrings,\n LoadItemsDetail,\n Token,\n} from './interfaces';\nimport styles from './styles.css.js';\nimport { useLoadItems } from './use-load-items';\nimport {\n getAllowedOperators,\n getPropertyOptions,\n getPropertyByKey,\n operatorToDescription,\n getPropertySuggestions,\n} from './controller';\nimport { NonCancelableEventHandler } from '../internal/events';\nimport { DropdownStatusProps } from '../internal/components/dropdown-status/interfaces';\n\nconst freeTextOperators: ComparisonOperator[] = [':', '!:'];\n\ninterface TokenEditorFieldProps {\n label: React.ReactNode;\n type: 'property' | 'operator' | 'value';\n children: ({ controlId }: { controlId: string }) => React.ReactNode;\n}\n\nfunction TokenEditorField({ type, label, children }: TokenEditorFieldProps) {\n const controlId = useUniqueId();\n return (\n <>\n <label className={clsx(styles['token-editor-label'], styles[`token-editor-label-${type}`])} htmlFor={controlId}>\n <span className={styles['token-editor-label-text']}>{label}</span>\n </label>\n <div className={clsx(styles['token-editor-field'], styles[`token-editor-field-${type}`])}>\n {children({ controlId })}\n </div>\n </>\n );\n}\n\ninterface PropertyInputProps {\n controlId: string;\n asyncProps: null | DropdownStatusProps;\n customGroupsText: readonly GroupText[];\n disableFreeTextFiltering?: boolean;\n filteringProperties: readonly FilteringProperty[];\n i18nStrings: I18nStrings;\n onChangePropertyKey: (propertyKey: undefined | string) => void;\n onLoadItems?: NonCancelableEventHandler<LoadItemsDetail>;\n propertyKey: undefined | string;\n}\n\nfunction PropertyInput({\n controlId,\n propertyKey,\n onChangePropertyKey,\n asyncProps,\n filteringProperties,\n onLoadItems,\n customGroupsText,\n i18nStrings,\n disableFreeTextFiltering,\n}: PropertyInputProps) {\n const property = propertyKey !== undefined ? getPropertyByKey(filteringProperties, propertyKey) : undefined;\n const propertySelectHandlers = useLoadItems(onLoadItems);\n const asyncPropertySelectProps = asyncProps ? { ...asyncProps, ...propertySelectHandlers } : {};\n const propertyOptions: (SelectProps.Option | SelectProps.OptionGroup)[] = getPropertySuggestions(\n filteringProperties,\n customGroupsText,\n i18nStrings,\n ({ propertyLabel, key }) => ({\n value: key,\n label: propertyLabel,\n dontCloseOnSelect: true,\n })\n );\n const allPropertiesOption = {\n label: i18nStrings.allPropertiesLabel,\n value: undefined,\n };\n if (!disableFreeTextFiltering) {\n propertyOptions.unshift(allPropertiesOption);\n }\n return (\n <InternalSelect\n controlId={controlId}\n options={propertyOptions}\n selectedOption={\n property\n ? {\n value: propertyKey ?? undefined,\n label: property.propertyLabel,\n }\n : allPropertiesOption\n }\n onChange={e => onChangePropertyKey(e.detail.selectedOption.value)}\n {...asyncPropertySelectProps}\n />\n );\n}\n\ninterface OperatorInputProps {\n controlId: string;\n filteringProperties: readonly FilteringProperty[];\n i18nStrings: I18nStrings;\n onChangeOperator: (operator: ComparisonOperator) => void;\n operator: undefined | ComparisonOperator;\n propertyKey: undefined | string;\n}\n\nfunction OperatorInput({\n controlId,\n propertyKey,\n operator,\n onChangeOperator,\n filteringProperties,\n i18nStrings,\n}: OperatorInputProps) {\n const property = propertyKey !== undefined ? getPropertyByKey(filteringProperties, propertyKey) : undefined;\n const freeTextOperators: ComparisonOperator[] = [':', '!:'];\n const operatorOptions = (property ? getAllowedOperators(property) : freeTextOperators).map(operator => ({\n value: operator,\n label: operator,\n description: operatorToDescription(operator, i18nStrings),\n }));\n return (\n <InternalSelect\n controlId={controlId}\n options={operatorOptions}\n triggerVariant=\"option\"\n selectedOption={\n operator\n ? {\n value: operator,\n label: operator,\n description: operatorToDescription(operator, i18nStrings),\n }\n : null\n }\n onChange={e => onChangeOperator(e.detail.selectedOption.value as ComparisonOperator)}\n />\n );\n}\n\ninterface ValueInputProps {\n controlId: string;\n asyncProps: DropdownStatusProps;\n filteringOptions: readonly FilteringOption[];\n filteringProperties: readonly FilteringProperty[];\n i18nStrings: I18nStrings;\n onChangeValue: (value: string) => void;\n onLoadItems?: NonCancelableEventHandler<LoadItemsDetail>;\n operator: undefined | ComparisonOperator;\n propertyKey: undefined | string;\n value: undefined | string;\n}\n\nfunction ValueInput({\n controlId,\n propertyKey,\n operator,\n value,\n onChangeValue,\n asyncProps,\n filteringProperties,\n filteringOptions,\n onLoadItems,\n i18nStrings,\n}: ValueInputProps) {\n const property = propertyKey !== undefined ? getPropertyByKey(filteringProperties, propertyKey) : undefined;\n const valueOptions = property ? getPropertyOptions(property, filteringOptions).map(({ value }) => ({ value })) : [];\n const valueAutosuggestHandlers = useLoadItems(onLoadItems, '', property);\n const asyncValueAutosuggesProps = propertyKey\n ? { ...valueAutosuggestHandlers, ...asyncProps }\n : { empty: asyncProps.empty };\n return (\n <InternalAutosuggest\n controlId={controlId}\n enteredTextLabel={i18nStrings.enteredTextLabel}\n value={value ?? ''}\n onChange={e => onChangeValue(e.detail.value)}\n disabled={!operator}\n options={valueOptions}\n {...asyncValueAutosuggesProps}\n virtualScroll={true}\n />\n );\n}\n\ninterface TokenEditorProps {\n asyncProperties?: boolean;\n asyncProps: DropdownStatusProps;\n customGroupsText: readonly GroupText[];\n disabled?: boolean;\n disableFreeTextFiltering?: boolean;\n expandToViewport?: boolean;\n filteringOptions: readonly FilteringOption[];\n filteringProperties: readonly FilteringProperty[];\n i18nStrings: I18nStrings;\n onLoadItems?: NonCancelableEventHandler<LoadItemsDetail>;\n setToken: (newToken: Token) => void;\n token: Token;\n triggerComponent?: React.ReactNode;\n}\n\nexport function TokenEditor({\n asyncProperties,\n asyncProps,\n customGroupsText,\n disableFreeTextFiltering,\n expandToViewport,\n filteringOptions,\n filteringProperties,\n i18nStrings,\n onLoadItems,\n setToken,\n token,\n triggerComponent,\n}: TokenEditorProps) {\n const [temporaryToken, setTemporaryToken] = useState<Token>(token);\n const popoverRef = useRef<InternalPopoverRef>(null);\n const closePopover = () => {\n popoverRef.current && popoverRef.current.dismissPopover();\n };\n\n const propertyKey = temporaryToken.propertyKey;\n const onChangePropertyKey = (newPropertyKey: undefined | string) => {\n const filteringProperty = filteringProperties.reduce<FilteringProperty | undefined>(\n (acc, property) => (property.key === newPropertyKey ? property : acc),\n undefined\n );\n const allowedOperators = filteringProperty ? getAllowedOperators(filteringProperty) : freeTextOperators;\n const operator =\n temporaryToken.operator && allowedOperators.indexOf(temporaryToken.operator) !== -1\n ? temporaryToken.operator\n : allowedOperators[0];\n setTemporaryToken({ ...temporaryToken, propertyKey: newPropertyKey, operator });\n };\n\n const operator = temporaryToken.operator;\n const onChangeOperator = (newOperator: ComparisonOperator) => {\n setTemporaryToken({ ...temporaryToken, operator: newOperator });\n };\n\n const value = temporaryToken.value;\n const onChangeValue = (newValue: string) => {\n setTemporaryToken({ ...temporaryToken, value: newValue });\n };\n\n return (\n <InternalPopover\n ref={popoverRef}\n className={styles['token-label']}\n triggerType=\"text\"\n header={i18nStrings.editTokenHeader}\n size=\"large\"\n position=\"right\"\n dismissAriaLabel={i18nStrings.dismissAriaLabel}\n __onOpen={() => setTemporaryToken(token)}\n renderWithPortal={expandToViewport}\n content={\n <div className={styles['token-editor']}>\n <div className={styles['token-editor-form']}>\n <TokenEditorField label={i18nStrings.propertyText} type=\"property\">\n {({ controlId }) => (\n <PropertyInput\n controlId={controlId}\n propertyKey={propertyKey}\n onChangePropertyKey={onChangePropertyKey}\n asyncProps={asyncProperties ? asyncProps : null}\n filteringProperties={filteringProperties}\n onLoadItems={onLoadItems}\n customGroupsText={customGroupsText}\n i18nStrings={i18nStrings}\n disableFreeTextFiltering={disableFreeTextFiltering}\n />\n )}\n </TokenEditorField>\n\n <TokenEditorField label={i18nStrings.operatorText} type=\"operator\">\n {({ controlId }) => (\n <OperatorInput\n controlId={controlId}\n propertyKey={propertyKey}\n operator={operator}\n onChangeOperator={onChangeOperator}\n filteringProperties={filteringProperties}\n i18nStrings={i18nStrings}\n />\n )}\n </TokenEditorField>\n\n <TokenEditorField label={i18nStrings.valueText} type=\"value\">\n {({ controlId }) => (\n <ValueInput\n controlId={controlId}\n propertyKey={propertyKey}\n operator={operator}\n value={value}\n onChangeValue={onChangeValue}\n asyncProps={asyncProps}\n filteringProperties={filteringProperties}\n filteringOptions={filteringOptions}\n onLoadItems={onLoadItems}\n i18nStrings={i18nStrings}\n />\n )}\n </TokenEditorField>\n </div>\n\n <div className={styles['token-editor-actions']}>\n <InternalButton variant=\"link\" className={styles['token-editor-cancel']} onClick={closePopover}>\n {i18nStrings.cancelActionText}\n </InternalButton>\n <InternalButton\n className={styles['token-editor-submit']}\n onClick={() => {\n setToken(temporaryToken);\n closePopover();\n }}\n >\n {i18nStrings.applyActionText}\n </InternalButton>\n </div>\n </div>\n }\n >\n {triggerComponent}\n </InternalPopover>\n );\n}\n"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
19
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
20
|
+
var base_input_1 = require("../input/base-input");
|
|
21
|
+
var styles_selectors_js_1 = require("../../../date-input/styles.selectors.js");
|
|
22
|
+
var DateInputWrapper = /** @class */ (function (_super) {
|
|
23
|
+
__extends(DateInputWrapper, _super);
|
|
24
|
+
function DateInputWrapper() {
|
|
25
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
26
|
+
}
|
|
27
|
+
DateInputWrapper.rootSelector = styles_selectors_js_1.default.root;
|
|
28
|
+
return DateInputWrapper;
|
|
29
|
+
}(base_input_1.default));
|
|
30
|
+
exports.default = DateInputWrapper;
|
|
31
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/test-utils/dom/date-input/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qEAAqE;AACrE,sCAAsC;AACtC,kDAAmD;AACnD,+EAAgE;AAEhE;IAA8C,oCAAgB;IAA9D;;IAEA,CAAC;IADQ,6BAAY,GAAW,6BAAS,CAAC,IAAI,CAAC;IAC/C,uBAAC;CAAA,AAFD,CAA8C,oBAAgB,GAE7D;kBAFoB,gBAAgB"}
|