@idds/vue 1.0.52

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 (119) hide show
  1. package/README.md +313 -0
  2. package/dist/components/Accordion.vue.d.ts +85 -0
  3. package/dist/components/Accordion.vue.d.ts.map +1 -0
  4. package/dist/components/AccordionCard.vue.d.ts +66 -0
  5. package/dist/components/AccordionCard.vue.d.ts.map +1 -0
  6. package/dist/components/AccordionGroup.vue.d.ts +64 -0
  7. package/dist/components/AccordionGroup.vue.d.ts.map +1 -0
  8. package/dist/components/ActionDropdown.vue.d.ts +58 -0
  9. package/dist/components/ActionDropdown.vue.d.ts.map +1 -0
  10. package/dist/components/Alert.vue.d.ts +80 -0
  11. package/dist/components/Alert.vue.d.ts.map +1 -0
  12. package/dist/components/Avatar.vue.d.ts +70 -0
  13. package/dist/components/Avatar.vue.d.ts.map +1 -0
  14. package/dist/components/Badge.vue.d.ts +104 -0
  15. package/dist/components/Badge.vue.d.ts.map +1 -0
  16. package/dist/components/BottomSheet.vue.d.ts +48 -0
  17. package/dist/components/BottomSheet.vue.d.ts.map +1 -0
  18. package/dist/components/Breadcrumb.vue.d.ts +62 -0
  19. package/dist/components/Breadcrumb.vue.d.ts.map +1 -0
  20. package/dist/components/Button.vue.d.ts +102 -0
  21. package/dist/components/Button.vue.d.ts.map +1 -0
  22. package/dist/components/ButtonGroup.vue.d.ts +66 -0
  23. package/dist/components/ButtonGroup.vue.d.ts.map +1 -0
  24. package/dist/components/Card.vue.d.ts +115 -0
  25. package/dist/components/Card.vue.d.ts.map +1 -0
  26. package/dist/components/Checkbox.vue.d.ts +73 -0
  27. package/dist/components/Checkbox.vue.d.ts.map +1 -0
  28. package/dist/components/Chip.vue.d.ts +76 -0
  29. package/dist/components/Chip.vue.d.ts.map +1 -0
  30. package/dist/components/Collapse.vue.d.ts +60 -0
  31. package/dist/components/Collapse.vue.d.ts.map +1 -0
  32. package/dist/components/DatePicker.vue.d.ts +109 -0
  33. package/dist/components/DatePicker.vue.d.ts.map +1 -0
  34. package/dist/components/Divider.vue.d.ts +43 -0
  35. package/dist/components/Divider.vue.d.ts.map +1 -0
  36. package/dist/components/Drawer.vue.d.ts +91 -0
  37. package/dist/components/Drawer.vue.d.ts.map +1 -0
  38. package/dist/components/Dropdown.vue.d.ts +72 -0
  39. package/dist/components/Dropdown.vue.d.ts.map +1 -0
  40. package/dist/components/FieldInputTable.vue.d.ts +52 -0
  41. package/dist/components/FieldInputTable.vue.d.ts.map +1 -0
  42. package/dist/components/FileUpload.vue.d.ts +131 -0
  43. package/dist/components/FileUpload.vue.d.ts.map +1 -0
  44. package/dist/components/InputSearch.vue.d.ts +76 -0
  45. package/dist/components/InputSearch.vue.d.ts.map +1 -0
  46. package/dist/components/LinearProgressIndicator.vue.d.ts +47 -0
  47. package/dist/components/LinearProgressIndicator.vue.d.ts.map +1 -0
  48. package/dist/components/Modal.vue.d.ts +87 -0
  49. package/dist/components/Modal.vue.d.ts.map +1 -0
  50. package/dist/components/MonthPicker.vue.d.ts +69 -0
  51. package/dist/components/MonthPicker.vue.d.ts.map +1 -0
  52. package/dist/components/MultipleChoiceGrid.vue.d.ts +61 -0
  53. package/dist/components/MultipleChoiceGrid.vue.d.ts.map +1 -0
  54. package/dist/components/Pagination.vue.d.ts +99 -0
  55. package/dist/components/Pagination.vue.d.ts.map +1 -0
  56. package/dist/components/PasswordInput.vue.d.ts +68 -0
  57. package/dist/components/PasswordInput.vue.d.ts.map +1 -0
  58. package/dist/components/PhoneInput.vue.d.ts +89 -0
  59. package/dist/components/PhoneInput.vue.d.ts.map +1 -0
  60. package/dist/components/ProgressBar.vue.d.ts +75 -0
  61. package/dist/components/ProgressBar.vue.d.ts.map +1 -0
  62. package/dist/components/RadioInput.vue.d.ts +65 -0
  63. package/dist/components/RadioInput.vue.d.ts.map +1 -0
  64. package/dist/components/SelectDropdown.vue.d.ts +127 -0
  65. package/dist/components/SelectDropdown.vue.d.ts.map +1 -0
  66. package/dist/components/Skeleton.vue.d.ts +46 -0
  67. package/dist/components/Skeleton.vue.d.ts.map +1 -0
  68. package/dist/components/Spinner.vue.d.ts +58 -0
  69. package/dist/components/Spinner.vue.d.ts.map +1 -0
  70. package/dist/components/Stepper.vue.d.ts +49 -0
  71. package/dist/components/Stepper.vue.d.ts.map +1 -0
  72. package/dist/components/TabHorizontal.vue.d.ts +84 -0
  73. package/dist/components/TabHorizontal.vue.d.ts.map +1 -0
  74. package/dist/components/TabVertical.vue.d.ts +84 -0
  75. package/dist/components/TabVertical.vue.d.ts.map +1 -0
  76. package/dist/components/Table.vue.d.ts +160 -0
  77. package/dist/components/Table.vue.d.ts.map +1 -0
  78. package/dist/components/TableProgressBar.vue.d.ts +54 -0
  79. package/dist/components/TableProgressBar.vue.d.ts.map +1 -0
  80. package/dist/components/TextArea.vue.d.ts +121 -0
  81. package/dist/components/TextArea.vue.d.ts.map +1 -0
  82. package/dist/components/TextField.vue.d.ts +129 -0
  83. package/dist/components/TextField.vue.d.ts.map +1 -0
  84. package/dist/components/ThemeToggle.vue.d.ts +38 -0
  85. package/dist/components/ThemeToggle.vue.d.ts.map +1 -0
  86. package/dist/components/TimePicker.vue.d.ts +132 -0
  87. package/dist/components/TimePicker.vue.d.ts.map +1 -0
  88. package/dist/components/Toast.vue.d.ts +52 -0
  89. package/dist/components/Toast.vue.d.ts.map +1 -0
  90. package/dist/components/ToastProvider.vue.d.ts +12 -0
  91. package/dist/components/ToastProvider.vue.d.ts.map +1 -0
  92. package/dist/components/Toggle.vue.d.ts +71 -0
  93. package/dist/components/Toggle.vue.d.ts.map +1 -0
  94. package/dist/components/Tooltip.vue.d.ts +118 -0
  95. package/dist/components/Tooltip.vue.d.ts.map +1 -0
  96. package/dist/components/YearPicker.vue.d.ts +81 -0
  97. package/dist/components/YearPicker.vue.d.ts.map +1 -0
  98. package/dist/components/types.d.ts +5 -0
  99. package/dist/components/types.d.ts.map +1 -0
  100. package/dist/composables/useToast.d.ts +9 -0
  101. package/dist/composables/useToast.d.ts.map +1 -0
  102. package/dist/index.cjs.js +27 -0
  103. package/dist/index.cjs.js.map +1 -0
  104. package/dist/index.css +1 -0
  105. package/dist/index.d.ts +6239 -0
  106. package/dist/index.d.ts.map +1 -0
  107. package/dist/index.es.js +10403 -0
  108. package/dist/index.es.js.map +1 -0
  109. package/dist/index.umd.js +27 -0
  110. package/dist/index.umd.js.map +1 -0
  111. package/dist/main.d.ts +2 -0
  112. package/dist/main.d.ts.map +1 -0
  113. package/dist/themes/index.d.ts +41 -0
  114. package/dist/themes/index.d.ts.map +1 -0
  115. package/dist/utils/fileValidation.d.ts +57 -0
  116. package/dist/utils/fileValidation.d.ts.map +1 -0
  117. package/dist/utils/security.d.ts +61 -0
  118. package/dist/utils/security.d.ts.map +1 -0
  119. package/package.json +64 -0
