@cloudscape-design/components 3.0.1292 → 3.0.1294

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.
Files changed (50) hide show
  1. package/app-layout/visual-refresh-toolbar/state/use-feature-notifications.d.ts.map +1 -1
  2. package/app-layout/visual-refresh-toolbar/state/use-feature-notifications.js +1 -4
  3. package/app-layout/visual-refresh-toolbar/state/use-feature-notifications.js.map +1 -1
  4. package/autosuggest/interfaces.d.ts +2 -1
  5. package/autosuggest/interfaces.d.ts.map +1 -1
  6. package/autosuggest/interfaces.js.map +1 -1
  7. package/date-range-picker/styles.css.js +23 -23
  8. package/date-range-picker/styles.scoped.css +34 -32
  9. package/date-range-picker/styles.selectors.js +23 -23
  10. package/file-token-group/styles.css.js +23 -23
  11. package/file-token-group/styles.scoped.css +34 -34
  12. package/file-token-group/styles.selectors.js +23 -23
  13. package/icon/generated/icons.d.ts +1 -0
  14. package/icon/generated/icons.d.ts.map +1 -1
  15. package/icon/generated/icons.js +3 -0
  16. package/icon/generated/icons.js.map +1 -1
  17. package/icon-provider/interfaces.d.ts +1 -1
  18. package/icon-provider/interfaces.d.ts.map +1 -1
  19. package/icon-provider/interfaces.js.map +1 -1
  20. package/internal/base-component/styles.scoped.css +1 -1
  21. package/internal/components/button-trigger/styles.css.js +14 -14
  22. package/internal/components/button-trigger/styles.scoped.css +32 -28
  23. package/internal/components/button-trigger/styles.selectors.js +14 -14
  24. package/internal/environment.js +2 -2
  25. package/internal/environment.json +2 -2
  26. package/internal/generated/theming/index.cjs +7 -0
  27. package/internal/generated/theming/index.cjs.d.ts +27 -0
  28. package/internal/generated/theming/index.d.ts +27 -0
  29. package/internal/generated/theming/index.js +7 -0
  30. package/internal/manifest.json +1 -1
  31. package/multiselect/interfaces.d.ts +3 -0
  32. package/multiselect/interfaces.d.ts.map +1 -1
  33. package/multiselect/interfaces.js.map +1 -1
  34. package/package.json +1 -1
  35. package/prompt-input/internal.js +1 -1
  36. package/prompt-input/internal.js.map +1 -1
  37. package/prompt-input/styles.css.js +26 -26
  38. package/prompt-input/styles.scoped.css +61 -62
  39. package/prompt-input/styles.selectors.js +26 -26
  40. package/property-filter/use-load-items.d.ts +2 -1
  41. package/property-filter/use-load-items.d.ts.map +1 -1
  42. package/select/interfaces.d.ts +2 -1
  43. package/select/interfaces.d.ts.map +1 -1
  44. package/select/interfaces.js.map +1 -1
  45. package/select/parts/styles.css.js +20 -20
  46. package/select/parts/styles.scoped.css +23 -21
  47. package/select/parts/styles.selectors.js +20 -20
  48. package/token/styles.css.js +14 -14
  49. package/token/styles.scoped.css +28 -30
  50. package/token/styles.selectors.js +14 -14
