@fewangsit/wangsvue-fats 1.0.0-alpha.8 → 1.0.0-alpha.81

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 (155) hide show
  1. package/components/animation/Animation.vue.d.ts +9 -1
  2. package/components/assetinfo/AssetInfo.vue.d.ts +39 -0
  3. package/components/badgegroup/BadgeGroup.vue.d.ts +3 -1
  4. package/components/basetree/BaseTree.vue.d.ts +6 -1
  5. package/components/button/Button.vue.d.ts +7 -3
  6. package/components/buttonbulkaction/ButtonBulkAction.vue.d.ts +1 -0
  7. package/components/buttonradio/ButtonRadio.vue.d.ts +1 -0
  8. package/components/buttonscan/ButtonScan.vue.d.ts +202 -0
  9. package/components/buttonsearchbyscan/ButtonSearchByScan.vue.d.ts +44 -0
  10. package/components/buttonselecttree/ButtonSelectTree.vue.d.ts +5 -2
  11. package/components/buttonsplit/ButtonSplit.vue.d.ts +352 -34
  12. package/components/buttonsync/ButtonSync.vue.d.ts +22 -0
  13. package/components/buttontoggle/ButtonToggle.vue.d.ts +1 -0
  14. package/components/buttonviewlog/ButtonViewLog.vue.d.ts +17 -0
  15. package/components/calendar/Calendar.vue.d.ts +32 -4
  16. package/components/card/Card.vue.d.ts +1 -0
  17. package/components/checkbox/Checkbox.vue.d.ts +1 -0
  18. package/components/datatable/DataTable.vue.d.ts +12 -4
  19. package/components/dialog/Dialog.vue.d.ts +4 -3
  20. package/components/dialogassetnamedetail/DialogAssetNameDetail.vue.d.ts +46 -0
  21. package/components/dialogassetnamedetail/options/columns.d.ts +2 -0
  22. package/components/dialogassetnamedetail/options/filter.d.ts +2 -0
  23. package/components/dialogconfirm/DialogConfirm.vue.d.ts +1 -0
  24. package/components/dialogform/DialogForm.vue.d.ts +3 -2
  25. package/components/dialogprintqr/DialogPrintQR.vue.d.ts +18 -0
  26. package/components/dialogreportdamage/DialogReportDamage.vue.d.ts +34 -0
  27. package/components/dialogreportmissing/DialogReportMissing.vue.d.ts +26 -0
  28. package/components/dialogreporttag/DialogReportTag.vue.d.ts +31 -0
  29. package/components/dialogselecttree/DialogSelectTree.vue.d.ts +3 -2
  30. package/components/dialogselectuser/DialogSelectUser.vue.d.ts +102 -0
  31. package/components/dialogselectuser/options/columns.d.ts +3 -0
  32. package/components/dropdown/Dropdown.vue.d.ts +23 -4
  33. package/components/editor/Editor.vue.d.ts +1 -0
  34. package/components/fieldwrapper/FieldWrapper.vue.d.ts +12 -2
  35. package/components/fileupload/FileUpload.vue.d.ts +1 -0
  36. package/components/filtercontainer/FilterContainer.vue.d.ts +13 -8
  37. package/components/form/Form.vue.d.ts +2 -1
  38. package/components/icon/Icon.vue.d.ts +3 -0
  39. package/components/image/Image.vue.d.ts +8 -0
  40. package/components/imagecompressor/ImageCompressor.vue.d.ts +6 -0
  41. package/components/index.d.ts +26 -18
  42. package/components/inputcurrency/helpers/currency.helper.d.ts +5 -1
  43. package/components/inputemail/InputEmail.vue.d.ts +1 -0
  44. package/components/inputnumber/InputNumber.vue.d.ts +6 -0
  45. package/components/inputpassword/InputPassword.vue.d.ts +1 -0
  46. package/components/inputrangenumber/InputRangeNumber.vue.d.ts +1 -0
  47. package/components/inputsearch/InputSearch.vue.d.ts +36 -0
  48. package/components/inputtext/InputText.vue.d.ts +2 -1
  49. package/components/inputurl/InputURL.vue.d.ts +4 -2
  50. package/components/invisiblefield/InvisibleField.vue.d.ts +32 -36
  51. package/components/languagedropdown/LanguageDropdown.vue.d.ts +5 -19
  52. package/components/litedropdown/LiteDropdown.vue.d.ts +5 -3
  53. package/components/loading/store/loading.store.d.ts +3 -3
  54. package/components/menu/Menu.vue.d.ts +2 -1
  55. package/components/multiselect/MultiSelect.vue.d.ts +7 -4
  56. package/components/overlaypanel/OverlayPanel.vue.d.ts +1 -0
  57. package/components/paginator/Paginator.vue.d.ts +285 -0
  58. package/components/tabmenu/TabMenu.vue.d.ts +6 -190
  59. package/components/tagtype/TagType.vue.d.ts +26 -0
  60. package/components/textarea/Textarea.vue.d.ts +2 -1
  61. package/components/timeline/Timeline.vue.d.ts +14 -2
  62. package/components/toast/Toast.vue.d.ts +2 -1
  63. package/components/toggleswitch/ToggleSwitch.vue.d.ts +1 -0
  64. package/components/transactionroles/TransactionRoles.vue.d.ts +58 -0
  65. package/components/tree/Tree.vue.d.ts +6 -3
  66. package/components/tree/helpers/filterNodeKeys.helper.d.ts +8 -2
  67. package/components/tree/helpers/flattenTreeNodeChildren.helper.d.ts +3 -1
  68. package/components/username/UserName.vue.d.ts +6 -1
  69. package/components/userwithicon/UserWithIcon.vue.d.ts +21 -0
  70. package/config/defaultProps.d.ts +1 -1
  71. package/config/index.d.ts +1 -1
  72. package/config/locale.d.ts +1 -1
  73. package/directives/focus.d.ts +1 -1
  74. package/event-bus/index.d.ts +55 -50
  75. package/event-bus/mitt.d.ts +29 -14
  76. package/main.d.ts +34 -2
  77. package/package.json +10 -6
  78. package/plugins/VueHtmlToPaper.d.ts +11 -0
  79. package/plugins/WangsVue.d.ts +266 -98
  80. package/plugins/formValidation.d.ts +15 -6
  81. package/plugins/i18n-extension.d.ts +1 -1
  82. package/plugins/i18n.d.ts +89 -113
  83. package/stats.html +4949 -0
  84. package/style.css +1 -1
  85. package/utils/date.util.d.ts +64 -31
  86. package/utils/formatTagCode.util.d.ts +1 -0
  87. package/utils/getSeverityByAssetStatus.util.d.ts +3 -0
  88. package/utils/index.d.ts +6 -20
  89. package/utils/listenSidebarChanges.util.d.ts +16 -0
  90. package/utils/object.util.d.ts +14 -3
  91. package/utils/role.util.d.ts +67 -1
  92. package/utils/toast.util.d.ts +78 -78
  93. package/wangsvue-fats.js +55831 -0
  94. package/wangsvue-fats.system.js +204 -267
  95. package/assets/json/currencies.json.d.ts +0 -1068
  96. package/assets/lottie/admin/loading-page.lottie +0 -0
  97. package/assets/lottie/admin/loading-table.lottie +0 -0
  98. package/assets/lottie/admin/no-data.lottie +0 -0
  99. package/assets/lottie/supplyasset/loading-page.lottie +0 -0
  100. package/assets/lottie/supplyasset/loading-table.lottie +0 -0
  101. package/assets/lottie/supplyasset/no-data.lottie +0 -0
  102. package/assets/lottie/workspace/loading-page.lottie +0 -0
  103. package/assets/lottie/workspace/loading-plane.lottie +0 -0
  104. package/assets/lottie/workspace/loading-table.lottie +0 -0
  105. package/assets/lottie/workspace/no-data.lottie +0 -0
  106. package/build-entry.d.ts +0 -14
  107. package/components/buttonsplit/ButtonSplit.d.ts +0 -350
  108. package/components/calendar/BaseCalendar.vue.d.ts +0 -86
  109. package/components/codesnippet/CodeSnippet.vue.d.ts +0 -14
  110. package/components/customcolumn/ColumnList.vue.d.ts +0 -27
  111. package/components/customcolumn/helpers/setVisibilityColumn.helper.d.ts +0 -12
  112. package/components/datatable/MultiRow.vue.d.ts +0 -16
  113. package/components/datatable/helpers/adjustMenuPosition.helper.d.ts +0 -1
  114. package/components/datatable/helpers/filter.helper.d.ts +0 -28
  115. package/components/datatable/helpers/index.d.ts +0 -3
  116. package/components/datatable/helpers/readConfig.helper.d.ts +0 -2
  117. package/components/datatable/store/dataTable.store.d.ts +0 -22
  118. package/components/editor/CodeSnippetAdapter.vue.d.ts +0 -92
  119. package/components/editor/EditorButton.vue.d.ts +0 -15
  120. package/components/editor/MentionList.vue.d.ts +0 -35
  121. package/components/editor/MentionSection.vue.d.ts +0 -92
  122. package/components/editor/codeSnippetExtension.d.ts +0 -3
  123. package/components/editor/mentionSectionExtension.d.ts +0 -3
  124. package/components/editor/suggestion.d.ts +0 -2
  125. package/components/filtercontainer/helpers/applyFilter.helper.d.ts +0 -5
  126. package/components/filtercontainer/helpers/formatDateTimeRange.helper.d.ts +0 -7
  127. package/components/filtercontainer/helpers/getOption.helper.d.ts +0 -3
  128. package/components/gallerypreview/GalleryPreview.vue.d.ts +0 -31
  129. package/components/helpers/convertToArrayClass.helper.d.ts +0 -2
  130. package/components/helpers/index.d.ts +0 -2
  131. package/components/helpers/label.d.ts +0 -15
  132. package/components/imagecompressor/BackgroundImageCropper.vue.d.ts +0 -36
  133. package/components/imagecompressor/ImageInputInfo.vue.d.ts +0 -30
  134. package/components/inputgroup/InputGroup.vue.d.ts +0 -141
  135. package/components/inputphonenumber/helpers/getUserLocation.helper.d.ts +0 -8
  136. package/components/languagedropdown/LanguageDropdownOption.vue.d.ts +0 -18
  137. package/components/menu/helpers/filterMenu.helper.d.ts +0 -12
  138. package/components/menu/helpers/index.d.ts +0 -1
  139. package/components/menuitem/MenuItem.vue.d.ts +0 -19
  140. package/components/progressbar/ProgressBar.vue.d.ts +0 -72
  141. package/components/quickfilter/QuickFilter.vue.d.ts +0 -25
  142. package/components/timeline/TimelineContentByType.vue.d.ts +0 -16
  143. package/components/tooltipspan/TooltipSpan.vue.d.ts +0 -20
  144. package/components/tree/helpers/index.d.ts +0 -3
  145. package/components/usergroup/UserGroup.vue.d.ts +0 -57
  146. package/components/validatormessage/ValidatorMessage.vue.d.ts +0 -12
  147. package/types/options.type.d.ts +0 -16
  148. package/utils/addAttachment.util.d.ts +0 -43
  149. package/utils/exportToExcel.util.d.ts +0 -20
  150. package/utils/filterOptions.util.d.ts +0 -3
  151. package/utils/genPlaceholder.util.d.ts +0 -8
  152. package/utils/getAttachmentIcon.util.d.ts +0 -8
  153. package/utils/mergePropsWithDefaults.util.d.ts +0 -20
  154. package/utils/textFormatter.util.d.ts +0 -17
  155. package/wangsvue-fats.es.js +0 -132301
