1mpacto-react-ui 1.0.0 → 1.0.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.
Files changed (137) hide show
  1. package/dist/assets/_mixins.scss +43 -43
  2. package/dist/assets/core.css +1 -1
  3. package/dist/assets/fontfamily.css +1 -1
  4. package/dist/assets/icons/arrow-narrow-down.svg +3 -3
  5. package/dist/index.cjs +63 -63
  6. package/dist/index.mjs +925 -927
  7. package/dist/package.json.d.ts +131 -131
  8. package/dist/src/hooks/useAsyncDebounce.d.ts +9 -0
  9. package/dist/src/hooks/useCombinedResizeObserver.d.ts +66 -0
  10. package/dist/src/hooks/useCountdown.d.ts +61 -0
  11. package/dist/src/hooks/useDeepCompareEffect.d.ts +13 -0
  12. package/dist/src/hooks/useElementOrWindowMediaQuery.d.ts +9 -0
  13. package/dist/src/hooks/useEventListener.d.ts +27 -0
  14. package/dist/src/hooks/useMasonry.d.ts +79 -0
  15. package/dist/src/hooks/useMergeRefs.d.ts +26 -0
  16. package/dist/src/hooks/useOtpInput.d.ts +157 -0
  17. package/dist/src/hooks/useStateRef.d.ts +8 -0
  18. package/dist/src/interfaces/components/Alert/index.d.ts +8 -0
  19. package/dist/src/interfaces/components/Badges/index.d.ts +28 -0
  20. package/dist/src/interfaces/components/Breadcrumbs/index.d.ts +79 -0
  21. package/dist/src/interfaces/components/Button/index.d.ts +44 -0
  22. package/dist/src/interfaces/components/ButtonIcon/index.d.ts +36 -0
  23. package/dist/src/interfaces/components/ButtonPopover/index.d.ts +78 -0
  24. package/dist/src/interfaces/components/Calendar/index.d.ts +364 -0
  25. package/dist/src/interfaces/components/Chart/index.d.ts +460 -0
  26. package/dist/src/interfaces/components/Checkbox/index.d.ts +12 -0
  27. package/dist/src/interfaces/components/Chips/index.d.ts +36 -0
  28. package/dist/src/interfaces/components/Collapse/index.d.ts +60 -0
  29. package/dist/src/interfaces/components/DatePicker/index.d.ts +274 -0
  30. package/dist/src/interfaces/components/ErrorMessage/index.d.ts +16 -0
  31. package/dist/src/interfaces/components/FilterContainer/index.d.ts +102 -0
  32. package/dist/src/interfaces/components/Input/index.d.ts +180 -0
  33. package/dist/src/interfaces/components/Modal/index.d.ts +45 -0
  34. package/dist/src/interfaces/components/NumberFormat/index.d.ts +25 -0
  35. package/dist/src/interfaces/components/Pagination/index.d.ts +81 -0
  36. package/dist/src/interfaces/components/Popover/index.d.ts +95 -0
  37. package/dist/src/interfaces/components/RadioCheckbox/RadioCheckbox.d.ts +56 -0
  38. package/dist/src/interfaces/components/RadioCheckbox/RadioCheckboxLabel.d.ts +44 -0
  39. package/dist/src/interfaces/components/SelectDropdownContainer/index.d.ts +195 -1
  40. package/dist/src/interfaces/components/Sidebar/index.d.ts +226 -0
  41. package/dist/src/interfaces/components/Step/index.d.ts +153 -0
  42. package/dist/src/interfaces/components/Switch/index.d.ts +53 -0
  43. package/dist/src/interfaces/components/Table/index.d.ts +364 -0
  44. package/dist/src/interfaces/components/Tabs/index.d.ts +126 -0
  45. package/dist/src/interfaces/components/TextEditor/index.d.ts +12 -0
  46. package/dist/src/interfaces/components/Textarea/index.d.ts +156 -0
  47. package/dist/src/interfaces/components/TimeRange/index.d.ts +100 -0
  48. package/dist/src/interfaces/components/Timeline/index.d.ts +36 -0
  49. package/dist/src/interfaces/components/Tooltip/index.d.ts +56 -0
  50. package/dist/src/interfaces/components/TruncateComponent/index.d.ts +34 -0
  51. package/dist/src/interfaces/components/UploadFile/index.d.ts +184 -1
  52. package/dist/src/interfaces/components/Virtualization/ListVirtualization.d.ts +138 -0
  53. package/dist/src/interfaces/components/Virtualization/TableVirtualization.d.ts +143 -0
  54. package/dist/tinymce/CHANGELOG.md +3785 -3785
  55. package/dist/tinymce/js/tinymce/langs/README.md +3 -3
  56. package/dist/tinymce/js/tinymce/license.md +6 -6
  57. package/dist/tinymce/js/tinymce/notices.txt +21 -21
  58. package/dist/tinymce/js/tinymce/plugins/codesample/plugin.min.js +8 -8
  59. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ar.js +92 -92
  60. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/bg_BG.js +92 -92
  61. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ca.js +92 -92
  62. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/cs.js +92 -92
  63. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/da.js +92 -92
  64. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/de.js +92 -92
  65. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/el.js +92 -92
  66. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/en.js +92 -92
  67. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/es.js +92 -92
  68. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/eu.js +92 -92
  69. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/fa.js +92 -92
  70. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/fi.js +92 -92
  71. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/fr_FR.js +92 -92
  72. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/he_IL.js +92 -92
  73. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/hi.js +92 -92
  74. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/hr.js +92 -92
  75. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/hu_HU.js +92 -92
  76. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/id.js +92 -92
  77. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/it.js +92 -92
  78. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ja.js +92 -92
  79. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/kk.js +92 -92
  80. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ko_KR.js +92 -92
  81. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ms.js +92 -92
  82. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/nb_NO.js +92 -92
  83. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/nl.js +92 -92
  84. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/pl.js +92 -92
  85. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/pt_BR.js +92 -92
  86. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/pt_PT.js +92 -92
  87. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ro.js +92 -92
  88. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ru.js +92 -92
  89. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/sk.js +92 -92
  90. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/sl_SI.js +92 -92
  91. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/sv_SE.js +92 -92
  92. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/th_TH.js +92 -92
  93. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/tr.js +92 -92
  94. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/uk.js +92 -92
  95. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/vi.js +92 -92
  96. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/zh_CN.js +86 -86
  97. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/zh_TW.js +92 -92
  98. package/dist/tinymce/js/tinymce/skins/content/dark/content.js +9 -9
  99. package/dist/tinymce/js/tinymce/skins/content/dark/content.min.css +10 -10
  100. package/dist/tinymce/js/tinymce/skins/content/default/content.js +9 -9
  101. package/dist/tinymce/js/tinymce/skins/content/default/content.min.css +10 -10
  102. package/dist/tinymce/js/tinymce/skins/content/document/content.js +9 -9
  103. package/dist/tinymce/js/tinymce/skins/content/document/content.min.css +10 -10
  104. package/dist/tinymce/js/tinymce/skins/content/tinymce-5/content.js +9 -9
  105. package/dist/tinymce/js/tinymce/skins/content/tinymce-5/content.min.css +10 -10
  106. package/dist/tinymce/js/tinymce/skins/content/tinymce-5-dark/content.js +9 -9
  107. package/dist/tinymce/js/tinymce/skins/content/tinymce-5-dark/content.min.css +10 -10
  108. package/dist/tinymce/js/tinymce/skins/content/writer/content.js +9 -9
  109. package/dist/tinymce/js/tinymce/skins/content/writer/content.min.css +10 -10
  110. package/dist/tinymce/js/tinymce/skins/ui/oxide/content.inline.js +9 -9
  111. package/dist/tinymce/js/tinymce/skins/ui/oxide/content.inline.min.css +10 -10
  112. package/dist/tinymce/js/tinymce/skins/ui/oxide/content.js +9 -9
  113. package/dist/tinymce/js/tinymce/skins/ui/oxide/content.min.css +10 -10
  114. package/dist/tinymce/js/tinymce/skins/ui/oxide/skin.min.css +1 -1
  115. package/dist/tinymce/js/tinymce/skins/ui/oxide/skin.shadowdom.min.css +1 -1
  116. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/content.inline.js +9 -9
  117. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/content.inline.min.css +10 -10
  118. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/content.js +9 -9
  119. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/content.min.css +10 -10
  120. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/skin.min.css +1 -1
  121. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css +1 -1
  122. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/content.inline.js +9 -9
  123. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/content.inline.min.css +10 -10
  124. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/content.js +9 -9
  125. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/content.min.css +10 -10
  126. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/skin.min.css +1 -1
  127. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css +1 -1
  128. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.inline.js +9 -9
  129. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +10 -10
  130. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.js +9 -9
  131. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.min.css +10 -10
  132. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -1
  133. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css +1 -1
  134. package/dist/tinymce/js/tinymce/tinymce.d.ts +3350 -3350
  135. package/dist/tinymce/js/tinymce/tinymce.min.js +10 -10
  136. package/dist/types-external/table.d.ts +15 -15
  137. package/package.json +131 -131
