@fewangsit/wangsvue 1.5.178

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 (235) hide show
  1. package/assets/json/currencies.json.d.ts +1068 -0
  2. package/assets/json/emoji-by-group.json.d.ts +15629 -0
  3. package/assets/lottie/loading-plane.lottie +0 -0
  4. package/assets/lottie/loading-table.lottie +0 -0
  5. package/assets/lottie/no-data.lottie +0 -0
  6. package/build-entry.d.ts +12 -0
  7. package/components/animation/Animation.vue.d.ts +21 -0
  8. package/components/approverinfo/ApproverInfo.vue.d.ts +52 -0
  9. package/components/badge/Badge.vue.d.ts +57 -0
  10. package/components/badgegroup/BadgeGroup.vue.d.ts +33 -0
  11. package/components/breadcrumb/Breadcrumb.vue.d.ts +27 -0
  12. package/components/button/Button.vue.d.ts +186 -0
  13. package/components/buttonbulkaction/ButtonBulkAction.vue.d.ts +70 -0
  14. package/components/buttondownload/ButtonDownload.vue.d.ts +46 -0
  15. package/components/buttonfilter/ButtonFilter.vue.d.ts +13 -0
  16. package/components/buttonradio/ButtonRadio.vue.d.ts +219 -0
  17. package/components/buttonsearch/ButtonSearch.vue.d.ts +35 -0
  18. package/components/buttontoggle/ButtonToggle.vue.d.ts +22 -0
  19. package/components/calendar/Calendar.vue.d.ts +134 -0
  20. package/components/card/Card.vue.d.ts +128 -0
  21. package/components/changelog/Changelog.vue.d.ts +165 -0
  22. package/components/changelogpage/ChangelogFilter.vue.d.ts +16 -0
  23. package/components/changelogpage/ChangelogPage.vue.d.ts +180 -0
  24. package/components/checkbox/Checkbox.vue.d.ts +312 -0
  25. package/components/codesnippet/CodeSnippet.vue.d.ts +13 -0
  26. package/components/comment/Comment.vue.d.ts +180 -0
  27. package/components/comment/CommentBlock.vue.d.ts +35 -0
  28. package/components/customcolumn/CustomColumn.vue.d.ts +32 -0
  29. package/components/datatable/DataTable.vue.d.ts +659 -0
  30. package/components/datatable/MultiRow.vue.d.ts +16 -0
  31. package/components/datatable/helpers/adjustMenuPosition.helper.d.ts +1 -0
  32. package/components/datatable/helpers/filter.helper.d.ts +28 -0
  33. package/components/datatable/helpers/index.d.ts +3 -0
  34. package/components/datatable/helpers/readConfig.helper.d.ts +2 -0
  35. package/components/datatable/store/dataTable.store.d.ts +22 -0
  36. package/components/detailmember/DetailMember.vue.d.ts +79 -0
  37. package/components/detailmember/DetailMemberAdmin.vue.d.ts +18 -0
  38. package/components/detailmember/DetailMemberLeader.vue.d.ts +15 -0
  39. package/components/detailmember/DetailMemberLog.vue.d.ts +15 -0
  40. package/components/detailmember/DialogMemberAdmin.vue.d.ts +23 -0
  41. package/components/detailsprint/DetailSprint.vue.d.ts +89 -0
  42. package/components/detailsprint/DialogAddPbi.vue.d.ts +24 -0
  43. package/components/detailsprint/DialogConfirmSprint.vue.d.ts +24 -0
  44. package/components/detailsprint/SprintSummary.vue.d.ts +15 -0
  45. package/components/detailsprint/helpers/updateSprintStatus.util.d.ts +3 -0
  46. package/components/detailsprint/options/quickFilterFields.d.ts +3 -0
  47. package/components/dialog/Dialog.vue.d.ts +451 -0
  48. package/components/dialogAdjustmentTask/DialogAdjustmentTask.vue.d.ts +158 -0
  49. package/components/dialogAdjustmentTask/DialogAdjustmentTaskHeader.vue.d.ts +27 -0
  50. package/components/dialogAdjustmentTask/common/TaskDependency.vue.d.ts +12 -0
  51. package/components/dialogAdjustmentTask/common/TaskStatusBadge.vue.d.ts +16 -0
  52. package/components/dialogAdjustmentTask/options/dialogAdjustmentTaskBulkAction.d.ts +3 -0
  53. package/components/dialogAdjustmentTask/options/dialogAdjustmentTaskSingleAction.d.ts +3 -0
  54. package/components/dialogAdjustmentTask/options/dialogAdjustmentTaskTableColumn.d.ts +2 -0
  55. package/components/dialogconfirm/DialogConfirm.vue.d.ts +136 -0
  56. package/components/dialogdetailpbi/AssignMember.vue.d.ts +23 -0
  57. package/components/dialogdetailpbi/DialogDetailPbi.vue.d.ts +120 -0
  58. package/components/dialogdetailpbi/TaskDetailPbi.vue.d.ts +29 -0
  59. package/components/dialogdetailpbi/TaskDetailUnassignedPbi.vue.d.ts +23 -0
  60. package/components/dialogdetailpbi/options/memberFilterFields.d.ts +2 -0
  61. package/components/dialogdetailpbi/options/taskQuickFilterFields.d.ts +3 -0
  62. package/components/dialogform/DialogForm.vue.d.ts +256 -0
  63. package/components/dialogimprovementtask/DialogImprovementTask.vue.d.ts +24 -0
  64. package/components/dialogreportbug/DialogReportBug.vue.d.ts +25 -0
  65. package/components/dialogreportbug/imageData.json.d.ts +28 -0
  66. package/components/dropdown/Dropdown.vue.d.ts +182 -0
  67. package/components/editor/CodeSnippetAdapter.vue.d.ts +68 -0
  68. package/components/editor/Editor.vue.d.ts +192 -0
  69. package/components/editor/EditorButton.vue.d.ts +15 -0
  70. package/components/editor/MentionList.vue.d.ts +35 -0
  71. package/components/editor/MentionSection.vue.d.ts +68 -0
  72. package/components/editor/codeSnippetExtension.d.ts +3 -0
  73. package/components/editor/mentionSectionExtension.d.ts +3 -0
  74. package/components/editor/suggestion.d.ts +2 -0
  75. package/components/fieldwrapper/FieldWrapper.vue.d.ts +15 -0
  76. package/components/fileupload/FileUpload.vue.d.ts +151 -0
  77. package/components/filtercontainer/FilterContainer.vue.d.ts +109 -0
  78. package/components/filtercontainer/helpers/applyFilter.helper.d.ts +3 -0
  79. package/components/filtercontainer/helpers/getOption.helper.d.ts +3 -0
  80. package/components/form/Form.vue.d.ts +207 -0
  81. package/components/helpers/convertToArrayClass.helper.d.ts +2 -0
  82. package/components/helpers/index.d.ts +2 -0
  83. package/components/icon/Icon.vue.d.ts +215 -0
  84. package/components/image/Image.vue.d.ts +370 -0
  85. package/components/imagecompressor/BackgroundImageCropper.vue.d.ts +36 -0
  86. package/components/imagecompressor/ImageCompressor.vue.d.ts +192 -0
  87. package/components/imagecompressor/ImageInputInfo.vue.d.ts +30 -0
  88. package/components/index.d.ts +123 -0
  89. package/components/inputbadge/InputBadge.vue.d.ts +118 -0
  90. package/components/inputcurrency/InputCurrency.vue.d.ts +132 -0
  91. package/components/inputcurrency/helpers/currency.helper.d.ts +4 -0
  92. package/components/inputemail/InputEmail.vue.d.ts +26 -0
  93. package/components/inputgroup/InputGroup.vue.d.ts +131 -0
  94. package/components/inputinitialname/InputInitialName.vue.d.ts +118 -0
  95. package/components/inputnumber/InputNumber.vue.d.ts +222 -0
  96. package/components/inputpassword/InputPassword.vue.d.ts +33 -0
  97. package/components/inputphonenumber/InputPhoneNumber.vue.d.ts +96 -0
  98. package/components/inputphonenumber/helpers/getUserLocation.helper.d.ts +8 -0
  99. package/components/inputrangenumber/InputRangeNumber.vue.d.ts +98 -0
  100. package/components/inputrepositoryname/InputRepositoryName.vue.d.ts +87 -0
  101. package/components/inputtext/InputText.vue.d.ts +226 -0
  102. package/components/inputurl/InputURL.vue.d.ts +99 -0
  103. package/components/invisiblefield/InvisibleField.vue.d.ts +36 -0
  104. package/components/litedropdown/LiteDropdown.vue.d.ts +97 -0
  105. package/components/loading/Loading.vue.d.ts +34 -0
  106. package/components/loading/store/loading.store.d.ts +8 -0
  107. package/components/menu/Menu.vue.d.ts +369 -0
  108. package/components/menu/helpers/filterMenu.helper.d.ts +10 -0
  109. package/components/menu/helpers/index.d.ts +1 -0
  110. package/components/menuitem/index.d.ts +93 -0
  111. package/components/multiselect/MultiSelect.vue.d.ts +169 -0
  112. package/components/notificationitem/NotificationItem.vue.d.ts +108 -0
  113. package/components/notificationitem/helpers/goToDetail.helper.d.ts +6 -0
  114. package/components/overlaypanel/OverlayPanel.vue.d.ts +292 -0
  115. package/components/pdfviewer/PDFViewer.vue.d.ts +28 -0
  116. package/components/progressbar/ProgressBar.vue.d.ts +73 -0
  117. package/components/quickfilter/QuickFilter.vue.d.ts +17 -0
  118. package/components/summaryaccordion/SummaryAccordion.vue.d.ts +123 -0
  119. package/components/tabmenu/TabMenu.vue.d.ts +275 -0
  120. package/components/taskdetail/TaskDetail.vue.d.ts +83 -0
  121. package/components/taskdetail/blocks/Tabs/DescriptionTab.vue.d.ts +2 -0
  122. package/components/taskdetail/blocks/Tabs/EventLogTab.vue.d.ts +2 -0
  123. package/components/taskdetail/blocks/Tabs/InfoTaskTab.vue.d.ts +2 -0
  124. package/components/taskdetail/blocks/Tabs/ReviewTab.vue.d.ts +2 -0
  125. package/components/taskdetail/blocks/common/AttachmentThumbnail.vue.d.ts +18 -0
  126. package/components/taskdetail/blocks/common/DialogAddAttachment.vue.d.ts +32 -0
  127. package/components/taskdetail/blocks/common/DialogAssignMember.vue.d.ts +30 -0
  128. package/components/taskdetail/blocks/common/DialogConfirmApproval.vue.d.ts +26 -0
  129. package/components/taskdetail/blocks/common/DialogConfirmDeleteTask.vue.d.ts +28 -0
  130. package/components/taskdetail/blocks/common/DialogConfirmEdit.vue.d.ts +24 -0
  131. package/components/taskdetail/blocks/common/DialogConfirmFinishTask.vue.d.ts +24 -0
  132. package/components/taskdetail/blocks/common/DialogPriorityValue.vue.d.ts +21 -0
  133. package/components/taskdetail/blocks/common/DialogSetDuration.vue.d.ts +18 -0
  134. package/components/taskdetail/blocks/common/InputAdditional.vue.d.ts +28 -0
  135. package/components/taskdetail/blocks/common/Legend.vue.d.ts +79 -0
  136. package/components/taskdetail/blocks/common/SonarQubeSummary.vue.d.ts +17 -0
  137. package/components/taskdetail/blocks/common/TaskMore.vue.d.ts +16 -0
  138. package/components/taskdetail/blocks/sections/API/API.vue.d.ts +2 -0
  139. package/components/taskdetail/blocks/sections/API/APIItem.vue.d.ts +28 -0
  140. package/components/taskdetail/blocks/sections/API/DialogAddEditApi.vue.d.ts +25 -0
  141. package/components/taskdetail/blocks/sections/API/DialogTestApi.vue.d.ts +22 -0
  142. package/components/taskdetail/blocks/sections/API/IsRequiredText.vue.d.ts +15 -0
  143. package/components/taskdetail/blocks/sections/API/TestApi/options/keyValueTableColumn.d.ts +2 -0
  144. package/components/taskdetail/blocks/sections/API/ValueFormDataInput.vue.d.ts +37 -0
  145. package/components/taskdetail/blocks/sections/Attachment/Attachment.vue.d.ts +2 -0
  146. package/components/taskdetail/blocks/sections/Attachment/AttachmentChangelog.vue.d.ts +18 -0
  147. package/components/taskdetail/blocks/sections/Attachment/AttachmentItem.vue.d.ts +65 -0
  148. package/components/taskdetail/blocks/sections/Checklist/Checklist.vue.d.ts +20 -0
  149. package/components/taskdetail/blocks/sections/Checklist/ChecklistChangelog.vue.d.ts +18 -0
  150. package/components/taskdetail/blocks/sections/Checklist/DialogAddChecklist.vue.d.ts +32 -0
  151. package/components/taskdetail/blocks/sections/Checklist/DialogConfirmChecklist.vue.d.ts +26 -0
  152. package/components/taskdetail/blocks/sections/Checklist/DialogDetailChecklistTemplate.vue.d.ts +18 -0
  153. package/components/taskdetail/blocks/sections/Checklist/DialogSaveChecklistTemplate.vue.d.ts +22 -0
  154. package/components/taskdetail/blocks/sections/Description/Description.vue.d.ts +2 -0
  155. package/components/taskdetail/blocks/sections/Review/DialogFinishReview.vue.d.ts +26 -0
  156. package/components/taskdetail/blocks/sections/Review/DialogReviewLeader.vue.d.ts +25 -0
  157. package/components/taskdetail/blocks/sections/Review/ReviewItem.vue.d.ts +16 -0
  158. package/components/taskdetail/blocks/sections/TaskDependency/DialogCustomDependency.vue.d.ts +20 -0
  159. package/components/taskdetail/blocks/sections/TaskDependency/TaskDependency.vue.d.ts +2 -0
  160. package/components/taskdetail/blocks/sections/TaskLink/DialogSetTaskLink.vue.d.ts +40 -0
  161. package/components/taskdetail/blocks/sections/TaskLink/TaskLink.vue.d.ts +2 -0
  162. package/components/taskdetail/blocks/sections/TaskLink/TaskLinkChangelog.vue.d.ts +22 -0
  163. package/components/taskdetail/blocks/sections/TaskList/LegendList.vue.d.ts +55 -0
  164. package/components/taskdetail/blocks/sections/TaskList/TaskList.vue.d.ts +15 -0
  165. package/components/taskdetail/blocks/sections/Ticket/Ticket.vue.d.ts +2 -0
  166. package/components/tasktable/DependencyCol.vue.d.ts +16 -0
  167. package/components/tasktable/DialogConfirmDeleteTaskPermanently.vue.d.ts +24 -0
  168. package/components/tasktable/DialogConfirmRestoreTask.vue.d.ts +24 -0
  169. package/components/tasktable/DialogSelectProject.vue.d.ts +20 -0
  170. package/components/tasktable/TaskTable.vue.d.ts +82 -0
  171. package/components/textarea/Textarea.vue.d.ts +121 -0
  172. package/components/timeline/Timeline.vue.d.ts +116 -0
  173. package/components/timeline/TimelineContentByType.vue.d.ts +16 -0
  174. package/components/toast/Toast.vue.d.ts +354 -0
  175. package/components/tooltipspan/TooltipSpan.vue.d.ts +21 -0
  176. package/components/ts-helpers.d.ts +62 -0
  177. package/components/usergroup/UserGroup.vue.d.ts +58 -0
  178. package/components/username/UserName.vue.d.ts +62 -0
  179. package/components/validatormessage/ValidatorMessage.vue.d.ts +13 -0
  180. package/components/workcalendar/WorkCalendar.vue.d.ts +55 -0
  181. package/directives/focus.d.ts +7 -0
  182. package/directives/index.d.ts +1 -0
  183. package/dto/member.dto.d.ts +65 -0
  184. package/dto/task.dto.d.ts +86 -0
  185. package/dto/taskApi.dto.d.ts +20 -0
  186. package/dto/taskAttachment.dto.d.ts +11 -0
  187. package/dto/taskChecklist.dto.d.ts +39 -0
  188. package/dto/taskDependency.dto.d.ts +9 -0
  189. package/event-bus/index.d.ts +47 -0
  190. package/event-bus/mitt.d.ts +21 -0
  191. package/index.d.ts +2 -0
  192. package/main.d.ts +2 -0
  193. package/package.json +16 -0
  194. package/plugins/formValidation.d.ts +10 -0
  195. package/services/calendar.service.d.ts +9 -0
  196. package/services/dataManager.service.d.ts +5 -0
  197. package/services/sonarQube.service.d.ts +10 -0
  198. package/style.css +13 -0
  199. package/types/member.type.d.ts +72 -0
  200. package/types/options.type.d.ts +14 -0
  201. package/types/project.type.d.ts +64 -0
  202. package/types/projectApproval.type.d.ts +3 -0
  203. package/types/projectModule.type.d.ts +6 -0
  204. package/types/projectProcess.type.d.ts +17 -0
  205. package/types/projectQc.type.d.ts +52 -0
  206. package/types/projectSubmodule.type.d.ts +14 -0
  207. package/types/queryParamsStringfy.type.d.ts +3 -0
  208. package/types/roleDetailAccess.type.d.ts +17 -0
  209. package/types/subModule.type.d.ts +4 -0
  210. package/types/task.type.d.ts +256 -0
  211. package/types/team.type.d.ts +4 -0
  212. package/types/ticket.type.d.ts +13 -0
  213. package/types/user.type.d.ts +19 -0
  214. package/types/wangsStatus.type.d.ts +8 -0
  215. package/utils/convertJsonImage.util.d.ts +3 -0
  216. package/utils/date.util.d.ts +17 -0
  217. package/utils/exportToExcel.util.d.ts +20 -0
  218. package/utils/filterOptions.util.d.ts +3 -0
  219. package/utils/genPlaceholder.util.d.ts +3 -0
  220. package/utils/getAttachmentIcon.util.d.ts +8 -0
  221. package/utils/getProjectPermission.util.d.ts +4 -0
  222. package/utils/getSalesRole.util.d.ts +30 -0
  223. package/utils/getUser.util.d.ts +3 -0
  224. package/utils/getUserType.util.d.ts +2 -0
  225. package/utils/index.d.ts +9 -0
  226. package/utils/isIntersect.d.ts +2 -0
  227. package/utils/object.util.d.ts +2 -0
  228. package/utils/queryParamsStringfy.util.d.ts +7 -0
  229. package/utils/role.util.d.ts +2 -0
  230. package/utils/statusSeverity.util.d.ts +3 -0
  231. package/utils/textFormatter.util.d.ts +4 -0
  232. package/utils/toast.util.d.ts +36 -0
  233. package/utils/translation.util.d.ts +15 -0
  234. package/wangsvue.es.js +152940 -0
  235. package/wangsvue.system.js +467 -0
