@cloudscape-design/components 3.0.1270 → 3.0.1271

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 (178) hide show
  1. package/app-layout/visual-refresh-toolbar/toolbar/index.js +1 -1
  2. package/app-layout/visual-refresh-toolbar/toolbar/index.js.map +1 -1
  3. package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.d.ts +1 -1
  4. package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.d.ts.map +1 -1
  5. package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.js +1 -2
  6. package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.js.map +1 -1
  7. package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/styles.css.js +6 -7
  8. package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/styles.scoped.css +20 -26
  9. package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/styles.selectors.js +6 -7
  10. package/button/styles.css.js +22 -22
  11. package/button/styles.scoped.css +78 -78
  12. package/button/styles.selectors.js +22 -22
  13. package/help-panel/styles.css.js +6 -6
  14. package/help-panel/styles.scoped.css +70 -70
  15. package/help-panel/styles.selectors.js +6 -6
  16. package/i18n/messages/all.all.js +1 -1
  17. package/i18n/messages/all.all.json +1 -1
  18. package/i18n/messages/all.ar.js +1 -1
  19. package/i18n/messages/all.ar.json +1 -1
  20. package/i18n/messages/all.de.js +1 -1
  21. package/i18n/messages/all.de.json +1 -1
  22. package/i18n/messages/all.en-GB.js +1 -1
  23. package/i18n/messages/all.en-GB.json +1 -1
  24. package/i18n/messages/all.en.js +1 -1
  25. package/i18n/messages/all.en.json +1 -1
  26. package/i18n/messages/all.es.js +1 -1
  27. package/i18n/messages/all.es.json +1 -1
  28. package/i18n/messages/all.fr.js +1 -1
  29. package/i18n/messages/all.fr.json +1 -1
  30. package/i18n/messages/all.id.js +1 -1
  31. package/i18n/messages/all.id.json +1 -1
  32. package/i18n/messages/all.it.js +1 -1
  33. package/i18n/messages/all.it.json +1 -1
  34. package/i18n/messages/all.ja.js +1 -1
  35. package/i18n/messages/all.ja.json +1 -1
  36. package/i18n/messages/all.ko.js +1 -1
  37. package/i18n/messages/all.ko.json +1 -1
  38. package/i18n/messages/all.pt-BR.js +1 -1
  39. package/i18n/messages/all.pt-BR.json +1 -1
  40. package/i18n/messages/all.tr.js +1 -1
  41. package/i18n/messages/all.tr.json +1 -1
  42. package/i18n/messages/all.zh-CN.js +1 -1
  43. package/i18n/messages/all.zh-CN.json +1 -1
  44. package/i18n/messages/all.zh-TW.js +1 -1
  45. package/i18n/messages/all.zh-TW.json +1 -1
  46. package/i18n/messages-types.d.ts +18 -0
  47. package/i18n/messages-types.d.ts.map +1 -1
  48. package/i18n/messages-types.js.map +1 -1
  49. package/internal/base-component/styles.scoped.css +63 -4
  50. package/internal/components/token-list/styles.css.js +10 -10
  51. package/internal/components/token-list/styles.scoped.css +25 -25
  52. package/internal/components/token-list/styles.selectors.js +10 -10
  53. package/internal/environment.js +2 -2
  54. package/internal/environment.json +2 -2
  55. package/internal/generated/styles/tokens.d.ts +17 -3
  56. package/internal/generated/styles/tokens.js +17 -3
  57. package/internal/generated/theming/index.cjs +417 -9
  58. package/internal/generated/theming/index.cjs.d.ts +189 -0
  59. package/internal/generated/theming/index.d.ts +189 -0
  60. package/internal/generated/theming/index.js +417 -9
  61. package/internal/keycode.d.ts +3 -1
  62. package/internal/keycode.d.ts.map +1 -1
  63. package/internal/keycode.js +5 -0
  64. package/internal/keycode.js.map +1 -1
  65. package/internal/manifest.json +1 -1
  66. package/internal/utils/handle-key.d.ts +22 -1
  67. package/internal/utils/handle-key.d.ts.map +1 -1
  68. package/internal/utils/handle-key.js +62 -4
  69. package/internal/utils/handle-key.js.map +1 -1
  70. package/link/styles.css.js +21 -21
  71. package/link/styles.scoped.css +81 -81
  72. package/link/styles.selectors.js +21 -21
  73. package/package.json +1 -1
  74. package/prompt-input/components/menu-dropdown.d.ts +33 -0
  75. package/prompt-input/components/menu-dropdown.d.ts.map +1 -0
  76. package/prompt-input/components/menu-dropdown.js +48 -0
  77. package/prompt-input/components/menu-dropdown.js.map +1 -0
  78. package/prompt-input/components/textarea-mode.d.ts +15 -0
  79. package/prompt-input/components/textarea-mode.d.ts.map +1 -0
  80. package/prompt-input/components/textarea-mode.js +8 -0
  81. package/prompt-input/components/textarea-mode.js.map +1 -0
  82. package/prompt-input/components/token-mode.d.ts +61 -0
  83. package/prompt-input/components/token-mode.d.ts.map +1 -0
  84. package/prompt-input/components/token-mode.js +37 -0
  85. package/prompt-input/components/token-mode.js.map +1 -0
  86. package/prompt-input/core/caret-controller.d.ts +73 -0
  87. package/prompt-input/core/caret-controller.d.ts.map +1 -0
  88. package/prompt-input/core/caret-controller.js +396 -0
  89. package/prompt-input/core/caret-controller.js.map +1 -0
  90. package/prompt-input/core/caret-spot-utils.d.ts +6 -0
  91. package/prompt-input/core/caret-spot-utils.d.ts.map +1 -0
  92. package/prompt-input/core/caret-spot-utils.js +52 -0
  93. package/prompt-input/core/caret-spot-utils.js.map +1 -0
  94. package/prompt-input/core/caret-utils.d.ts +25 -0
  95. package/prompt-input/core/caret-utils.d.ts.map +1 -0
  96. package/prompt-input/core/caret-utils.js +183 -0
  97. package/prompt-input/core/caret-utils.js.map +1 -0
  98. package/prompt-input/core/constants.d.ts +14 -0
  99. package/prompt-input/core/constants.d.ts.map +1 -0
  100. package/prompt-input/core/constants.js +18 -0
  101. package/prompt-input/core/constants.js.map +1 -0
  102. package/prompt-input/core/dom-utils.d.ts +60 -0
  103. package/prompt-input/core/dom-utils.d.ts.map +1 -0
  104. package/prompt-input/core/dom-utils.js +252 -0
  105. package/prompt-input/core/dom-utils.js.map +1 -0
  106. package/prompt-input/core/event-handlers.d.ts +68 -0
  107. package/prompt-input/core/event-handlers.d.ts.map +1 -0
  108. package/prompt-input/core/event-handlers.js +678 -0
  109. package/prompt-input/core/event-handlers.js.map +1 -0
  110. package/prompt-input/core/menu-state.d.ts +62 -0
  111. package/prompt-input/core/menu-state.d.ts.map +1 -0
  112. package/prompt-input/core/menu-state.js +168 -0
  113. package/prompt-input/core/menu-state.js.map +1 -0
  114. package/prompt-input/core/token-operations.d.ts +21 -0
  115. package/prompt-input/core/token-operations.d.ts.map +1 -0
  116. package/prompt-input/core/token-operations.js +273 -0
  117. package/prompt-input/core/token-operations.js.map +1 -0
  118. package/prompt-input/core/token-renderer.d.ts +26 -0
  119. package/prompt-input/core/token-renderer.d.ts.map +1 -0
  120. package/prompt-input/core/token-renderer.js +230 -0
  121. package/prompt-input/core/token-renderer.js.map +1 -0
  122. package/prompt-input/core/token-utils.d.ts +22 -0
  123. package/prompt-input/core/token-utils.d.ts.map +1 -0
  124. package/prompt-input/core/token-utils.js +262 -0
  125. package/prompt-input/core/token-utils.js.map +1 -0
  126. package/prompt-input/core/trigger-utils.d.ts +18 -0
  127. package/prompt-input/core/trigger-utils.d.ts.map +1 -0
  128. package/prompt-input/core/trigger-utils.js +174 -0
  129. package/prompt-input/core/trigger-utils.js.map +1 -0
  130. package/prompt-input/core/type-guards.d.ts +13 -0
  131. package/prompt-input/core/type-guards.d.ts.map +1 -0
  132. package/prompt-input/core/type-guards.js +36 -0
  133. package/prompt-input/core/type-guards.js.map +1 -0
  134. package/prompt-input/index.d.ts +1 -1
  135. package/prompt-input/index.d.ts.map +1 -1
  136. package/prompt-input/index.js.map +1 -1
  137. package/prompt-input/interfaces.d.ts +356 -7
  138. package/prompt-input/interfaces.d.ts.map +1 -1
  139. package/prompt-input/interfaces.js.map +1 -1
  140. package/prompt-input/internal.d.ts +1 -1
  141. package/prompt-input/internal.d.ts.map +1 -1
  142. package/prompt-input/internal.js +195 -61
  143. package/prompt-input/internal.js.map +1 -1
  144. package/prompt-input/styles.css.js +26 -17
  145. package/prompt-input/styles.scoped.css +152 -39
  146. package/prompt-input/styles.selectors.js +26 -17
  147. package/prompt-input/test-classes/styles.css.js +7 -6
  148. package/prompt-input/test-classes/styles.scoped.css +10 -6
  149. package/prompt-input/test-classes/styles.selectors.js +7 -6
  150. package/prompt-input/tokens/use-shortcuts.d.ts +37 -0
  151. package/prompt-input/tokens/use-shortcuts.d.ts.map +1 -0
  152. package/prompt-input/tokens/use-shortcuts.js +89 -0
  153. package/prompt-input/tokens/use-shortcuts.js.map +1 -0
  154. package/prompt-input/tokens/use-token-mode.d.ts +78 -0
  155. package/prompt-input/tokens/use-token-mode.d.ts.map +1 -0
  156. package/prompt-input/tokens/use-token-mode.js +817 -0
  157. package/prompt-input/tokens/use-token-mode.js.map +1 -0
  158. package/prompt-input/utils/insert-text-content-editable.d.ts +10 -0
  159. package/prompt-input/utils/insert-text-content-editable.d.ts.map +1 -0
  160. package/prompt-input/utils/insert-text-content-editable.js +133 -0
  161. package/prompt-input/utils/insert-text-content-editable.js.map +1 -0
  162. package/tabs/styles.css.js +30 -30
  163. package/tabs/styles.scoped.css +55 -55
  164. package/tabs/styles.selectors.js +30 -30
  165. package/test-utils/dom/hotspot/index.js +1 -2
  166. package/test-utils/dom/hotspot/index.js.map +1 -1
  167. package/test-utils/dom/prompt-input/index.d.ts +53 -1
  168. package/test-utils/dom/prompt-input/index.js +121 -13
  169. package/test-utils/dom/prompt-input/index.js.map +1 -1
  170. package/test-utils/dom/s3-resource-selector/index.js +2 -3
  171. package/test-utils/dom/s3-resource-selector/index.js.map +1 -1
  172. package/test-utils/selectors/hotspot/index.js +1 -2
  173. package/test-utils/selectors/hotspot/index.js.map +1 -1
  174. package/test-utils/selectors/prompt-input/index.d.ts +30 -0
  175. package/test-utils/selectors/prompt-input/index.js +53 -7
  176. package/test-utils/selectors/prompt-input/index.js.map +1 -1
  177. package/test-utils/selectors/s3-resource-selector/index.js +2 -3
  178. package/test-utils/selectors/s3-resource-selector/index.js.map +1 -1
