@expcat/tigercat-core 1.2.37 → 1.2.39

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 (63) hide show
  1. package/dist/index.cjs +84 -1
  2. package/dist/index.d.cts +11 -6
  3. package/dist/index.d.ts +11 -6
  4. package/dist/index.js +79 -1
  5. package/dist/{locale-C0cvkjts.d.ts → locale-CieZS1DZ.d.ts} +19 -1
  6. package/dist/{locale-BiVGd2Kj.d.cts → locale-DRA6alwj.d.cts} +19 -1
  7. package/dist/locales/ar-SA.cjs +30 -0
  8. package/dist/locales/ar-SA.d.cts +1 -1
  9. package/dist/locales/ar-SA.d.ts +1 -1
  10. package/dist/locales/ar-SA.js +30 -0
  11. package/dist/locales/de-DE.cjs +30 -0
  12. package/dist/locales/de-DE.d.cts +1 -1
  13. package/dist/locales/de-DE.d.ts +1 -1
  14. package/dist/locales/de-DE.js +30 -0
  15. package/dist/locales/en-US.cjs +15 -0
  16. package/dist/locales/en-US.d.cts +1 -1
  17. package/dist/locales/en-US.d.ts +1 -1
  18. package/dist/locales/en-US.js +15 -0
  19. package/dist/locales/es-ES.cjs +30 -0
  20. package/dist/locales/es-ES.d.cts +1 -1
  21. package/dist/locales/es-ES.d.ts +1 -1
  22. package/dist/locales/es-ES.js +30 -0
  23. package/dist/locales/fr-FR.cjs +30 -0
  24. package/dist/locales/fr-FR.d.cts +1 -1
  25. package/dist/locales/fr-FR.d.ts +1 -1
  26. package/dist/locales/fr-FR.js +30 -0
  27. package/dist/locales/id-ID.cjs +15 -0
  28. package/dist/locales/id-ID.d.cts +1 -1
  29. package/dist/locales/id-ID.d.ts +1 -1
  30. package/dist/locales/id-ID.js +15 -0
  31. package/dist/locales/ja-JP.cjs +15 -0
  32. package/dist/locales/ja-JP.d.cts +1 -1
  33. package/dist/locales/ja-JP.d.ts +1 -1
  34. package/dist/locales/ja-JP.js +15 -0
  35. package/dist/locales/ko-KR.cjs +15 -0
  36. package/dist/locales/ko-KR.d.cts +1 -1
  37. package/dist/locales/ko-KR.d.ts +1 -1
  38. package/dist/locales/ko-KR.js +15 -0
  39. package/dist/locales/pt-BR.cjs +30 -0
  40. package/dist/locales/pt-BR.d.cts +1 -1
  41. package/dist/locales/pt-BR.d.ts +1 -1
  42. package/dist/locales/pt-BR.js +30 -0
  43. package/dist/locales/th-TH.cjs +15 -0
  44. package/dist/locales/th-TH.d.cts +1 -1
  45. package/dist/locales/th-TH.d.ts +1 -1
  46. package/dist/locales/th-TH.js +15 -0
  47. package/dist/locales/vi-VN.cjs +15 -0
  48. package/dist/locales/vi-VN.d.cts +1 -1
  49. package/dist/locales/vi-VN.d.ts +1 -1
  50. package/dist/locales/vi-VN.js +15 -0
  51. package/dist/locales/zh-CN.cjs +15 -0
  52. package/dist/locales/zh-CN.d.cts +1 -1
  53. package/dist/locales/zh-CN.d.ts +1 -1
  54. package/dist/locales/zh-CN.js +15 -0
  55. package/dist/locales/zh-TW.cjs +15 -0
  56. package/dist/locales/zh-TW.d.cts +1 -1
  57. package/dist/locales/zh-TW.d.ts +1 -1
  58. package/dist/locales/zh-TW.js +15 -0
  59. package/dist/{table-export-BXKss-rR.d.cts → table-export-CjazVsKc.d.ts} +27 -2
  60. package/dist/{table-export-CrjXjyjp.d.ts → table-export-MB2SPk2a.d.cts} +27 -2
  61. package/dist/utils/table-export.d.cts +2 -2
  62. package/dist/utils/table-export.d.ts +2 -2
  63. package/package.json +1 -1
