@pequity/squirrel 8.4.4 → 8.5.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 (175) hide show
  1. package/README.md +31 -1
  2. package/dist/cjs/chunks/index.js +530 -179
  3. package/dist/cjs/chunks/p-alert.js +14 -16
  4. package/dist/cjs/chunks/p-avatar.js +16 -0
  5. package/dist/cjs/chunks/p-btn.js +4 -1
  6. package/dist/cjs/chunks/p-card.js +4 -0
  7. package/dist/cjs/chunks/p-dropdown-select.js +34 -0
  8. package/dist/cjs/chunks/p-input-number.js +32 -0
  9. package/dist/cjs/chunks/p-input-percent.js +15 -4
  10. package/dist/cjs/chunks/p-input.js +28 -0
  11. package/dist/cjs/chunks/p-pagination-info.js +9 -5
  12. package/dist/cjs/chunks/p-pagination.js +23 -13
  13. package/dist/cjs/chunks/p-select-btn.js +2 -1
  14. package/dist/cjs/chunks/p-select.js +33 -0
  15. package/dist/cjs/chunks/p-table-loader.js +20 -0
  16. package/dist/cjs/chunks/p-tabs.js +12 -0
  17. package/dist/cjs/chunks/p-textarea.js +20 -0
  18. package/dist/cjs/index.js +72 -29
  19. package/dist/cjs/inputClasses.js +3 -3
  20. package/dist/cjs/p-checkbox.js +8 -1
  21. package/dist/cjs/p-chips.js +17 -1
  22. package/dist/cjs/p-close-btn.js +6 -1
  23. package/dist/cjs/p-drawer.js +90 -2
  24. package/dist/cjs/p-dropdown.js +2 -1
  25. package/dist/cjs/p-icon.js +2 -1
  26. package/dist/cjs/p-input-search.js +13 -1
  27. package/dist/cjs/p-loading.js +3 -3
  28. package/dist/cjs/p-modal.js +125 -43
  29. package/dist/cjs/p-select-pill.js +36 -2
  30. package/dist/cjs/p-skeleton-loader.js +17 -1
  31. package/dist/cjs/p-table-filter-icon.js +4 -1
  32. package/dist/cjs/p-table-header-cell.js +32 -2
  33. package/dist/cjs/p-table-td.js +1 -1
  34. package/dist/cjs/p-table.js +2 -0
  35. package/dist/cjs/p-toggle.js +22 -1
  36. package/dist/cjs/usePTableHeaderWrap.js +38 -0
  37. package/dist/es/chunks/index.js +530 -179
  38. package/dist/es/chunks/p-alert.js +14 -16
  39. package/dist/es/chunks/p-avatar.js +16 -0
  40. package/dist/es/chunks/p-btn.js +5 -2
  41. package/dist/es/chunks/p-card.js +4 -0
  42. package/dist/es/chunks/p-dropdown-select.js +34 -0
  43. package/dist/es/chunks/p-input-number.js +32 -0
  44. package/dist/es/chunks/p-input-percent.js +15 -4
  45. package/dist/es/chunks/p-input.js +28 -0
  46. package/dist/es/chunks/p-pagination-info.js +9 -5
  47. package/dist/es/chunks/p-pagination.js +24 -14
  48. package/dist/es/chunks/p-select-btn.js +2 -1
  49. package/dist/es/chunks/p-select.js +33 -0
  50. package/dist/es/chunks/p-table-loader.js +20 -0
  51. package/dist/es/chunks/p-tabs.js +12 -0
  52. package/dist/es/chunks/p-textarea.js +20 -0
  53. package/dist/es/index.js +77 -34
  54. package/dist/es/inputClasses.js +4 -4
  55. package/dist/es/p-checkbox.js +8 -1
  56. package/dist/es/p-chips.js +17 -1
  57. package/dist/es/p-close-btn.js +6 -1
  58. package/dist/es/p-drawer.js +90 -2
  59. package/dist/es/p-dropdown.js +2 -1
  60. package/dist/es/p-icon.js +2 -1
  61. package/dist/es/p-input-search.js +13 -1
  62. package/dist/es/p-loading.js +3 -3
  63. package/dist/es/p-modal.js +125 -43
  64. package/dist/es/p-select-pill.js +36 -2
  65. package/dist/es/p-skeleton-loader.js +17 -1
  66. package/dist/es/p-table-filter-icon.js +4 -1
  67. package/dist/es/p-table-header-cell.js +32 -2
  68. package/dist/es/p-table-td.js +1 -1
  69. package/dist/es/p-table.js +2 -0
  70. package/dist/es/p-toggle.js +22 -1
  71. package/dist/es/usePTableHeaderWrap.js +38 -0
  72. package/dist/squirrel/components/p-action-bar/p-action-bar.vue.d.ts +15 -3
  73. package/dist/squirrel/components/p-alert/p-alert.vue.d.ts +18 -5
  74. package/dist/squirrel/components/p-avatar/p-avatar.vue.d.ts +36 -1
  75. package/dist/squirrel/components/p-btn/p-btn.vue.d.ts +21 -5
  76. package/dist/squirrel/components/p-card/p-card.vue.d.ts +21 -8
  77. package/dist/squirrel/components/p-checkbox/p-checkbox.vue.d.ts +26 -8
  78. package/dist/squirrel/components/p-chips/p-chips.vue.d.ts +24 -0
  79. package/dist/squirrel/components/p-close-btn/p-close-btn.vue.d.ts +14 -1
  80. package/dist/squirrel/components/p-date-picker/p-date-picker.vue.d.ts +17 -1
  81. package/dist/squirrel/components/p-drawer/p-drawer.vue.d.ts +153 -15
  82. package/dist/squirrel/components/p-dropdown/p-dropdown.vue.d.ts +11 -2
  83. package/dist/squirrel/components/p-dropdown-select/p-dropdown-select.vue.d.ts +70 -2
  84. package/dist/squirrel/components/p-file-upload/p-file-upload.vue.d.ts +71 -7
  85. package/dist/squirrel/components/p-icon/p-icon.types.d.ts +1 -0
  86. package/dist/squirrel/components/p-icon/p-icon.vue.d.ts +5 -1
  87. package/dist/squirrel/components/p-info-icon/p-info-icon.vue.d.ts +12 -5
  88. package/dist/squirrel/components/p-inline-date-picker/p-inline-date-picker.vue.d.ts +28 -8
  89. package/dist/squirrel/components/p-input/p-input.vue.d.ts +74 -9
  90. package/dist/squirrel/components/p-input-number/p-input-number.vue.d.ts +83 -12
  91. package/dist/squirrel/components/p-input-percent/p-input-percent.vue.d.ts +23 -3
  92. package/dist/squirrel/components/p-input-search/p-input-search.vue.d.ts +25 -1
  93. package/dist/squirrel/components/p-link/p-link.vue.d.ts +1 -1
  94. package/dist/squirrel/components/p-loading/p-loading.vue.d.ts +1 -1
  95. package/dist/squirrel/components/p-modal/p-modal.vue.d.ts +190 -16
  96. package/dist/squirrel/components/p-pagination/p-pagination.vue.d.ts +23 -13
  97. package/dist/squirrel/components/p-pagination-info/p-pagination-info.vue.d.ts +17 -9
  98. package/dist/squirrel/components/p-progress-bar/p-progress-bar.vue.d.ts +21 -1
  99. package/dist/squirrel/components/p-ring-loader/p-ring-loader.vue.d.ts +11 -1
  100. package/dist/squirrel/components/p-select/p-select.vue.d.ts +77 -7
  101. package/dist/squirrel/components/p-select-btn/p-select-btn.vue.d.ts +68 -11
  102. package/dist/squirrel/components/p-select-list/p-select-list.vue.d.ts +2 -2
  103. package/dist/squirrel/components/p-select-pill/p-select-pill.vue.d.ts +72 -2
  104. package/dist/squirrel/components/p-skeleton-loader/p-skeleton-loader.vue.d.ts +40 -0
  105. package/dist/squirrel/components/p-steps/p-steps.vue.d.ts +13 -1
  106. package/dist/squirrel/components/p-table/p-table.types.d.ts +1 -0
  107. package/dist/squirrel/components/p-table/p-table.vue.d.ts +33 -1
  108. package/dist/squirrel/components/p-table/usePTableHeaderWrap.d.ts +4 -0
  109. package/dist/squirrel/components/p-table-header-cell/p-table-filter-icon.vue.d.ts +7 -1
  110. package/dist/squirrel/components/p-table-header-cell/p-table-header-cell.vue.d.ts +59 -4
  111. package/dist/squirrel/components/p-table-loader/p-table-loader.vue.d.ts +41 -1
  112. package/dist/squirrel/components/p-table-sort/p-table-sort.vue.d.ts +13 -3
  113. package/dist/squirrel/components/p-table-td/p-table-td.vue.d.ts +13 -1
  114. package/dist/squirrel/components/p-tabs/p-tabs.vue.d.ts +34 -3
  115. package/dist/squirrel/components/p-tabs-pills/p-tabs-pills.vue.d.ts +23 -1
  116. package/dist/squirrel/components/p-textarea/p-textarea.vue.d.ts +53 -9
  117. package/dist/squirrel/components/p-toggle/p-toggle.vue.d.ts +51 -4
  118. package/dist/squirrel.css +68 -68
  119. package/package.json +24 -22
  120. package/squirrel/components/p-action-bar/p-action-bar.stories.js +5 -5
  121. package/squirrel/components/p-action-bar/p-action-bar.vue +30 -3
  122. package/squirrel/components/p-alert/p-alert.spec.js +4 -4
  123. package/squirrel/components/p-alert/p-alert.stories.js +19 -13
  124. package/squirrel/components/p-alert/p-alert.vue +33 -11
  125. package/squirrel/components/p-avatar/p-avatar.vue +28 -0
  126. package/squirrel/components/p-btn/p-btn.vue +35 -0
  127. package/squirrel/components/p-card/p-card.vue +24 -1
  128. package/squirrel/components/p-checkbox/p-checkbox.vue +23 -1
  129. package/squirrel/components/p-chips/p-chips.vue +24 -0
  130. package/squirrel/components/p-close-btn/p-close-btn.vue +15 -0
  131. package/squirrel/components/p-date-picker/p-date-picker.vue +23 -1
  132. package/squirrel/components/p-drawer/p-drawer.vue +95 -0
  133. package/squirrel/components/p-dropdown/p-dropdown.vue +12 -1
  134. package/squirrel/components/p-dropdown-select/p-dropdown-select.vue +41 -0
  135. package/squirrel/components/p-file-upload/p-file-upload.vue +58 -3
  136. package/squirrel/components/p-icon/p-icon.types.ts +1 -0
  137. package/squirrel/components/p-icon/p-icon.vue +16 -0
  138. package/squirrel/components/p-info-icon/p-info-icon.vue +19 -0
  139. package/squirrel/components/p-inline-date-picker/p-inline-date-picker.vue +32 -0
  140. package/squirrel/components/p-input/p-input.vue +61 -1
  141. package/squirrel/components/p-input-number/p-input-number.vue +78 -1
  142. package/squirrel/components/p-input-percent/p-input-percent.vue +27 -3
  143. package/squirrel/components/p-input-search/p-input-search.vue +30 -2
  144. package/squirrel/components/p-link/p-link.vue +13 -0
  145. package/squirrel/components/p-loading/p-loading.vue +9 -2
  146. package/squirrel/components/p-modal/p-modal-basic.spec.js +29 -3
  147. package/squirrel/components/p-modal/p-modal.vue +182 -35
  148. package/squirrel/components/p-pagination/p-pagination.vue +28 -8
  149. package/squirrel/components/p-pagination-info/p-pagination-info.vue +16 -4
  150. package/squirrel/components/p-progress-bar/p-progress-bar.vue +31 -4
  151. package/squirrel/components/p-ring-loader/p-ring-loader.vue +17 -0
  152. package/squirrel/components/p-select/p-select.vue +50 -1
  153. package/squirrel/components/p-select-btn/p-select-btn.vue +90 -2
  154. package/squirrel/components/p-select-list/p-select-list.vue +7 -0
  155. package/squirrel/components/p-select-pill/p-select-pill.vue +52 -2
  156. package/squirrel/components/p-skeleton-loader/p-skeleton-loader.vue +24 -0
  157. package/squirrel/components/p-steps/p-steps.vue +25 -0
  158. package/squirrel/components/p-table/p-table.spec.js +51 -15
  159. package/squirrel/components/p-table/p-table.types.ts +2 -0
  160. package/squirrel/components/p-table/p-table.vue +46 -4
  161. package/squirrel/components/p-table/usePTableHeaderWrap.spec.js +118 -0
  162. package/squirrel/components/p-table/usePTableHeaderWrap.ts +45 -0
  163. package/squirrel/components/p-table-header-cell/p-table-filter-icon.vue +9 -0
  164. package/squirrel/components/p-table-header-cell/p-table-header-cell.spec.js +5 -1
  165. package/squirrel/components/p-table-header-cell/p-table-header-cell.vue +38 -1
  166. package/squirrel/components/p-table-loader/p-table-loader.vue +28 -0
  167. package/squirrel/components/p-table-sort/p-table-sort.vue +19 -1
  168. package/squirrel/components/p-table-td/p-table-td.vue +20 -0
  169. package/squirrel/components/p-tabs/p-tabs.stories.js +2 -2
  170. package/squirrel/components/p-tabs/p-tabs.vue +33 -1
  171. package/squirrel/components/p-tabs-pills/p-tabs-pills.vue +33 -0
  172. package/squirrel/components/p-textarea/p-textarea.vue +43 -1
  173. package/squirrel/components/p-toggle/p-toggle.vue +44 -1
  174. package/squirrel/assets/pagination-left-icon.svg +0 -5
  175. package/squirrel/assets/pagination-right-icon.svg +0 -5