@@ -2,122 +2,482 @@ import { Table as ITableTanstack, Row, ColumnDef } from '@tanstack/react-table';
2
2
  import { default as React } from 'react';
3
3
  import { ITableVirtualization, IWrapperProps } from '../Virtualization/TableVirtualization';
4
4
 
5
+ /**
6
+ * [ID] : Definisi kolom tabel.
7
+ * [EN] : Table column definition.
8
+ * @template T - [ID] : Tipe data baris. [EN] : Row data type.
9
+ */
5
10
  export type ITableColumnDef<T = unknown> = ColumnDef<T>;
11
+ /**
12
+ * [ID] : Interface untuk breakpoint kolom tabel.
13
+ * [EN] : Interface for table column breakpoint.
14
+ */
6
15
  export interface ITableColumnBreakpoint {
16
+ /**
17
+ * [ID] : Lebar maksimum (opsional).
18
+ * [EN] : Maximum width (optional).
19
+ */
7
20
  maxWidth?: number;
21
+ /**
22
+ * [ID] : Lebar minimum (opsional).
23
+ * [EN] : Minimum width (optional).
24
+ */
8
25
  minWidth?: number;
26
+ /**
27
+ * [ID] : Daftar kolom.
28
+ * [EN] : List of columns.
29
+ */
9
30
  columns: string[];
31
+ /**
32
+ * [ID] : Kolom nyata (opsional).
33
+ * [EN] : Real columns (optional).
34
+ */
10
35
  realColumns?: string[];
36
+ /**
37
+ * [ID] : Reset ekspansi (opsional).
38
+ * [EN] : Reset expanded (optional).
39
+ */
11
40
  resetExpanded?: boolean;
12
41
  }