@@ -0,0 +1,84 @@
1
+ import { Component } from 'vue';
2
+
3
+ export interface TabHorizontalItem {
4
+ value: string;
5
+ label: string | Component;
6
+ disabled?: boolean;
7
+ }
8
+ export interface TabHorizontalProps {
9
+ /** Array of tab items */
10
+ items: TabHorizontalItem[];
11
+ /** Currently selected tab value */
12
+ value?: string;
13
+ /** Default selected tab value */
14
+ defaultValue?: string;
15
+ /** Callback when tab changes */
16
+ onChange?: (value: string) => void;
17
+ /** Size variant */
18
+ size?: 'sm' | 'md';
19
+ /** Visual variant of the tabs */
20
+ variant?: 'button-brand' | 'outline' | 'button-white';
21
+ /** Whether tabs should fill full width */
22
+ fullWidth?: boolean;
23
+ /** Whether to use brand primary color for outline and button-white variants */
24
+ useBrandColor?: boolean;
25
+ /** Whether tabs are disabled */
26
+ disabled?: boolean;
27
+ /** Custom class name */
28
+ className?: string;
29
+ /** Custom class name for tab container */
30
+ containerClassName?: string;
31
+ /** Custom class name for individual tabs */
32
+ tabClassName?: string;
33
+ }
34
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TabHorizontalProps>, {
35
+ size: string;
36
+ variant: string;
37
+ fullWidth: boolean;
38
+ useBrandColor: boolean;
39
+ disabled: boolean;
40
+ className: string;
41
+ containerClassName: string;
42
+ tabClassName: string;
43
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
44
+ change: (value: string) => void;
45
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TabHorizontalProps>, {
46
+ size: string;
47
+ variant: string;
48
+ fullWidth: boolean;
49
+ useBrandColor: boolean;
50
+ disabled: boolean;
51
+ className: string;
52
+ containerClassName: string;
53
+ tabClassName: string;
54
+ }>>> & Readonly<{
55
+ onChange?: (value: string) => any;
56
+ }>, {
57
+ size: "sm" | "md";
58
+ disabled: boolean;
59
+ className: string;
60
+ variant: "button-brand" | "outline" | "button-white";
61
+ fullWidth: boolean;
62
+ useBrandColor: boolean;
63
+ containerClassName: string;
64
+ tabClassName: string;
65
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
66
+ export default _default;
67
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
68
+ type __VLS_TypePropsToRuntimeProps<T> = {
69
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
70
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
71
+ } : {
72
+ type: import('vue').PropType<T[K]>;
73
+ required: true;
74
+ };
75
+ };
76
+ type __VLS_WithDefaults<P, D> = {
77
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
78
+ default: D[K];
79
+ }> : P[K];
80
+ };
81
+ type __VLS_Prettify<T> = {
82
+ [K in keyof T]: T[K];
83
+ } & {};
84
+ //# sourceMappingURL=TabHorizontal.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabHorizontal.vue.d.ts","sourceRoot":"","sources":["../../src/components/TabHorizontal.vue"],"names":[],"mappings":"AAuBA;AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,4CAA4C,CAAC;AAEpD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,yBAAyB;IACzB,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,mBAAmB;IACnB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,iCAAiC;IACjC,OAAO,CAAC,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,CAAC;IACtD,0CAA0C;IAC1C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,+EAA+E;IAC/E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;;;;;;;;;;;;;;;;;;;;;;;;UAfQ,IAAI,GAAG,IAAI;cAQP,OAAO;eAEN,MAAM;aARR,cAAc,GAAG,SAAS,GAAG,cAAc;eAEzC,OAAO;mBAEH,OAAO;wBAMF,MAAM;kBAEZ,MAAM;;AA2QvB,wBAOG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AACN,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
@@ -0,0 +1,84 @@
1
+ import { Component } from 'vue';
2
+
3
+ export interface TabVerticalItem {
4
+ value: string;
5
+ label: string | Component;
6
+ disabled?: boolean;
7
+ }
8
+ export interface TabVerticalProps {
9
+ /** Array of tab items */
10
+ items: TabVerticalItem[];
11
+ /** Currently selected tab value */
12
+ value?: string;
13
+ /** Default selected tab value */
14
+ defaultValue?: string;
15
+ /** Callback when tab changes */
16
+ onChange?: (value: string) => void;
17
+ /** Size variant */
18
+ size?: 'sm' | 'md';
19
+ /** Visual variant of the tabs */
20
+ variant?: 'button-brand' | 'outline' | 'button-white';
21
+ /** Whether to use brand primary color for outline and button-white variants */
22
+ useBrandColor?: boolean;
23
+ /** Whether tabs are disabled */
24
+ disabled?: boolean;
25
+ /** Custom class name */
26
+ className?: string;
27
+ /** Custom class name for tab container */
28
+ containerClassName?: string;
29
+ /** Custom class name for individual tabs */
30
+ tabClassName?: string;
31
+ /** Width of the vertical tab container */
32
+ width?: string | number;
33
+ }
34
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TabVerticalProps>, {
35
+ size: string;
36
+ variant: string;
37
+ useBrandColor: boolean;
38
+ disabled: boolean;
39
+ className: string;
40
+ containerClassName: string;
41
+ tabClassName: string;
42
+ width: string;
43
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
44
+ change: (value: string) => void;
45
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TabVerticalProps>, {
46
+ size: string;
47
+ variant: string;
48
+ useBrandColor: boolean;
49
+ disabled: boolean;
50
+ className: string;
51
+ containerClassName: string;
52
+ tabClassName: string;
53
+ width: string;
54
+ }>>> & Readonly<{
55
+ onChange?: (value: string) => any;
56
+ }>, {
57
+ size: "sm" | "md";
58
+ disabled: boolean;
59
+ className: string;
60
+ width: string | number;
61
+ variant: "button-brand" | "outline" | "button-white";
62
+ useBrandColor: boolean;
63
+ containerClassName: string;
64
+ tabClassName: string;
65
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
66
+ export default _default;
67
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
68
+ type __VLS_TypePropsToRuntimeProps<T> = {
69
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
70
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
71
+ } : {
72
+ type: import('vue').PropType<T[K]>;
73
+ required: true;
74
+ };
75
+ };
76
+ type __VLS_WithDefaults<P, D> = {
77
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
78
+ default: D[K];
79
+ }> : P[K];
80
+ };
81
+ type __VLS_Prettify<T> = {
82
+ [K in keyof T]: T[K];
83
+ } & {};
84
+ //# sourceMappingURL=TabVertical.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabVertical.vue.d.ts","sourceRoot":"","sources":["../../src/components/TabVertical.vue"],"names":[],"mappings":"AA2BA;AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,0CAA0C,CAAC;AAElD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,yBAAyB;IACzB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,mBAAmB;IACnB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,iCAAiC;IACjC,OAAO,CAAC,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,CAAC;IACtD,+EAA+E;IAC/E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;;;;;;;;;;;;;;;;;;;;;;;;UAfQ,IAAI,GAAG,IAAI;cAMP,OAAO;eAEN,MAAM;WAMV,MAAM,GAAG,MAAM;aAZb,cAAc,GAAG,SAAS,GAAG,cAAc;mBAErC,OAAO;wBAMF,MAAM;kBAEZ,MAAM;;AAkQvB,wBAOG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AACN,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
@@ -0,0 +1,160 @@
1
+ import { VNode } from 'vue';
2
+
3
+ export interface Column {
4
+ header: string;
5
+ accessor: string;
6
+ sortable?: boolean;
7
+ render?: (row: any) => VNode | string | number;
8
+ }
9
+ export interface FetchParams {
10
+ page: number;
11
+ pageSize: number;
12
+ sortField: string | null;
13
+ sortOrder: 'asc' | 'desc' | null;
14
+ searchTerm: string;
15
+ }
16
+ export interface FetchResult {
17
+ data: any[];
18
+ total: number;
19
+ }
20
+ export interface EditorProps {
21
+ row: any;
22
+ value: any;
23
+ onChange: (val: any) => void;
24
+ onCommit: () => void;
25
+ onCancel: () => void;
26
+ }
27
+ export interface EditableColumn {
28
+ accessor: string;
29
+ editor: (props: EditorProps) => VNode;
30
+ }
31
+ export interface TableProps {
32
+ columns: Column[];
33
+ fetchData: (params: FetchParams) => Promise<FetchResult>;
34
+ initialPageSize?: number;
35
+ pageSizeOptions?: number[];
36
+ initialSortField?: string | null;
37
+ initialSortOrder?: 'asc' | 'desc' | null;
38
+ placeholderSearch?: string;
39
+ searchPlaceholder?: string;
40
+ buttonSearchLabel?: string;
41
+ className?: string;
42
+ /** jika true, tambahkan kolom checkbox di paling kiri */
43
+ selectable?: boolean;
44
+ /** callback dipanggil saat user pilih beberapa row */
45
+ onSelectionChange?: (selectedRows: any[]) => void;
46
+ /** konfigurasi kolom yang bisa diedit */
47
+ editableColumns?: EditableColumn[];
48
+ /** callback dipanggil saat user commit perubahan 1 row */
49
+ onRowUpdate?: (updatedRow: any) => void;
50
+ /** nama properti unik sebagai key row (default: "id") */
51
+ rowKey?: string;
52
+ showSearch?: boolean;
53
+ /** apakah row bisa diklik */
54
+ rowClickable?: boolean;
55
+ /** callback dipanggil saat user klik row (tidak dipanggil jika ada button action di cell) */
56
+ onRowClick?: (row: any) => void;
57
+ /** apakah kolom terakhir (biasanya Actions) sticky saat scroll horizontal */
58
+ lastColumnSticky?: boolean;
59
+ /** Custom render function untuk sort indicator wrapper */
60
+ renderSortIndicator?: (params: {
61
+ column: Column;
62
+ index: number;
63
+ isSorted: boolean;
64
+ sortOrder: 'asc' | 'desc' | null;
65
+ handleSort: (order: 'asc' | 'desc') => void;
66
+ }) => VNode;
67
+ }
68
+ declare function __VLS_template(): {
69
+ "sort-indicator"?(_: {
70
+ column: Column;
71
+ index: number;
72
+ isSorted: boolean;
73
+ sortOrder: "desc" | "asc";
74
+ handleSort: (order: "asc" | "desc") => void;
75
+ }): any;
76
+ cell?(_: {
77
+ row: any;
78
+ column: Column;
79
+ value: any;
80
+ }): any;
81
+ };
82
+ declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TableProps>, {
83
+ initialPageSize: number;
84
+ pageSizeOptions: () => number[];
85
+ initialSortField: any;
86
+ initialSortOrder: any;
87
+ placeholderSearch: string;
88
+ searchPlaceholder: string;
89
+ buttonSearchLabel: string;
90
+ className: string;
91
+ selectable: boolean;
92
+ editableColumns: () => any[];
93
+ rowKey: string;
94
+ showSearch: boolean;
95
+ rowClickable: boolean;
96
+ lastColumnSticky: boolean;
97
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
98
+ selectionChange: (selectedRows: any[]) => void;
99
+ rowUpdate: (updatedRow: any) => void;
100
+ rowClick: (row: any) => void;
101
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TableProps>, {
102
+ initialPageSize: number;
103
+ pageSizeOptions: () => number[];
104
+ initialSortField: any;
105
+ initialSortOrder: any;
106
+ placeholderSearch: string;
107
+ searchPlaceholder: string;
108
+ buttonSearchLabel: string;
109
+ className: string;
110
+ selectable: boolean;
111
+ editableColumns: () => any[];
112
+ rowKey: string;
113
+ showSearch: boolean;
114
+ rowClickable: boolean;
115
+ lastColumnSticky: boolean;
116
+ }>>> & Readonly<{
117
+ onSelectionChange?: (selectedRows: any[]) => any;
118
+ onRowUpdate?: (updatedRow: any) => any;
119
+ onRowClick?: (row: any) => any;
120
+ }>, {
121
+ className: string;
122
+ pageSizeOptions: number[];
123
+ initialPageSize: number;
124
+ initialSortField: string | null;
125
+ initialSortOrder: "asc" | "desc" | null;
126
+ placeholderSearch: string;
127
+ searchPlaceholder: string;
128
+ buttonSearchLabel: string;
129
+ selectable: boolean;
130
+ editableColumns: EditableColumn[];
131
+ rowKey: string;
132
+ showSearch: boolean;
133
+ rowClickable: boolean;
134
+ lastColumnSticky: boolean;
135
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
136
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
137
+ export default _default;
138
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
139
+ type __VLS_TypePropsToRuntimeProps<T> = {
140
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
141
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
142
+ } : {
143
+ type: import('vue').PropType<T[K]>;
144
+ required: true;
145
+ };
146
+ };
147
+ type __VLS_WithDefaults<P, D> = {
148
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
149
+ default: D[K];
150
+ }> : P[K];
151
+ };
152
+ type __VLS_Prettify<T> = {
153
+ [K in keyof T]: T[K];
154
+ } & {};
155
+ type __VLS_WithTemplateSlots<T, S> = T & {
156
+ new (): {
157
+ $slots: S;
158
+ };
159
+ };
160
+ //# sourceMappingURL=Table.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Table.vue.d.ts","sourceRoot":"","sources":["../../src/components/Table.vue"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+
2
+ export interface TableProgressBarProps {
3
+ /**
4
+ * Whether the progress bar is visible
5
+ */
6
+ visible?: boolean;
7
+ /**
8
+ * Whether to show loading state
9
+ */
10
+ loading?: boolean;
11
+ /**
12
+ * Color variant
13
+ */
14
+ variant?: 'primary' | 'secondary' | 'success' | 'warning' | 'error';
15
+ /**
16
+ * Custom className
17
+ */
18
+ className?: string;
19
+ }
20
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TableProgressBarProps>, {
21
+ visible: boolean;
22
+ loading: boolean;
23
+ variant: string;
24
+ className: string;
25
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TableProgressBarProps>, {
26
+ visible: boolean;
27
+ loading: boolean;
28
+ variant: string;
29
+ className: string;
30
+ }>>> & Readonly<{}>, {
31
+ className: string;
32
+ variant: "primary" | "secondary" | "success" | "warning" | "error";
33
+ visible: boolean;
34
+ loading: boolean;
35
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
36
+ export default _default;
37
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
38
+ type __VLS_TypePropsToRuntimeProps<T> = {
39
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
40
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
41
+ } : {
42
+ type: import('vue').PropType<T[K]>;
43
+ required: true;
44
+ };
45
+ };
46
+ type __VLS_WithDefaults<P, D> = {
47
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
48
+ default: D[K];
49
+ }> : P[K];
50
+ };
51
+ type __VLS_Prettify<T> = {
52
+ [K in keyof T]: T[K];
53
+ } & {};
54
+ //# sourceMappingURL=TableProgressBar.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableProgressBar.vue.d.ts","sourceRoot":"","sources":["../../src/components/TableProgressBar.vue"],"names":[],"mappings":"AAYA;AAIA,OAAO,gDAAgD,CAAC;AAExD,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IACpE;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;;;;;;;;;;;;eADa,MAAM;aAJR,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO;aARzD,OAAO;aAIP,OAAO;;AAqJnB,wBAMG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AACN,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
@@ -0,0 +1,121 @@
1
+ import { SecurityConfig } from '../utils/security';
2
+
3
+ export type ValidationRule = {
4
+ kind: 'regex';
5
+ pattern: RegExp;
6
+ message?: string;
7
+ } | {
8
+ kind: 'maxLength';
9
+ value: number;
10
+ message?: string;
11
+ } | {
12
+ kind: 'minLength';
13
+ value: number;
14
+ message?: string;
15
+ } | {
16
+ kind: 'custom';
17
+ validate: (v: string) => string | null;
18
+ message?: string;
19
+ };
20
+ export interface TextAreaProps {
21
+ modelValue?: string;
22
+ label?: string;
23
+ placeholder?: string;
24
+ size?: 'sm' | 'md' | 'lg';
25
+ status?: 'neutral' | 'success' | 'error' | 'warning';
26
+ statusMessage?: string;
27
+ disabled?: boolean;
28
+ readonly?: boolean;
29
+ required?: boolean;
30
+ maxLength?: number;
31
+ showCharCount?: boolean;
32
+ showClearButton?: boolean;
33
+ rows?: number;
34
+ resize?: 'none' | 'vertical' | 'horizontal' | 'both';
35
+ securityConfig?: SecurityConfig;
36
+ autocomplete?: string;
37
+ spellCheck?: boolean;
38
+ autoCapitalize?: 'off' | 'none' | 'sentences' | 'words' | 'characters';
39
+ autoCorrect?: 'off' | 'on';
40
+ dir?: 'auto' | 'ltr' | 'rtl';
41
+ validation?: ValidationRule[];
42
+ normalize?: (value: string) => string;
43
+ }
44
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TextAreaProps>, {
45
+ modelValue: string;
46
+ size: string;
47
+ status: string;
48
+ disabled: boolean;
49
+ readonly: boolean;
50
+ required: boolean;
51
+ showCharCount: boolean;
52
+ showClearButton: boolean;
53
+ rows: number;
54
+ resize: string;
55
+ securityConfig: () => SecurityConfig;
56
+ spellCheck: any;
57
+ autoCapitalize: any;
58
+ autoCorrect: any;
59
+ dir: any;
60
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
61
+ input: (event: Event) => void;
62
+ blur: (event: FocusEvent) => void;
63
+ focus: (event: FocusEvent) => void;
64
+ "update:modelValue": (value: string) => void;
65
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TextAreaProps>, {
66
+ modelValue: string;
67
+ size: string;
68
+ status: string;
69
+ disabled: boolean;
70
+ readonly: boolean;
71
+ required: boolean;
72
+ showCharCount: boolean;
73
+ showClearButton: boolean;
74
+ rows: number;
75
+ resize: string;
76
+ securityConfig: () => SecurityConfig;
77
+ spellCheck: any;
78
+ autoCapitalize: any;
79
+ autoCorrect: any;
80
+ dir: any;
81
+ }>>> & Readonly<{
82
+ onInput?: (event: Event) => any;
83
+ onBlur?: (event: FocusEvent) => any;
84
+ onFocus?: (event: FocusEvent) => any;
85
+ "onUpdate:modelValue"?: (value: string) => any;
86
+ }>, {
87
+ size: "sm" | "md" | "lg";
88
+ required: boolean;
89
+ disabled: boolean;
90
+ resize: "none" | "vertical" | "horizontal" | "both";
91
+ modelValue: string;
92
+ status: "neutral" | "success" | "error" | "warning";
93
+ readonly: boolean;
94
+ showCharCount: boolean;
95
+ showClearButton: boolean;
96
+ securityConfig: SecurityConfig;
97
+ spellCheck: boolean;
98
+ autoCapitalize: "off" | "none" | "sentences" | "words" | "characters";
99
+ autoCorrect: "off" | "on";
100
+ dir: "auto" | "ltr" | "rtl";
101
+ rows: number;
102
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
103
+ export default _default;
104
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
105
+ type __VLS_TypePropsToRuntimeProps<T> = {
106
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
107
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
108
+ } : {
109
+ type: import('vue').PropType<T[K]>;
110
+ required: true;
111
+ };
112
+ };
113
+ type __VLS_WithDefaults<P, D> = {
114
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
115
+ default: D[K];
116
+ }> : P[K];
117
+ };
118
+ type __VLS_Prettify<T> = {
119
+ [K in keyof T]: T[K];
120
+ } & {};
121
+ //# sourceMappingURL=TextArea.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextArea.vue.d.ts","sourceRoot":"","sources":["../../src/components/TextArea.vue"],"names":[],"mappings":"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"}
@@ -0,0 +1,129 @@
1
+ import { Component } from 'vue';
2
+ import { SecurityConfig } from '../utils/security';
3
+
4
+ export type ValidationRule = {
5
+ kind: 'regex';
6
+ pattern: RegExp;
7
+ message?: string;
8
+ } | {
9
+ kind: 'maxLength';
10
+ value: number;
11
+ message?: string;
12
+ } | {
13
+ kind: 'minLength';
14
+ value: number;
15
+ message?: string;
16
+ } | {
17
+ kind: 'custom';
18
+ validate: (v: string) => string | null;
19
+ message?: string;
20
+ };
21
+ export interface TextFieldProps {
22
+ modelValue?: string;
23
+ label?: string;
24
+ placeholder?: string;
25
+ type?: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url';
26
+ size?: 'sm' | 'md' | 'lg';
27
+ status?: 'neutral' | 'success' | 'error' | 'warning';
28
+ statusMessage?: string;
29
+ disabled?: boolean;
30
+ readonly?: boolean;
31
+ required?: boolean;
32
+ maxLength?: number;
33
+ showCharCount?: boolean;
34
+ showClearButton?: boolean;
35
+ prefixIcon?: Component;
36
+ debounce?: number;
37
+ securityConfig?: SecurityConfig;
38
+ autocomplete?: string;
39
+ spellCheck?: boolean;
40
+ autoCapitalize?: 'off' | 'none' | 'sentences' | 'words' | 'characters';
41
+ autoCorrect?: 'off' | 'on';
42
+ inputMode?: 'none' | 'text' | 'tel' | 'url' | 'email' | 'numeric' | 'decimal' | 'search';
43
+ dir?: 'auto' | 'ltr' | 'rtl';
44
+ validation?: ValidationRule[];
45
+ normalize?: (value: string) => string;
46
+ }
47
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TextFieldProps>, {
48
+ modelValue: string;
49
+ type: string;
50
+ size: string;
51
+ status: string;
52
+ disabled: boolean;
53
+ readonly: boolean;
54
+ required: boolean;
55
+ showCharCount: boolean;
56
+ showClearButton: boolean;
57
+ debounce: number;
58
+ securityConfig: () => SecurityConfig;
59
+ spellCheck: any;
60
+ autoCapitalize: any;
61
+ autoCorrect: any;
62
+ inputMode: any;
63
+ dir: any;
64
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
65
+ clear: () => void;
66
+ input: (event: Event) => void;
67
+ blur: (event: FocusEvent) => void;
68
+ focus: (event: FocusEvent) => void;
69
+ "update:modelValue": (value: string) => void;
70
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TextFieldProps>, {
71
+ modelValue: string;
72
+ type: string;
73
+ size: string;
74
+ status: string;
75
+ disabled: boolean;
76
+ readonly: boolean;
77
+ required: boolean;
78
+ showCharCount: boolean;
79
+ showClearButton: boolean;
80
+ debounce: number;
81
+ securityConfig: () => SecurityConfig;
82
+ spellCheck: any;
83
+ autoCapitalize: any;
84
+ autoCorrect: any;
85
+ inputMode: any;
86
+ dir: any;
87
+ }>>> & Readonly<{
88
+ onClear?: () => any;
89
+ onInput?: (event: Event) => any;
90
+ onBlur?: (event: FocusEvent) => any;
91
+ onFocus?: (event: FocusEvent) => any;
92
+ "onUpdate:modelValue"?: (value: string) => any;
93
+ }>, {
94
+ size: "sm" | "md" | "lg";
95
+ type: "text" | "email" | "password" | "number" | "tel" | "url";
96
+ required: boolean;
97
+ disabled: boolean;
98
+ modelValue: string;
99
+ status: "neutral" | "success" | "error" | "warning";
100
+ readonly: boolean;
101
+ showCharCount: boolean;
102
+ showClearButton: boolean;
103
+ debounce: number;
104
+ securityConfig: SecurityConfig;
105
+ spellCheck: boolean;
106
+ autoCapitalize: "off" | "none" | "sentences" | "words" | "characters";
107
+ autoCorrect: "off" | "on";
108
+ inputMode: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search";
109
+ dir: "auto" | "ltr" | "rtl";
110
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
111
+ export default _default;
112
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
113
+ type __VLS_TypePropsToRuntimeProps<T> = {
114
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
115
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
116
+ } : {
117
+ type: import('vue').PropType<T[K]>;
118
+ required: true;
119
+ };
120
+ };
121
+ type __VLS_WithDefaults<P, D> = {
122
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
123
+ default: D[K];
124
+ }> : P[K];
125
+ };
126
+ type __VLS_Prettify<T> = {
127
+ [K in keyof T]: T[K];
128
+ } & {};
129
+ //# sourceMappingURL=TextField.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextField.vue.d.ts","sourceRoot":"","sources":["../../src/components/TextField.vue"],"names":[],"mappings":"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"}