@@ -1,10 +1,18 @@
1
1
  import { type FileUploadFile } from './p-file-upload.types';
2
2
  import { type PropType } from 'vue';
3
3
  declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
+ /**
5
+ * The current file(s) value (v-model).
6
+ * Supports both single file and multiple files based on the multiple prop.
7
+ */
4
8
  modelValue: {
5
9
  type: PropType<FileUploadFile | FileUploadFile[]>;
6
10
  default: () => never[];
7
11
  };
12
+ /**
13
+ * Whether multiple files can be selected.
14
+ * When true, allows selecting multiple files at once.
15
+ */
8
16
  multiple: {
9
17
  type: BooleanConstructor;
10
18
  default: boolean;
@@ -17,39 +25,71 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
17
25
  type: PropType<string[] | readonly string[]>;
18
26
  default: () => never[];
19
27
  };
28
+ /**
29
+ * Whether the file upload is disabled.
30
+ * Prevents user interaction when true.
31
+ */
20
32
  disabled: {
21
33
  type: BooleanConstructor;
22
34
  default: boolean;
23
35
  };
36
+ /**
37
+ * Whether the file upload is required.
38
+ * Adds required attribute and visual indicator.
39
+ */
24
40
  required: {
25
41
  type: BooleanConstructor;
26
42
  default: boolean;
27
43
  };