@@ -1,131 +1,299 @@
1
1
  import { Plugin } from 'vue';
2
- import { PrimeVueLocaleOptions } from 'primevue/config';
3
- import { FieldWrapperLocaleConfig, FieldWrapperProps } from '../components/fieldwrapper/FieldWrapper.vue.d';
4
- import { InputTextLocaleConfig, InputTextProps } from '../components/inputtext/InputText.vue.d';
5
- import { TreeProps } from '../components/tree/Tree.vue.d';
6
- import { DialogConfirmLocaleConfig } from '../components/dialogconfirm/DialogConfirm.vue.d';
7
- import { CustomColumnLocaleConfig } from '../components/customcolumn/CustomColumn.vue.d';
2
+ import { AnimationDefaultConfig } from '../components/animation/Animation.vue.d';
3
+ import { BadgeComponentConfigs } from '../components/badge/Badge.vue.d';
4
+ import {
5
+ ButtonBulkActionLocaleConfig,
6
+ ButtonBulkActionProps,
7
+ } from '../components/buttonbulkaction/ButtonBulkAction.vue.d';
8
8
  import { ButtonSearchLocaleConfig } from '../components/buttonsearch/ButtonSearch.vue.d';
9
+ import {
10
+ CalendarLocaleConfig,
11
+ CalendarPresetOptions,
12
+ } from '../components/calendar/Calendar.vue.d';
13
+ import { CustomColumnLocaleConfig } from '../components/customcolumn/CustomColumn.vue.d';
14
+ import {
15
+ DataTableLocaleConfig,
16
+ DataTableProps,
17
+ } from '../components/datatable/DataTable.vue.d';
18
+ import { DialogConfirmLocaleConfig } from '../components/dialogconfirm/DialogConfirm.vue.d';
19
+ import { DialogFormLocaleConfig } from '../components/dialogform/DialogForm.vue.d';
20
+ import {
21
+ DropdownLocaleConfig,
22
+ DropdownProps,
23
+ } from '../components/dropdown/Dropdown.vue.d';
24
+ import {
25
+ FieldWrapperLocaleConfig,
26
+ FieldWrapperProps,
27
+ } from '../components/fieldwrapper/FieldWrapper.vue.d';
9
28
  import { FilterContainerLocaleConfig } from '../components/filtercontainer/FilterContainer.vue.d';
