@j-solution/components 1.7.0 → 1.9.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 (207) hide show
  1. package/README.md +413 -415
  2. package/assets/jwms-portal-frontend-Ct2Tc7yj.css +1 -0
  3. package/assets/styles/global-utilities.css +34 -0
  4. package/assets/styles/j-components.css +1 -1
  5. package/assets/styles/themes.css +443 -443
  6. package/components/atoms/JButton.vue.cjs +6 -1
  7. package/components/atoms/JButton.vue.cjs.map +1 -1
  8. package/components/atoms/JButton.vue.js +10 -85
  9. package/components/atoms/JButton.vue.js.map +1 -1
  10. package/components/atoms/JButton.vue2.cjs +1 -1
  11. package/components/atoms/JButton.vue2.cjs.map +1 -1
  12. package/components/atoms/JButton.vue2.js +85 -2
  13. package/components/atoms/JButton.vue2.js.map +1 -1
  14. package/components/atoms/JGrid.vue.cjs +1 -1
  15. package/components/atoms/JGrid.vue.js +1 -1
  16. package/components/atoms/JGrid.vue2.cjs +1 -1
  17. package/components/atoms/JGrid.vue2.cjs.map +1 -1
  18. package/components/atoms/JGrid.vue2.js +39 -35
  19. package/components/atoms/JGrid.vue2.js.map +1 -1
  20. package/components/atoms/JLabel.vue.cjs +1 -1
  21. package/components/atoms/JLabel.vue.cjs.map +1 -1
  22. package/components/atoms/JLabel.vue.js +26 -22
  23. package/components/atoms/JLabel.vue.js.map +1 -1
  24. package/components/atoms/JSectionTitle.vue.cjs +7 -0
  25. package/components/atoms/JSectionTitle.vue.cjs.map +1 -0
  26. package/components/atoms/JSectionTitle.vue.js +13 -0
  27. package/components/atoms/JSectionTitle.vue.js.map +1 -0
  28. package/components/atoms/JSectionTitle.vue2.cjs +2 -0
  29. package/components/atoms/JSectionTitle.vue2.cjs.map +1 -0
  30. package/components/atoms/JSectionTitle.vue2.js +67 -0
  31. package/components/atoms/JSectionTitle.vue2.js.map +1 -0
  32. package/components/atoms/JSplitter.vue.cjs +6 -1
  33. package/components/atoms/JSplitter.vue.cjs.map +1 -1
  34. package/components/atoms/JSplitter.vue.js +10 -59
  35. package/components/atoms/JSplitter.vue.js.map +1 -1
  36. package/components/atoms/JSplitter.vue2.cjs +1 -1
  37. package/components/atoms/JSplitter.vue2.cjs.map +1 -1
  38. package/components/atoms/JSplitter.vue2.js +59 -2
  39. package/components/atoms/JSplitter.vue2.js.map +1 -1
  40. package/components/examples/ExampleCrudPage.vue.cjs +1 -1
  41. package/components/examples/ExampleCrudPage.vue.cjs.map +1 -1
  42. package/components/examples/ExampleCrudPage.vue.js +228 -208
  43. package/components/examples/ExampleCrudPage.vue.js.map +1 -1
  44. package/components/examples/ExampleTabMappingPage.vue.cjs +1 -1
  45. package/components/examples/ExampleTabMappingPage.vue.cjs.map +1 -1
  46. package/components/examples/ExampleTabMappingPage.vue.js +341 -368
  47. package/components/examples/ExampleTabMappingPage.vue.js.map +1 -1
  48. package/components/molecules/JAlert.vue.cjs +1 -1
  49. package/components/molecules/JAlert.vue.cjs.map +1 -1
  50. package/components/molecules/JAlert.vue.js +18 -16
  51. package/components/molecules/JAlert.vue.js.map +1 -1
  52. package/components/molecules/JCard.vue.cjs +1 -1
  53. package/components/molecules/JCard.vue.cjs.map +1 -1
  54. package/components/molecules/JCard.vue.js +55 -39
  55. package/components/molecules/JCard.vue.js.map +1 -1
  56. package/components/molecules/JEmptyState.vue.cjs +7 -0
  57. package/components/molecules/JEmptyState.vue.cjs.map +1 -0
  58. package/components/molecules/JEmptyState.vue.js +13 -0
  59. package/components/molecules/JEmptyState.vue.js.map +1 -0
  60. package/components/molecules/JEmptyState.vue2.cjs +2 -0
  61. package/components/molecules/JEmptyState.vue2.cjs.map +1 -0
  62. package/components/molecules/JEmptyState.vue2.js +127 -0
  63. package/components/molecules/JEmptyState.vue2.js.map +1 -0
  64. package/components/molecules/JFormField.vue.cjs +6 -1
  65. package/components/molecules/JFormField.vue.cjs.map +1 -1
  66. package/components/molecules/JFormField.vue.js +10 -264
  67. package/components/molecules/JFormField.vue.js.map +1 -1
  68. package/components/molecules/JFormField.vue2.cjs +2 -0
  69. package/components/molecules/JFormField.vue2.cjs.map +1 -0
  70. package/components/molecules/JFormField.vue2.js +271 -0
  71. package/components/molecules/JFormField.vue2.js.map +1 -0
  72. package/components/molecules/JTabs.vue.cjs +1 -1
  73. package/components/molecules/JTabs.vue.js +1 -1
  74. package/components/molecules/JTabs.vue2.cjs +1 -1
  75. package/components/molecules/JTabs.vue2.cjs.map +1 -1
  76. package/components/molecules/JTabs.vue2.js +44 -50
  77. package/components/molecules/JTabs.vue2.js.map +1 -1
  78. package/components/molecules/JTitlebar.vue.cjs +1 -1
  79. package/components/molecules/JTitlebar.vue.cjs.map +1 -1
  80. package/components/molecules/JTitlebar.vue.js +23 -20
  81. package/components/molecules/JTitlebar.vue.js.map +1 -1
  82. package/components/organisms/JDynamicForm.vue2.cjs +1 -1
  83. package/components/organisms/JDynamicForm.vue2.cjs.map +1 -1
  84. package/components/organisms/JDynamicForm.vue2.js +35 -32
  85. package/components/organisms/JDynamicForm.vue2.js.map +1 -1
  86. package/components/organisms/JDynamicTabs.vue.cjs +1 -1
  87. package/components/organisms/JDynamicTabs.vue.cjs.map +1 -1
  88. package/components/organisms/JDynamicTabs.vue.js +47 -52
  89. package/components/organisms/JDynamicTabs.vue.js.map +1 -1
  90. package/components/organisms/JFilterBar.vue.cjs +6 -1
  91. package/components/organisms/JFilterBar.vue.cjs.map +1 -1
  92. package/components/organisms/JFilterBar.vue.js +10 -137
  93. package/components/organisms/JFilterBar.vue.js.map +1 -1
  94. package/components/organisms/JFilterBar.vue2.cjs +1 -1
  95. package/components/organisms/JFilterBar.vue2.cjs.map +1 -1
  96. package/components/organisms/JFilterBar.vue2.js +143 -2
  97. package/components/organisms/JFilterBar.vue2.js.map +1 -1
  98. package/components/organisms/JFormModal.vue.cjs +1 -1
  99. package/components/organisms/JFormModal.vue.cjs.map +1 -1
  100. package/components/organisms/JFormModal.vue.js +54 -49
  101. package/components/organisms/JFormModal.vue.js.map +1 -1
  102. package/components/organisms/JHeader.vue.cjs +1 -1
  103. package/components/organisms/JHeader.vue.cjs.map +1 -1
  104. package/components/organisms/JHeader.vue.js +191 -190
  105. package/components/organisms/JHeader.vue.js.map +1 -1
  106. package/components/organisms/JModal.vue.cjs +1 -1
  107. package/components/organisms/JModal.vue.cjs.map +1 -1
  108. package/components/organisms/JModal.vue.js +47 -45
  109. package/components/organisms/JModal.vue.js.map +1 -1
  110. package/components/organisms/JPageContainer.vue.cjs +1 -1
  111. package/components/organisms/JPageContainer.vue.cjs.map +1 -1
  112. package/components/organisms/JPageContainer.vue.js +22 -22
  113. package/components/organisms/JPageContainer.vue.js.map +1 -1
  114. package/components/organisms/JSearchPanel.vue2.cjs +1 -1
  115. package/components/organisms/JSearchPanel.vue2.cjs.map +1 -1
  116. package/components/organisms/JSearchPanel.vue2.js +34 -32
  117. package/components/organisms/JSearchPanel.vue2.js.map +1 -1
  118. package/components/organisms/JShuttle.vue.cjs +7 -0
  119. package/components/organisms/JShuttle.vue.cjs.map +1 -0
  120. package/components/organisms/JShuttle.vue.js +13 -0
  121. package/components/organisms/JShuttle.vue.js.map +1 -0
  122. package/components/organisms/JShuttle.vue2.cjs +2 -0
  123. package/components/organisms/JShuttle.vue2.cjs.map +1 -0
  124. package/components/organisms/JShuttle.vue2.js +216 -0
  125. package/components/organisms/JShuttle.vue2.js.map +1 -0
  126. package/components/organisms/JSidebar/JSidebar.vue.cjs +2 -0
  127. package/components/organisms/JSidebar/JSidebar.vue.cjs.map +1 -0
  128. package/components/organisms/JSidebar/JSidebar.vue.js +189 -0
  129. package/components/organisms/JSidebar/JSidebar.vue.js.map +1 -0
  130. package/components/{molecules/JFormField.vue3.cjs → organisms/JSidebar/JSidebar.vue2.cjs} +2 -2
  131. package/components/organisms/JSidebar/JSidebar.vue2.cjs.map +1 -0
  132. package/components/organisms/JSidebar/JSidebar.vue2.js +5 -0
  133. package/components/organisms/JSidebar/JSidebar.vue2.js.map +1 -0
  134. package/components/organisms/JSidebar/JSidebarGroup.vue.cjs +2 -0
  135. package/components/organisms/JSidebar/JSidebarGroup.vue.cjs.map +1 -0
  136. package/components/organisms/JSidebar/JSidebarGroup.vue.js +89 -0
  137. package/components/organisms/JSidebar/JSidebarGroup.vue.js.map +1 -0
  138. package/components/organisms/JSidebar/JSidebarGroup.vue2.cjs +2 -0
  139. package/components/organisms/JSidebar/JSidebarGroup.vue2.cjs.map +1 -0
  140. package/components/organisms/JSidebar/JSidebarGroup.vue2.js +5 -0
  141. package/components/organisms/JSidebar/JSidebarGroup.vue2.js.map +1 -0
  142. package/components/organisms/JSidebar/JSidebarItem.vue.cjs +2 -0
  143. package/components/organisms/JSidebar/JSidebarItem.vue.cjs.map +1 -0
  144. package/components/organisms/JSidebar/JSidebarItem.vue.js +79 -0
  145. package/components/organisms/JSidebar/JSidebarItem.vue.js.map +1 -0
  146. package/components/organisms/JSidebar/JSidebarItem.vue2.cjs +2 -0
  147. package/components/organisms/JSidebar/JSidebarItem.vue2.cjs.map +1 -0
  148. package/components/organisms/JSidebar/JSidebarItem.vue2.js +5 -0
  149. package/components/organisms/JSidebar/JSidebarItem.vue2.js.map +1 -0
  150. package/components/organisms/JSidebarSimple/JDynamicMenuItem.vue.cjs +1 -1
  151. package/components/organisms/JSidebarSimple/JDynamicMenuItem.vue.cjs.map +1 -1
  152. package/components/organisms/JSidebarSimple/JDynamicMenuItem.vue.js +52 -52
  153. package/components/organisms/JSidebarSimple/JDynamicMenuItem.vue.js.map +1 -1
  154. package/components/shadcn/Card.vue.cjs +1 -1
  155. package/components/shadcn/Card.vue.cjs.map +1 -1
  156. package/components/shadcn/Card.vue.js +1 -1
  157. package/components/shadcn/Card.vue.js.map +1 -1
  158. package/components/shadcn/CardContent.vue.cjs +1 -1
  159. package/components/shadcn/CardContent.vue.cjs.map +1 -1
  160. package/components/shadcn/CardContent.vue.js +4 -4
  161. package/components/shadcn/CardContent.vue.js.map +1 -1
  162. package/components/shadcn/CardHeader.vue.cjs +1 -1
  163. package/components/shadcn/CardHeader.vue.cjs.map +1 -1
  164. package/components/shadcn/CardHeader.vue.js +5 -5
  165. package/components/shadcn/CardHeader.vue.js.map +1 -1
  166. package/components/shadcn/Input.vue.cjs +1 -1
  167. package/components/shadcn/Input.vue.cjs.map +1 -1
  168. package/components/shadcn/Input.vue.js +3 -3
  169. package/components/shadcn/Input.vue.js.map +1 -1
  170. package/components/shadcn/SelectTrigger.vue.cjs +1 -1
  171. package/components/shadcn/SelectTrigger.vue.cjs.map +1 -1
  172. package/components/shadcn/SelectTrigger.vue.js +1 -1
  173. package/components/shadcn/SelectTrigger.vue.js.map +1 -1
  174. package/components/shadcn/TabsContent.vue.cjs +1 -1
  175. package/components/shadcn/TabsContent.vue.cjs.map +1 -1
  176. package/components/shadcn/TabsContent.vue.js +1 -1
  177. package/components/shadcn/TabsContent.vue.js.map +1 -1
  178. package/components/shadcn/TabsList.vue.cjs +1 -1
  179. package/components/shadcn/TabsList.vue.cjs.map +1 -1
  180. package/components/shadcn/TabsList.vue.js +10 -10
  181. package/components/shadcn/TabsList.vue.js.map +1 -1
  182. package/components/shadcn/Textarea.vue.cjs +1 -1
  183. package/components/shadcn/Textarea.vue.cjs.map +1 -1
  184. package/components/shadcn/Textarea.vue.js +1 -1
  185. package/components/shadcn/Textarea.vue.js.map +1 -1
  186. package/components/shadcn/index.cjs +1 -1
  187. package/components/shadcn/index.cjs.map +1 -1
  188. package/components/shadcn/index.js +4 -4
  189. package/components/shadcn/index.js.map +1 -1
  190. package/components/templates/JLayout.vue.cjs.map +1 -1
  191. package/components/templates/JLayout.vue.js.map +1 -1
  192. package/components/templates/JLayoutSimple.vue.cjs +1 -1
  193. package/components/templates/JLayoutSimple.vue.cjs.map +1 -1
  194. package/components/templates/JLayoutSimple.vue.js +36 -30
  195. package/components/templates/JLayoutSimple.vue.js.map +1 -1
  196. package/index.cjs +1 -1
  197. package/index.js +75 -67
  198. package/package.json +1 -1
  199. package/types/index.d.ts +662 -461
  200. package/types/sidebar.types.cjs +2 -0
  201. package/types/sidebar.types.cjs.map +1 -0
  202. package/types/sidebar.types.js +5 -0
  203. package/types/sidebar.types.js.map +1 -0
  204. package/assets/jwms-portal-frontend-CwxPfHfa.css +0 -1
  205. package/components/molecules/JFormField.vue3.cjs.map +0 -1
  206. package/components/molecules/JFormField.vue3.js +0 -6
  207. package/components/molecules/JFormField.vue3.js.map +0 -1
