@cloudscape-design/components-themeable 3.0.1340 → 3.0.1342

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 (212) hide show
  1. package/lib/internal/manifest.json +1 -1
  2. package/lib/internal/scss/expandable-section/styles.scss +142 -0
  3. package/lib/internal/scss/input/styles.scss +228 -37
  4. package/lib/internal/scss/internal/components/chart-legend/styles.scss +1 -0
  5. package/lib/internal/scss/internal/generated/custom-css-properties/index.scss +1 -1
  6. package/lib/internal/scss/multiselect/styles.scss +14 -0
  7. package/lib/internal/scss/pagination/styles.scss +9 -2
  8. package/lib/internal/scss/pagination/test-classes/styles.scss +8 -0
  9. package/lib/internal/scss/select/styles.scss +14 -1
  10. package/lib/internal/scss/side-navigation/styles.scss +62 -24
  11. package/lib/internal/scss/textarea/styles.scss +21 -2
  12. package/lib/internal/template/button-dropdown/filter.d.ts +1 -1
  13. package/lib/internal/template/button-dropdown/filter.d.ts.map +1 -1
  14. package/lib/internal/template/button-dropdown/internal.d.ts.map +1 -1
  15. package/lib/internal/template/button-dropdown/internal.js +2 -2
  16. package/lib/internal/template/button-dropdown/internal.js.map +1 -1
  17. package/lib/internal/template/button-dropdown/utils/use-button-dropdown.d.ts +1 -0
  18. package/lib/internal/template/button-dropdown/utils/use-button-dropdown.d.ts.map +1 -1
  19. package/lib/internal/template/button-dropdown/utils/use-button-dropdown.js +9 -0
  20. package/lib/internal/template/button-dropdown/utils/use-button-dropdown.js.map +1 -1
  21. package/lib/internal/template/expandable-section/expandable-section-header.d.ts +2 -1
  22. package/lib/internal/template/expandable-section/expandable-section-header.d.ts.map +1 -1
  23. package/lib/internal/template/expandable-section/expandable-section-header.js +57 -13
  24. package/lib/internal/template/expandable-section/expandable-section-header.js.map +1 -1
  25. package/lib/internal/template/expandable-section/interfaces.d.ts +1 -1
  26. package/lib/internal/template/expandable-section/interfaces.js.map +1 -1
  27. package/lib/internal/template/expandable-section/internal.d.ts +14 -1
  28. package/lib/internal/template/expandable-section/internal.d.ts.map +1 -1
  29. package/lib/internal/template/expandable-section/internal.js +3 -3
  30. package/lib/internal/template/expandable-section/internal.js.map +1 -1
  31. package/lib/internal/template/expandable-section/styles.css.js +42 -35
  32. package/lib/internal/template/expandable-section/styles.scoped.css +177 -69
  33. package/lib/internal/template/expandable-section/styles.selectors.js +42 -35
  34. package/lib/internal/template/i18n/context.d.ts +16 -4
  35. package/lib/internal/template/i18n/context.d.ts.map +1 -1
  36. package/lib/internal/template/i18n/context.js +10 -4
  37. package/lib/internal/template/i18n/context.js.map +1 -1
  38. package/lib/internal/template/i18n/index.d.ts +2 -0
  39. package/lib/internal/template/i18n/index.d.ts.map +1 -1
  40. package/lib/internal/template/i18n/index.js +1 -0
  41. package/lib/internal/template/i18n/index.js.map +1 -1
  42. package/lib/internal/template/i18n/messages/all.all.js +1 -1
  43. package/lib/internal/template/i18n/messages/all.all.json +1 -1
  44. package/lib/internal/template/i18n/messages/all.ar.js +1 -1
  45. package/lib/internal/template/i18n/messages/all.ar.json +1 -1
  46. package/lib/internal/template/i18n/messages/all.de.js +1 -1
  47. package/lib/internal/template/i18n/messages/all.de.json +1 -1
  48. package/lib/internal/template/i18n/messages/all.en-GB.js +1 -1
  49. package/lib/internal/template/i18n/messages/all.en-GB.json +1 -1
  50. package/lib/internal/template/i18n/messages/all.en.js +1 -1
  51. package/lib/internal/template/i18n/messages/all.en.json +1 -1
  52. package/lib/internal/template/i18n/messages/all.es.js +1 -1
  53. package/lib/internal/template/i18n/messages/all.es.json +1 -1
  54. package/lib/internal/template/i18n/messages/all.fr.js +1 -1
  55. package/lib/internal/template/i18n/messages/all.fr.json +1 -1
  56. package/lib/internal/template/i18n/messages/all.id.js +1 -1
  57. package/lib/internal/template/i18n/messages/all.id.json +1 -1
  58. package/lib/internal/template/i18n/messages/all.it.js +1 -1
  59. package/lib/internal/template/i18n/messages/all.it.json +1 -1
  60. package/lib/internal/template/i18n/messages/all.ja.js +1 -1
  61. package/lib/internal/template/i18n/messages/all.ja.json +1 -1
  62. package/lib/internal/template/i18n/messages/all.ko.js +1 -1
  63. package/lib/internal/template/i18n/messages/all.ko.json +1 -1
  64. package/lib/internal/template/i18n/messages/all.pt-BR.js +1 -1
  65. package/lib/internal/template/i18n/messages/all.pt-BR.json +1 -1
  66. package/lib/internal/template/i18n/messages/all.tr.js +1 -1
  67. package/lib/internal/template/i18n/messages/all.tr.json +1 -1
  68. package/lib/internal/template/i18n/messages/all.zh-CN.js +1 -1
  69. package/lib/internal/template/i18n/messages/all.zh-CN.json +1 -1
  70. package/lib/internal/template/i18n/messages/all.zh-TW.js +1 -1
  71. package/lib/internal/template/i18n/messages/all.zh-TW.json +1 -1
  72. package/lib/internal/template/i18n/messages-types.d.ts +5 -0
  73. package/lib/internal/template/i18n/messages-types.d.ts.map +1 -1
  74. package/lib/internal/template/i18n/messages-types.js.map +1 -1
  75. package/lib/internal/template/input/index.d.ts.map +1 -1
  76. package/lib/internal/template/input/index.js +4 -2
  77. package/lib/internal/template/input/index.js.map +1 -1
  78. package/lib/internal/template/input/interfaces.d.ts +9 -0
  79. package/lib/internal/template/input/interfaces.d.ts.map +1 -1
  80. package/lib/internal/template/input/interfaces.js.map +1 -1
  81. package/lib/internal/template/input/internal.d.ts +5 -5
  82. package/lib/internal/template/input/internal.d.ts.map +1 -1
  83. package/lib/internal/template/input/internal.js +60 -24
  84. package/lib/internal/template/input/internal.js.map +1 -1
  85. package/lib/internal/template/input/styles.css.js +28 -18
  86. package/lib/internal/template/input/styles.scoped.css +213 -52
  87. package/lib/internal/template/input/styles.selectors.js +28 -18
  88. package/lib/internal/template/input/utils.js +3 -3
  89. package/lib/internal/template/input/utils.js.map +1 -1
  90. package/lib/internal/template/internal/base-component/styles.scoped.css +297 -289
  91. package/lib/internal/template/internal/components/cartesian-chart/styles.css.js +28 -28
  92. package/lib/internal/template/internal/components/cartesian-chart/styles.scoped.css +35 -35
  93. package/lib/internal/template/internal/components/cartesian-chart/styles.selectors.js +28 -28
  94. package/lib/internal/template/internal/components/chart-legend/styles.css.js +6 -6
  95. package/lib/internal/template/internal/components/chart-legend/styles.scoped.css +16 -14
  96. package/lib/internal/template/internal/components/chart-legend/styles.selectors.js +6 -6
  97. package/lib/internal/template/internal/environment.js +2 -2
  98. package/lib/internal/template/internal/environment.json +2 -2
  99. package/lib/internal/template/internal/generated/styles/tokens.d.ts +1 -0
  100. package/lib/internal/template/internal/generated/styles/tokens.js +1 -0
  101. package/lib/internal/template/internal/generated/theming/index.cjs +31 -0
  102. package/lib/internal/template/internal/generated/theming/index.js +31 -0
  103. package/lib/internal/template/multiselect/embedded.d.ts +1 -1
  104. package/lib/internal/template/multiselect/index.d.ts.map +1 -1
  105. package/lib/internal/template/multiselect/index.js +4 -0
  106. package/lib/internal/template/multiselect/index.js.map +1 -1
  107. package/lib/internal/template/multiselect/interfaces.d.ts +8 -1
  108. package/lib/internal/template/multiselect/interfaces.d.ts.map +1 -1
  109. package/lib/internal/template/multiselect/interfaces.js.map +1 -1
  110. package/lib/internal/template/multiselect/internal.d.ts.map +1 -1
  111. package/lib/internal/template/multiselect/internal.js +22 -2
  112. package/lib/internal/template/multiselect/internal.js.map +1 -1
  113. package/lib/internal/template/multiselect/styles.css.js +5 -3
  114. package/lib/internal/template/multiselect/styles.scoped.css +13 -3
  115. package/lib/internal/template/multiselect/styles.selectors.js +5 -3
  116. package/lib/internal/template/multiselect/use-multiselect.d.ts +3 -2
  117. package/lib/internal/template/multiselect/use-multiselect.d.ts.map +1 -1
  118. package/lib/internal/template/multiselect/use-multiselect.js +5 -3
  119. package/lib/internal/template/multiselect/use-multiselect.js.map +1 -1
  120. package/lib/internal/template/pagination/index.d.ts.map +1 -1
  121. package/lib/internal/template/pagination/index.js +3 -3
  122. package/lib/internal/template/pagination/index.js.map +1 -1
  123. package/lib/internal/template/pagination/interfaces.d.ts +19 -3
  124. package/lib/internal/template/pagination/interfaces.d.ts.map +1 -1
  125. package/lib/internal/template/pagination/interfaces.js.map +1 -1
  126. package/lib/internal/template/pagination/internal.d.ts.map +1 -1
  127. package/lib/internal/template/pagination/internal.js +18 -6
  128. package/lib/internal/template/pagination/internal.js.map +1 -1
  129. package/lib/internal/template/pagination/styles.css.js +12 -11
  130. package/lib/internal/template/pagination/styles.scoped.css +34 -25
  131. package/lib/internal/template/pagination/styles.selectors.js +12 -11
  132. package/lib/internal/template/pagination/test-classes/styles.css.js +6 -0
  133. package/lib/internal/template/pagination/test-classes/styles.scoped.css +7 -0
  134. package/lib/internal/template/pagination/test-classes/styles.selectors.js +7 -0
  135. package/lib/internal/template/prompt-input/internal.d.ts.map +1 -1
  136. package/lib/internal/template/prompt-input/internal.js +14 -2
  137. package/lib/internal/template/prompt-input/internal.js.map +1 -1
  138. package/lib/internal/template/select/index.d.ts.map +1 -1
  139. package/lib/internal/template/select/index.js +4 -0
  140. package/lib/internal/template/select/index.js.map +1 -1
  141. package/lib/internal/template/select/interfaces.d.ts +39 -0
  142. package/lib/internal/template/select/interfaces.d.ts.map +1 -1
  143. package/lib/internal/template/select/interfaces.js.map +1 -1
  144. package/lib/internal/template/select/internal.d.ts.map +1 -1
  145. package/lib/internal/template/select/internal.js +20 -4
  146. package/lib/internal/template/select/internal.js.map +1 -1
  147. package/lib/internal/template/select/parts/filter.d.ts +1 -1
  148. package/lib/internal/template/select/parts/filter.d.ts.map +1 -1
  149. package/lib/internal/template/select/styles.css.js +3 -1
  150. package/lib/internal/template/select/styles.scoped.css +11 -1
  151. package/lib/internal/template/select/styles.selectors.js +3 -1
  152. package/lib/internal/template/select/utils/dropdown-customization.d.ts +20 -0
  153. package/lib/internal/template/select/utils/dropdown-customization.d.ts.map +1 -0
  154. package/lib/internal/template/select/utils/dropdown-customization.js +22 -0
  155. package/lib/internal/template/select/utils/dropdown-customization.js.map +1 -0
  156. package/lib/internal/template/select/utils/use-select.d.ts +4 -1
  157. package/lib/internal/template/select/utils/use-select.d.ts.map +1 -1
  158. package/lib/internal/template/select/utils/use-select.js +21 -4
  159. package/lib/internal/template/select/utils/use-select.js.map +1 -1
  160. package/lib/internal/template/side-navigation/parts.d.ts.map +1 -1
  161. package/lib/internal/template/side-navigation/parts.js +3 -2
  162. package/lib/internal/template/side-navigation/parts.js.map +1 -1
  163. package/lib/internal/template/side-navigation/styles.css.js +50 -48
  164. package/lib/internal/template/side-navigation/styles.scoped.css +106 -93
  165. package/lib/internal/template/side-navigation/styles.selectors.js +50 -48
  166. package/lib/internal/template/status-indicator/interfaces.d.ts +1 -1
  167. package/lib/internal/template/status-indicator/interfaces.d.ts.map +1 -1
  168. package/lib/internal/template/status-indicator/interfaces.js.map +1 -1
  169. package/lib/internal/template/status-indicator/internal.d.ts +2 -6
  170. package/lib/internal/template/status-indicator/internal.d.ts.map +1 -1
  171. package/lib/internal/template/status-indicator/internal.js.map +1 -1
  172. package/lib/internal/template/steps/interfaces.d.ts +2 -2
  173. package/lib/internal/template/steps/interfaces.d.ts.map +1 -1
  174. package/lib/internal/template/steps/interfaces.js.map +1 -1
  175. package/lib/internal/template/test-utils/dom/input/index.d.ts +2 -0
  176. package/lib/internal/template/test-utils/dom/input/index.js +6 -0
  177. package/lib/internal/template/test-utils/dom/input/index.js.map +1 -1
  178. package/lib/internal/template/test-utils/dom/multiselect/index.d.ts +16 -0
  179. package/lib/internal/template/test-utils/dom/multiselect/index.js +16 -0
  180. package/lib/internal/template/test-utils/dom/multiselect/index.js.map +1 -1
  181. package/lib/internal/template/test-utils/dom/pagination/index.d.ts +5 -1
  182. package/lib/internal/template/test-utils/dom/pagination/index.js +7 -0
  183. package/lib/internal/template/test-utils/dom/pagination/index.js.map +1 -1
  184. package/lib/internal/template/test-utils/dom/select/index.d.ts +16 -0
  185. package/lib/internal/template/test-utils/dom/select/index.js +16 -0
  186. package/lib/internal/template/test-utils/dom/select/index.js.map +1 -1
  187. package/lib/internal/template/test-utils/selectors/input/index.d.ts +2 -0
  188. package/lib/internal/template/test-utils/selectors/input/index.js +6 -0
  189. package/lib/internal/template/test-utils/selectors/input/index.js.map +1 -1
  190. package/lib/internal/template/test-utils/selectors/multiselect/index.d.ts +16 -0
  191. package/lib/internal/template/test-utils/selectors/multiselect/index.js +20 -0
  192. package/lib/internal/template/test-utils/selectors/multiselect/index.js.map +1 -1
  193. package/lib/internal/template/test-utils/selectors/pagination/index.d.ts +5 -1
  194. package/lib/internal/template/test-utils/selectors/pagination/index.js +7 -0
  195. package/lib/internal/template/test-utils/selectors/pagination/index.js.map +1 -1
  196. package/lib/internal/template/test-utils/selectors/select/index.d.ts +16 -0
  197. package/lib/internal/template/test-utils/selectors/select/index.js +20 -0
  198. package/lib/internal/template/test-utils/selectors/select/index.js.map +1 -1
  199. package/lib/internal/template/textarea/index.d.ts.map +1 -1
  200. package/lib/internal/template/textarea/index.js +11 -3
  201. package/lib/internal/template/textarea/index.js.map +1 -1
  202. package/lib/internal/template/textarea/interfaces.d.ts +12 -0
  203. package/lib/internal/template/textarea/interfaces.d.ts.map +1 -1
  204. package/lib/internal/template/textarea/interfaces.js.map +1 -1
  205. package/lib/internal/template/textarea/styles.css.js +9 -5
  206. package/lib/internal/template/textarea/styles.scoped.css +26 -14
  207. package/lib/internal/template/textarea/styles.selectors.js +9 -5
  208. package/package.json +1 -1
  209. package/lib/internal/template/status-indicator/internal-interfaces.d.ts +0 -3
  210. package/lib/internal/template/status-indicator/internal-interfaces.d.ts.map +0 -1
  211. package/lib/internal/template/status-indicator/internal-interfaces.js +0 -2
  212. package/lib/internal/template/status-indicator/internal-interfaces.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/i18n/context.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AAEtC,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAgB/D,MAAM,CAAC,MAAM,SAAS,GAAG,8BAA8B,CAAC;AAExD,MAAM,mBAAmB,GAA6B;IACpD,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,CAAI,UAAkB,EAAE,UAAkB,EAAE,IAAY,EAAE,QAAW,EAAE,EAAE,CAAC,QAAQ;CAC3F,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,mBAAmB,CAAC,aAAa,CACvF,KAAK,EACL,qBAAqB,CACtB,CAAC;AAEF,MAAM,UAAU,SAAS;;IACvB,OAAO,CAAC,MAAA,UAAU,CAAC,mBAAmB,CAAC,mCAAI,mBAAmB,CAAC,CAAC,MAAM,CAAC;AACzE,CAAC;AA4BD,MAAM,UAAU,eAAe,CAC7B,aAA4B;;IAE5B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAA,UAAU,CAAC,mBAAmB,CAAC,mCAAI,mBAAmB,CAAC;IAC1E,OAAO,CACL,GAAe,EACf,QAAmB,EACnB,aAAuF,EACvF,EAAE;QACF,OAAO,MAAM,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IACxE,CAAC,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport React, { useContext } from 'react';\n\nimport { awsuiPluginsInternal } from '../internal/plugins/api';\nimport { I18nFormatArgTypes } from './messages-types';\n\nexport type CustomHandler<ReturnValue, FormatFnArgs> = (formatFn: (args: FormatFnArgs) => string) => ReturnValue;\n\nexport interface FormatFunction {\n (namespace: string, component: string, key: string, provided: string): string;\n (namespace: string, component: string, key: string, provided: string | undefined): string | undefined;\n <T, A = unknown>(namespace: string, component: string, key: string, provided: T, handler?: CustomHandler<T, A>): T;\n}\n\ninterface InternalI18nContextProps {\n locale: string | null;\n format: FormatFunction;\n}\n\nexport const namespace = 'cloudscape-design-components';\n\nconst defaultContextValue: InternalI18nContextProps = {\n locale: null,\n format: <T>(_namespace: string, _component: string, _key: string, provided: T) => provided,\n};\n\nexport const InternalI18nContext = awsuiPluginsInternal.sharedReactContexts.createContext<InternalI18nContextProps>(\n React,\n 'InternalI18nContext'\n);\n\nexport function useLocale(): string | null {\n return (useContext(InternalI18nContext) ?? defaultContextValue).locale;\n}\n\n/**\n * Utility to get \"keyof T\" but exclude number or symbol types.\n * TypeScript allows those types because JS implicitly casts them to string.\n */\ntype StringKeyOf<T> = Extract<keyof T, string>;\n\nexport interface ComponentFormatFunction<ComponentName extends StringKeyOf<I18nFormatArgTypes>> {\n <MessageKey extends StringKeyOf<I18nFormatArgTypes[ComponentName]>>(\n key: MessageKey,\n provided: string,\n handler?: CustomHandler<string, I18nFormatArgTypes[ComponentName][MessageKey]>\n ): string;\n <MessageKey extends StringKeyOf<I18nFormatArgTypes[ComponentName]>>(\n key: MessageKey,\n provided: string | undefined,\n handler?: CustomHandler<string, I18nFormatArgTypes[ComponentName][MessageKey]>\n ): string | undefined;\n <MessageKey extends StringKeyOf<I18nFormatArgTypes[ComponentName]>, ReturnValue>(\n key: MessageKey,\n provided: ReturnValue,\n handler: I18nFormatArgTypes[ComponentName][MessageKey] extends never\n ? never\n : CustomHandler<ReturnValue, I18nFormatArgTypes[ComponentName][MessageKey]>\n ): ReturnValue;\n}\n\nexport function useInternalI18n<ComponentName extends StringKeyOf<I18nFormatArgTypes>>(\n componentName: ComponentName\n): ComponentFormatFunction<ComponentName> {\n const { format } = useContext(InternalI18nContext) ?? defaultContextValue;\n return <MessageKey extends StringKeyOf<I18nFormatArgTypes[ComponentName]>, ValueType>(\n key: MessageKey,\n provided: ValueType,\n customHandler?: CustomHandler<ValueType, I18nFormatArgTypes[ComponentName][MessageKey]>\n ) => {\n return format(namespace, componentName, key, provided, customHandler);\n };\n}\n"]}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/i18n/context.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AAEtC,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAgB/D,MAAM,CAAC,MAAM,SAAS,GAAG,8BAA8B,CAAC;AAExD,MAAM,mBAAmB,GAA6B;IACpD,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,CAAI,UAAkB,EAAE,UAAkB,EAAE,IAAY,EAAE,QAAW,EAAE,EAAE,CAAC,QAAQ;CAC3F,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,mBAAmB,CAAC,aAAa,CACvF,KAAK,EACL,qBAAqB,CACtB,CAAC;AAEF,MAAM,UAAU,SAAS;;IACvB,OAAO,CAAC,MAAA,UAAU,CAAC,mBAAmB,CAAC,mCAAI,mBAAmB,CAAC,CAAC,MAAM,CAAC;AACzE,CAAC;AA+CD;;;GAGG;AACH,MAAM,UAAU,aAAa,CAG3B,SAAiB,EAAE,aAA4B;;IAC/C,MAAM,EAAE,MAAM,EAAE,GAAG,MAAA,UAAU,CAAC,mBAAmB,CAAC,mCAAI,mBAAmB,CAAC;IAC1E,MAAM,cAAc,GAAG,CACrB,GAAe,EACf,QAAmB,EACnB,aAAmF,EACnF,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IACpE,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,aAA4B;IAE5B,OAAO,aAAa,CAAoC,SAAS,EAAE,aAAa,CAAC,CAAC;AACpF,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport React, { useContext } from 'react';\n\nimport { awsuiPluginsInternal } from '../internal/plugins/api';\nimport { I18nFormatArgTypes } from './messages-types';\n\nexport type CustomHandler<ReturnValue, FormatFnArgs> = (formatFn: (args: FormatFnArgs) => string) => ReturnValue;\n\nexport interface FormatFunction {\n (namespace: string, component: string, key: string, provided: string): string;\n (namespace: string, component: string, key: string, provided: string | undefined): string | undefined;\n <T, A = unknown>(namespace: string, component: string, key: string, provided: T, handler?: CustomHandler<T, A>): T;\n}\n\ninterface InternalI18nContextProps {\n locale: string | null;\n format: FormatFunction;\n}\n\nexport const namespace = 'cloudscape-design-components';\n\nconst defaultContextValue: InternalI18nContextProps = {\n locale: null,\n format: <T>(_namespace: string, _component: string, _key: string, provided: T) => provided,\n};\n\nexport const InternalI18nContext = awsuiPluginsInternal.sharedReactContexts.createContext<InternalI18nContextProps>(\n React,\n 'InternalI18nContext'\n);\n\nexport function useLocale(): string | null {\n return (useContext(InternalI18nContext) ?? defaultContextValue).locale;\n}\n\n/**\n * Utility to get \"keyof T\" but exclude number or symbol types.\n * TypeScript allows those types because JS implicitly casts them to string.\n */\ntype StringKeyOf<T> = Extract<keyof T, string>;\n\nexport interface GenericI18nFormatArgTypes {\n [componentName: string]: {\n [messageKey: string]: Record<string, string | number> | never;\n };\n}\n\nexport interface GenericI18nFormatFunction<\n NamespaceTypes = GenericI18nFormatArgTypes,\n ComponentName extends StringKeyOf<NamespaceTypes> = StringKeyOf<NamespaceTypes>,\n> {\n <MessageKey extends StringKeyOf<NamespaceTypes[ComponentName]>>(\n key: MessageKey,\n provided: string,\n handler?: CustomHandler<string, NamespaceTypes[ComponentName][MessageKey]>\n ): string;\n <MessageKey extends StringKeyOf<NamespaceTypes[ComponentName]>>(\n key: MessageKey,\n provided: string | undefined,\n handler?: CustomHandler<string | undefined, NamespaceTypes[ComponentName][MessageKey]>\n ): string | undefined;\n <MessageKey extends StringKeyOf<NamespaceTypes[ComponentName]>, ReturnValue>(\n key: MessageKey,\n provided: ReturnValue,\n handler: NamespaceTypes[ComponentName][MessageKey] extends never\n ? never\n : CustomHandler<ReturnValue, NamespaceTypes[ComponentName][MessageKey]>\n ): ReturnValue;\n}\n\nexport type I18nFormatFunction<\n NamespaceTypes = GenericI18nFormatArgTypes,\n ComponentName extends StringKeyOf<NamespaceTypes> = StringKeyOf<NamespaceTypes>,\n> = GenericI18nFormatFunction<NamespaceTypes, ComponentName>;\n\nexport type ComponentFormatFunction<ComponentName extends StringKeyOf<I18nFormatArgTypes>> = I18nFormatFunction<\n I18nFormatArgTypes,\n ComponentName\n>;\n\n/**\n * Public hook for third-party component libraries to resolve translations\n * through I18nProvider under their own namespace.\n */\nexport function useCustomI18n<\n NamespaceTypes = GenericI18nFormatArgTypes,\n ComponentName extends StringKeyOf<NamespaceTypes> = StringKeyOf<NamespaceTypes>,\n>(namespace: string, componentName: ComponentName): I18nFormatFunction<NamespaceTypes, ComponentName> {\n const { format } = useContext(InternalI18nContext) ?? defaultContextValue;\n const formatFunction = <MessageKey extends StringKeyOf<NamespaceTypes[ComponentName]>, ValueType>(\n key: MessageKey,\n provided: ValueType,\n customHandler?: CustomHandler<ValueType, NamespaceTypes[ComponentName][MessageKey]>\n ) => format(namespace, componentName, key, provided, customHandler);\n return formatFunction;\n}\n\nexport function useInternalI18n<ComponentName extends StringKeyOf<I18nFormatArgTypes>>(\n componentName: ComponentName\n): ComponentFormatFunction<ComponentName> {\n return useCustomI18n<I18nFormatArgTypes, ComponentName>(namespace, componentName);\n}\n"]}