10
- import { MultiSelectLocaleConfig } from '../components/multiselect/MultiSelect.vue.d';
11
- import { DropdownLocaleConfig, DropdownProps } from '../components/dropdown/Dropdown.vue.d';
29
+ import { ImageProps } from '../components/image/Image.vue.d';
30
+ import { ImageCompressorLocaleConfig } from '../components/imagecompressor/ImageCompressor.vue.d';
12
31
  import { InputCurrencyLocaleConfig } from '../components/inputcurrency/InputCurrency.vue.d';
13
- import { TextareaLocaleConfig } from '../components/textarea/Textarea.vue.d';
14
- import { InputrangeNumberLocaleConfig } from '../components/inputrangenumber/InputRangeNumber.vue.d';
15
- import { DialogFormLocaleConfig } from '../components/dialogform/DialogForm.vue.d';
16
- import { InputPhoneNumberLocaleConfig } from '../components/inputphonenumber/InputPhoneNumber.vue.d';
32
+ import { InputEmailProps } from '../components/inputemail/InputEmail.vue.d';
17
33
  import { InputNumberLocaleConfig } from '../components/inputnumber/InputNumber.vue.d';
18
- import { CalendarLocaleConfig, CalendarPresetOptions } from '../components/calendar/Calendar.vue.d';
19
- import { OverlayPanelPassThroughOptions } from '../components/overlaypanel/OverlayPanel.vue.d';
34
+ import { InputPhoneNumberLocaleConfig } from '../components/inputphonenumber/InputPhoneNumber.vue.d';
35
+ import { InputrangeNumberLocaleConfig } from '../components/inputrangenumber/InputRangeNumber.vue.d';
36
+ import {
37
+ InputTextLocaleConfig,
38
+ InputTextProps,
39
+ } from '../components/inputtext/InputText.vue.d';
20
40
  import { InputURLProps } from '../components/inputurl/InputURL.vue.d';