44
+ /**
45
+ * Error message to display below the file upload.
46
+ * When provided, the upload area will show error styling.
47
+ */
28
48
  errorMsg: {
29
49
  type: StringConstructor;
30
50
  default: string;
31
51
  };
52
+ /**
53
+ * Text label for the file upload field.
54
+ * Displayed above the upload area.
55
+ */
32
56
  label: {
33
57
  type: StringConstructor;
34
58
  default: string;
35
59
  };
60
+ /**
61
+ * Maximum file size in bytes.
62
+ * Files exceeding this size will be rejected with an error message.
63
+ */
36
64
  maxSizeInBytes: {
37
65
  type: NumberConstructor;
38
66
  default: number;
39
67
  };
68
+ /**
69
+ * Maximum number of files that can be uploaded.
70
+ * Only applies when multiple is true.
71
+ */
40
72
  maxNumberOfFiles: {
41
73
  type: NumberConstructor;
42
74
  default: number;
43
75
  };
44
- }>, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
45
- "update:modelValue": (...args: any[]) => void;
46
- "file-removed": (...args: any[]) => void;
47
- "file-added": (...args: any[]) => void;
76
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
77
+ "update:modelValue": (value: FileUploadFile | FileUploadFile[]) => any;
78
+ "file-removed": (file: FileUploadFile) => any;
79
+ "file-added": (files: FileUploadFile[]) => any;
48
80
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
81
+ /**
82
+ * The current file(s) value (v-model).
83
+ * Supports both single file and multiple files based on the multiple prop.
84
+ */
49
85
  modelValue: {
50
86
  type: PropType<FileUploadFile | FileUploadFile[]>;
51
87
  default: () => never[];
52
88
  };
