@cloudscape-design/components-themeable 3.0.372 → 3.0.374

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 (107) hide show
  1. package/lib/internal/manifest.json +1 -1
  2. package/lib/internal/scss/internal/components/dropdown/styles.scss +3 -0
  3. package/lib/internal/template/app-layout/index.d.ts.map +1 -1
  4. package/lib/internal/template/app-layout/index.js +4 -5
  5. package/lib/internal/template/app-layout/index.js.map +1 -1
  6. package/lib/internal/template/app-layout/utils/use-content-width.js +1 -1
  7. package/lib/internal/template/app-layout/utils/use-content-width.js.map +1 -1
  8. package/lib/internal/template/app-layout/utils/use-observed-element.js +1 -1
  9. package/lib/internal/template/app-layout/utils/use-observed-element.js.map +1 -1
  10. package/lib/internal/template/area-chart/model/use-chart-model.d.ts.map +1 -1
  11. package/lib/internal/template/area-chart/model/use-chart-model.js +2 -2
  12. package/lib/internal/template/area-chart/model/use-chart-model.js.map +1 -1
  13. package/lib/internal/template/code-editor/listeners.js +2 -2
  14. package/lib/internal/template/code-editor/listeners.js.map +1 -1
  15. package/lib/internal/template/code-editor/resizable-box/index.js +2 -2
  16. package/lib/internal/template/code-editor/resizable-box/index.js.map +1 -1
  17. package/lib/internal/template/internal/breakpoints.d.ts +1 -0
  18. package/lib/internal/template/internal/breakpoints.d.ts.map +1 -1
  19. package/lib/internal/template/internal/breakpoints.js +3 -0
  20. package/lib/internal/template/internal/breakpoints.js.map +1 -1
  21. package/lib/internal/template/internal/components/autosuggest-input/index.d.ts.map +1 -1
  22. package/lib/internal/template/internal/components/autosuggest-input/index.js +1 -1
  23. package/lib/internal/template/internal/components/autosuggest-input/index.js.map +1 -1
  24. package/lib/internal/template/internal/components/dark-ribbon/index.js +2 -2
  25. package/lib/internal/template/internal/components/dark-ribbon/index.js.map +1 -1
  26. package/lib/internal/template/internal/components/dropdown/dropdown-fit-handler.d.ts +13 -2
  27. package/lib/internal/template/internal/components/dropdown/dropdown-fit-handler.d.ts.map +1 -1
  28. package/lib/internal/template/internal/components/dropdown/dropdown-fit-handler.js +30 -10
  29. package/lib/internal/template/internal/components/dropdown/dropdown-fit-handler.js.map +1 -1
  30. package/lib/internal/template/internal/components/dropdown/index.d.ts +1 -1
  31. package/lib/internal/template/internal/components/dropdown/index.d.ts.map +1 -1
  32. package/lib/internal/template/internal/components/dropdown/index.js +7 -6
  33. package/lib/internal/template/internal/components/dropdown/index.js.map +1 -1
  34. package/lib/internal/template/internal/components/dropdown/interfaces.d.ts +4 -0
  35. package/lib/internal/template/internal/components/dropdown/interfaces.d.ts.map +1 -1
  36. package/lib/internal/template/internal/components/dropdown/interfaces.js.map +1 -1
  37. package/lib/internal/template/internal/components/dropdown/styles.css.js +21 -20
  38. package/lib/internal/template/internal/components/dropdown/styles.scoped.css +38 -35
  39. package/lib/internal/template/internal/components/dropdown/styles.selectors.js +21 -20
  40. package/lib/internal/template/internal/components/options-list/index.d.ts.map +1 -1
  41. package/lib/internal/template/internal/components/options-list/index.js +2 -2
  42. package/lib/internal/template/internal/components/options-list/index.js.map +1 -1
  43. package/lib/internal/template/internal/environment.js +1 -1
  44. package/lib/internal/template/internal/environment.json +1 -1
  45. package/lib/internal/template/internal/hooks/container-queries/index.d.ts +0 -1
  46. package/lib/internal/template/internal/hooks/container-queries/index.d.ts.map +1 -1
  47. package/lib/internal/template/internal/hooks/container-queries/index.js +0 -1
  48. package/lib/internal/template/internal/hooks/container-queries/index.js.map +1 -1
  49. package/lib/internal/template/internal/hooks/container-queries/use-height-measure.js +1 -1
  50. package/lib/internal/template/internal/hooks/container-queries/use-height-measure.js.map +1 -1
  51. package/lib/internal/template/internal/hooks/use-dynamic-overlap/index.js +1 -1
  52. package/lib/internal/template/internal/hooks/use-dynamic-overlap/index.js.map +1 -1
  53. package/lib/internal/template/internal/hooks/use-mobile/index.js +1 -1
  54. package/lib/internal/template/internal/hooks/use-mobile/index.js.map +1 -1
  55. package/lib/internal/template/internal/hooks/use-mouse-down-target.js +1 -1
  56. package/lib/internal/template/internal/hooks/use-mouse-down-target.js.map +1 -1
  57. package/lib/internal/template/internal/hooks/use-mutation-observer/index.d.ts.map +1 -1
  58. package/lib/internal/template/internal/hooks/use-mutation-observer/index.js +2 -3
  59. package/lib/internal/template/internal/hooks/use-mutation-observer/index.js.map +1 -1
  60. package/lib/internal/template/multiselect/internal.d.ts.map +1 -1
  61. package/lib/internal/template/multiselect/internal.js +1 -1
  62. package/lib/internal/template/multiselect/internal.js.map +1 -1
  63. package/lib/internal/template/pie-chart/labels.js +1 -1
  64. package/lib/internal/template/pie-chart/labels.js.map +1 -1
  65. package/lib/internal/template/popover/container.d.ts.map +1 -1
  66. package/lib/internal/template/popover/container.js +1 -1
  67. package/lib/internal/template/popover/container.js.map +1 -1
  68. package/lib/internal/template/s3-resource-selector/s3-in-context/use-versions-fetch.d.ts.map +1 -1
  69. package/lib/internal/template/s3-resource-selector/s3-in-context/use-versions-fetch.js +2 -2
  70. package/lib/internal/template/s3-resource-selector/s3-in-context/use-versions-fetch.js.map +1 -1
  71. package/lib/internal/template/s3-resource-selector/s3-modal/basic-table.d.ts.map +1 -1
  72. package/lib/internal/template/s3-resource-selector/s3-modal/basic-table.js +2 -2
  73. package/lib/internal/template/s3-resource-selector/s3-modal/basic-table.js.map +1 -1
  74. package/lib/internal/template/select/internal.d.ts.map +1 -1
  75. package/lib/internal/template/select/internal.js +1 -1
  76. package/lib/internal/template/select/internal.js.map +1 -1
  77. package/lib/internal/template/split-panel/bottom.js +1 -1
  78. package/lib/internal/template/split-panel/bottom.js.map +1 -1
  79. package/lib/internal/template/table/body-cell/click-away.js +2 -2
  80. package/lib/internal/template/table/body-cell/click-away.js.map +1 -1
  81. package/lib/internal/template/table/resizer/index.js +3 -3
  82. package/lib/internal/template/table/resizer/index.js.map +1 -1
  83. package/lib/internal/template/table/sticky-columns/use-sticky-columns.d.ts.map +1 -1
  84. package/lib/internal/template/table/sticky-columns/use-sticky-columns.js +2 -3
  85. package/lib/internal/template/table/sticky-columns/use-sticky-columns.js.map +1 -1
  86. package/lib/internal/template/table/use-sticky-header.js +1 -1
  87. package/lib/internal/template/table/use-sticky-header.js.map +1 -1
  88. package/lib/internal/template/tag-editor/index.d.ts.map +1 -1
  89. package/lib/internal/template/tag-editor/index.js +6 -6
  90. package/lib/internal/template/tag-editor/index.js.map +1 -1
  91. package/package.json +1 -1
  92. package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.d.ts +0 -21
  93. package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.d.ts.map +0 -1
  94. package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.js +0 -54
  95. package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.js.map +0 -1
  96. package/lib/internal/template/internal/hooks/container-queries/utils.d.ts +0 -4
  97. package/lib/internal/template/internal/hooks/container-queries/utils.d.ts.map +0 -1
  98. package/lib/internal/template/internal/hooks/container-queries/utils.js +0 -10
  99. package/lib/internal/template/internal/hooks/container-queries/utils.js.map +0 -1
  100. package/lib/internal/template/internal/hooks/use-singleton-handler/index.d.ts +0 -11
  101. package/lib/internal/template/internal/hooks/use-singleton-handler/index.d.ts.map +0 -1
  102. package/lib/internal/template/internal/hooks/use-singleton-handler/index.js +0 -45
  103. package/lib/internal/template/internal/hooks/use-singleton-handler/index.js.map +0 -1
  104. package/lib/internal/template/internal/hooks/use-stable-event-handler/index.d.ts +0 -10
  105. package/lib/internal/template/internal/hooks/use-stable-event-handler/index.d.ts.map +0 -1
  106. package/lib/internal/template/internal/hooks/use-stable-event-handler/index.js +0 -19
  107. package/lib/internal/template/internal/hooks/use-stable-event-handler/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"lib/default/","sources":["tag-editor/index.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, { useCallback, useImperativeHandle, useLayoutEffect, useMemo, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { getBaseProps } from '../internal/base-component';\nimport { fireNonCancelableEvent, NonCancelableCustomEvent } from '../internal/events';\nimport { useStableEventHandler } from '../internal/hooks/use-stable-event-handler';\n\nimport { InputProps } from '../input/interfaces';\nimport { AutosuggestProps } from '../autosuggest/interfaces';\nimport { AttributeEditorProps } from '../attribute-editor/interfaces';\nimport InternalAttributeEditor from '../attribute-editor/internal';\nimport InternalStatusIndicator from '../status-indicator/internal';\nimport InternalBox from '../box/internal';\nimport { FormFieldError } from '../form-field/internal';\n\nimport { TagControl, UndoButton } from './internal';\nimport { TagEditorProps } from './interfaces';\nimport { validate, ValidationError } from './validation';\nimport { findIndex, useMemoizedArray } from './utils';\n\nimport styles from './styles.css.js';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport useBaseComponent from '../internal/hooks/use-base-component';\nimport LiveRegion from '../internal/components/live-region';\nimport { useInternalI18n } from '../i18n/context';\n\nexport { TagEditorProps };\n\ninterface InternalTag {\n tag: TagEditorProps.Tag;\n error?: ValidationError;\n}\n\nconst isItemRemovable = ({ tag }: InternalTag) => !tag.markedForRemoval;\n\nconst TagEditor = React.forwardRef(\n (\n {\n tags = [],\n i18nStrings,\n loading = false,\n tagLimit = 50,\n allowedCharacterPattern,\n keysRequest,\n valuesRequest,\n onChange,\n ...restProps\n }: TagEditorProps,\n ref: React.Ref<TagEditorProps.Ref>\n ) => {\n const baseComponentProps = useBaseComponent('TagEditor');\n const i18n = useInternalI18n('tag-editor');\n\n const remainingTags = tagLimit - tags.filter(tag => !tag.markedForRemoval).length;\n\n const attributeEditorRef = useRef<AttributeEditorProps.Ref>(null);\n const keyInputRefs = useRef<(InputProps.Ref | undefined | null)[]>([]);\n const valueInputRefs = useRef<(InputProps.Ref | undefined | null)[]>([]);\n const undoButtonRefs = useRef<(HTMLAnchorElement | undefined | null)[]>([]);\n\n const initialKeyOptionsRef = useRef<AutosuggestProps.Options>([]);\n const keyDirtyStateRef = useRef<boolean[]>([]);\n const focusEventRef = useRef<() => void>();\n\n useLayoutEffect(() => {\n focusEventRef.current?.apply(undefined);\n focusEventRef.current = undefined;\n });\n\n const errors = validate(\n tags,\n keyDirtyStateRef.current,\n i18n,\n i18nStrings,\n allowedCharacterPattern ? new RegExp(allowedCharacterPattern) : undefined\n );\n\n const internalTags = useMemoizedArray(\n tags.map((tag, i) => ({ tag, error: errors[i] })),\n (prev, next) => {\n return prev.tag === next.tag && prev.error?.key === next.error?.key && prev.error?.value === next.error?.value;\n }\n );\n\n useImperativeHandle(\n ref,\n () => ({\n focus() {\n const errorIndex = findIndex(internalTags, ({ error }) => error?.key || error?.value);\n if (errorIndex !== -1) {\n const refArray = internalTags[errorIndex].error?.key ? keyInputRefs : valueInputRefs;\n refArray.current[errorIndex]?.focus();\n }\n },\n }),\n [internalTags]\n );\n\n const validateAndFire = useCallback(\n (newTags: ReadonlyArray<TagEditorProps.Tag>) => {\n fireNonCancelableEvent(onChange, {\n tags: newTags,\n valid: !validate(\n newTags,\n keyDirtyStateRef.current,\n i18n,\n i18nStrings,\n allowedCharacterPattern ? new RegExp(allowedCharacterPattern) : undefined\n ).some(error => error),\n });\n },\n [onChange, i18n, i18nStrings, allowedCharacterPattern]\n );\n\n const onAddButtonClick = () => {\n validateAndFire([...tags, { key: '', value: '', existing: false }]);\n focusEventRef.current = () => {\n keyInputRefs.current[tags.length]?.focus();\n };\n };\n\n const onRemoveButtonClick = useStableEventHandler(\n ({ detail }: NonCancelableCustomEvent<AttributeEditorProps.RemoveButtonClickDetail>) => {\n const existing = tags[detail.itemIndex].existing;\n validateAndFire([\n ...tags.slice(0, detail.itemIndex),\n ...(existing ? [{ ...tags[detail.itemIndex], markedForRemoval: true }] : []),\n ...tags.slice(detail.itemIndex + 1),\n ]);\n if (existing) {\n focusEventRef.current = () => {\n undoButtonRefs.current[detail.itemIndex]?.focus();\n };\n } else {\n keyDirtyStateRef.current.splice(detail.itemIndex, 1);\n const nextKey = keyInputRefs.current[detail.itemIndex + 1];\n if (nextKey) {\n // if next key is present, focus _current_ key which will be replaced by next after state update\n keyInputRefs.current[detail.itemIndex]?.focus();\n } else if (detail.itemIndex > 0) {\n // otherwise focus previous key/value/undo button\n const previousIsExisting = tags[detail.itemIndex - 1].existing;\n if (previousIsExisting) {\n if (tags[detail.itemIndex - 1].markedForRemoval) {\n undoButtonRefs.current[detail.itemIndex - 1]?.focus();\n } else {\n valueInputRefs.current[detail.itemIndex - 1]?.focus();\n }\n } else {\n keyInputRefs.current[detail.itemIndex - 1]?.focus();\n }\n } else {\n // or the 'add' button\n attributeEditorRef.current?.focusAddButton();\n }\n }\n }\n );\n\n const onKeyChange = useStableEventHandler((value: string, row: number) => {\n keyDirtyStateRef.current[row] = true;\n validateAndFire([...tags.slice(0, row), { ...tags[row], key: value }, ...tags.slice(row + 1)]);\n });\n\n const onKeyBlur = useStableEventHandler((row: number) => {\n keyDirtyStateRef.current[row] = true;\n // Force re-render by providing a new array reference\n validateAndFire([...tags]);\n });\n\n const onValueChange = useStableEventHandler((value: string, row: number) => {\n validateAndFire([...tags.slice(0, row), { ...tags[row], value }, ...tags.slice(row + 1)]);\n });\n\n const onUndoRemoval = useStableEventHandler((row: number) => {\n validateAndFire([...tags.slice(0, row), { ...tags[row], markedForRemoval: false }, ...tags.slice(row + 1)]);\n focusEventRef.current = () => {\n attributeEditorRef.current?.focusRemoveButton(row);\n };\n });\n\n const definition = useMemo(\n () => [\n {\n label: i18n('i18nStrings.keyHeader', i18nStrings?.keyHeader),\n control: ({ tag }: InternalTag, row: number) => (\n <TagControl\n row={row}\n value={tag.key}\n readOnly={tag.existing}\n limit={200}\n defaultOptions={[]}\n placeholder={i18n('i18nStrings.keyPlaceholder', i18nStrings?.keyPlaceholder)}\n errorText={i18n('i18nStrings.keysSuggestionError', i18nStrings?.keysSuggestionError)}\n loadingText={i18n('i18nStrings.keysSuggestionLoading', i18nStrings?.keysSuggestionLoading)}\n suggestionText={i18n('i18nStrings.keySuggestion', i18nStrings?.keySuggestion)}\n tooManySuggestionText={i18n('i18nStrings.tooManyKeysSuggestion', i18nStrings?.tooManyKeysSuggestion)}\n enteredTextLabel={i18nStrings?.enteredKeyLabel}\n clearAriaLabel={i18nStrings?.clearAriaLabel}\n onRequest={keysRequest}\n onChange={onKeyChange}\n onBlur={onKeyBlur}\n initialOptionsRef={initialKeyOptionsRef}\n ref={ref => {\n keyInputRefs.current[row] = ref;\n }}\n />\n ),\n errorText: ({ error }: InternalTag) => error?.key,\n },\n {\n label: (\n <>\n {i18n('i18nStrings.valueHeader', i18nStrings?.valueHeader)} -{' '}\n <i>{i18n('i18nStrings.optional', i18nStrings?.optional)}</i>\n </>\n ),\n control: ({ tag }: InternalTag, row: number) =>\n tag.markedForRemoval ? (\n <div role=\"alert\">\n <InternalBox margin={{ top: 'xxs' }}>\n {i18n('i18nStrings.undoPrompt', i18nStrings?.undoPrompt)}{' '}\n <UndoButton\n onClick={() => onUndoRemoval(row)}\n ref={elem => {\n undoButtonRefs.current[row] = elem;\n }}\n >\n {i18n('i18nStrings.undoButton', i18nStrings?.undoButton)}\n </UndoButton>\n </InternalBox>\n </div>\n ) : (\n <TagControl\n row={row}\n value={tag.value}\n readOnly={false}\n limit={200}\n defaultOptions={tag.valueSuggestionOptions ?? []}\n placeholder={i18n('i18nStrings.valuePlaceholder', i18nStrings?.valuePlaceholder)}\n errorText={i18n('i18nStrings.valuesSuggestionError', i18nStrings?.valuesSuggestionError)}\n loadingText={i18n('i18nStrings.valuesSuggestionLoading', i18nStrings?.valuesSuggestionLoading)}\n suggestionText={i18n('i18nStrings.valueSuggestion', i18nStrings?.valueSuggestion)}\n tooManySuggestionText={i18n(\n 'i18nStrings.tooManyValuesSuggestion',\n i18nStrings?.tooManyValuesSuggestion\n )}\n enteredTextLabel={i18nStrings?.enteredValueLabel}\n clearAriaLabel={i18nStrings?.clearAriaLabel}\n filteringKey={tag.key}\n onRequest={valuesRequest && (value => valuesRequest(tag.key, value))}\n onChange={onValueChange}\n ref={ref => {\n valueInputRefs.current[row] = ref;\n }}\n />\n ),\n errorText: ({ error }: InternalTag) => error?.value,\n },\n ],\n [i18n, i18nStrings, keysRequest, onKeyChange, onKeyBlur, valuesRequest, onValueChange, onUndoRemoval]\n );\n\n const forwardedI18nStrings = useMemo<AttributeEditorProps.I18nStrings<InternalTag>>(\n () => ({\n errorIconAriaLabel: i18nStrings?.errorIconAriaLabel,\n itemRemovedAriaLive: i18nStrings?.itemRemovedAriaLive,\n removeButtonAriaLabel: i18n(\n 'i18nStrings.removeButtonAriaLabel',\n i18nStrings?.removeButtonAriaLabel && (({ tag }) => i18nStrings.removeButtonAriaLabel!(tag)),\n format =>\n ({ tag }) =>\n format({ tag__key: tag.key })\n ),\n }),\n [i18nStrings, i18n]\n );\n\n if (loading) {\n return (\n <div className={styles.root} ref={baseComponentProps.__internalRootRef}>\n <InternalStatusIndicator className={styles.loading} type=\"loading\">\n <LiveRegion visible={true}>{i18n('i18nStrings.loading', i18nStrings?.loading)}</LiveRegion>\n </InternalStatusIndicator>\n </div>\n );\n }\n\n const baseProps = getBaseProps(restProps);\n return (\n <InternalAttributeEditor<InternalTag>\n {...baseProps}\n {...baseComponentProps}\n ref={attributeEditorRef}\n className={clsx(styles.root, baseProps.className)}\n items={internalTags}\n isItemRemovable={isItemRemovable}\n onAddButtonClick={onAddButtonClick}\n onRemoveButtonClick={onRemoveButtonClick}\n addButtonText={i18n('i18nStrings.addButton', i18nStrings?.addButton) ?? ''}\n removeButtonText={i18nStrings?.removeButton}\n disableAddButton={remainingTags <= 0}\n empty={i18n('i18nStrings.emptyTags', i18nStrings?.emptyTags)}\n additionalInfo={\n remainingTags < 0 ? (\n <FormFieldError errorIconAriaLabel={i18nStrings?.errorIconAriaLabel}>\n {i18n('i18nStrings.tagLimitExceeded', i18nStrings?.tagLimitExceeded?.(tagLimit), format =>\n format({ tagLimit })\n ) ?? ''}\n </FormFieldError>\n ) : remainingTags === 0 ? (\n i18n('i18nStrings.tagLimitReached', i18nStrings?.tagLimitReached?.(tagLimit), format =>\n format({ tagLimit })\n ) ?? ''\n ) : (\n i18n('i18nStrings.tagLimit', i18nStrings?.tagLimit?.(remainingTags, tagLimit), format =>\n format({ tagLimitAvailable: `${remainingTags === tagLimit}`, availableTags: remainingTags, tagLimit })\n )\n )\n }\n definition={definition}\n i18nStrings={forwardedI18nStrings}\n />\n );\n }\n);\n\napplyDisplayName(TagEditor, 'TagEditor');\nexport default TagEditor;\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"lib/default/","sources":["tag-editor/index.tsx"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAClG,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAA4B,MAAM,oBAAoB,CAAC;AAKtF,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AACnE,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AACnE,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAEpD,OAAO,EAAE,QAAQ,EAAmB,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEtD,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,gBAAgB,MAAM,sCAAsC,CAAC;AACpE,OAAO,UAAU,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AASlF,MAAM,eAAe,GAAG,CAAC,EAAE,GAAG,EAAe,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC;AAExE,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAChC,CACE,EAUiB,EACjB,GAAkC,EAClC,EAAE;;QAZF,EACE,IAAI,GAAG,EAAE,EACT,WAAW,EACX,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,EAAE,EACb,uBAAuB,EACvB,WAAW,EACX,aAAa,EACb,QAAQ,OAEO,EADZ,SAAS,cATd,qHAUC,CADa;IAId,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;IAE3C,MAAM,aAAa,GAAG,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC;IAElF,MAAM,kBAAkB,GAAG,MAAM,CAA2B,IAAI,CAAC,CAAC;IAClE,MAAM,YAAY,GAAG,MAAM,CAAwC,EAAE,CAAC,CAAC;IACvE,MAAM,cAAc,GAAG,MAAM,CAAwC,EAAE,CAAC,CAAC;IACzE,MAAM,cAAc,GAAG,MAAM,CAA2C,EAAE,CAAC,CAAC;IAE5E,MAAM,oBAAoB,GAAG,MAAM,CAA2B,EAAE,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,MAAM,CAAY,EAAE,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,MAAM,EAAc,CAAC;IAE3C,eAAe,CAAC,GAAG,EAAE;;QACnB,MAAA,aAAa,CAAC,OAAO,0CAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACxC,aAAa,CAAC,OAAO,GAAG,SAAS,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,QAAQ,CACrB,IAAI,EACJ,gBAAgB,CAAC,OAAO,EACxB,IAAI,EACJ,WAAW,EACX,uBAAuB,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,SAAS,CAC1E,CAAC;IAEF,MAAM,YAAY,GAAG,gBAAgB,CACnC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EACjD,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;;QACb,OAAO,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,IAAI,CAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,GAAG,OAAK,MAAA,IAAI,CAAC,KAAK,0CAAE,GAAG,CAAA,IAAI,CAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,KAAK,OAAK,MAAA,IAAI,CAAC,KAAK,0CAAE,KAAK,CAAA,CAAC;IACjH,CAAC,CACF,CAAC;IAEF,mBAAmB,CACjB,GAAG,EACH,GAAG,EAAE,CAAC,CAAC;QACL,KAAK;;YACH,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,GAAG,MAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAA,CAAC,CAAC;YACtF,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE;gBACrB,MAAM,QAAQ,GAAG,CAAA,MAAA,YAAY,CAAC,UAAU,CAAC,CAAC,KAAK,0CAAE,GAAG,EAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC;gBACrF,MAAA,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,0CAAE,KAAK,EAAE,CAAC;aACvC;QACH,CAAC;KACF,CAAC,EACF,CAAC,YAAY,CAAC,CACf,CAAC;IAEF,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,OAA0C,EAAE,EAAE;QAC7C,sBAAsB,CAAC,QAAQ,EAAE;YAC/B,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,CAAC,QAAQ,CACd,OAAO,EACP,gBAAgB,CAAC,OAAO,EACxB,IAAI,EACJ,WAAW,EACX,uBAAuB,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,SAAS,CAC1E,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC;SACvB,CAAC,CAAC;IACL,CAAC,EACD,CAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,uBAAuB,CAAC,CACvD,CAAC;IAEF,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC5B,eAAe,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACpE,aAAa,CAAC,OAAO,GAAG,GAAG,EAAE;;YAC3B,MAAA,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,0CAAE,KAAK,EAAE,CAAC;QAC7C,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAG,iBAAiB,CAC3C,CAAC,EAAE,MAAM,EAA0E,EAAE,EAAE;;QACrF,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC;QACjD,eAAe,CAAC;YACd,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC;YAClC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,iCAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAE,gBAAgB,EAAE,IAAI,IAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;SACpC,CAAC,CAAC;QACH,IAAI,QAAQ,EAAE;YACZ,aAAa,CAAC,OAAO,GAAG,GAAG,EAAE;;gBAC3B,MAAA,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,0CAAE,KAAK,EAAE,CAAC;YACpD,CAAC,CAAC;SACH;aAAM;YACL,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YACrD,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,OAAO,EAAE;gBACX,gGAAgG;gBAChG,MAAA,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,0CAAE,KAAK,EAAE,CAAC;aACjD;iBAAM,IAAI,MAAM,CAAC,SAAS,GAAG,CAAC,EAAE;gBAC/B,iDAAiD;gBACjD,MAAM,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAC/D,IAAI,kBAAkB,EAAE;oBACtB,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,gBAAgB,EAAE;wBAC/C,MAAA,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,0CAAE,KAAK,EAAE,CAAC;qBACvD;yBAAM;wBACL,MAAA,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,0CAAE,KAAK,EAAE,CAAC;qBACvD;iBACF;qBAAM;oBACL,MAAA,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,0CAAE,KAAK,EAAE,CAAC;iBACrD;aACF;iBAAM;gBACL,sBAAsB;gBACtB,MAAA,kBAAkB,CAAC,OAAO,0CAAE,cAAc,EAAE,CAAC;aAC9C;SACF;IACH,CAAC,CACF,CAAC;IAEF,MAAM,WAAW,GAAG,iBAAiB,CAAC,CAAC,KAAa,EAAE,GAAW,EAAE,EAAE;QACnE,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;QACrC,eAAe,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,kCAAO,IAAI,CAAC,GAAG,CAAC,KAAE,GAAG,EAAE,KAAK,KAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjG,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,iBAAiB,CAAC,CAAC,GAAW,EAAE,EAAE;QAClD,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;QACrC,qDAAqD;QACrD,eAAe,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,iBAAiB,CAAC,CAAC,KAAa,EAAE,GAAW,EAAE,EAAE;QACrE,eAAe,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,kCAAO,IAAI,CAAC,GAAG,CAAC,KAAE,KAAK,KAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,iBAAiB,CAAC,CAAC,GAAW,EAAE,EAAE;QACtD,eAAe,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,kCAAO,IAAI,CAAC,GAAG,CAAC,KAAE,gBAAgB,EAAE,KAAK,KAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5G,aAAa,CAAC,OAAO,GAAG,GAAG,EAAE;;YAC3B,MAAA,kBAAkB,CAAC,OAAO,0CAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;QACrD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE,CAAC;QACJ;YACE,KAAK,EAAE,IAAI,CAAC,uBAAuB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,SAAS,CAAC;YAC5D,OAAO,EAAE,CAAC,EAAE,GAAG,EAAe,EAAE,GAAW,EAAE,EAAE,CAAC,CAC9C,oBAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,GAAG,CAAC,GAAG,EACd,QAAQ,EAAE,GAAG,CAAC,QAAQ,EACtB,KAAK,EAAE,GAAG,EACV,cAAc,EAAE,EAAE,EAClB,WAAW,EAAE,IAAI,CAAC,4BAA4B,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,CAAC,EAC5E,SAAS,EAAE,IAAI,CAAC,iCAAiC,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,mBAAmB,CAAC,EACpF,WAAW,EAAE,IAAI,CAAC,mCAAmC,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,qBAAqB,CAAC,EAC1F,cAAc,EAAE,IAAI,CAAC,2BAA2B,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,aAAa,CAAC,EAC7E,qBAAqB,EAAE,IAAI,CAAC,mCAAmC,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,qBAAqB,CAAC,EACpG,gBAAgB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,eAAe,EAC9C,cAAc,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,EAC3C,SAAS,EAAE,WAAW,EACtB,QAAQ,EAAE,WAAW,EACrB,MAAM,EAAE,SAAS,EACjB,iBAAiB,EAAE,oBAAoB,EACvC,GAAG,EAAE,GAAG,CAAC,EAAE;oBACT,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;gBAClC,CAAC,GACD,CACH;YACD,SAAS,EAAE,CAAC,EAAE,KAAK,EAAe,EAAE,EAAE,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,GAAG;SAClD;QACD;YACE,KAAK,EAAE,CACL;gBACG,IAAI,CAAC,yBAAyB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,WAAW,CAAC;;gBAAI,GAAG;gBACjE,+BAAI,IAAI,CAAC,sBAAsB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,QAAQ,CAAC,CAAK,CAC3D,CACJ;YACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAe,EAAE,GAAW,EAAE,EAAE;;gBAC7C,OAAA,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CACrB,6BAAK,IAAI,EAAC,OAAO;oBACf,oBAAC,WAAW,IAAC,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE;wBAChC,IAAI,CAAC,wBAAwB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,CAAC;wBAAE,GAAG;wBAC7D,oBAAC,UAAU,IACT,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,EACjC,GAAG,EAAE,IAAI,CAAC,EAAE;gCACV,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;4BACrC,CAAC,IAEA,IAAI,CAAC,wBAAwB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,CAAC,CAC7C,CACD,CACV,CACP,CAAC,CAAC,CAAC,CACF,oBAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,GAAG,CAAC,KAAK,EAChB,QAAQ,EAAE,KAAK,EACf,KAAK,EAAE,GAAG,EACV,cAAc,EAAE,MAAA,GAAG,CAAC,sBAAsB,mCAAI,EAAE,EAChD,WAAW,EAAE,IAAI,CAAC,8BAA8B,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,CAAC,EAChF,SAAS,EAAE,IAAI,CAAC,mCAAmC,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,qBAAqB,CAAC,EACxF,WAAW,EAAE,IAAI,CAAC,qCAAqC,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,uBAAuB,CAAC,EAC9F,cAAc,EAAE,IAAI,CAAC,6BAA6B,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,eAAe,CAAC,EACjF,qBAAqB,EAAE,IAAI,CACzB,qCAAqC,EACrC,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,uBAAuB,CACrC,EACD,gBAAgB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,iBAAiB,EAChD,cAAc,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,EAC3C,YAAY,EAAE,GAAG,CAAC,GAAG,EACrB,SAAS,EAAE,aAAa,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,EACpE,QAAQ,EAAE,aAAa,EACvB,GAAG,EAAE,GAAG,CAAC,EAAE;wBACT,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;oBACpC,CAAC,GACD,CACH,CAAA;aAAA;YACH,SAAS,EAAE,CAAC,EAAE,KAAK,EAAe,EAAE,EAAE,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK;SACpD;KACF,EACD,CAAC,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,CAAC,CACtG,CAAC;IAEF,MAAM,oBAAoB,GAAG,OAAO,CAClC,GAAG,EAAE,CAAC,CAAC;QACL,kBAAkB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,kBAAkB;QACnD,mBAAmB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,mBAAmB;QACrD,qBAAqB,EAAE,IAAI,CACzB,mCAAmC,EACnC,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,qBAAqB,KAAI,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,qBAAsB,CAAC,GAAG,CAAC,CAAC,EAC5F,MAAM,CAAC,EAAE,CACP,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CACV,MAAM,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAClC;KACF,CAAC,EACF,CAAC,WAAW,EAAE,IAAI,CAAC,CACpB,CAAC;IAEF,IAAI,OAAO,EAAE;QACX,OAAO,CACL,6BAAK,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,kBAAkB,CAAC,iBAAiB;YACpE,oBAAC,uBAAuB,IAAC,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAC,SAAS;gBAChE,oBAAC,UAAU,IAAC,OAAO,EAAE,IAAI,IAAG,IAAI,CAAC,qBAAqB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,CAAC,CAAc,CACnE,CACtB,CACP,CAAC;KACH;IAED,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1C,OAAO,CACL,oBAAC,uBAAuB,oBAClB,SAAS,EACT,kBAAkB,IACtB,GAAG,EAAE,kBAAkB,EACvB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,EACjD,KAAK,EAAE,YAAY,EACnB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,mBAAmB,EAAE,mBAAmB,EACxC,aAAa,EAAE,MAAA,IAAI,CAAC,uBAAuB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,SAAS,CAAC,mCAAI,EAAE,EAC1E,gBAAgB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,YAAY,EAC3C,gBAAgB,EAAE,aAAa,IAAI,CAAC,EACpC,KAAK,EAAE,IAAI,CAAC,uBAAuB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,SAAS,CAAC,EAC5D,cAAc,EACZ,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,CAClB,oBAAC,cAAc,IAAC,kBAAkB,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,kBAAkB,IAChE,MAAA,IAAI,CAAC,8BAA8B,EAAE,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,4DAAG,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,CACxF,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CACrB,mCAAI,EAAE,CACQ,CAClB,CAAC,CAAC,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,CACxB,MAAA,IAAI,CAAC,6BAA6B,EAAE,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,eAAe,4DAAG,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,CACrF,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CACrB,mCAAI,EAAE,CACR,CAAC,CAAC,CAAC,CACF,IAAI,CAAC,sBAAsB,EAAE,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,QAAQ,4DAAG,aAAa,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,CACtF,MAAM,CAAC,EAAE,iBAAiB,EAAE,GAAG,aAAa,KAAK,QAAQ,EAAE,EAAE,aAAa,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,CACvG,CACF,EAEH,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,oBAAoB,IACjC,CACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,gBAAgB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;AACzC,eAAe,SAAS,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useCallback, useImperativeHandle, useLayoutEffect, useMemo, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { getBaseProps } from '../internal/base-component';\nimport { fireNonCancelableEvent, NonCancelableCustomEvent } from '../internal/events';\n\nimport { InputProps } from '../input/interfaces';\nimport { AutosuggestProps } from '../autosuggest/interfaces';\nimport { AttributeEditorProps } from '../attribute-editor/interfaces';\nimport InternalAttributeEditor from '../attribute-editor/internal';\nimport InternalStatusIndicator from '../status-indicator/internal';\nimport InternalBox from '../box/internal';\nimport { FormFieldError } from '../form-field/internal';\n\nimport { TagControl, UndoButton } from './internal';\nimport { TagEditorProps } from './interfaces';\nimport { validate, ValidationError } from './validation';\nimport { findIndex, useMemoizedArray } from './utils';\n\nimport styles from './styles.css.js';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport useBaseComponent from '../internal/hooks/use-base-component';\nimport LiveRegion from '../internal/components/live-region';\nimport { useInternalI18n } from '../i18n/context';\nimport { useStableCallback } from '@cloudscape-design/component-toolkit/internal';\n\nexport { TagEditorProps };\n\ninterface InternalTag {\n tag: TagEditorProps.Tag;\n error?: ValidationError;\n}\n\nconst isItemRemovable = ({ tag }: InternalTag) => !tag.markedForRemoval;\n\nconst TagEditor = React.forwardRef(\n (\n {\n tags = [],\n i18nStrings,\n loading = false,\n tagLimit = 50,\n allowedCharacterPattern,\n keysRequest,\n valuesRequest,\n onChange,\n ...restProps\n }: TagEditorProps,\n ref: React.Ref<TagEditorProps.Ref>\n ) => {\n const baseComponentProps = useBaseComponent('TagEditor');\n const i18n = useInternalI18n('tag-editor');\n\n const remainingTags = tagLimit - tags.filter(tag => !tag.markedForRemoval).length;\n\n const attributeEditorRef = useRef<AttributeEditorProps.Ref>(null);\n const keyInputRefs = useRef<(InputProps.Ref | undefined | null)[]>([]);\n const valueInputRefs = useRef<(InputProps.Ref | undefined | null)[]>([]);\n const undoButtonRefs = useRef<(HTMLAnchorElement | undefined | null)[]>([]);\n\n const initialKeyOptionsRef = useRef<AutosuggestProps.Options>([]);\n const keyDirtyStateRef = useRef<boolean[]>([]);\n const focusEventRef = useRef<() => void>();\n\n useLayoutEffect(() => {\n focusEventRef.current?.apply(undefined);\n focusEventRef.current = undefined;\n });\n\n const errors = validate(\n tags,\n keyDirtyStateRef.current,\n i18n,\n i18nStrings,\n allowedCharacterPattern ? new RegExp(allowedCharacterPattern) : undefined\n );\n\n const internalTags = useMemoizedArray(\n tags.map((tag, i) => ({ tag, error: errors[i] })),\n (prev, next) => {\n return prev.tag === next.tag && prev.error?.key === next.error?.key && prev.error?.value === next.error?.value;\n }\n );\n\n useImperativeHandle(\n ref,\n () => ({\n focus() {\n const errorIndex = findIndex(internalTags, ({ error }) => error?.key || error?.value);\n if (errorIndex !== -1) {\n const refArray = internalTags[errorIndex].error?.key ? keyInputRefs : valueInputRefs;\n refArray.current[errorIndex]?.focus();\n }\n },\n }),\n [internalTags]\n );\n\n const validateAndFire = useCallback(\n (newTags: ReadonlyArray<TagEditorProps.Tag>) => {\n fireNonCancelableEvent(onChange, {\n tags: newTags,\n valid: !validate(\n newTags,\n keyDirtyStateRef.current,\n i18n,\n i18nStrings,\n allowedCharacterPattern ? new RegExp(allowedCharacterPattern) : undefined\n ).some(error => error),\n });\n },\n [onChange, i18n, i18nStrings, allowedCharacterPattern]\n );\n\n const onAddButtonClick = () => {\n validateAndFire([...tags, { key: '', value: '', existing: false }]);\n focusEventRef.current = () => {\n keyInputRefs.current[tags.length]?.focus();\n };\n };\n\n const onRemoveButtonClick = useStableCallback(\n ({ detail }: NonCancelableCustomEvent<AttributeEditorProps.RemoveButtonClickDetail>) => {\n const existing = tags[detail.itemIndex].existing;\n validateAndFire([\n ...tags.slice(0, detail.itemIndex),\n ...(existing ? [{ ...tags[detail.itemIndex], markedForRemoval: true }] : []),\n ...tags.slice(detail.itemIndex + 1),\n ]);\n if (existing) {\n focusEventRef.current = () => {\n undoButtonRefs.current[detail.itemIndex]?.focus();\n };\n } else {\n keyDirtyStateRef.current.splice(detail.itemIndex, 1);\n const nextKey = keyInputRefs.current[detail.itemIndex + 1];\n if (nextKey) {\n // if next key is present, focus _current_ key which will be replaced by next after state update\n keyInputRefs.current[detail.itemIndex]?.focus();\n } else if (detail.itemIndex > 0) {\n // otherwise focus previous key/value/undo button\n const previousIsExisting = tags[detail.itemIndex - 1].existing;\n if (previousIsExisting) {\n if (tags[detail.itemIndex - 1].markedForRemoval) {\n undoButtonRefs.current[detail.itemIndex - 1]?.focus();\n } else {\n valueInputRefs.current[detail.itemIndex - 1]?.focus();\n }\n } else {\n keyInputRefs.current[detail.itemIndex - 1]?.focus();\n }\n } else {\n // or the 'add' button\n attributeEditorRef.current?.focusAddButton();\n }\n }\n }\n );\n\n const onKeyChange = useStableCallback((value: string, row: number) => {\n keyDirtyStateRef.current[row] = true;\n validateAndFire([...tags.slice(0, row), { ...tags[row], key: value }, ...tags.slice(row + 1)]);\n });\n\n const onKeyBlur = useStableCallback((row: number) => {\n keyDirtyStateRef.current[row] = true;\n // Force re-render by providing a new array reference\n validateAndFire([...tags]);\n });\n\n const onValueChange = useStableCallback((value: string, row: number) => {\n validateAndFire([...tags.slice(0, row), { ...tags[row], value }, ...tags.slice(row + 1)]);\n });\n\n const onUndoRemoval = useStableCallback((row: number) => {\n validateAndFire([...tags.slice(0, row), { ...tags[row], markedForRemoval: false }, ...tags.slice(row + 1)]);\n focusEventRef.current = () => {\n attributeEditorRef.current?.focusRemoveButton(row);\n };\n });\n\n const definition = useMemo(\n () => [\n {\n label: i18n('i18nStrings.keyHeader', i18nStrings?.keyHeader),\n control: ({ tag }: InternalTag, row: number) => (\n <TagControl\n row={row}\n value={tag.key}\n readOnly={tag.existing}\n limit={200}\n defaultOptions={[]}\n placeholder={i18n('i18nStrings.keyPlaceholder', i18nStrings?.keyPlaceholder)}\n errorText={i18n('i18nStrings.keysSuggestionError', i18nStrings?.keysSuggestionError)}\n loadingText={i18n('i18nStrings.keysSuggestionLoading', i18nStrings?.keysSuggestionLoading)}\n suggestionText={i18n('i18nStrings.keySuggestion', i18nStrings?.keySuggestion)}\n tooManySuggestionText={i18n('i18nStrings.tooManyKeysSuggestion', i18nStrings?.tooManyKeysSuggestion)}\n enteredTextLabel={i18nStrings?.enteredKeyLabel}\n clearAriaLabel={i18nStrings?.clearAriaLabel}\n onRequest={keysRequest}\n onChange={onKeyChange}\n onBlur={onKeyBlur}\n initialOptionsRef={initialKeyOptionsRef}\n ref={ref => {\n keyInputRefs.current[row] = ref;\n }}\n />\n ),\n errorText: ({ error }: InternalTag) => error?.key,\n },\n {\n label: (\n <>\n {i18n('i18nStrings.valueHeader', i18nStrings?.valueHeader)} -{' '}\n <i>{i18n('i18nStrings.optional', i18nStrings?.optional)}</i>\n </>\n ),\n control: ({ tag }: InternalTag, row: number) =>\n tag.markedForRemoval ? (\n <div role=\"alert\">\n <InternalBox margin={{ top: 'xxs' }}>\n {i18n('i18nStrings.undoPrompt', i18nStrings?.undoPrompt)}{' '}\n <UndoButton\n onClick={() => onUndoRemoval(row)}\n ref={elem => {\n undoButtonRefs.current[row] = elem;\n }}\n >\n {i18n('i18nStrings.undoButton', i18nStrings?.undoButton)}\n </UndoButton>\n </InternalBox>\n </div>\n ) : (\n <TagControl\n row={row}\n value={tag.value}\n readOnly={false}\n limit={200}\n defaultOptions={tag.valueSuggestionOptions ?? []}\n placeholder={i18n('i18nStrings.valuePlaceholder', i18nStrings?.valuePlaceholder)}\n errorText={i18n('i18nStrings.valuesSuggestionError', i18nStrings?.valuesSuggestionError)}\n loadingText={i18n('i18nStrings.valuesSuggestionLoading', i18nStrings?.valuesSuggestionLoading)}\n suggestionText={i18n('i18nStrings.valueSuggestion', i18nStrings?.valueSuggestion)}\n tooManySuggestionText={i18n(\n 'i18nStrings.tooManyValuesSuggestion',\n i18nStrings?.tooManyValuesSuggestion\n )}\n enteredTextLabel={i18nStrings?.enteredValueLabel}\n clearAriaLabel={i18nStrings?.clearAriaLabel}\n filteringKey={tag.key}\n onRequest={valuesRequest && (value => valuesRequest(tag.key, value))}\n onChange={onValueChange}\n ref={ref => {\n valueInputRefs.current[row] = ref;\n }}\n />\n ),\n errorText: ({ error }: InternalTag) => error?.value,\n },\n ],\n [i18n, i18nStrings, keysRequest, onKeyChange, onKeyBlur, valuesRequest, onValueChange, onUndoRemoval]\n );\n\n const forwardedI18nStrings = useMemo<AttributeEditorProps.I18nStrings<InternalTag>>(\n () => ({\n errorIconAriaLabel: i18nStrings?.errorIconAriaLabel,\n itemRemovedAriaLive: i18nStrings?.itemRemovedAriaLive,\n removeButtonAriaLabel: i18n(\n 'i18nStrings.removeButtonAriaLabel',\n i18nStrings?.removeButtonAriaLabel && (({ tag }) => i18nStrings.removeButtonAriaLabel!(tag)),\n format =>\n ({ tag }) =>\n format({ tag__key: tag.key })\n ),\n }),\n [i18nStrings, i18n]\n );\n\n if (loading) {\n return (\n <div className={styles.root} ref={baseComponentProps.__internalRootRef}>\n <InternalStatusIndicator className={styles.loading} type=\"loading\">\n <LiveRegion visible={true}>{i18n('i18nStrings.loading', i18nStrings?.loading)}</LiveRegion>\n </InternalStatusIndicator>\n </div>\n );\n }\n\n const baseProps = getBaseProps(restProps);\n return (\n <InternalAttributeEditor<InternalTag>\n {...baseProps}\n {...baseComponentProps}\n ref={attributeEditorRef}\n className={clsx(styles.root, baseProps.className)}\n items={internalTags}\n isItemRemovable={isItemRemovable}\n onAddButtonClick={onAddButtonClick}\n onRemoveButtonClick={onRemoveButtonClick}\n addButtonText={i18n('i18nStrings.addButton', i18nStrings?.addButton) ?? ''}\n removeButtonText={i18nStrings?.removeButton}\n disableAddButton={remainingTags <= 0}\n empty={i18n('i18nStrings.emptyTags', i18nStrings?.emptyTags)}\n additionalInfo={\n remainingTags < 0 ? (\n <FormFieldError errorIconAriaLabel={i18nStrings?.errorIconAriaLabel}>\n {i18n('i18nStrings.tagLimitExceeded', i18nStrings?.tagLimitExceeded?.(tagLimit), format =>\n format({ tagLimit })\n ) ?? ''}\n </FormFieldError>\n ) : remainingTags === 0 ? (\n i18n('i18nStrings.tagLimitReached', i18nStrings?.tagLimitReached?.(tagLimit), format =>\n format({ tagLimit })\n ) ?? ''\n ) : (\n i18n('i18nStrings.tagLimit', i18nStrings?.tagLimit?.(remainingTags, tagLimit), format =>\n format({ tagLimitAvailable: `${remainingTags === tagLimit}`, availableTags: remainingTags, tagLimit })\n )\n )\n }\n definition={definition}\n i18nStrings={forwardedI18nStrings}\n />\n );\n }\n);\n\napplyDisplayName(TagEditor, 'TagEditor');\nexport default TagEditor;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudscape-design/components-themeable",
3
- "version": "3.0.372",
3
+ "version": "3.0.374",
4
4
  "files": [
5
5
  "lib"
6
6
  ],
@@ -1,21 +0,0 @@
1
- import React from 'react';
2
- import { ContainerQueryEntry } from '@cloudscape-design/component-toolkit';
3
- type ElementReference = (() => Element | null) | React.RefObject<Element>;
4
- /**
5
- * Attaches resize-observer to the referenced element.
6
- *
7
- * Examples:
8
- * // With React reference
9
- * const ref = useRef(null)
10
- * useResizeObserver(ref, (entry) => setState(getWidth(entry)))
11
- *
12
- * // With ID reference
13
- * const getElement = useCallback(() => document.getElementById(id), [id])
14
- * useResizeObserver(getElement, (entry) => setState(getWidth(entry)))
15
- *
16
- * @param elementRef React reference or memoized getter for the target element
17
- * @param onObserve Function to fire when observation occurs
18
- */
19
- export declare function useResizeObserver(elementRef: ElementReference, onObserve: (entry: ContainerQueryEntry) => void): void;
20
- export {};
21
- //# sourceMappingURL=use-resize-observer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-resize-observer.d.ts","sourceRoot":"lib/default/","sources":["internal/hooks/container-queries/use-resize-observer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAqC,MAAM,OAAO,CAAC;AAE1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAG3E,KAAK,gBAAgB,GAAG,CAAC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AAE1E;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,QAmC9G"}
@@ -1,54 +0,0 @@
1
- // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- // SPDX-License-Identifier: Apache-2.0
3
- import { ResizeObserver, ResizeObserverEntry } from '@juggle/resize-observer';
4
- import { useEffect, useLayoutEffect } from 'react';
5
- import { useStableEventHandler } from '../use-stable-event-handler';
6
- import { convertResizeObserverEntry } from './utils';
7
- /**
8
- * Attaches resize-observer to the referenced element.
9
- *
10
- * Examples:
11
- * // With React reference
12
- * const ref = useRef(null)
13
- * useResizeObserver(ref, (entry) => setState(getWidth(entry)))
14
- *
15
- * // With ID reference
16
- * const getElement = useCallback(() => document.getElementById(id), [id])
17
- * useResizeObserver(getElement, (entry) => setState(getWidth(entry)))
18
- *
19
- * @param elementRef React reference or memoized getter for the target element
20
- * @param onObserve Function to fire when observation occurs
21
- */
22
- export function useResizeObserver(elementRef, onObserve) {
23
- const stableOnObserve = useStableEventHandler(onObserve);
24
- // This effect provides a synchronous update required to prevent flakiness when initial state and first observed state are different.
25
- // Can potentially conflict with React concurrent mode: https://17.reactjs.org/docs/concurrent-mode-intro.html.
26
- // A possible solution would be to make consumers not render any content until the first (asynchronous) observation is available.
27
- useLayoutEffect(() => {
28
- const element = typeof elementRef === 'function' ? elementRef() : elementRef === null || elementRef === void 0 ? void 0 : elementRef.current;
29
- if (element) {
30
- onObserve(convertResizeObserverEntry(new ResizeObserverEntry(element)));
31
- }
32
- },
33
- // This effect is only needed for the first render to provide a synchronous update.
34
- // eslint-disable-next-line react-hooks/exhaustive-deps
35
- []);
36
- useEffect(() => {
37
- const element = typeof elementRef === 'function' ? elementRef() : elementRef === null || elementRef === void 0 ? void 0 : elementRef.current;
38
- if (element) {
39
- let connected = true;
40
- const observer = new ResizeObserver(entries => {
41
- // Prevent observe notifications on already unmounted component.
42
- if (connected) {
43
- stableOnObserve(convertResizeObserverEntry(entries[0]));
44
- }
45
- });
46
- observer.observe(element);
47
- return () => {
48
- connected = false;
49
- observer.disconnect();
50
- };
51
- }
52
- }, [elementRef, stableOnObserve]);
53
- }
54
- //# sourceMappingURL=use-resize-observer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-resize-observer.js","sourceRoot":"lib/default/","sources":["internal/hooks/container-queries/use-resize-observer.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAc,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAIrD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAA4B,EAAE,SAA+C;IAC7G,MAAM,eAAe,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAEzD,qIAAqI;IACrI,+GAA+G;IAC/G,iIAAiI;IACjI,eAAe,CACb,GAAG,EAAE;QACH,MAAM,OAAO,GAAG,OAAO,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,OAAO,CAAC;QACtF,IAAI,OAAO,EAAE;YACX,SAAS,CAAC,0BAA0B,CAAC,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SACzE;IACH,CAAC;IACD,mFAAmF;IACnF,uDAAuD;IACvD,EAAE,CACH,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,OAAO,GAAG,OAAO,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,OAAO,CAAC;QACtF,IAAI,OAAO,EAAE;YACX,IAAI,SAAS,GAAG,IAAI,CAAC;YACrB,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE;gBAC5C,gEAAgE;gBAChE,IAAI,SAAS,EAAE;oBACb,eAAe,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBACzD;YACH,CAAC,CAAC,CAAC;YACH,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1B,OAAO,GAAG,EAAE;gBACV,SAAS,GAAG,KAAK,CAAC;gBAClB,QAAQ,CAAC,UAAU,EAAE,CAAC;YACxB,CAAC,CAAC;SACH;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;AACpC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ResizeObserver, ResizeObserverEntry } from '@juggle/resize-observer';\nimport React, { useEffect, useLayoutEffect } from 'react';\nimport { useStableEventHandler } from '../use-stable-event-handler';\nimport { ContainerQueryEntry } from '@cloudscape-design/component-toolkit';\nimport { convertResizeObserverEntry } from './utils';\n\ntype ElementReference = (() => Element | null) | React.RefObject<Element>;\n\n/**\n * Attaches resize-observer to the referenced element.\n *\n * Examples:\n * // With React reference\n * const ref = useRef(null)\n * useResizeObserver(ref, (entry) => setState(getWidth(entry)))\n *\n * // With ID reference\n * const getElement = useCallback(() => document.getElementById(id), [id])\n * useResizeObserver(getElement, (entry) => setState(getWidth(entry)))\n *\n * @param elementRef React reference or memoized getter for the target element\n * @param onObserve Function to fire when observation occurs\n */\nexport function useResizeObserver(elementRef: ElementReference, onObserve: (entry: ContainerQueryEntry) => void) {\n const stableOnObserve = useStableEventHandler(onObserve);\n\n // This effect provides a synchronous update required to prevent flakiness when initial state and first observed state are different.\n // Can potentially conflict with React concurrent mode: https://17.reactjs.org/docs/concurrent-mode-intro.html.\n // A possible solution would be to make consumers not render any content until the first (asynchronous) observation is available.\n useLayoutEffect(\n () => {\n const element = typeof elementRef === 'function' ? elementRef() : elementRef?.current;\n if (element) {\n onObserve(convertResizeObserverEntry(new ResizeObserverEntry(element)));\n }\n },\n // This effect is only needed for the first render to provide a synchronous update.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n []\n );\n\n useEffect(() => {\n const element = typeof elementRef === 'function' ? elementRef() : elementRef?.current;\n if (element) {\n let connected = true;\n const observer = new ResizeObserver(entries => {\n // Prevent observe notifications on already unmounted component.\n if (connected) {\n stableOnObserve(convertResizeObserverEntry(entries[0]));\n }\n });\n observer.observe(element);\n return () => {\n connected = false;\n observer.disconnect();\n };\n }\n }, [elementRef, stableOnObserve]);\n}\n"]}
@@ -1,4 +0,0 @@
1
- import { ResizeObserverEntry } from '@juggle/resize-observer';
2
- import { ContainerQueryEntry } from '@cloudscape-design/component-toolkit';
3
- export declare function convertResizeObserverEntry(entry: ResizeObserverEntry): ContainerQueryEntry;
4
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"lib/default/","sources":["internal/hooks/container-queries/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,mBAAmB,GAAG,mBAAmB,CAQ1F"}
@@ -1,10 +0,0 @@
1
- export function convertResizeObserverEntry(entry) {
2
- return {
3
- target: entry.target,
4
- contentBoxWidth: entry.contentBoxSize[0].inlineSize,
5
- contentBoxHeight: entry.contentBoxSize[0].blockSize,
6
- borderBoxWidth: entry.borderBoxSize[0].inlineSize,
7
- borderBoxHeight: entry.borderBoxSize[0].blockSize,
8
- };
9
- }
10
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"lib/default/","sources":["internal/hooks/container-queries/utils.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,0BAA0B,CAAC,KAA0B;IACnE,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,eAAe,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,UAAU;QACnD,gBAAgB,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;QACnD,cAAc,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU;QACjD,eAAe,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;KAClD,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ResizeObserverEntry } from '@juggle/resize-observer';\nimport { ContainerQueryEntry } from '@cloudscape-design/component-toolkit';\n\nexport function convertResizeObserverEntry(entry: ResizeObserverEntry): ContainerQueryEntry {\n return {\n target: entry.target,\n contentBoxWidth: entry.contentBoxSize[0].inlineSize,\n contentBoxHeight: entry.contentBoxSize[0].blockSize,\n borderBoxWidth: entry.borderBoxSize[0].inlineSize,\n borderBoxHeight: entry.borderBoxSize[0].blockSize,\n };\n}\n"]}
@@ -1,11 +0,0 @@
1
- type ValueCallback<T> = (value: T) => void;
2
- type CleanupCallback = () => void;
3
- export type UseSingleton<T> = (listener: ValueCallback<T>) => void;
4
- export declare function createSingletonHandler<T>(factory: (handler: ValueCallback<T>) => CleanupCallback): UseSingleton<T>;
5
- interface SingletonStateOptions<T> {
6
- factory: (handler: ValueCallback<T>) => CleanupCallback;
7
- initialState: T | (() => T);
8
- }
9
- export declare function createSingletonState<T>({ factory, initialState }: SingletonStateOptions<T>): () => T;
10
- export {};
11
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"lib/default/","sources":["internal/hooks/use-singleton-handler/index.ts"],"names":[],"mappings":"AAKA,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;AAC3C,KAAK,eAAe,GAAG,MAAM,IAAI,CAAC;AAClC,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AAEnE,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC,CA6BlH;AAED,UAAU,qBAAqB,CAAC,CAAC;IAC/B,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,eAAe,CAAC;IACxD,YAAY,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;CAC7B;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,qBAAqB,CAAC,CAAC,CAAC,WAW1F"}
@@ -1,45 +0,0 @@
1
- // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- // SPDX-License-Identifier: Apache-2.0
3
- import { useEffect, useState } from 'react';
4
- import { unstable_batchedUpdates } from 'react-dom';
5
- export function createSingletonHandler(factory) {
6
- const listeners = [];
7
- const callback = value => {
8
- unstable_batchedUpdates(() => {
9
- for (const listener of listeners) {
10
- listener(value);
11
- }
12
- });
13
- };
14
- let cleanup;
15
- return function useSingleton(listener) {
16
- useEffect(() => {
17
- if (listeners.length === 0) {
18
- cleanup = factory(callback);
19
- }
20
- listeners.push(listener);
21
- return () => {
22
- listeners.splice(listeners.indexOf(listener), 1);
23
- if (listeners.length === 0) {
24
- cleanup();
25
- cleanup = undefined;
26
- }
27
- };
28
- // register handlers only on mount
29
- // eslint-disable-next-line react-hooks/exhaustive-deps
30
- }, []);
31
- };
32
- }
33
- export function createSingletonState({ factory, initialState }) {
34
- const useSingleton = createSingletonHandler(factory);
35
- let value = initialState;
36
- return function useSingletonState() {
37
- const [state, setState] = useState(value);
38
- useSingleton(newValue => {
39
- value = newValue;
40
- setState(newValue);
41
- });
42
- return state;
43
- };
44
- }
45
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"lib/default/","sources":["internal/hooks/use-singleton-handler/index.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAMpD,MAAM,UAAU,sBAAsB,CAAI,OAAuD;IAC/F,MAAM,SAAS,GAA4B,EAAE,CAAC;IAC9C,MAAM,QAAQ,GAAqB,KAAK,CAAC,EAAE;QACzC,uBAAuB,CAAC,GAAG,EAAE;YAC3B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;gBAChC,QAAQ,CAAC,KAAK,CAAC,CAAC;aACjB;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,IAAI,OAAiC,CAAC;IAEtC,OAAO,SAAS,YAAY,CAAC,QAA0B;QACrD,SAAS,CAAC,GAAG,EAAE;YACb,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC1B,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;aAC7B;YACD,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEzB,OAAO,GAAG,EAAE;gBACV,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;gBACjD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC1B,OAAQ,EAAE,CAAC;oBACX,OAAO,GAAG,SAAS,CAAC;iBACrB;YACH,CAAC,CAAC;YACF,kCAAkC;YAClC,uDAAuD;QACzD,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AAOD,MAAM,UAAU,oBAAoB,CAAI,EAAE,OAAO,EAAE,YAAY,EAA4B;IACzF,MAAM,YAAY,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,KAAK,GAAG,YAAY,CAAC;IACzB,OAAO,SAAS,iBAAiB;QAC/B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAI,KAAK,CAAC,CAAC;QAC7C,YAAY,CAAC,QAAQ,CAAC,EAAE;YACtB,KAAK,GAAG,QAAQ,CAAC;YACjB,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { useEffect, useState } from 'react';\nimport { unstable_batchedUpdates } from 'react-dom';\n\ntype ValueCallback<T> = (value: T) => void;\ntype CleanupCallback = () => void;\nexport type UseSingleton<T> = (listener: ValueCallback<T>) => void;\n\nexport function createSingletonHandler<T>(factory: (handler: ValueCallback<T>) => CleanupCallback): UseSingleton<T> {\n const listeners: Array<ValueCallback<T>> = [];\n const callback: ValueCallback<T> = value => {\n unstable_batchedUpdates(() => {\n for (const listener of listeners) {\n listener(value);\n }\n });\n };\n let cleanup: (() => void) | undefined;\n\n return function useSingleton(listener: ValueCallback<T>) {\n useEffect(() => {\n if (listeners.length === 0) {\n cleanup = factory(callback);\n }\n listeners.push(listener);\n\n return () => {\n listeners.splice(listeners.indexOf(listener), 1);\n if (listeners.length === 0) {\n cleanup!();\n cleanup = undefined;\n }\n };\n // register handlers only on mount\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n };\n}\n\ninterface SingletonStateOptions<T> {\n factory: (handler: ValueCallback<T>) => CleanupCallback;\n initialState: T | (() => T); // useState signature\n}\n\nexport function createSingletonState<T>({ factory, initialState }: SingletonStateOptions<T>) {\n const useSingleton = createSingletonHandler(factory);\n let value = initialState;\n return function useSingletonState() {\n const [state, setState] = useState<T>(value);\n useSingleton(newValue => {\n value = newValue;\n setState(newValue);\n });\n return state;\n };\n}\n"]}
@@ -1,10 +0,0 @@
1
- /**
2
- * A callback that stays stable between renders even as the dependencies change.
3
- * Not a recommended React pattern, so it should be used sparingly and only if
4
- * the callback is an event handler (i.e. not used during rendering) and causing
5
- * clear performance issues.
6
- *
7
- * @see https://reactjs.org/docs/hooks-faq.html#how-to-read-an-often-changing-value-from-usecallback
8
- */
9
- export declare function useStableEventHandler<T extends (...args: any[]) => any>(fn: T): T;
10
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"lib/default/","sources":["internal/hooks/use-stable-event-handler/index.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAQjF"}
@@ -1,19 +0,0 @@
1
- // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- // SPDX-License-Identifier: Apache-2.0
3
- import { useCallback, useEffect, useRef } from 'react';
4
- /**
5
- * A callback that stays stable between renders even as the dependencies change.
6
- * Not a recommended React pattern, so it should be used sparingly and only if
7
- * the callback is an event handler (i.e. not used during rendering) and causing
8
- * clear performance issues.
9
- *
10
- * @see https://reactjs.org/docs/hooks-faq.html#how-to-read-an-often-changing-value-from-usecallback
11
- */
12
- export function useStableEventHandler(fn) {
13
- const ref = useRef();
14
- useEffect(() => {
15
- ref.current = fn;
16
- });
17
- return useCallback((...args) => { var _a; return (_a = ref.current) === null || _a === void 0 ? void 0 : _a.apply(undefined, args); }, []);
18
- }
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"lib/default/","sources":["internal/hooks/use-stable-event-handler/index.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAEvD;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAoC,EAAK;IAC5E,MAAM,GAAG,GAAG,MAAM,EAAK,CAAC;IAExB,SAAS,CAAC,GAAG,EAAE;QACb,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC,CAAC,GAAG,IAAW,EAAE,EAAE,WAAC,OAAA,MAAA,GAAG,CAAC,OAAO,0CAAE,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA,EAAA,EAAE,EAAE,CAAM,CAAC;AACvF,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { useCallback, useEffect, useRef } from 'react';\n\n/**\n * A callback that stays stable between renders even as the dependencies change.\n * Not a recommended React pattern, so it should be used sparingly and only if\n * the callback is an event handler (i.e. not used during rendering) and causing\n * clear performance issues.\n *\n * @see https://reactjs.org/docs/hooks-faq.html#how-to-read-an-often-changing-value-from-usecallback\n */\nexport function useStableEventHandler<T extends (...args: any[]) => any>(fn: T): T {\n const ref = useRef<T>();\n\n useEffect(() => {\n ref.current = fn;\n });\n\n return useCallback((...args: any[]) => ref.current?.apply(undefined, args), []) as T;\n}\n"]}