@nori-ui/core 1.0.6 → 1.1.0

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 (166) hide show
  1. package/dist/chunk-2UXKXUX2.js +286 -0
  2. package/dist/chunk-2UXKXUX2.js.map +1 -0
  3. package/dist/{chunk-DDGMLLS3.js → chunk-46OT4PA6.js} +3 -3
  4. package/dist/{chunk-DDGMLLS3.js.map → chunk-46OT4PA6.js.map} +1 -1
  5. package/dist/{chunk-SFNDR6DI.js → chunk-5BM6H2CD.js} +3 -3
  6. package/dist/{chunk-SFNDR6DI.js.map → chunk-5BM6H2CD.js.map} +1 -1
  7. package/dist/{chunk-EWWQQ5DB.js → chunk-6JVUVBZH.js} +5 -5
  8. package/dist/{chunk-EWWQQ5DB.js.map → chunk-6JVUVBZH.js.map} +1 -1
  9. package/dist/{chunk-FT2XBBQJ.js → chunk-6PO2IWB3.js} +8 -5
  10. package/dist/chunk-6PO2IWB3.js.map +1 -0
  11. package/dist/{chunk-YNKKEO2A.js → chunk-7D2BHQ6M.js} +3 -3
  12. package/dist/{chunk-YNKKEO2A.js.map → chunk-7D2BHQ6M.js.map} +1 -1
  13. package/dist/{chunk-MRJWPRCX.js → chunk-AFQIK6JI.js} +3 -3
  14. package/dist/{chunk-MRJWPRCX.js.map → chunk-AFQIK6JI.js.map} +1 -1
  15. package/dist/{chunk-IKLA2CVQ.js → chunk-C6TRLHMW.js} +21 -5
  16. package/dist/chunk-C6TRLHMW.js.map +1 -0
  17. package/dist/{chunk-NRYWNOG5.js → chunk-CGQIVFCN.js} +3 -3
  18. package/dist/{chunk-NRYWNOG5.js.map → chunk-CGQIVFCN.js.map} +1 -1
  19. package/dist/chunk-EFK7726V.js +104 -0
  20. package/dist/chunk-EFK7726V.js.map +1 -0
  21. package/dist/{chunk-3BDDPFCI.js → chunk-FDBQOQMW.js} +3 -3
  22. package/dist/{chunk-3BDDPFCI.js.map → chunk-FDBQOQMW.js.map} +1 -1
  23. package/dist/{chunk-XALU6LOT.js → chunk-GELLSU64.js} +3 -3
  24. package/dist/{chunk-XALU6LOT.js.map → chunk-GELLSU64.js.map} +1 -1
  25. package/dist/{chunk-BZLT6R62.js → chunk-GRDVE3IR.js} +3 -3
  26. package/dist/{chunk-BZLT6R62.js.map → chunk-GRDVE3IR.js.map} +1 -1
  27. package/dist/{chunk-OMU4R4Y5.js → chunk-HTF6FDB6.js} +3 -3
  28. package/dist/{chunk-OMU4R4Y5.js.map → chunk-HTF6FDB6.js.map} +1 -1
  29. package/dist/{chunk-X7APG7G2.js → chunk-HZKXPN6B.js} +154 -34
  30. package/dist/chunk-HZKXPN6B.js.map +1 -0
  31. package/dist/{chunk-WGT345SV.js → chunk-IGLMPAWE.js} +3 -3
  32. package/dist/{chunk-WGT345SV.js.map → chunk-IGLMPAWE.js.map} +1 -1
  33. package/dist/{chunk-5XEGZFG5.js → chunk-LWQZ257T.js} +3 -3
  34. package/dist/{chunk-5XEGZFG5.js.map → chunk-LWQZ257T.js.map} +1 -1
  35. package/dist/{chunk-RFW5SRZA.js → chunk-MJ4AGXS7.js} +3 -3
  36. package/dist/{chunk-RFW5SRZA.js.map → chunk-MJ4AGXS7.js.map} +1 -1
  37. package/dist/{chunk-PNP7L4TA.js → chunk-RM5TSXVE.js} +3 -3
  38. package/dist/{chunk-PNP7L4TA.js.map → chunk-RM5TSXVE.js.map} +1 -1
  39. package/dist/{chunk-MKSDYRWQ.js → chunk-SINLREQV.js} +3 -3
  40. package/dist/{chunk-MKSDYRWQ.js.map → chunk-SINLREQV.js.map} +1 -1
  41. package/dist/{chunk-TLS54G6Y.js → chunk-UF5OENHV.js} +3 -3
  42. package/dist/{chunk-TLS54G6Y.js.map → chunk-UF5OENHV.js.map} +1 -1
  43. package/dist/{chunk-ZQMNGPLE.js → chunk-UJ5KFRDE.js} +18 -6
  44. package/dist/chunk-UJ5KFRDE.js.map +1 -0
  45. package/dist/{chunk-SWC5CNKE.js → chunk-UPVNZPFV.js} +3 -3
  46. package/dist/{chunk-SWC5CNKE.js.map → chunk-UPVNZPFV.js.map} +1 -1
  47. package/dist/{chunk-3F4TXKDY.js → chunk-UUXWRDWW.js} +3 -3
  48. package/dist/chunk-UUXWRDWW.js.map +1 -0
  49. package/dist/{chunk-7GPDNQSX.js → chunk-V2AWSDDZ.js} +5 -5
  50. package/dist/{chunk-7GPDNQSX.js.map → chunk-V2AWSDDZ.js.map} +1 -1
  51. package/dist/{chunk-JQQ3FBN7.js → chunk-VCJF75T2.js} +3 -3
  52. package/dist/{chunk-JQQ3FBN7.js.map → chunk-VCJF75T2.js.map} +1 -1
  53. package/dist/{chunk-ZBW3BA5R.js → chunk-VMAGFYHG.js} +39 -4
  54. package/dist/chunk-VMAGFYHG.js.map +1 -0
  55. package/dist/{chunk-JZ774T7U.js → chunk-W3HMOOON.js} +3 -3
  56. package/dist/{chunk-JZ774T7U.js.map → chunk-W3HMOOON.js.map} +1 -1
  57. package/dist/{chunk-6AD6KCVB.js → chunk-WAKKQROH.js} +3 -3
  58. package/dist/{chunk-6AD6KCVB.js.map → chunk-WAKKQROH.js.map} +1 -1
  59. package/dist/{chunk-LVWNMQGR.js → chunk-WDNDTSNX.js} +5 -5
  60. package/dist/{chunk-LVWNMQGR.js.map → chunk-WDNDTSNX.js.map} +1 -1
  61. package/dist/chunk-WOF67PKT.js +60 -0
  62. package/dist/chunk-WOF67PKT.js.map +1 -0
  63. package/dist/{chunk-QJNV7YQP.js → chunk-WTNDPO2V.js} +39 -4
  64. package/dist/chunk-WTNDPO2V.js.map +1 -0
  65. package/dist/{chunk-FEPTH5RV.js → chunk-XP55RZ3D.js} +3 -3
  66. package/dist/{chunk-FEPTH5RV.js.map → chunk-XP55RZ3D.js.map} +1 -1
  67. package/dist/{chunk-CCUXO2HN.js → chunk-Y4ZRSW35.js} +3 -3
  68. package/dist/{chunk-CCUXO2HN.js.map → chunk-Y4ZRSW35.js.map} +1 -1
  69. package/dist/client.cjs +619 -123
  70. package/dist/client.cjs.map +1 -1
  71. package/dist/client.d.cts +2 -0
  72. package/dist/client.d.ts +2 -0
  73. package/dist/client.js +40 -38
  74. package/dist/client.js.map +1 -1
  75. package/dist/components/Accordion/index.js +2 -2
  76. package/dist/components/Alert/index.js +2 -2
  77. package/dist/components/AlertDialog/index.js +2 -2
  78. package/dist/components/Avatar/index.js +2 -2
  79. package/dist/components/Badge/index.js +2 -2
  80. package/dist/components/Box/index.js +4 -4
  81. package/dist/components/Breadcrumb/index.cjs +6 -3
  82. package/dist/components/Breadcrumb/index.cjs.map +1 -1
  83. package/dist/components/Breadcrumb/index.js +5 -5
  84. package/dist/components/Button/index.js +2 -2
  85. package/dist/components/Calendar/index.cjs +170 -35
  86. package/dist/components/Calendar/index.cjs.map +1 -1
  87. package/dist/components/Calendar/index.js +5 -5
  88. package/dist/components/Card/index.js +2 -2
  89. package/dist/components/Checkbox/index.cjs +36 -1
  90. package/dist/components/Checkbox/index.cjs.map +1 -1
  91. package/dist/components/Checkbox/index.d.cts +17 -1
  92. package/dist/components/Checkbox/index.d.ts +17 -1
  93. package/dist/components/Checkbox/index.js +2 -2
  94. package/dist/components/Dialog/index.js +2 -2
  95. package/dist/components/Field/index.cjs +703 -0
  96. package/dist/components/Field/index.cjs.map +1 -0
  97. package/dist/components/Field/index.d.cts +51 -0
  98. package/dist/components/Field/index.d.ts +51 -0
  99. package/dist/components/Field/index.js +9 -0
  100. package/dist/components/Field/index.js.map +1 -0
  101. package/dist/components/FloatButton/index.cjs +6 -3
  102. package/dist/components/FloatButton/index.cjs.map +1 -1
  103. package/dist/components/FloatButton/index.js +5 -5
  104. package/dist/components/HStack/index.js +4 -4
  105. package/dist/components/InputGroup/index.cjs.map +1 -1
  106. package/dist/components/InputGroup/index.d.cts +8 -1
  107. package/dist/components/InputGroup/index.d.ts +8 -1
  108. package/dist/components/InputGroup/index.js +2 -2
  109. package/dist/components/Label/index.cjs +458 -0
  110. package/dist/components/Label/index.cjs.map +1 -0
  111. package/dist/components/Label/index.d.cts +14 -0
  112. package/dist/components/Label/index.d.ts +14 -0
  113. package/dist/components/Label/index.js +8 -0
  114. package/dist/components/Label/index.js.map +1 -0
  115. package/dist/components/Pagination/index.cjs +21 -6
  116. package/dist/components/Pagination/index.cjs.map +1 -1
  117. package/dist/components/Pagination/index.js +5 -5
  118. package/dist/components/Popover/index.js +2 -2
  119. package/dist/components/Progress/index.js +2 -2
  120. package/dist/components/Radio/index.cjs +18 -2
  121. package/dist/components/Radio/index.cjs.map +1 -1
  122. package/dist/components/Radio/index.d.cts +17 -1
  123. package/dist/components/Radio/index.d.ts +17 -1
  124. package/dist/components/Radio/index.js +2 -2
  125. package/dist/components/SegmentedControl/index.js +2 -2
  126. package/dist/components/Select/index.cjs +15 -3
  127. package/dist/components/Select/index.cjs.map +1 -1
  128. package/dist/components/Select/index.d.cts +6 -0
  129. package/dist/components/Select/index.d.ts +6 -0
  130. package/dist/components/Select/index.js +2 -2
  131. package/dist/components/Switch/index.cjs +36 -1
  132. package/dist/components/Switch/index.cjs.map +1 -1
  133. package/dist/components/Switch/index.d.cts +17 -1
  134. package/dist/components/Switch/index.d.ts +17 -1
  135. package/dist/components/Switch/index.js +2 -2
  136. package/dist/components/Tabs/index.js +2 -2
  137. package/dist/components/Text/index.js +2 -2
  138. package/dist/components/TextArea/index.cjs +35 -84
  139. package/dist/components/TextArea/index.cjs.map +1 -1
  140. package/dist/components/TextArea/index.js +3 -3
  141. package/dist/components/TextInput/index.cjs +35 -84
  142. package/dist/components/TextInput/index.cjs.map +1 -1
  143. package/dist/components/TextInput/index.d.cts +7 -8
  144. package/dist/components/TextInput/index.d.ts +7 -8
  145. package/dist/components/TextInput/index.js +2 -2
  146. package/dist/components/Toggle/index.js +2 -2
  147. package/dist/components/Tooltip/index.js +2 -2
  148. package/dist/components/VStack/index.js +4 -4
  149. package/dist/i18n/index.cjs +6 -3
  150. package/dist/i18n/index.cjs.map +1 -1
  151. package/dist/i18n/index.js +1 -1
  152. package/dist/index.cjs +619 -123
  153. package/dist/index.cjs.map +1 -1
  154. package/dist/index.d.cts +2 -0
  155. package/dist/index.d.ts +2 -0
  156. package/dist/index.js +37 -35
  157. package/package.json +8 -1
  158. package/dist/chunk-3F4TXKDY.js.map +0 -1
  159. package/dist/chunk-FT2XBBQJ.js.map +0 -1
  160. package/dist/chunk-IKLA2CVQ.js.map +0 -1
  161. package/dist/chunk-QJNV7YQP.js.map +0 -1
  162. package/dist/chunk-X7APG7G2.js.map +0 -1
  163. package/dist/chunk-ZBW3BA5R.js.map +0 -1
  164. package/dist/chunk-ZQMNGPLE.js.map +0 -1
  165. package/dist/chunk-ZRD4FQBT.js +0 -153
  166. package/dist/chunk-ZRD4FQBT.js.map +0 -1