89
+ /**
90
+ * Whether multiple files can be selected.
91
+ * When true, allows selecting multiple files at once.
92
+ */
53
93
  multiple: {
54
94
  type: BooleanConstructor;
55
95
  default: boolean;
@@ -62,34 +102,58 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
62
102
  type: PropType<string[] | readonly string[]>;
63
103
  default: () => never[];
64
104
  };
105
+ /**
106
+ * Whether the file upload is disabled.
107
+ * Prevents user interaction when true.
108
+ */
65
109
  disabled: {
66
110
  type: BooleanConstructor;
67
111
  default: boolean;
68
112
  };
113
+ /**
114
+ * Whether the file upload is required.
115
+ * Adds required attribute and visual indicator.
116
+ */
69
117
  required: {
70
118
  type: BooleanConstructor;
71
119
  default: boolean;
72
120
  };
121
+ /**
122
+ * Error message to display below the file upload.
123
+ * When provided, the upload area will show error styling.
124
+ */
73
125
  errorMsg: {
74
126
  type: StringConstructor;
75
127
  default: string;
76
128
  };
129
+ /**
130
+ * Text label for the file upload field.
131
+ * Displayed above the upload area.
132
+ */
77
133
  label: {
78
134
  type: StringConstructor;
79
135
  default: string;
80
136
  };