package/types/index.d.ts CHANGED
@@ -59,7 +59,9 @@ disabled: boolean;
59
59
  items: ContextMenuGroup[];
60
60
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
61
61
 
62
- declare const __VLS_component_12: DefineComponent<__VLS_Props_28, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_28> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
62
+ declare const __VLS_component_12: DefineComponent<__VLS_Props_28, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_28> & Readonly<{}>, {
63
+ variant: CardVariant;
64
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
63
65
 
64
66
  declare const __VLS_component_13: DefineComponent<__VLS_Props_29, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
65
67
  confirm: () => any;
@@ -89,7 +91,16 @@ orientation: "vertical" | "horizontal" | null;
89
91
  showButtonSeparators: boolean;
90
92
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
91
93
 
92
- declare const __VLS_component_17: DefineComponent<JDynamicTabsProps, {
94
+ declare const __VLS_component_17: DefineComponent<JEmptyStateProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
95
+ action: () => any;
96
+ }, string, PublicProps, Readonly<JEmptyStateProps> & Readonly<{
97
+ onAction?: (() => any) | undefined;
98
+ }>, {
99
+ variant: "default" | "simple";
100
+ icon: string;
101
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
102
+
103
+ declare const __VLS_component_18: DefineComponent<JDynamicTabsProps, {
93
104
  addTab: (tab: DynamicTab) => void;
94
105
  closeTab: (id: string) => void;
95
106
  activateTab: (id: string) => void;
@@ -110,7 +121,7 @@ maxTabs: number;
110
121
  emptyMessage: string;
111
122
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
112
123
 
113
- declare const __VLS_component_18: DefineComponent<JModalProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
124
+ declare const __VLS_component_19: DefineComponent<JModalProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
114
125
  "update:open": (value: boolean) => any;
115
126
  cancel: () => any;
116
127
  confirm: (value?: string | undefined) => any;
@@ -132,7 +143,26 @@ confirmVariant: "default" | "destructive" | "outline" | "secondary" | "ghost" |
132
143
  confirmDisabled: boolean;
133
144
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
134
145
 
135
- declare const __VLS_component_19: DefineComponent<JFormModalProps, {
146
+ declare const __VLS_component_2: DefineComponent<__VLS_Props_2, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
147
+ "update:modelValue": (value: string | number) => any;
148
+ change: (value: string | number) => any;
149
+ focus: (event: FocusEvent) => any;
150
+ blur: (event: FocusEvent) => any;
151
+ }, string, PublicProps, Readonly<__VLS_Props_2> & Readonly<{
152
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
153
+ onChange?: ((value: string | number) => any) | undefined;
154
+ onFocus?: ((event: FocusEvent) => any) | undefined;
155
+ onBlur?: ((event: FocusEvent) => any) | undefined;
156
+ }>, {
157
+ disabled: boolean;
158
+ type: string;
159
+ placeholder: string;
160
+ readonly: boolean;
161
+ required: boolean;
162
+ styletype: StyleType_2;
163
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLInputElement>;
164
+
165
+ declare const __VLS_component_20: DefineComponent<JFormModalProps, {
136
166
  reset: () => void | undefined;
137
167
  submit: () => void | undefined;
138
168
  formState: ComputedRef<Record<string, any> | undefined>;
@@ -208,26 +238,7 @@ handleError: (errs: any) => void;
208
238
  }, {}, {}, {}, {}> | null;
209
239
  }, any>;
210
240
 
211
- declare const __VLS_component_2: DefineComponent<__VLS_Props_2, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
212
- "update:modelValue": (value: string | number) => any;
213
- change: (value: string | number) => any;
214
- focus: (event: FocusEvent) => any;
215
- blur: (event: FocusEvent) => any;
216
- }, string, PublicProps, Readonly<__VLS_Props_2> & Readonly<{
217
- "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
218
- onChange?: ((value: string | number) => any) | undefined;
219
- onFocus?: ((event: FocusEvent) => any) | undefined;
220
- onBlur?: ((event: FocusEvent) => any) | undefined;
221
- }>, {
222
- disabled: boolean;
223
- type: string;
224
- placeholder: string;
225
- readonly: boolean;
226
- required: boolean;
227
- styletype: StyleType_2;
228
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLInputElement>;
229
-
230
- declare const __VLS_component_20: DefineComponent<JFilterBarProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
241
+ declare const __VLS_component_21: DefineComponent<JFilterBarProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
231
242
  search: () => any;
232
243
  reset: () => any;
233
244
  "update:collapsed": (value: boolean) => any;
@@ -248,7 +259,7 @@ resetButtonText: string;
248
259
  searchButtonText: string;
249
260
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
250
261
 
251
- declare const __VLS_component_21: DefineComponent<__VLS_Props_34, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
262
+ declare const __VLS_component_22: DefineComponent<__VLS_Props_34, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
252
263
  logoClick: () => any;
253
264
  navClick: (item: HeaderNavItem, index: number) => any;
254
265
  notificationClick: (item: NotificationItem) => any;
@@ -274,10 +285,10 @@ defaultTheme: string;
274
285
  availableThemes: string[];
275
286
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;
276
287
 
277
- declare const __VLS_component_22: DefineComponent<__VLS_Props_37, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
288
+ declare const __VLS_component_23: DefineComponent<__VLS_Props_38, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
278
289
  breadcrumbClick: (item: BreadcrumbItem, index: number) => any;
279
290
  titlebarButtonClick: (button: TitlebarButton) => any;
280
- }, string, PublicProps, Readonly<__VLS_Props_37> & Readonly<{
291
+ }, string, PublicProps, Readonly<__VLS_Props_38> & Readonly<{
281
292
  onBreadcrumbClick?: ((item: BreadcrumbItem, index: number) => any) | undefined;
282
293
  onTitlebarButtonClick?: ((button: TitlebarButton) => any) | undefined;
283
294
  }>, {
@@ -288,14 +299,17 @@ showTitlebar: boolean;
288
299
  contentScroll: boolean;
289
300
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
290
301
 
291
- declare const __VLS_component_23: DefineComponent<__VLS_Props_39, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_39> & Readonly<{}>, {
302
+ declare const __VLS_component_24: DefineComponent<__VLS_Props_40, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_40> & Readonly<{}>, {
292
303
  styletype: StyleType_29;
293
304
  contentScroll: boolean;
294
305
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
295
306
 
296
- declare const __VLS_component_24: DefineComponent<__VLS_Props_40, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_40> & Readonly<{}>, {
307
+ declare const __VLS_component_25: DefineComponent<__VLS_Props_41, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
308
+ "menu-click": (item: SidebarMenuItem, event: MouseEvent) => any;
309
+ }, string, PublicProps, Readonly<__VLS_Props_41> & Readonly<{
310
+ "onMenu-click"?: ((item: SidebarMenuItem, event: MouseEvent) => any) | undefined;
311
+ }>, {
297
312
  styletype: "default" | "minimal";
298
- permissions: MenuPermission[];
299
313
  menuItems: SidebarMenuItem[];
300
314
  contentScroll: boolean;
301
315
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
@@ -560,6 +574,8 @@ declare type __VLS_Props_21 = {
560
574
  styletype?: StyleType_19;
561
575
  /** HTML for 속성 (연결할 input의 id) */
562
576
  for?: string;
577
+ /** 추가 클래스 (외부 커스터마이징용) */
578
+ class?: string;
563
579
  };
564
580
 
565
581
  declare type __VLS_Props_22 = {
@@ -591,6 +607,8 @@ declare type __VLS_Props_23 = {
591
607
  };
592
608
 
593
609
  declare type __VLS_Props_24 = {
610
+ /** 추가 클래스 (외부 커스터마이징용) */
611
+ class?: string;
594
612
  /** 그리드에 표시할 데이터 배열 */
595
613
  rowData: any[];
596
614
  /** 컬럼 정의 배열 */
@@ -665,6 +683,8 @@ declare type __VLS_Props_25 = {
665
683
  };
666
684
 
667
685
  declare type __VLS_Props_26 = {
686
+ /** 추가 클래스 (외부 커스터마이징용) */
687
+ class?: string;
668
688
  /** 필드 레이블 */
669
689
  label?: string;
670
690
  /** 필드 설명 (레이블 아래 표시) */
@@ -733,6 +753,8 @@ declare type __VLS_Props_28 = {
733
753
  description?: string;
734
754
  /** 카드 푸터 텍스트 */
735
755
  footer?: string;
756
+ /** 카드 variant (패턴 4) */
757
+ variant?: CardVariant;
736
758
  };
737
759
 
738
760
  declare type __VLS_Props_29 = {
@@ -779,6 +801,8 @@ declare type __VLS_Props_30 = {
779
801
  showHelp?: boolean;
780
802
  /** 메인 버튼 목록 */
781
803
  buttons?: TitlebarButton[];
804
+ /** 추가 클래스 (외부 커스터마이징용) */
805
+ class?: string;
782
806
  };
783
807
 
784
808
  declare type __VLS_Props_31 = {
@@ -837,9 +861,35 @@ declare type __VLS_Props_34 = {
837
861
  availableThemes?: string[];
838
862
  };
839
863
 
864
+ /**
865
+ * JSidebar - 통합 사이드바 컴포넌트
866
+ *
867
+ * DB 트리 데이터 기반, provide/inject로 상태 공유.
868
+ * collapsed 모드, 검색, 즐겨찾기(localStorage) 지원.
869
+ * 라우터를 모름 — @menu-click으로 아이템을 올려보냄.
870
+ */
840
871
  declare type __VLS_Props_35 = {
872
+ /** 메뉴 트리 데이터 */
873
+ items: SidebarMenuItem[];
874
+ /** 접힘 상태 (v-model:collapsed) */
875
+ collapsed?: boolean;
876
+ /** 현재 활성 경로 */
877
+ activePath?: string;
878
+ /** 펼침 너비 */
879
+ width?: string;
880
+ /** 접힘 너비 */
881
+ collapsedWidth?: string;
882
+ /** 즐겨찾기 localStorage 키 (없으면 즐겨찾기 비활성) */
883
+ storageKey?: string;
884
+ /** 검색 표시 여부 */
885
+ showSearch?: boolean;
886
+ /** 즐겨찾기 섹션 표시 여부 */
887
+ showFavorites?: boolean;
888
+ };
889
+
890
+ declare type __VLS_Props_36 = {
841
891
  /** 메뉴 아이템 목록 */
842
- menuItems: SidebarMenuItem[];
892
+ menuItems: SidebarMenuItem_2[];
843
893
  /** 권한 목록 */
844
894
  permissions?: MenuPermission[];
845
895
  /** 검색어 */
@@ -854,9 +904,9 @@ declare type __VLS_Props_35 = {
854
904
  isVisible?: boolean;
855
905
  };
856
906
 
857
- declare type __VLS_Props_36 = {
907
+ declare type __VLS_Props_37 = {
858
908
  /** 메뉴 아이템 목록 */
859
- menuItems: SidebarMenuItem[];
909
+ menuItems: SidebarMenuItem_2[];
860
910
  /** 권한 목록 */
861
911
  permissions?: MenuPermission[];
862
912
  /** 즐겨찾기 메뉴 키 목록 */
@@ -871,7 +921,7 @@ declare type __VLS_Props_36 = {
871
921
  isVisible?: boolean;
872
922
  };
873
923
 
874
- declare type __VLS_Props_37 = {
924
+ declare type __VLS_Props_38 = {
875
925
  /** 브레드크럼 아이템 목록 */
876
926
  breadcrumbItems?: BreadcrumbItem[];
877
927
  /** 브레드크럼 표시 여부 */
@@ -892,9 +942,9 @@ declare type __VLS_Props_37 = {
892
942
  class?: string;
893
943
  };
894
944
 
895
- declare type __VLS_Props_38 = {
945
+ declare type __VLS_Props_39 = {
896
946
  /** 트리 노드 데이터 */
897
- items: SidebarMenuItem[];
947
+ items: SidebarMenuItem_2[];
898
948
  /** 펼쳐진 노드 키 목록 (v-model 지원, 배열) */
899
949
  expandedKeys?: (number | string)[];
900
950
  /** 현재 선택(하이라이트)된 노드의 menuKey (v-model 지원) */
@@ -911,15 +961,6 @@ declare type __VLS_Props_38 = {
911
961
  class?: string;
912
962
  };
913
963
 
914
- declare type __VLS_Props_39 = {
915
- /** 레이아웃 스타일 타입 */
916
- styletype?: StyleType_29;
917
- /** 콘텐츠 영역 스크롤 가능 여부 */
918
- contentScroll?: boolean;
919
- /** 추가 CSS 클래스 */
920
- class?: string;
921
- };
922
-
923
964
  declare type __VLS_Props_4 = {
924
965
  modelValue?: string;
925
966
  disabled?: boolean;
@@ -931,37 +972,28 @@ declare type __VLS_Props_4 = {
931
972
  styletype?: StyleType_4;
932
973
  };
933
974
 
975
+ declare type __VLS_Props_40 = {
976
+ /** 레이아웃 스타일 타입 */
977
+ styletype?: StyleType_29;
978
+ /** 콘텐츠 영역 스크롤 가능 여부 */
979
+ contentScroll?: boolean;
980
+ /** 추가 CSS 클래스 */
981
+ class?: string;
982
+ };
983
+
934
984
  /**
935
- * JLayoutSimple - Simple Sidebar + 일반 PageContainer 조합 템플릿 (templates)
936
- * Simple Layout Template
937
- *
938
- * @description
939
- * JLayout을 사용하는 Preset 템플릿입니다.
940
- * JHeader, JSidebarSimple, JPageContainer를 조합한 기본 레이아웃 예시를 제공합니다.
941
- *
942
- * 레이아웃 구조:
943
- * - header: 상단 헤더 영역 (슬롯)
944
- * - sidebar: 사이드바 영역 (슬롯)
945
- * - content: 메인 콘텐츠 영역 (슬롯, 기본 슬롯)
985
+ * JLayoutSimple - JSidebar + 일반 PageContainer 조합 템플릿
946
986
  *
947
987
  * @example
948
988
  * ```vue
949
- * <JLayoutSimple styletype="default" :content-scroll="true">
950
- * <template #header>
951
- * <JHeader logo-text="JWMS Portal" :user-name="userName" styletype="default" />
952
- * </template>
953
- * <template #sidebar>
954
- * <JSidebarSimple :menu-items="menuItems" styletype="default" />
955
- * </template>
989
+ * <JLayoutSimple :menu-items="menuItems" storage-key="my-app-favorites">
956
990
  * <template #content>
957
- * <JPageContainer title="재고 관리">
958
- * <div>페이지 콘텐츠</div>
959
- * </JPageContainer>
991
+ * <RouterView />
960
992
  * </template>
961
993
  * </JLayoutSimple>
962
994
  * ```
963
995
  */
964
- declare type __VLS_Props_40 = {
996
+ declare type __VLS_Props_41 = {
965
997
  /** 레이아웃 스타일 타입 */
966
998
  styletype?: 'default' | 'minimal';
967
999
  /** 콘텐츠 영역 스크롤 가능 여부 */
@@ -970,8 +1002,10 @@ declare type __VLS_Props_40 = {
970
1002
  class?: string;
971
1003
  /** 메뉴 아이템 목록 */
972
1004
  menuItems?: SidebarMenuItem[];
973
- /** 권한 목록 */
974
- permissions?: MenuPermission[];
1005
+ /** 현재 활성 경로 */
1006
+ activePath?: string;
1007
+ /** 즐겨찾기 localStorage 키 */
1008
+ storageKey?: string;
975
1009
  };
976
1010
 
977
1011
  declare type __VLS_Props_5 = {
@@ -1081,7 +1115,9 @@ declare function __VLS_template_11(): {
1081
1115
  declare function __VLS_template_12(): {
1082
1116
  attrs: Partial<{}>;
1083
1117
  slots: {
1118
+ actions?(_: {}): any;
1084
1119
  default?(_: {}): any;
1120
+ footer?(_: {}): any;
1085
1121
  };
1086
1122
  refs: {};
1087
1123
  rootEl: HTMLDivElement;
@@ -1131,6 +1167,20 @@ declare function __VLS_template_16(): {
1131
1167
  };
1132
1168
 
1133
1169
  declare function __VLS_template_17(): {
1170
+ attrs: Partial<{}>;
1171
+ slots: {
1172
+ icon?(_: {}): any;
1173
+ icon?(_: {}): any;
1174
+ title?(_: {}): any;
1175
+ title?(_: {}): any;
1176
+ description?(_: {}): any;
1177
+ action?(_: {}): any;
1178
+ };
1179
+ refs: {};
1180
+ rootEl: any;
1181
+ };
1182
+
1183
+ declare function __VLS_template_18(): {
1134
1184
  attrs: Partial<{}>;
1135
1185
  slots: Partial<Record<`content-${string}`, (_: {
1136
1186
  tab: DynamicTab;
@@ -1139,7 +1189,7 @@ declare function __VLS_template_17(): {
1139
1189
  rootEl: HTMLDivElement;
1140
1190
  };
1141
1191
 
1142
- declare function __VLS_template_18(): {
1192
+ declare function __VLS_template_19(): {
1143
1193
  attrs: Partial<{}>;
1144
1194
  slots: {
1145
1195
  body?(_: {}): any;
@@ -1148,7 +1198,16 @@ declare function __VLS_template_18(): {
1148
1198
  rootEl: any;
1149
1199
  };
1150
1200
 
1151
- declare function __VLS_template_19(): {
1201
+ declare function __VLS_template_2(): {
1202
+ attrs: Partial<{}>;
1203
+ slots: {
1204
+ default?(_: {}): any;
1205
+ };
1206
+ refs: {};
1207
+ rootEl: HTMLInputElement;
1208
+ };
1209
+
1210
+ declare function __VLS_template_20(): {
1152
1211
  attrs: Partial<{}>;
1153
1212
  slots: {
1154
1213
  body?(_: {}): any;
@@ -1198,16 +1257,7 @@ declare function __VLS_template_19(): {
1198
1257
  rootEl: any;
1199
1258
  };
1200
1259
 
1201
- declare function __VLS_template_2(): {
1202
- attrs: Partial<{}>;
1203
- slots: {
1204
- default?(_: {}): any;
1205
- };
1206
- refs: {};
1207
- rootEl: HTMLInputElement;
1208
- };
1209
-
1210
- declare function __VLS_template_20(): {
1260
+ declare function __VLS_template_21(): {
1211
1261
  attrs: Partial<{}>;
1212
1262
  slots: {
1213
1263
  actions?(_: {}): any;
@@ -1217,7 +1267,7 @@ declare function __VLS_template_20(): {
1217
1267
  rootEl: HTMLDivElement;
1218
1268
  };
1219
1269
 
1220
- declare function __VLS_template_21(): {
1270
+ declare function __VLS_template_22(): {
1221
1271
  attrs: Partial<{}>;
1222
1272
  slots: {
1223
1273
  toolbar?(_: {}): any;
@@ -1226,7 +1276,7 @@ declare function __VLS_template_21(): {
1226
1276
  rootEl: HTMLElement;
1227
1277
  };
1228
1278
 
1229
- declare function __VLS_template_22(): {
1279
+ declare function __VLS_template_23(): {
1230
1280
  attrs: Partial<{}>;
1231
1281
  slots: {
1232
1282
  'titlebar-buttons'?(_: {}): any;
@@ -1236,7 +1286,7 @@ declare function __VLS_template_22(): {
1236
1286
  rootEl: HTMLDivElement;
1237
1287
  };
1238
1288
 
1239
- declare function __VLS_template_23(): {
1289
+ declare function __VLS_template_24(): {
1240
1290
  attrs: Partial<{}>;
1241
1291
  slots: {
1242
1292
  header?(_: {}): any;
@@ -1248,15 +1298,15 @@ declare function __VLS_template_23(): {
1248
1298
  rootEl: HTMLDivElement;
1249
1299
  };
1250
1300
 
1251
- declare function __VLS_template_24(): {
1301
+ declare function __VLS_template_25(): {
1252
1302
  attrs: Partial<{}>;
1253
1303
  slots: {
1254
1304
  header?(_: {
1255
- isSidebarOpen: boolean;
1305
+ isSidebarCollapsed: boolean;
1256
1306
  onSidebarToggle: () => void;
1257
1307
  }): any;
1258
1308
  sidebar?(_: {
1259
- isSidebarOpen: boolean;
1309
+ isSidebarCollapsed: boolean;
1260
1310
  }): any;
1261
1311
  content?(_: {}): any;
1262
1312
  default?(_: {}): any;
@@ -1368,6 +1418,8 @@ declare type __VLS_TemplateResult_23 = ReturnType<typeof __VLS_template_23>;
1368
1418
 
1369
1419
  declare type __VLS_TemplateResult_24 = ReturnType<typeof __VLS_template_24>;
1370
1420
 
1421
+ declare type __VLS_TemplateResult_25 = ReturnType<typeof __VLS_template_25>;
1422
+
1371
1423
  declare type __VLS_TemplateResult_3 = ReturnType<typeof __VLS_template_3>;
1372
1424
 
1373
1425
  declare type __VLS_TemplateResult_4 = ReturnType<typeof __VLS_template_4>;
@@ -1484,6 +1536,12 @@ declare type __VLS_WithTemplateSlots_24<T, S> = T & {
1484
1536
  };
1485
1537
  };
1486
1538
 
1539
+ declare type __VLS_WithTemplateSlots_25<T, S> = T & {
1540
+ new (): {
1541
+ $slots: S;
1542
+ };
1543
+ };
1544
+
1487
1545
  declare type __VLS_WithTemplateSlots_3<T, S> = T & {
1488
1546
  new (): {
1489
1547
  $slots: S;
@@ -1636,6 +1694,8 @@ declare const buttonVariants: (props?: ({
1636
1694
  size?: "sm" | "lg" | "xs" | "md" | "icon" | null | undefined;
1637
1695
  } & ClassProp) | undefined) => string;
1638
1696
 
1697
+ declare type CardVariant = 'default' | 'elevated';
1698
+
1639
1699
  declare interface ComboboxOption {
1640
1700
  value: string | number;
1641
1701
  label: string;
@@ -1744,6 +1804,7 @@ export declare const ExampleCrudPage: DefineComponent< {}, {
1744
1804
  gridRef: Ref<any, any>;
1745
1805
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {
1746
1806
  gridRef: CreateComponentPublicInstanceWithMixins<Readonly<{
1807
+ class?: string;
1747
1808
  rowData: any[];
1748
1809
  columnDefs: ColDef[];
1749
1810
  theme?: string;
@@ -1821,6 +1882,7 @@ C: {};
1821
1882
  M: {};
1822
1883
  Defaults: {};
1823
1884
  }, Readonly<{
1885
+ class?: string;
1824
1886
  rowData: any[];
1825
1887
  columnDefs: ColDef[];
1826
1888
  theme?: string;
@@ -1890,6 +1952,7 @@ masterGridRef: Ref<any, any>;
1890
1952
  mappingMasterGridRef: Ref<any, any>;
1891
1953
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {
1892
1954
  masterGridRef: CreateComponentPublicInstanceWithMixins<Readonly<{
1955
+ class?: string;
1893
1956
  rowData: any[];
1894
1957
  columnDefs: ColDef[];
1895
1958
  theme?: string;
@@ -1967,6 +2030,7 @@ C: {};
1967
2030
  M: {};
1968
2031
  Defaults: {};
1969
2032
  }, Readonly<{
2033
+ class?: string;
1970
2034
  rowData: any[];
1971
2035
  columnDefs: ColDef[];
1972
2036
  theme?: string;
@@ -2030,6 +2094,7 @@ pivotPanelShow: "always" | "onlyWhenPivoting" | "never";
2030
2094
  pivotMode: boolean;
2031
2095
  }> | null;
2032
2096
  mappingMasterGridRef: CreateComponentPublicInstanceWithMixins<Readonly<{
2097
+ class?: string;
2033
2098
  rowData: any[];
2034
2099
  columnDefs: ColDef[];
2035
2100
  theme?: string;
@@ -2107,6 +2172,7 @@ C: {};
2107
2172
  M: {};
2108
2173
  Defaults: {};
2109
2174
  }, Readonly<{
2175
+ class?: string;
2110
2176
  rowData: any[];
2111
2177
  columnDefs: ColDef[];
2112
2178
  theme?: string;
@@ -2169,287 +2235,7 @@ groupDefaultExpanded: number;
2169
2235
  pivotPanelShow: "always" | "onlyWhenPivoting" | "never";
2170
2236
  pivotMode: boolean;
2171
2237
  }> | null;
2172
- unmappedGridRef: CreateComponentPublicInstanceWithMixins<Readonly<{
2173
- rowData: any[];
2174
- columnDefs: ColDef[];
2175
- theme?: string;
2176
- pagination?: boolean;
2177
- checkbox?: boolean;
2178
- rowNumbers?: boolean;
2179
- actionButtons?: ActionButton[];
2180
- autoDetectDarkMode?: boolean;
2181
- summaryColumn?: boolean;
2182
- hiddenColumn?: boolean;
2183
- enableGrouping?: boolean;
2184
- enablePivot?: boolean;
2185
- enableExcelExport?: boolean;
2186
- enableTreeData?: boolean;
2187
- getDataPath?: (data: any) => (string | number)[];
2188
- autoGroupColumnDef?: ColDef;
2189
- selectedRows?: any[];
2190
- columnHover?: boolean;
2191
- enableColumnsToolPanel?: boolean;
2192
- statusBar?: boolean;
2193
- compactFooter?: boolean;
2194
- rowGroupPanelShow?: "always" | "onlyWhenGrouping" | "never";
2195
- groupDefaultExpanded?: number;
2196
- pivotPanelShow?: "always" | "onlyWhenPivoting" | "never";
2197
- pivotMode?: boolean;
2198
- }> & Readonly<{
2199
- onRowClicked?: ((event: RowClickedEvent<any, any>) => any) | undefined;
2200
- onRowDoubleClicked?: ((event: RowDoubleClickedEvent<any, any>) => any) | undefined;
2201
- onCellClicked?: ((event: CellClickedEvent<any, any, any>) => any) | undefined;
2202
- onSelectionChanged?: ((event: SelectionChangedEvent<any, any>) => any) | undefined;
2203
- onCellValueChanged?: ((event: CellValueChangedEvent<any, any, any>) => any) | undefined;
2204
- onGridReady?: ((event: GridReadyEvent<any, any>) => any) | undefined;
2205
- "onUpdate:selectedRows"?: ((rows: any[]) => any) | undefined;
2206
- }>, {
2207
- gridApi: Ref<any, any>;
2208
- gridColumnApi: Ref<any, any>;
2209
- exportToExcel: () => void;
2210
- }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2211
- rowClicked: (event: RowClickedEvent<any, any>) => any;
2212
- rowDoubleClicked: (event: RowDoubleClickedEvent<any, any>) => any;
2213
- cellClicked: (event: CellClickedEvent<any, any, any>) => any;
2214
- selectionChanged: (event: SelectionChangedEvent<any, any>) => any;
2215
- cellValueChanged: (event: CellValueChangedEvent<any, any, any>) => any;
2216
- gridReady: (event: GridReadyEvent<any, any>) => any;
2217
- "update:selectedRows": (rows: any[]) => any;
2218
- }, PublicProps, {
2219
- theme: string;
2220
- pagination: boolean;
2221
- checkbox: boolean;
2222
- rowNumbers: boolean;
2223
- actionButtons: ActionButton[];
2224
- autoDetectDarkMode: boolean;
2225
- summaryColumn: boolean;
2226
- hiddenColumn: boolean;
2227
- enableGrouping: boolean;
2228
- enablePivot: boolean;
2229
- enableExcelExport: boolean;
2230
- enableTreeData: boolean;
2231
- getDataPath: (data: any) => (string | number)[];
2232
- autoGroupColumnDef: ColDef;
2233
- selectedRows: any[];
2234
- columnHover: boolean;
2235
- enableColumnsToolPanel: boolean;
2236
- statusBar: boolean;
2237
- compactFooter: boolean;
2238
- rowGroupPanelShow: "always" | "onlyWhenGrouping" | "never";
2239
- groupDefaultExpanded: number;
2240
- pivotPanelShow: "always" | "onlyWhenPivoting" | "never";
2241
- pivotMode: boolean;
2242
- }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {}, HTMLDivElement, ComponentProvideOptions, {
2243
- P: {};
2244
- B: {};
2245
- D: {};
2246
- C: {};
2247
- M: {};
2248
- Defaults: {};
2249
- }, Readonly<{
2250
- rowData: any[];
2251
- columnDefs: ColDef[];
2252
- theme?: string;
2253
- pagination?: boolean;
2254
- checkbox?: boolean;
2255
- rowNumbers?: boolean;
2256
- actionButtons?: ActionButton[];
2257
- autoDetectDarkMode?: boolean;
2258
- summaryColumn?: boolean;
2259
- hiddenColumn?: boolean;
2260
- enableGrouping?: boolean;
2261
- enablePivot?: boolean;
2262
- enableExcelExport?: boolean;
2263
- enableTreeData?: boolean;
2264
- getDataPath?: (data: any) => (string | number)[];
2265
- autoGroupColumnDef?: ColDef;
2266
- selectedRows?: any[];
2267
- columnHover?: boolean;
2268
- enableColumnsToolPanel?: boolean;
2269
- statusBar?: boolean;
2270
- compactFooter?: boolean;
2271
- rowGroupPanelShow?: "always" | "onlyWhenGrouping" | "never";
2272
- groupDefaultExpanded?: number;
2273
- pivotPanelShow?: "always" | "onlyWhenPivoting" | "never";
2274
- pivotMode?: boolean;
2275
- }> & Readonly<{
2276
- onRowClicked?: ((event: RowClickedEvent<any, any>) => any) | undefined;
2277
- onRowDoubleClicked?: ((event: RowDoubleClickedEvent<any, any>) => any) | undefined;
2278
- onCellClicked?: ((event: CellClickedEvent<any, any, any>) => any) | undefined;
2279
- onSelectionChanged?: ((event: SelectionChangedEvent<any, any>) => any) | undefined;
2280
- onCellValueChanged?: ((event: CellValueChangedEvent<any, any, any>) => any) | undefined;
2281
- onGridReady?: ((event: GridReadyEvent<any, any>) => any) | undefined;
2282
- "onUpdate:selectedRows"?: ((rows: any[]) => any) | undefined;
2283
- }>, {
2284
- gridApi: Ref<any, any>;
2285
- gridColumnApi: Ref<any, any>;
2286
- exportToExcel: () => void;
2287
- }, {}, {}, {}, {
2288
- theme: string;
2289
- pagination: boolean;
2290
- checkbox: boolean;
2291
- rowNumbers: boolean;
2292
- actionButtons: ActionButton[];
2293
- autoDetectDarkMode: boolean;
2294
- summaryColumn: boolean;
2295
- hiddenColumn: boolean;
2296
- enableGrouping: boolean;
2297
- enablePivot: boolean;
2298
- enableExcelExport: boolean;
2299
- enableTreeData: boolean;
2300
- getDataPath: (data: any) => (string | number)[];
2301
- autoGroupColumnDef: ColDef;
2302
- selectedRows: any[];
2303
- columnHover: boolean;
2304
- enableColumnsToolPanel: boolean;
2305
- statusBar: boolean;
2306
- compactFooter: boolean;
2307
- rowGroupPanelShow: "always" | "onlyWhenGrouping" | "never";
2308
- groupDefaultExpanded: number;
2309
- pivotPanelShow: "always" | "onlyWhenPivoting" | "never";
2310
- pivotMode: boolean;
2311
- }> | null;
2312
- mappedGridRef: CreateComponentPublicInstanceWithMixins<Readonly<{
2313
- rowData: any[];
2314
- columnDefs: ColDef[];
2315
- theme?: string;
2316
- pagination?: boolean;
2317
- checkbox?: boolean;
2318
- rowNumbers?: boolean;
2319
- actionButtons?: ActionButton[];
2320
- autoDetectDarkMode?: boolean;
2321
- summaryColumn?: boolean;
2322
- hiddenColumn?: boolean;
2323
- enableGrouping?: boolean;
2324
- enablePivot?: boolean;
2325
- enableExcelExport?: boolean;
2326
- enableTreeData?: boolean;
2327
- getDataPath?: (data: any) => (string | number)[];
2328
- autoGroupColumnDef?: ColDef;
2329
- selectedRows?: any[];
2330
- columnHover?: boolean;
2331
- enableColumnsToolPanel?: boolean;
2332
- statusBar?: boolean;
2333
- compactFooter?: boolean;
2334
- rowGroupPanelShow?: "always" | "onlyWhenGrouping" | "never";
2335
- groupDefaultExpanded?: number;
2336
- pivotPanelShow?: "always" | "onlyWhenPivoting" | "never";
2337
- pivotMode?: boolean;
2338
- }> & Readonly<{
2339
- onRowClicked?: ((event: RowClickedEvent<any, any>) => any) | undefined;
2340
- onRowDoubleClicked?: ((event: RowDoubleClickedEvent<any, any>) => any) | undefined;
2341
- onCellClicked?: ((event: CellClickedEvent<any, any, any>) => any) | undefined;
2342
- onSelectionChanged?: ((event: SelectionChangedEvent<any, any>) => any) | undefined;
2343
- onCellValueChanged?: ((event: CellValueChangedEvent<any, any, any>) => any) | undefined;
2344
- onGridReady?: ((event: GridReadyEvent<any, any>) => any) | undefined;
2345
- "onUpdate:selectedRows"?: ((rows: any[]) => any) | undefined;
2346
- }>, {
2347
- gridApi: Ref<any, any>;
2348
- gridColumnApi: Ref<any, any>;
2349
- exportToExcel: () => void;
2350
- }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2351
- rowClicked: (event: RowClickedEvent<any, any>) => any;
2352
- rowDoubleClicked: (event: RowDoubleClickedEvent<any, any>) => any;
2353
- cellClicked: (event: CellClickedEvent<any, any, any>) => any;
2354
- selectionChanged: (event: SelectionChangedEvent<any, any>) => any;
2355
- cellValueChanged: (event: CellValueChangedEvent<any, any, any>) => any;
2356
- gridReady: (event: GridReadyEvent<any, any>) => any;
2357
- "update:selectedRows": (rows: any[]) => any;
2358
- }, PublicProps, {
2359
- theme: string;
2360
- pagination: boolean;
2361
- checkbox: boolean;
2362
- rowNumbers: boolean;
2363
- actionButtons: ActionButton[];
2364
- autoDetectDarkMode: boolean;
2365
- summaryColumn: boolean;
2366
- hiddenColumn: boolean;
2367
- enableGrouping: boolean;
2368
- enablePivot: boolean;
2369
- enableExcelExport: boolean;
2370
- enableTreeData: boolean;
2371
- getDataPath: (data: any) => (string | number)[];
2372
- autoGroupColumnDef: ColDef;
2373
- selectedRows: any[];
2374
- columnHover: boolean;
2375
- enableColumnsToolPanel: boolean;
2376
- statusBar: boolean;
2377
- compactFooter: boolean;
2378
- rowGroupPanelShow: "always" | "onlyWhenGrouping" | "never";
2379
- groupDefaultExpanded: number;
2380
- pivotPanelShow: "always" | "onlyWhenPivoting" | "never";
2381
- pivotMode: boolean;
2382
- }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {}, HTMLDivElement, ComponentProvideOptions, {
2383
- P: {};
2384
- B: {};
2385
- D: {};
2386
- C: {};
2387
- M: {};
2388
- Defaults: {};
2389
- }, Readonly<{
2390
- rowData: any[];
2391
- columnDefs: ColDef[];
2392
- theme?: string;
2393
- pagination?: boolean;
2394
- checkbox?: boolean;
2395
- rowNumbers?: boolean;
2396
- actionButtons?: ActionButton[];
2397
- autoDetectDarkMode?: boolean;
2398
- summaryColumn?: boolean;
2399
- hiddenColumn?: boolean;
2400
- enableGrouping?: boolean;
2401
- enablePivot?: boolean;
2402
- enableExcelExport?: boolean;
2403
- enableTreeData?: boolean;
2404
- getDataPath?: (data: any) => (string | number)[];
2405
- autoGroupColumnDef?: ColDef;
2406
- selectedRows?: any[];
2407
- columnHover?: boolean;
2408
- enableColumnsToolPanel?: boolean;
2409
- statusBar?: boolean;
2410
- compactFooter?: boolean;
2411
- rowGroupPanelShow?: "always" | "onlyWhenGrouping" | "never";
2412
- groupDefaultExpanded?: number;
2413
- pivotPanelShow?: "always" | "onlyWhenPivoting" | "never";
2414
- pivotMode?: boolean;
2415
- }> & Readonly<{
2416
- onRowClicked?: ((event: RowClickedEvent<any, any>) => any) | undefined;
2417
- onRowDoubleClicked?: ((event: RowDoubleClickedEvent<any, any>) => any) | undefined;
2418
- onCellClicked?: ((event: CellClickedEvent<any, any, any>) => any) | undefined;
2419
- onSelectionChanged?: ((event: SelectionChangedEvent<any, any>) => any) | undefined;
2420
- onCellValueChanged?: ((event: CellValueChangedEvent<any, any, any>) => any) | undefined;
2421
- onGridReady?: ((event: GridReadyEvent<any, any>) => any) | undefined;
2422
- "onUpdate:selectedRows"?: ((rows: any[]) => any) | undefined;
2423
- }>, {
2424
- gridApi: Ref<any, any>;
2425
- gridColumnApi: Ref<any, any>;
2426
- exportToExcel: () => void;
2427
- }, {}, {}, {}, {
2428
- theme: string;
2429
- pagination: boolean;
2430
- checkbox: boolean;
2431
- rowNumbers: boolean;
2432
- actionButtons: ActionButton[];
2433
- autoDetectDarkMode: boolean;
2434
- summaryColumn: boolean;
2435
- hiddenColumn: boolean;
2436
- enableGrouping: boolean;
2437
- enablePivot: boolean;
2438
- enableExcelExport: boolean;
2439
- enableTreeData: boolean;
2440
- getDataPath: (data: any) => (string | number)[];
2441
- autoGroupColumnDef: ColDef;
2442
- selectedRows: any[];
2443
- columnHover: boolean;
2444
- enableColumnsToolPanel: boolean;
2445
- statusBar: boolean;
2446
- compactFooter: boolean;
2447
- rowGroupPanelShow: "always" | "onlyWhenGrouping" | "never";
2448
- groupDefaultExpanded: number;
2449
- pivotPanelShow: "always" | "onlyWhenPivoting" | "never";
2450
- pivotMode: boolean;
2451
- }> | null;
2452
- }, HTMLDivElement>;
2238
+ }, any>;
2453
2239
 
2454
2240
  /** 필터 설정 타입 */
2455
2241
  declare interface FilterDisplayItem {
@@ -2654,7 +2440,7 @@ onSubmit?: ((...args: any[]) => any) | undefined;
2654
2440
  onChange?: ((...args: any[]) => any) | undefined;
2655
2441
  }>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLFormElement>;
2656
2442
 
2657
- export declare const JDynamicTabs: __VLS_WithTemplateSlots_17<typeof __VLS_component_17, __VLS_TemplateResult_17["slots"]>;
2443
+ export declare const JDynamicTabs: __VLS_WithTemplateSlots_18<typeof __VLS_component_18, __VLS_TemplateResult_18["slots"]>;
2658
2444
 
2659
2445
  /**
2660
2446
  * JDynamicTabs Props 인터페이스 (organisms)
@@ -2670,9 +2456,9 @@ declare interface JDynamicTabsProps {
2670
2456
  /** 탭이 없을 때 표시할 메시지 (Message to show when no tabs) */
2671
2457
  emptyMessage?: string;
2672
2458
  /** 루트 컨테이너 추가 클래스 (Additional class for root container) */
2673
- className?: string;
2459
+ class?: string;
2674
2460
  /** 콘텐츠 영역 추가 클래스 (Additional class for content area) */
2675
- contentClassName?: string;
2461
+ contentClass?: string;
2676
2462
  /** 스타일 타입 */
2677
2463
  styletype?: 'default' | 'minimal';
2678
2464
  }
@@ -2693,9 +2479,28 @@ height: string | number;
2693
2479
  readonly: boolean;
2694
2480
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
2695
2481
 
2696
- export declare const JFilterBar: __VLS_WithTemplateSlots_20<typeof __VLS_component_20, __VLS_TemplateResult_20["slots"]>;
2482
+ export declare const JEmptyState: __VLS_WithTemplateSlots_17<typeof __VLS_component_17, __VLS_TemplateResult_17["slots"]>;
2483
+
2484
+ declare interface JEmptyStateProps {
2485
+ /** 아이콘 이름 */
2486
+ icon?: string;
2487
+ /** 제목 */
2488
+ title?: string;
2489
+ /** 설명 */
2490
+ description?: string;
2491
+ /** 액션 버튼 텍스트 */
2492
+ actionText?: string;
2493
+ /** variant */
2494
+ variant?: 'default' | 'simple';
2495
+ /** 추가 CSS 클래스 */
2496
+ class?: string;
2497
+ }
2498
+
2499
+ export declare const JFilterBar: __VLS_WithTemplateSlots_21<typeof __VLS_component_21, __VLS_TemplateResult_21["slots"]>;
2697
2500
 
2698
2501
  declare interface JFilterBarProps {
2502
+ /** 추가 클래스 (외부 커스터마이징용) */
2503
+ class?: string;
2699
2504
  /** 필터바 타이틀 */
2700
2505
  title?: string;
2701
2506
  /** 필터 접힘 상태 (v-model 지원) */
@@ -2736,7 +2541,7 @@ labelWidth: string;
2736
2541
  radioDirection: "horizontal" | "vertical";
2737
2542
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
2738
2543
 
2739
- export declare const JFormModal: __VLS_WithTemplateSlots_19<typeof __VLS_component_19, __VLS_TemplateResult_19["slots"]>;
2544
+ export declare const JFormModal: __VLS_WithTemplateSlots_20<typeof __VLS_component_20, __VLS_TemplateResult_20["slots"]>;
2740
2545
 
2741
2546
  declare interface JFormModalProps {
2742
2547
  open: boolean;
@@ -2816,7 +2621,7 @@ styletype: StyleType_21;
2816
2621
  groupedOptions: GroupedOption[];
2817
2622
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
2818
2623
 
2819
- export declare const JHeader: __VLS_WithTemplateSlots_21<typeof __VLS_component_21, __VLS_TemplateResult_21["slots"]>;
2624
+ export declare const JHeader: __VLS_WithTemplateSlots_22<typeof __VLS_component_22, __VLS_TemplateResult_22["slots"]>;
2820
2625
 
2821
2626
  export declare const JIcon: DefineComponent<__VLS_Props_20, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_20> & Readonly<{}>, {
2822
2627
  size: SizeType_3;
@@ -2846,15 +2651,15 @@ export declare const JKbd: __VLS_WithTemplateSlots_5<typeof __VLS_component_5, _
2846
2651
 
2847
2652
  export declare const JLabel: __VLS_WithTemplateSlots_7<typeof __VLS_component_7, __VLS_TemplateResult_7["slots"]>;
2848
2653
 
2849
- export declare const JLayout: __VLS_WithTemplateSlots_23<typeof __VLS_component_23, __VLS_TemplateResult_23["slots"]>;
2654
+ export declare const JLayout: __VLS_WithTemplateSlots_24<typeof __VLS_component_24, __VLS_TemplateResult_24["slots"]>;
2850
2655
 
2851
2656
  export { JLayoutAdvanced }
2852
2657
 
2853
- export declare const JLayoutSimple: __VLS_WithTemplateSlots_24<typeof __VLS_component_24, __VLS_TemplateResult_24["slots"]>;
2658
+ export declare const JLayoutSimple: __VLS_WithTemplateSlots_25<typeof __VLS_component_25, __VLS_TemplateResult_25["slots"]>;
2854
2659
 
2855
2660
  export declare const JLink: __VLS_WithTemplateSlots_3<typeof __VLS_component_3, __VLS_TemplateResult_3["slots"]>;
2856
2661
 
2857
- export declare const JModal: __VLS_WithTemplateSlots_18<typeof __VLS_component_18, __VLS_TemplateResult_18["slots"]>;
2662
+ export declare const JModal: __VLS_WithTemplateSlots_19<typeof __VLS_component_19, __VLS_TemplateResult_19["slots"]>;
2858
2663
 
2859
2664
  declare interface JModalProps {
2860
2665
  open: boolean;
@@ -2877,7 +2682,7 @@ declare interface JModalProps {
2877
2682
  disabled?: boolean;
2878
2683
  }
2879
2684
 
2880
- export declare const JPageContainer: __VLS_WithTemplateSlots_22<typeof __VLS_component_22, __VLS_TemplateResult_22["slots"]>;
2685
+ export declare const JPageContainer: __VLS_WithTemplateSlots_23<typeof __VLS_component_23, __VLS_TemplateResult_23["slots"]>;
2881
2686
 
2882
2687
  export declare const JPopover: __VLS_WithTemplateSlots_8<typeof __VLS_component_8, __VLS_TemplateResult_8["slots"]>;
2883
2688
 
@@ -3051,84 +2856,440 @@ declare interface JSearchPanelProps {
3051
2856
  collapsible?: boolean;
3052
2857
  }
3053
2858
 
3054
- export declare const JSidebarAdvanced: DefineComponent<__VLS_Props_36, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3055
- menuClick: (event: MenuClickEvent) => any;
3056
- favoriteChange: (menuKey: string | number | undefined, isFavorite: boolean) => any;
3057
- }, string, PublicProps, Readonly<__VLS_Props_36> & Readonly<{
3058
- onMenuClick?: ((event: MenuClickEvent) => any) | undefined;
3059
- onFavoriteChange?: ((menuKey: string | number | undefined, isFavorite: boolean) => any) | undefined;
3060
- }>, {
3061
- width: string;
3062
- styletype: StyleType_26;
3063
- isVisible: boolean;
3064
- permissions: MenuPermission[];
3065
- favorites: (number | string)[];
3066
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
3067
-
3068
- export declare const JSidebarSimple: DefineComponent<__VLS_Props_35, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3069
- menuClick: (event: MenuClickEvent) => any;
3070
- }, string, PublicProps, Readonly<__VLS_Props_35> & Readonly<{
3071
- onMenuClick?: ((event: MenuClickEvent) => any) | undefined;
3072
- }>, {
3073
- width: string;
3074
- styletype: StyleType_25;
3075
- isVisible: boolean;
3076
- permissions: MenuPermission[];
3077
- searchQuery: string;
3078
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
3079
-
3080
- export declare const JSpinner: DefineComponent<__VLS_Props_16, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_16> & Readonly<{}>, {
3081
- label: string;
3082
- size: "xs" | "sm" | "md" | "lg";
3083
- styletype: StyleType_14;
3084
- thickness: number;
3085
- labelPosition: LabelPosition;
2859
+ export declare const JSectionTitle: DefineComponent<JSectionTitleProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<JSectionTitleProps> & Readonly<{}>, {
2860
+ variant: SectionTitleVariant;
3086
2861
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
3087
2862
 
3088
- export declare const JSplitter: __VLS_WithTemplateSlots_9<typeof __VLS_component_9, __VLS_TemplateResult_9["slots"]>;
3089
-
3090
- export declare const JSwitch: DefineComponent<__VLS_Props_8, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3091
- "update:modelValue": (value: string) => any;
3092
- change: (value: string) => any;
3093
- }, string, PublicProps, Readonly<__VLS_Props_8> & Readonly<{
3094
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
3095
- onChange?: ((value: string) => any) | undefined;
3096
- }>, {
3097
- disabled: boolean;
3098
- modelValue: string;
3099
- styletype: StyleType_8;
3100
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
3101
-
3102
- export declare const JTabs: __VLS_WithTemplateSlots_10<typeof __VLS_component_10, __VLS_TemplateResult_10["slots"]>;
3103
-
3104
- /**
3105
- * JTabs Props 인터페이스 (molecules)
3106
- * JTabs Props interface for basic static tabs
3107
- */
3108
- declare interface JTabsProps {
3109
- /** 탭 아이템 배열 (Array of tab items) */
3110
- tabs: DynamicTab[];
3111
- /** 현재 활성화된 탭 ID (Current active tab ID) */
3112
- activeTabId?: string;
3113
- /** 루트 컨테이너 추가 클래스 (Additional class for root container) */
3114
- className?: string;
3115
- /** 탭 리스트 추가 클래스 (Additional class for tabs list) */
3116
- listClassName?: string;
3117
- /** 스타일 타입 */
3118
- styletype?: 'default' | 'minimal';
2863
+ declare interface JSectionTitleProps {
2864
+ /** 섹션 제목 */
2865
+ title: string;
2866
+ /** 서브 타이틀 (선택) */
2867
+ subtitle?: string;
2868
+ /** 스타일 variant */
2869
+ variant?: SectionTitleVariant;
2870
+ /** 아이콘 이름 (선택) */
2871
+ icon?: string;
2872
+ /** 추가 CSS 클래스 */
2873
+ class?: string;
3119
2874
  }
3120
2875
 
3121
- export declare const JTextarea: DefineComponent<__VLS_Props_3, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3122
- "update:modelValue": (value: string) => any;
3123
- change: (value: string) => any;
3124
- focus: (event: FocusEvent) => any;
3125
- blur: (event: FocusEvent) => any;
3126
- }, string, PublicProps, Readonly<__VLS_Props_3> & Readonly<{
3127
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
3128
- onChange?: ((value: string) => any) | undefined;
3129
- onFocus?: ((event: FocusEvent) => any) | undefined;
3130
- onBlur?: ((event: FocusEvent) => any) | undefined;
3131
- }>, {
2876
+ export declare const JShuttle: DefineComponent<JShuttleProps, {
2877
+ leftGridRef: Ref<any, any>;
2878
+ rightGridRef: Ref<any, any>;
2879
+ }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2880
+ move: (args_0: {
2881
+ items: ShuttleItem[];
2882
+ direction: "toRight" | "toLeft";
2883
+ }) => any;
2884
+ "update:leftData": (data: ShuttleItem[]) => any;
2885
+ "update:rightData": (data: ShuttleItem[]) => any;
2886
+ }, string, PublicProps, Readonly<JShuttleProps> & Readonly<{
2887
+ onMove?: ((args_0: {
2888
+ items: ShuttleItem[];
2889
+ direction: "toRight" | "toLeft";
2890
+ }) => any) | undefined;
2891
+ "onUpdate:leftData"?: ((data: ShuttleItem[]) => any) | undefined;
2892
+ "onUpdate:rightData"?: ((data: ShuttleItem[]) => any) | undefined;
2893
+ }>, {
2894
+ leftTitle: string;
2895
+ rightTitle: string;
2896
+ searchable: boolean;
2897
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {
2898
+ leftGridRef: CreateComponentPublicInstanceWithMixins<Readonly<{
2899
+ class?: string;
2900
+ rowData: any[];
2901
+ columnDefs: ColDef[];
2902
+ theme?: string;
2903
+ pagination?: boolean;
2904
+ checkbox?: boolean;
2905
+ rowNumbers?: boolean;
2906
+ actionButtons?: ActionButton[];
2907
+ autoDetectDarkMode?: boolean;
2908
+ summaryColumn?: boolean;
2909
+ hiddenColumn?: boolean;
2910
+ enableGrouping?: boolean;
2911
+ enablePivot?: boolean;
2912
+ enableExcelExport?: boolean;
2913
+ enableTreeData?: boolean;
2914
+ getDataPath?: (data: any) => (string | number)[];
2915
+ autoGroupColumnDef?: ColDef;
2916
+ selectedRows?: any[];
2917
+ columnHover?: boolean;
2918
+ enableColumnsToolPanel?: boolean;
2919
+ statusBar?: boolean;
2920
+ compactFooter?: boolean;
2921
+ rowGroupPanelShow?: "always" | "onlyWhenGrouping" | "never";
2922
+ groupDefaultExpanded?: number;
2923
+ pivotPanelShow?: "always" | "onlyWhenPivoting" | "never";
2924
+ pivotMode?: boolean;
2925
+ }> & Readonly<{
2926
+ onRowClicked?: ((event: RowClickedEvent<any, any>) => any) | undefined;
2927
+ onRowDoubleClicked?: ((event: RowDoubleClickedEvent<any, any>) => any) | undefined;
2928
+ onCellClicked?: ((event: CellClickedEvent<any, any, any>) => any) | undefined;
2929
+ onSelectionChanged?: ((event: SelectionChangedEvent<any, any>) => any) | undefined;
2930
+ onCellValueChanged?: ((event: CellValueChangedEvent<any, any, any>) => any) | undefined;
2931
+ onGridReady?: ((event: GridReadyEvent<any, any>) => any) | undefined;
2932
+ "onUpdate:selectedRows"?: ((rows: any[]) => any) | undefined;
2933
+ }>, {
2934
+ gridApi: Ref<any, any>;
2935
+ gridColumnApi: Ref<any, any>;
2936
+ exportToExcel: () => void;
2937
+ }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2938
+ rowClicked: (event: RowClickedEvent<any, any>) => any;
2939
+ rowDoubleClicked: (event: RowDoubleClickedEvent<any, any>) => any;
2940
+ cellClicked: (event: CellClickedEvent<any, any, any>) => any;
2941
+ selectionChanged: (event: SelectionChangedEvent<any, any>) => any;
2942
+ cellValueChanged: (event: CellValueChangedEvent<any, any, any>) => any;
2943
+ gridReady: (event: GridReadyEvent<any, any>) => any;
2944
+ "update:selectedRows": (rows: any[]) => any;
2945
+ }, PublicProps, {
2946
+ theme: string;
2947
+ pagination: boolean;
2948
+ checkbox: boolean;
2949
+ rowNumbers: boolean;
2950
+ actionButtons: ActionButton[];
2951
+ autoDetectDarkMode: boolean;
2952
+ summaryColumn: boolean;
2953
+ hiddenColumn: boolean;
2954
+ enableGrouping: boolean;
2955
+ enablePivot: boolean;
2956
+ enableExcelExport: boolean;
2957
+ enableTreeData: boolean;
2958
+ getDataPath: (data: any) => (string | number)[];
2959
+ autoGroupColumnDef: ColDef;
2960
+ selectedRows: any[];
2961
+ columnHover: boolean;
2962
+ enableColumnsToolPanel: boolean;
2963
+ statusBar: boolean;
2964
+ compactFooter: boolean;
2965
+ rowGroupPanelShow: "always" | "onlyWhenGrouping" | "never";
2966
+ groupDefaultExpanded: number;
2967
+ pivotPanelShow: "always" | "onlyWhenPivoting" | "never";
2968
+ pivotMode: boolean;
2969
+ }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {}, HTMLDivElement, ComponentProvideOptions, {
2970
+ P: {};
2971
+ B: {};
2972
+ D: {};
2973
+ C: {};
2974
+ M: {};
2975
+ Defaults: {};
2976
+ }, Readonly<{
2977
+ class?: string;
2978
+ rowData: any[];
2979
+ columnDefs: ColDef[];
2980
+ theme?: string;
2981
+ pagination?: boolean;
2982
+ checkbox?: boolean;
2983
+ rowNumbers?: boolean;
2984
+ actionButtons?: ActionButton[];
2985
+ autoDetectDarkMode?: boolean;
2986
+ summaryColumn?: boolean;
2987
+ hiddenColumn?: boolean;
2988
+ enableGrouping?: boolean;
2989
+ enablePivot?: boolean;
2990
+ enableExcelExport?: boolean;
2991
+ enableTreeData?: boolean;
2992
+ getDataPath?: (data: any) => (string | number)[];
2993
+ autoGroupColumnDef?: ColDef;
2994
+ selectedRows?: any[];
2995
+ columnHover?: boolean;
2996
+ enableColumnsToolPanel?: boolean;
2997
+ statusBar?: boolean;
2998
+ compactFooter?: boolean;
2999
+ rowGroupPanelShow?: "always" | "onlyWhenGrouping" | "never";
3000
+ groupDefaultExpanded?: number;
3001
+ pivotPanelShow?: "always" | "onlyWhenPivoting" | "never";
3002
+ pivotMode?: boolean;
3003
+ }> & Readonly<{
3004
+ onRowClicked?: ((event: RowClickedEvent<any, any>) => any) | undefined;
3005
+ onRowDoubleClicked?: ((event: RowDoubleClickedEvent<any, any>) => any) | undefined;
3006
+ onCellClicked?: ((event: CellClickedEvent<any, any, any>) => any) | undefined;
3007
+ onSelectionChanged?: ((event: SelectionChangedEvent<any, any>) => any) | undefined;
3008
+ onCellValueChanged?: ((event: CellValueChangedEvent<any, any, any>) => any) | undefined;
3009
+ onGridReady?: ((event: GridReadyEvent<any, any>) => any) | undefined;
3010
+ "onUpdate:selectedRows"?: ((rows: any[]) => any) | undefined;
3011
+ }>, {
3012
+ gridApi: Ref<any, any>;
3013
+ gridColumnApi: Ref<any, any>;
3014
+ exportToExcel: () => void;
3015
+ }, {}, {}, {}, {
3016
+ theme: string;
3017
+ pagination: boolean;
3018
+ checkbox: boolean;
3019
+ rowNumbers: boolean;
3020
+ actionButtons: ActionButton[];
3021
+ autoDetectDarkMode: boolean;
3022
+ summaryColumn: boolean;
3023
+ hiddenColumn: boolean;
3024
+ enableGrouping: boolean;
3025
+ enablePivot: boolean;
3026
+ enableExcelExport: boolean;
3027
+ enableTreeData: boolean;
3028
+ getDataPath: (data: any) => (string | number)[];
3029
+ autoGroupColumnDef: ColDef;
3030
+ selectedRows: any[];
3031
+ columnHover: boolean;
3032
+ enableColumnsToolPanel: boolean;
3033
+ statusBar: boolean;
3034
+ compactFooter: boolean;
3035
+ rowGroupPanelShow: "always" | "onlyWhenGrouping" | "never";
3036
+ groupDefaultExpanded: number;
3037
+ pivotPanelShow: "always" | "onlyWhenPivoting" | "never";
3038
+ pivotMode: boolean;
3039
+ }> | null;
3040
+ rightGridRef: CreateComponentPublicInstanceWithMixins<Readonly<{
3041
+ class?: string;
3042
+ rowData: any[];
3043
+ columnDefs: ColDef[];
3044
+ theme?: string;
3045
+ pagination?: boolean;
3046
+ checkbox?: boolean;
3047
+ rowNumbers?: boolean;
3048
+ actionButtons?: ActionButton[];
3049
+ autoDetectDarkMode?: boolean;
3050
+ summaryColumn?: boolean;
3051
+ hiddenColumn?: boolean;
3052
+ enableGrouping?: boolean;
3053
+ enablePivot?: boolean;
3054
+ enableExcelExport?: boolean;
3055
+ enableTreeData?: boolean;
3056
+ getDataPath?: (data: any) => (string | number)[];
3057
+ autoGroupColumnDef?: ColDef;
3058
+ selectedRows?: any[];
3059
+ columnHover?: boolean;
3060
+ enableColumnsToolPanel?: boolean;
3061
+ statusBar?: boolean;
3062
+ compactFooter?: boolean;
3063
+ rowGroupPanelShow?: "always" | "onlyWhenGrouping" | "never";
3064
+ groupDefaultExpanded?: number;
3065
+ pivotPanelShow?: "always" | "onlyWhenPivoting" | "never";
3066
+ pivotMode?: boolean;
3067
+ }> & Readonly<{
3068
+ onRowClicked?: ((event: RowClickedEvent<any, any>) => any) | undefined;
3069
+ onRowDoubleClicked?: ((event: RowDoubleClickedEvent<any, any>) => any) | undefined;
3070
+ onCellClicked?: ((event: CellClickedEvent<any, any, any>) => any) | undefined;
3071
+ onSelectionChanged?: ((event: SelectionChangedEvent<any, any>) => any) | undefined;
3072
+ onCellValueChanged?: ((event: CellValueChangedEvent<any, any, any>) => any) | undefined;
3073
+ onGridReady?: ((event: GridReadyEvent<any, any>) => any) | undefined;
3074
+ "onUpdate:selectedRows"?: ((rows: any[]) => any) | undefined;
3075
+ }>, {
3076
+ gridApi: Ref<any, any>;
3077
+ gridColumnApi: Ref<any, any>;
3078
+ exportToExcel: () => void;
3079
+ }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3080
+ rowClicked: (event: RowClickedEvent<any, any>) => any;
3081
+ rowDoubleClicked: (event: RowDoubleClickedEvent<any, any>) => any;
3082
+ cellClicked: (event: CellClickedEvent<any, any, any>) => any;
3083
+ selectionChanged: (event: SelectionChangedEvent<any, any>) => any;
3084
+ cellValueChanged: (event: CellValueChangedEvent<any, any, any>) => any;
3085
+ gridReady: (event: GridReadyEvent<any, any>) => any;
3086
+ "update:selectedRows": (rows: any[]) => any;
3087
+ }, PublicProps, {
3088
+ theme: string;
3089
+ pagination: boolean;
3090
+ checkbox: boolean;
3091
+ rowNumbers: boolean;
3092
+ actionButtons: ActionButton[];
3093
+ autoDetectDarkMode: boolean;
3094
+ summaryColumn: boolean;
3095
+ hiddenColumn: boolean;
3096
+ enableGrouping: boolean;
3097
+ enablePivot: boolean;
3098
+ enableExcelExport: boolean;
3099
+ enableTreeData: boolean;
3100
+ getDataPath: (data: any) => (string | number)[];
3101
+ autoGroupColumnDef: ColDef;
3102
+ selectedRows: any[];
3103
+ columnHover: boolean;
3104
+ enableColumnsToolPanel: boolean;
3105
+ statusBar: boolean;
3106
+ compactFooter: boolean;
3107
+ rowGroupPanelShow: "always" | "onlyWhenGrouping" | "never";
3108
+ groupDefaultExpanded: number;
3109
+ pivotPanelShow: "always" | "onlyWhenPivoting" | "never";
3110
+ pivotMode: boolean;
3111
+ }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {}, HTMLDivElement, ComponentProvideOptions, {
3112
+ P: {};
3113
+ B: {};
3114
+ D: {};
3115
+ C: {};
3116
+ M: {};
3117
+ Defaults: {};
3118
+ }, Readonly<{
3119
+ class?: string;
3120
+ rowData: any[];
3121
+ columnDefs: ColDef[];
3122
+ theme?: string;
3123
+ pagination?: boolean;
3124
+ checkbox?: boolean;
3125
+ rowNumbers?: boolean;
3126
+ actionButtons?: ActionButton[];
3127
+ autoDetectDarkMode?: boolean;
3128
+ summaryColumn?: boolean;
3129
+ hiddenColumn?: boolean;
3130
+ enableGrouping?: boolean;
3131
+ enablePivot?: boolean;
3132
+ enableExcelExport?: boolean;
3133
+ enableTreeData?: boolean;
3134
+ getDataPath?: (data: any) => (string | number)[];
3135
+ autoGroupColumnDef?: ColDef;
3136
+ selectedRows?: any[];
3137
+ columnHover?: boolean;
3138
+ enableColumnsToolPanel?: boolean;
3139
+ statusBar?: boolean;
3140
+ compactFooter?: boolean;
3141
+ rowGroupPanelShow?: "always" | "onlyWhenGrouping" | "never";
3142
+ groupDefaultExpanded?: number;
3143
+ pivotPanelShow?: "always" | "onlyWhenPivoting" | "never";
3144
+ pivotMode?: boolean;
3145
+ }> & Readonly<{
3146
+ onRowClicked?: ((event: RowClickedEvent<any, any>) => any) | undefined;
3147
+ onRowDoubleClicked?: ((event: RowDoubleClickedEvent<any, any>) => any) | undefined;
3148
+ onCellClicked?: ((event: CellClickedEvent<any, any, any>) => any) | undefined;
3149
+ onSelectionChanged?: ((event: SelectionChangedEvent<any, any>) => any) | undefined;
3150
+ onCellValueChanged?: ((event: CellValueChangedEvent<any, any, any>) => any) | undefined;
3151
+ onGridReady?: ((event: GridReadyEvent<any, any>) => any) | undefined;
3152
+ "onUpdate:selectedRows"?: ((rows: any[]) => any) | undefined;
3153
+ }>, {
3154
+ gridApi: Ref<any, any>;
3155
+ gridColumnApi: Ref<any, any>;
3156
+ exportToExcel: () => void;
3157
+ }, {}, {}, {}, {
3158
+ theme: string;
3159
+ pagination: boolean;
3160
+ checkbox: boolean;
3161
+ rowNumbers: boolean;
3162
+ actionButtons: ActionButton[];
3163
+ autoDetectDarkMode: boolean;
3164
+ summaryColumn: boolean;
3165
+ hiddenColumn: boolean;
3166
+ enableGrouping: boolean;
3167
+ enablePivot: boolean;
3168
+ enableExcelExport: boolean;
3169
+ enableTreeData: boolean;
3170
+ getDataPath: (data: any) => (string | number)[];
3171
+ autoGroupColumnDef: ColDef;
3172
+ selectedRows: any[];
3173
+ columnHover: boolean;
3174
+ enableColumnsToolPanel: boolean;
3175
+ statusBar: boolean;
3176
+ compactFooter: boolean;
3177
+ rowGroupPanelShow: "always" | "onlyWhenGrouping" | "never";
3178
+ groupDefaultExpanded: number;
3179
+ pivotPanelShow: "always" | "onlyWhenPivoting" | "never";
3180
+ pivotMode: boolean;
3181
+ }> | null;
3182
+ }, HTMLDivElement>;
3183
+
3184
+ declare interface JShuttleProps {
3185
+ /** 왼쪽 그리드 제목 */
3186
+ leftTitle?: string;
3187
+ /** 오른쪽 그리드 제목 */
3188
+ rightTitle?: string;
3189
+ /** 왼쪽 그리드 데이터 (Unmapped) */
3190
+ leftData: ShuttleItem[];
3191
+ /** 오른쪽 그리드 데이터 (Mapped) */
3192
+ rightData: ShuttleItem[];
3193
+ /** 컬럼 정의 (양쪽 그리드 공통) */
3194
+ columnDefs: ColDef[];
3195
+ /** 검색 활성화 여부 */
3196
+ searchable?: boolean;
3197
+ /** 추가 CSS 클래스 */
3198
+ class?: string;
3199
+ }
3200
+
3201
+ export declare const JSidebar: DefineComponent<__VLS_Props_35, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3202
+ "update:collapsed": (value: boolean) => any;
3203
+ "menu-click": (item: SidebarMenuItem, event: MouseEvent) => any;
3204
+ }, string, PublicProps, Readonly<__VLS_Props_35> & Readonly<{
3205
+ "onUpdate:collapsed"?: ((value: boolean) => any) | undefined;
3206
+ "onMenu-click"?: ((item: SidebarMenuItem, event: MouseEvent) => any) | undefined;
3207
+ }>, {
3208
+ width: string;
3209
+ collapsed: boolean;
3210
+ collapsedWidth: string;
3211
+ showSearch: boolean;
3212
+ showFavorites: boolean;
3213
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;
3214
+
3215
+ export declare const JSidebarAdvanced: DefineComponent<__VLS_Props_37, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3216
+ menuClick: (event: MenuClickEvent) => any;
3217
+ favoriteChange: (menuKey: string | number | undefined, isFavorite: boolean) => any;
3218
+ }, string, PublicProps, Readonly<__VLS_Props_37> & Readonly<{
3219
+ onMenuClick?: ((event: MenuClickEvent) => any) | undefined;
3220
+ onFavoriteChange?: ((menuKey: string | number | undefined, isFavorite: boolean) => any) | undefined;
3221
+ }>, {
3222
+ width: string;
3223
+ styletype: StyleType_26;
3224
+ isVisible: boolean;
3225
+ favorites: (number | string)[];
3226
+ permissions: MenuPermission[];
3227
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
3228
+
3229
+ export declare const JSidebarSimple: DefineComponent<__VLS_Props_36, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3230
+ menuClick: (event: MenuClickEvent) => any;
3231
+ }, string, PublicProps, Readonly<__VLS_Props_36> & Readonly<{
3232
+ onMenuClick?: ((event: MenuClickEvent) => any) | undefined;
3233
+ }>, {
3234
+ width: string;
3235
+ styletype: StyleType_25;
3236
+ isVisible: boolean;
3237
+ searchQuery: string;
3238
+ permissions: MenuPermission[];
3239
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
3240
+
3241
+ export declare const JSpinner: DefineComponent<__VLS_Props_16, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_16> & Readonly<{}>, {
3242
+ label: string;
3243
+ size: "xs" | "sm" | "md" | "lg";
3244
+ styletype: StyleType_14;
3245
+ thickness: number;
3246
+ labelPosition: LabelPosition;
3247
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
3248
+
3249
+ export declare const JSplitter: __VLS_WithTemplateSlots_9<typeof __VLS_component_9, __VLS_TemplateResult_9["slots"]>;
3250
+
3251
+ export declare const JSwitch: DefineComponent<__VLS_Props_8, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3252
+ "update:modelValue": (value: string) => any;
3253
+ change: (value: string) => any;
3254
+ }, string, PublicProps, Readonly<__VLS_Props_8> & Readonly<{
3255
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
3256
+ onChange?: ((value: string) => any) | undefined;
3257
+ }>, {
3258
+ disabled: boolean;
3259
+ modelValue: string;
3260
+ styletype: StyleType_8;
3261
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
3262
+
3263
+ export declare const JTabs: __VLS_WithTemplateSlots_10<typeof __VLS_component_10, __VLS_TemplateResult_10["slots"]>;
3264
+
3265
+ /**
3266
+ * JTabs Props 인터페이스 (molecules)
3267
+ * JTabs Props interface for basic static tabs
3268
+ */
3269
+ declare interface JTabsProps {
3270
+ /** 탭 아이템 배열 (Array of tab items) */
3271
+ tabs: DynamicTab[];
3272
+ /** 현재 활성화된 탭 ID (Current active tab ID) */
3273
+ activeTabId?: string;
3274
+ /** 루트 컨테이너 추가 클래스 (Additional class for root container) */
3275
+ class?: string;
3276
+ /** 탭 리스트 추가 클래스 (Additional class for tabs list) */
3277
+ listClass?: string;
3278
+ /** 스타일 타입 */
3279
+ styletype?: 'default' | 'minimal';
3280
+ }
3281
+
3282
+ export declare const JTextarea: DefineComponent<__VLS_Props_3, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3283
+ "update:modelValue": (value: string) => any;
3284
+ change: (value: string) => any;
3285
+ focus: (event: FocusEvent) => any;
3286
+ blur: (event: FocusEvent) => any;
3287
+ }, string, PublicProps, Readonly<__VLS_Props_3> & Readonly<{
3288
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
3289
+ onChange?: ((value: string) => any) | undefined;
3290
+ onFocus?: ((event: FocusEvent) => any) | undefined;
3291
+ onBlur?: ((event: FocusEvent) => any) | undefined;
3292
+ }>, {
3132
3293
  disabled: boolean;
3133
3294
  placeholder: string;
3134
3295
  readonly: boolean;
@@ -3150,23 +3311,23 @@ closeButton: boolean;
3150
3311
 
3151
3312
  export declare const JTooltip: __VLS_WithTemplateSlots_6<typeof __VLS_component_6, __VLS_TemplateResult_6["slots"]>;
3152
3313
 
3153
- export declare const JTree: DefineComponent<__VLS_Props_38, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3314
+ export declare const JTree: DefineComponent<__VLS_Props_39, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3154
3315
  expandChange: (menuKey: string | number | undefined, expanded: boolean) => any;
3155
3316
  nodeClick: (event: MenuClickEvent) => any;
3156
3317
  "update:expandedKeys": (keys: (string | number)[]) => any;
3157
3318
  "update:activeKey": (key: string | number | null) => any;
3158
- }, string, PublicProps, Readonly<__VLS_Props_38> & Readonly<{
3319
+ }, string, PublicProps, Readonly<__VLS_Props_39> & Readonly<{
3159
3320
  onExpandChange?: ((menuKey: string | number | undefined, expanded: boolean) => any) | undefined;
3160
3321
  onNodeClick?: ((event: MenuClickEvent) => any) | undefined;
3161
3322
  "onUpdate:expandedKeys"?: ((keys: (string | number)[]) => any) | undefined;
3162
3323
  "onUpdate:activeKey"?: ((key: string | number | null) => any) | undefined;
3163
3324
  }>, {
3164
3325
  styletype: StyleType_28;
3326
+ searchQuery: string;
3165
3327
  permissions: MenuPermission[];
3166
3328
  expandedKeys: (number | string)[];
3167
3329
  maxDepth: number;
3168
3330
  activeKey: number | string | null;
3169
- searchQuery: string;
3170
3331
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
3171
3332
 
3172
3333
  declare type LabelPosition = 'right' | 'left' | 'top' | 'bottom';
@@ -3182,9 +3343,9 @@ declare type LanguageType = 'K' | 'E';
3182
3343
  */
3183
3344
  declare interface MenuClickEvent {
3184
3345
  /** 클릭된 메뉴 아이템 */
3185
- menuItem: SidebarMenuItem;
3346
+ menuItem: SidebarMenuItem_2;
3186
3347
  /** 메뉴 경로 (부모 메뉴 포함) */
3187
- path: SidebarMenuItem[];
3348
+ path: SidebarMenuItem_2[];
3188
3349
  /** 이벤트 객체 */
3189
3350
  event: MouseEvent;
3190
3351
  }
@@ -3200,6 +3361,13 @@ declare interface MenuPermission {
3200
3361
  permissionLevel: number;
3201
3362
  }
3202
3363
 
3364
+ /**
3365
+ * JSidebar 타입 정의
3366
+ * JSidebar Type Definitions
3367
+ */
3368
+ /** 메뉴 타입: F=폴더(그룹), L=링크(페이지) */
3369
+ export declare type MenuType = 'F' | 'L';
3370
+
3203
3371
  /**
3204
3372
  * 사이드바 메뉴 관련 타입 정의
3205
3373
  * Sidebar Menu Type Definitions
@@ -3209,7 +3377,7 @@ declare interface MenuPermission {
3209
3377
  * - 'F': Folder (폴더 - 하위 메뉴를 가지는 메뉴)
3210
3378
  * - 'L': Link (링크 - 실제 페이지로 이동하는 메뉴)
3211
3379
  */
3212
- declare type MenuType = 'F' | 'L';
3380
+ declare type MenuType_2 = 'F' | 'L';
3213
3381
 
3214
3382
  export declare type NotificationItem = {
3215
3383
  /** 알림 ID */
@@ -3288,25 +3456,58 @@ declare interface PostcodeData {
3288
3456
 
3289
3457
  declare function reset(): void;
3290
3458
 
3459
+ declare type SectionTitleVariant = 'default' | 'primary' | 'secondary' | 'accent';
3460
+
3291
3461
  declare type Shape = 'circle' | 'square' | 'rounded';
3292
3462
 
3463
+ declare interface ShuttleItem {
3464
+ /** 아이템 고유 ID */
3465
+ id: string | number;
3466
+ /** 아이템 데이터 (AG Grid row data) */
3467
+ [key: string]: any;
3468
+ }
3469
+
3470
+ /**
3471
+ * 사이드바 메뉴 아이템 (DB J_마스터_프로그램 트리 매핑)
3472
+ */
3473
+ export declare interface SidebarMenuItem {
3474
+ /** 프로그램 아이디 */
3475
+ id: string;
3476
+ /** 부모 아이디 */
3477
+ parentId?: string;
3478
+ /** 메뉴 표시 이름 */
3479
+ label: string;
3480
+ /** lucide 아이콘 이름 */
3481
+ icon?: string;
3482
+ /** 라우트 경로 (L 타입만) */
3483
+ path?: string;
3484
+ /** 메뉴 타입: F=폴더(그룹), L=링크(페이지) */
3485
+ menuType: MenuType;
3486
+ /** 정렬 순서 */
3487
+ sortOrder?: number;
3488
+ /** 하위 메뉴 (서버에서 트리로 변환) */
3489
+ children?: SidebarMenuItem[];
3490
+ /** 비활성화 여부 */
3491
+ disabled?: boolean;
3492
+ }
3493
+
3293
3494
  /**
3294
3495
  * 사이드바 메뉴 아이템
3295
3496
  * Sidebar Menu Item
3296
3497
  */
3297
- declare interface SidebarMenuItem {
3498
+ declare interface SidebarMenuItem_2 {
3298
3499
  /** 메뉴 표시 이름 */
3299
3500
  label: string;
3300
3501
  /** 메뉴 아이콘 이름 (lucide-vue-next 아이콘 이름 또는 컴포넌트) */
3301
3502
  icon?: string;
3302
3503
  /** 메뉴 타입 (Folder/Link) */
3303
- menuType?: MenuType;
3504
+ menuType?: MenuType_2;
3304
3505
  /** 메뉴 키 (권한 체크용) */
3305
3506
  menuKey?: number;
3306
3507
  /** 라우팅 경로 (menuType이 'L'일 때 사용) */
3307
3508
  path?: string;
3308
3509
  /** 하위 메뉴 목록 */
3309
- children?: SidebarMenuItem[];
3510
+ children?: SidebarMenuItem_2[];
3310
3511
  /** 비활성화 여부 */
3311
3512
  disabled?: boolean;
3312
3513
  /** 추가 메타데이터 */