@j-solution/components 1.3.0 → 1.4.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 (37) hide show
  1. package/README.md +6 -10
  2. package/USAGE_GUIDE.md +772 -1480
  3. package/assets/jwms-portal-frontend-BEj91L1x.css +1 -0
  4. package/assets/styles/j-components.css +1 -1
  5. package/components/atoms/JEditor.vue.cjs +1 -1
  6. package/components/atoms/JEditor.vue.js +2 -2
  7. package/components/atoms/JEditor.vue2.cjs +1 -1
  8. package/components/atoms/JEditor.vue2.cjs.map +1 -1
  9. package/components/atoms/JEditor.vue2.js +1 -0
  10. package/components/atoms/JEditor.vue2.js.map +1 -1
  11. package/components/atoms/JPreview.vue.cjs +1 -1
  12. package/components/atoms/JPreview.vue.js +1 -1
  13. package/components/atoms/JPreview.vue2.cjs +1 -1
  14. package/components/atoms/JPreview.vue2.cjs.map +1 -1
  15. package/components/atoms/JPreview.vue2.js +2 -1
  16. package/components/atoms/JPreview.vue2.js.map +1 -1
  17. package/components/molecules/JFormField.vue.cjs +1 -1
  18. package/components/molecules/JFormField.vue.cjs.map +1 -1
  19. package/components/molecules/JFormField.vue.js +1 -1
  20. package/components/molecules/JFormField.vue.js.map +1 -1
  21. package/components/organisms/JFilterBar.vue.cjs +2 -0
  22. package/components/organisms/JFilterBar.vue.cjs.map +1 -0
  23. package/components/organisms/JFilterBar.vue.js +133 -0
  24. package/components/organisms/JFilterBar.vue.js.map +1 -0
  25. package/components/organisms/JFilterBar.vue2.cjs +2 -0
  26. package/components/organisms/JFilterBar.vue2.cjs.map +1 -0
  27. package/components/organisms/JFilterBar.vue2.js +5 -0
  28. package/components/organisms/JFilterBar.vue2.js.map +1 -0
  29. package/components/organisms/JSidebarSimple/JDynamicMenuItem.vue.cjs +1 -1
  30. package/components/organisms/JSidebarSimple/JDynamicMenuItem.vue.cjs.map +1 -1
  31. package/components/organisms/JSidebarSimple/JDynamicMenuItem.vue.js +32 -28
  32. package/components/organisms/JSidebarSimple/JDynamicMenuItem.vue.js.map +1 -1
  33. package/index.cjs +1 -1
  34. package/index.js +30 -28
  35. package/package.json +1 -1
  36. package/types/index.d.ts +96 -30
  37. package/assets/jwms-portal-frontend-BEvCuV-9.css +0 -1
package/index.js CHANGED
@@ -12,9 +12,9 @@ import { default as b } from "./components/atoms/JSearchCombo.vue.js";
12
12
  import { default as T } from "./components/atoms/JRadio.vue.js";
13
13
  import { default as v } from "./components/atoms/JSwitch.vue.js";
14
14
  import { default as h } from "./components/atoms/JDatepicker.vue.js";
15
- import { default as L } from "./components/atoms/JDivider.vue.js";
16
- import { default as g } from "./components/atoms/JEditor.vue.js";
17
- import { default as D } from "./components/atoms/JLink.vue.js";
15
+ import { default as B } from "./components/atoms/JDivider.vue.js";
16
+ import { default as L } from "./components/atoms/JEditor.vue.js";
17
+ import { default as g } from "./components/atoms/JLink.vue.js";
18
18
  import { default as k } from "./components/atoms/JImage.vue.js";
19
19
  import { default as I } from "./components/atoms/JBadge.vue.js";
20
20
  import { default as w } from "./components/atoms/JProgress.vue.js";
@@ -41,26 +41,27 @@ import { default as So } from "./components/molecules/JAlert.vue.js";
41
41
  import { default as Co } from "./components/molecules/JAccordion.vue.js";
42
42
  import { default as Ao } from "./components/molecules/JTitlebar.vue.js";
43
43
  import { default as yo } from "./components/molecules/JButtonGroup.vue.js";