@@ -1,3 +1,5 @@
1
1
  export { I18nProvider as default, I18nProvider, I18nProviderProps } from './provider';
2
2
  export { importMessages } from './dynamic';
3
+ export { useCustomI18n } from './context';
4
+ export type { I18nFormatFunction } from './context';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/i18n/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,IAAI,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/i18n/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,IAAI,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC"}
@@ -3,4 +3,5 @@
3
3
  'use client';
4
4
  export { I18nProvider as default, I18nProvider } from './provider';
5
5
  export { importMessages } from './dynamic';
6
+ export { useCustomI18n } from './context';
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/i18n/index.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AAEtC,YAAY,CAAC;AACb,OAAO,EAAE,YAAY,IAAI,OAAO,EAAE,YAAY,EAAqB,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\n'use client';\nexport { I18nProvider as default, I18nProvider, I18nProviderProps } from './provider';\nexport { importMessages } from './dynamic';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/i18n/index.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AAEtC,YAAY,CAAC;AACb,OAAO,EAAE,YAAY,IAAI,OAAO,EAAE,YAAY,EAAqB,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\n'use client';\nexport { I18nProvider as default, I18nProvider, I18nProviderProps } from './provider';\nexport { importMessages } from './dynamic';\nexport { useCustomI18n } from './context';\nexport type { I18nFormatFunction } from './context';\n"]}