@@ -3,9 +3,6 @@ import { ReactNode } from 'react';
3
3
  import { TextInputProps as TextInputProps$1 } from 'react-native';
4
4
 
5
5
  type TextInputProps = Omit<TextInputProps$1, 'editable'> & {
6
- label?: string;
7
- helperText?: string;
8
- error?: string;
9
6
  disabled?: boolean;
10
7
  leading?: ReactNode;
11
8
  trailing?: ReactNode;
@@ -13,6 +10,8 @@ type TextInputProps = Omit<TextInputProps$1, 'editable'> & {
13
10
  containerClassName?: string;
14
11
  className?: string;
15
12
  testID?: string;
13
+ id?: string;
14
+ name?: string;
16
15
  /** Controlled text handler. Optional so uncontrolled usage works too. */
17
16
  onChangeText?: (text: string) => void;
18
17
  /** Multi-line mode — flipped by TextArea. Default false. */
@@ -20,14 +19,14 @@ type TextInputProps = Omit<TextInputProps$1, 'editable'> & {
20
19
  numberOfLines?: number;
21
20
  };
22
21
  /**
23
- * Single-line text input with label, helper, error, and leading/trailing slots.
22
+ * Single-line text input with leading/trailing slots.
24
23
  *
25
- * a11y: label is a <label for={id}>; the input is `aria-invalid=true` + labelled
26
- * by the error/helper text via aria-describedby when present.
24
+ * Wrap in <Field> + <Field.Control> to get label, description, error, and
25
+ * full a11y wiring (aria-labelledby, aria-describedby, aria-invalid).
27
26
  *
28
- * Color flips with the active scheme — the field surface, border, label, and
27
+ * Color flips with the active scheme — the field surface, border, and
29
28
  * placeholder all read from the resolved palette via `useThemeColors`.
30
29
  */
31
- declare const TextInput: ({ label, helperText, error, disabled, leading, trailing, containerClassName, className, testID, onChangeText, multiline, numberOfLines, ...rest }: TextInputProps) => react_jsx_runtime.JSX.Element;
30
+ declare const TextInput: ({ disabled, leading, trailing, containerClassName, className, testID, id, name, onChangeText, multiline, numberOfLines, ...rest }: TextInputProps) => react_jsx_runtime.JSX.Element;
32
31
 
33
32
  export { TextInput, type TextInputProps };
@@ -1,6 +1,6 @@
1
- export { TextInput } from '../../chunk-ZRD4FQBT.js';
2
- import '../../chunk-5A2QOOVN.js';
1
+ export { TextInput } from '../../chunk-EFK7726V.js';
3
2
  import '../../chunk-CHXHRJNZ.js';
3
+ import '../../chunk-5A2QOOVN.js';
4
4
  import '../../chunk-R5JMDDCB.js';
5
5
  import '../../chunk-WCQVDF3K.js';
6
6
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
- export { Toggle } from '../../chunk-MKSDYRWQ.js';
2
- import '../../chunk-5A2QOOVN.js';
1
+ export { Toggle } from '../../chunk-SINLREQV.js';
3
2
  import '../../chunk-CHXHRJNZ.js';
3
+ import '../../chunk-5A2QOOVN.js';
4
4
  import '../../chunk-R5JMDDCB.js';
5
5
  import '../../chunk-WCQVDF3K.js';
6
6
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
- export { Tooltip } from '../../chunk-NRYWNOG5.js';
1
+ export { Tooltip } from '../../chunk-CGQIVFCN.js';
2
2
  import '../../chunk-ZIBNLXIV.js';
3
- import '../../chunk-5A2QOOVN.js';
4
3
  import '../../chunk-CHXHRJNZ.js';
4
+ import '../../chunk-5A2QOOVN.js';
5
5
  import '../../chunk-R5JMDDCB.js';
6
6
  import '../../chunk-WCQVDF3K.js';
7
7
  //# sourceMappingURL=index.js.map
@@ -1,8 +1,8 @@
1
- export { VStack } from '../../chunk-MRJWPRCX.js';
2
- import '../../chunk-JQQ3FBN7.js';
3
- import '../../chunk-JZ774T7U.js';
4
- import '../../chunk-5A2QOOVN.js';
1
+ export { VStack } from '../../chunk-AFQIK6JI.js';
2
+ import '../../chunk-VCJF75T2.js';
3
+ import '../../chunk-W3HMOOON.js';
5
4
  import '../../chunk-CHXHRJNZ.js';
5
+ import '../../chunk-5A2QOOVN.js';
6
6
  import '../../chunk-R5JMDDCB.js';
7
7
  import '../../chunk-WCQVDF3K.js';
8
8
  //# sourceMappingURL=index.js.map
@@ -36,8 +36,8 @@ var defaultDictionary = {
36
36
  // floatButton
37
37
  "floatButton.backToTop": "Back to top",
38
38
  // calendar
39
- "calendar.header.previous": "Previous",
40
- "calendar.header.next": "Next",
39
+ "calendar.header.previous": "Previous month",
40
+ "calendar.header.next": "Next month",
41
41
  "calendar.header.openMonthView": "Open month picker",
42
42
  "calendar.header.openYearView": "Open year picker",
43
43
  "calendar.header.openDayView": "Open day picker",
@@ -53,7 +53,10 @@ var defaultDictionary = {
53
53
  "checkbox.checked": "Checked",
54
54
  "checkbox.unchecked": "Unchecked",
55
55
  "switch.on": "On",
56
- "switch.off": "Off"
56
+ "switch.off": "Off",
57
+ // field
58
+ "field.requiredIndicator": "*",
59
+ "field.requiredLabel": "required"
57
60
  };
58
61
 
59
62
  // src/i18n/resolve.ts
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/i18n/default-dictionary.ts","../../src/i18n/resolve.ts"],"names":[],"mappings":"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","file":"index.cjs","sourcesContent":["import type { Dictionary } from './types';\n\n/**\n * Default English strings used by library components.\n *\n * Key naming convention:\n * <component>.<purpose>[_plural-form]\n *\n * Plural suffixes follow i18next: `_zero`, `_one`, `_two`, `_few`, `_many`, `_other`.\n * Interpolation uses `{{name}}` — double braces, no spaces, by convention.\n */\nexport const defaultDictionary: Dictionary = {\n // generic / shared\n 'common.cancel': 'Cancel',\n 'common.confirm': 'Confirm',\n 'common.close': 'Close',\n 'common.back': 'Back',\n 'common.loading': 'Loading',\n 'common.error': 'Something went wrong',\n 'common.retry': 'Try again',\n\n // breadcrumb\n 'breadcrumb.ariaLabel': 'Breadcrumb',\n 'breadcrumb.expandLabel': 'Show full path',\n 'breadcrumb.ellipsisLabel': 'More',\n 'breadcrumb.currentPageLabel': 'Current page',\n 'breadcrumb.siblingMenuLabel': 'Open sibling pages',\n\n // pagination\n 'pagination.ariaLabel': 'Pagination',\n 'pagination.previous': 'Previous page',\n 'pagination.next': 'Next page',\n 'pagination.first': 'First page',\n 'pagination.last': 'Last page',\n 'pagination.ellipsis': 'More pages',\n 'pagination.currentPage': 'Current page',\n 'pagination.gotoPage': 'Go to page {{page}}',\n 'pagination.range': 'Showing {{from}}–{{to}} of {{total}}',\n 'pagination.pageOf': 'Page {{page}} of {{total}}',\n 'pagination.pageSizeLabel': 'Items per page',\n 'pagination.jumperLabel': 'Go to page',\n 'pagination.jumperPlaceholder': '#',\n\n // floatButton\n 'floatButton.backToTop': 'Back to top',\n\n // calendar\n 'calendar.header.previous': 'Previous',\n 'calendar.header.next': 'Next',\n 'calendar.header.openMonthView': 'Open month picker',\n 'calendar.header.openYearView': 'Open year picker',\n 'calendar.header.openDayView': 'Open day picker',\n 'calendar.today': 'Today',\n 'calendar.clear': 'Clear',\n\n // button\n 'button.loadingLabel': 'Loading',\n\n // input\n 'input.clear': 'Clear',\n 'input.passwordShow': 'Show password',\n 'input.passwordHide': 'Hide password',\n\n // checkbox / switch\n 'checkbox.checked': 'Checked',\n 'checkbox.unchecked': 'Unchecked',\n 'switch.on': 'On',\n 'switch.off': 'Off',\n};\n","import type { Dictionary, I18nInput, I18nOptions, TranslateFn } from './types';\n\n/**\n * Normalizes the consumer's i18n input (undefined | dictionary | function) into a\n * uniform TranslateFn. Internal code only calls the returned function.\n *\n * Precedence for a given key lookup:\n * 1. consumer function (if provided) — called verbatim, no further fallback\n * 2. consumer dictionary (if provided)\n * 3. library defaults\n * 4. options.defaultValue\n * 5. the key itself (so missing strings are visible in dev, not silent)\n */\nexport function resolveI18n(input: I18nInput, defaults: Dictionary): TranslateFn {\n if (typeof input === 'function') {\n // Wrap so the consumer fn is always invoked with (key, options) — enables\n // Jest `toHaveBeenCalledWith(key, undefined)` assertions and mirrors i18next's\n // own call signature exactly.\n return (keyOrKeys, options) => input(keyOrKeys, options);\n }\n\n const dict = input ?? {};\n\n return (keyOrKeys, options) => {\n const keys = Array.isArray(keyOrKeys) ? keyOrKeys : [keyOrKeys];\n for (const rawKey of keys) {\n const key = pluralize(rawKey, options?.count);\n const template = dict[key] ?? defaults[key];\n if (template !== undefined) {\n return interpolate(template, options);\n }\n }\n // exhausted the key list\n const lastKey = keys[keys.length - 1];\n if (options?.defaultValue !== undefined) {\n return interpolate(options.defaultValue, options);\n }\n return lastKey ?? '';\n };\n}\n\nfunction pluralize(key: string, count: number | undefined): string {\n if (count === undefined) {\n return key;\n }\n // Minimal English pluralization — extend with ICU rules later if needed.\n if (count === 1) {\n return `${key}_one`;\n }\n return `${key}_other`;\n}\n\nfunction interpolate(template: string, options: I18nOptions | undefined): string {\n if (!options) {\n return template;\n }\n return template.replace(/\\{\\{\\s*([A-Za-z0-9_.-]+)\\s*\\}\\}/g, (_match, name: string) => {\n const value = options[name];\n return value === undefined || value === null ? '' : String(value);\n });\n}\n"]}
1
+ {"version":3,"sources":["../../src/i18n/default-dictionary.ts","../../src/i18n/resolve.ts"],"names":[],"mappings":";;;;;;AAWO,IAAM,iBAAA,GAAgC;AAAA;AAAA,EAEzC,eAAA,EAAiB,QAAA;AAAA,EACjB,gBAAA,EAAkB,SAAA;AAAA,EAClB,cAAA,EAAgB,OAAA;AAAA,EAChB,aAAA,EAAe,MAAA;AAAA,EACf,gBAAA,EAAkB,SAAA;AAAA,EAClB,cAAA,EAAgB,sBAAA;AAAA,EAChB,cAAA,EAAgB,WAAA;AAAA;AAAA,EAGhB,sBAAA,EAAwB,YAAA;AAAA,EACxB,wBAAA,EAA0B,gBAAA;AAAA,EAC1B,0BAAA,EAA4B,MAAA;AAAA,EAC5B,6BAAA,EAA+B,cAAA;AAAA,EAC/B,6BAAA,EAA+B,oBAAA;AAAA;AAAA,EAG/B,sBAAA,EAAwB,YAAA;AAAA,EACxB,qBAAA,EAAuB,eAAA;AAAA,EACvB,iBAAA,EAAmB,WAAA;AAAA,EACnB,kBAAA,EAAoB,YAAA;AAAA,EACpB,iBAAA,EAAmB,WAAA;AAAA,EACnB,qBAAA,EAAuB,YAAA;AAAA,EACvB,wBAAA,EAA0B,cAAA;AAAA,EAC1B,qBAAA,EAAuB,qBAAA;AAAA,EACvB,kBAAA,EAAoB,2CAAA;AAAA,EACpB,mBAAA,EAAqB,4BAAA;AAAA,EACrB,0BAAA,EAA4B,gBAAA;AAAA,EAC5B,wBAAA,EAA0B,YAAA;AAAA,EAC1B,8BAAA,EAAgC,GAAA;AAAA;AAAA,EAGhC,uBAAA,EAAyB,aAAA;AAAA;AAAA,EAGzB,0BAAA,EAA4B,gBAAA;AAAA,EAC5B,sBAAA,EAAwB,YAAA;AAAA,EACxB,+BAAA,EAAiC,mBAAA;AAAA,EACjC,8BAAA,EAAgC,kBAAA;AAAA,EAChC,6BAAA,EAA+B,iBAAA;AAAA,EAC/B,gBAAA,EAAkB,OAAA;AAAA,EAClB,gBAAA,EAAkB,OAAA;AAAA;AAAA,EAGlB,qBAAA,EAAuB,SAAA;AAAA;AAAA,EAGvB,aAAA,EAAe,OAAA;AAAA,EACf,oBAAA,EAAsB,eAAA;AAAA,EACtB,oBAAA,EAAsB,eAAA;AAAA;AAAA,EAGtB,kBAAA,EAAoB,SAAA;AAAA,EACpB,oBAAA,EAAsB,WAAA;AAAA,EACtB,WAAA,EAAa,IAAA;AAAA,EACb,YAAA,EAAc,KAAA;AAAA;AAAA,EAGd,yBAAA,EAA2B,GAAA;AAAA,EAC3B,qBAAA,EAAuB;AAC3B;;;AC3DO,SAAS,WAAA,CAAY,OAAkB,QAAA,EAAmC;AAC7E,EAAA,IAAI,OAAO,UAAU,UAAA,EAAY;AAI7B,IAAA,OAAO,CAAC,SAAA,EAAW,OAAA,KAAY,KAAA,CAAM,WAAW,OAAO,CAAA;AAAA,EAC3D;AAEA,EAAA,MAAM,IAAA,GAAO,SAAS,EAAC;AAEvB,EAAA,OAAO,CAAC,WAAW,OAAA,KAAY;AAC3B,IAAA,MAAM,OAAO,KAAA,CAAM,OAAA,CAAQ,SAAS,CAAA,GAAI,SAAA,GAAY,CAAC,SAAS,CAAA;AAC9D,IAAA,KAAA,MAAW,UAAU,IAAA,EAAM;AACvB,MAAA,MAAM,GAAA,GAAM,SAAA,CAAU,MAAA,EAAQ,OAAA,EAAS,KAAK,CAAA;AAC5C,MAAA,MAAM,QAAA,GAAW,IAAA,CAAK,GAAG,CAAA,IAAK,SAAS,GAAG,CAAA;AAC1C,MAAA,IAAI,aAAa,MAAA,EAAW;AACxB,QAAA,OAAO,WAAA,CAAY,UAAU,OAAO,CAAA;AAAA,MACxC;AAAA,IACJ;AAEA,IAAA,MAAM,OAAA,GAAU,IAAA,CAAK,IAAA,CAAK,MAAA,GAAS,CAAC,CAAA;AACpC,IAAA,IAAI,OAAA,EAAS,iBAAiB,MAAA,EAAW;AACrC,MAAA,OAAO,WAAA,CAAY,OAAA,CAAQ,YAAA,EAAc,OAAO,CAAA;AAAA,IACpD;AACA,IAAA,OAAO,OAAA,IAAW,EAAA;AAAA,EACtB,CAAA;AACJ;AA1BgB,MAAA,CAAA,WAAA,EAAA,aAAA,CAAA;AA4BhB,SAAS,SAAA,CAAU,KAAa,KAAA,EAAmC;AAC/D,EAAA,IAAI,UAAU,MAAA,EAAW;AACrB,IAAA,OAAO,GAAA;AAAA,EACX;AAEA,EAAA,IAAI,UAAU,CAAA,EAAG;AACb,IAAA,OAAO,GAAG,GAAG,CAAA,IAAA,CAAA;AAAA,EACjB;AACA,EAAA,OAAO,GAAG,GAAG,CAAA,MAAA,CAAA;AACjB;AATS,MAAA,CAAA,SAAA,EAAA,WAAA,CAAA;AAWT,SAAS,WAAA,CAAY,UAAkB,OAAA,EAA0C;AAC7E,EAAA,IAAI,CAAC,OAAA,EAAS;AACV,IAAA,OAAO,QAAA;AAAA,EACX;AACA,EAAA,OAAO,QAAA,CAAS,OAAA,CAAQ,kCAAA,EAAoC,CAAC,QAAQ,IAAA,KAAiB;AAClF,IAAA,MAAM,KAAA,GAAQ,QAAQ,IAAI,CAAA;AAC1B,IAAA,OAAO,UAAU,MAAA,IAAa,KAAA,KAAU,IAAA,GAAO,EAAA,GAAK,OAAO,KAAK,CAAA;AAAA,EACpE,CAAC,CAAA;AACL;AARS,MAAA,CAAA,WAAA,EAAA,aAAA,CAAA","file":"index.cjs","sourcesContent":["import type { Dictionary } from './types';\n\n/**\n * Default English strings used by library components.\n *\n * Key naming convention:\n * <component>.<purpose>[_plural-form]\n *\n * Plural suffixes follow i18next: `_zero`, `_one`, `_two`, `_few`, `_many`, `_other`.\n * Interpolation uses `{{name}}` — double braces, no spaces, by convention.\n */\nexport const defaultDictionary: Dictionary = {\n // generic / shared\n 'common.cancel': 'Cancel',\n 'common.confirm': 'Confirm',\n 'common.close': 'Close',\n 'common.back': 'Back',\n 'common.loading': 'Loading',\n 'common.error': 'Something went wrong',\n 'common.retry': 'Try again',\n\n // breadcrumb\n 'breadcrumb.ariaLabel': 'Breadcrumb',\n 'breadcrumb.expandLabel': 'Show full path',\n 'breadcrumb.ellipsisLabel': 'More',\n 'breadcrumb.currentPageLabel': 'Current page',\n 'breadcrumb.siblingMenuLabel': 'Open sibling pages',\n\n // pagination\n 'pagination.ariaLabel': 'Pagination',\n 'pagination.previous': 'Previous page',\n 'pagination.next': 'Next page',\n 'pagination.first': 'First page',\n 'pagination.last': 'Last page',\n 'pagination.ellipsis': 'More pages',\n 'pagination.currentPage': 'Current page',\n 'pagination.gotoPage': 'Go to page {{page}}',\n 'pagination.range': 'Showing {{from}}–{{to}} of {{total}}',\n 'pagination.pageOf': 'Page {{page}} of {{total}}',\n 'pagination.pageSizeLabel': 'Items per page',\n 'pagination.jumperLabel': 'Go to page',\n 'pagination.jumperPlaceholder': '#',\n\n // floatButton\n 'floatButton.backToTop': 'Back to top',\n\n // calendar\n 'calendar.header.previous': 'Previous month',\n 'calendar.header.next': 'Next month',\n 'calendar.header.openMonthView': 'Open month picker',\n 'calendar.header.openYearView': 'Open year picker',\n 'calendar.header.openDayView': 'Open day picker',\n 'calendar.today': 'Today',\n 'calendar.clear': 'Clear',\n\n // button\n 'button.loadingLabel': 'Loading',\n\n // input\n 'input.clear': 'Clear',\n 'input.passwordShow': 'Show password',\n 'input.passwordHide': 'Hide password',\n\n // checkbox / switch\n 'checkbox.checked': 'Checked',\n 'checkbox.unchecked': 'Unchecked',\n 'switch.on': 'On',\n 'switch.off': 'Off',\n\n // field\n 'field.requiredIndicator': '*',\n 'field.requiredLabel': 'required',\n};\n","import type { Dictionary, I18nInput, I18nOptions, TranslateFn } from './types';\n\n/**\n * Normalizes the consumer's i18n input (undefined | dictionary | function) into a\n * uniform TranslateFn. Internal code only calls the returned function.\n *\n * Precedence for a given key lookup:\n * 1. consumer function (if provided) — called verbatim, no further fallback\n * 2. consumer dictionary (if provided)\n * 3. library defaults\n * 4. options.defaultValue\n * 5. the key itself (so missing strings are visible in dev, not silent)\n */\nexport function resolveI18n(input: I18nInput, defaults: Dictionary): TranslateFn {\n if (typeof input === 'function') {\n // Wrap so the consumer fn is always invoked with (key, options) — enables\n // Jest `toHaveBeenCalledWith(key, undefined)` assertions and mirrors i18next's\n // own call signature exactly.\n return (keyOrKeys, options) => input(keyOrKeys, options);\n }\n\n const dict = input ?? {};\n\n return (keyOrKeys, options) => {\n const keys = Array.isArray(keyOrKeys) ? keyOrKeys : [keyOrKeys];\n for (const rawKey of keys) {\n const key = pluralize(rawKey, options?.count);\n const template = dict[key] ?? defaults[key];\n if (template !== undefined) {\n return interpolate(template, options);\n }\n }\n // exhausted the key list\n const lastKey = keys[keys.length - 1];\n if (options?.defaultValue !== undefined) {\n return interpolate(options.defaultValue, options);\n }\n return lastKey ?? '';\n };\n}\n\nfunction pluralize(key: string, count: number | undefined): string {\n if (count === undefined) {\n return key;\n }\n // Minimal English pluralization — extend with ICU rules later if needed.\n if (count === 1) {\n return `${key}_one`;\n }\n return `${key}_other`;\n}\n\nfunction interpolate(template: string, options: I18nOptions | undefined): string {\n if (!options) {\n return template;\n }\n return template.replace(/\\{\\{\\s*([A-Za-z0-9_.-]+)\\s*\\}\\}/g, (_match, name: string) => {\n const value = options[name];\n return value === undefined || value === null ? '' : String(value);\n });\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import '../chunk-QI6646JZ.js';
2
- export { defaultDictionary, resolveI18n } from '../chunk-FT2XBBQJ.js';
2
+ export { defaultDictionary, resolveI18n } from '../chunk-6PO2IWB3.js';
3
3
  import '../chunk-WCQVDF3K.js';
4
4
  //# sourceMappingURL=index.js.map
5
5
  //# sourceMappingURL=index.js.map