42
+ /**
43
+ * [ID] : Tipe fungsi render sub-komponen tabel.
44
+ * [EN] : Table sub-component render function type.
45
+ * @template T - [ID] : Tipe data baris. [EN] : Row data type.
46
+ * @param original - [ID] : Data asli. [EN] : Original data.
47
+ * @param row - [ID] : Objek baris. [EN] : Row object.
48
+ * @param other - [ID] : Properti lain. [EN] : Other properties.
49
+ * @returns [ID] : Node React. [EN] : React Node.
50
+ */
13
51
  export type TTableRenderSubComponent<T = unknown> = (original: T, row: Row<T>, other: {
14
52
  visibilityColumns: Pick<ITableColumnBreakpoint, 'columns' | 'realColumns'>;
15
53
  classNameSubMobile: string;
16
54
  }) => React.ReactNode | React.ReactNode[];
55
+ /**
56
+ * [ID] : Tipe handler klik baris tabel.
57
+ * [EN] : Table row click handler type.
58
+ * @template T - [ID] : Tipe data baris. [EN] : Row data type.
59
+ * @param original - [ID] : Data asli. [EN] : Original data.
60
+ * @param row - [ID] : Objek baris. [EN] : Row object.
61
+ */
17
62
  export type TTableHandlerRowClick<T = unknown> = (original: T, row: Row<T>) => void;