137
+ /**
138
+ * Maximum file size in bytes.
139
+ * Files exceeding this size will be rejected with an error message.
140
+ */
81
141
  maxSizeInBytes: {
82
142
  type: NumberConstructor;
83
143
  default: number;
84
144
  };
145
+ /**
146
+ * Maximum number of files that can be uploaded.
147
+ * Only applies when multiple is true.
148
+ */
85
149
  maxNumberOfFiles: {
86
150
  type: NumberConstructor;
87
151
  default: number;
88
152
  };
89
153
  }>> & Readonly<{
90
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
91
- "onFile-removed"?: ((...args: any[]) => any) | undefined;
92
- "onFile-added"?: ((...args: any[]) => any) | undefined;
154
+ "onUpdate:modelValue"?: ((value: FileUploadFile | FileUploadFile[]) => any) | undefined;
155
+ "onFile-removed"?: ((file: FileUploadFile) => any) | undefined;
156
+ "onFile-added"?: ((files: FileUploadFile[]) => any) | undefined;
93
157
  }>, {
94
158
  label: string;
95
159
  disabled: boolean;
@@ -35,5 +35,6 @@ export declare const P_ICON_ALIASES: {
35
35
  readonly info: "streamline:information-circle";
36
36
  readonly help: "ph:question";
37
37
  readonly search: "streamline:magnifying-glass-solid";
38
+ readonly warning: "ri:error-warning-line";
38
39
  };
39
40
  export type PIconAlias = keyof typeof P_ICON_ALIASES;
@@ -2,7 +2,11 @@ import 'iconify-icon';
2
2
  import { type PIconAlias } from './p-icon.types';
3
3
  import { type IconifyIconProperties } from 'iconify-icon';
4
4
  interface Props extends /* @vue-ignore */ IconifyIconProperties {
5
+ /**
6
+ * The icon to display. Can be an icon alias or any valid Iconify icon name.
7
+ * Icon aliases provide consistent icon naming across the application.
8
+ */
5
9
  icon: PIconAlias | (string & {});
6
10
  }
7
- declare const _default: import("vue").DefineComponent<Props, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
12
  export default _default;
@@ -1,11 +1,18 @@
1
+ type __VLS_Slots = {
2
+ /**
3
+ * Custom tooltip content - overrides the text prop.
4
+ * Use this slot for custom tooltip content instead of the text prop.
5
+ */
6
+ default?: () => unknown;
7
+ };
1
8
  type Props = {
9
+ /**
10
+ * Text content for the tooltip.
11
+ * If not provided, you can use the default slot instead.
12
+ */
2
13
  text?: string | null;
3
14
  };
4
- declare var __VLS_12: {};
5
- type __VLS_Slots = {} & {
6
- default?: (props: typeof __VLS_12) => any;
7
- };
8
- declare const __VLS_component: import("vue").DefineComponent<Props, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
15
+ declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
9
16
  text: string | null;
10
17
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
18
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
@@ -1,21 +1,41 @@
1
1
  import { type VueDatePickerProps } from '@vuepic/vue-datepicker';
2
+ type __VLS_Slots = {
3
+ /**
4
+ * Custom label content - overrides the label prop.
5
+ * @param {string} label - The label text
6
+ * @param {string} label-classes - CSS classes for the label
7
+ */
8
+ label?: (props: {
9
+ label: string;
10
+ labelClasses: string;
11
+ }) => unknown;
12
+ };
2
13
  type Props = {
14
+ /**
15
+ * Text label for the date picker field.
16
+ * If not provided, you can use the label slot instead.
17
+ */
3
18
  label?: string;
19
+ /**
20
+ * Error message to display below the date picker.
21
+ * When provided, the date picker will show error styling.
22
+ */
4
23
  errorMsg?: string;
24
+ /**
25
+ * Whether the date picker is required.
26
+ * Adds required attribute and visual indicator.
27
+ */
5
28
  required?: boolean;
6
29
  } & VueDatePickerProps;
7
30
  type __VLS_Props = Props;
8
31
  type __VLS_PublicProps = __VLS_Props & {
32
+ /**
33
+ * The selected date value (v-model).
34
+ * Supports two-way binding for form inputs.
35
+ */
9
36
  modelValue?: Date | string | null;
10
37
  };
11
- declare var __VLS_1: {
12
- label: string;
13
- labelClasses: string;
14
- };
15
- type __VLS_Slots = {} & {
16
- label?: (props: typeof __VLS_1) => any;
17
- };
18
- declare const __VLS_component: import("vue").DefineComponent<__VLS_PublicProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
38
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
39
  "update:modelValue": (value: string | Date | null) => any;
20
40
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
21
41
  "onUpdate:modelValue"?: ((value: string | Date | null) => any) | undefined;
@@ -7,88 +7,153 @@ declare const INPUT_TYPES: {
7
7
  type InputTypeKeys = keyof typeof INPUT_TYPES;
8
8
  type InputType = (typeof INPUT_TYPES)[InputTypeKeys];
9
9
  declare const _default: __VLS_WithSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
10
+ /**
11
+ * The current value of the input (v-model).
12
+ * Supports two-way binding for form inputs.
13
+ */
10
14
  modelValue: {
11
15
  type: PropType<string | number | boolean | null>;
12
16
  default: string;
13
17
  };
18
+ /**
19
+ * The type of the input field.
20
+ * Valid values: 'text', 'password'
21
+ */
14
22
  type: {
15
23
  type: PropType<InputType>;
16
24
  default: string;
17
25
  validator(value: InputType): boolean;
18
26
  };
27
+ /**
28
+ * Text label for the input field.
29
+ * If not provided, you can use the label slot instead.
30
+ */
19
31
  label: {
20
32
  type: StringConstructor;
21
33
  default: string;
22
34
  };
35
+ /**
36
+ * Error message to display below the input.
37
+ * When provided, the input will show error styling.
38
+ */
23
39
  errorMsg: {
24
40
  type: StringConstructor;
25
41
  default: string;
26
42
  };
43
+ /**
44
+ * Whether the input is required.
45
+ * Adds required attribute and visual indicator.
46
+ */
27
47
  required: {
28
48
  type: BooleanConstructor;
29
49
  default: boolean;
30
50
  };
51
+ /**
52
+ * The size of the input - affects padding, font size, and spacing.
53
+ * Valid values: 'sm', 'md', 'lg'
54
+ */
31
55
  size: {
32
56
  type: PropType<Size>;
33
57
  default: string;
34
58
  validator(value: Size): boolean;
35
59
  };
60
+ /**
61
+ * Whether the input has rounded corners.
62
+ * Applies rounded styling to the input field.
63
+ */
36
64
  rounded: {
37
65
  type: BooleanConstructor;
38
66
  default: boolean;
39
67
  };
40
- }>, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
41
- "update:modelValue": (...args: any[]) => void;
68
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
69
+ "update:modelValue": (value: string) => any;
42
70
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
71
+ /**
72
+ * The current value of the input (v-model).
73
+ * Supports two-way binding for form inputs.
74
+ */
43
75
  modelValue: {
44
76
  type: PropType<string | number | boolean | null>;
45
77
  default: string;
46
78
  };
79
+ /**
80
+ * The type of the input field.
81
+ * Valid values: 'text', 'password'
82
+ */
47
83
  type: {
48
84
  type: PropType<InputType>;
49
85
  default: string;
50
86
  validator(value: InputType): boolean;
51
87
  };
88
+ /**
89
+ * Text label for the input field.
90
+ * If not provided, you can use the label slot instead.
91
+ */
52
92
  label: {
53
93
  type: StringConstructor;
54
94
  default: string;
55
95
  };
96
+ /**
97
+ * Error message to display below the input.
98
+ * When provided, the input will show error styling.
99
+ */
56
100
  errorMsg: {
57
101
  type: StringConstructor;
58
102
  default: string;
59
103
  };
104
+ /**
105
+ * Whether the input is required.
106
+ * Adds required attribute and visual indicator.
107
+ */
60
108
  required: {
61
109
  type: BooleanConstructor;
62
110
  default: boolean;
63
111
  };
112
+ /**
113
+ * The size of the input - affects padding, font size, and spacing.
114
+ * Valid values: 'sm', 'md', 'lg'
115
+ */
64
116
  size: {
65
117
  type: PropType<Size>;
66
118
  default: string;
67
119
  validator(value: Size): boolean;
68
120
  };
121
+ /**
122
+ * Whether the input has rounded corners.
123
+ * Applies rounded styling to the input field.
124
+ */
69
125
  rounded: {
70
126
  type: BooleanConstructor;
71
127
  default: boolean;
72
128
  };
73
129
  }>> & Readonly<{
74
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
130
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
75
131
  }>, {
76
- type: string;
77
132
  size: "sm" | "md" | "lg";
133
+ type: string;
78
134
  label: string;
79
135
  required: boolean;
80
136
  modelValue: string | number | boolean | null;
81
137
  rounded: boolean;
82
138
  errorMsg: string;
83
139
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, {
140
+ /**
141
+ * Custom label content - overrides the label prop.
142
+ * @param {string} label - The label text
143
+ * @param {string} label-classes - CSS classes for the label
144
+ */
84
145
  label?: (props: {
85
146
  label: string;
86
147
  labelClasses: string;
87
- }) => any;
88
- } & {
89
- prefix?: (props: {}) => any;
90
- } & {
91
- suffix?: (props: {}) => any;
148
+ }) => unknown;
149
+ /**
150
+ * Content displayed before the input field.
151
+ */
152
+ prefix?: () => unknown;
153
+ /**
154
+ * Content displayed after the input field.
155
+ */
156
+ suffix?: () => unknown;
92
157
  }>;