@@ -0,0 +1,78 @@
1
+ import React from 'react';
2
+ import { useDropdownStatus } from '../../internal/components/dropdown-status';
3
+ import { CaretController } from '../core/caret-controller';
4
+ import { MenuItemsHandlers, MenuItemsState } from '../core/menu-state';
5
+ import { PortalContainer } from '../core/token-renderer';
6
+ import { PromptInputProps } from '../interfaces';
7
+ /** Mutable state shared between the editable tokens hook and event handlers. */
8
+ export interface EditableState {
9
+ skipNextZeroWidthUpdate: boolean;
10
+ menuSelectionTokenId: string | null;
11
+ }
12
+ export declare function createEditableState(): EditableState;
13
+ /** Configuration for the useTokenMode hook — all props needed to drive token-mode behavior. */
14
+ export interface UseTokenModeConfig {
15
+ editableElementRef: React.RefObject<HTMLDivElement>;
16
+ caretControllerRef: React.MutableRefObject<CaretController | null>;
17
+ tokens?: readonly PromptInputProps.InputToken[];
18
+ tokensToText?: (tokens: readonly PromptInputProps.InputToken[]) => string;
19
+ menus?: readonly PromptInputProps.MenuDefinition[];
20
+ disabled?: boolean;
21
+ readOnly?: boolean;
22
+ autoFocus?: boolean;
23
+ placeholder?: string;
24
+ invalid?: boolean;
25
+ warning?: boolean;
26
+ ariaLabel?: string;
27
+ ariaLabelledby?: string;
28
+ ariaDescribedby?: string;
29
+ ariaRequired?: boolean;
30
+ disableBrowserAutocorrect?: boolean;
31
+ spellcheck?: boolean;
32
+ onChange: (detail: {
33
+ value: string;
34
+ tokens: PromptInputProps.InputToken[];
35
+ }) => void;
36
+ onTriggerDetected?: (detail: PromptInputProps.TriggerDetectedDetail) => boolean;
37
+ onAction?: PromptInputProps['onAction'];
38
+ onBlur?: PromptInputProps['onBlur'];
39
+ onFocus?: PromptInputProps['onFocus'];
40
+ onKeyDown?: PromptInputProps['onKeyDown'];
41
+ onKeyUp?: PromptInputProps['onKeyUp'];
42
+ onMenuItemSelect?: PromptInputProps['onMenuItemSelect'];
43
+ onMenuFilter?: PromptInputProps['onMenuFilter'];
44
+ onMenuLoadItems?: PromptInputProps['onMenuLoadItems'];
45
+ i18nStrings?: PromptInputProps['i18nStrings'];
46
+ adjustInputHeight: () => void;
47
+ }
48
+ /** Return value of useTokenMode — state, handlers, and attributes consumed by TokenMode component. */
49
+ export interface UseTokenModeResult {
50
+ portalContainersRef: React.MutableRefObject<Map<string, PortalContainer>>;
51
+ /** Snapshot of portal containers for rendering portals. Updated after each renderTokensToDOM call. */
52
+ portalContainers: PortalContainer[];
53
+ /** Portal elements to render — renders Token components into DOM containers via createPortal. */
54
+ portals: React.ReactPortal[];
55
+ editableState: EditableState;
56
+ editableElementAttributes: React.HTMLAttributes<HTMLDivElement> & {
57
+ 'data-placeholder'?: string;
58
+ };
59
+ activeTriggerToken: PromptInputProps.TriggerToken | null;
60
+ activeMenu: PromptInputProps.MenuDefinition | null;
61
+ menuIsOpen: boolean;
62
+ menuFilterText: string;
63
+ triggerWrapperRef: React.MutableRefObject<HTMLElement | null>;
64
+ triggerWrapperReady: boolean;
65
+ menuListId: string;
66
+ menuFooterControlId: string;
67
+ highlightedMenuOptionId: string | undefined;
68
+ menuItemsState: MenuItemsState;
69
+ menuItemsHandlers: MenuItemsHandlers;
70
+ menuDropdownStatus: ReturnType<typeof useDropdownStatus> | null;
71
+ shouldRenderMenuDropdown: boolean;
72
+ handleInput: () => void;
73
+ handleLoadMore: () => void;
74
+ tokenOperationAnnouncement: string;
75
+ markTokensAsSent: (tokens: readonly PromptInputProps.InputToken[]) => void;
76
+ }
77
+ /** Encapsulates all token-mode logic: trigger detection, menu state, keyboard handling, and rendering. */
78
+ export declare function useTokenMode(config: UseTokenModeConfig): UseTokenModeResult;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-token-mode.d.ts","sourceRoot":"","sources":["../../../../src/prompt-input/tokens/use-token-mode.tsx"],"names":[],"mappings":"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"}