63
+ /**
64
+ * [ID] : Interface untuk komponen Table.
65
+ * [EN] : Interface for Table component.
66
+ * @template T - [ID] : Tipe data baris. [EN] : Row data type.
67
+ */
18
68
  export interface ITable<T = unknown> {
69
+ /**
70
+ * [ID] : Instance tabel TanStack.
71
+ * [EN] : TanStack table instance.
72
+ */
19
73
  tableInstance: ITableTanstack<T>;
74
+ /**
75
+ * [ID] : Nama kelas CSS pembungkus tabel (opsional).
76
+ * [EN] : Table wrapper CSS class name (optional).
77
+ */
20
78
  classNameWrapperTable?: string;
79
+ /**
80
+ * [ID] : Nama kelas CSS tabel (opsional).
81
+ * [EN] : Table CSS class name (optional).
82
+ */
21
83
  classNameTable?: string;
84
+ /**
85
+ * [ID] : Collapse semua baris (opsional).
86
+ * [EN] : Collapse all rows (optional).
87
+ */
22
88
  collapseAll?: boolean;
89
+ /**
90
+ * [ID] : Handler klik baris (opsional).
91
+ * [EN] : Row click handler (optional).
92
+ * @param original - [ID] : Data asli. [EN] : Original data.
93
+ * @param row - [ID] : Objek baris. [EN] : Row object.
94
+ */
23
95
  handlerRowClick?: (original: T, row: Row<T>) => void;
96
+ /**
97
+ * [ID] : Hak istimewa klik baris (opsional).
98
+ * [EN] : Row click privilege (optional).
99
+ */
24
100
  privillageRowClick?: boolean;
101
+ /**
102
+ * [ID] : Mengaktifkan virtualisasi (opsional).
103
+ * [EN] : Enable virtualization (optional).
104
+ */
25
105
  virtualization?: boolean;
106
+ /**
107
+ * [ID] : Properti virtualisasi (opsional).
108
+ * [EN] : Virtualization properties (optional).
109
+ */
26
110
  virtualizationProps?: IVirtualizationProps;
111
+ /**
112
+ * [ID] : ID header (opsional).
113
+ * [EN] : Header ID (optional).
114
+ */
27
115
  headerId?: string;
116
+ /**
117
+ * [ID] : Fungsi ID baris body (opsional).
118
+ * [EN] : Body row ID function (optional).
119
+ * @param row - [ID] : Objek baris. [EN] : Row object.
120
+ * @returns [ID] : ID baris. [EN] : Row ID.
121
+ */
28
122
  tbodyTrId?: (row: Row<T>) => string | undefined;
123
+ /**
124
+ * [ID] : Tinggi maksimum (opsional).
125
+ * [EN] : Maximum height (optional).
126
+ */
29
127
  maxHeight?: number;
128
+ /**
129
+ * [ID] : ID perhitungan tinggi (opsional).
130
+ * [EN] : Height calculation ID (optional).
131
+ */
30
132
  idCalculateHeight?: string;
133
+ /**
134
+ * [ID] : Jenis tabel (opsional).
135
+ * [EN] : Table kind (optional).
136
+ */
31
137
  kind?: 'laba-reguler' | 'payhere-reguler' | 'laba-small' | 'bill-reguler';
138
+ /**
139
+ * [ID] : Varian tabel (opsional).
140
+ * [EN] : Table variant (optional).
141
+ */
32
142
  variant?: 'laba-grey-02';
143
+ /**
144
+ * [ID] : Komponen urutkan menaik (opsional).
145
+ * [EN] : Sort ascending component (optional).
146
+ */
33
147
  componentSortASC?: Element | React.ReactNode | React.ReactNode[];
148
+ /**
149
+ * [ID] : Komponen urutkan menurun (opsional).
150
+ * [EN] : Sort descending component (optional).
151
+ */
34
152
  componentSortDESC?: Element | React.ReactNode | React.ReactNode[];
153
+ /**
154
+ * [ID] : Scroll ke atas (opsional).
155
+ * [EN] : Scroll top (optional).
156
+ */
35
157
  scrollTop?: boolean;
158
+ /**
159
+ * [ID] : Placeholder kosong (opsional).
160
+ * [EN] : Empty placeholder (optional).
161
+ */
36
162
  emptyPlaceholder?: Element | React.ReactNode | React.ReactNode[];
163
+ /**
164
+ * [ID] : Fungsi render sub-komponen (opsional).
165
+ * [EN] : Sub-component render function (optional).
166
+ */
37
167
  renderSubComponent?: (original: T, row: Row<T>, other: {
38
168
  visibilityColumns: Pick<ITableColumnBreakpoint, 'columns' | 'realColumns'>;
39
169
  classNameSubMobile: string;
40
170
  }) => React.ReactNode | React.ReactNode[];
171
+ /**
172
+ * [ID] : Breakpoint kolom (opsional).
173
+ * [EN] : Column breakpoints (optional).
174
+ */
41
175
  columnBreakpoints?: ITableColumnBreakpoint[];
42
176
  }