44
- import { default as Po } from "./components/molecules/JBreadcrumb.vue.js";
45
- import { default as Bo } from "./components/organisms/JDynamicTabs.vue.js";
46
- import { default as Fo } from "./components/organisms/JModal.vue.js";
44
+ import { default as Fo } from "./components/molecules/JBreadcrumb.vue.js";
45
+ import { default as Po } from "./components/organisms/JDynamicTabs.vue.js";
46
+ import { default as Do } from "./components/organisms/JModal.vue.js";
47
47
  import { default as Go } from "./components/organisms/JFormModal.vue.js";
48
48
  import { default as Mo } from "./components/organisms/JDynamicForm.vue.js";
49
49
  import { default as Eo } from "./components/organisms/JSearchPanel.vue.js";
50
- import { default as Ko } from "./components/organisms/JHeader.vue.js";
51
- import { default as jo } from "./components/organisms/JSidebarSimple.vue.js";
52
- import { default as zo } from "./components/organisms/JSidebarAdvanced.vue.js";
53
- import { default as Oo } from "./components/organisms/JPageContainer.vue.js";
54
- import { default as Uo } from "./components/organisms/JTree.vue.js";
55
- import { default as Wo } from "./components/templates/JLayout.vue.js";
56
- import { default as Yo } from "./components/templates/JLayoutSimple.vue.js";
57
- import { default as _o } from "./components/templates/JLayoutAdvanced.vue.js";
50
+ import { default as Ko } from "./components/organisms/JFilterBar.vue.js";
51
+ import { default as jo } from "./components/organisms/JHeader.vue.js";
52
+ import { default as zo } from "./components/organisms/JSidebarSimple.vue.js";
53
+ import { default as Oo } from "./components/organisms/JSidebarAdvanced.vue.js";
54
+ import { default as Uo } from "./components/organisms/JPageContainer.vue.js";
55
+ import { default as Wo } from "./components/organisms/JTree.vue.js";
56
+ import { default as Yo } from "./components/templates/JLayout.vue.js";
57
+ import { default as _o } from "./components/templates/JLayoutSimple.vue.js";
58
+ import { default as or } from "./components/templates/JLayoutAdvanced.vue.js";
58
59
  export {
59
60
  Co as JAccordion,
60
61
  So as JAlert,
61
62
  R as JAvatar,
62
63
  I as JBadge,
63
- Po as JBreadcrumb,
64
+ Fo as JBreadcrumb,
64
65
  m as JButton,
65
66
  yo as JButtonGroup,
66
67
  co as JCard,
@@ -68,26 +69,27 @@ export {
68
69
  n as JCombo,
69
70
  io as JContextMenu,
70
71
  h as JDatepicker,
71
- L as JDivider,
72
+ B as JDivider,
72
73
  Mo as JDynamicForm,
73
- Bo as JDynamicTabs,
74
- g as JEditor,
74
+ Po as JDynamicTabs,
75
+ L as JEditor,
76
+ Ko as JFilterBar,
75
77
  fo as JFormField,
76
78
  Go as JFormModal,
77
79
  $ as JGrid,
78
80
  po as JGroupCombo,
79
- Ko as JHeader,
81
+ jo as JHeader,
80
82
  Q as JIcon,
81
83
  k as JImage,
82
84
  l as JInput,
83
85
  q as JKbd,
84
86
  V as JLabel,
85
- Wo as JLayout,
86
- _o as JLayoutAdvanced,
87
- Yo as JLayoutSimple,
88
- D as JLink,
89
- Fo as JModal,
90
- Oo as JPageContainer,
87
+ Yo as JLayout,
88
+ or as JLayoutAdvanced,
89
+ _o as JLayoutSimple,
90
+ g as JLink,
91
+ Do as JModal,
92
+ Uo as JPageContainer,
91
93
  X as JPopover,
92
94
  Z as JPreview,
93
95
  w as JProgress,
@@ -95,8 +97,8 @@ export {
95
97
  xo as JSearchAddr,
96
98
  b as JSearchCombo,
97
99
  Eo as JSearchPanel,
98
- zo as JSidebarAdvanced,
99
- jo as JSidebarSimple,
100
+ Oo as JSidebarAdvanced,
101
+ zo as JSidebarSimple,
100
102
  H as JSpinner,
101
103
  v as JSwitch,
102
104
  uo as JTabs,
@@ -105,6 +107,6 @@ export {
105
107
  ro as JToast,
106
108
  ao as JToaster,
107
109
  N as JTooltip,
108
- Uo as JTree
110
+ Wo as JTree
109
111
  };
110
112
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@j-solution/components",
3
3
  "description": "Vue 3 Atomic Design component kit for enterprise dashboards",
4
- "version": "1.3.0",
4
+ "version": "1.4.1",
5
5
  "type": "module",
6
6
  "main": "./index.cjs",
7
7
  "module": "./index.js",
package/types/index.d.ts CHANGED
@@ -188,7 +188,45 @@ handleError: (errs: any) => void;
188
188
  }, {}, {}, {}, {}> | null;
189
189
  }, any>;
190
190
 
191
- declare const __VLS_component_19: DefineComponent<__VLS_Props_33, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
191
+ declare const __VLS_component_19: DefineComponent<JFilterBarProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
192
+ search: () => any;
193
+ "update:collapsed": (value: boolean) => any;
194
+ "update:filterValues": (value: Record<string, unknown>) => any;
195
+ }, string, PublicProps, Readonly<JFilterBarProps> & Readonly<{
196
+ onSearch?: (() => any) | undefined;
197
+ "onUpdate:collapsed"?: ((value: boolean) => any) | undefined;
198
+ "onUpdate:filterValues"?: ((value: Record<string, unknown>) => any) | undefined;
199
+ }>, {
200
+ collapsible: boolean;
201
+ collapsed: boolean;
202
+ filterValues: Record<string, unknown>;
203
+ filterConfig: Record<string, FilterConfigItem>;
204
+ showResetButton: boolean;
205
+ showSearchButton: boolean;
206
+ resetButtonText: string;
207
+ searchButtonText: string;
208
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
209
+
210
+ declare const __VLS_component_2: DefineComponent<__VLS_Props_2, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
211
+ "update:modelValue": (value: string | number) => any;
212
+ change: (value: string | number) => any;
213
+ focus: (event: FocusEvent) => any;
214
+ blur: (event: FocusEvent) => any;
215
+ }, string, PublicProps, Readonly<__VLS_Props_2> & Readonly<{
216
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
217
+ onChange?: ((value: string | number) => any) | undefined;
218
+ onFocus?: ((event: FocusEvent) => any) | undefined;
219
+ onBlur?: ((event: FocusEvent) => any) | undefined;
220
+ }>, {
221
+ disabled: boolean;
222
+ type: string;
223
+ placeholder: string;
224
+ readonly: boolean;
225
+ required: boolean;
226
+ styletype: StyleType_2;
227
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLInputElement>;
228
+
229
+ declare const __VLS_component_20: DefineComponent<__VLS_Props_33, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
192
230
  logoClick: () => any;
193
231
  navClick: (item: HeaderNavItem, index: number) => any;
194
232
  notificationClick: (item: NotificationItem) => any;
@@ -214,26 +252,7 @@ defaultTheme: string;
214
252
  availableThemes: string[];
215
253
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;
216
254
 
217
- declare const __VLS_component_2: DefineComponent<__VLS_Props_2, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
218
- "update:modelValue": (value: string | number) => any;
219
- change: (value: string | number) => any;
220
- focus: (event: FocusEvent) => any;
221
- blur: (event: FocusEvent) => any;
222
- }, string, PublicProps, Readonly<__VLS_Props_2> & Readonly<{
223
- "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
224
- onChange?: ((value: string | number) => any) | undefined;
225
- onFocus?: ((event: FocusEvent) => any) | undefined;
226
- onBlur?: ((event: FocusEvent) => any) | undefined;
227
- }>, {
228
- disabled: boolean;
229
- type: string;
230
- placeholder: string;
231
- readonly: boolean;
232
- required: boolean;
233
- styletype: StyleType_2;
234
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLInputElement>;
235
-
236
- declare const __VLS_component_20: DefineComponent<__VLS_Props_36, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
255
+ declare const __VLS_component_21: DefineComponent<__VLS_Props_36, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
237
256
  breadcrumbClick: (item: BreadcrumbItem, index: number) => any;
238
257
  titlebarButtonClick: (button: TitlebarButton) => any;
239
258
  }, string, PublicProps, Readonly<__VLS_Props_36> & Readonly<{
@@ -247,12 +266,12 @@ showTitlebar: boolean;
247
266
  contentScroll: boolean;
248
267
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
249
268
 
250
- declare const __VLS_component_21: DefineComponent<__VLS_Props_38, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_38> & Readonly<{}>, {
269
+ declare const __VLS_component_22: DefineComponent<__VLS_Props_38, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_38> & Readonly<{}>, {
251
270
  styletype: StyleType_29;
252
271
  contentScroll: boolean;
253
272
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
254
273
 
255
- declare const __VLS_component_22: DefineComponent<__VLS_Props_39, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_39> & Readonly<{}>, {
274
+ declare const __VLS_component_23: DefineComponent<__VLS_Props_39, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_39> & Readonly<{}>, {
256
275
  styletype: "default" | "minimal";
257
276
  permissions: MenuPermission[];
258
277
  menuItems: SidebarMenuItem[];
@@ -1103,9 +1122,10 @@ declare function __VLS_template_19(): {
1103
1122
  attrs: Partial<{}>;
1104
1123
  slots: {
1105
1124
  actions?(_: {}): any;
1125
+ filters?(_: {}): any;
1106
1126
  };
1107
1127
  refs: {};
1108
- rootEl: HTMLElement;
1128
+ rootEl: HTMLDivElement;
1109
1129
  };
1110
1130
 
1111
1131
  declare function __VLS_template_2(): {
@@ -1118,6 +1138,15 @@ declare function __VLS_template_2(): {
1118
1138
  };
1119
1139
 
1120
1140
  declare function __VLS_template_20(): {
1141
+ attrs: Partial<{}>;
1142
+ slots: {
1143
+ actions?(_: {}): any;
1144
+ };
1145
+ refs: {};
1146
+ rootEl: HTMLElement;
1147
+ };
1148
+
1149
+ declare function __VLS_template_21(): {
1121
1150
  attrs: Partial<{}>;
1122
1151
  slots: {
1123
1152
  'titlebar-buttons'?(_: {}): any;
@@ -1127,7 +1156,7 @@ declare function __VLS_template_20(): {
1127
1156
  rootEl: HTMLDivElement;
1128
1157
  };
1129
1158
 
1130
- declare function __VLS_template_21(): {
1159
+ declare function __VLS_template_22(): {
1131
1160
  attrs: Partial<{}>;
1132
1161
  slots: {
1133
1162
  header?(_: {}): any;
@@ -1139,7 +1168,7 @@ declare function __VLS_template_21(): {
1139
1168
  rootEl: HTMLDivElement;
1140
1169
  };
1141
1170
 
1142
- declare function __VLS_template_22(): {
1171
+ declare function __VLS_template_23(): {
1143
1172
  attrs: Partial<{}>;
1144
1173
  slots: {
1145
1174
  header?(_: {
@@ -1250,6 +1279,8 @@ declare type __VLS_TemplateResult_21 = ReturnType<typeof __VLS_template_21>;
1250
1279
 
1251
1280
  declare type __VLS_TemplateResult_22 = ReturnType<typeof __VLS_template_22>;
1252
1281
 
1282
+ declare type __VLS_TemplateResult_23 = ReturnType<typeof __VLS_template_23>;
1283
+
1253
1284
  declare type __VLS_TemplateResult_3 = ReturnType<typeof __VLS_template_3>;
1254
1285
 
1255
1286
  declare type __VLS_TemplateResult_4 = ReturnType<typeof __VLS_template_4>;
@@ -1354,6 +1385,12 @@ declare type __VLS_WithTemplateSlots_22<T, S> = T & {
1354
1385
  };
1355
1386
  };
1356
1387
 
1388
+ declare type __VLS_WithTemplateSlots_23<T, S> = T & {
1389
+ new (): {
1390
+ $slots: S;
1391
+ };
1392
+ };
1393
+
1357
1394
  declare type __VLS_WithTemplateSlots_3<T, S> = T & {
1358
1395
  new (): {
1359
1396
  $slots: S;
@@ -1592,6 +1629,14 @@ declare interface DynamicTab {
1592
1629
  meta?: Record<string, any>;
1593
1630
  }
1594
1631
 
1632
+ /** 필터 설정 타입 */
1633
+ declare interface FilterConfigItem {
1634
+ /** 표시할 라벨 */
1635
+ label: string;
1636
+ /** 값을 표시용 문자열로 변환 (예: combo value -> label) */
1637
+ displayValue?: (value: unknown) => string;
1638
+ }
1639
+
1595
1640
  declare interface FormSchema {
1596
1641
  id: string;
1597
1642
  name: string;
@@ -1827,6 +1872,27 @@ readonly: boolean;
1827
1872
  theme: "light" | "dark";
1828
1873
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
1829
1874
 
1875
+ export declare const JFilterBar: __VLS_WithTemplateSlots_19<typeof __VLS_component_19, __VLS_TemplateResult_19["slots"]>;
1876
+
1877
+ declare interface JFilterBarProps {
1878
+ /** 필터 접힘 상태 (v-model 지원) */
1879
+ collapsed?: boolean;
1880
+ /** 접기/펼치기 가능 여부. false면 토글 버튼 숨김 & 필터 항상 표시 */
1881
+ collapsible?: boolean;
1882
+ /** 필터 값 객체 (v-model:filterValues 지원) */
1883
+ filterValues?: Record<string, unknown>;
1884
+ /** 필터 설정 (label, displayValue 등) */
1885
+ filterConfig?: Record<string, FilterConfigItem>;
1886
+ /** 초기화 버튼 표시 여부 */
1887
+ showResetButton?: boolean;
1888
+ /** 조회 버튼 표시 여부 */
1889
+ showSearchButton?: boolean;
1890
+ /** 초기화 버튼 텍스트 */
1891
+ resetButtonText?: string;
1892
+ /** 조회 버튼 텍스트 */
1893
+ searchButtonText?: string;
1894
+ }
1895
+
1830
1896
  export declare const JFormField: DefineComponent<__VLS_Props_25, {
1831
1897
  clearError: () => void;
1832
1898
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
@@ -1896,7 +1962,7 @@ styletype: StyleType_21;
1896
1962
  groupedOptions: GroupedOption[];
1897
1963
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
1898
1964
 
1899
- export declare const JHeader: __VLS_WithTemplateSlots_19<typeof __VLS_component_19, __VLS_TemplateResult_19["slots"]>;
1965
+ export declare const JHeader: __VLS_WithTemplateSlots_20<typeof __VLS_component_20, __VLS_TemplateResult_20["slots"]>;
1900
1966
 
1901
1967
  export declare const JIcon: DefineComponent<__VLS_Props_20, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_20> & Readonly<{}>, {
1902
1968
  size: SizeType_3;
@@ -1926,11 +1992,11 @@ export declare const JKbd: __VLS_WithTemplateSlots_5<typeof __VLS_component_5, _
1926
1992
 
1927
1993
  export declare const JLabel: __VLS_WithTemplateSlots_7<typeof __VLS_component_7, __VLS_TemplateResult_7["slots"]>;
1928
1994
 
1929
- export declare const JLayout: __VLS_WithTemplateSlots_21<typeof __VLS_component_21, __VLS_TemplateResult_21["slots"]>;
1995
+ export declare const JLayout: __VLS_WithTemplateSlots_22<typeof __VLS_component_22, __VLS_TemplateResult_22["slots"]>;
1930
1996
 
1931
1997
  export { JLayoutAdvanced }
1932
1998
 
1933
- export declare const JLayoutSimple: __VLS_WithTemplateSlots_22<typeof __VLS_component_22, __VLS_TemplateResult_22["slots"]>;
1999
+ export declare const JLayoutSimple: __VLS_WithTemplateSlots_23<typeof __VLS_component_23, __VLS_TemplateResult_23["slots"]>;
1934
2000
 
1935
2001
  export declare const JLink: __VLS_WithTemplateSlots_3<typeof __VLS_component_3, __VLS_TemplateResult_3["slots"]>;
1936
2002
 
@@ -1957,7 +2023,7 @@ declare interface JModalProps {
1957
2023
  disabled?: boolean;
1958
2024
  }
1959
2025
 
1960
- export declare const JPageContainer: __VLS_WithTemplateSlots_20<typeof __VLS_component_20, __VLS_TemplateResult_20["slots"]>;
2026
+ export declare const JPageContainer: __VLS_WithTemplateSlots_21<typeof __VLS_component_21, __VLS_TemplateResult_21["slots"]>;
1961
2027
 
1962
2028
  export declare const JPopover: __VLS_WithTemplateSlots_8<typeof __VLS_component_8, __VLS_TemplateResult_8["slots"]>;
1963
2029