@expcat/tigercat-core 1.3.4 → 1.4.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 (71) hide show
  1. package/dist/icons/registry.cjs +1 -3
  2. package/dist/icons/registry.js +1 -3
  3. package/dist/index.cjs +526 -190
  4. package/dist/index.d.cts +366 -268
  5. package/dist/index.d.ts +366 -268
  6. package/dist/index.js +508 -189
  7. package/dist/{locale-BuZwW3Ok.d.ts → locale-9tTj1QdZ.d.ts} +166 -1
  8. package/dist/{locale-DDFn0b6z.d.cts → locale-DxwhmqfF.d.cts} +166 -1
  9. package/dist/locales/ar-SA.cjs +61 -2
  10. package/dist/locales/ar-SA.d.cts +1 -1
  11. package/dist/locales/ar-SA.d.ts +1 -1
  12. package/dist/locales/ar-SA.js +61 -2
  13. package/dist/locales/de-DE.cjs +61 -2
  14. package/dist/locales/de-DE.d.cts +1 -1
  15. package/dist/locales/de-DE.d.ts +1 -1
  16. package/dist/locales/de-DE.js +61 -2
  17. package/dist/locales/en-US.cjs +61 -1
  18. package/dist/locales/en-US.d.cts +1 -1
  19. package/dist/locales/en-US.d.ts +1 -1
  20. package/dist/locales/en-US.js +59 -1
  21. package/dist/locales/es-ES.cjs +61 -2
  22. package/dist/locales/es-ES.d.cts +1 -1
  23. package/dist/locales/es-ES.d.ts +1 -1
  24. package/dist/locales/es-ES.js +61 -2
  25. package/dist/locales/fr-FR.cjs +61 -2
  26. package/dist/locales/fr-FR.d.cts +1 -1
  27. package/dist/locales/fr-FR.d.ts +1 -1
  28. package/dist/locales/fr-FR.js +61 -2
  29. package/dist/locales/id-ID.cjs +2 -1
  30. package/dist/locales/id-ID.d.cts +1 -1
  31. package/dist/locales/id-ID.d.ts +1 -1
  32. package/dist/locales/id-ID.js +2 -1
  33. package/dist/locales/ja-JP.cjs +2 -1
  34. package/dist/locales/ja-JP.d.cts +1 -1
  35. package/dist/locales/ja-JP.d.ts +1 -1
  36. package/dist/locales/ja-JP.js +2 -1
  37. package/dist/locales/ko-KR.cjs +2 -1
  38. package/dist/locales/ko-KR.d.cts +1 -1
  39. package/dist/locales/ko-KR.d.ts +1 -1
  40. package/dist/locales/ko-KR.js +2 -1
  41. package/dist/locales/pt-BR.cjs +61 -2
  42. package/dist/locales/pt-BR.d.cts +1 -1
  43. package/dist/locales/pt-BR.d.ts +1 -1
  44. package/dist/locales/pt-BR.js +61 -2
  45. package/dist/locales/th-TH.cjs +2 -1
  46. package/dist/locales/th-TH.d.cts +1 -1
  47. package/dist/locales/th-TH.d.ts +1 -1
  48. package/dist/locales/th-TH.js +2 -1
  49. package/dist/locales/vi-VN.cjs +2 -1
  50. package/dist/locales/vi-VN.d.cts +1 -1
  51. package/dist/locales/vi-VN.d.ts +1 -1
  52. package/dist/locales/vi-VN.js +2 -1
  53. package/dist/locales/zh-CN.cjs +61 -1
  54. package/dist/locales/zh-CN.d.cts +1 -1
  55. package/dist/locales/zh-CN.d.ts +1 -1
  56. package/dist/locales/zh-CN.js +59 -1
  57. package/dist/locales/zh-TW.cjs +2 -1
  58. package/dist/locales/zh-TW.d.cts +1 -1
  59. package/dist/locales/zh-TW.d.ts +1 -1
  60. package/dist/locales/zh-TW.js +2 -1
  61. package/dist/{table-export-DOqFkseW.d.cts → table-export-BMBH75rj.d.cts} +1 -1
  62. package/dist/{table-export-CZ7wtGf4.d.ts → table-export-GRimhvlM.d.ts} +1 -1
  63. package/dist/tailwind/modern.cjs +1 -1
  64. package/dist/tailwind/modern.js +1 -1
  65. package/dist/utils/table-export.cjs +7 -0
  66. package/dist/utils/table-export.d.cts +2 -2
  67. package/dist/utils/table-export.d.ts +2 -2
  68. package/dist/utils/table-export.js +7 -0
  69. package/package.json +2 -10
  70. package/tokens/tailwind-tokens.js +3 -6
  71. package/tokens/tokens.css +15 -30