177
+ /**
178
+ * [ID] : Interface untuk tabel non-virtualisasi.
179
+ * [EN] : Interface for non-virtualization table.
180
+ * @template T - [ID] : Tipe data baris. [EN] : Row data type.
181
+ */
43
182
  export interface INonVirtualization<T = unknown> {
183
+ /**
184
+ * [ID] : Instance tabel TanStack.
185
+ * [EN] : TanStack table instance.
186
+ */
44
187
  tableInstance: ITableTanstack<T>;
188
+ /**
189
+ * [ID] : Nama kelas CSS pembungkus tabel (opsional).
190
+ * [EN] : Table wrapper CSS class name (optional).
191
+ */
45
192
  classNameWrapperTable?: string;
193
+ /**
194
+ * [ID] : Nama kelas CSS tabel (opsional).
195
+ * [EN] : Table CSS class name (optional).
196
+ */
46
197
  classNameTable?: string;
198
+ /**
199
+ * [ID] : Handler klik baris (opsional).
200
+ * [EN] : Row click handler (optional).
201
+ */
47
202
  handlerRowClick?: ITable<T>['handlerRowClick'];
203
+ /**
204
+ * [ID] : Hak istimewa klik baris (opsional).
205
+ * [EN] : Row click privilege (optional).
206
+ */
48
207
  privillageRowClick?: boolean;
208
+ /**
209
+ * [ID] : ID header (opsional).
210
+ * [EN] : Header ID (optional).
211
+ */
49
212
  headerId?: string;
213
+ /**
214
+ * [ID] : Fungsi ID baris body.
215
+ * [EN] : Body row ID function.
216
+ * @param row - [ID] : Objek baris. [EN] : Row object.
217
+ * @returns [ID] : ID baris. [EN] : Row ID.
218
+ */
50
219
  tbodyTrId: (row: Row<T>) => string | undefined;
220
+ /**
221
+ * [ID] : Tinggi maksimum (opsional).
222
+ * [EN] : Maximum height (optional).
223
+ */
51
224
  maxHeight?: number;
225
+ /**
226
+ * [ID] : ID perhitungan tinggi (opsional).
227
+ * [EN] : Height calculation ID (optional).
228
+ */
52
229
  idCalculateHeight?: string;
230
+ /**
231
+ * [ID] : Komponen urutkan menaik.
232
+ * [EN] : Sort ascending component.
233
+ */
53
234
  componentSortASC: Element | React.ReactNode | React.ReactNode[];
235
+ /**
236
+ * [ID] : Komponen urutkan menurun.
237
+ * [EN] : Sort descending component.
238
+ */
54
239
  componentSortDESC: Element | React.ReactNode | React.ReactNode[];
240
+ /**
241
+ * [ID] : Nama kelas CSS pointer.
242
+ * [EN] : Pointer CSS class name.
243
+ */
55
244
  classNamePointer: string;
245
+ /**
246
+ * [ID] : Placeholder kosong (opsional).
247
+ * [EN] : Empty placeholder (optional).
248
+ */
56
249
  emptyPlaceholder?: Element | React.ReactNode | React.ReactNode[];
250
+ /**
251
+ * [ID] : Fungsi render sub-komponen (opsional).
252
+ * [EN] : Sub-component render function (optional).
253
+ */
57
254
  renderSubComponent?: ITable<T>['renderSubComponent'];
255
+ /**
256
+ * [ID] : Kolom yang terlihat.
257
+ * [EN] : Visible columns.
258
+ */
58
259
  visibilityColumns: Pick<ITableColumnBreakpoint, 'columns' | 'realColumns'>;
260
+ /**
261
+ * [ID] : Nama kelas CSS sub-mobile.
262
+ * [EN] : Sub-mobile CSS class name.
263
+ */
59
264
  classNameSubMobile: string;
60
265
  }
266
+ /**
267
+ * [ID] : Interface untuk properti virtualisasi.
268
+ * [EN] : Interface for virtualization properties.
269
+ */
61
270
  export interface IVirtualizationProps extends Omit<ITableVirtualization, 'typeHight' | 'itemContent' | 'fixedHeaderContent' | 'itemSizeNames'> {
271
+ /**
272
+ * [ID] : Tipe tinggi (opsional).
273
+ * [EN] : Height type (optional).
274
+ */
62
275
  typeHight?: 'min-max' | 'container';
276
+ /**
277
+ * [ID] : Konten item (opsional).
278
+ * [EN] : Item content (optional).
279
+ */
63
280
  itemContent?: (Wrapper: React.ComponentType<IWrapperProps>, index: number, data: unknown, context: unknown) => React.ReactNode;
281
+ /**
282
+ * [ID] : Konten header tetap (opsional).
283
+ * [EN] : Fixed header content (optional).
284
+ */
64
285
  fixedHeaderContent?: (() => React.ReactNode) | (() => React.ReactNode[]);
286
+ /**
287
+ * [ID] : Nama ukuran item (opsional).
288
+ * [EN] : Item size names (optional).
289
+ */
65
290
  itemSizeNames?: string[];
66
291
  }