@@ -0,0 +1,369 @@
1
+ import { TransitionProps, VNode } from 'vue';
2
+ import { ComponentHooks } from '../basecomponent';
3
+ import { PassThroughOptions } from '../passthrough';
4
+ import { MenuItem } from '../menuitem';
5
+ import { ClassComponent, GlobalComponentConstructor, PassThrough } from '../ts-helpers';
6
+
7
+
8
+ export declare type MenuPassThroughOptionType =
9
+ | MenuPassThroughAttributes
10
+ | ((
11
+ options: MenuPassThroughMethodOptions,
12
+ ) => MenuPassThroughAttributes | string)
13
+ | string
14
+ | null
15
+ | undefined;
16
+
17
+ export declare type MenuPassThroughTransitionType =
18
+ | TransitionProps
19
+ | ((options: MenuPassThroughMethodOptions) => TransitionProps)
20
+ | undefined;
21
+
22
+ /**
23
+ * Custom passthrough(pt) option method.
24
+ */
25
+ export interface MenuPassThroughMethodOptions {
26
+ /**
27
+ * Defines instance.
28
+ */
29
+ instance: any;
30
+ /**
31
+ * Defines valid properties.
32
+ */
33
+ props: MenuProps;
34
+ /**
35
+ * Defines current inline state.
36
+ */
37
+ state: MenuState;
38
+ /**
39
+ * Defines current options.
40
+ */
41
+ context: MenuContext;
42
+ /**
43
+ * Defines valid attributes.
44
+ */
45
+ attrs: any;
46
+ /**
47
+ * Defines parent options.
48
+ */
49
+ parent: any;
50
+ /**
51
+ * Defines passthrough(pt) options in global config.
52
+ */
53
+ global: object | undefined;
54
+ }
55
+
56
+ /**
57
+ * Custom passthrough(pt) options.
58
+ * @see {@link MenuProps.pt}
59
+ */
60
+ export interface MenuPassThroughOptions {
61
+ /**
62
+ * Used to pass attributes to the root's DOM element.
63
+ */
64
+ root?: MenuPassThroughOptionType;
65
+ /**
66
+ * Used to pass attributes to the list's DOM element.
67
+ */
68
+ menu?: MenuPassThroughOptionType;
69
+ /**
70
+ * Used to pass attributes to the submenu header's DOM element.
71
+ */
72
+ submenuHeader?: MenuPassThroughOptionType;
73
+ /**
74
+ * Used to pass attributes to the list item's DOM element.
75
+ */
76
+ menuitem?: MenuPassThroughOptionType;
77
+ /**
78
+ * Used to pass attributes to the content's DOM element.
79
+ */
80
+ content?: MenuPassThroughOptionType;
81
+ /**
82
+ * Used to pass attributes to the action's DOM element.
83
+ */
84
+ action?: MenuPassThroughOptionType;
85
+ /**
86
+ * Used to pass attributes to the icon's DOM element.
87
+ */
88
+ icon?: MenuPassThroughOptionType;
89
+ /**
90
+ * Used to pass attributes to the label's DOM element.
91
+ */
92
+ label?: MenuPassThroughOptionType;
93
+ /**
94
+ * Used to pass attributes to the separator's DOM element.
95
+ */
96
+ separator?: MenuPassThroughOptionType;
97
+ /**
98
+ * Used to pass attributes to the start of the component.
99
+ */
100
+ start?: MenuPassThroughOptionType;
101
+ /**
102
+ * Used to pass attributes to the end of the component.
103
+ */
104
+ end?: MenuPassThroughOptionType;
105
+ /**
106
+ * Used to manage all lifecycle hooks.
107
+ * @see {@link basecomponent.ComponentHooks}
108
+ */
109
+ hooks?: ComponentHooks;
110
+ /**
111
+ * Used to control Vue Transition API.
112
+ */
113
+ transition?: MenuPassThroughTransitionType;
114
+ }
115
+
116
+ /**
117
+ * Custom passthrough attributes for each DOM elements
118
+ */
119
+ export interface MenuPassThroughAttributes {
120
+ [key: string]: any;
121
+ }
122
+
123
+ /**
124
+ * Defines current inline state in Menu component.
125
+ */
126
+ export interface MenuState {
127
+ /**
128
+ * Current id state as a string.
129
+ */
130
+ id: string;
131
+ /**
132
+ * Current visible state as a boolean.
133
+ * @defaultValue false
134
+ */
135
+ overlayVisible: boolean;
136
+ /**
137
+ * Current focus state as a boolean.
138
+ * @defaultValue false
139
+ */
140
+ focused: boolean;
141
+ /**
142
+ * Focused option index.
143
+ */
144
+ focusedOptionIndex: number;
145
+ /**
146
+ * Selected option index.
147
+ */
148
+ selectedOptionIndex: number;
149
+ }
150
+
151
+ /**
152
+ * Defines current options in Menu component.
153
+ */
154
+ export interface MenuContext {
155
+ /**
156
+ * Current menuitem
157
+ */
158
+ item: any;
159
+ /**
160
+ * Current index of the menuitem.
161
+ */
162
+ index: number;
163
+ /**
164
+ * Current focused state of menuitem as a boolean.
165
+ * @defaultValue false
166
+ */
167
+ focused: boolean;
168
+ /**
169
+ * Current disabled state of menuitem as a boolean.
170
+ * @defaultValue false
171
+ */
172
+ disabled: boolean;
173
+ }
174
+
175
+ /**
176
+ * Defines valid router binding props in Menu component.
177
+ */
178
+ export interface MenuRouterBindProps {
179
+ /**
180
+ * Action element binding
181
+ */
182
+ action: object;
183
+ /**
184
+ * Icon element binding
185
+ */
186
+ icon: object;
187
+ /**
188
+ * Label element binding
189
+ */
190
+ label: object;
191
+ }
192
+
193
+ /**
194
+ * Defines valid properties in Menu component.
195
+ */
196
+ export interface MenuProps {
197
+ /**
198
+ * An array of menuitems.
199
+ */
200
+ model?: MenuItem[] | undefined;
201
+ /**
202
+ * Defines if menu would displayed as a popup.
203
+ * @defaultValue true
204
+ */
205
+ popup?: boolean | undefined;
206
+ /**
207
+ * A valid query selector or an HTMLElement to specify where the overlay gets attached.
208
+ * @defaultValue body
209
+ */
210
+ appendTo?: 'body' | 'self' | string | undefined | HTMLElement;
211
+ /**
212
+ * Whether to automatically manage layering.
213
+ * @defaultValue true
214
+ */
215
+ autoZIndex?: boolean | undefined;
216
+ /**
217
+ * Base zIndex value to use in layering.
218
+ * @defaultValue 0
219
+ */
220
+ baseZIndex?: number | undefined;
221
+ /**
222
+ * Whether to apply 'router-link-active-exact' class if route exactly matches the item path.
223
+ * @deprecated since v3.40.0.
224
+ * @defaultValue true
225
+ */
226
+ exact?: boolean | undefined;
227
+ /**
228
+ * Index of the element in tabbing order.
229
+ */
230
+ tabindex?: number | string | undefined;
231
+ /**
232
+ * Defines a string value that labels an interactive element.
233
+ */
234
+ ariaLabel?: string | undefined;
235
+ /**
236
+ * Identifier of the underlying input element.
237
+ */
238
+ ariaLabelledby?: string | undefined;
239
+ /**
240
+ * Used to pass attributes to DOM elements inside the component.
241
+ * @type {MenuPassThroughOptions}
242
+ */
243
+ pt?: PassThrough<MenuPassThroughOptions>;
244
+ /**
245
+ * Used to configure passthrough(pt) options of the component.
246
+ * @type {PassThroughOptions}
247
+ */
248
+ ptOptions?: PassThroughOptions;
249
+ /**
250
+ * When enabled, it removes component related styles in the core.
251
+ * @defaultValue false
252
+ */
253
+ unstyled?: boolean;
254
+ }
255
+
256
+ /**
257
+ * Defines valid slots in Menu component.
258
+ */
259
+ export interface MenuSlots {
260
+ /**
261
+ * Custom start template.
262
+ */
263
+ start(): VNode[];
264
+ /**
265
+ * Custom end template.
266
+ */
267
+ end(): VNode[];
268
+ /**
269
+ * Custom item template.
270
+ * @param {Object} scope - item slot's params.
271
+ */
272
+ item(scope: {
273
+ /**
274
+ * Menuitem instance
275
+ */
276
+ item: MenuItem;
277
+ /**
278
+ * Label property of the menuitem
279
+ */
280
+ label: string | ((...args: any) => string) | undefined;
281
+ /**
282
+ * Binding properties of the menuitem
283
+ */
284
+ props: MenuRouterBindProps;
285
+ }): VNode[];
286
+ /**
287
+ * Custom item icon template.
288
+ * @param {Object} scope - item icon slot's params.
289
+ */
290
+ itemicon(scope: {
291
+ /**
292
+ * Menuitem instance
293
+ */
294
+ item: MenuItem;
295
+ /**
296
+ * Style class of the item icon element.
297
+ */
298
+ class: any;
299
+ }): VNode[];
300
+ /**
301
+ * Custom item template.
302
+ * @param {Object} scope - submenuheader slot's params.
303
+ */
304
+ submenuheader(scope: {
305
+ /**
306
+ * Menuitem instance
307
+ */
308
+ item: MenuItem;
309
+ }): VNode[];
310
+ }
311
+
312
+ /**
313
+ * Defines valid emits in Menu component.
314
+ */
315
+ export type MenuEmits = {
316
+ /**
317
+ * Callback to invoke when the component receives focus.
318
+ * @param {Event} event - Browser event.
319
+ */
320
+ focus: [event: Event];
321
+ /**
322
+ * Callback to invoke when the component loses focus.
323
+ * @param {Event} event - Browser event.
324
+ */
325
+ blur: [event: Event];
326
+ };
327
+
328
+ /**
329
+ * **WangsVue - Menu**
330
+ *
331
+ * _Menu is a navigation / command component that supports dynamic and static positioning._
332
+ *
333
+ * --- ---
334
+ * ![WangsVue](https://www.wangs.id/wp-content/uploads/2023/12/cropped-Logo_Wangsid-removebg-preview-192x192.png)
335
+ *
336
+ * @group Component
337
+ *
338
+ */
339
+ declare class Menu extends ClassComponent<MenuProps, MenuSlots, MenuEmits> {
340
+ /**
341
+ * Toggles the visibility of the overlay.
342
+ * @param {Event} event - Browser event.
343
+ *
344
+ * @memberof Menu
345
+ */
346
+ toggle(event: Event): void;
347
+ /**
348
+ * Shows the overlay.
349
+ * @param {Event} event - Browser event.
350
+ * @param {*} [target] - Target element
351
+ *
352
+ * @memberof Menu
353
+ */
354
+ show(event: Event, target?: any): void;
355
+ /**
356
+ * Hides the overlay.
357
+ *
358
+ * @memberof Menu
359
+ */
360
+ hide(): void;
361
+ }
362
+
363
+ declare module '@vue/runtime-core' {
364
+ interface GlobalComponents {
365
+ Menu: GlobalComponentConstructor<Menu>;
366
+ }
367
+ }
368
+
369
+ export default Menu;
@@ -0,0 +1,10 @@
1
+ import { MenuItem } from '../../menuitem';
2
+ /**
3
+ * Filters the menu items to return only the visible ones.
4
+ * If no visible menu items are found, it returns a menu with a label 'No Option Available'.
5
+ *
6
+ * @param menuItems - The array of menu items to filter.
7
+ * @returns - The array of visible menu items or an array with a single menu item with label 'No Option Available'.
8
+ */
9
+ declare const filterVisibleMenu: (menuItems: MenuItem[]) => MenuItem[];
10
+ export default filterVisibleMenu;
@@ -0,0 +1 @@
1
+ export { default as filterVisibleMenu } from './filterMenu.helper';
@@ -0,0 +1,93 @@
1
+ /**
2
+ *
3
+ * WangsVue menu components share a common api to specify the menuitems and submenus.
4
+ *
5
+ * @module menuitem
6
+ *
7
+ */
8
+
9
+ /**
10
+ * Custom command event.
11
+ * @todo next release should be able to change see menuItem.command
12
+ */
13
+ export interface MenuItemCommandEvent {
14
+ /**
15
+ * Browser event.
16
+ */
17
+ originalEvent: Event;
18
+ /**
19
+ * Menuitem instance.
20
+ */
21
+ item: MenuItem;
22
+ /**
23
+ * Optional
24
+ */
25
+ [key: string]: any;
26
+ }
27
+
28
+ /**
29
+ * Defines model of MenuItem API.
30
+ */
31
+ export interface MenuItem {
32
+ /**
33
+ * Property name or getter function to use as the label of an item.
34
+ */
35
+ label?: string | ((...args: any) => string) | undefined;
36
+ /**
37
+ * Icon of the item.
38
+ */
39
+ icon?: string | undefined;
40
+ /**
41
+ * Callback to execute when item is clicked.
42
+ * @param {MenuItemCommandEvent} event - Custom command event.
43
+ * @todo next release should be able to change
44
+ */
45
+ command?: (event: MenuItemCommandEvent) => void;
46
+ /**
47
+ * External link to navigate when item is clicked.
48
+ */
49
+ url?: string | undefined;
50
+ /**
51
+ * Specifies where to open the linked document.
52
+ */
53
+ target?: string | undefined;
54
+ /**
55
+ * Internal/ vue router link to navigate when item is clicked.
56
+ */
57
+ route?: string | undefined;
58
+ /**
59
+ * An array of children menuitems.
60
+ */
61
+ items?: MenuItem[] | undefined;
62
+ /**
63
+ * A boolean or a function to return a boolean to specify if the item is disabled.
64
+ * @defaultValue false
65
+ */
66
+ disabled?: boolean | ((...args: any) => boolean) | undefined;
67
+ /**
68
+ * A boolean or a function to return a boolean to specify if the item is visible.
69
+ * @defaultValue true
70
+ */
71
+ visible?: boolean | ((...args: any) => boolean) | undefined;
72
+ /**
73
+ * Defines the item as a separator.
74
+ * @defaultValue false
75
+ */
76
+ separator?: boolean | undefined;
77
+ /**
78
+ * Inline style of the menuitem.
79
+ */
80
+ style?: any;
81
+ /**
82
+ * Style class of the menuitem.
83
+ */
84
+ class?: any;
85
+ /**
86
+ * Unique identifier of an item.
87
+ */
88
+ key?: string | undefined;
89
+ /**
90
+ * Optional
91
+ */
92
+ [key: string]: any;
93
+ }
@@ -0,0 +1,169 @@
1
+ import { ClassComponent, GlobalComponentConstructor } from '../ts-helpers';
2
+ import { MultiSelectOption, OptionValue } from '../../types/options.type';
3
+
4
+
5
+ /**
6
+ * MultiSelect component props
7
+ */
8
+ export interface MultiSelectProps {
9
+ modelValue?: OptionValue[];
10
+ /**
11
+ * If you deals with form validation on edit form action, you can set the initial value of the field.
12
+ */
13
+ initialValue?: OptionValue[];
14
+ /**
15
+ * The field label. Tell the user what field input is this.
16
+ */
17
+ label?: string;
18
+ /**
19
+ * List of options to display.
20
+ */
21
+ options?: MultiSelectOption[] | string[];
22
+ /**
23
+ * Specify the property name of option to be used as label.
24
+ *
25
+ * @default undefined - the label will be sets to the option itself.
26
+ */
27
+ optionLabel?: string;
28
+ /**
29
+ * Specify the property name of option to be used as value.
30
+ *
31
+ * @default undefined - the value will be sets to the option itself.
32
+ */
33
+ optionValue?: string;
34
+ /**
35
+ * Determines if the field uses a validator
36
+ */
37
+ useValidator?: boolean;
38
+ /**
39
+ * Determines if the field is mandatory
40
+ */
41
+ mandatory?: boolean;
42
+ /**
43
+ * Show the text (opsional)
44
+ *
45
+ * @default true if mandatory true
46
+ */
47
+ showOptionalText?: boolean;
48
+ /**
49
+ * Set custom validator message.
50
+ * It is rarely use, this component has handled the validator message.
51
+ */
52
+ validatorMessage?: string;
53
+ /**
54
+ * This prop is required if you use this component in a form input.
55
+ * Specify the unique field name, match with your needs for API request.
56
+ *
57
+ * @default 'multiSelect'
58
+ */
59
+ fieldName?: string;
60
+ /**
61
+ * Default text to display when no option is selected.
62
+ *
63
+ * @default `Select ${label}`
64
+ */
65
+ placeholder?: string;
66
+ /**
67
+ * Whether the MultiSelect is in loading state.
68
+ * @defaultValue false
69
+ */
70
+ loading?: boolean;
71
+ /**
72
+ * Show icon 'info' on the right side of label.
73
+ * Show information to user about the field on icon hover.
74
+ */
75
+ fieldInfo?: string;
76
+ /**
77
+ * Hide the input and controls the overlay state from parent component.
78
+ */
79
+ controls?: boolean;
80
+ /**
81
+ * Disabled state.
82
+ */
83
+ disabled?: boolean;
84
+ /**
85
+ * Wether show the Dropdown option search or not.
86
+ *
87
+ * @default true,
88
+ */
89
+ filter?: boolean;
90
+ /**
91
+ * The filter input Placeholder
92
+ *
93
+ * @default 'Search'
94
+ */
95
+ filterPlaceholder?: string;
96
+ /**
97
+ * Defines how the selected items are displayed.
98
+ *
99
+ * @default 'chip'
100
+ */
101
+ display?: 'comma' | 'chip';
102
+ /**
103
+ * Defines the placeholder (label in input) as medium font.
104
+ * Used in Preset?.
105
+ *
106
+ * @default false
107
+ */
108
+ fontMediumPlaceholder?: boolean;
109
+ /**
110
+ * Label to display after exceeding max selected labels.
111
+ */
112
+ selectedItemsLabel?: string;
113
+ /**
114
+ * Decides how many selected item labels to show at most.
115
+ */
116
+ maxSelectedLabels?: number;
117
+ }
118
+
119
+ /**
120
+ * MultiSelect component emits
121
+ */
122
+ export type MultiSelectEmits = {
123
+ /**
124
+ * Emits when an option selected.
125
+ */
126
+ 'update:modelValue': [value: OptionValue[] | undefined];
127
+ /**
128
+ * Emits when overlay shown.
129
+ */
130
+ 'show': [];
131
+ /**
132
+ * Emits when overlay hidden.
133
+ */
134
+ 'hide': [];
135
+ };
136
+
137
+ /**
138
+ * **WangsVue - MultiSelect**
139
+ *
140
+ * _MultiSelect also known as Select, is used to choose an item from a collection of options._
141
+ *
142
+ * @group Component
143
+ */
144
+ declare class MultiSelect extends ClassComponent<
145
+ MultiSelectProps,
146
+ unknown,
147
+ MultiSelectEmits
148
+ > {
149
+ /**
150
+ * Shows the overlay.
151
+ *
152
+ * @memberof MultiSelect
153
+ */
154
+ showOverlay(): void;
155
+ /**
156
+ * Hides the overlay.
157
+ *
158
+ * @memberof MultiSelect
159
+ */
160
+ hideHideOverlay(): void;
161
+ }
162
+
163
+ declare module '@vue/runtime-core' {
164
+ interface GlobalComponents {
165
+ MultiSelect: GlobalComponentConstructor<MultiSelect>;
166
+ }
167
+ }
168
+
169
+ export default MultiSelect;