@@ -1,5 +1,120 @@
1
1
  import { D as DatePickerLocalePreset } from './datepicker-DXzS_8l8.js';
2
2
 
3
+ /** TimePicker shared types */
4
+
5
+ type TimePickerSize = 'sm' | 'md' | 'lg';
6
+ type TimeFormat = '12' | '24';
7
+ type TimePickerSingleValue = string | null;
8
+ type TimePickerRangeValue = [string | null, string | null];
9
+ type TimePickerModelValue = TimePickerSingleValue | TimePickerRangeValue;
10
+ interface TimePickerLabels {
11
+ hour: string;
12
+ minute: string;
13
+ second: string;
14
+ now: string;
15
+ ok: string;
16
+ start: string;
17
+ end: string;
18
+ clear: string;
19
+ toggle: string;
20
+ dialog: string;
21
+ selectTime: string;
22
+ selectTimeRange: string;
23
+ }
24
+ interface TimePickerProps {
25
+ /**
26
+ * Locale used for UI labels (e.g. AM/PM) and display formatting.
27
+ * Example: 'zh-CN', 'en-US', or a Tigercat locale object.
28
+ */
29
+ locale?: string | Partial<TigerLocale>;
30
+ /**
31
+ * UI labels for i18n.
32
+ * When provided, merges with locale-based defaults.
33
+ */
34
+ labels?: Partial<TimePickerLabels>;
35
+ /**
36
+ * TimePicker size
37
+ * @default 'md'
38
+ */
39
+ size?: TimePickerSize;
40
+ /** Controlled value. Format: 'HH:mm' or 'HH:mm:ss' */
41
+ value?: TimePickerModelValue;
42
+ /** Uncontrolled default value. Format: 'HH:mm' or 'HH:mm:ss' */
43
+ defaultValue?: TimePickerModelValue;
44
+ /**
45
+ * Enable range selection (start/end).
46
+ * When true, value/defaultValue use a tuple: [start, end].
47
+ * @default false
48
+ */
49
+ range?: boolean;
50
+ /**
51
+ * Time format (12-hour or 24-hour)
52
+ * @default '24'
53
+ */
54
+ format?: TimeFormat;
55
+ /**
56
+ * Whether to show seconds
57
+ * @default false
58
+ */
59
+ showSeconds?: boolean;
60
+ /**
61
+ * Hour step
62
+ * @default 1
63
+ */
64
+ hourStep?: number;
65
+ /**
66
+ * Minute step
67
+ * @default 1
68
+ */
69
+ minuteStep?: number;
70
+ /**
71
+ * Second step
72
+ * @default 1
73
+ */
74
+ secondStep?: number;
75
+ /**
76
+ * Placeholder text
77
+ * @default 'Select time'
78
+ */
79
+ placeholder?: string;
80
+ /**
81
+ * Whether the timepicker is disabled
82
+ * @default false
83
+ */
84
+ disabled?: boolean;
85
+ /**
86
+ * Whether the timepicker is readonly
87
+ * @default false
88
+ */
89
+ readonly?: boolean;
90
+ /**
91
+ * Whether the timepicker is required
92
+ * @default false
93
+ */
94
+ required?: boolean;
95
+ /**
96
+ * Minimum selectable time (HH:mm format)
97
+ */
98
+ minTime?: string | null;
99
+ /**
100
+ * Maximum selectable time (HH:mm format)
101
+ */
102
+ maxTime?: string | null;
103
+ /**
104
+ * Whether to show the clear button
105
+ * @default true
106
+ */
107
+ clearable?: boolean;
108
+ /**
109
+ * Input name attribute
110
+ */
111
+ name?: string;
112
+ /**
113
+ * Input id attribute
114
+ */
115
+ id?: string;
116
+ }
117
+
3
118
  type TigerLocaleDirection = 'ltr' | 'rtl';
