@cimpress-ui/react 1.14.0 → 1.14.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commonjs/components/breadcrumbs/breadcrumbs.d.ts.map +1 -1
- package/dist/commonjs/components/breadcrumbs/breadcrumbs.js.map +1 -1
- package/dist/commonjs/components/button/icon-link-button.d.ts.map +1 -1
- package/dist/commonjs/components/button/icon-link-button.js.map +1 -1
- package/dist/commonjs/components/button/link-button.d.ts.map +1 -1
- package/dist/commonjs/components/button/link-button.js.map +1 -1
- package/dist/commonjs/components/button/types.d.ts.map +1 -1
- package/dist/commonjs/components/button/types.js.map +1 -1
- package/dist/commonjs/components/checkbox/checkbox-group.d.ts.map +1 -1
- package/dist/commonjs/components/checkbox/checkbox-group.js.map +1 -1
- package/dist/commonjs/components/checkbox/checkbox.d.ts.map +1 -1
- package/dist/commonjs/components/checkbox/checkbox.js.map +1 -1
- package/dist/commonjs/components/combo-box/combo-box.d.ts.map +1 -1
- package/dist/commonjs/components/combo-box/combo-box.js +2 -2
- package/dist/commonjs/components/combo-box/combo-box.js.map +1 -1
- package/dist/commonjs/components/copy/copy-button.d.ts.map +1 -1
- package/dist/commonjs/components/copy/copy-button.js.map +1 -1
- package/dist/commonjs/components/copy/copy-inline.d.ts.map +1 -1
- package/dist/commonjs/components/copy/copy-inline.js.map +1 -1
- package/dist/commonjs/components/date-picker/date-picker-calendar.js.map +1 -1
- package/dist/commonjs/components/date-picker/date-picker.d.ts.map +1 -1
- package/dist/commonjs/components/date-picker/date-picker.js.map +1 -1
- package/dist/commonjs/components/disclosure/disclosure-group.d.ts.map +1 -1
- package/dist/commonjs/components/disclosure/disclosure-group.js.map +1 -1
- package/dist/commonjs/components/disclosure/disclosure.d.ts.map +1 -1
- package/dist/commonjs/components/disclosure/disclosure.js.map +1 -1
- package/dist/commonjs/components/file-picker/file-picker.d.ts.map +1 -1
- package/dist/commonjs/components/file-picker/file-picker.js.map +1 -1
- package/dist/commonjs/components/file-trigger.d.ts.map +1 -1
- package/dist/commonjs/components/file-trigger.js.map +1 -1
- package/dist/commonjs/components/form/form.d.ts.map +1 -1
- package/dist/commonjs/components/form/form.js.map +1 -1
- package/dist/commonjs/components/internal/collapsible-list/collapsible-list.js.map +1 -1
- package/dist/commonjs/components/internal/x-button/x-button.js.map +1 -1
- package/dist/commonjs/components/link-tabs/link-tabs.d.ts.map +1 -1
- package/dist/commonjs/components/link-tabs/link-tabs.js.map +1 -1
- package/dist/commonjs/components/menu/menu.d.ts.map +1 -1
- package/dist/commonjs/components/menu/menu.js.map +1 -1
- package/dist/commonjs/components/number-field/number-field.d.ts.map +1 -1
- package/dist/commonjs/components/number-field/number-field.js.map +1 -1
- package/dist/commonjs/components/radio/radio-group.d.ts.map +1 -1
- package/dist/commonjs/components/radio/radio-group.js.map +1 -1
- package/dist/commonjs/components/radio/radio.d.ts.map +1 -1
- package/dist/commonjs/components/radio/radio.js.map +1 -1
- package/dist/commonjs/components/select/select.d.ts.map +1 -1
- package/dist/commonjs/components/select/select.js +2 -2
- package/dist/commonjs/components/select/select.js.map +1 -1
- package/dist/commonjs/components/slider/slider.d.ts.map +1 -1
- package/dist/commonjs/components/slider/slider.js +0 -2
- package/dist/commonjs/components/slider/slider.js.map +1 -1
- package/dist/commonjs/components/stepper/stepper-item.js +0 -2
- package/dist/commonjs/components/stepper/stepper-item.js.map +1 -1
- package/dist/commonjs/components/tabs/tabs.d.ts.map +1 -1
- package/dist/commonjs/components/tabs/tabs.js.map +1 -1
- package/dist/commonjs/components/tag/tag-group.d.ts.map +1 -1
- package/dist/commonjs/components/tag/tag-group.js.map +1 -1
- package/dist/commonjs/components/tag-field/tag-field-list-box.js +2 -2
- package/dist/commonjs/components/tag-field/tag-field-list-box.js.map +1 -1
- package/dist/commonjs/components/tag-field/tag-field.d.ts.map +1 -1
- package/dist/commonjs/components/tag-field/tag-field.js.map +1 -1
- package/dist/commonjs/components/text-inputs/search-field.d.ts.map +1 -1
- package/dist/commonjs/components/text-inputs/search-field.js.map +1 -1
- package/dist/commonjs/components/text-inputs/text-area.d.ts.map +1 -1
- package/dist/commonjs/components/text-inputs/text-area.js.map +1 -1
- package/dist/commonjs/components/text-inputs/text-field.d.ts.map +1 -1
- package/dist/commonjs/components/text-inputs/text-field.js.map +1 -1
- package/dist/commonjs/components/toggle/toggle.d.ts.map +1 -1
- package/dist/commonjs/components/toggle/toggle.js.map +1 -1
- package/dist/commonjs/components/toggle-button/internal-toggle-button.d.ts.map +1 -1
- package/dist/commonjs/components/toggle-button/internal-toggle-button.js.map +1 -1
- package/dist/commonjs/components/toggle-button/toggle-button-group.d.ts.map +1 -1
- package/dist/commonjs/components/toggle-button/toggle-button-group.js.map +1 -1
- package/dist/commonjs/components/toggle-button/toggle-icon-button.d.ts.map +1 -1
- package/dist/commonjs/components/toggle-button/toggle-icon-button.js.map +1 -1
- package/dist/commonjs/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/commonjs/components/tooltip/tooltip.js.map +1 -1
- package/dist/commonjs/components/types.d.ts.map +1 -1
- package/dist/commonjs/components/types.js.map +1 -1
- package/dist/commonjs/components/typography/link.d.ts.map +1 -1
- package/dist/commonjs/components/typography/link.js.map +1 -1
- package/dist/commonjs/i18n/localization-provider.d.ts.map +1 -1
- package/dist/commonjs/i18n/localization-provider.js +2 -0
- package/dist/commonjs/i18n/localization-provider.js.map +1 -1
- package/dist/esm/components/breadcrumbs/breadcrumbs.d.ts.map +1 -1
- package/dist/esm/components/breadcrumbs/breadcrumbs.js.map +1 -1
- package/dist/esm/components/button/icon-link-button.d.ts.map +1 -1
- package/dist/esm/components/button/icon-link-button.js.map +1 -1
- package/dist/esm/components/button/link-button.d.ts.map +1 -1
- package/dist/esm/components/button/link-button.js.map +1 -1
- package/dist/esm/components/button/types.d.ts.map +1 -1
- package/dist/esm/components/button/types.js.map +1 -1
- package/dist/esm/components/checkbox/checkbox-group.d.ts.map +1 -1
- package/dist/esm/components/checkbox/checkbox-group.js.map +1 -1
- package/dist/esm/components/checkbox/checkbox.d.ts.map +1 -1
- package/dist/esm/components/checkbox/checkbox.js.map +1 -1
- package/dist/esm/components/combo-box/combo-box.d.ts.map +1 -1
- package/dist/esm/components/combo-box/combo-box.js +2 -2
- package/dist/esm/components/combo-box/combo-box.js.map +1 -1
- package/dist/esm/components/copy/copy-button.d.ts.map +1 -1
- package/dist/esm/components/copy/copy-button.js.map +1 -1
- package/dist/esm/components/copy/copy-inline.d.ts.map +1 -1
- package/dist/esm/components/copy/copy-inline.js.map +1 -1
- package/dist/esm/components/date-picker/date-picker-calendar.js.map +1 -1
- package/dist/esm/components/date-picker/date-picker.d.ts.map +1 -1
- package/dist/esm/components/date-picker/date-picker.js.map +1 -1
- package/dist/esm/components/disclosure/disclosure-group.d.ts.map +1 -1
- package/dist/esm/components/disclosure/disclosure-group.js.map +1 -1
- package/dist/esm/components/disclosure/disclosure.d.ts.map +1 -1
- package/dist/esm/components/disclosure/disclosure.js.map +1 -1
- package/dist/esm/components/file-picker/file-picker.d.ts.map +1 -1
- package/dist/esm/components/file-picker/file-picker.js.map +1 -1
- package/dist/esm/components/file-trigger.d.ts.map +1 -1
- package/dist/esm/components/file-trigger.js.map +1 -1
- package/dist/esm/components/form/form.d.ts.map +1 -1
- package/dist/esm/components/form/form.js.map +1 -1
- package/dist/esm/components/internal/collapsible-list/collapsible-list.js.map +1 -1
- package/dist/esm/components/internal/x-button/x-button.js.map +1 -1
- package/dist/esm/components/link-tabs/link-tabs.d.ts.map +1 -1
- package/dist/esm/components/link-tabs/link-tabs.js.map +1 -1
- package/dist/esm/components/menu/menu.d.ts.map +1 -1
- package/dist/esm/components/menu/menu.js.map +1 -1
- package/dist/esm/components/number-field/number-field.d.ts.map +1 -1
- package/dist/esm/components/number-field/number-field.js.map +1 -1
- package/dist/esm/components/radio/radio-group.d.ts.map +1 -1
- package/dist/esm/components/radio/radio-group.js.map +1 -1
- package/dist/esm/components/radio/radio.d.ts.map +1 -1
- package/dist/esm/components/radio/radio.js.map +1 -1
- package/dist/esm/components/select/select.d.ts.map +1 -1
- package/dist/esm/components/select/select.js +2 -2
- package/dist/esm/components/select/select.js.map +1 -1
- package/dist/esm/components/slider/slider.d.ts.map +1 -1
- package/dist/esm/components/slider/slider.js +0 -2
- package/dist/esm/components/slider/slider.js.map +1 -1
- package/dist/esm/components/stepper/stepper-item.js +0 -2
- package/dist/esm/components/stepper/stepper-item.js.map +1 -1
- package/dist/esm/components/tabs/tabs.d.ts.map +1 -1
- package/dist/esm/components/tabs/tabs.js.map +1 -1
- package/dist/esm/components/tag/tag-group.d.ts.map +1 -1
- package/dist/esm/components/tag/tag-group.js.map +1 -1
- package/dist/esm/components/tag-field/tag-field-list-box.js +2 -2
- package/dist/esm/components/tag-field/tag-field-list-box.js.map +1 -1
- package/dist/esm/components/tag-field/tag-field.d.ts.map +1 -1
- package/dist/esm/components/tag-field/tag-field.js.map +1 -1
- package/dist/esm/components/text-inputs/search-field.d.ts.map +1 -1
- package/dist/esm/components/text-inputs/search-field.js.map +1 -1
- package/dist/esm/components/text-inputs/text-area.d.ts.map +1 -1
- package/dist/esm/components/text-inputs/text-area.js.map +1 -1
- package/dist/esm/components/text-inputs/text-field.d.ts.map +1 -1
- package/dist/esm/components/text-inputs/text-field.js.map +1 -1
- package/dist/esm/components/toggle/toggle.d.ts.map +1 -1
- package/dist/esm/components/toggle/toggle.js.map +1 -1
- package/dist/esm/components/toggle-button/internal-toggle-button.d.ts.map +1 -1
- package/dist/esm/components/toggle-button/internal-toggle-button.js.map +1 -1
- package/dist/esm/components/toggle-button/toggle-button-group.d.ts.map +1 -1
- package/dist/esm/components/toggle-button/toggle-button-group.js.map +1 -1
- package/dist/esm/components/toggle-button/toggle-icon-button.d.ts.map +1 -1
- package/dist/esm/components/toggle-button/toggle-icon-button.js.map +1 -1
- package/dist/esm/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/esm/components/tooltip/tooltip.js.map +1 -1
- package/dist/esm/components/types.d.ts.map +1 -1
- package/dist/esm/components/types.js.map +1 -1
- package/dist/esm/components/typography/link.d.ts.map +1 -1
- package/dist/esm/components/typography/link.js.map +1 -1
- package/dist/esm/i18n/localization-provider.d.ts.map +1 -1
- package/dist/esm/i18n/localization-provider.js +2 -0
- package/dist/esm/i18n/localization-provider.js.map +1 -1
- package/dist-styles/core.css +1 -1
- package/dist-styles/styles.css +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../../../src/components/typography/link.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,IAAI,IAAI,OAAO,EAAkC,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,mDAAmD;AACnD,MAAM,WAAW,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../../../src/components/typography/link.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,IAAI,IAAI,OAAO,EAAkC,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,mDAAmD;AACnD,MAAM,WAAW,GAAG,QAAQ,CAAC;AAc7B,SAAS,IAAI,CACX,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,EAAa,EACpH,GAAoC;IAEpC,OAAO,CACL,MAAC,OAAO,OACF,KAAK,EACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,gBAAgB,CAAC,EAC3G,KAAK,EAAE,YAAY,aAElB,SAAS,IAAI,CACZ,8BACE,eAAM,SAAS,EAAC,eAAe,YAAE,SAAS,GAAQ,EACjD,WAAW,IACX,CACJ,EACD,eAAM,SAAS,EAAC,eAAe,YAAE,QAAQ,GAAQ,EAChD,OAAO,IAAI,CACV,8BACG,WAAW,EACZ,eAAM,SAAS,EAAC,eAAe,YAAE,OAAO,GAAQ,IAC/C,CACJ,IACO,CACX,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,KAAK,GAAG,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;AAEvD,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC","sourcesContent":["'use client';\n\nimport clsx from 'clsx';\nimport type { ForwardedRef, ReactNode } from 'react';\nimport { Link as RACLink, type LinkProps as RACLinkProps } from 'react-aria-components';\nimport { forwardRef } from '../../forward-ref.js';\nimport { withStyleProps } from '../../with-style-props.js';\nimport type { NavigationProps, WithRequired } from '../types.js';\nimport type { BaseTypographyProps, TextStyleOptions } from './types.js';\nimport { textStyle } from './utils.js';\n\n// Used to prevent word wrap between icons and text\nconst WORD_JOINER = '\\u2060';\n\nexport interface LinkProps\n extends\n Omit<BaseTypographyProps, 'id'>,\n WithRequired<NavigationProps, 'href'>,\n Pick<TextStyleOptions, 'variant' | 'fontStyle' | 'alignment'>,\n Pick<RACLinkProps, 'isDisabled' | 'onHoverStart' | 'onHoverEnd'> {\n /** An icon displayed before the link text. */\n iconStart?: ReactNode;\n /** An icon displayed after the link text. */\n iconEnd?: ReactNode;\n}\n\nfunction Link(\n { children, iconStart, iconEnd, UNSAFE_className, UNSAFE_style, variant, fontStyle, alignment, ...props }: LinkProps,\n ref: ForwardedRef<HTMLAnchorElement>,\n) {\n return (\n <RACLink\n {...props}\n ref={ref}\n className={clsx('cim-link', textStyle({ tone: 'accent', variant, fontStyle, alignment }), UNSAFE_className)}\n style={UNSAFE_style}\n >\n {iconStart && (\n <>\n <span className=\"cim-link-icon\">{iconStart}</span>\n {WORD_JOINER}\n </>\n )}\n <span className=\"cim-link-text\">{children}</span>\n {iconEnd && (\n <>\n {WORD_JOINER}\n <span className=\"cim-link-icon\">{iconEnd}</span>\n </>\n )}\n </RACLink>\n );\n}\n\n/**\n * Displays a textual link that allows users to navigate to another page or resource.\n *\n * See [link usage guidelines](https://ui.cimpress.io/components/link/).\n */\nconst _Link = withStyleProps(forwardRef(Link), 'Link');\n\nexport { _Link as Link };\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localization-provider.d.ts","sourceRoot":"","sources":["../../../src/i18n/localization-provider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAsC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3E,OAAO,EAAE,KAAK,wBAAwB,EAA+B,MAAM,YAAY,CAAC;AACxF,OAAO,EAAmC,SAAS,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,EAAQ,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEzF,mEAAmE;AACnE,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;AACvE,uGAAuG;AACvG,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,QAAQ,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AAIrF,qDAAqD;AACrD,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AAEzD;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"localization-provider.d.ts","sourceRoot":"","sources":["../../../src/i18n/localization-provider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAsC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3E,OAAO,EAAE,KAAK,wBAAwB,EAA+B,MAAM,YAAY,CAAC;AACxF,OAAO,EAAmC,SAAS,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,EAAQ,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEzF,mEAAmE;AACnE,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;AACvE,uGAAuG;AACvG,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,QAAQ,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AAIrF,qDAAqD;AACrD,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AAEzD;;;;GAIG;AAEH,wBAAgB,aAAa,IAAI,UAAU,CAE1C;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAAC,CAAC,SAAS,QAAQ,GAAG,iBAAiB;IAoDnF;;;;OAIG;;kEAnDF;YACD,kFAAkF;YAClF,QAAQ,EAAE,SAAS,CAAC;YACpB,sHAAsH;YACtH,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,mFAAmF;YACnF,QAAQ,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;SAC/B;;;IA8CC;;;;OAIG;2BAnCyB,CAAC,SAAS,MAAM,CAAC,OAExC,CAAC,KACL,wBAAwB,CAEzB,MAAM,CAAC,CAAC,CAAC,CAAC,EACV,MAAM,CACP;EA+BF;AAGD,eAAO,MAAQ,oBAAoB;;QA9D/B,kFAAkF;kBACxE,SAAS;QACnB,sHAAsH;iBAC7G,MAAM;QACf,mFAAmF;;;;GA0DlD,oBAAoB,GAzCzB,CAAC,yGAyC+D,CAAC"}
|
|
@@ -10,6 +10,7 @@ const LocalizedMessagesContext = createContext(enUS);
|
|
|
10
10
|
*
|
|
11
11
|
* See [localization guide](https://ui.cimpress.io/dev-guides/localization/).
|
|
12
12
|
*/
|
|
13
|
+
// eslint-disable-next-line react-refresh/only-export-components
|
|
13
14
|
export function useLocaleInfo() {
|
|
14
15
|
return useRACLocale();
|
|
15
16
|
}
|
|
@@ -51,6 +52,7 @@ export function UNSTABLE_createLocalizationTools() {
|
|
|
51
52
|
useLocalizedMessages,
|
|
52
53
|
};
|
|
53
54
|
}
|
|
55
|
+
// eslint-disable-next-line react-refresh/only-export-components
|
|
54
56
|
export const { LocalizationProvider, useLocalizedMessages } = UNSTABLE_createLocalizationTools();
|
|
55
57
|
/** Patch object `a` with properties from object `b` while ignoring undefined values. */
|
|
56
58
|
function patchMessages(a, b) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localization-provider.js","sourceRoot":"","sources":["../../../src/i18n/localization-provider.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client';\n\nimport { createContext, useContext, useMemo, type ReactNode } from 'react';\nimport { type LocalizedStringFormatter, useLocalizedStringFormatter } from 'react-aria';\nimport { I18nProvider as RACI18nProvider, useLocale as useRACLocale } from 'react-aria-components';\nimport { enUS, type LocalizedMessages, type LocalizedString } from './messages/index.js';\n\n/** Defines the shape of an object containing localized strings. */\nexport type Messages = Record<string, Record<string, LocalizedString>>;\n/** A utility type that makes every property optional within an object containing localized strings. */\nexport type PartialMessages<T extends Messages> = { [P in keyof T]?: Partial<T[P]> };\n\nconst LocalizedMessagesContext = createContext<Messages>(enUS);\n\n/** Contains information about the current locale. */\nexport type LocaleInfo = ReturnType<typeof useRACLocale>;\n\n/**\n * Returns the current locale and layout direction.\n *\n * See [localization guide](https://ui.cimpress.io/dev-guides/localization/).\n */\nexport function useLocaleInfo(): LocaleInfo {\n return useRACLocale();\n}\n\n/**\n * Creates type-safe tools for localizing custom components.\n *\n * See [localization guide](https://ui.cimpress.io/dev-guides/localization/).\n */\nexport function UNSTABLE_createLocalizationTools<T extends Messages = LocalizedMessages>() {\n function LocalizationProvider({\n children,\n locale: newLocale,\n messages: newMessages,\n }: {\n /** The component tree that will be localized (usually the entire application). */\n children: ReactNode;\n /** The locale to apply to the children. Should be a [BCP47](https://www.ietf.org/rfc/bcp/bcp47.txt) language code. */\n locale?: string;\n /** The localized messages for use by the components within this component tree. */\n messages?: PartialMessages<T>;\n }) {\n const messages = useContext(LocalizedMessagesContext) as T;\n const { locale } = useLocaleInfo();\n\n const patchedMessages: T = useMemo(() => patchMessages(messages, newMessages), [messages, newMessages]);\n\n return (\n <LocalizedMessagesContext.Provider value={patchedMessages}>\n <RACI18nProvider locale={newLocale ?? locale}>{children}</RACI18nProvider>\n </LocalizedMessagesContext.Provider>\n );\n }\n\n LocalizationProvider.displayName = 'LocalizationProvider';\n\n function useLocalizedMessages<R extends keyof T>(\n /** The key under which the messages are grouped, usually the component name. */\n key: R,\n ): LocalizedStringFormatter<\n // @ts-expect-error `keyof` infers `string | number | symbol` even though this interface only has string keys\n keyof T[R],\n string\n > {\n const { locale } = useLocaleInfo();\n const messages = useContext(LocalizedMessagesContext) as T;\n\n return useLocalizedStringFormatter<\n // @ts-expect-error `keyof` infers `string | number | symbol` even though this interface only has string keys\n keyof T[R],\n string\n >(\n {\n // `useLocalizedStringFormatter` expects its argument to contain messages for a single component, grouped by locale\n [locale]: messages[key],\n },\n key as string,\n );\n }\n\n return {\n /**\n * Provides localization data to Cimpress UI components.\n *\n * See [localization guide](https://ui.cimpress.io/dev-guides/localization/).\n */\n LocalizationProvider,\n /**\n * Returns a localized message formatter for a specific component.\n *\n * See [localization guide](https://ui.cimpress.io/dev-guides/localization/).\n */\n useLocalizedMessages,\n };\n}\n\nexport const { LocalizationProvider, useLocalizedMessages } = UNSTABLE_createLocalizationTools();\n\n/** Patch object `a` with properties from object `b` while ignoring undefined values. */\nfunction patchMessages<T extends Messages>(a: T, b?: PartialMessages<T>): T {\n if (!b || Object.values(b).every((value) => value === undefined)) {\n return a;\n }\n\n const result: T = { ...a };\n\n for (const [componentKey, componentMessages] of Object.entries(b)) {\n if (!componentMessages || Object.values(componentMessages).every((value) => value === undefined)) {\n continue;\n }\n\n const castComponentKey = componentKey as keyof T;\n\n result[castComponentKey] = { ...result[castComponentKey] };\n\n for (const [messageKey, message] of Object.entries(componentMessages)) {\n if (message) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (result[castComponentKey] as any)[messageKey] = message;\n }\n }\n }\n\n return result;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"localization-provider.js","sourceRoot":"","sources":["../../../src/i18n/localization-provider.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAkB,MAAM,OAAO,CAAC;AAC3E,OAAO,EAAiC,2BAA2B,EAAE,MAAM,YAAY,CAAC;AACxF,OAAO,EAAE,YAAY,IAAI,eAAe,EAAE,SAAS,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,EAAE,IAAI,EAAgD,MAAM,qBAAqB,CAAC;AAOzF,MAAM,wBAAwB,GAAG,aAAa,CAAW,IAAI,CAAC,CAAC;AAK/D;;;;GAIG;AACH,gEAAgE;AAChE,MAAM,UAAU,aAAa;IAC3B,OAAO,YAAY,EAAE,CAAC;AACxB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gCAAgC;IAC9C,SAAS,oBAAoB,CAAC,EAC5B,QAAQ,EACR,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,WAAW,GAQtB;QACC,MAAM,QAAQ,GAAG,UAAU,CAAC,wBAAwB,CAAM,CAAC;QAC3D,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;QAEnC,MAAM,eAAe,GAAM,OAAO,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;QAExG,OAAO,CACL,KAAC,wBAAwB,CAAC,QAAQ,IAAC,KAAK,EAAE,eAAe,YACvD,KAAC,eAAe,IAAC,MAAM,EAAE,SAAS,IAAI,MAAM,YAAG,QAAQ,GAAmB,GACxC,CACrC,CAAC;IACJ,CAAC;IAED,oBAAoB,CAAC,WAAW,GAAG,sBAAsB,CAAC;IAE1D,SAAS,oBAAoB;IAC3B,gFAAgF;IAChF,GAAM;QAMN,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,UAAU,CAAC,wBAAwB,CAAM,CAAC;QAE3D,OAAO,2BAA2B,CAKhC;YACE,mHAAmH;YACnH,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC;SACxB,EACD,GAAa,CACd,CAAC;IACJ,CAAC;IAED,OAAO;QACL;;;;WAIG;QACH,oBAAoB;QACpB;;;;WAIG;QACH,oBAAoB;KACrB,CAAC;AACJ,CAAC;AAED,gEAAgE;AAChE,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,GAAG,gCAAgC,EAAE,CAAC;AAEjG,wFAAwF;AACxF,SAAS,aAAa,CAAqB,CAAI,EAAE,CAAsB;IACrE,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,EAAE,CAAC;QACjE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,MAAM,GAAM,EAAE,GAAG,CAAC,EAAE,CAAC;IAE3B,KAAK,MAAM,CAAC,YAAY,EAAE,iBAAiB,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC,iBAAiB,IAAI,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,EAAE,CAAC;YACjG,SAAS;QACX,CAAC;QAED,MAAM,gBAAgB,GAAG,YAAuB,CAAC;QAEjD,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAE3D,KAAK,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACtE,IAAI,OAAO,EAAE,CAAC;gBACZ,8DAA8D;gBAC7D,MAAM,CAAC,gBAAgB,CAAS,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;YAC1D,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["'use client';\n\nimport { createContext, useContext, useMemo, type ReactNode } from 'react';\nimport { type LocalizedStringFormatter, useLocalizedStringFormatter } from 'react-aria';\nimport { I18nProvider as RACI18nProvider, useLocale as useRACLocale } from 'react-aria-components';\nimport { enUS, type LocalizedMessages, type LocalizedString } from './messages/index.js';\n\n/** Defines the shape of an object containing localized strings. */\nexport type Messages = Record<string, Record<string, LocalizedString>>;\n/** A utility type that makes every property optional within an object containing localized strings. */\nexport type PartialMessages<T extends Messages> = { [P in keyof T]?: Partial<T[P]> };\n\nconst LocalizedMessagesContext = createContext<Messages>(enUS);\n\n/** Contains information about the current locale. */\nexport type LocaleInfo = ReturnType<typeof useRACLocale>;\n\n/**\n * Returns the current locale and layout direction.\n *\n * See [localization guide](https://ui.cimpress.io/dev-guides/localization/).\n */\n// eslint-disable-next-line react-refresh/only-export-components\nexport function useLocaleInfo(): LocaleInfo {\n return useRACLocale();\n}\n\n/**\n * Creates type-safe tools for localizing custom components.\n *\n * See [localization guide](https://ui.cimpress.io/dev-guides/localization/).\n */\nexport function UNSTABLE_createLocalizationTools<T extends Messages = LocalizedMessages>() {\n function LocalizationProvider({\n children,\n locale: newLocale,\n messages: newMessages,\n }: {\n /** The component tree that will be localized (usually the entire application). */\n children: ReactNode;\n /** The locale to apply to the children. Should be a [BCP47](https://www.ietf.org/rfc/bcp/bcp47.txt) language code. */\n locale?: string;\n /** The localized messages for use by the components within this component tree. */\n messages?: PartialMessages<T>;\n }) {\n const messages = useContext(LocalizedMessagesContext) as T;\n const { locale } = useLocaleInfo();\n\n const patchedMessages: T = useMemo(() => patchMessages(messages, newMessages), [messages, newMessages]);\n\n return (\n <LocalizedMessagesContext.Provider value={patchedMessages}>\n <RACI18nProvider locale={newLocale ?? locale}>{children}</RACI18nProvider>\n </LocalizedMessagesContext.Provider>\n );\n }\n\n LocalizationProvider.displayName = 'LocalizationProvider';\n\n function useLocalizedMessages<R extends keyof T>(\n /** The key under which the messages are grouped, usually the component name. */\n key: R,\n ): LocalizedStringFormatter<\n // @ts-expect-error `keyof` infers `string | number | symbol` even though this interface only has string keys\n keyof T[R],\n string\n > {\n const { locale } = useLocaleInfo();\n const messages = useContext(LocalizedMessagesContext) as T;\n\n return useLocalizedStringFormatter<\n // @ts-expect-error `keyof` infers `string | number | symbol` even though this interface only has string keys\n keyof T[R],\n string\n >(\n {\n // `useLocalizedStringFormatter` expects its argument to contain messages for a single component, grouped by locale\n [locale]: messages[key],\n },\n key as string,\n );\n }\n\n return {\n /**\n * Provides localization data to Cimpress UI components.\n *\n * See [localization guide](https://ui.cimpress.io/dev-guides/localization/).\n */\n LocalizationProvider,\n /**\n * Returns a localized message formatter for a specific component.\n *\n * See [localization guide](https://ui.cimpress.io/dev-guides/localization/).\n */\n useLocalizedMessages,\n };\n}\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport const { LocalizationProvider, useLocalizedMessages } = UNSTABLE_createLocalizationTools();\n\n/** Patch object `a` with properties from object `b` while ignoring undefined values. */\nfunction patchMessages<T extends Messages>(a: T, b?: PartialMessages<T>): T {\n if (!b || Object.values(b).every((value) => value === undefined)) {\n return a;\n }\n\n const result: T = { ...a };\n\n for (const [componentKey, componentMessages] of Object.entries(b)) {\n if (!componentMessages || Object.values(componentMessages).every((value) => value === undefined)) {\n continue;\n }\n\n const castComponentKey = componentKey as keyof T;\n\n result[castComponentKey] = { ...result[castComponentKey] };\n\n for (const [messageKey, message] of Object.entries(componentMessages)) {\n if (message) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (result[castComponentKey] as any)[messageKey] = message;\n }\n }\n }\n\n return result;\n}\n"]}
|