93
158
  export default _default;
94
159
  type __VLS_WithSlots<T, S> = T & {
@@ -1,44 +1,83 @@
1
1
  import { type Size } from '../p-btn/p-btn.types';
2
2
  import { type PropType } from 'vue';
3
- declare var __VLS_1: {
4
- label: string;
5
- labelClasses: string;
6
- }, __VLS_7: {};
7
- type __VLS_Slots = {} & {
8
- label?: (props: typeof __VLS_1) => any;
9
- } & {
10
- prefix?: (props: typeof __VLS_7) => any;
3
+ type __VLS_Slots = {
4
+ /**
5
+ * Custom label content - overrides the label prop.
6
+ * @param {string} label - The label text
7
+ * @param {string} label-classes - CSS classes for the label
8
+ */
9
+ label?: (props: {
10
+ label: string;
11
+ labelClasses: string;
12
+ }) => unknown;
13
+ /**
14
+ * Custom prefix content - overrides the prefixString prop.
15
+ * Use this slot for custom prefix content instead of the prefixString prop.
16
+ */
17
+ prefix?: () => unknown;
11
18
  };
12
19
  declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
20
+ /**
21
+ * The current numeric value of the input (v-model).
22
+ * Supports two-way binding for form inputs.
23
+ */
13
24
  modelValue: {
14
25
  type: PropType<number | string | null | undefined>;
15
26
  default: null;
16
27
  };
28
+ /**
29
+ * Text label for the input field.
30
+ * If not provided, you can use the label slot instead.
31
+ */
17
32
  label: {
18
33
  type: StringConstructor;
19
34
  default: string;
20
35
  };
36
+ /**
37
+ * Error message to display below the input.
38
+ * When provided, the input will show error styling.
39
+ */
21
40
  errorMsg: {
22
41
  type: StringConstructor;
23
42
  default: string;
24
43
  };
44
+ /**
45
+ * Whether the input is required.
46
+ * Adds required attribute and visual indicator.
47
+ */
25
48
  required: {
26
49
  type: BooleanConstructor;
27
50
  default: boolean;
28
51
  };
52
+ /**
53
+ * The size of the input - affects padding, font size, and spacing.
54
+ * Valid values: 'sm', 'md', 'lg'
55
+ */
29
56
  size: {
30
57
  type: PropType<Size>;
31
58
  default: string;
32
59
  validator(value: Size): boolean;
33
60
  };
61
+ /**
62
+ * Whether to select all text when the input receives focus.
63
+ * Provides better UX for number input fields.
64
+ */
34
65
  selectOnClick: {
35
66
  type: BooleanConstructor;
36
67
  default: boolean;
37
68
  };
69
+ /**
70
+ * Text for the info tooltip displayed next to the label.
71
+ * Uses PInfoIcon component for consistent tooltip styling.
72
+ */
38
73
  tooltipText: {
39
74
  type: StringConstructor;
40
75
  default: string;
41
76
  };
77
+ /**
78
+ * String to display as prefix in the input field.
79
+ * Can be overridden by the prefix slot for custom content.
80
+ */
42
81
  prefixString: {
43
82
  type: StringConstructor;
44
83
  default: string;
@@ -46,45 +85,77 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
46
85
  }>, {
47
86
  setValue: (number: number | null) => void;
48
87
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
49
- change: (...args: any[]) => void;
50
- "update:modelValue": (...args: any[]) => void;
88
+ change: (value: number | null) => any;
89
+ "update:modelValue": (value: number | null) => any;
51
90
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
91
+ /**
92
+ * The current numeric value of the input (v-model).
93
+ * Supports two-way binding for form inputs.
94
+ */
52
95
  modelValue: {
53
96
  type: PropType<number | string | null | undefined>;
54
97
  default: null;
55
98
  };
99
+ /**
100
+ * Text label for the input field.
101
+ * If not provided, you can use the label slot instead.
102
+ */
56
103
  label: {
57
104
  type: StringConstructor;
58
105
  default: string;
59
106
  };
107
+ /**
108
+ * Error message to display below the input.
109
+ * When provided, the input will show error styling.
110
+ */
60
111
  errorMsg: {
61
112
  type: StringConstructor;
62
113
  default: string;
63
114
  };
115
+ /**
116
+ * Whether the input is required.
117
+ * Adds required attribute and visual indicator.
118
+ */
64
119
  required: {
65
120
  type: BooleanConstructor;
66
121
  default: boolean;
67
122
  };
123
+ /**
124
+ * The size of the input - affects padding, font size, and spacing.
125
+ * Valid values: 'sm', 'md', 'lg'
126
+ */
68
127
  size: {
69
128
  type: PropType<Size>;
70
129
  default: string;
71
130
  validator(value: Size): boolean;
72
131
  };
132
+ /**
133
+ * Whether to select all text when the input receives focus.
134
+ * Provides better UX for number input fields.
135
+ */
73
136
  selectOnClick: {
74
137
  type: BooleanConstructor;
75
138
  default: boolean;
76
139
  };
140
+ /**
141
+ * Text for the info tooltip displayed next to the label.
142
+ * Uses PInfoIcon component for consistent tooltip styling.
143
+ */
77
144
  tooltipText: {
78
145
  type: StringConstructor;
79
146
  default: string;
80
147
  };
148
+ /**
149
+ * String to display as prefix in the input field.
150
+ * Can be overridden by the prefix slot for custom content.
151
+ */
81
152
  prefixString: {
82
153
  type: StringConstructor;
83
154
  default: string;
84
155
  };
85
156
  }>> & Readonly<{
86
- onChange?: ((...args: any[]) => any) | undefined;
87
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
157
+ onChange?: ((value: number | null) => any) | undefined;
158
+ "onUpdate:modelValue"?: ((value: number | null) => any) | undefined;
88
159
  }>, {
89
160
  size: "sm" | "md" | "lg";
90
161
  label: string;
@@ -1,27 +1,47 @@
1
1
  import { type Size } from '../p-btn/p-btn.types';
2
2
  import { type PropType } from 'vue';
3
3
  declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
+ /**
5
+ * The current value (v-model).
6
+ * Stored as a decimal (0.5 = 50%) but displayed as a percentage.
7
+ * Supports two-way binding for form inputs.
8
+ */
4
9
  modelValue: {
5
10
  type: PropType<number | string | null | undefined>;
6
11
  default: null;
7
12
  };
13
+ /**
14
+ * The size of the input field.
15
+ * Valid values: 'sm', 'md', 'lg'
16
+ * @values sm, md, lg
17
+ */
8
18
  size: {
9
19
  type: PropType<Size>;
10
20
  default: string;
11
21
  };
12
- }>, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
13
- "update:modelValue": (...args: any[]) => void;
22
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
23
+ "update:modelValue": (value: number | null) => any;
14
24
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
25
+ /**
26
+ * The current value (v-model).
27
+ * Stored as a decimal (0.5 = 50%) but displayed as a percentage.
28
+ * Supports two-way binding for form inputs.
29
+ */
15
30
  modelValue: {
16
31
  type: PropType<number | string | null | undefined>;
17
32
  default: null;
18
33
  };
34
+ /**
35
+ * The size of the input field.
36
+ * Valid values: 'sm', 'md', 'lg'
37
+ * @values sm, md, lg
38
+ */
19
39
  size: {
20
40
  type: PropType<Size>;
21
41
  default: string;
22
42
  };
23
43
  }>> & Readonly<{
24
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
44
+ "onUpdate:modelValue"?: ((value: number | null) => any) | undefined;
25
45
  }>, {
26
46
  size: "sm" | "md" | "lg";
27
47
  modelValue: string | number | null | undefined;