@@ -27,6 +27,21 @@ var enUS = {
27
27
  pageAriaLabel: "Page {page}",
28
28
  pageIndicatorText: "Page {current} of {total}"
29
29
  },
30
+ table: {
31
+ emptyText: "No data",
32
+ loadingText: "Loading",
33
+ expandText: "Expand",
34
+ collapseText: "Collapse",
35
+ selectAllText: "Select all",
36
+ selectRowAriaLabel: "Select row {row}",
37
+ sortByText: "Sort by {column}",
38
+ clearSortText: "Clear sort",
39
+ toolbarAriaLabel: "Data table toolbar",
40
+ searchPlaceholder: "Search",
41
+ searchButtonText: "Search",
42
+ selectedText: "Selected",
43
+ selectedItemsText: "items"
44
+ },
30
45
  formWizard: {
31
46
  prevText: "Previous",
32
47
  nextText: "Next",
@@ -110,6 +125,21 @@ var ptBR = defineLocale({
110
125
  pageAriaLabel: "P\xE1gina {page}",
111
126
  pageIndicatorText: "P\xE1gina {current} de {total}"
112
127
  },
128
+ table: {
129
+ emptyText: "Sem dados",
130
+ loadingText: "Carregando",
131
+ expandText: "Expandir",
132
+ collapseText: "Recolher",
133
+ selectAllText: "Selecionar tudo",
134
+ selectRowAriaLabel: "Selecionar linha {row}",
135
+ sortByText: "Ordenar por {column}",
136
+ clearSortText: "Limpar ordena\xE7\xE3o",
137
+ toolbarAriaLabel: "Barra de ferramentas da tabela de dados",
138
+ searchPlaceholder: "Pesquisar",
139
+ searchButtonText: "Pesquisar",
140
+ selectedText: "Selecionado",
141
+ selectedItemsText: "itens"
142
+ },
113
143
  formWizard: {
114
144
  prevText: "Anterior",
115
145
  nextText: "Pr\xF3ximo",
@@ -51,6 +51,21 @@ var thTH = {
51
51
  pageAriaLabel: "\u0E2B\u0E19\u0E49\u0E32 {page}",
52
52
  pageIndicatorText: "\u0E2B\u0E19\u0E49\u0E32 {current} \u0E08\u0E32\u0E01 {total}"
53
53
  },
54
+ table: {
55
+ emptyText: "\u0E44\u0E21\u0E48\u0E21\u0E35\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25",
56
+ loadingText: "\u0E01\u0E33\u0E25\u0E31\u0E07\u0E42\u0E2B\u0E25\u0E14",
57
+ expandText: "\u0E02\u0E22\u0E32\u0E22",
58
+ collapseText: "\u0E22\u0E38\u0E1A",
59
+ selectAllText: "\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14",
60
+ selectRowAriaLabel: "\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E41\u0E16\u0E27 {row}",
61
+ sortByText: "\u0E40\u0E23\u0E35\u0E22\u0E07\u0E15\u0E32\u0E21 {column}",
62
+ clearSortText: "\u0E25\u0E49\u0E32\u0E07\u0E01\u0E32\u0E23\u0E40\u0E23\u0E35\u0E22\u0E07",
63
+ toolbarAriaLabel: "\u0E41\u0E16\u0E1A\u0E40\u0E04\u0E23\u0E37\u0E48\u0E2D\u0E07\u0E21\u0E37\u0E2D\u0E15\u0E32\u0E23\u0E32\u0E07\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25",
64
+ searchPlaceholder: "\u0E04\u0E49\u0E19\u0E2B\u0E32",
65
+ searchButtonText: "\u0E04\u0E49\u0E19\u0E2B\u0E32",
66
+ selectedText: "\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E41\u0E25\u0E49\u0E27",
67
+ selectedItemsText: "\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23"
68
+ },
54
69
  formWizard: {
55
70
  prevText: "\u0E01\u0E48\u0E2D\u0E19\u0E2B\u0E19\u0E49\u0E32",
56
71
  nextText: "\u0E16\u0E31\u0E14\u0E44\u0E1B",
@@ -1,4 +1,4 @@
1
- import { T as TigerLocale } from '../locale-BiVGd2Kj.cjs';
1
+ import { T as TigerLocale } from '../locale-DRA6alwj.cjs';
2
2
  import '../datepicker-DXzS_8l8.cjs';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { T as TigerLocale } from '../locale-C0cvkjts.js';
1
+ import { T as TigerLocale } from '../locale-CieZS1DZ.js';
2
2
  import '../datepicker-DXzS_8l8.js';
3
3
 
4
4
  /**
@@ -27,6 +27,21 @@ var thTH = {
27
27
  pageAriaLabel: "\u0E2B\u0E19\u0E49\u0E32 {page}",
28
28
  pageIndicatorText: "\u0E2B\u0E19\u0E49\u0E32 {current} \u0E08\u0E32\u0E01 {total}"
29
29
  },
30
+ table: {
31
+ emptyText: "\u0E44\u0E21\u0E48\u0E21\u0E35\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25",
32
+ loadingText: "\u0E01\u0E33\u0E25\u0E31\u0E07\u0E42\u0E2B\u0E25\u0E14",
33
+ expandText: "\u0E02\u0E22\u0E32\u0E22",
34
+ collapseText: "\u0E22\u0E38\u0E1A",
35
+ selectAllText: "\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14",
36
+ selectRowAriaLabel: "\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E41\u0E16\u0E27 {row}",
37
+ sortByText: "\u0E40\u0E23\u0E35\u0E22\u0E07\u0E15\u0E32\u0E21 {column}",
38
+ clearSortText: "\u0E25\u0E49\u0E32\u0E07\u0E01\u0E32\u0E23\u0E40\u0E23\u0E35\u0E22\u0E07",
39
+ toolbarAriaLabel: "\u0E41\u0E16\u0E1A\u0E40\u0E04\u0E23\u0E37\u0E48\u0E2D\u0E07\u0E21\u0E37\u0E2D\u0E15\u0E32\u0E23\u0E32\u0E07\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25",
40
+ searchPlaceholder: "\u0E04\u0E49\u0E19\u0E2B\u0E32",
41
+ searchButtonText: "\u0E04\u0E49\u0E19\u0E2B\u0E32",
42
+ selectedText: "\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E41\u0E25\u0E49\u0E27",
43
+ selectedItemsText: "\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23"
44
+ },
30
45
  formWizard: {
31
46
  prevText: "\u0E01\u0E48\u0E2D\u0E19\u0E2B\u0E19\u0E49\u0E32",
32
47
  nextText: "\u0E16\u0E31\u0E14\u0E44\u0E1B",
@@ -51,6 +51,21 @@ var viVN = {
51
51
  pageAriaLabel: "Trang {page}",
52
52
  pageIndicatorText: "Trang {current} / {total}"
53
53
  },
54
+ table: {
55
+ emptyText: "Kh\xF4ng c\xF3 d\u1EEF li\u1EC7u",
56
+ loadingText: "\u0110ang t\u1EA3i",
57
+ expandText: "M\u1EDF r\u1ED9ng",
58
+ collapseText: "Thu g\u1ECDn",
59
+ selectAllText: "Ch\u1ECDn t\u1EA5t c\u1EA3",
60
+ selectRowAriaLabel: "Ch\u1ECDn h\xE0ng {row}",
61
+ sortByText: "S\u1EAFp x\u1EBFp theo {column}",
62
+ clearSortText: "X\xF3a s\u1EAFp x\u1EBFp",
63
+ toolbarAriaLabel: "Thanh c\xF4ng c\u1EE5 b\u1EA3ng d\u1EEF li\u1EC7u",
64
+ searchPlaceholder: "T\xECm ki\u1EBFm",
65
+ searchButtonText: "T\xECm ki\u1EBFm",
66
+ selectedText: "\u0110\xE3 ch\u1ECDn",
67
+ selectedItemsText: "m\u1EE5c"
68
+ },
54
69
  formWizard: {
55
70
  prevText: "Tr\u01B0\u1EDBc",
56
71
  nextText: "Ti\u1EBFp",
@@ -1,4 +1,4 @@
1
- import { T as TigerLocale } from '../locale-BiVGd2Kj.cjs';
1
+ import { T as TigerLocale } from '../locale-DRA6alwj.cjs';
2
2
  import '../datepicker-DXzS_8l8.cjs';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { T as TigerLocale } from '../locale-C0cvkjts.js';
1
+ import { T as TigerLocale } from '../locale-CieZS1DZ.js';
2
2
  import '../datepicker-DXzS_8l8.js';
3
3
 
4
4
  /**
@@ -27,6 +27,21 @@ var viVN = {
27
27
  pageAriaLabel: "Trang {page}",
28
28
  pageIndicatorText: "Trang {current} / {total}"
29
29
  },
30
+ table: {
31
+ emptyText: "Kh\xF4ng c\xF3 d\u1EEF li\u1EC7u",
32
+ loadingText: "\u0110ang t\u1EA3i",
33
+ expandText: "M\u1EDF r\u1ED9ng",
34
+ collapseText: "Thu g\u1ECDn",
35
+ selectAllText: "Ch\u1ECDn t\u1EA5t c\u1EA3",
36
+ selectRowAriaLabel: "Ch\u1ECDn h\xE0ng {row}",
37
+ sortByText: "S\u1EAFp x\u1EBFp theo {column}",
38
+ clearSortText: "X\xF3a s\u1EAFp x\u1EBFp",
39
+ toolbarAriaLabel: "Thanh c\xF4ng c\u1EE5 b\u1EA3ng d\u1EEF li\u1EC7u",
40
+ searchPlaceholder: "T\xECm ki\u1EBFm",
41
+ searchButtonText: "T\xECm ki\u1EBFm",
42
+ selectedText: "\u0110\xE3 ch\u1ECDn",
43
+ selectedItemsText: "m\u1EE5c"
44
+ },
30
45
  formWizard: {
31
46
  prevText: "Tr\u01B0\u1EDBc",
32
47
  nextText: "Ti\u1EBFp",
@@ -51,6 +51,21 @@ var zhCN = {
51
51
  pageAriaLabel: "\u7B2C {page} \u9875",
52
52
  pageIndicatorText: "\u7B2C {current} \u9875\uFF0C\u5171 {total} \u9875"
53
53
  },
54
+ table: {
55
+ emptyText: "\u6682\u65E0\u6570\u636E",
56
+ loadingText: "\u52A0\u8F7D\u4E2D",
57
+ expandText: "\u5C55\u5F00",
58
+ collapseText: "\u6536\u8D77",
59
+ selectAllText: "\u5168\u9009",
60
+ selectRowAriaLabel: "\u9009\u62E9\u7B2C {row} \u884C",
61
+ sortByText: "\u6309 {column} \u6392\u5E8F",
62
+ clearSortText: "\u4E0D\u6392\u5E8F",
63
+ toolbarAriaLabel: "\u6570\u636E\u8868\u683C\u5DE5\u5177\u680F",
64
+ searchPlaceholder: "\u641C\u7D22",
65
+ searchButtonText: "\u641C\u7D22",
66
+ selectedText: "\u5DF2\u9009\u62E9",
67
+ selectedItemsText: "\u9879"
68
+ },
54
69
  formWizard: {
55
70
  prevText: "\u4E0A\u4E00\u6B65",
56
71
  nextText: "\u4E0B\u4E00\u6B65",
@@ -1,4 +1,4 @@
1
- import { T as TigerLocale } from '../locale-BiVGd2Kj.cjs';
1
+ import { T as TigerLocale } from '../locale-DRA6alwj.cjs';
2
2
  import '../datepicker-DXzS_8l8.cjs';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { T as TigerLocale } from '../locale-C0cvkjts.js';
1
+ import { T as TigerLocale } from '../locale-CieZS1DZ.js';
2
2
  import '../datepicker-DXzS_8l8.js';
3
3
 
4
4
  /**
@@ -27,6 +27,21 @@ var zhCN = {
27
27
  pageAriaLabel: "\u7B2C {page} \u9875",
28
28
  pageIndicatorText: "\u7B2C {current} \u9875\uFF0C\u5171 {total} \u9875"
29
29
  },
30
+ table: {
31
+ emptyText: "\u6682\u65E0\u6570\u636E",
32
+ loadingText: "\u52A0\u8F7D\u4E2D",
33
+ expandText: "\u5C55\u5F00",
34
+ collapseText: "\u6536\u8D77",
35
+ selectAllText: "\u5168\u9009",
36
+ selectRowAriaLabel: "\u9009\u62E9\u7B2C {row} \u884C",
37
+ sortByText: "\u6309 {column} \u6392\u5E8F",
38
+ clearSortText: "\u4E0D\u6392\u5E8F",
39
+ toolbarAriaLabel: "\u6570\u636E\u8868\u683C\u5DE5\u5177\u680F",
40
+ searchPlaceholder: "\u641C\u7D22",
41
+ searchButtonText: "\u641C\u7D22",
42
+ selectedText: "\u5DF2\u9009\u62E9",
43
+ selectedItemsText: "\u9879"
44
+ },
30
45
  formWizard: {
31
46
  prevText: "\u4E0A\u4E00\u6B65",
32
47
  nextText: "\u4E0B\u4E00\u6B65",
@@ -51,6 +51,21 @@ var zhTW = {
51
51
  pageAriaLabel: "\u7B2C {page} \u9801",
52
52
  pageIndicatorText: "\u7B2C {current} \u9801\uFF0C\u5171 {total} \u9801"
53
53
  },
54
+ table: {
55
+ emptyText: "\u66AB\u7121\u8CC7\u6599",
56
+ loadingText: "\u8F09\u5165\u4E2D",
57
+ expandText: "\u5C55\u958B",
58
+ collapseText: "\u6536\u5408",
59
+ selectAllText: "\u5168\u9078",
60
+ selectRowAriaLabel: "\u9078\u64C7\u7B2C {row} \u5217",
61
+ sortByText: "\u4F9D {column} \u6392\u5E8F",
62
+ clearSortText: "\u4E0D\u6392\u5E8F",
63
+ toolbarAriaLabel: "\u8CC7\u6599\u8868\u683C\u5DE5\u5177\u5217",
64
+ searchPlaceholder: "\u641C\u5C0B",
65
+ searchButtonText: "\u641C\u5C0B",
66
+ selectedText: "\u5DF2\u9078\u64C7",
67
+ selectedItemsText: "\u7B46"
68
+ },
54
69
  formWizard: {
55
70
  prevText: "\u4E0A\u4E00\u6B65",
56
71
  nextText: "\u4E0B\u4E00\u6B65",
@@ -1,4 +1,4 @@
1
- import { T as TigerLocale } from '../locale-BiVGd2Kj.cjs';
1
+ import { T as TigerLocale } from '../locale-DRA6alwj.cjs';
2
2
  import '../datepicker-DXzS_8l8.cjs';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { T as TigerLocale } from '../locale-C0cvkjts.js';
1
+ import { T as TigerLocale } from '../locale-CieZS1DZ.js';
2
2
  import '../datepicker-DXzS_8l8.js';
3
3
 
4
4
  /**
@@ -27,6 +27,21 @@ var zhTW = {
27
27
  pageAriaLabel: "\u7B2C {page} \u9801",
28
28
  pageIndicatorText: "\u7B2C {current} \u9801\uFF0C\u5171 {total} \u9801"
29
29
  },
30
+ table: {
31
+ emptyText: "\u66AB\u7121\u8CC7\u6599",
32
+ loadingText: "\u8F09\u5165\u4E2D",
33
+ expandText: "\u5C55\u958B",
34
+ collapseText: "\u6536\u5408",
35
+ selectAllText: "\u5168\u9078",
36
+ selectRowAriaLabel: "\u9078\u64C7\u7B2C {row} \u5217",
37
+ sortByText: "\u4F9D {column} \u6392\u5E8F",
38
+ clearSortText: "\u4E0D\u6392\u5E8F",
39
+ toolbarAriaLabel: "\u8CC7\u6599\u8868\u683C\u5DE5\u5177\u5217",
40
+ searchPlaceholder: "\u641C\u5C0B",
41
+ searchButtonText: "\u641C\u5C0B",
42
+ selectedText: "\u5DF2\u9078\u64C7",
43
+ selectedItemsText: "\u7B46"
44
+ },
30
45
  formWizard: {
31
46
  prevText: "\u4E0A\u4E00\u6B65",
32
47
  nextText: "\u4E0B\u4E00\u6B65",
@@ -1,4 +1,4 @@
1
- import { a as TigerLocaleInput, e as TigerLocalePagination } from './locale-BiVGd2Kj.cjs';
1
+ import { a as TigerLocaleInput, e as TigerLocalePagination, g as TigerLocaleTable } from './locale-CieZS1DZ.js';
2
2
 
3
3
  /**
4
4
  * Pagination component types and interfaces
@@ -500,6 +500,15 @@ interface ExpandableConfig<T = Record<string, unknown>> {
500
500
  */
501
501
  expandIconPosition?: 'start' | 'end';
502
502
  }
503
+ interface TableCardRenderContext<T = Record<string, unknown>> {
504
+ record: T;
505
+ index: number;
506
+ columns: TableColumn<T>[];
507
+ selected: boolean;
508
+ expanded: boolean;
509
+ toggleExpand: () => void;
510
+ selectRow: (checked: boolean) => void;
511
+ }
503
512
  /**
504
513
  * Base table props interface
505
514
  */
@@ -562,6 +571,14 @@ interface TableProps<T = Record<string, unknown>> {
562
571
  * @default false
563
572
  */
564
573
  loading?: boolean;
574
+ /**
575
+ * Locale configuration for table text.
576
+ */
577
+ locale?: TigerLocaleInput;
578
+ /**
579
+ * Flat table text overrides for this instance.
580
+ */
581
+ labels?: Partial<TigerLocaleTable>;
565
582
  /**
566
583
  * Empty state text
567
584
  * @default 'No data'
@@ -617,6 +634,14 @@ interface TableProps<T = Record<string, unknown>> {
617
634
  * @default 'sm'
618
635
  */
619
636
  cardBreakpoint?: TableCardBreakpoint;
637
+ /**
638
+ * Additional class for mobile card rows, or a resolver per record.
639
+ */
640
+ cardClassName?: string | ((record: T, index: number) => string);
641
+ /**
642
+ * Custom mobile card renderer for `responsiveMode="card"`.
643
+ */
644
+ renderCard?: (context: TableCardRenderContext<T>) => unknown;
620
645
  /**
621
646
  * Enable virtual scrolling for large datasets
622
647
  * @default false
@@ -737,4 +762,4 @@ declare function downloadTableExport(content: string, filename?: string, format?
737
762
  */
738
763
  declare const tableExportButtonClasses = "inline-flex items-center gap-1.5 px-3 py-1.5 text-sm font-medium rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)] text-[var(--tiger-text,#111827)] bg-[var(--tiger-surface,#ffffff)] hover:bg-[var(--tiger-surface-muted,#f9fafb)] transition-colors";
739
764
 
740
- export { type PaginationProps as A, type PageChangeInfo as B, type ColumnAlign as C, type PageSizeChangeInfo as D, type ExpandableConfig as E, type FilterOption as F, type PaginationQuickJumperValidationOptions as P, type RowSelectionConfig as R, type SortDirection as S, type TableResponsiveMode as T, type TableCardBreakpoint as a, type TableColumn as b, type TableFixedPosition as c, type TableSize as d, type PaginationAlign as e, type PaginationSize as f, type TableProps as g, type PaginationConfig as h, type FilterRule as i, type ColumnFilter as j, type SortState as k, exportTableToCsv as l, exportTableToExcel as m, downloadCsv as n, downloadExcel as o, exportTableData as p, downloadTableExport as q, type TableExportFormat as r, type TableFixedHeaderClassNameContext as s, tableExportButtonClasses as t, type TableFixedCellClassNameContext as u, type TableFixedHeaderClassName as v, type TableFixedCellClassName as w, type FilterType as x, type PaginationPageSizeOption as y, type PaginationPageSizeOptionItem as z };
765
+ export { type PaginationPageSizeOptionItem as A, type PaginationProps as B, type ColumnAlign as C, type PageChangeInfo as D, type ExpandableConfig as E, type FilterOption as F, type PageSizeChangeInfo as G, type PaginationQuickJumperValidationOptions as P, type RowSelectionConfig as R, type SortDirection as S, type TableResponsiveMode as T, type TableCardBreakpoint as a, type TableColumn as b, type TableFixedPosition as c, type TableSize as d, type PaginationAlign as e, type PaginationSize as f, type TableProps as g, type PaginationConfig as h, type FilterRule as i, type ColumnFilter as j, type SortState as k, exportTableToCsv as l, exportTableToExcel as m, downloadCsv as n, downloadExcel as o, exportTableData as p, downloadTableExport as q, type TableExportFormat as r, type TableFixedHeaderClassNameContext as s, tableExportButtonClasses as t, type TableFixedCellClassNameContext as u, type TableFixedHeaderClassName as v, type TableFixedCellClassName as w, type FilterType as x, type TableCardRenderContext as y, type PaginationPageSizeOption as z };
@@ -1,4 +1,4 @@
1
- import { a as TigerLocaleInput, e as TigerLocalePagination } from './locale-C0cvkjts.js';
1
+ import { a as TigerLocaleInput, e as TigerLocalePagination, g as TigerLocaleTable } from './locale-DRA6alwj.cjs';
2
2
 
3
3
  /**
4
4
  * Pagination component types and interfaces
@@ -500,6 +500,15 @@ interface ExpandableConfig<T = Record<string, unknown>> {
500
500
  */
501
501
  expandIconPosition?: 'start' | 'end';
502
502
  }
503
+ interface TableCardRenderContext<T = Record<string, unknown>> {
504
+ record: T;
505
+ index: number;
506
+ columns: TableColumn<T>[];
507
+ selected: boolean;
508
+ expanded: boolean;
509
+ toggleExpand: () => void;
510
+ selectRow: (checked: boolean) => void;
511
+ }
503
512
  /**
504
513
  * Base table props interface
505
514
  */
@@ -562,6 +571,14 @@ interface TableProps<T = Record<string, unknown>> {
562
571
  * @default false
563
572
  */
564
573
  loading?: boolean;
574
+ /**
575
+ * Locale configuration for table text.
576
+ */
577
+ locale?: TigerLocaleInput;
578
+ /**
579
+ * Flat table text overrides for this instance.
580
+ */
581
+ labels?: Partial<TigerLocaleTable>;
565
582
  /**
566
583
  * Empty state text
567
584
  * @default 'No data'
@@ -617,6 +634,14 @@ interface TableProps<T = Record<string, unknown>> {
617
634
  * @default 'sm'
618
635
  */
619
636
  cardBreakpoint?: TableCardBreakpoint;
637
+ /**
638
+ * Additional class for mobile card rows, or a resolver per record.
639
+ */
640
+ cardClassName?: string | ((record: T, index: number) => string);
641
+ /**
642
+ * Custom mobile card renderer for `responsiveMode="card"`.
643
+ */
644
+ renderCard?: (context: TableCardRenderContext<T>) => unknown;
620
645
  /**
621
646
  * Enable virtual scrolling for large datasets
622
647
  * @default false
@@ -737,4 +762,4 @@ declare function downloadTableExport(content: string, filename?: string, format?
737
762
  */
738
763
  declare const tableExportButtonClasses = "inline-flex items-center gap-1.5 px-3 py-1.5 text-sm font-medium rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)] text-[var(--tiger-text,#111827)] bg-[var(--tiger-surface,#ffffff)] hover:bg-[var(--tiger-surface-muted,#f9fafb)] transition-colors";
739
764
 
740
- export { type PaginationProps as A, type PageChangeInfo as B, type ColumnAlign as C, type PageSizeChangeInfo as D, type ExpandableConfig as E, type FilterOption as F, type PaginationQuickJumperValidationOptions as P, type RowSelectionConfig as R, type SortDirection as S, type TableResponsiveMode as T, type TableCardBreakpoint as a, type TableColumn as b, type TableFixedPosition as c, type TableSize as d, type PaginationAlign as e, type PaginationSize as f, type TableProps as g, type PaginationConfig as h, type FilterRule as i, type ColumnFilter as j, type SortState as k, exportTableToCsv as l, exportTableToExcel as m, downloadCsv as n, downloadExcel as o, exportTableData as p, downloadTableExport as q, type TableExportFormat as r, type TableFixedHeaderClassNameContext as s, tableExportButtonClasses as t, type TableFixedCellClassNameContext as u, type TableFixedHeaderClassName as v, type TableFixedCellClassName as w, type FilterType as x, type PaginationPageSizeOption as y, type PaginationPageSizeOptionItem as z };
765
+ export { type PaginationPageSizeOptionItem as A, type PaginationProps as B, type ColumnAlign as C, type PageChangeInfo as D, type ExpandableConfig as E, type FilterOption as F, type PageSizeChangeInfo as G, type PaginationQuickJumperValidationOptions as P, type RowSelectionConfig as R, type SortDirection as S, type TableResponsiveMode as T, type TableCardBreakpoint as a, type TableColumn as b, type TableFixedPosition as c, type TableSize as d, type PaginationAlign as e, type PaginationSize as f, type TableProps as g, type PaginationConfig as h, type FilterRule as i, type ColumnFilter as j, type SortState as k, exportTableToCsv as l, exportTableToExcel as m, downloadCsv as n, downloadExcel as o, exportTableData as p, downloadTableExport as q, type TableExportFormat as r, type TableFixedHeaderClassNameContext as s, tableExportButtonClasses as t, type TableFixedCellClassNameContext as u, type TableFixedHeaderClassName as v, type TableFixedCellClassName as w, type FilterType as x, type TableCardRenderContext as y, type PaginationPageSizeOption as z };
@@ -1,3 +1,3 @@
1
- export { n as downloadCsv, o as downloadExcel, q as downloadTableExport, p as exportTableData, l as exportTableToCsv, m as exportTableToExcel, t as tableExportButtonClasses } from '../table-export-BXKss-rR.cjs';
2
- import '../locale-BiVGd2Kj.cjs';
1
+ export { n as downloadCsv, o as downloadExcel, q as downloadTableExport, p as exportTableData, l as exportTableToCsv, m as exportTableToExcel, t as tableExportButtonClasses } from '../table-export-MB2SPk2a.cjs';
2
+ import '../locale-DRA6alwj.cjs';
3
3
  import '../datepicker-DXzS_8l8.cjs';
@@ -1,3 +1,3 @@
1
- export { n as downloadCsv, o as downloadExcel, q as downloadTableExport, p as exportTableData, l as exportTableToCsv, m as exportTableToExcel, t as tableExportButtonClasses } from '../table-export-CrjXjyjp.js';
2
- import '../locale-C0cvkjts.js';
1
+ export { n as downloadCsv, o as downloadExcel, q as downloadTableExport, p as exportTableData, l as exportTableToCsv, m as exportTableToExcel, t as tableExportButtonClasses } from '../table-export-CjazVsKc.js';
2
+ import '../locale-CieZS1DZ.js';
3
3
  import '../datepicker-DXzS_8l8.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expcat/tigercat-core",
3
- "version": "1.2.37",
3
+ "version": "1.2.39",
4
4
  "type": "module",
5
5
  "description": "Core utilities for Tigercat UI library",
6
6
  "license": "MIT",