21
- import { InputEmailProps } from '../components/inputemail/InputEmail.vue.d';
22
- import { ImageProps } from '../components/image/Image.vue.d';
23
- import { MenuLocaleConfig } from '../components/menu/Menu.vue.d';
24
- import { ButtonBulkActionLocaleConfig, ButtonBulkActionProps } from '../components/buttonbulkaction/ButtonBulkAction.vue.d';
25
- import { AnimationDefaultConfig } from '../components/animation/Animation.vue.d';
26
41
  import { LoadingPresetOptions } from '../components/loading/Loading.vue.d';
27
- import { DataTableLocaleConfig, DataTableProps } from '../components/datatable/DataTable.vue.d';
28
- import { BadgeComponentConfigs } from '../components/badge/Badge.vue.d';
29
- import { UserNameComponentConfigs, UserNameLocaleConfig, UserNamePresetOptions } from '../components/username/UserName.vue.d';
30
- import { ImageCompressorLocaleConfig } from '../components/imagecompressor/ImageCompressor.vue.d';
31
- import { UseToastConfig } from '../utils';
42
+ import { MenuLocaleConfig } from '../components/menu/Menu.vue.d';
43
+ import { MultiSelectLocaleConfig } from '../components/multiselect/MultiSelect.vue.d';
44
+ import { OverlayPanelPassThroughOptions } from '../components/overlaypanel/OverlayPanel.vue.d';
45
+ import { TextareaLocaleConfig } from '../components/textarea/Textarea.vue.d';
46
+ import { TreeProps } from '../components/tree/Tree.vue.d';
47
+ import {
48
+ UserNameComponentConfigs,
49
+ UserNameLocaleConfig,
50
+ UserNamePresetOptions,
51
+ } from '../components/username/UserName.vue.d';
52
+ import { type UseToastConfig } from '../utils/toast.util';
32
53
  /**
33
54
  * A Record of component names with theirs props interface
34
55
  */
35
56
  export interface ComponentDefaultPropsConfig {
36
- FieldWrapper?: FieldWrapperProps;
37
- InputText?: InputTextProps;
38
- InputURL?: InputURLProps;
39
- InputEmail?: InputEmailProps;
40
- Tree?: TreeProps;
41
- Image?: ImageProps;
42
- ButtonBulkAction?: Omit<ButtonBulkActionProps, 'selectedData' | 'options'>;
43
- Animation?: AnimationDefaultConfig;
44
- DataTable?: Partial<DataTableProps>;
45
- Badge?: Partial<BadgeComponentConfigs>;
46
- UserName?: UserNameComponentConfigs;
47
- Dropdown?: DropdownProps;
57
+ FieldWrapper?: FieldWrapperProps;
58
+ InputText?: InputTextProps;
59
+ InputURL?: InputURLProps;
60
+ InputEmail?: InputEmailProps;
61
+ Tree?: TreeProps;
62
+ Image?: ImageProps;
63
+ ButtonBulkAction?: Omit<ButtonBulkActionProps, 'selectedData' | 'options'>;
64
+ Animation?: AnimationDefaultConfig;
65
+ DataTable?: Partial<DataTableProps>;
66
+ Badge?: Partial<BadgeComponentConfigs>;
67
+ UserName?: UserNameComponentConfigs;
68
+ Dropdown?: DropdownProps;
48
69
  }
49
70
  interface ComponentLocaleConfig {
50
- FieldWrapper?: FieldWrapperLocaleConfig;
51
- InputText?: InputTextLocaleConfig;
52
- DialogConfirm?: DialogConfirmLocaleConfig;
53
- CustomColumn?: CustomColumnLocaleConfig;
54
- ButtonSearch?: ButtonSearchLocaleConfig;
55
- FilterContainer?: FilterContainerLocaleConfig;
56
- MultiSelect?: MultiSelectLocaleConfig;
57
- Dropdown?: DropdownLocaleConfig;
58
- InputCurrency?: InputCurrencyLocaleConfig;
59
- TextArea?: TextareaLocaleConfig;
60
- InputRangeNumber?: InputrangeNumberLocaleConfig;
61
- DialogForm?: DialogFormLocaleConfig;
62
- InputPhoneNumber?: InputPhoneNumberLocaleConfig;
63
- InputNumber?: InputNumberLocaleConfig;
64
- Calendar?: CalendarLocaleConfig;
65
- Menu?: MenuLocaleConfig;
66
- ButtonBulkAction?: ButtonBulkActionLocaleConfig;
67
- UserName?: UserNameLocaleConfig;
68
- DataTable?: DataTableLocaleConfig;
69
- ImageCompressor?: ImageCompressorLocaleConfig;
71
+ FieldWrapper?: FieldWrapperLocaleConfig;
72
+ InputText?: InputTextLocaleConfig;
73
+ DialogConfirm?: DialogConfirmLocaleConfig;
74
+ CustomColumn?: CustomColumnLocaleConfig;
75
+ ButtonSearch?: ButtonSearchLocaleConfig;
76
+ FilterContainer?: FilterContainerLocaleConfig;
77
+ MultiSelect?: MultiSelectLocaleConfig;
78
+ Dropdown?: DropdownLocaleConfig;
79
+ InputCurrency?: InputCurrencyLocaleConfig;
80
+ TextArea?: TextareaLocaleConfig;
81
+ InputRangeNumber?: InputrangeNumberLocaleConfig;
82
+ DialogForm?: DialogFormLocaleConfig;
83
+ InputPhoneNumber?: InputPhoneNumberLocaleConfig;
84
+ InputNumber?: InputNumberLocaleConfig;
85
+ Calendar?: CalendarLocaleConfig;
86
+ Menu?: MenuLocaleConfig;
87
+ ButtonBulkAction?: ButtonBulkActionLocaleConfig;
88
+ UserName?: UserNameLocaleConfig;
89
+ DataTable?: DataTableLocaleConfig;
90
+ ImageCompressor?: ImageCompressorLocaleConfig;
70
91
  }