292
+ /**
293
+ * [ID] : Interface untuk tabel virtualisasi.
294
+ * [EN] : Interface for virtualization table.
295
+ * @template T - [ID] : Tipe data baris. [EN] : Row data type.
296
+ */
67
297
  export interface IVirtualization<T = unknown> {
298
+ /**
299
+ * [ID] : Instance tabel TanStack.
300
+ * [EN] : TanStack table instance.
301
+ */
68
302
  tableInstance: ITableTanstack<T>;
303
+ /**
304
+ * [ID] : Nama kelas CSS pembungkus tabel (opsional).
305
+ * [EN] : Table wrapper CSS class name (optional).
306
+ */
69
307
  classNameWrapperTable?: string;
308
+ /**
309
+ * [ID] : Handler klik baris (opsional).
310
+ * [EN] : Row click handler (optional).
311
+ */
70
312
  handlerRowClick?: ITable<T>['handlerRowClick'];
313
+ /**
314
+ * [ID] : Hak istimewa klik baris (opsional).
315
+ * [EN] : Row click privilege (optional).
316
+ */
71
317
  privillageRowClick?: boolean;
318
+ /**
319
+ * [ID] : Properti virtualisasi (opsional).
320
+ * [EN] : Virtualization properties (optional).
321
+ */
72
322
  virtualizationProps?: IVirtualizationProps;
323
+ /**
324
+ * [ID] : ID header (opsional).
325
+ * [EN] : Header ID (optional).
326
+ */
73
327
  headerId?: string;
328
+ /**
329
+ * [ID] : Fungsi ID baris body.
330
+ * [EN] : Body row ID function.
331
+ * @param row - [ID] : Objek baris. [EN] : Row object.
332
+ * @returns [ID] : ID baris. [EN] : Row ID.
333
+ */
74
334
  tbodyTrId: (row: Row<T>) => string | undefined;
335
+ /**
336
+ * [ID] : Nama kelas CSS tabel (opsional).
337
+ * [EN] : Table CSS class name (optional).
338
+ */
75
339
  classNameTable?: string;
340
+ /**
341
+ * [ID] : Komponen urutkan menaik.
342
+ * [EN] : Sort ascending component.
343
+ */
76
344
  componentSortASC: Element | React.ReactNode | React.ReactNode[];
345
+ /**
346
+ * [ID] : Komponen urutkan menurun.
347
+ * [EN] : Sort descending component.
348
+ */
77
349
  componentSortDESC: Element | React.ReactNode | React.ReactNode[];
350
+ /**
351
+ * [ID] : Nama kelas CSS pointer.
352
+ * [EN] : Pointer CSS class name.
353
+ */
78
354
  classNamePointer: string;
355
+ /**
356
+ * [ID] : Placeholder kosong (opsional).
357
+ * [EN] : Empty placeholder (optional).
358
+ */
79
359
  emptyPlaceholder?: Element | React.ReactNode | React.ReactNode[];
360
+ /**
361
+ * [ID] : Fungsi render sub-komponen (opsional).
362
+ * [EN] : Sub-component render function (optional).
363
+ */
80
364
  renderSubComponent?: ITable<T>['renderSubComponent'];
365
+ /**
366
+ * [ID] : Kolom yang terlihat.
367
+ * [EN] : Visible columns.
368
+ */
81
369
  visibilityColumns: Pick<ITableColumnBreakpoint, 'columns' | 'realColumns'>;
370
+ /**
371
+ * [ID] : Nama kelas CSS sub-mobile.
372
+ * [EN] : Sub-mobile CSS class name.
373
+ */
82
374
  classNameSubMobile: string;
83
375
  }
376
+ /**
377
+ * [ID] : Interface untuk header virtualisasi.
378
+ * [EN] : Interface for virtualization head.
379
+ */
84
380
  export interface IVirtualizationHead extends React.HTMLAttributes<HTMLTableSectionElement> {
381
+ /**
382
+ * [ID] : Konteks (opsional).
383
+ * [EN] : Context (optional).
384
+ */
85
385
  context?: {
386
+ /**
387
+ * [ID] : ID header (opsional).
388
+ * [EN] : Header ID (optional).
389
+ */
86
390
  headerId?: string;
391
+ /**
392
+ * [ID] : Properti dinamis lainnya.
393
+ * [EN] : Other dynamic properties.
394
+ */
87
395
  [key: string]: unknown;
88
396
  };
397
+ /**
398
+ * [ID] : Properti dinamis lainnya.
399
+ * [EN] : Other dynamic properties.
400
+ */
89
401
  [key: string]: unknown;
90
402
  }
403
+ /**
404
+ * [ID] : Interface untuk tabel virtualisasi.
405
+ * [EN] : Interface for virtualization table.
406
+ */
91
407
  export interface IVirtualizationTable extends React.HTMLAttributes<HTMLTableElement> {
408
+ /**
409
+ * [ID] : Konteks (opsional).
410
+ * [EN] : Context (optional).
411
+ */
92
412
  context?: {
413
+ /**
414
+ * [ID] : Nama kelas CSS tabel (opsional).
415
+ * [EN] : Table CSS class name (optional).
416
+ */
93
417
  classNameTable?: string;
418
+ /**
419
+ * [ID] : Lebar tabel.
420
+ * [EN] : Table width.
421
+ */
94
422
  width: string | number;
423
+ /**
424
+ * [ID] : Properti dinamis lainnya.
425
+ * [EN] : Other dynamic properties.
426
+ */
95
427
  [key: string]: unknown;
96
428
  };
429
+ /**
430
+ * [ID] : Properti dinamis lainnya.
431
+ * [EN] : Other dynamic properties.
432
+ */
97
433
  [key: string]: unknown;
98
434
  }