@@ -1 +1 @@
1
- {"version":3,"file":"use-feature-notifications.d.ts","sourceRoot":"","sources":["../../../../../src/app-layout/visual-refresh-toolbar/state/use-feature-notifications.tsx"],"names":[],"mappings":"AAEA,OAAc,EAAE,SAAS,EAA6B,MAAM,OAAO,CAAC;AAQpE,OAAO,EAIL,aAAa,EACd,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAOlD,UAAU,8BAA8B;IACtC,UAAU,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;CACpC;AACD,MAAM,WAAW,yBAAyB;IACxC,yBAAyB,EAAE,yBAAyB,CAAC;IACrD,MAAM,CAAC,EAAE,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC;CACvC;AACD,MAAM,MAAM,yBAAyB,GAAG,CAAC,KAAK,EAAE,8BAA8B,KAAK,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;AA+BtG,wBAAgB,uBAAuB;;;gDAuDc,aAAa;EAsJjE"}
1
+ {"version":3,"file":"use-feature-notifications.d.ts","sourceRoot":"","sources":["../../../../../src/app-layout/visual-refresh-toolbar/state/use-feature-notifications.tsx"],"names":[],"mappings":"AAEA,OAAc,EAAE,SAAS,EAA6B,MAAM,OAAO,CAAC;AAQpE,OAAO,EAIL,aAAa,EACd,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAOlD,UAAU,8BAA8B;IACtC,UAAU,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;CACpC;AACD,MAAM,WAAW,yBAAyB;IACxC,yBAAyB,EAAE,yBAAyB,CAAC;IACrD,MAAM,CAAC,EAAE,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC;CACvC;AACD,MAAM,MAAM,yBAAyB,GAAG,CAAC,KAAK,EAAE,8BAA8B,KAAK,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;AA+BtG,wBAAgB,uBAAuB;;;gDAiDc,aAAa;EAsJjE"}
@@ -57,10 +57,7 @@ export function useFeatureNotifications() {
57
57
  id: payload.id,
58
58
  content: (React.createElement(RuntimeFeaturesNotificationDrawer, { features: payload.features, featuresPageLink: payload.featuresPageLink, mountItem: payload.mountItem, i18nStrings: payload.i18nStrings })),
59
59
  trigger: {
60
- iconSvg: (React.createElement("svg", { viewBox: "0 0 16 16", xmlns: "http://www.w3.org/2000/svg", focusable: "false", "aria-hidden": "true" },
61
- React.createElement("path", { d: "M7 4L14.3244 1.25334C14.6513 1.13076 15 1.3724 15 1.7215V13.2785C15 13.6276 14.6513 13.8692 14.3244 13.7467L7 11" }),
62
- React.createElement("path", { d: "M1 6C1 4.89543 1.89543 4 3 4H7V11H3C1.89543 11 1 10.1046 1 9V6Z" }),
63
- React.createElement("path", { d: "M9.93649 12.1466C9.66614 13.4393 8.51989 14.4102 7.14687 14.4102C5.57286 14.4102 4.29688 13.1342 4.29688 11.5602C4.29688 11.3685 4.31579 11.1813 4.35187 11.0002" }))),
60
+ iconName: 'announcement',
64
61
  },
65
62
  ariaLabels: {
66
63
  closeButton: i18n('ariaLabels.closeButton', (_a = payload.i18nStrings) === null || _a === void 0 ? void 0 : _a.closeButtonAriaLabel),
@@ -1 +1 @@
1
- {"version":3,"file":"use-feature-notifications.js","sourceRoot":"","sources":["../../../../../src/app-layout/visual-refresh-toolbar/state/use-feature-notifications.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, { RefObject, useMemo, useRef, useState } from 'react';\n\nimport { useMergeRefs } from '@cloudscape-design/component-toolkit/internal';\n\nimport { useInternalI18n } from '../../../i18n/context';\nimport FeaturePrompt, { FeaturePromptProps } from '../../../internal/do-not-use/feature-prompt';\nimport { metrics } from '../../../internal/metrics';\nimport { persistFeatureNotifications, retrieveFeatureNotifications } from '../../../internal/persistence';\nimport {\n Feature,\n FeatureNotificationsPayload,\n PersistedFeaturesDict,\n WidgetMessage,\n} from '../../../internal/plugins/widget/interfaces';\nimport { useMountRefPromise } from '../../../internal/utils/promises';\nimport { AppLayoutProps } from '../../interfaces';\nimport RuntimeFeaturesNotificationDrawer, { RuntimeContentPart } from '../drawer/feature-notifications-drawer-content';\n\nconst DEFAULT_PERSISTENCE_CONFIG = {\n uniqueKey: 'awsui-feature-notifications',\n};\n\ninterface RenderLatestFeaturePromptProps {\n triggerRef: RefObject<HTMLElement>;\n}\nexport interface FeatureNotificationsProps {\n renderLatestFeaturePrompt: RenderLatestFeaturePrompt;\n drawer?: AppLayoutProps.Drawer | null;\n}\nexport type RenderLatestFeaturePrompt = (props: RenderLatestFeaturePromptProps) => JSX.Element | null;\ninterface FeatureNotifications extends FeatureNotificationsPayload<unknown> {\n badge?: boolean;\n}\n\nconst FEATURE_NOTIFICATIONS_RETENTION_DAYS = 180;\nconst DEFAULT_FEATURE_FILTER_DAYS = 90;\n\nfunction subtractDaysFromDate(currentDate: Date, daysToSubtract: number = 0): Date {\n const pastDate = new Date(currentDate);\n pastDate.setDate(pastDate.getDate() - daysToSubtract);\n return pastDate;\n}\n\nfunction filterOutdatedFeatures(features: PersistedFeaturesDict): PersistedFeaturesDict {\n const cutoffDate = subtractDaysFromDate(new Date(), FEATURE_NOTIFICATIONS_RETENTION_DAYS);\n\n return Object.keys(features).reduce((acc, key) => {\n const featureDate = new Date(features[key]);\n\n if (featureDate && featureDate >= cutoffDate) {\n return {\n ...acc,\n [key]: features[key],\n };\n }\n\n return acc;\n }, {});\n}\n\nexport function useFeatureNotifications() {\n const i18n = useInternalI18n('features-notification-drawer');\n const [featurePromptDismissed, setFeaturePromptDismissed] = useState(false);\n const [featureNotificationsData, setFeatureNotificationsData] = useState<FeatureNotifications | null>(null);\n const [seenFeatures, setSeenFeatures] = useState<PersistedFeaturesDict>({});\n const featurePromptRef = useRef<FeaturePromptProps.Ref>(null);\n const { ref: featurePromptMountRef, promise: featurePromptMountPromise } = useMountRefPromise();\n const featurePromptMergedRef = useMergeRefs(featurePromptRef, featurePromptMountRef);\n const allNotificationsSeen = useMemo(() => {\n return featureNotificationsData?.features.every(feature => !!seenFeatures[feature.id]);\n }, [featureNotificationsData, seenFeatures]);\n\n const defaultFeaturesFilter = (feature: Feature<unknown>) => {\n return feature.releaseDate >= subtractDaysFromDate(new Date(), DEFAULT_FEATURE_FILTER_DAYS);\n };\n\n const getFeaturesToDisplay = (payload: FeatureNotificationsPayload<unknown>): Array<Feature<unknown>> => {\n return payload.features\n .slice()\n .filter(payload.filterFeatures ? payload.filterFeatures : defaultFeaturesFilter)\n .sort((a, b) => b.releaseDate.getTime() - a.releaseDate.getTime());\n };\n\n const mapPayloadToDrawer = (payload: FeatureNotifications): AppLayoutProps.Drawer => {\n return {\n id: payload.id,\n content: (\n <RuntimeFeaturesNotificationDrawer\n features={payload.features}\n featuresPageLink={payload.featuresPageLink}\n mountItem={payload.mountItem}\n i18nStrings={payload.i18nStrings}\n />\n ),\n trigger: {\n iconSvg: (\n <svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\">\n <path d=\"M7 4L14.3244 1.25334C14.6513 1.13076 15 1.3724 15 1.7215V13.2785C15 13.6276 14.6513 13.8692 14.3244 13.7467L7 11\" />\n <path d=\"M1 6C1 4.89543 1.89543 4 3 4H7V11H3C1.89543 11 1 10.1046 1 9V6Z\" />\n <path d=\"M9.93649 12.1466C9.66614 13.4393 8.51989 14.4102 7.14687 14.4102C5.57286 14.4102 4.29688 13.1342 4.29688 11.5602C4.29688 11.3685 4.31579 11.1813 4.35187 11.0002\" />\n </svg>\n ),\n },\n ariaLabels: {\n closeButton: i18n('ariaLabels.closeButton', payload.i18nStrings?.closeButtonAriaLabel),\n drawerName: i18n('ariaLabels.content', payload.i18nStrings?.contentAriaLabel) ?? '',\n triggerButton: i18n('ariaLabels.triggerButton', payload.i18nStrings?.triggerButtonAriaLabel),\n resizeHandle: i18n('ariaLabels.resizeHandle', payload.i18nStrings?.resizeHandleAriaLabel),\n },\n resizable: true,\n defaultSize: 320,\n badge: payload.badge,\n };\n };\n\n function featureNotificationsMessageHandler(event: WidgetMessage) {\n if (event.type === 'registerFeatureNotifications') {\n const { payload } = event;\n metrics.logComponentUsed('feature-notifications', {\n props: {\n featuresPageLink: payload.featuresPageLink,\n suppressFeaturePrompt: payload.suppressFeaturePrompt,\n },\n metadata: {\n featuresLength: payload.features.length,\n hasMountItem: !!payload.mountItem,\n hasFilterFeatures: !!payload.filterFeatures,\n hasPersistenceConfig: !!payload.persistenceConfig,\n },\n });\n const features = getFeaturesToDisplay(payload);\n if (features.length === 0) {\n return;\n }\n\n setFeatureNotificationsData({ ...payload, features });\n\n const persistenceConfig = payload.persistenceConfig ?? DEFAULT_PERSISTENCE_CONFIG;\n // Retrieve previously seen feature notifications from persistence to determine\n // which features the user has already viewed\n (payload?.__retrieveFeatureNotifications || retrieveFeatureNotifications)(persistenceConfig).then(\n seenFeatureNotifications => {\n setSeenFeatures(seenFeatureNotifications);\n const hasUnseenFeatures = features.some(feature => !seenFeatureNotifications[feature.id]);\n if (hasUnseenFeatures) {\n const latestFeature = features.find(feature => !seenFeatureNotifications[feature.id]) ?? null;\n if (\n !payload.suppressFeaturePrompt &&\n !featurePromptDismissed &&\n !seenFeatureNotifications[getFeaturePromptPersistenceId(latestFeature)]\n ) {\n featurePromptMountPromise.then(() => {\n featurePromptRef.current?.show();\n });\n }\n setFeatureNotificationsData(data => (data ? { ...data, badge: true } : data));\n }\n }\n );\n return;\n }\n\n if (event.type === 'showFeaturePromptIfPossible' && !allNotificationsSeen) {\n featurePromptRef.current?.show();\n return;\n }\n\n if (event.type === 'clearFeatureNotifications') {\n setFeatureNotificationsData(null);\n return;\n }\n }\n\n function getLatestUnseenFeature() {\n return featureNotificationsData?.features.find(feature => !seenFeatures[feature.id]) ?? null;\n }\n\n function renderLatestFeaturePrompt({ triggerRef }: RenderLatestFeaturePromptProps) {\n const latestFeature = getLatestUnseenFeature();\n if (!triggerRef.current || !latestFeature) {\n return null;\n }\n return (\n <FeaturePrompt\n ref={featurePromptMergedRef}\n onShow={() => {\n triggerRef.current!.dataset!.awsuiSuppressTooltip = 'true';\n }}\n onDismiss={event => {\n if (event.detail?.method !== 'blur') {\n triggerRef?.current!.focus();\n }\n setFeaturePromptDismissed(true);\n Promise.resolve().then(() => {\n if (triggerRef.current?.dataset) {\n triggerRef.current!.dataset!.awsuiSuppressTooltip = 'false';\n }\n });\n persistFeaturePromptDismiss(latestFeature);\n }}\n header={\n <RuntimeContentPart mountContent={featureNotificationsData?.mountItem} content={latestFeature.header} />\n }\n content={\n <RuntimeContentPart mountContent={featureNotificationsData?.mountItem} content={latestFeature.content} />\n }\n trackKey={latestFeature.id}\n position=\"left\"\n getTrack={() => triggerRef.current}\n />\n );\n }\n\n const setFeaturesToSeenAndPersist = () => {\n const persistenceConfig = featureNotificationsData?.persistenceConfig ?? DEFAULT_PERSISTENCE_CONFIG;\n const featuresMap = featureNotificationsData?.features.reduce((acc, feature) => {\n return {\n ...acc,\n [feature.id]: feature.releaseDate,\n };\n }, {});\n const filteredSeenFeaturesMap = filterOutdatedFeatures(seenFeatures);\n const allFeaturesMap = { ...featuresMap, ...filteredSeenFeaturesMap };\n (featureNotificationsData?.__persistFeatureNotifications ?? persistFeatureNotifications)(\n persistenceConfig,\n allFeaturesMap\n ).then(() => {\n setSeenFeatures(allFeaturesMap);\n setFeatureNotificationsData(data => (data ? { ...data, badge: false } : data));\n });\n };\n\n const getFeaturePromptPersistenceId = (feature?: Feature<unknown> | null) => `${feature?.id}_feature-prompt`;\n\n const persistFeaturePromptDismiss = (feature: Feature<unknown>) => {\n const persistenceConfig = featureNotificationsData?.persistenceConfig ?? DEFAULT_PERSISTENCE_CONFIG;\n const featuresMap = { [getFeaturePromptPersistenceId(feature)]: feature.releaseDate?.toString() };\n const filteredSeenFeaturesMap = filterOutdatedFeatures(seenFeatures);\n const allFeaturesMap = { ...featuresMap, ...filteredSeenFeaturesMap };\n (featureNotificationsData?.__persistFeatureNotifications ?? persistFeatureNotifications)(\n persistenceConfig,\n allFeaturesMap\n ).then(() => {\n setSeenFeatures(allFeaturesMap);\n });\n };\n\n const onOpenFeatureNotificationsDrawer = () => {\n if (!featureNotificationsData || allNotificationsSeen) {\n return;\n }\n\n setFeaturesToSeenAndPersist();\n };\n\n const featureNotificationsProps: FeatureNotificationsProps = {\n renderLatestFeaturePrompt,\n drawer: featureNotificationsData && mapPayloadToDrawer(featureNotificationsData),\n };\n\n return {\n featureNotificationsProps,\n onOpenFeatureNotificationsDrawer,\n featureNotificationsMessageHandler,\n };\n}\n"]}
1
+ {"version":3,"file":"use-feature-notifications.js","sourceRoot":"","sources":["../../../../../src/app-layout/visual-refresh-toolbar/state/use-feature-notifications.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, { RefObject, useMemo, useRef, useState } from 'react';\n\nimport { useMergeRefs } from '@cloudscape-design/component-toolkit/internal';\n\nimport { useInternalI18n } from '../../../i18n/context';\nimport FeaturePrompt, { FeaturePromptProps } from '../../../internal/do-not-use/feature-prompt';\nimport { metrics } from '../../../internal/metrics';\nimport { persistFeatureNotifications, retrieveFeatureNotifications } from '../../../internal/persistence';\nimport {\n Feature,\n FeatureNotificationsPayload,\n PersistedFeaturesDict,\n WidgetMessage,\n} from '../../../internal/plugins/widget/interfaces';\nimport { useMountRefPromise } from '../../../internal/utils/promises';\nimport { AppLayoutProps } from '../../interfaces';\nimport RuntimeFeaturesNotificationDrawer, { RuntimeContentPart } from '../drawer/feature-notifications-drawer-content';\n\nconst DEFAULT_PERSISTENCE_CONFIG = {\n uniqueKey: 'awsui-feature-notifications',\n};\n\ninterface RenderLatestFeaturePromptProps {\n triggerRef: RefObject<HTMLElement>;\n}\nexport interface FeatureNotificationsProps {\n renderLatestFeaturePrompt: RenderLatestFeaturePrompt;\n drawer?: AppLayoutProps.Drawer | null;\n}\nexport type RenderLatestFeaturePrompt = (props: RenderLatestFeaturePromptProps) => JSX.Element | null;\ninterface FeatureNotifications extends FeatureNotificationsPayload<unknown> {\n badge?: boolean;\n}\n\nconst FEATURE_NOTIFICATIONS_RETENTION_DAYS = 180;\nconst DEFAULT_FEATURE_FILTER_DAYS = 90;\n\nfunction subtractDaysFromDate(currentDate: Date, daysToSubtract: number = 0): Date {\n const pastDate = new Date(currentDate);\n pastDate.setDate(pastDate.getDate() - daysToSubtract);\n return pastDate;\n}\n\nfunction filterOutdatedFeatures(features: PersistedFeaturesDict): PersistedFeaturesDict {\n const cutoffDate = subtractDaysFromDate(new Date(), FEATURE_NOTIFICATIONS_RETENTION_DAYS);\n\n return Object.keys(features).reduce((acc, key) => {\n const featureDate = new Date(features[key]);\n\n if (featureDate && featureDate >= cutoffDate) {\n return {\n ...acc,\n [key]: features[key],\n };\n }\n\n return acc;\n }, {});\n}\n\nexport function useFeatureNotifications() {\n const i18n = useInternalI18n('features-notification-drawer');\n const [featurePromptDismissed, setFeaturePromptDismissed] = useState(false);\n const [featureNotificationsData, setFeatureNotificationsData] = useState<FeatureNotifications | null>(null);\n const [seenFeatures, setSeenFeatures] = useState<PersistedFeaturesDict>({});\n const featurePromptRef = useRef<FeaturePromptProps.Ref>(null);\n const { ref: featurePromptMountRef, promise: featurePromptMountPromise } = useMountRefPromise();\n const featurePromptMergedRef = useMergeRefs(featurePromptRef, featurePromptMountRef);\n const allNotificationsSeen = useMemo(() => {\n return featureNotificationsData?.features.every(feature => !!seenFeatures[feature.id]);\n }, [featureNotificationsData, seenFeatures]);\n\n const defaultFeaturesFilter = (feature: Feature<unknown>) => {\n return feature.releaseDate >= subtractDaysFromDate(new Date(), DEFAULT_FEATURE_FILTER_DAYS);\n };\n\n const getFeaturesToDisplay = (payload: FeatureNotificationsPayload<unknown>): Array<Feature<unknown>> => {\n return payload.features\n .slice()\n .filter(payload.filterFeatures ? payload.filterFeatures : defaultFeaturesFilter)\n .sort((a, b) => b.releaseDate.getTime() - a.releaseDate.getTime());\n };\n\n const mapPayloadToDrawer = (payload: FeatureNotifications): AppLayoutProps.Drawer => {\n return {\n id: payload.id,\n content: (\n <RuntimeFeaturesNotificationDrawer\n features={payload.features}\n featuresPageLink={payload.featuresPageLink}\n mountItem={payload.mountItem}\n i18nStrings={payload.i18nStrings}\n />\n ),\n trigger: {\n iconName: 'announcement',\n },\n ariaLabels: {\n closeButton: i18n('ariaLabels.closeButton', payload.i18nStrings?.closeButtonAriaLabel),\n drawerName: i18n('ariaLabels.content', payload.i18nStrings?.contentAriaLabel) ?? '',\n triggerButton: i18n('ariaLabels.triggerButton', payload.i18nStrings?.triggerButtonAriaLabel),\n resizeHandle: i18n('ariaLabels.resizeHandle', payload.i18nStrings?.resizeHandleAriaLabel),\n },\n resizable: true,\n defaultSize: 320,\n badge: payload.badge,\n };\n };\n\n function featureNotificationsMessageHandler(event: WidgetMessage) {\n if (event.type === 'registerFeatureNotifications') {\n const { payload } = event;\n metrics.logComponentUsed('feature-notifications', {\n props: {\n featuresPageLink: payload.featuresPageLink,\n suppressFeaturePrompt: payload.suppressFeaturePrompt,\n },\n metadata: {\n featuresLength: payload.features.length,\n hasMountItem: !!payload.mountItem,\n hasFilterFeatures: !!payload.filterFeatures,\n hasPersistenceConfig: !!payload.persistenceConfig,\n },\n });\n const features = getFeaturesToDisplay(payload);\n if (features.length === 0) {\n return;\n }\n\n setFeatureNotificationsData({ ...payload, features });\n\n const persistenceConfig = payload.persistenceConfig ?? DEFAULT_PERSISTENCE_CONFIG;\n // Retrieve previously seen feature notifications from persistence to determine\n // which features the user has already viewed\n (payload?.__retrieveFeatureNotifications || retrieveFeatureNotifications)(persistenceConfig).then(\n seenFeatureNotifications => {\n setSeenFeatures(seenFeatureNotifications);\n const hasUnseenFeatures = features.some(feature => !seenFeatureNotifications[feature.id]);\n if (hasUnseenFeatures) {\n const latestFeature = features.find(feature => !seenFeatureNotifications[feature.id]) ?? null;\n if (\n !payload.suppressFeaturePrompt &&\n !featurePromptDismissed &&\n !seenFeatureNotifications[getFeaturePromptPersistenceId(latestFeature)]\n ) {\n featurePromptMountPromise.then(() => {\n featurePromptRef.current?.show();\n });\n }\n setFeatureNotificationsData(data => (data ? { ...data, badge: true } : data));\n }\n }\n );\n return;\n }\n\n if (event.type === 'showFeaturePromptIfPossible' && !allNotificationsSeen) {\n featurePromptRef.current?.show();\n return;\n }\n\n if (event.type === 'clearFeatureNotifications') {\n setFeatureNotificationsData(null);\n return;\n }\n }\n\n function getLatestUnseenFeature() {\n return featureNotificationsData?.features.find(feature => !seenFeatures[feature.id]) ?? null;\n }\n\n function renderLatestFeaturePrompt({ triggerRef }: RenderLatestFeaturePromptProps) {\n const latestFeature = getLatestUnseenFeature();\n if (!triggerRef.current || !latestFeature) {\n return null;\n }\n return (\n <FeaturePrompt\n ref={featurePromptMergedRef}\n onShow={() => {\n triggerRef.current!.dataset!.awsuiSuppressTooltip = 'true';\n }}\n onDismiss={event => {\n if (event.detail?.method !== 'blur') {\n triggerRef?.current!.focus();\n }\n setFeaturePromptDismissed(true);\n Promise.resolve().then(() => {\n if (triggerRef.current?.dataset) {\n triggerRef.current!.dataset!.awsuiSuppressTooltip = 'false';\n }\n });\n persistFeaturePromptDismiss(latestFeature);\n }}\n header={\n <RuntimeContentPart mountContent={featureNotificationsData?.mountItem} content={latestFeature.header} />\n }\n content={\n <RuntimeContentPart mountContent={featureNotificationsData?.mountItem} content={latestFeature.content} />\n }\n trackKey={latestFeature.id}\n position=\"left\"\n getTrack={() => triggerRef.current}\n />\n );\n }\n\n const setFeaturesToSeenAndPersist = () => {\n const persistenceConfig = featureNotificationsData?.persistenceConfig ?? DEFAULT_PERSISTENCE_CONFIG;\n const featuresMap = featureNotificationsData?.features.reduce((acc, feature) => {\n return {\n ...acc,\n [feature.id]: feature.releaseDate,\n };\n }, {});\n const filteredSeenFeaturesMap = filterOutdatedFeatures(seenFeatures);\n const allFeaturesMap = { ...featuresMap, ...filteredSeenFeaturesMap };\n (featureNotificationsData?.__persistFeatureNotifications ?? persistFeatureNotifications)(\n persistenceConfig,\n allFeaturesMap\n ).then(() => {\n setSeenFeatures(allFeaturesMap);\n setFeatureNotificationsData(data => (data ? { ...data, badge: false } : data));\n });\n };\n\n const getFeaturePromptPersistenceId = (feature?: Feature<unknown> | null) => `${feature?.id}_feature-prompt`;\n\n const persistFeaturePromptDismiss = (feature: Feature<unknown>) => {\n const persistenceConfig = featureNotificationsData?.persistenceConfig ?? DEFAULT_PERSISTENCE_CONFIG;\n const featuresMap = { [getFeaturePromptPersistenceId(feature)]: feature.releaseDate?.toString() };\n const filteredSeenFeaturesMap = filterOutdatedFeatures(seenFeatures);\n const allFeaturesMap = { ...featuresMap, ...filteredSeenFeaturesMap };\n (featureNotificationsData?.__persistFeatureNotifications ?? persistFeatureNotifications)(\n persistenceConfig,\n allFeaturesMap\n ).then(() => {\n setSeenFeatures(allFeaturesMap);\n });\n };\n\n const onOpenFeatureNotificationsDrawer = () => {\n if (!featureNotificationsData || allNotificationsSeen) {\n return;\n }\n\n setFeaturesToSeenAndPersist();\n };\n\n const featureNotificationsProps: FeatureNotificationsProps = {\n renderLatestFeaturePrompt,\n drawer: featureNotificationsData && mapPayloadToDrawer(featureNotificationsData),\n };\n\n return {\n featureNotificationsProps,\n onOpenFeatureNotificationsDrawer,\n featureNotificationsMessageHandler,\n };\n}\n"]}
@@ -7,6 +7,7 @@ import { OptionDefinition, OptionGroup } from '../internal/components/option/int
7
7
  import { FormFieldValidationControlProps } from '../internal/context/form-field-context';
8
8
  import { NonCancelableEventHandler } from '../internal/events';
9
9
  export interface AutosuggestProps extends BaseComponentProps, BaseInputProps, InputAutoCorrect, BaseDropdownHostProps, InputKeyEvents, InputClearLabel, FormFieldValidationControlProps, DropdownStatusProps {
10
+ onLoadItems?: NonCancelableEventHandler<AutosuggestProps.LoadItemsDetail>;
10
11
  /**
11
12
  * Specifies an array of options that are displayed to the user as a dropdown list.
12
13
  * The options can be grouped using `OptionGroup` objects.
@@ -157,7 +158,7 @@ export declare namespace AutosuggestProps {
157
158
  label?: string;
158
159
  options: ReadonlyArray<Option>;
159
160
  }
160
- type LoadItemsDetail = OptionsLoadItemsDetail;
161
+ interface LoadItemsDetail extends OptionsLoadItemsDetail {}
161
162
  type StatusType = DropdownStatusProps.StatusType;
162
163
  interface SelectDetail {
163
164
  value: string;
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/autosuggest/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/autosuggest/interfaces.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/autosuggest/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { ReactNode } from 'react';\n\nimport { BaseDropdownHostProps, OptionsFilteringType, OptionsLoadItemsDetail } from '../dropdown/interfaces';\nimport { BaseInputProps, InputAutoCorrect, InputClearLabel, InputKeyEvents, InputProps } from '../input/interfaces';\nimport { BaseComponentProps } from '../internal/base-component';\nimport { DropdownStatusProps } from '../internal/components/dropdown-status';\nimport { OptionDefinition, OptionGroup } from '../internal/components/option/interfaces';\nimport { FormFieldValidationControlProps } from '../internal/context/form-field-context';\nimport { NonCancelableEventHandler } from '../internal/events';\n\nexport interface AutosuggestProps\n extends BaseComponentProps,\n BaseInputProps,\n InputAutoCorrect,\n BaseDropdownHostProps,\n InputKeyEvents,\n InputClearLabel,\n FormFieldValidationControlProps,\n DropdownStatusProps {\n /**\n * Specifies an array of options that are displayed to the user as a dropdown list.\n * The options can be grouped using `OptionGroup` objects.\n *\n * #### Option\n * - `value` (string) - The returned value of the option when selected.\n * - `label` (string) - (Optional) Option text displayed to the user.\n * - `lang` (string) - (Optional) The language of the option, provided as a BCP 47 language tag.\n * - `description` (string) - (Optional) Further information about the option that appears below the label.\n * - `disabled` (boolean) - (Optional) Determines whether the option is disabled.\n * - `labelTag` (string) - (Optional) A label tag that provides additional guidance, shown next to the label.\n * - `tags` [string[]] - (Optional) A list of tags giving further guidance about the option.\n * - `filteringTags` [string[]] - (Optional) A list of additional tags used for automatic filtering.\n * - `iconName` (string) - (Optional) Specifies the name of an [icon](/components/icon/) to display in the option.\n * - `iconAriaLabel` (string) - (Optional) Specifies alternate text for the icon. We recommend that you provide this for accessibility.\n * - `iconAlt` (string) - (Optional) **Deprecated**, replaced by \\`iconAriaLabel\\`. Specifies alternate text for a custom icon, for use with `iconUrl`.\n * - `iconUrl` (string) - (Optional) URL of a custom icon.\n * - `iconSvg` (ReactNode) - (Optional) Custom SVG icon. Equivalent to the `svg` slot of the [icon component](/components/icon/).\n *\n * #### OptionGroup\n * - `label` (string) - Option group text displayed to the user.\n * - `disabled` (boolean) - (Optional) Determines whether the option group is disabled.\n * - `options` (Option[]) - (Optional) The options under this group.\n *\n * Note: Only one level of option nesting is supported.\n *\n * If you want to use the built-in filtering capabilities of this component, provide\n * a list of all valid options here and they will be automatically filtered based on the user's filtering input.\n *\n * Alternatively, you can listen to the `onChange` or `onLoadItems` event and set new options\n * on your own.\n **/\n options?: AutosuggestProps.Options;\n\n /**\n * Specifies a render function to render custom options in the dropdown menu.\n *\n * The item inside the props has a different shape depending on its type:\n *\n *\n * ### item\n *\n * - `type` ('item') - The item type.\n * - `index` (number) - The item's absolute position in the dropdown.\n * - `option` (Option) - The original option configuration.\n * - `disabled` (boolean) - Whether the item is disabled.\n * - `highlighted` (boolean) - Whether the item is currently highlighted.\n * - `selected` (boolean) - Whether the item is selected.\n * - `parent` (OptionGroupRenderItem | null) - The parent group item, if any.\n *\n * ### group\n *\n * - `type` ('group') - The item type.\n * - `index` (number) - The item's absolute position in the dropdown.\n * - `option` (OptionGroup) - The original option configuration.\n * - `disabled` (boolean) - Whether the item is disabled.\n *\n * ### entered-text\n *\n * - `type` ('entered-text') - The item type.\n * - `option` (Option) - The entered-text option configuration.\n *\n * When providing a custom `renderOption` implementation, it fully replaces the default visual rendering and content for that item.\n * The component still manages focus, keyboard interactions, and selection state, but it no longer applies its default item layout or typography.\n *\n * When returning `null`, the default rendering will be applied for that item.\n *\n * @awsuiSystem core\n */\n renderOption?: AutosuggestProps.ItemRenderer;\n\n /**\n * Determines how filtering is applied to the list of `options`:\n *\n * * `auto` - The component will automatically filter options based on user input.\n * * `manual` - You will set up `onChange` or `onLoadItems` event listeners and filter options on your side or request\n * them from server.\n *\n * By default the component will filter the provided `options` based on the value of the filtering input field.\n * Only options that have a `value`, `label`, `description` or `labelTag` that contains the input value as a substring\n * are displayed in the list of options.\n *\n * If you set this property to `manual`, this default filtering mechanism is disabled and all provided `options` are\n * displayed in the dropdown list. In that case make sure that you use the `onChange` or `onLoadItems` events in order\n * to set the `options` property to the options that are relevant for the user, given the filtering input value.\n *\n * Note: Manual filtering doesn't disable match highlighting.\n **/\n filteringType?: OptionsFilteringType;\n\n /**\n * Specifies a function that generates the custom value indicator (for example, `Use \"${value}\"`).\n * @i18n\n */\n enteredTextLabel?: AutosuggestProps.EnteredTextLabel;\n\n /**\n * Defines whether entered text option is shown as the first option in the dropdown when value is non-empty.\n */\n hideEnteredTextOption?: boolean;\n\n /**\n * Specifies the text to display with the number of matches at the bottom of the dropdown menu while filtering.\n *\n * Note that the `matchesCount` includes the `enteredTextLabel` (\"Use ${value}\") item, so in most cases you\n * should subtract 1 from `matchesCount`. If using manual filtering, you should provide your own value for `totalCount`.\n */\n filteringResultsText?: (matchesCount: number, totalCount: number) => string;\n\n /**\n * Specifies the text that's displayed when there aren't any suggestions to display.\n * This is displayed when `statusType` is set to `finished` or it's not set at all.\n */\n empty?: React.ReactNode;\n\n /**\n * Called whenever a user selects an option in the dropdown. Don't use this event as the only way to handle user input.\n * Instead, use `onSelect` in combination with the `onChange` handler only as an optional convenience for the user.\n */\n onSelect?: NonCancelableEventHandler<AutosuggestProps.SelectDetail>;\n\n /**\n * Specifies the localized string that describes an option as being selected.\n * This is required to provide a good screen reader experience. For more information, see the\n * [accessibility guidelines](/components/autosuggest/?tabId=usage#accessibility-guidelines).\n * @i18n\n */\n selectedAriaLabel?: string;\n /**\n * Overrides the element that is announced to screen readers\n * when the highlighted option changes. By default, this announces\n * the option's name and properties, and its selected state if\n * the `selectedAriaLabel` property is defined.\n * The highlighted option is provided, and its group (if groups\n * are used and it differs from the group of the previously highlighted option).\n *\n * For more information, see the\n * [accessibility guidelines](/components/autosuggest/?tabId=usage#accessibility-guidelines).\n */\n renderHighlightedAriaLive?: AutosuggestProps.ContainingOptionAndGroupString;\n\n /**\n * An object containing CSS properties to customize the autosuggest's visual appearance.\n * Refer to the [style](/components/autosuggest/?tabId=style) tab for more details.\n * @awsuiSystem core\n */\n style?: AutosuggestProps.Style;\n}\n\nexport namespace AutosuggestProps {\n export type ChangeDetail = InputProps.ChangeDetail;\n export type KeyDetail = InputProps.KeyDetail;\n export type FilteringType = OptionsFilteringType;\n export type Option = OptionDefinition;\n export type Options = ReadonlyArray<Option | OptionGroup>;\n export type EnteredTextLabel = (value: string) => string;\n export interface OptionGroup extends Option {\n label?: string;\n options: ReadonlyArray<Option>;\n }\n export type LoadItemsDetail = OptionsLoadItemsDetail;\n export type StatusType = DropdownStatusProps.StatusType;\n export interface SelectDetail {\n value: string;\n selectedOption?: Option;\n }\n\n export interface ContainingOptionAndGroupString {\n (option: Option, group?: OptionGroup): string;\n }\n\n export interface OptionRenderItem {\n type: 'item';\n index: number;\n option: Option;\n disabled: boolean;\n highlighted: boolean;\n selected: boolean;\n parent: OptionGroupRenderItem | null;\n }\n export interface OptionGroupRenderItem {\n type: 'group';\n index: number;\n option: OptionGroup;\n disabled: boolean;\n }\n export interface EnteredTextRenderItem {\n type: 'entered-text';\n option: Option;\n highlighted: boolean;\n }\n export type RenderItem = OptionRenderItem | OptionGroupRenderItem | EnteredTextRenderItem;\n export type ItemRenderer = (props: { item: RenderItem; filterText?: string }) => ReactNode | null;\n\n export interface Ref {\n /**\n * Sets input focus onto the UI control.\n */\n focus(): void;\n\n /**\n * Selects all text in the input control.\n */\n select(): void;\n }\n\n export interface Style {\n root?: {\n backgroundColor?: {\n default?: string;\n disabled?: string;\n focus?: string;\n hover?: string;\n readonly?: string;\n };\n borderColor?: {\n default?: string;\n disabled?: string;\n focus?: string;\n hover?: string;\n readonly?: string;\n };\n borderRadius?: string;\n borderWidth?: string;\n boxShadow?: {\n default?: string;\n disabled?: string;\n focus?: string;\n hover?: string;\n readonly?: string;\n };\n color?: {\n default?: string;\n disabled?: string;\n focus?: string;\n hover?: string;\n readonly?: string;\n };\n fontSize?: string;\n fontWeight?: string;\n paddingBlock?: string;\n paddingInline?: string;\n };\n placeholder?: {\n color?: string;\n fontSize?: string;\n fontStyle?: string;\n fontWeight?: string;\n };\n }\n}\n\n// TODO: use DropdownOption type same as in select and multiselect\nexport type AutosuggestItem = (AutosuggestProps.Option | AutosuggestProps.OptionGroup) & {\n type?: 'parent' | 'child' | 'use-entered';\n option: OptionDefinition | OptionGroup;\n parent?: OptionGroup;\n};\n"]}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/autosuggest/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { ReactNode } from 'react';\n\nimport { BaseDropdownHostProps, OptionsFilteringType, OptionsLoadItemsDetail } from '../dropdown/interfaces';\nimport { BaseInputProps, InputAutoCorrect, InputClearLabel, InputKeyEvents, InputProps } from '../input/interfaces';\nimport { BaseComponentProps } from '../internal/base-component';\nimport { DropdownStatusProps } from '../internal/components/dropdown-status';\nimport { OptionDefinition, OptionGroup } from '../internal/components/option/interfaces';\nimport { FormFieldValidationControlProps } from '../internal/context/form-field-context';\nimport { NonCancelableEventHandler } from '../internal/events';\n\nexport interface AutosuggestProps\n extends BaseComponentProps,\n BaseInputProps,\n InputAutoCorrect,\n BaseDropdownHostProps,\n InputKeyEvents,\n InputClearLabel,\n FormFieldValidationControlProps,\n DropdownStatusProps {\n onLoadItems?: NonCancelableEventHandler<AutosuggestProps.LoadItemsDetail>;\n /**\n * Specifies an array of options that are displayed to the user as a dropdown list.\n * The options can be grouped using `OptionGroup` objects.\n *\n * #### Option\n * - `value` (string) - The returned value of the option when selected.\n * - `label` (string) - (Optional) Option text displayed to the user.\n * - `lang` (string) - (Optional) The language of the option, provided as a BCP 47 language tag.\n * - `description` (string) - (Optional) Further information about the option that appears below the label.\n * - `disabled` (boolean) - (Optional) Determines whether the option is disabled.\n * - `labelTag` (string) - (Optional) A label tag that provides additional guidance, shown next to the label.\n * - `tags` [string[]] - (Optional) A list of tags giving further guidance about the option.\n * - `filteringTags` [string[]] - (Optional) A list of additional tags used for automatic filtering.\n * - `iconName` (string) - (Optional) Specifies the name of an [icon](/components/icon/) to display in the option.\n * - `iconAriaLabel` (string) - (Optional) Specifies alternate text for the icon. We recommend that you provide this for accessibility.\n * - `iconAlt` (string) - (Optional) **Deprecated**, replaced by \\`iconAriaLabel\\`. Specifies alternate text for a custom icon, for use with `iconUrl`.\n * - `iconUrl` (string) - (Optional) URL of a custom icon.\n * - `iconSvg` (ReactNode) - (Optional) Custom SVG icon. Equivalent to the `svg` slot of the [icon component](/components/icon/).\n *\n * #### OptionGroup\n * - `label` (string) - Option group text displayed to the user.\n * - `disabled` (boolean) - (Optional) Determines whether the option group is disabled.\n * - `options` (Option[]) - (Optional) The options under this group.\n *\n * Note: Only one level of option nesting is supported.\n *\n * If you want to use the built-in filtering capabilities of this component, provide\n * a list of all valid options here and they will be automatically filtered based on the user's filtering input.\n *\n * Alternatively, you can listen to the `onChange` or `onLoadItems` event and set new options\n * on your own.\n **/\n options?: AutosuggestProps.Options;\n\n /**\n * Specifies a render function to render custom options in the dropdown menu.\n *\n * The item inside the props has a different shape depending on its type:\n *\n *\n * ### item\n *\n * - `type` ('item') - The item type.\n * - `index` (number) - The item's absolute position in the dropdown.\n * - `option` (Option) - The original option configuration.\n * - `disabled` (boolean) - Whether the item is disabled.\n * - `highlighted` (boolean) - Whether the item is currently highlighted.\n * - `selected` (boolean) - Whether the item is selected.\n * - `parent` (OptionGroupRenderItem | null) - The parent group item, if any.\n *\n * ### group\n *\n * - `type` ('group') - The item type.\n * - `index` (number) - The item's absolute position in the dropdown.\n * - `option` (OptionGroup) - The original option configuration.\n * - `disabled` (boolean) - Whether the item is disabled.\n *\n * ### entered-text\n *\n * - `type` ('entered-text') - The item type.\n * - `option` (Option) - The entered-text option configuration.\n *\n * When providing a custom `renderOption` implementation, it fully replaces the default visual rendering and content for that item.\n * The component still manages focus, keyboard interactions, and selection state, but it no longer applies its default item layout or typography.\n *\n * When returning `null`, the default rendering will be applied for that item.\n *\n * @awsuiSystem core\n */\n renderOption?: AutosuggestProps.ItemRenderer;\n\n /**\n * Determines how filtering is applied to the list of `options`:\n *\n * * `auto` - The component will automatically filter options based on user input.\n * * `manual` - You will set up `onChange` or `onLoadItems` event listeners and filter options on your side or request\n * them from server.\n *\n * By default the component will filter the provided `options` based on the value of the filtering input field.\n * Only options that have a `value`, `label`, `description` or `labelTag` that contains the input value as a substring\n * are displayed in the list of options.\n *\n * If you set this property to `manual`, this default filtering mechanism is disabled and all provided `options` are\n * displayed in the dropdown list. In that case make sure that you use the `onChange` or `onLoadItems` events in order\n * to set the `options` property to the options that are relevant for the user, given the filtering input value.\n *\n * Note: Manual filtering doesn't disable match highlighting.\n **/\n filteringType?: OptionsFilteringType;\n\n /**\n * Specifies a function that generates the custom value indicator (for example, `Use \"${value}\"`).\n * @i18n\n */\n enteredTextLabel?: AutosuggestProps.EnteredTextLabel;\n\n /**\n * Defines whether entered text option is shown as the first option in the dropdown when value is non-empty.\n */\n hideEnteredTextOption?: boolean;\n\n /**\n * Specifies the text to display with the number of matches at the bottom of the dropdown menu while filtering.\n *\n * Note that the `matchesCount` includes the `enteredTextLabel` (\"Use ${value}\") item, so in most cases you\n * should subtract 1 from `matchesCount`. If using manual filtering, you should provide your own value for `totalCount`.\n */\n filteringResultsText?: (matchesCount: number, totalCount: number) => string;\n\n /**\n * Specifies the text that's displayed when there aren't any suggestions to display.\n * This is displayed when `statusType` is set to `finished` or it's not set at all.\n */\n empty?: React.ReactNode;\n\n /**\n * Called whenever a user selects an option in the dropdown. Don't use this event as the only way to handle user input.\n * Instead, use `onSelect` in combination with the `onChange` handler only as an optional convenience for the user.\n */\n onSelect?: NonCancelableEventHandler<AutosuggestProps.SelectDetail>;\n\n /**\n * Specifies the localized string that describes an option as being selected.\n * This is required to provide a good screen reader experience. For more information, see the\n * [accessibility guidelines](/components/autosuggest/?tabId=usage#accessibility-guidelines).\n * @i18n\n */\n selectedAriaLabel?: string;\n /**\n * Overrides the element that is announced to screen readers\n * when the highlighted option changes. By default, this announces\n * the option's name and properties, and its selected state if\n * the `selectedAriaLabel` property is defined.\n * The highlighted option is provided, and its group (if groups\n * are used and it differs from the group of the previously highlighted option).\n *\n * For more information, see the\n * [accessibility guidelines](/components/autosuggest/?tabId=usage#accessibility-guidelines).\n */\n renderHighlightedAriaLive?: AutosuggestProps.ContainingOptionAndGroupString;\n\n /**\n * An object containing CSS properties to customize the autosuggest's visual appearance.\n * Refer to the [style](/components/autosuggest/?tabId=style) tab for more details.\n * @awsuiSystem core\n */\n style?: AutosuggestProps.Style;\n}\n\nexport namespace AutosuggestProps {\n export type ChangeDetail = InputProps.ChangeDetail;\n export type KeyDetail = InputProps.KeyDetail;\n export type FilteringType = OptionsFilteringType;\n export type Option = OptionDefinition;\n export type Options = ReadonlyArray<Option | OptionGroup>;\n export type EnteredTextLabel = (value: string) => string;\n export interface OptionGroup extends Option {\n label?: string;\n options: ReadonlyArray<Option>;\n }\n /* eslint-disable-next-line @typescript-eslint/no-empty-object-type --\n * Required to create a distinct named type for the documenter.\n **/\n export interface LoadItemsDetail extends OptionsLoadItemsDetail {}\n export type StatusType = DropdownStatusProps.StatusType;\n export interface SelectDetail {\n value: string;\n selectedOption?: Option;\n }\n\n export interface ContainingOptionAndGroupString {\n (option: Option, group?: OptionGroup): string;\n }\n\n export interface OptionRenderItem {\n type: 'item';\n index: number;\n option: Option;\n disabled: boolean;\n highlighted: boolean;\n selected: boolean;\n parent: OptionGroupRenderItem | null;\n }\n export interface OptionGroupRenderItem {\n type: 'group';\n index: number;\n option: OptionGroup;\n disabled: boolean;\n }\n export interface EnteredTextRenderItem {\n type: 'entered-text';\n option: Option;\n highlighted: boolean;\n }\n export type RenderItem = OptionRenderItem | OptionGroupRenderItem | EnteredTextRenderItem;\n export type ItemRenderer = (props: { item: RenderItem; filterText?: string }) => ReactNode | null;\n\n export interface Ref {\n /**\n * Sets input focus onto the UI control.\n */\n focus(): void;\n\n /**\n * Selects all text in the input control.\n */\n select(): void;\n }\n\n export interface Style {\n root?: {\n backgroundColor?: {\n default?: string;\n disabled?: string;\n focus?: string;\n hover?: string;\n readonly?: string;\n };\n borderColor?: {\n default?: string;\n disabled?: string;\n focus?: string;\n hover?: string;\n readonly?: string;\n };\n borderRadius?: string;\n borderWidth?: string;\n boxShadow?: {\n default?: string;\n disabled?: string;\n focus?: string;\n hover?: string;\n readonly?: string;\n };\n color?: {\n default?: string;\n disabled?: string;\n focus?: string;\n hover?: string;\n readonly?: string;\n };\n fontSize?: string;\n fontWeight?: string;\n paddingBlock?: string;\n paddingInline?: string;\n };\n placeholder?: {\n color?: string;\n fontSize?: string;\n fontStyle?: string;\n fontWeight?: string;\n };\n }\n}\n\n// TODO: use DropdownOption type same as in select and multiselect\nexport type AutosuggestItem = (AutosuggestProps.Option | AutosuggestProps.OptionGroup) & {\n type?: 'parent' | 'child' | 'use-entered';\n option: OptionDefinition | OptionGroup;\n parent?: OptionGroup;\n};\n"]}
@@ -1,28 +1,28 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "calendar": "awsui_calendar_mgja0_195n8_153",
5
- "awsui-motion-fade-in-0": "awsui_awsui-motion-fade-in-0_mgja0_195n8_1",
6
- "root": "awsui_root_mgja0_195n8_176",
7
- "wide": "awsui_wide_mgja0_195n8_207",
8
- "focus-lock": "awsui_focus-lock_mgja0_195n8_214",
9
- "trigger-flexbox": "awsui_trigger-flexbox_mgja0_195n8_218",
10
- "calendar-container": "awsui_calendar-container_mgja0_195n8_222",
11
- "one-grid": "awsui_one-grid_mgja0_195n8_225",
12
- "calendar-header": "awsui_calendar-header_mgja0_195n8_229",
13
- "calendar-header-pages-wrapper": "awsui_calendar-header-pages-wrapper_mgja0_195n8_235",
14
- "calendar-header-page": "awsui_calendar-header-page_mgja0_195n8_235",
15
- "date-and-time-container": "awsui_date-and-time-container_mgja0_195n8_255",
16
- "date-and-time-wrapper": "awsui_date-and-time-wrapper_mgja0_195n8_261",
17
- "footer": "awsui_footer_mgja0_195n8_268",
18
- "has-clear-button": "awsui_has-clear-button_mgja0_195n8_277",
19
- "footer-button-wrapper": "awsui_footer-button-wrapper_mgja0_195n8_286",
20
- "icon-wrapper": "awsui_icon-wrapper_mgja0_195n8_293",
21
- "label": "awsui_label_mgja0_195n8_298",
22
- "label-enabled": "awsui_label-enabled_mgja0_195n8_302",
23
- "label-text": "awsui_label-text_mgja0_195n8_306",
24
- "label-token-nowrap": "awsui_label-token-nowrap_mgja0_195n8_311",
25
- "dropdown": "awsui_dropdown_mgja0_195n8_315",
26
- "dropdown-content": "awsui_dropdown-content_mgja0_195n8_337"
4
+ "calendar": "awsui_calendar_mgja0_l4ab2_153",
5
+ "awsui-motion-fade-in-0": "awsui_awsui-motion-fade-in-0_mgja0_l4ab2_1",
6
+ "root": "awsui_root_mgja0_l4ab2_176",
7
+ "wide": "awsui_wide_mgja0_l4ab2_207",
8
+ "focus-lock": "awsui_focus-lock_mgja0_l4ab2_214",
9
+ "trigger-flexbox": "awsui_trigger-flexbox_mgja0_l4ab2_218",
10
+ "calendar-container": "awsui_calendar-container_mgja0_l4ab2_222",
11
+ "one-grid": "awsui_one-grid_mgja0_l4ab2_225",
12
+ "calendar-header": "awsui_calendar-header_mgja0_l4ab2_229",
13
+ "calendar-header-pages-wrapper": "awsui_calendar-header-pages-wrapper_mgja0_l4ab2_235",
14
+ "calendar-header-page": "awsui_calendar-header-page_mgja0_l4ab2_235",
15
+ "date-and-time-container": "awsui_date-and-time-container_mgja0_l4ab2_255",
16
+ "date-and-time-wrapper": "awsui_date-and-time-wrapper_mgja0_l4ab2_261",
17
+ "footer": "awsui_footer_mgja0_l4ab2_268",
18
+ "has-clear-button": "awsui_has-clear-button_mgja0_l4ab2_277",
19
+ "footer-button-wrapper": "awsui_footer-button-wrapper_mgja0_l4ab2_286",
20
+ "icon-wrapper": "awsui_icon-wrapper_mgja0_l4ab2_293",
21
+ "label": "awsui_label_mgja0_l4ab2_298",
22
+ "label-enabled": "awsui_label-enabled_mgja0_l4ab2_302",
23
+ "label-text": "awsui_label-text_mgja0_l4ab2_306",
24
+ "label-token-nowrap": "awsui_label-token-nowrap_mgja0_l4ab2_312",
25
+ "dropdown": "awsui_dropdown_mgja0_l4ab2_316",
26
+ "dropdown-content": "awsui_dropdown-content_mgja0_l4ab2_338"
27
27
  };
28
28
 
@@ -150,11 +150,11 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
150
150
  Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
151
151
  SPDX-License-Identifier: Apache-2.0
152
152
  */
153
- .awsui_calendar_mgja0_195n8_153:not(#\9) {
154
- animation: awsui_awsui-motion-fade-in-0_mgja0_195n8_1 var(--motion-duration-show-quick-tyvnyw, 135ms) var(--motion-easing-show-quick-9hlj8q, ease-out);
153
+ .awsui_calendar_mgja0_l4ab2_153:not(#\9) {
154
+ animation: awsui_awsui-motion-fade-in-0_mgja0_l4ab2_1 var(--motion-duration-show-quick-tyvnyw, 135ms) var(--motion-easing-show-quick-9hlj8q, ease-out);
155
155
  animation-fill-mode: both;
156
156
  }
157
- @keyframes awsui_awsui-motion-fade-in-0_mgja0_195n8_1 {
157
+ @keyframes awsui_awsui-motion-fade-in-0_mgja0_l4ab2_1 {
158
158
  from {
159
159
  opacity: 0;
160
160
  }
@@ -163,17 +163,17 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
163
163
  }
164
164
  }
165
165
  @media (prefers-reduced-motion: reduce) {
166
- .awsui_calendar_mgja0_195n8_153:not(#\9) {
166
+ .awsui_calendar_mgja0_l4ab2_153:not(#\9) {
167
167
  animation: none;
168
168
  transition: none;
169
169
  }
170
170
  }
171
- .awsui-motion-disabled .awsui_calendar_mgja0_195n8_153:not(#\9), .awsui-mode-entering .awsui_calendar_mgja0_195n8_153:not(#\9) {
171
+ .awsui-motion-disabled .awsui_calendar_mgja0_l4ab2_153:not(#\9), .awsui-mode-entering .awsui_calendar_mgja0_l4ab2_153:not(#\9) {
172
172
  animation: none;
173
173
  transition: none;
174
174
  }
175
175
 
176
- .awsui_root_mgja0_195n8_176:not(#\9) {
176
+ .awsui_root_mgja0_l4ab2_176:not(#\9) {
177
177
  border-collapse: separate;
178
178
  border-spacing: 0;
179
179
  box-sizing: border-box;
@@ -204,35 +204,35 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
204
204
  -webkit-font-smoothing: auto;
205
205
  -moz-osx-font-smoothing: auto;
206
206
  }
207
- .awsui_root_mgja0_195n8_176:not(#\9):not(.awsui_wide_mgja0_195n8_207) {
207
+ .awsui_root_mgja0_l4ab2_176:not(#\9):not(.awsui_wide_mgja0_l4ab2_207) {
208
208
  max-inline-size: 32em;
209
209
  }
210
- .awsui_root_mgja0_195n8_176.awsui_wide_mgja0_195n8_207:not(#\9) {
210
+ .awsui_root_mgja0_l4ab2_176.awsui_wide_mgja0_l4ab2_207:not(#\9) {
211
211
  max-inline-size: 39em;
212
212
  }
213
213
 
214
- .awsui_focus-lock_mgja0_195n8_214:not(#\9) {
214
+ .awsui_focus-lock_mgja0_l4ab2_214:not(#\9) {
215
215
  display: contents;
216
216
  }
217
217
 
218
- .awsui_trigger-flexbox_mgja0_195n8_218:not(#\9) {
218
+ .awsui_trigger-flexbox_mgja0_l4ab2_218:not(#\9) {
219
219
  display: flex;
220
220
  }
221
221
 
222
- .awsui_calendar-container_mgja0_195n8_222:not(#\9) {
222
+ .awsui_calendar-container_mgja0_l4ab2_222:not(#\9) {
223
223
  inline-size: calc(2 * var(--size-calendar-grid-width-hv3136, 238px) + var(--space-xs-ymlm0b, 8px));
224
224
  }
225
- .awsui_calendar-container_mgja0_195n8_222.awsui_one-grid_mgja0_195n8_225:not(#\9) {
225
+ .awsui_calendar-container_mgja0_l4ab2_222.awsui_one-grid_mgja0_l4ab2_225:not(#\9) {
226
226
  inline-size: var(--size-calendar-grid-width-hv3136, 238px);
227
227
  }
228
228
 
229
- .awsui_calendar-header_mgja0_195n8_229:not(#\9) {
229
+ .awsui_calendar-header_mgja0_l4ab2_229:not(#\9) {
230
230
  display: flex;
231
231
  justify-content: space-between;
232
232
  align-items: center;
233
233
  position: relative;
234
234
  }
235
- .awsui_calendar-header-pages-wrapper_mgja0_195n8_235:not(#\9) {
235
+ .awsui_calendar-header-pages-wrapper_mgja0_l4ab2_235:not(#\9) {
236
236
  position: absolute;
237
237
  inset: 0;
238
238
  margin-block: 0;
@@ -243,7 +243,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
243
243
  flex: 1;
244
244
  pointer-events: none;
245
245
  }
246
- .awsui_calendar-header-page_mgja0_195n8_235:not(#\9) {
246
+ .awsui_calendar-header-page_mgja0_l4ab2_235:not(#\9) {
247
247
  font-size: var(--font-size-body-m-a7nh2n, 14px);
248
248
  line-height: var(--line-height-body-m-2mh3ke, 20px);
249
249
  font-weight: var(--font-weight-bold-fo1afg, 700);
@@ -252,20 +252,20 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
252
252
  pointer-events: auto;
253
253
  }
254
254
 
255
- .awsui_date-and-time-container_mgja0_195n8_255:not(#\9) {
255
+ .awsui_date-and-time-container_mgja0_l4ab2_255:not(#\9) {
256
256
  display: grid;
257
257
  grid-template-columns: repeat(auto-fit, minmax(var(--size-calendar-grid-width-hv3136, 238px), 1fr));
258
258
  gap: var(--space-xs-ymlm0b, 8px);
259
259
  }
260
260
 
261
- .awsui_date-and-time-wrapper_mgja0_195n8_261:not(#\9) {
261
+ .awsui_date-and-time-wrapper_mgja0_l4ab2_261:not(#\9) {
262
262
  inline-size: var(--size-calendar-grid-width-hv3136, 238px);
263
263
  display: grid;
264
264
  gap: var(--space-xs-ymlm0b, 8px);
265
265
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
266
266
  }
267
267
 
268
- .awsui_footer_mgja0_195n8_268:not(#\9) {
268
+ .awsui_footer_mgja0_l4ab2_268:not(#\9) {
269
269
  display: flex;
270
270
  flex-wrap: wrap;
271
271
  justify-content: flex-end;
@@ -274,45 +274,47 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
274
274
  padding-block-end: var(--space-s-tvghoh, 12px);
275
275
  padding-inline: var(--space-l-2ud1p3, 20px);
276
276
  }
277
- .awsui_footer_mgja0_195n8_268.awsui_has-clear-button_mgja0_195n8_277:not(#\9) {
277
+ .awsui_footer_mgja0_l4ab2_268.awsui_has-clear-button_mgja0_l4ab2_277:not(#\9) {
278
278
  justify-content: space-between;
279
279
  }
280
- .awsui_footer_mgja0_195n8_268.awsui_one-grid_mgja0_195n8_225:not(#\9) {
280
+ .awsui_footer_mgja0_l4ab2_268.awsui_one-grid_mgja0_l4ab2_225:not(#\9) {
281
281
  padding-block-start: 0;
282
282
  padding-block-end: var(--space-s-tvghoh, 12px);
283
283
  padding-inline: var(--space-xs-ymlm0b, 8px);
284
284
  }
285
285
 
286
- .awsui_footer-button-wrapper_mgja0_195n8_286:not(#\9) {
286
+ .awsui_footer-button-wrapper_mgja0_l4ab2_286:not(#\9) {
287
287
  padding-block-start: var(--space-s-tvghoh, 12px);
288
288
  }
289
- .awsui_footer-button-wrapper_mgja0_195n8_286:not(#\9):last-child {
289
+ .awsui_footer-button-wrapper_mgja0_l4ab2_286:not(#\9):last-child {
290
290
  margin-inline-start: auto;
291
291
  }
292
292
 
293
- .awsui_icon-wrapper_mgja0_195n8_293:not(#\9) {
293
+ .awsui_icon-wrapper_mgja0_l4ab2_293:not(#\9) {
294
294
  color: var(--color-text-interactive-default-ugh9wp, #424650);
295
295
  margin-inline-end: var(--space-xs-ymlm0b, 8px);
296
296
  }
297
297
 
298
- .awsui_label_mgja0_195n8_298:not(#\9) {
298
+ .awsui_label_mgja0_l4ab2_298:not(#\9) {
299
299
  cursor: default;
300
300
  }
301
301
 
302
- .awsui_label_mgja0_195n8_298.awsui_label-enabled_mgja0_195n8_302:not(#\9):hover > .awsui_trigger-flexbox_mgja0_195n8_218 > .awsui_icon-wrapper_mgja0_195n8_293 {
302
+ .awsui_label_mgja0_l4ab2_298.awsui_label-enabled_mgja0_l4ab2_302:not(#\9):hover > .awsui_trigger-flexbox_mgja0_l4ab2_218 > .awsui_icon-wrapper_mgja0_l4ab2_293 {
303
303
  color: var(--color-text-interactive-hover-6naf7i, #0f141a);
304
304
  }
305
305
 
306
- .awsui_label-text_mgja0_195n8_306:not(#\9) {
306
+ .awsui_label-text_mgja0_l4ab2_306:not(#\9) {
307
307
  color: var(--color-text-input-placeholder-dclg8u, #656871);
308
308
  font-style: italic;
309
+ -webkit-user-select: none;
310
+ user-select: none;
309
311
  }
310
312
 
311
- .awsui_label-token-nowrap_mgja0_195n8_311:not(#\9) {
313
+ .awsui_label-token-nowrap_mgja0_l4ab2_312:not(#\9) {
312
314
  white-space: nowrap;
313
315
  }
314
316
 
315
- .awsui_dropdown_mgja0_195n8_315:not(#\9) {
317
+ .awsui_dropdown_mgja0_l4ab2_316:not(#\9) {
316
318
  overflow: auto;
317
319
  border-block-start: 1px solid var(--color-border-container-top-k3vmoz, transparent);
318
320
  border-block-end: 1px solid var(--color-border-container-top-k3vmoz, transparent);
@@ -321,10 +323,10 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
321
323
  border-end-start-radius: var(--border-radius-dropdown-fgc2a1, 8px);
322
324
  border-end-end-radius: var(--border-radius-dropdown-fgc2a1, 8px);
323
325
  }
324
- .awsui_dropdown_mgja0_195n8_315:not(#\9):focus {
326
+ .awsui_dropdown_mgja0_l4ab2_316:not(#\9):focus {
325
327
  outline: none;
326
328
  }
327
- body[data-awsui-focus-visible=true] .awsui_dropdown_mgja0_195n8_315:not(#\9):focus {
329
+ body[data-awsui-focus-visible=true] .awsui_dropdown_mgja0_l4ab2_316:not(#\9):focus {
328
330
  outline: 2px dotted transparent;
329
331
  outline-offset: 2px;
330
332
  border-start-start-radius: var(--border-radius-dropdown-fgc2a1, 8px);
@@ -334,10 +336,10 @@ body[data-awsui-focus-visible=true] .awsui_dropdown_mgja0_195n8_315:not(#\9):foc
334
336
  box-shadow: 0 0 0 2px var(--color-border-item-focused-uk47pl, #006ce0);
335
337
  }
336
338
 
337
- .awsui_dropdown-content_mgja0_195n8_337:not(#\9) {
339
+ .awsui_dropdown-content_mgja0_l4ab2_338:not(#\9) {
338
340
  background-color: var(--color-background-container-content-6u8rvp, #ffffff);
339
341
  inline-size: calc(2 * var(--size-calendar-grid-width-hv3136, 238px) + var(--space-xs-ymlm0b, 8px) + 2 * var(--space-l-2ud1p3, 20px));
340
342
  }
341
- .awsui_dropdown-content_mgja0_195n8_337.awsui_one-grid_mgja0_195n8_225:not(#\9) {
343
+ .awsui_dropdown-content_mgja0_l4ab2_338.awsui_one-grid_mgja0_l4ab2_225:not(#\9) {
342
344
  inline-size: calc(var(--size-calendar-grid-width-hv3136, 238px) + 2 * var(--space-l-2ud1p3, 20px));
343
345
  }
@@ -2,28 +2,28 @@
2
2
  // es-module interop with Babel and Typescript
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  module.exports.default = {
5
- "calendar": "awsui_calendar_mgja0_195n8_153",
6
- "awsui-motion-fade-in-0": "awsui_awsui-motion-fade-in-0_mgja0_195n8_1",
7
- "root": "awsui_root_mgja0_195n8_176",
8
- "wide": "awsui_wide_mgja0_195n8_207",
9
- "focus-lock": "awsui_focus-lock_mgja0_195n8_214",
10
- "trigger-flexbox": "awsui_trigger-flexbox_mgja0_195n8_218",
11
- "calendar-container": "awsui_calendar-container_mgja0_195n8_222",
12
- "one-grid": "awsui_one-grid_mgja0_195n8_225",
13
- "calendar-header": "awsui_calendar-header_mgja0_195n8_229",
14
- "calendar-header-pages-wrapper": "awsui_calendar-header-pages-wrapper_mgja0_195n8_235",
15
- "calendar-header-page": "awsui_calendar-header-page_mgja0_195n8_235",
16
- "date-and-time-container": "awsui_date-and-time-container_mgja0_195n8_255",
17
- "date-and-time-wrapper": "awsui_date-and-time-wrapper_mgja0_195n8_261",
18
- "footer": "awsui_footer_mgja0_195n8_268",
19
- "has-clear-button": "awsui_has-clear-button_mgja0_195n8_277",
20
- "footer-button-wrapper": "awsui_footer-button-wrapper_mgja0_195n8_286",
21
- "icon-wrapper": "awsui_icon-wrapper_mgja0_195n8_293",
22
- "label": "awsui_label_mgja0_195n8_298",
23
- "label-enabled": "awsui_label-enabled_mgja0_195n8_302",
24
- "label-text": "awsui_label-text_mgja0_195n8_306",
25
- "label-token-nowrap": "awsui_label-token-nowrap_mgja0_195n8_311",
26
- "dropdown": "awsui_dropdown_mgja0_195n8_315",
27
- "dropdown-content": "awsui_dropdown-content_mgja0_195n8_337"
5
+ "calendar": "awsui_calendar_mgja0_l4ab2_153",
6
+ "awsui-motion-fade-in-0": "awsui_awsui-motion-fade-in-0_mgja0_l4ab2_1",
7
+ "root": "awsui_root_mgja0_l4ab2_176",
8
+ "wide": "awsui_wide_mgja0_l4ab2_207",
9
+ "focus-lock": "awsui_focus-lock_mgja0_l4ab2_214",
10
+ "trigger-flexbox": "awsui_trigger-flexbox_mgja0_l4ab2_218",
11
+ "calendar-container": "awsui_calendar-container_mgja0_l4ab2_222",
12
+ "one-grid": "awsui_one-grid_mgja0_l4ab2_225",
13
+ "calendar-header": "awsui_calendar-header_mgja0_l4ab2_229",
14
+ "calendar-header-pages-wrapper": "awsui_calendar-header-pages-wrapper_mgja0_l4ab2_235",
15
+ "calendar-header-page": "awsui_calendar-header-page_mgja0_l4ab2_235",
16
+ "date-and-time-container": "awsui_date-and-time-container_mgja0_l4ab2_255",
17
+ "date-and-time-wrapper": "awsui_date-and-time-wrapper_mgja0_l4ab2_261",
18
+ "footer": "awsui_footer_mgja0_l4ab2_268",
19
+ "has-clear-button": "awsui_has-clear-button_mgja0_l4ab2_277",
20
+ "footer-button-wrapper": "awsui_footer-button-wrapper_mgja0_l4ab2_286",
21
+ "icon-wrapper": "awsui_icon-wrapper_mgja0_l4ab2_293",
22
+ "label": "awsui_label_mgja0_l4ab2_298",
23
+ "label-enabled": "awsui_label-enabled_mgja0_l4ab2_302",
24
+ "label-text": "awsui_label-text_mgja0_l4ab2_306",
25
+ "label-token-nowrap": "awsui_label-token-nowrap_mgja0_l4ab2_312",
26
+ "dropdown": "awsui_dropdown_mgja0_l4ab2_316",
27
+ "dropdown-content": "awsui_dropdown-content_mgja0_l4ab2_338"
28
28
  };
29
29
 
@@ -1,28 +1,28 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "root": "awsui_root_39ths_u5h4x_209",
5
- "file-loading-overlay": "awsui_file-loading-overlay_39ths_u5h4x_241",
6
- "file-loading-overlay-single-row": "awsui_file-loading-overlay-single-row_39ths_u5h4x_246",
7
- "file-name-container": "awsui_file-name-container_39ths_u5h4x_250",
8
- "file-option-name": "awsui_file-option-name_39ths_u5h4x_280",
9
- "file-option-size": "awsui_file-option-size_39ths_u5h4x_281",
10
- "file-option-last-modified": "awsui_file-option-last-modified_39ths_u5h4x_282",
11
- "file-option": "awsui_file-option_39ths_u5h4x_280",
12
- "file-option-thumbnail": "awsui_file-option-thumbnail_39ths_u5h4x_295",
13
- "file-option-thumbnail-image": "awsui_file-option-thumbnail-image_39ths_u5h4x_299",
14
- "file-option-metadata": "awsui_file-option-metadata_39ths_u5h4x_312",
15
- "with-image": "awsui_with-image_39ths_u5h4x_315",
16
- "single-row-loading": "awsui_single-row-loading_39ths_u5h4x_318",
17
- "token": "awsui_token_39ths_u5h4x_322",
18
- "token-grid": "awsui_token-grid_39ths_u5h4x_329",
19
- "token-contains-image": "awsui_token-contains-image_39ths_u5h4x_338",
20
- "token-box": "awsui_token-box_39ths_u5h4x_342",
21
- "horizontal": "awsui_horizontal_39ths_u5h4x_361",
22
- "error": "awsui_error_39ths_u5h4x_369",
23
- "dismiss-button": "awsui_dismiss-button_39ths_u5h4x_373",
24
- "warning": "awsui_warning_39ths_u5h4x_379",
25
- "read-only": "awsui_read-only_39ths_u5h4x_389",
26
- "loading": "awsui_loading_39ths_u5h4x_402"
4
+ "root": "awsui_root_39ths_18ryc_209",
5
+ "file-loading-overlay": "awsui_file-loading-overlay_39ths_18ryc_241",
6
+ "file-loading-overlay-single-row": "awsui_file-loading-overlay-single-row_39ths_18ryc_246",
7
+ "file-name-container": "awsui_file-name-container_39ths_18ryc_250",
8
+ "file-option-name": "awsui_file-option-name_39ths_18ryc_280",
9
+ "file-option-size": "awsui_file-option-size_39ths_18ryc_281",
10
+ "file-option-last-modified": "awsui_file-option-last-modified_39ths_18ryc_282",
11
+ "file-option": "awsui_file-option_39ths_18ryc_280",
12
+ "file-option-thumbnail": "awsui_file-option-thumbnail_39ths_18ryc_295",
13
+ "file-option-thumbnail-image": "awsui_file-option-thumbnail-image_39ths_18ryc_299",
14
+ "file-option-metadata": "awsui_file-option-metadata_39ths_18ryc_312",
15
+ "with-image": "awsui_with-image_39ths_18ryc_315",
16
+ "single-row-loading": "awsui_single-row-loading_39ths_18ryc_318",
17
+ "token": "awsui_token_39ths_18ryc_322",
18
+ "token-grid": "awsui_token-grid_39ths_18ryc_329",
19
+ "token-contains-image": "awsui_token-contains-image_39ths_18ryc_338",
20
+ "token-box": "awsui_token-box_39ths_18ryc_342",
21
+ "horizontal": "awsui_horizontal_39ths_18ryc_361",
22
+ "error": "awsui_error_39ths_18ryc_369",
23
+ "dismiss-button": "awsui_dismiss-button_39ths_18ryc_373",
24
+ "warning": "awsui_warning_39ths_18ryc_379",
25
+ "read-only": "awsui_read-only_39ths_18ryc_389",
26
+ "loading": "awsui_loading_39ths_18ryc_402"
27
27
  };
28
28