4
119
  interface TigerLocaleCommon {
5
120
  okText?: string;
@@ -7,6 +122,12 @@ interface TigerLocaleCommon {
7
122
  closeText?: string;
8
123
  loadingText?: string;
9
124
  emptyText?: string;
125
+ /** Default "no more items" text for infinite-scroll end state */
126
+ noMoreText?: string;
127
+ /** Default placeholder for in-component search inputs (Select/Tree/Transfer/Cascader…) */
128
+ searchPlaceholder?: string;
129
+ /** Default label for clear actions */
130
+ clearText?: string;
10
131
  }
11
132
  interface TigerLocaleModal {
12
133
  closeAriaLabel?: string;
@@ -89,6 +210,7 @@ interface TigerLocaleFormWizard {
89
210
  nextText?: string;
90
211
  finishText?: string;
91
212
  }
213
+ type TigerLocaleTimePicker = Partial<TimePickerLabels>;
92
214
  interface TigerLocaleTaskBoard {
93
215
  /** Placeholder shown inside an empty column */
94
216
  emptyColumnText?: string;
@@ -101,6 +223,47 @@ interface TigerLocaleTaskBoard {
101
223
  /** Aria label for the board root region */
102
224
  boardAriaLabel?: string;
103
225
  }
226
+ /**
227
+ * Built-in form-validation messages.
228
+ *
229
+ * Used by `validateRule`/`validateField`/`validateForm` to localize the
230
+ * default error messages. A per-rule `message` always takes precedence over
231
+ * these. Range messages support `{min}` / `{max}` placeholders.
232
+ */
233
+ interface TigerLocaleFormValidation {
234
+ /** Required-field message */
235
+ required?: string;
236
+ /** Type errors */
237
+ typeString?: string;
238
+ typeNumber?: string;
239
+ typeBoolean?: string;
240
+ typeArray?: string;
241
+ typeObject?: string;
242
+ /** Preset type errors */
243
+ email?: string;
244
+ phone?: string;
245
+ url?: string;
246
+ date?: string;
247
+ idCard?: string;
248
+ /** Range errors — template: supports {min} */
249
+ minLength?: string;
250
+ /** Template: supports {max} */
251
+ maxLength?: string;
252
+ /** Template: supports {min} */
253
+ minValue?: string;
254
+ /** Template: supports {max} */
255
+ maxValue?: string;
256
+ /** Template: supports {min} */
257
+ minItems?: string;
258
+ /** Template: supports {max} */
259
+ maxItems?: string;
260
+ /** Pattern mismatch message */
261
+ patternMismatch?: string;
262
+ /** Custom validator returned false */
263
+ validatorFailed?: string;
264
+ /** Custom validator threw */
265
+ validatorError?: string;
266
+ }
104
267
  interface TigerLocale {
105
268
  /** BCP 47 locale identifier, for Intl formatting and direction inference. */
106
269
  locale?: string;
@@ -113,8 +276,10 @@ interface TigerLocale {
113
276
  pagination?: TigerLocalePagination;
114
277
  table?: TigerLocaleTable;
115
278
  datePicker?: Partial<DatePickerLocalePreset>;
279
+ timePicker?: TigerLocaleTimePicker;
116
280
  formWizard?: TigerLocaleFormWizard;
117
281
  taskBoard?: TigerLocaleTaskBoard;
282
+ formValidation?: TigerLocaleFormValidation;
118
283
  }
119
284
  /**
120
285
  * Flat custom-text overlay for single-language projects that do not need i18n.
@@ -132,4 +297,4 @@ type TigerLocaleLazyModule = Partial<TigerLocale> | {
132
297
  type TigerLocaleLoader = () => PromiseLike<TigerLocaleLazyModule>;
133
298
  type TigerLocaleInput = Partial<TigerLocale> | PromiseLike<TigerLocaleLazyModule> | TigerLocaleLoader;
134
299
 
135
- export type { TigerLocale as T, TigerLocaleInput as a, TigerLocaleLazyModule as b, TigerLocaleLoader as c, TigerLocaleDirection as d, TigerLocalePagination as e, TigerLocaleFormWizard as f, TigerLocaleTable as g, TigerLocaleTaskBoard as h, TigerText as i, TigerLocaleDrawer as j, TigerLocaleModal as k, TigerLocaleCommon as l, TigerLocaleUpload as m };
300
+ export type { TigerLocale as T, TigerLocaleInput as a, TigerLocaleLazyModule as b, TigerLocaleLoader as c, TigerLocaleDirection as d, TigerLocalePagination as e, TigerLocaleFormWizard as f, TigerLocaleTable as g, TigerLocaleTaskBoard as h, TigerLocaleFormValidation as i, TimePickerLabels as j, TigerText as k, TimeFormat as l, TigerLocaleDrawer as m, TigerLocaleModal as n, TimePickerSize as o, TimePickerSingleValue as p, TimePickerRangeValue as q, TimePickerModelValue as r, TimePickerProps as s, TigerLocaleCommon as t, TigerLocaleUpload as u, TigerLocaleTimePicker as v };
@@ -1,5 +1,120 @@
1
1
  import { D as DatePickerLocalePreset } from './datepicker-DXzS_8l8.cjs';
2
2
 
3
+ /** TimePicker shared types */
4
+
5
+ type TimePickerSize = 'sm' | 'md' | 'lg';
6
+ type TimeFormat = '12' | '24';
7
+ type TimePickerSingleValue = string | null;
8
+ type TimePickerRangeValue = [string | null, string | null];
9
+ type TimePickerModelValue = TimePickerSingleValue | TimePickerRangeValue;
10
+ interface TimePickerLabels {
11
+ hour: string;
12
+ minute: string;
13
+ second: string;
14
+ now: string;
15
+ ok: string;
16
+ start: string;
17
+ end: string;
18
+ clear: string;
19
+ toggle: string;
20
+ dialog: string;
21
+ selectTime: string;
22
+ selectTimeRange: string;
23
+ }
24
+ interface TimePickerProps {
25
+ /**
26
+ * Locale used for UI labels (e.g. AM/PM) and display formatting.
27
+ * Example: 'zh-CN', 'en-US', or a Tigercat locale object.
28
+ */
29
+ locale?: string | Partial<TigerLocale>;
30
+ /**
31
+ * UI labels for i18n.
32
+ * When provided, merges with locale-based defaults.
33
+ */
34
+ labels?: Partial<TimePickerLabels>;
35
+ /**
36
+ * TimePicker size
37
+ * @default 'md'
38
+ */
39
+ size?: TimePickerSize;
40
+ /** Controlled value. Format: 'HH:mm' or 'HH:mm:ss' */
41
+ value?: TimePickerModelValue;
42
+ /** Uncontrolled default value. Format: 'HH:mm' or 'HH:mm:ss' */
43
+ defaultValue?: TimePickerModelValue;
44
+ /**
45
+ * Enable range selection (start/end).
46
+ * When true, value/defaultValue use a tuple: [start, end].
47
+ * @default false
48
+ */
49
+ range?: boolean;
50
+ /**
51
+ * Time format (12-hour or 24-hour)
52
+ * @default '24'
53
+ */
54
+ format?: TimeFormat;
55
+ /**
56
+ * Whether to show seconds
57
+ * @default false
58
+ */
59
+ showSeconds?: boolean;
60
+ /**
61
+ * Hour step
62
+ * @default 1
63
+ */
64
+ hourStep?: number;
65
+ /**
66
+ * Minute step
67
+ * @default 1
68
+ */
69
+ minuteStep?: number;
70
+ /**
71
+ * Second step
72
+ * @default 1
73
+ */
74
+ secondStep?: number;
75
+ /**
76
+ * Placeholder text
77
+ * @default 'Select time'
78
+ */
79
+ placeholder?: string;
80
+ /**
81
+ * Whether the timepicker is disabled
82
+ * @default false
83
+ */
84
+ disabled?: boolean;
85
+ /**
86
+ * Whether the timepicker is readonly
87
+ * @default false
88
+ */
89
+ readonly?: boolean;
90
+ /**
91
+ * Whether the timepicker is required
92
+ * @default false
93
+ */
94
+ required?: boolean;
95
+ /**
96
+ * Minimum selectable time (HH:mm format)
97
+ */
98
+ minTime?: string | null;
99
+ /**
100
+ * Maximum selectable time (HH:mm format)
101
+ */
102
+ maxTime?: string | null;
103
+ /**
104
+ * Whether to show the clear button
105
+ * @default true
106
+ */
107
+ clearable?: boolean;
108
+ /**
109
+ * Input name attribute
110
+ */
111
+ name?: string;
112
+ /**
113
+ * Input id attribute
114
+ */
115
+ id?: string;
116
+ }
117
+
3
118
  type TigerLocaleDirection = 'ltr' | 'rtl';
4
119
  interface TigerLocaleCommon {
5
120
  okText?: string;
@@ -7,6 +122,12 @@ interface TigerLocaleCommon {
7
122
  closeText?: string;
8
123
  loadingText?: string;
9
124
  emptyText?: string;
125
+ /** Default "no more items" text for infinite-scroll end state */
126
+ noMoreText?: string;
127
+ /** Default placeholder for in-component search inputs (Select/Tree/Transfer/Cascader…) */
128
+ searchPlaceholder?: string;
129
+ /** Default label for clear actions */
130
+ clearText?: string;
10
131
  }
11
132
  interface TigerLocaleModal {
12
133
  closeAriaLabel?: string;
@@ -89,6 +210,7 @@ interface TigerLocaleFormWizard {
89
210
  nextText?: string;
90
211
  finishText?: string;
91
212
  }
213
+ type TigerLocaleTimePicker = Partial<TimePickerLabels>;
92
214
  interface TigerLocaleTaskBoard {
93
215
  /** Placeholder shown inside an empty column */
94
216
  emptyColumnText?: string;
@@ -101,6 +223,47 @@ interface TigerLocaleTaskBoard {
101
223
  /** Aria label for the board root region */
102
224
  boardAriaLabel?: string;
103
225
  }
226
+ /**
227
+ * Built-in form-validation messages.
228
+ *
229
+ * Used by `validateRule`/`validateField`/`validateForm` to localize the
230
+ * default error messages. A per-rule `message` always takes precedence over
231
+ * these. Range messages support `{min}` / `{max}` placeholders.
232
+ */
233
+ interface TigerLocaleFormValidation {
234
+ /** Required-field message */
235
+ required?: string;
236
+ /** Type errors */
237
+ typeString?: string;
238
+ typeNumber?: string;
239
+ typeBoolean?: string;
240
+ typeArray?: string;
241
+ typeObject?: string;
242
+ /** Preset type errors */
243
+ email?: string;
244
+ phone?: string;
245
+ url?: string;
246
+ date?: string;
247
+ idCard?: string;
248
+ /** Range errors — template: supports {min} */
249
+ minLength?: string;
250
+ /** Template: supports {max} */
251
+ maxLength?: string;
252
+ /** Template: supports {min} */
253
+ minValue?: string;
254
+ /** Template: supports {max} */
255
+ maxValue?: string;
256
+ /** Template: supports {min} */
257
+ minItems?: string;
258
+ /** Template: supports {max} */
259
+ maxItems?: string;
260
+ /** Pattern mismatch message */
261
+ patternMismatch?: string;
262
+ /** Custom validator returned false */
263
+ validatorFailed?: string;
264
+ /** Custom validator threw */
265
+ validatorError?: string;
266
+ }
104
267
  interface TigerLocale {
105
268
  /** BCP 47 locale identifier, for Intl formatting and direction inference. */
106
269
  locale?: string;
@@ -113,8 +276,10 @@ interface TigerLocale {
113
276
  pagination?: TigerLocalePagination;
114
277
  table?: TigerLocaleTable;
115
278
  datePicker?: Partial<DatePickerLocalePreset>;
279
+ timePicker?: TigerLocaleTimePicker;
116
280
  formWizard?: TigerLocaleFormWizard;
117
281
  taskBoard?: TigerLocaleTaskBoard;
282
+ formValidation?: TigerLocaleFormValidation;
118
283
  }
119
284
  /**
120
285
  * Flat custom-text overlay for single-language projects that do not need i18n.
@@ -132,4 +297,4 @@ type TigerLocaleLazyModule = Partial<TigerLocale> | {
132
297
  type TigerLocaleLoader = () => PromiseLike<TigerLocaleLazyModule>;
133
298
  type TigerLocaleInput = Partial<TigerLocale> | PromiseLike<TigerLocaleLazyModule> | TigerLocaleLoader;
134
299
 
135
- export type { TigerLocale as T, TigerLocaleInput as a, TigerLocaleLazyModule as b, TigerLocaleLoader as c, TigerLocaleDirection as d, TigerLocalePagination as e, TigerLocaleFormWizard as f, TigerLocaleTable as g, TigerLocaleTaskBoard as h, TigerText as i, TigerLocaleDrawer as j, TigerLocaleModal as k, TigerLocaleCommon as l, TigerLocaleUpload as m };
300
+ export type { TigerLocale as T, TigerLocaleInput as a, TigerLocaleLazyModule as b, TigerLocaleLoader as c, TigerLocaleDirection as d, TigerLocalePagination as e, TigerLocaleFormWizard as f, TigerLocaleTable as g, TigerLocaleTaskBoard as h, TigerLocaleFormValidation as i, TimePickerLabels as j, TigerText as k, TimeFormat as l, TigerLocaleDrawer as m, TigerLocaleModal as n, TimePickerSize as o, TimePickerSingleValue as p, TimePickerRangeValue as q, TimePickerModelValue as r, TimePickerProps as s, TigerLocaleCommon as t, TigerLocaleUpload as u, TigerLocaleTimePicker as v };
@@ -25,6 +25,37 @@ __export(ar_SA_exports, {
25
25
  });
26
26
  module.exports = __toCommonJS(ar_SA_exports);
27
27
 
28
+ // src/utils/locale-utils.ts
29
+ var DEFAULT_TIME_PICKER_LABELS = {
30
+ hour: "Hour",
31
+ minute: "Min",
32
+ second: "Sec",
33
+ now: "Now",
34
+ ok: "OK",
35
+ start: "Start",
36
+ end: "End",
37
+ clear: "Clear time",
38
+ toggle: "Toggle time picker",
39
+ dialog: "Time picker",
40
+ selectTime: "Select time",
41
+ selectTimeRange: "Select time range"
42
+ };
43
+ var DEFAULT_UPLOAD_LABELS = {
44
+ dragAreaAriaLabel: "Upload file by clicking or dragging",
45
+ buttonAriaLabel: "Upload file",
46
+ clickToUploadText: "Click to upload",
47
+ dragAndDropText: "or drag and drop",
48
+ acceptInfoText: "Accepted: {accept}",
49
+ maxSizeInfoText: "Max size: {maxSize}",
50
+ selectFileText: "Select File",
51
+ uploadedFilesAriaLabel: "Uploaded files",
52
+ successAriaLabel: "Success",
53
+ errorAriaLabel: "Error",
54
+ uploadingAriaLabel: "Uploading",
55
+ removeFileAriaLabel: "Remove {fileName}",
56
+ previewFileAriaLabel: "Preview {fileName}"
57
+ };
58
+
28
59
  // src/utils/i18n/locales/en-US.ts
29
60
  var enUS = {
30
61
  locale: "en-US",
@@ -34,7 +65,10 @@ var enUS = {
34
65
  cancelText: "Cancel",
35
66
  closeText: "Close",
36
67
  loadingText: "Loading...",
37
- emptyText: "No data"
68
+ emptyText: "No data",
69
+ noMoreText: "No more data",
70
+ searchPlaceholder: "Search",
71
+ clearText: "Clear"
38
72
  },
39
73
  modal: {
40
74
  closeAriaLabel: "Close",
@@ -44,6 +78,7 @@ var enUS = {
44
78
  drawer: {
45
79
  closeAriaLabel: "Close"
46
80
  },
81
+ upload: DEFAULT_UPLOAD_LABELS,
47
82
  pagination: {
48
83
  totalText: "Total {total} items",
49
84
  itemsPerPageText: "/ page",
@@ -73,6 +108,7 @@ var enUS = {
73
108
  lockColumnAriaLabel: "Lock column {column}",
74
109
  unlockColumnAriaLabel: "Unlock column {column}"
75
110
  },
111
+ timePicker: DEFAULT_TIME_PICKER_LABELS,
76
112
  formWizard: {
77
113
  prevText: "Previous",
78
114
  nextText: "Next",
@@ -84,6 +120,28 @@ var enUS = {
84
120
  wipLimitText: "WIP limit: {limit}",
85
121
  dragHintText: "Drag to move",
86
122
  boardAriaLabel: "Task Board"
123
+ },
124
+ formValidation: {
125
+ required: "This field is required",
126
+ typeString: "Value must be a string",
127
+ typeNumber: "Value must be a number",
128
+ typeBoolean: "Value must be a boolean",
129
+ typeArray: "Value must be an array",
130
+ typeObject: "Value must be an object",
131
+ email: "Please enter a valid email address",
132
+ phone: "Please enter a valid phone number",
133
+ url: "Please enter a valid URL",
134
+ date: "Please enter a valid date",
135
+ idCard: "Please enter a valid ID card number",
136
+ minLength: "Minimum length is {min} characters",
137
+ maxLength: "Maximum length is {max} characters",
138
+ minValue: "Minimum value is {min}",
139
+ maxValue: "Maximum value is {max}",
140
+ minItems: "Minimum {min} items required",
141
+ maxItems: "Maximum {max} items allowed",
142
+ patternMismatch: "Value does not match the required pattern",
143
+ validatorFailed: "Validation failed",
144
+ validatorError: "Validation error occurred"
87
145
  }
88
146
  };
89
147
 
@@ -121,7 +179,8 @@ var arSA = defineLocale({
121
179
  cancelText: "\u0625\u0644\u063A\u0627\u0621",
122
180
  closeText: "\u0625\u063A\u0644\u0627\u0642",
123
181
  loadingText: "\u062C\u0627\u0631 \u0627\u0644\u062A\u062D\u0645\u064A\u0644...",
124
- emptyText: "\u0644\u0627 \u062A\u0648\u062C\u062F \u0628\u064A\u0627\u0646\u0627\u062A"
182
+ emptyText: "\u0644\u0627 \u062A\u0648\u062C\u062F \u0628\u064A\u0627\u0646\u0627\u062A",
183
+ noMoreText: "\u0644\u0627 \u0645\u0632\u064A\u062F \u0645\u0646 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A"
125
184
  },
126
185
  modal: {
127
186
  closeAriaLabel: "\u0625\u063A\u0644\u0627\u0642",
@@ -1,4 +1,4 @@
1
- import { T as TigerLocale } from '../locale-DDFn0b6z.cjs';
1
+ import { T as TigerLocale } from '../locale-DxwhmqfF.cjs';
2
2
  import '../datepicker-DXzS_8l8.cjs';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { T as TigerLocale } from '../locale-BuZwW3Ok.js';
1
+ import { T as TigerLocale } from '../locale-9tTj1QdZ.js';
2
2
  import '../datepicker-DXzS_8l8.js';
3
3
 
4
4
  /**
@@ -1,3 +1,34 @@
1
+ // src/utils/locale-utils.ts
2
+ var DEFAULT_TIME_PICKER_LABELS = {
3
+ hour: "Hour",
4
+ minute: "Min",
5
+ second: "Sec",
6
+ now: "Now",
7
+ ok: "OK",
8
+ start: "Start",
9
+ end: "End",
10
+ clear: "Clear time",
11
+ toggle: "Toggle time picker",
12
+ dialog: "Time picker",
13
+ selectTime: "Select time",
14
+ selectTimeRange: "Select time range"
15
+ };
16
+ var DEFAULT_UPLOAD_LABELS = {
17
+ dragAreaAriaLabel: "Upload file by clicking or dragging",
18
+ buttonAriaLabel: "Upload file",
19
+ clickToUploadText: "Click to upload",
20
+ dragAndDropText: "or drag and drop",
21
+ acceptInfoText: "Accepted: {accept}",
22
+ maxSizeInfoText: "Max size: {maxSize}",
23
+ selectFileText: "Select File",
24
+ uploadedFilesAriaLabel: "Uploaded files",
25
+ successAriaLabel: "Success",
26
+ errorAriaLabel: "Error",
27
+ uploadingAriaLabel: "Uploading",
28
+ removeFileAriaLabel: "Remove {fileName}",
29
+ previewFileAriaLabel: "Preview {fileName}"
30
+ };
31
+
1
32
  // src/utils/i18n/locales/en-US.ts
2
33
  var enUS = {
3
34
  locale: "en-US",
@@ -7,7 +38,10 @@ var enUS = {
7
38
  cancelText: "Cancel",
8
39
  closeText: "Close",
9
40
  loadingText: "Loading...",
10
- emptyText: "No data"
41
+ emptyText: "No data",
42
+ noMoreText: "No more data",
43
+ searchPlaceholder: "Search",
44
+ clearText: "Clear"
11
45
  },
12
46
  modal: {
13
47
  closeAriaLabel: "Close",
@@ -17,6 +51,7 @@ var enUS = {
17
51
  drawer: {
18
52
  closeAriaLabel: "Close"
19
53
  },
54
+ upload: DEFAULT_UPLOAD_LABELS,
20
55
  pagination: {
21
56
  totalText: "Total {total} items",
22
57
  itemsPerPageText: "/ page",
@@ -46,6 +81,7 @@ var enUS = {
46
81
  lockColumnAriaLabel: "Lock column {column}",
47
82
  unlockColumnAriaLabel: "Unlock column {column}"
48
83
  },
84
+ timePicker: DEFAULT_TIME_PICKER_LABELS,
49
85
  formWizard: {
50
86
  prevText: "Previous",
51
87
  nextText: "Next",
@@ -57,6 +93,28 @@ var enUS = {
57
93
  wipLimitText: "WIP limit: {limit}",
58
94
  dragHintText: "Drag to move",
59
95
  boardAriaLabel: "Task Board"
96
+ },
97
+ formValidation: {
98
+ required: "This field is required",
99
+ typeString: "Value must be a string",
100
+ typeNumber: "Value must be a number",
101
+ typeBoolean: "Value must be a boolean",
102
+ typeArray: "Value must be an array",
103
+ typeObject: "Value must be an object",
104
+ email: "Please enter a valid email address",
105
+ phone: "Please enter a valid phone number",
106
+ url: "Please enter a valid URL",
107
+ date: "Please enter a valid date",
108
+ idCard: "Please enter a valid ID card number",
109
+ minLength: "Minimum length is {min} characters",
110
+ maxLength: "Maximum length is {max} characters",
111
+ minValue: "Minimum value is {min}",
112
+ maxValue: "Maximum value is {max}",
113
+ minItems: "Minimum {min} items required",
114
+ maxItems: "Maximum {max} items allowed",
115
+ patternMismatch: "Value does not match the required pattern",
116
+ validatorFailed: "Validation failed",
117
+ validatorError: "Validation error occurred"
60
118
  }
61
119
  };
62
120
 
@@ -94,7 +152,8 @@ var arSA = defineLocale({
94
152
  cancelText: "\u0625\u0644\u063A\u0627\u0621",
95
153
  closeText: "\u0625\u063A\u0644\u0627\u0642",
96
154
  loadingText: "\u062C\u0627\u0631 \u0627\u0644\u062A\u062D\u0645\u064A\u0644...",
97
- emptyText: "\u0644\u0627 \u062A\u0648\u062C\u062F \u0628\u064A\u0627\u0646\u0627\u062A"
155
+ emptyText: "\u0644\u0627 \u062A\u0648\u062C\u062F \u0628\u064A\u0627\u0646\u0627\u062A",
156
+ noMoreText: "\u0644\u0627 \u0645\u0632\u064A\u062F \u0645\u0646 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A"
98
157
  },
99
158
  modal: {
100
159
  closeAriaLabel: "\u0625\u063A\u0644\u0627\u0642",