435
+ /**
436
+ * [ID] : Interface untuk konfigurasi tabel.
437
+ * [EN] : Interface for table configuration.
438
+ */
99
439
  export interface ITableConfig {
440
+ /**
441
+ * [ID] : Konfigurasi jenis.
442
+ * [EN] : Kind configuration.
443
+ */
100
444
  kind: {
101
445
  'payhere-reguler': string;
102
446
  'laba-reguler': string;
103
447
  'laba-small': string;
104
448
  'bill-reguler': string;
105
449
  };
450
+ /**
451
+ * [ID] : Konfigurasi sub-mobile.
452
+ * [EN] : Sub-mobile configuration.
453
+ */
106
454
  subMobile: {
107
455
  'payhere-reguler': string;
108
456
  'laba-reguler': string;
109
457
  'laba-small': string;
110
458
  'bill-reguler': string;
111
459
  };
460
+ /**
461
+ * [ID] : Konfigurasi pointer.
462
+ * [EN] : Pointer configuration.
463
+ */
112
464
  pointer: {
113
465
  'payhere-reguler': string;
114
466
  'laba-reguler': string;
115
467
  'laba-small': string;
116
468
  'bill-reguler': string;
117
469
  };
470
+ /**
471
+ * [ID] : Konfigurasi utilitas.
472
+ * [EN] : Utility configuration.
473
+ */
118
474
  utility: {
119
475
  'table-scroll-top': string;
120
476
  };
477
+ /**
478
+ * [ID] : Konfigurasi ikon pengurutan.
479
+ * [EN] : Sorting icon configuration.
480
+ */
121
481
  sortingIcon: {
122
482
  'payhere-reguler': {
123
483
  asc: Element | React.ReactNode | React.ReactNode[];
@@ -136,6 +496,10 @@ export interface ITableConfig {
136
496
  desc: Element | React.ReactNode | React.ReactNode[];
137
497
  };
138
498
  };
499
+ /**
500
+ * [ID] : Konfigurasi varian.
501
+ * [EN] : Variant configuration.
502
+ */
139
503
  variant: {
140
504
  'laba-grey-02': string;
141
505
  };
@@ -1,37 +1,163 @@
1
1
  import { IBorderRadius } from '../../../config/components/borderRadius';
2
2
  import { TKeyLocale } from '../Calendar';
3
3
 
4
+ /**
5
+ * [ID] : Tipe varian tab.
6
+ * [EN] : Tab variant type.
7
+ */
4
8
  export type TVariantTabs = 'original-laba-blue-10' | 'container-payhere-brand-base' | 'container-payhere-brand-base-bg_white' | 'container-laba-blue-10' | 'container-laba-blue-10-bg_white' | 'original-bill-secondary-800';
9
+ /**
10
+ * [ID] : Tipe ukuran tab.
11
+ * [EN] : Tab size type.
12
+ */
5
13
  export type TSizeTabs = 'tabs-m' | 'tabs-s' | 'tabs-medium' | 'tabs-small';
14
+ /**
15
+ * [ID] : Tipe event tab.
16
+ * [EN] : Tab event type.
17
+ */
6
18
  export type TTypeEventTabs = 'change' | 'mounted';
19
+ /**
20
+ * [ID] : Interface untuk item daftar tab.
21
+ * [EN] : Interface for tab list item.
22
+ */
7
23
  export interface ITabsList {
24
+ /**
25
+ * [ID] : ID tab.
26
+ * [EN] : Tab ID.
27
+ */
8
28
  id: string | number;
29
+ /**
30
+ * [ID] : Label tab.
31
+ * [EN] : Tab label.
32
+ */
9
33
  label: string | number;
34
+ /**
35
+ * [ID] : Status disembunyikan (opsional).
36
+ * [EN] : Is hidden status (optional).
37
+ */
10
38
  isHide?: boolean;
39
+ /**
40
+ * [ID] : Nama kelas CSS (opsional).
41
+ * [EN] : CSS class name (optional).
42
+ */
11
43
  className?: string;
44
+ /**
45
+ * [ID] : Warna aktif (opsional).
46
+ * [EN] : Active color (optional).
47
+ */
12
48
  activeColor?: string;
49
+ /**
50
+ * [ID] : Lokal bahasa (opsional).
51
+ * [EN] : Locale (optional).
52
+ */
13
53
  locale?: Partial<Record<TKeyLocale, string>>;
14
54
  }
55
+ /**
56
+ * [ID] : Interface untuk komponen Tabs.
57
+ * [EN] : Interface for Tabs component.
58
+ */
15
59
  export interface ITabs {
60
+ /**
61
+ * [ID] : ID elemen (opsional).
62
+ * [EN] : Element ID (optional).
63
+ */
16
64
  id?: string;
65
+ /**
66
+ * [ID] : Nilai tab aktif (opsional).
67
+ * [EN] : Active tab value (optional).
68
+ */
17
69
  value?: string | number;
70
+ /**
71
+ * [ID] : Daftar tab.
72
+ * [EN] : Tab list.
73
+ */
18
74
  tabsList: ITabsList[];
75
+ /**
76
+ * [ID] : Kunci nilai tab (opsional).
77
+ * [EN] : Tab value key (optional).
78
+ */
19
79
  keyValueTab?: string;
80
+ /**
81
+ * [ID] : Nama kelas CSS kontainer (opsional).
82
+ * [EN] : Container CSS class name (optional).
83
+ */
20
84
  classNameContainer?: string;
85
+ /**
86
+ * [ID] : Nama kelas CSS (opsional).
87
+ * [EN] : CSS class name (optional).
88
+ */
21
89
  className?: string;
90
+ /**
91
+ * [ID] : Nama kelas CSS tombol (opsional).
92
+ * [EN] : Button CSS class name (optional).
93
+ */
22
94
  classNameButton?: string;
95
+ /**
96
+ * [ID] : Varian tab (opsional).
97
+ * [EN] : Tab variant (optional).
98
+ */
23
99
  variant?: TVariantTabs;
100
+ /**
101
+ * [ID] : Ukuran tab (opsional).
102
+ * [EN] : Tab size (optional).
103
+ */
24
104
  size?: TSizeTabs;
105
+ /**
106
+ * [ID] : Radius sudut (opsional).
107
+ * [EN] : Border radius (optional).
108
+ */
25
109
  borderRadius?: IBorderRadius;
110
+ /**
111
+ * [ID] : Status non-aktif (opsional).
112
+ * [EN] : Disabled status (optional).
113
+ */
26
114
  disabled?: boolean;
115
+ /**
116
+ * [ID] : Animasi (opsional).
117
+ * [EN] : Animation (optional).
118
+ */
27
119
  animation?: boolean;
120
+ /**
121
+ * [ID] : Eksekusi perubahan saat mounted (opsional).
122
+ * [EN] : Execute change on mounted (optional).
123
+ */
28
124
  mountedExecuteChange?: boolean;
125
+ /**
126
+ * [ID] : Handler perubahan tab (opsional).
127
+ * [EN] : Tab change handler (optional).
128
+ * @param v - [ID] : Tab yang dipilih. [EN] : Selected tab.
129
+ * @param sourceEvent - [ID] : Sumber event. [EN] : Event source.
130
+ */
29
131
  onChange?: (v: ITabsList, sourceEvent: TTypeEventTabs) => void;
132
+ /**
133
+ * [ID] : Tipe tombol (opsional).
134
+ * [EN] : Button type (optional).
135
+ */
30
136
  typeButton?: 'button' | 'submit';
137
+ /**
138
+ * [ID] : Lokal bahasa (opsional).
139
+ * [EN] : Locale (optional).
140
+ */
31
141
  locale?: TKeyLocale;
32
142
  }
143
+ /**
144
+ * [ID] : Interface untuk gaya tab.
145
+ * [EN] : Interface for tab style.
146
+ */
33
147
  export interface IStyleTabs {
148
+ /**
149
+ * [ID] : Lebar.
150
+ * [EN] : Width.
151
+ */
34
152
  width: number;
153
+ /**
154
+ * [ID] : Tinggi.
155
+ * [EN] : Height.
156
+ */
35
157
  height: number;
158
+ /**
159
+ * [ID] : Posisi kiri.
160
+ * [EN] : Left position.
161
+ */
36
162
  left: number;
37
163
  }
@@ -1,6 +1,18 @@
1
1
  import { IAllProps } from '@tinymce/tinymce-react';
2
2
 
3
+ /**
4
+ * [ID] : Interface untuk komponen TextEditor.
5
+ * [EN] : Interface for TextEditor component.
6
+ */
3
7
  export interface ITextEditorProps extends IAllProps {
8
+ /**
9
+ * [ID] : ID editor.
10
+ * [EN] : Editor ID.
11
+ */
4
12
  id: string;
13
+ /**
14
+ * [ID] : Label editor (opsional).
15
+ * [EN] : Editor label (optional).
16
+ */
5
17
  label?: string;
6
18
  }