71
92
  export interface LocaleConfig {
72
- global: Partial<PrimeVueLocaleOptions>;
73
- components: ComponentLocaleConfig;
93
+ global: Partial<typeof DEFAULT_GLOBAL_LOCALE_CONFIG>;
94
+ components: ComponentLocaleConfig;
74
95
  }
75
96
  export interface ComponentPresetOptions {
76
- calendar: CalendarPresetOptions;
77
- overlaypanel: OverlayPanelPassThroughOptions;
78
- loading: LoadingPresetOptions;
79
- username: UserNamePresetOptions;
80
- [key: string]: any;
97
+ calendar: CalendarPresetOptions;
98
+ overlaypanel: OverlayPanelPassThroughOptions;
99
+ loading: LoadingPresetOptions;
100
+ username: UserNamePresetOptions;
101
+ [key: string]: any;
81
102
  }
82
- export type WangsVueComponentConfig<ComponentName extends keyof ComponentDefaultPropsConfig | keyof ComponentLocaleConfig> = {
83
- defaultProps: ComponentName extends keyof ComponentDefaultPropsConfig ? ComponentDefaultPropsConfig[ComponentName] : undefined;
84
- locale: (ComponentName extends keyof ComponentLocaleConfig ? ComponentLocaleConfig[ComponentName] : undefined) & {
85
- global: LocaleConfig['global'];
86
- };
103
+ export type WangsVueComponentConfig<
104
+ ComponentName extends
105
+ | keyof ComponentDefaultPropsConfig
106
+ | keyof ComponentLocaleConfig,
107
+ > = {
108
+ defaultProps: ComponentName extends keyof ComponentDefaultPropsConfig
109
+ ? ComponentDefaultPropsConfig[ComponentName]
110
+ : undefined;
111
+ locale: (ComponentName extends keyof ComponentLocaleConfig
112
+ ? ComponentLocaleConfig[ComponentName]
113
+ : undefined) & {
114
+ global: LocaleConfig['global'];
115
+ };
87
116
  };
88
117
  export interface WangsVueOptions {
89
- defaultProps: ComponentDefaultPropsConfig;
90
- locale: LocaleConfig;
91
- useToastConfig?: UseToastConfig;
92
- zIndex?: Record<string, number>;
93
- filterMatchModeOptions?: Record<string, string[]>;
94
- /**
95
- * @deprecated - partially replaced with {@link preset}
96
- */
97
- pt?: ComponentPresetOptions;
98
- preset?: ComponentPresetOptions;
99
- ptOptions?: {
100
- mergeSections: boolean;
101
- mergeProps: boolean;
102
- };
103
- /**
104
- * @deprecated - Will always be unstyled
105
- */
106
- unstyled?: boolean;
107
- csp?: {
108
- nonce?: string;
109
- };
118
+ defaultProps: ComponentDefaultPropsConfig;
119
+ locale: LocaleConfig;
120
+ useToastConfig?: UseToastConfig;
121
+ zIndex?: Record<string, number>;
122
+ filterMatchModeOptions?: Record<string, string[]>;
123
+ /**
124
+ * @deprecated - partially replaced with {@link preset}
125
+ */
126
+ pt?: ComponentPresetOptions;
127
+ preset?: ComponentPresetOptions;
128
+ ptOptions?: {
129
+ mergeSections: boolean;
130
+ mergeProps: boolean;
131
+ };
132
+ /**
133
+ * @deprecated - Will always be unstyled
134
+ */
135
+ unstyled?: boolean;
136
+ csp?: {
137
+ nonce?: string;
138
+ };
110
139
  }
111
140
  export interface WangsVueInstance {
112
- config: WangsVueOptions;
113
- getComponentConfig<ComponentName extends keyof ComponentDefaultPropsConfig | keyof ComponentLocaleConfig>(componentName: ComponentName): WangsVueComponentConfig<ComponentName>;
141
+ config: WangsVueOptions;
142
+ getComponentConfig<
143
+ ComponentName extends
144
+ | keyof ComponentDefaultPropsConfig
145
+ | keyof ComponentLocaleConfig,
146
+ >(
147
+ componentName: ComponentName,
148
+ ): WangsVueComponentConfig<ComponentName>;
114
149
  }
150
+ declare const DEFAULT_GLOBAL_LOCALE_CONFIG: {
151
+ startsWith: string;
152
+ contains: string;
153
+ notContains: string;
154
+ endsWith: string;
155
+ equals: string;
156
+ notEquals: string;
157
+ noFilter: string;
158
+ lt: string;
159
+ lte: string;
160
+ gt: string;
161
+ gte: string;
162
+ dateIs: string;
163
+ dateIsNot: string;
164
+ dateBefore: string;
165
+ dateAfter: string;
166
+ clear: string;
167
+ apply: string;
168
+ matchAll: string;
169
+ matchAny: string;
170
+ addRule: string;
171
+ removeRule: string;
172
+ accept: string;
173
+ reject: string;
174
+ choose: string;
175
+ upload: string;
176
+ cancel: string;
177
+ completed: string;
178
+ pending: string;
179
+ fileSizeTypes: string[];
180
+ monthNames: string[];
181
+ monthNamesShort: string[];
182
+ dayNames: string[];
183
+ dayNamesShort: string[];
184
+ dayNamesMin: string[];
185
+ chooseYear: string;
186
+ chooseMonth: string;
187
+ chooseDate: string;
188
+ prevDecade: string;
189
+ nextDecade: string;
190
+ prevYear: string;
191
+ nextYear: string;
192
+ prevMonth: string;
193
+ nextMonth: string;
194
+ prevHour: string;
195
+ nextHour: string;
196
+ prevMinute: string;
197
+ nextMinute: string;
198
+ prevSecond: string;
199
+ nextSecond: string;
200
+ pm: string;
201
+ am: string;
202
+ today: string;
203
+ weekHeader: string;
204
+ firstDayOfWeek: number;
205
+ showMonthAfterYear: boolean;
206
+ dateFormat: string;
207
+ weak: string;
208
+ medium: string;
209
+ strong: string;
210
+ passwordPrompt: string;
211
+ emptyFilterMessage: string;
212
+ searchMessage: string;
213
+ selectionMessage: string;
214
+ emptySelectionMessage: string;
215
+ emptySearchMessage: string;
216
+ emptyMessage: string;
217
+ aria: {
218
+ trueLabel: string;
219
+ falseLabel: string;
220
+ nullLabel: string;
221
+ star: string;
222
+ stars: string;
223
+ selectAll: string;
224
+ unselectAll: string;
225
+ close: string;
226
+ previous: string;
227
+ next: string;
228
+ navigation: string;
229
+ scrollTop: string;
230
+ moveTop: string;
231
+ moveUp: string;
232
+ moveDown: string;
233
+ moveBottom: string;
234
+ moveToTarget: string;
235
+ moveToSource: string;
236
+ moveAllToTarget: string;
237
+ moveAllToSource: string;
238
+ pageLabel: string;
239
+ firstPageLabel: string;
240
+ lastPageLabel: string;
241
+ nextPageLabel: string;
242
+ prevPageLabel: string;
243
+ rowsPerPageLabel: string;
244
+ jumpToPageDropdownLabel: string;
245
+ jumpToPageInputLabel: string;
246
+ selectRow: string;
247
+ unselectRow: string;
248
+ expandRow: string;
249
+ collapseRow: string;
250
+ showFilterMenu: string;
251
+ hideFilterMenu: string;
252
+ filterOperator: string;
253
+ filterConstraint: string;
254
+ editRow: string;
255
+ saveEdit: string;
256
+ cancelEdit: string;
257
+ listView: string;
258
+ gridView: string;
259
+ slide: string;
260
+ slideNumber: string;
261
+ zoomImage: string;
262
+ zoomIn: string;
263
+ zoomOut: string;
264
+ rotateRight: string;
265
+ rotateLeft: string;
266
+ listLabel: string;
267
+ };
268
+ };
115
269
  export declare const defaultOptions: WangsVueOptions;
116
- export declare const useWangsVueConfig: <T extends (keyof ComponentDefaultPropsConfig | keyof ComponentLocaleConfig) | undefined>(componentName?: T) => T extends keyof ComponentDefaultPropsConfig | keyof ComponentLocaleConfig ? WangsVueComponentConfig<T> : WangsVueOptions;
117
- export declare const mergeWangsVueConfig: (baseConfig: WangsVueOptions, overrideConfig: Partial<WangsVueOptions>) => WangsVueOptions;
270
+ export declare const useWangsVueConfig: <
271
+ T extends
272
+ | (keyof ComponentDefaultPropsConfig | keyof ComponentLocaleConfig)
273
+ | undefined,
274
+ >(
275
+ componentName?: T,
276
+ ) => T extends keyof ComponentDefaultPropsConfig | keyof ComponentLocaleConfig
277
+ ? WangsVueComponentConfig<T>
278
+ : WangsVueOptions;
279
+ export declare const mergeWangsVueConfig: (
280
+ baseConfig: WangsVueOptions,
281
+ overrideConfig: Partial<WangsVueOptions>,
282
+ ) => WangsVueOptions;
118
283
  /**
119
284
  *
120
285
  * @param predefinedOptions
121
286
  * @param mergeConfig Wether merge predefined config with defualt config @default true
122
287
  * @returns
123
288
  */
124
- declare const createWangsVuePlugin: (predefinedOptions?: Partial<WangsVueOptions>, mergeConfig?: boolean) => Plugin<Partial<WangsVueOptions>>;
289
+ declare const createWangsVuePlugin: (
290
+ predefinedOptions?: Partial<WangsVueOptions>,
291
+ mergeConfig?: boolean,
292
+ ) => Plugin<Partial<WangsVueOptions>>;
125
293
  export default createWangsVuePlugin;
126
294
  declare module 'vue' {
127
- interface ComponentCustomProperties {
128
- $wangsvue: WangsVueInstance;
129
- $preset: ComponentPresetOptions;
130
- }
295
+ interface ComponentCustomProperties {
296
+ $wangsvue: WangsVueInstance;
297
+ $preset: ComponentPresetOptions;
298
+ }
131
299
  }
@@ -1,10 +1,19 @@
1
+ import {
2
+ FieldContext,
3
+ FieldOptions,
4
+ FormContext as VeeFormContext,
5
+ RuleExpression,
6
+ } from 'vee-validate';
1
7
  import { MaybeRef, MaybeRefOrGetter } from 'vue';
2
- import { FormContext as VeeFormContext, FieldContext, RuleExpression, FieldOptions } from 'vee-validate';
3
8
  export interface FormContext<T> {
4
- values: T;
5
- handleSubmit: VeeFormContext['handleSubmit'];
6
- setValues: VeeFormContext['setValues'];
7
- setFieldValue: VeeFormContext['setFieldValue'];
9
+ values: T;
10
+ handleSubmit: VeeFormContext['handleSubmit'];
11
+ setValues: VeeFormContext['setValues'];
12
+ setFieldValue: VeeFormContext['setFieldValue'];
8
13
  }
9
14
  export declare const useForm: <T>() => FormContext<T>;
10
- export declare const useField: <T>(path: MaybeRefOrGetter<string>, rules?: MaybeRef<RuleExpression<T>>, opts?: Partial<FieldOptions<T>>) => FieldContext<T>;
15
+ export declare const useField: <T>(
16
+ path: MaybeRefOrGetter<string>,
17
+ rules?: MaybeRef<RuleExpression<T>>,
18
+ opts?: Partial<FieldOptions<T>>,
19
+ ) => FieldContext<T>;
@@ -1,4 +1,4 @@
1
1
  declare const _default: {
2
- install: (app: import('vue').App) => void;
2
+ install: (app: import('vue').App) => void;
3
3
  };
4
4
  export default _default;
package/plugins/i18n.d.ts CHANGED
@@ -1,127 +1,103 @@
1
1
  import { AxiosResponse } from 'axios';
2
- import { LanguageOption } from '../components/languagedropdown/LanguageDropdown.vue.d';
3
2
  import { App, Ref } from 'vue';
4
3
  export type Locale = string;
4
+ export interface LanguageOption {
5
+ /**
6
+ * ISO 639-1 language code (e.g., "en" for English, "fr" for French).
7
+ */
8
+ isoCode?: string;
9
+ /**
10
+ * The name of the language in English (e.g., "English", "Français").
11
+ */
12
+ name: string;
13
+ /**
14
+ * The URL of the country's flag image.
15
+ * Flags are sourced from https://flagcdn.com and are typically in SVG format for high-quality resolution.
16
+ */
17
+ flag?: string;
18
+ }
5
19
  export interface I18n {
6
- /**
7
- * Locale message translation
8
- *
9
- * @param key - The translation key
10
- * @param params - A values of named interpolation
11
- * @param args - Positional interpolation values
12
- *
13
- * @returns translation message
14
- * @example `t('Hello {user}!', { user: 'John Doe' })` - returns: 'Hello John Doe!'
15
- * @example `t('Hello %s! I am %s.', "John Doe", "Peter Smith")` - returns: 'Hello John Doe! I am Peter Smith.'
16
- */
17
- t: {
18
- (key: string, params: Record<string, any>): string;
19
- (key: string, ...args: (string | number | boolean)[]): string;
20
- };
21
- /**
22
- * Change the locale dynamically
23
- *
24
- * @param newLocale - The locale to switch to
25
- */
26
- setLocale: (newLocale: Locale) => Promise<void>;
27
- /**
28
- * Get the current locale
29
- *
30
- * @returns Current locale
31
- */
32
- locale: Ref<Locale>;
33
- /**
34
- * Service methods handle fetch requests
35
- */
36
- service?: I18nService;
20
+ /**
21
+ * Locale message translation
22
+ *
23
+ * @param key - The translation key
24
+ * @param params - A values of named interpolation
25
+ * @param args - Positional interpolation values
26
+ *
27
+ * @returns translation message
28
+ * @example `t('Hello {user}!', { user: 'John Doe' })` - returns: 'Hello John Doe!'
29
+ * @example `t('Hello %s! I am %s.', "John Doe", "Peter Smith")` - returns: 'Hello John Doe! I am Peter Smith.'
30
+ */
31
+ t: {
32
+ (key: string, params: Record<string, any>): string;
33
+ (key: string, ...args: (string | number | boolean)[]): string;
34
+ };
35
+ /**
36
+ * Change the locale dynamically
37
+ *
38
+ * @param newLocale - The locale to switch to
39
+ */
40
+ setLocale: (newLocale: Locale) => Promise<void>;
41
+ /**
42
+ * Get the current locale
43
+ *
44
+ * @returns Current locale
45
+ */
46
+ locale: Ref<Locale>;
47
+ /**
48
+ * Service methods handle fetch requests
49
+ */
50
+ service?: I18nService;
37
51
  }
38
52
  type MessageMap = Record<string, string>;
39
53
  export interface I18nService {
40
- /**
41
- * Fetch all translation messages for a specific locale.
42
- * @param locale The locale code (e.g., 'en', 'id').
43
- * @returns A promise resolving to a key-value record of messages.
44
- */
45
- getMessages(locale: string): Promise<AxiosResponse<{
46
- data: MessageMap;
47
- }>>;
48
- /**
49
- * Fetch all available lang options for LanguageDropdown and LanguageSwitcher
50
- *
51
- * @returns Promise Array of options
52
- */
53
- getLanguageOptions(): Promise<LanguageOption[]>;
54
- /**
55
- * Fetch single lang option meta data
56
- *
57
- * @param locale The locale code (e.g., 'en', 'id').
58
- * @returns Promise LanguageMeta
59
- */
60
- getLanguageOptionMeta(locale: string): Promise<LanguageOption>;
61
- /**
62
- * Translate a specific text to the target locale.
63
- * @param key Unique translation key.
64
- * @param locale Target locale code.
65
- * @returns A promise resolving to the translated string.
66
- */
67
- translateText(key: string, locale: string): Promise<string>;
68
- }
69
- export interface TranslateTextResponseList {
70
- translations: TranslateTextResponseTranslation[];
71
- }
72
- export interface TranslateTextResponseTranslation {
73
- translatedText: string;
74
- }
75
- export interface GoogleTranslationResponse {
76
- data: TranslateTextResponseList;
77
- }
78
- /**
79
- * Query parameters for making a request to the Google Cloud Translate API v2.
80
- * Reference: https://cloud.google.com/translate/docs/reference/rest/v2/translate
81
- */
82
- export interface GoogleTranslateRequestQueryParams {
83
- /**
84
- * The input text to translate.
85
- * Can be a single string or an array of strings (up to 128 items).
86
- * Example: "Hello world" or ["Hello", "How are you?"]
87
- */
88
- q: string | string[];
89
- /**
90
- * The target language code to translate the input text into.
91
- * Must be a supported language code from:
92
- * https://cloud.google.com/translate/docs/languages
93
- * Example: "id" for Indonesian, "es" for Spanish.
94
- */
95
- target: string;
96
- /**
97
- * (Optional) The format of the source text.
98
- * Use `"text"` for plain text or `"html"` if the source contains HTML tags.
99
- * Default is `"html"`.
100
- */
101
- format?: 'html' | 'text';
102
- /**
103
- * (Optional) The source language code of the input text.
104
- * If omitted, the API will automatically detect the source language.
105
- * Supported language codes: https://cloud.google.com/translate/docs/languages
106
- * Example: "en" for English.
107
- */
108
- source?: string;
109
- /**
110
- * A valid API key for authenticating the request.
111
- * You can generate and manage API keys in the Google Cloud Console:
112
- * https://console.cloud.google.com/apis/credentials
113
- */
114
- key: string;
54
+ /**
55
+ * Fetch all translation messages for a specific locale.
56
+ * @param locale The locale code (e.g., 'en', 'id').
57
+ * @returns A promise resolving to a key-value record of messages.
58
+ */
59
+ getMessages(locale: string): Promise<
60
+ AxiosResponse<{
61
+ data: MessageMap;
62
+ }>
63
+ >;
64
+ /**
65
+ * Fetch all available lang options for LanguageDropdown and LanguageSwitcher
66
+ *
67
+ * @returns Promise Array of options
68
+ */
69
+ getLanguageOptions(): Promise<LanguageOption[]>;
70
+ /**
71
+ * Fetch single lang option meta data
72
+ *
73
+ * @param locale The locale code (e.g., 'en', 'id').
74
+ * @returns Promise LanguageMeta
75
+ */
76
+ getLanguageOptionMeta(locale: string): Promise<LanguageOption>;
77
+ /**
78
+ * Translate a specific text to the target locale.
79
+ * @param key Unique translation key.
80
+ * @param locale Target locale code.
81
+ * @returns A promise resolving to the translated string.
82
+ */
83
+ translateText(key: string, locale: string): Promise<string>;
115
84
  }
116
85
  export declare const useI18n: () => I18n;
117
86
  declare const i18n: {
118
- install: (app: App) => void;
87
+ install: (app: App) => void;
119
88
  };
120
- export declare const createI18nWithExtension: (service: I18nService) => typeof i18n;
89
+ export declare const createI18nWithExtension: (
90
+ service: I18nService,
91
+ ) => typeof i18n;
121
92
  export default i18n;
122
93
  declare module 'vue' {
123
- interface ComponentCustomProperties {
124
- $i18n: I18n;
125
- $t: I18n['t'];
126
- }
94
+ interface ComponentCustomProperties {
95
+ $i18n: I18n;
96
+ $t: I18n['t'];
97
+ }
98
+ }
99
+ declare global {
100
+ interface Window {
101
+ i18n: I18n;
102
+ }
127
103
  }