@volverjs/ui-vue 0.0.1-beta.8 → 0.0.2

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 (561) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +108 -56
  3. package/bin/icons.cjs +73 -0
  4. package/bin/icons.js +75 -0
  5. package/dist/{DesignSystem.d.ts → Volver.d.ts} +22 -18
  6. package/dist/components/VvAccordion/VvAccordion.es.js +165 -0
  7. package/dist/components/VvAccordion/VvAccordion.umd.js +1 -0
  8. package/dist/components/VvAccordion/VvAccordion.vue.d.ts +32 -97
  9. package/dist/components/VvAccordion/index.d.ts +46 -0
  10. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +243 -0
  11. package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -0
  12. package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +77 -151
  13. package/dist/components/VvAccordionGroup/{VvAccordionGroup.d.ts → index.d.ts} +30 -13
  14. package/dist/components/VvBadge/VvBadge.es.js +62 -0
  15. package/dist/components/VvBadge/VvBadge.umd.js +1 -0
  16. package/dist/components/VvBadge/VvBadge.vue.d.ts +13 -54
  17. package/dist/components/VvBadge/{VvBadge.d.ts → index.d.ts} +1 -1
  18. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +93 -0
  19. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -0
  20. package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +33 -107
  21. package/dist/components/VvBreadcrumb/{VvBreadcrumb.d.ts → index.d.ts} +2 -3
  22. package/dist/components/VvButton/VvButton.es.js +439 -0
  23. package/dist/components/VvButton/VvButton.umd.js +1 -0
  24. package/dist/components/VvButton/VvButton.vue.d.ts +100 -199
  25. package/dist/components/VvButton/index.d.ts +132 -0
  26. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +107 -0
  27. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -0
  28. package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +92 -186
  29. package/dist/components/VvButtonGroup/index.d.ts +54 -0
  30. package/dist/components/VvCard/VvCard.es.js +77 -0
  31. package/dist/components/VvCard/VvCard.umd.js +1 -0
  32. package/dist/components/VvCard/VvCard.vue.d.ts +16 -61
  33. package/dist/components/VvCard/{VvCard.d.ts → index.d.ts} +1 -1
  34. package/dist/components/VvCheckbox/VvCheckbox.es.js +357 -0
  35. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -0
  36. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +74 -0
  37. package/dist/components/VvCheckbox/index.d.ts +54 -0
  38. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +435 -0
  39. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -0
  40. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +82 -0
  41. package/dist/components/VvCheckboxGroup/index.d.ts +32 -0
  42. package/dist/components/VvCombobox/VvCombobox.es.js +775 -0
  43. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -0
  44. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +175 -0
  45. package/dist/components/VvCombobox/index.d.ts +108 -0
  46. package/dist/components/VvDialog/VvDialog.es.js +200 -0
  47. package/dist/components/VvDialog/VvDialog.umd.js +1 -0
  48. package/dist/components/VvDialog/VvDialog.vue.d.ts +28 -132
  49. package/dist/components/VvDialog/{VvDialog.d.ts → index.d.ts} +2 -6
  50. package/dist/components/VvDropdown/VvDropdown.es.js +227 -0
  51. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -0
  52. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +59 -146
  53. package/dist/components/VvDropdown/index.d.ts +49 -0
  54. package/dist/components/VvIcon/VvIcon.es.js +124 -0
  55. package/dist/components/VvIcon/VvIcon.umd.js +1 -0
  56. package/dist/components/VvIcon/VvIcon.vue.d.ts +36 -150
  57. package/dist/components/VvIcon/{VvIcon.d.ts → index.d.ts} +9 -0
  58. package/dist/components/VvInputText/VvInputClearAction.d.ts +36 -0
  59. package/dist/components/VvInputText/VvInputPasswordAction.d.ts +56 -0
  60. package/dist/components/VvInputText/VvInputStepAction.d.ts +37 -0
  61. package/dist/components/VvInputText/VvInputText.es.js +772 -0
  62. package/dist/components/VvInputText/VvInputText.umd.js +1 -0
  63. package/dist/components/VvInputText/VvInputText.vue.d.ts +211 -288
  64. package/dist/components/VvInputText/VvInputTextActions.d.ts +1 -1
  65. package/dist/components/VvInputText/index.d.ts +182 -0
  66. package/dist/components/VvProgress/VvProgress.es.js +71 -0
  67. package/dist/components/VvProgress/VvProgress.umd.js +1 -0
  68. package/dist/components/VvProgress/VvProgress.vue.d.ts +20 -107
  69. package/dist/components/VvProgress/index.d.ts +30 -0
  70. package/dist/components/VvRadio/VvRadio.es.js +320 -0
  71. package/dist/components/VvRadio/VvRadio.umd.js +1 -0
  72. package/dist/components/VvRadio/VvRadio.vue.d.ts +55 -125
  73. package/dist/components/VvRadio/index.d.ts +40 -0
  74. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +398 -0
  75. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -0
  76. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +56 -238
  77. package/dist/components/VvRadioGroup/index.d.ts +32 -0
  78. package/dist/components/VvSelect/VvSelect.es.js +434 -0
  79. package/dist/components/VvSelect/VvSelect.umd.js +1 -0
  80. package/dist/components/VvSelect/VvSelect.vue.d.ts +125 -263
  81. package/dist/components/VvSelect/index.d.ts +89 -0
  82. package/dist/components/VvTextarea/VvTextarea.es.js +471 -0
  83. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -0
  84. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +140 -321
  85. package/dist/components/VvTextarea/index.d.ts +102 -0
  86. package/dist/components/common/HintSlot.d.ts +12 -6
  87. package/dist/components/index.d.ts +19 -12
  88. package/dist/components/index.es.js +2379 -0
  89. package/dist/components/index.umd.js +1 -0
  90. package/dist/composables/group/types/IAccordionGroupState.d.ts +3 -4
  91. package/dist/composables/group/types/IButtonGroupState.d.ts +5 -11
  92. package/dist/composables/group/types/IGroupState.d.ts +3 -6
  93. package/dist/composables/group/types/IInputGroup.d.ts +1 -4
  94. package/dist/composables/group/useInjectedGroupState.d.ts +4 -4
  95. package/dist/composables/group/useProvideGroupState.d.ts +2 -2
  96. package/dist/composables/useComponentFocus.d.ts +4 -0
  97. package/dist/composables/{icons/useComponentIcons.d.ts → useComponentIcons.d.ts} +3 -2
  98. package/dist/composables/useDebouncedInput.d.ts +2 -0
  99. package/dist/composables/useOptions.d.ts +6 -0
  100. package/dist/composables/useTextCount.d.ts +10 -0
  101. package/dist/constants.d.ts +4 -4
  102. package/dist/icons.d.ts +1881 -0
  103. package/dist/icons.es.js +12 -14
  104. package/dist/icons.umd.js +1 -1
  105. package/dist/index.d.ts +9 -4
  106. package/dist/index.es.js +2420 -0
  107. package/dist/index.umd.js +1 -0
  108. package/dist/props/index.d.ts +328 -30
  109. package/dist/resolvers/unplugin.d.ts +27 -0
  110. package/dist/resolvers/unplugin.es.js +42 -0
  111. package/dist/resolvers/unplugin.umd.js +1 -0
  112. package/dist/stories/Accordion/Accordion.settings.d.ts +63 -0
  113. package/dist/stories/Accordion/Accordion.test.d.ts +2 -0
  114. package/dist/stories/AccordionGroup/AccordionGroup.settings.d.ts +58 -0
  115. package/dist/stories/AccordionGroup/AccordionGroup.test.d.ts +2 -0
  116. package/dist/stories/Badge/Badge.settings.d.ts +32 -0
  117. package/dist/stories/Badge/Badge.test.d.ts +2 -0
  118. package/dist/stories/Breadcrumb/Breadcrumb.settings.d.ts +29 -0
  119. package/dist/stories/Breadcrumb/Breadcrumb.test.d.ts +2 -0
  120. package/dist/stories/Button/Button.settings.d.ts +198 -0
  121. package/dist/stories/Button/Button.test.d.ts +1 -10
  122. package/dist/stories/ButtonGroup/ButtonGroup.settings.d.ts +47 -0
  123. package/dist/stories/ButtonGroup/ButtonGroup.test.d.ts +2 -0
  124. package/dist/stories/Card/Card.settings.d.ts +70 -0
  125. package/dist/stories/Card/Card.test.d.ts +2 -0
  126. package/dist/stories/Checkbox/Checkbox.settings.d.ts +165 -0
  127. package/dist/stories/Checkbox/Checkbox.test.d.ts +2 -0
  128. package/dist/stories/CheckboxGroup/CheckboxGroup.settings.d.ts +164 -0
  129. package/dist/stories/CheckboxGroup/CheckboxGroup.test.d.ts +2 -0
  130. package/dist/stories/Combobox/Combobox.settings.d.ts +286 -0
  131. package/dist/stories/Combobox/Combobox.test.d.ts +2 -0
  132. package/dist/stories/Dialog/Dialog.settings.d.ts +55 -0
  133. package/dist/stories/Dialog/Dialog.test.d.ts +2 -0
  134. package/dist/stories/Dropdown/Dropdown.settings.d.ts +85 -0
  135. package/dist/stories/Dropdown/Dropdown.test.d.ts +2 -0
  136. package/dist/stories/Icon/Icon.settings.d.ts +74 -0
  137. package/dist/stories/InputText/InputText.settings.d.ts +445 -0
  138. package/dist/stories/InputText/InputText.test.d.ts +2 -0
  139. package/dist/stories/Progress/Progress.settings.d.ts +38 -0
  140. package/dist/stories/Progress/Progress.test.d.ts +2 -0
  141. package/dist/stories/Radio/Radio.settings.d.ts +139 -0
  142. package/dist/stories/Radio/Radio.test.d.ts +2 -0
  143. package/dist/stories/RadioGroup/RadioGroup.settings.d.ts +164 -0
  144. package/dist/stories/RadioGroup/RadioGroup.test.d.ts +2 -0
  145. package/dist/stories/Select/Select.settings.d.ts +284 -0
  146. package/dist/stories/Select/Select.test.d.ts +2 -0
  147. package/dist/stories/Textarea/Textarea.settings.d.ts +336 -0
  148. package/dist/stories/Textarea/Textarea.test.d.ts +2 -0
  149. package/dist/stories/argTypes.d.ts +842 -0
  150. package/dist/test/expect.d.ts +3 -0
  151. package/dist/test/options.d.ts +1 -0
  152. package/dist/test/sleep.d.ts +1 -0
  153. package/dist/utils/ObjectUtilities.d.ts +82 -95
  154. package/env.d.ts +1 -0
  155. package/package.json +199 -126
  156. package/src/{DesignSystem.ts → Volver.ts} +57 -29
  157. package/src/assets/icons/detailed.json +1 -1
  158. package/src/assets/icons/normal.json +1 -1
  159. package/src/assets/icons/simple.json +1 -1
  160. package/src/components/VvAccordion/VvAccordion.vue +94 -78
  161. package/src/components/VvAccordion/index.ts +72 -0
  162. package/src/components/VvAccordionGroup/VvAccordionGroup.vue +93 -53
  163. package/src/components/VvAccordionGroup/{VvAccordionGroup.ts → index.ts} +18 -14
  164. package/src/components/VvBadge/VvBadge.vue +17 -8
  165. package/src/components/VvBadge/index.ts +6 -0
  166. package/src/components/VvBreadcrumb/VvBreadcrumb.vue +26 -24
  167. package/src/components/VvBreadcrumb/{VvBreadcrumb.ts → index.ts} +1 -2
  168. package/src/components/VvButton/VvButton.vue +174 -153
  169. package/src/components/VvButton/index.ts +189 -0
  170. package/src/components/VvButtonGroup/VvButtonGroup.vue +76 -48
  171. package/src/components/VvButtonGroup/index.ts +16 -0
  172. package/src/components/VvCard/VvCard.vue +20 -22
  173. package/src/components/VvCard/{VvCard.ts → index.ts} +1 -1
  174. package/src/components/VvCheckbox/VvCheckbox.vue +172 -0
  175. package/src/components/VvCheckbox/index.ts +60 -0
  176. package/src/components/VvCheckboxGroup/VvCheckboxGroup.vue +85 -0
  177. package/src/components/VvCheckboxGroup/index.ts +5 -0
  178. package/src/components/VvCombobox/VvCombobox.vue +261 -0
  179. package/src/components/VvCombobox/index.ts +88 -0
  180. package/src/components/VvDialog/VvDialog.vue +69 -67
  181. package/src/components/VvDialog/index.ts +10 -0
  182. package/src/components/VvDropdown/VvDropdown.vue +115 -114
  183. package/src/components/VvDropdown/index.ts +35 -0
  184. package/src/components/VvIcon/README.md +64 -0
  185. package/src/components/VvIcon/VvIcon.vue +122 -107
  186. package/src/components/VvIcon/{VvIcon.ts → index.ts} +17 -8
  187. package/src/components/VvInputText/VvInputClearAction.ts +53 -0
  188. package/src/components/VvInputText/VvInputPasswordAction.ts +70 -0
  189. package/src/components/VvInputText/VvInputStepAction.ts +49 -0
  190. package/src/components/VvInputText/VvInputText.vue +307 -238
  191. package/src/components/VvInputText/VvInputTextActions.ts +63 -114
  192. package/src/components/VvInputText/index.ts +140 -0
  193. package/src/components/VvProgress/VvProgress.vue +29 -29
  194. package/src/components/VvProgress/index.ts +32 -0
  195. package/src/components/VvRadio/VvRadio.vue +90 -119
  196. package/src/components/VvRadio/index.ts +40 -0
  197. package/src/components/VvRadioGroup/VvRadioGroup.vue +76 -69
  198. package/src/components/VvRadioGroup/index.ts +5 -0
  199. package/src/components/VvSelect/VvSelect.vue +187 -186
  200. package/src/components/VvSelect/index.ts +71 -0
  201. package/src/components/VvTextarea/VvTextarea.vue +188 -174
  202. package/src/components/VvTextarea/index.ts +50 -0
  203. package/src/components/common/HintSlot.ts +167 -137
  204. package/src/components/index.ts +19 -12
  205. package/src/composables/group/types/IAccordionGroupState.ts +3 -4
  206. package/src/composables/group/types/IButtonGroupState.ts +5 -11
  207. package/src/composables/group/types/IGroupState.ts +4 -6
  208. package/src/composables/group/types/IInputGroup.ts +1 -4
  209. package/src/composables/group/useInjectedGroupState.ts +23 -35
  210. package/src/composables/group/useProvideGroupState.ts +5 -7
  211. package/src/composables/useComponentFocus.ts +17 -0
  212. package/src/composables/{icons/useComponentIcons.ts → useComponentIcons.ts} +29 -20
  213. package/src/composables/useDebouncedInput.ts +25 -0
  214. package/src/composables/useModifiers.ts +18 -20
  215. package/src/composables/useOptions.ts +31 -0
  216. package/src/composables/useTextCount.ts +57 -0
  217. package/src/constants.ts +5 -7
  218. package/src/directives/{.README → .gitkeep} +0 -0
  219. package/src/icons.ts +7 -0
  220. package/src/index.ts +12 -5
  221. package/src/props/index.ts +204 -36
  222. package/src/resolvers/unplugin.ts +112 -0
  223. package/src/shims.d.ts +13 -0
  224. package/src/stories/Accordion/Accordion.settings.ts +46 -0
  225. package/src/stories/Accordion/Accordion.stories.mdx +21 -21
  226. package/src/stories/Accordion/Accordion.test.ts +61 -0
  227. package/src/stories/Accordion/AccordionSlots.stories.mdx +46 -70
  228. package/src/stories/AccordionGroup/AccordionGroup.settings.ts +55 -0
  229. package/src/stories/AccordionGroup/AccordionGroup.stories.mdx +24 -27
  230. package/src/stories/AccordionGroup/AccordionGroup.test.ts +50 -0
  231. package/src/stories/AccordionGroup/AccordionGroupSlots.stories.mdx +56 -0
  232. package/src/stories/Badge/Badge.settings.ts +26 -0
  233. package/src/stories/Badge/Badge.stories.mdx +36 -24
  234. package/src/stories/Badge/Badge.test.ts +12 -0
  235. package/src/stories/Badge/BadgeSlots.stories.mdx +20 -0
  236. package/src/stories/Breadcrumb/Breadcrumb.settings.ts +41 -0
  237. package/src/stories/Breadcrumb/Breadcrumb.stories.mdx +32 -29
  238. package/src/stories/Breadcrumb/Breadcrumb.test.ts +50 -0
  239. package/src/stories/Breadcrumb/BreadcrumbSlots.stories.mdx +43 -0
  240. package/src/stories/Button/Button.settings.ts +145 -0
  241. package/src/stories/Button/Button.stories.mdx +20 -54
  242. package/src/stories/Button/Button.test.ts +35 -46
  243. package/src/stories/Button/ButtonIcon.stories.mdx +139 -29
  244. package/src/stories/Button/ButtonLink.stories.mdx +58 -111
  245. package/src/stories/Button/ButtonLoading.stories.mdx +89 -62
  246. package/src/stories/Button/ButtonModifiers.stories.mdx +198 -121
  247. package/src/stories/Button/ButtonSlots.stories.mdx +83 -95
  248. package/src/stories/Button/ButtonState.stories.mdx +75 -0
  249. package/src/stories/Button/ButtonToggle.stories.mdx +50 -0
  250. package/src/stories/ButtonGroup/ButtonGroup.settings.ts +33 -0
  251. package/src/stories/ButtonGroup/ButtonGroup.stories.mdx +16 -18
  252. package/src/stories/ButtonGroup/ButtonGroup.test.ts +35 -0
  253. package/src/stories/ButtonGroup/ButtonGroupModifiers.stories.mdx +52 -0
  254. package/src/stories/ButtonGroup/ButtonGroupSlots.stories.mdx +37 -0
  255. package/src/stories/ButtonGroup/ButtonGroupToggle.stories.mdx +52 -110
  256. package/src/stories/Card/Card.settings.ts +55 -0
  257. package/src/stories/Card/Card.stories.mdx +27 -11
  258. package/src/stories/Card/Card.test.ts +23 -0
  259. package/src/stories/Card/CardSlots.stories.mdx +80 -24
  260. package/src/stories/Checkbox/Checkbox.settings.ts +43 -0
  261. package/src/stories/Checkbox/Checkbox.stories.mdx +163 -0
  262. package/src/stories/Checkbox/Checkbox.test.ts +81 -0
  263. package/src/stories/Checkbox/CheckboxBinary.stories.mdx +68 -0
  264. package/src/stories/Checkbox/CheckboxSlots.stories.mdx +46 -0
  265. package/src/stories/CheckboxGroup/CheckboxGroup.settings.ts +15 -0
  266. package/src/stories/CheckboxGroup/CheckboxGroup.stories.mdx +134 -0
  267. package/src/stories/CheckboxGroup/CheckboxGroup.test.ts +83 -0
  268. package/src/stories/CheckboxGroup/CheckboxGroupOptions.stories.mdx +100 -0
  269. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.mdx +67 -0
  270. package/src/stories/Combobox/Combobox.settings.ts +127 -0
  271. package/src/stories/Combobox/Combobox.stories.mdx +204 -0
  272. package/src/stories/Combobox/Combobox.test.ts +103 -0
  273. package/src/stories/Combobox/ComboboxMultiple.stories.mdx +74 -0
  274. package/src/stories/Combobox/ComboboxOptions.stories.mdx +100 -0
  275. package/src/stories/Combobox/ComboboxSlots.stories.mdx +48 -0
  276. package/src/stories/Dialog/Dialog.settings.ts +45 -0
  277. package/src/stories/Dialog/Dialog.stories.mdx +42 -16
  278. package/src/stories/Dialog/Dialog.test.ts +69 -0
  279. package/src/stories/Dialog/DialogSlots.stories.mdx +63 -0
  280. package/src/stories/Dropdown/Dropdown.settings.ts +51 -0
  281. package/src/stories/Dropdown/Dropdown.stories.mdx +102 -29
  282. package/src/stories/Dropdown/Dropdown.test.ts +43 -0
  283. package/src/stories/Dropdown/DropdownOptions.stories.mdx +87 -67
  284. package/src/stories/Icon/Icon.settings.ts +72 -0
  285. package/src/stories/Icon/Icon.stories.mdx +76 -59
  286. package/src/stories/Icon/IconsCollection.stories.mdx +68 -0
  287. package/src/stories/InputText/InputText.settings.ts +221 -0
  288. package/src/stories/InputText/InputText.stories.mdx +142 -69
  289. package/src/stories/InputText/InputText.test.ts +125 -0
  290. package/src/stories/InputText/InputTextIconPosition.stories.mdx +63 -16
  291. package/src/stories/InputText/InputTextLength.stories.mdx +110 -0
  292. package/src/stories/InputText/InputTextMinMax.stories.mdx +112 -0
  293. package/src/stories/InputText/InputTextSlots.stories.mdx +61 -22
  294. package/src/stories/InputText/InputTextType.stories.mdx +207 -29
  295. package/src/stories/Progress/Progress.settings.ts +33 -0
  296. package/src/stories/Progress/Progress.stories.mdx +12 -14
  297. package/src/stories/Progress/Progress.test.ts +9 -0
  298. package/src/stories/Radio/Radio.settings.ts +15 -0
  299. package/src/stories/Radio/Radio.stories.mdx +102 -42
  300. package/src/stories/Radio/Radio.test.ts +70 -0
  301. package/src/stories/Radio/RadioSlots.stories.mdx +39 -22
  302. package/src/stories/RadioGroup/RadioGroup.settings.ts +15 -0
  303. package/src/stories/RadioGroup/RadioGroup.stories.mdx +115 -54
  304. package/src/stories/RadioGroup/RadioGroup.test.ts +83 -0
  305. package/src/stories/RadioGroup/RadioGroupOptions.stories.mdx +83 -41
  306. package/src/stories/RadioGroup/RadioGroupSlots.stories.mdx +49 -144
  307. package/src/stories/Select/Select.settings.ts +86 -0
  308. package/src/stories/Select/Select.stories.mdx +173 -33
  309. package/src/stories/Select/Select.test.ts +82 -0
  310. package/src/stories/Select/SelectOptions.stories.mdx +91 -69
  311. package/src/stories/Select/SelectSlots.stories.mdx +48 -0
  312. package/src/stories/Textarea/Textarea.settings.ts +96 -0
  313. package/src/stories/Textarea/Textarea.stories.mdx +167 -47
  314. package/src/stories/Textarea/Textarea.test.ts +90 -0
  315. package/src/stories/Textarea/TextareaLength.stories.mdx +110 -0
  316. package/src/stories/Textarea/TextareaSlots.stories.mdx +61 -23
  317. package/src/stories/Textarea/TextareatIconPosition.stories.mdx +78 -0
  318. package/src/stories/argTypes.ts +457 -0
  319. package/src/test/expect.ts +27 -6
  320. package/src/test/options.ts +17 -0
  321. package/src/test/sleep.ts +2 -0
  322. package/src/test/types.d.ts +14 -0
  323. package/src/types/generic.d.ts +5 -0
  324. package/src/utils/ObjectUtilities.ts +253 -244
  325. package/dist/components/VvAccordion/VvAccordion.d.ts +0 -32
  326. package/dist/components/VvAccordion/useAccordionProps.d.ts +0 -16
  327. package/dist/components/VvAccordion/vv-accordion.es.js +0 -262
  328. package/dist/components/VvAccordion/vv-accordion.umd.js +0 -1
  329. package/dist/components/VvAccordionGroup/vv-accordion-group.es.js +0 -315
  330. package/dist/components/VvAccordionGroup/vv-accordion-group.umd.js +0 -1
  331. package/dist/components/VvBadge/vv-badge.es.js +0 -18
  332. package/dist/components/VvBadge/vv-badge.umd.js +0 -1
  333. package/dist/components/VvBreadcrumb/vv-breadcrumb.es.js +0 -206
  334. package/dist/components/VvBreadcrumb/vv-breadcrumb.umd.js +0 -1
  335. package/dist/components/VvButton/VvButton.d.ts +0 -115
  336. package/dist/components/VvButton/useButtonGroupProps.d.ts +0 -23
  337. package/dist/components/VvButton/vv-button.es.js +0 -422
  338. package/dist/components/VvButton/vv-button.umd.js +0 -1
  339. package/dist/components/VvButtonGroup/VvButtonGroup.d.ts +0 -57
  340. package/dist/components/VvButtonGroup/vv-button-group.es.js +0 -210
  341. package/dist/components/VvButtonGroup/vv-button-group.umd.js +0 -1
  342. package/dist/components/VvCard/vv-card.es.js +0 -188
  343. package/dist/components/VvCard/vv-card.umd.js +0 -1
  344. package/dist/components/VvCheck/VvCheck.d.ts +0 -47
  345. package/dist/components/VvCheck/VvCheck.vue.d.ts +0 -165
  346. package/dist/components/VvCheck/useCheckProps.d.ts +0 -16
  347. package/dist/components/VvCheck/vv-check.es.js +0 -321
  348. package/dist/components/VvCheck/vv-check.umd.js +0 -1
  349. package/dist/components/VvCheckGroup/VvCheckGroup.d.ts +0 -65
  350. package/dist/components/VvCheckGroup/VvCheckGroup.vue.d.ts +0 -272
  351. package/dist/components/VvCheckGroup/vv-check-group.es.js +0 -452
  352. package/dist/components/VvCheckGroup/vv-check-group.umd.js +0 -2
  353. package/dist/components/VvDialog/constants.d.ts +0 -5
  354. package/dist/components/VvDialog/vv-dialog.es.js +0 -315
  355. package/dist/components/VvDialog/vv-dialog.umd.js +0 -1
  356. package/dist/components/VvDropdown/VvDropdown.d.ts +0 -52
  357. package/dist/components/VvDropdown/vv-dropdown.es.js +0 -236
  358. package/dist/components/VvDropdown/vv-dropdown.umd.js +0 -1
  359. package/dist/components/VvIcon/vv-icon.es.js +0 -229
  360. package/dist/components/VvIcon/vv-icon.umd.js +0 -1
  361. package/dist/components/VvInputText/VvInputText.d.ts +0 -73
  362. package/dist/components/VvInputText/constants.d.ts +0 -55
  363. package/dist/components/VvInputText/vv-input-text.es.js +0 -725
  364. package/dist/components/VvInputText/vv-input-text.umd.js +0 -2
  365. package/dist/components/VvNativeSelect/VvNativeSelect.d.ts +0 -70
  366. package/dist/components/VvNativeSelect/VvNativeSelect.vue.d.ts +0 -228
  367. package/dist/components/VvNativeSelect/vv-native-select.es.js +0 -414
  368. package/dist/components/VvNativeSelect/vv-native-select.umd.js +0 -2
  369. package/dist/components/VvProgress/VvProgress.d.ts +0 -29
  370. package/dist/components/VvProgress/vv-progress.es.js +0 -185
  371. package/dist/components/VvProgress/vv-progress.umd.js +0 -1
  372. package/dist/components/VvRadio/VvRadio.d.ts +0 -22
  373. package/dist/components/VvRadio/useRadioProps.d.ts +0 -15
  374. package/dist/components/VvRadio/vv-radio.es.js +0 -309
  375. package/dist/components/VvRadio/vv-radio.umd.js +0 -1
  376. package/dist/components/VvRadioGroup/VvRadioGroup.d.ts +0 -54
  377. package/dist/components/VvRadioGroup/vv-radio-group.es.js +0 -441
  378. package/dist/components/VvRadioGroup/vv-radio-group.umd.js +0 -2
  379. package/dist/components/VvSelect/VvSelect.d.ts +0 -99
  380. package/dist/components/VvSelect/vv-select.es.js +0 -445
  381. package/dist/components/VvSelect/vv-select.umd.js +0 -2
  382. package/dist/components/VvTextarea/VvTextarea.d.ts +0 -88
  383. package/dist/components/VvTextarea/constants.d.ts +0 -19
  384. package/dist/components/VvTextarea/vv-textarea.es.js +0 -548
  385. package/dist/components/VvTextarea/vv-textarea.umd.js +0 -2
  386. package/dist/composables/debouncedInput/useDebouncedInput.d.ts +0 -2
  387. package/dist/composables/focus/useComponentFocus.d.ts +0 -7
  388. package/dist/composables/options/useOptions.d.ts +0 -5
  389. package/dist/composables/textLimit/useTextLimit.d.ts +0 -14
  390. package/dist/stories/Icon/IconList.vue.d.ts +0 -44
  391. package/dist/stories/utils.d.ts +0 -5
  392. package/dist/ui-vue.es.js +0 -3001
  393. package/dist/ui-vue.umd.js +0 -2
  394. package/src/assets/icons/index.js +0 -7
  395. package/src/components/VvAccordion/VvAccordion.ts +0 -34
  396. package/src/components/VvAccordion/useAccordionProps.ts +0 -45
  397. package/src/components/VvBadge/VvBadge.ts +0 -4
  398. package/src/components/VvButton/VvButton.ts +0 -117
  399. package/src/components/VvButton/useButtonGroupProps.ts +0 -51
  400. package/src/components/VvButtonGroup/VvButtonGroup.ts +0 -37
  401. package/src/components/VvCheck/VvCheck.ts +0 -48
  402. package/src/components/VvCheck/VvCheck.vue +0 -149
  403. package/src/components/VvCheck/useCheckProps.ts +0 -41
  404. package/src/components/VvCheckGroup/VvCheckGroup.ts +0 -34
  405. package/src/components/VvCheckGroup/VvCheckGroup.vue +0 -84
  406. package/src/components/VvDialog/VvDialog.ts +0 -17
  407. package/src/components/VvDialog/constants.ts +0 -5
  408. package/src/components/VvDropdown/VvDropdown.ts +0 -46
  409. package/src/components/VvInputText/VvInputText.ts +0 -66
  410. package/src/components/VvInputText/constants.ts +0 -34
  411. package/src/components/VvNativeSelect/VvNativeSelect.ts +0 -70
  412. package/src/components/VvNativeSelect/VvNativeSelect.vue +0 -106
  413. package/src/components/VvProgress/VvProgress.ts +0 -28
  414. package/src/components/VvRadio/VvRadio.ts +0 -25
  415. package/src/components/VvRadio/useRadioProps.ts +0 -40
  416. package/src/components/VvRadioGroup/VvRadioGroup.ts +0 -25
  417. package/src/components/VvSelect/VvSelect.ts +0 -91
  418. package/src/components/VvTextarea/VvTextarea.ts +0 -64
  419. package/src/components/VvTextarea/constants.ts +0 -14
  420. package/src/composables/debouncedInput/useDebouncedInput.ts +0 -19
  421. package/src/composables/focus/useComponentFocus.ts +0 -22
  422. package/src/composables/options/useOptions.ts +0 -27
  423. package/src/composables/textLimit/useTextLimit.ts +0 -44
  424. package/src/stories/Accordion/AccordionBordered.stories.mdx +0 -26
  425. package/src/stories/Accordion/AccordionIconRight.stories.mdx +0 -32
  426. package/src/stories/Accordion/accordionTest.js +0 -36
  427. package/src/stories/AccordionGroup/Accordion.stories.mdx +0 -42
  428. package/src/stories/AccordionGroup/AccordionItems.stories.mdx +0 -51
  429. package/src/stories/AccordionGroup/accordionGroupTest.js +0 -51
  430. package/src/stories/Badge/BadgeColor.stories.mdx +0 -54
  431. package/src/stories/Badge/BadgeDot.stories.mdx +0 -20
  432. package/src/stories/Badge/BadgeTest.js +0 -21
  433. package/src/stories/Breadcrumb/BreadcrumbMultiline.stories.mdx +0 -41
  434. package/src/stories/Button/ButtonBadge.stories.mdx +0 -34
  435. package/src/stories/Button/ButtonIconPosition.stories.mdx +0 -106
  436. package/src/stories/Button/ButtonVariant.stories.mdx +0 -205
  437. package/src/stories/Button/test.js +0 -41
  438. package/src/stories/ButtonGroup/ButtonGroupAction.stories.mdx +0 -83
  439. package/src/stories/ButtonGroup/ButtonGroupActionQuiet.stories.mdx +0 -50
  440. package/src/stories/ButtonGroup/ButtonGroupBlock.stories.mdx +0 -40
  441. package/src/stories/ButtonGroup/ButtonGroupCompact.stories.mdx +0 -38
  442. package/src/stories/ButtonGroup/ButtonGroupRounded.stories.mdx +0 -77
  443. package/src/stories/ButtonGroup/ButtonGroupTest.js +0 -61
  444. package/src/stories/ButtonGroup/ButtonGroupVertical.stories.mdx +0 -38
  445. package/src/stories/Card/CardVariant.stories.mdx +0 -37
  446. package/src/stories/Check/Check.stories.mdx +0 -62
  447. package/src/stories/Check/CheckBinary.stories.mdx +0 -80
  448. package/src/stories/Check/CheckDisabled.stories.mdx +0 -30
  449. package/src/stories/Check/CheckError.stories.mdx +0 -64
  450. package/src/stories/Check/CheckErrorTests.js +0 -72
  451. package/src/stories/Check/CheckHintLabel.stories.mdx +0 -30
  452. package/src/stories/Check/CheckPropertyTest.js +0 -101
  453. package/src/stories/Check/CheckReadonly.stories.mdx +0 -30
  454. package/src/stories/Check/CheckSlots.stories.mdx +0 -51
  455. package/src/stories/Check/CheckSwitch.stories.mdx +0 -30
  456. package/src/stories/CheckGroup/CheckGroup.stories.mdx +0 -69
  457. package/src/stories/CheckGroup/CheckGroupDisabled.stories.mdx +0 -26
  458. package/src/stories/CheckGroup/CheckGroupError.stories.mdx +0 -28
  459. package/src/stories/CheckGroup/CheckGroupHintLabel.stories.mdx +0 -27
  460. package/src/stories/CheckGroup/CheckGroupLabel.stories.mdx +0 -26
  461. package/src/stories/CheckGroup/CheckGroupOptionLabel.stories.mdx +0 -48
  462. package/src/stories/CheckGroup/CheckGroupOptionValue.stories.mdx +0 -48
  463. package/src/stories/CheckGroup/CheckGroupOptions.stories.mdx +0 -40
  464. package/src/stories/CheckGroup/CheckGroupReadonly.stories.mdx +0 -26
  465. package/src/stories/CheckGroup/CheckGroupSlots.stories.mdx +0 -152
  466. package/src/stories/CheckGroup/CheckGroupValid.stories.mdx +0 -28
  467. package/src/stories/CheckGroup/CheckGroupVertical.stories.mdx +0 -26
  468. package/src/stories/Dialog/DialogAutoClose.stories.mdx +0 -18
  469. package/src/stories/Dialog/DialogSize.stories.mdx +0 -36
  470. package/src/stories/Dropdown/DropdownDisabled.stories.mdx +0 -25
  471. package/src/stories/Dropdown/DropdownLabelNoResults.stories.mdx +0 -25
  472. package/src/stories/Dropdown/DropdownMaxValues.stories.mdx +0 -26
  473. package/src/stories/Dropdown/DropdownMultiple.stories.mdx +0 -56
  474. package/src/stories/Dropdown/DropdownUseObject.stories.mdx +0 -58
  475. package/src/stories/Icon/IconList.vue +0 -34
  476. package/src/stories/Icon/IconPrefix.stories.mdx +0 -79
  477. package/src/stories/Icon/IconRemote.stories.mdx +0 -39
  478. package/src/stories/Icon/IconTest.js +0 -27
  479. package/src/stories/Icon/IconsList.stories.mdx +0 -35
  480. package/src/stories/InputText/InputTextAutocomplete.stories.mdx +0 -15
  481. package/src/stories/InputText/InputTextAutofocus.stories.mdx +0 -20
  482. package/src/stories/InputText/InputTextDisabled.stories.mdx +0 -19
  483. package/src/stories/InputText/InputTextError.stories.mdx +0 -19
  484. package/src/stories/InputText/InputTextFloating.stories.mdx +0 -20
  485. package/src/stories/InputText/InputTextHintLabel.stories.mdx +0 -18
  486. package/src/stories/InputText/InputTextIcon.stories.mdx +0 -18
  487. package/src/stories/InputText/InputTextLabel.stories.mdx +0 -15
  488. package/src/stories/InputText/InputTextLoading.stories.mdx +0 -19
  489. package/src/stories/InputText/InputTextMax.stories.mdx +0 -31
  490. package/src/stories/InputText/InputTextMaxLength.stories.mdx +0 -36
  491. package/src/stories/InputText/InputTextMin.stories.mdx +0 -31
  492. package/src/stories/InputText/InputTextMinLength.stories.mdx +0 -15
  493. package/src/stories/InputText/InputTextPlaceholder.stories.mdx +0 -15
  494. package/src/stories/InputText/InputTextReadonly.stories.mdx +0 -19
  495. package/src/stories/InputText/InputTextStep.stories.mdx +0 -31
  496. package/src/stories/InputText/InputTextValid.stories.mdx +0 -19
  497. package/src/stories/NativeSelect/NativeSelect.stories.mdx +0 -53
  498. package/src/stories/NativeSelect/NativeSelectDisabled.stories.mdx +0 -32
  499. package/src/stories/NativeSelect/NativeSelectError.stories.mdx +0 -36
  500. package/src/stories/NativeSelect/NativeSelectHintLabel.stories.mdx +0 -34
  501. package/src/stories/NativeSelect/NativeSelectIconLeftRight.stories.mdx +0 -42
  502. package/src/stories/NativeSelect/NativeSelectLoading.stories.mdx +0 -27
  503. package/src/stories/NativeSelect/NativeSelectOptions.stories.mdx +0 -78
  504. package/src/stories/NativeSelect/NativeSelectReadonly.stories.mdx +0 -34
  505. package/src/stories/NativeSelect/NativeSelectUseObject.stories.mdx +0 -66
  506. package/src/stories/NativeSelect/NativeSelectValid.stories.mdx +0 -36
  507. package/src/stories/NativeSelect/NativeSelectValueKey.stories.mdx +0 -66
  508. package/src/stories/Progress/ProgressDeterminate.stories.mdx +0 -19
  509. package/src/stories/Radio/RadioDisabled.stories.mdx +0 -30
  510. package/src/stories/Radio/RadioError.stories.mdx +0 -64
  511. package/src/stories/Radio/RadioHintLabel.stories.mdx +0 -30
  512. package/src/stories/Radio/RadioTest.js +0 -89
  513. package/src/stories/RadioGroup/RadioGroupDisabled.stories.mdx +0 -29
  514. package/src/stories/RadioGroup/RadioGroupError.stories.mdx +0 -31
  515. package/src/stories/RadioGroup/RadioGroupHintLabel.stories.mdx +0 -28
  516. package/src/stories/RadioGroup/RadioGroupLabel.stories.mdx +0 -29
  517. package/src/stories/RadioGroup/RadioGroupOptionLabel.stories.mdx +0 -65
  518. package/src/stories/RadioGroup/RadioGroupOptionValue.stories.mdx +0 -65
  519. package/src/stories/RadioGroup/RadioGroupReadonly.stories.mdx +0 -29
  520. package/src/stories/RadioGroup/RadioGroupValid.stories.mdx +0 -31
  521. package/src/stories/RadioGroup/RadioGroupVertical.stories.mdx +0 -29
  522. package/src/stories/RadioGroup/RadioOptionsTest.js +0 -78
  523. package/src/stories/RadioGroup/RadioPropertyTest.js +0 -131
  524. package/src/stories/RadioGroup/RadioSlotsTest.js +0 -20
  525. package/src/stories/Select/SelectDisabled.stories.mdx +0 -32
  526. package/src/stories/Select/SelectMaxValues.stories.mdx +0 -33
  527. package/src/stories/Select/SelectMultiple.stories.mdx +0 -64
  528. package/src/stories/Select/SelectSearchable.stories.mdx +0 -80
  529. package/src/stories/Select/SelectSeparator.stories.mdx +0 -64
  530. package/src/stories/Select/SelectUseObject.stories.mdx +0 -66
  531. package/src/stories/Textarea/TextareaAutoclear.stories.mdx +0 -23
  532. package/src/stories/Textarea/TextareaAutocomplete.stories.mdx +0 -23
  533. package/src/stories/Textarea/TextareaAutofocus.stories.mdx +0 -24
  534. package/src/stories/Textarea/TextareaDebounce.stories.mdx +0 -23
  535. package/src/stories/Textarea/TextareaDisabled.stories.mdx +0 -23
  536. package/src/stories/Textarea/TextareaError.stories.mdx +0 -22
  537. package/src/stories/Textarea/TextareaErrorLabel.stories.mdx +0 -37
  538. package/src/stories/Textarea/TextareaFloating.stories.mdx +0 -25
  539. package/src/stories/Textarea/TextareaHintLabel.stories.mdx +0 -22
  540. package/src/stories/Textarea/TextareaIcon.stories.mdx +0 -22
  541. package/src/stories/Textarea/TextareaIconPosition.stories.mdx +0 -39
  542. package/src/stories/Textarea/TextareaId.stories.mdx +0 -19
  543. package/src/stories/Textarea/TextareaLabel.stories.mdx +0 -19
  544. package/src/stories/Textarea/TextareaLimit.stories.mdx +0 -50
  545. package/src/stories/Textarea/TextareaLoading.stories.mdx +0 -22
  546. package/src/stories/Textarea/TextareaLoadingLabel.stories.mdx +0 -23
  547. package/src/stories/Textarea/TextareaMaxLength.stories.mdx +0 -19
  548. package/src/stories/Textarea/TextareaMinLength.stories.mdx +0 -19
  549. package/src/stories/Textarea/TextareaModifiers.stories.mdx +0 -24
  550. package/src/stories/Textarea/TextareaName.stories.mdx +0 -23
  551. package/src/stories/Textarea/TextareaPlaceholder.stories.mdx +0 -19
  552. package/src/stories/Textarea/TextareaReadonly.stories.mdx +0 -23
  553. package/src/stories/Textarea/TextareaRequired.stories.mdx +0 -22
  554. package/src/stories/Textarea/TextareaResizable.stories.mdx +0 -22
  555. package/src/stories/Textarea/TextareaRowsCols.stories.mdx +0 -39
  556. package/src/stories/Textarea/TextareaValid.stories.mdx +0 -22
  557. package/src/stories/Textarea/TextareaValidLabel.stories.mdx +0 -35
  558. package/src/stories/stories.scss +0 -35
  559. package/src/stories/utils.ts +0 -12
  560. package/src/stories/volver-ui-vue.stories.mdx +0 -77
  561. package/src/types/.README +0 -0
@@ -1,275 +1,284 @@
1
- export default {
2
- /**
3
- * Compare objects, primitives, array, dates, regexp
4
- * @param {any} obj1 first literal
5
- * @param {any} obj2 second literal
6
- * @param {string} field optional field of obj1 and obj2 (also nested dotted field "prop1.prop12")
7
- * @returns {boolean}
8
- */
9
- equals(obj1: any, obj2: any, field?: string) {
10
- if (field)
11
- return (
12
- this.resolveFieldData(obj1, field) ===
13
- this.resolveFieldData(obj2, field)
14
- )
15
- else return this.deepEquals(obj1, obj2)
16
- },
17
-
18
- /**
19
- * Compare objects, primitives, array, dates, regexp
20
- * @param {any} a first literal
21
- * @param {any} b second literal
22
- * @returns {boolean}
23
- */
24
- deepEquals(a: any, b: any) {
25
- if (a === b) return true
26
-
27
- if (a && b && typeof a == 'object' && typeof b == 'object') {
28
- const arrA = Array.isArray(a)
29
- const arrB = Array.isArray(b)
30
- let i, length, key
31
-
32
- if (arrA && arrB) {
33
- length = a.length
34
- if (length != b.length) return false
35
- for (i = length; i-- !== 0; )
36
- if (!this.deepEquals(a[i], b[i])) return false
1
+ import { unref, type Ref } from 'vue'
2
+
3
+ /**
4
+ * Compare objects, primitives, array, dates, regexp
5
+ * @param {any} obj1 first literal
6
+ * @param {any} obj2 second literal
7
+ * @param {string} field optional field of obj1 and obj2 (also nested dotted field "prop1.prop12")
8
+ * @returns {boolean}
9
+ */
10
+ // eslint-disable-next-line
11
+ export function equals(obj1: any, obj2: any, field?: string) {
12
+ if (field)
13
+ return resolveFieldData(obj1, field) === resolveFieldData(obj2, field)
14
+ else return deepEquals(obj1, obj2)
15
+ }
37
16
 
38
- return true
39
- }
17
+ /**
18
+ * Compare objects, primitives, array, dates, regexp
19
+ * @param {any} a first literal
20
+ * @param {any} b second literal
21
+ * @returns {boolean}
22
+ */
23
+ // eslint-disable-next-line
24
+ export function deepEquals(a: any, b: any) {
25
+ if (a === b) return true
26
+
27
+ if (a && b && typeof a == 'object' && typeof b == 'object') {
28
+ const arrA = Array.isArray(a)
29
+ const arrB = Array.isArray(b)
30
+ let i, length, key
31
+
32
+ if (arrA && arrB) {
33
+ length = a.length
34
+ if (length != b.length) return false
35
+ for (i = length; i-- !== 0; )
36
+ if (!deepEquals(a[i], b[i])) return false
40
37
 
41
- if (arrA != arrB) return false
38
+ return true
39
+ }
42
40
 
43
- const dateA = a instanceof Date,
44
- dateB = b instanceof Date
41
+ if (arrA != arrB) return false
45
42
 
46
- if (dateA != dateB) return false
47
- if (dateA && dateB) return a.getTime() == b.getTime()
43
+ const dateA = a instanceof Date,
44
+ dateB = b instanceof Date
48
45
 
49
- const regexpA = a instanceof RegExp,
50
- regexpB = b instanceof RegExp
46
+ if (dateA != dateB) return false
47
+ if (dateA && dateB) return a.getTime() == b.getTime()
51
48
 
52
- if (regexpA != regexpB) return false
53
- if (regexpA && regexpB) return a.toString() == b.toString()
49
+ const regexpA = a instanceof RegExp,
50
+ regexpB = b instanceof RegExp
54
51
 
55
- const keys = Object.keys(a)
52
+ if (regexpA != regexpB) return false
53
+ if (regexpA && regexpB) return a.toString() == b.toString()
56
54
 
57
- length = keys.length
55
+ const keys = Object.keys(a)
58
56
 
59
- if (length !== Object.keys(b).length) return false
57
+ length = keys.length
60
58
 
61
- for (i = length; i-- !== 0; )
62
- if (!Object.prototype.hasOwnProperty.call(b, keys[i]))
63
- return false
59
+ if (length !== Object.keys(b).length) return false
64
60
 
65
- for (i = length; i-- !== 0; ) {
66
- key = keys[i]
67
- if (!this.deepEquals(a[key], b[key])) return false
68
- }
61
+ for (i = length; i-- !== 0; )
62
+ if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false
69
63
 
70
- return true
64
+ for (i = length; i-- !== 0; ) {
65
+ key = keys[i]
66
+ if (!deepEquals(a[key], b[key])) return false
71
67
  }
72
68
 
73
- return a !== a && b !== b
74
- },
75
-
76
- /**
77
- * Find and return field or nested field from object (also nested dotted field)
78
- * @param {object} data object that contains the field
79
- * @param {string} field ex: "prop1" or "prop1.prop12"
80
- * @returns {boolean}
81
- */
82
- resolveFieldData(data: { [key: string]: any }, field: string) {
83
- if (data && Object.keys(data).length && field) {
84
- if (field.indexOf('.') === -1) {
85
- return data[field]
86
- } else {
87
- const fields = field.split('.')
88
- let value = data
89
-
90
- for (let i = 0, len = fields.length; i < len; ++i) {
91
- if (data == null) {
92
- return null
93
- }
94
-
95
- value = value[fields[i]]
96
- }
69
+ return true
70
+ }
97
71
 
98
- return value
99
- }
72
+ return a !== a && b !== b
73
+ }
74
+
75
+ /**
76
+ * Find and return field or nested field from object (also nested dotted field)
77
+ * @param {object} data object that contains the field
78
+ * @param {string} field ex: "prop1" or "prop1.prop12"
79
+ * @returns {boolean}
80
+ */
81
+ export function resolveFieldData(data: Record<string, unknown>, field: string) {
82
+ if (data && Object.keys(data).length && field) {
83
+ if (field.indexOf('.') === -1) {
84
+ return data[field]
100
85
  } else {
101
- return null
102
- }
103
- },
104
-
105
- /**
106
- * @param {any} obj data to check
107
- * @returns {boolean}
108
- */
109
- isFunction(obj: any) {
110
- return !!(obj && obj.constructor && obj.call && obj.apply)
111
- },
112
-
113
- /**
114
- * Return the index of value in list array
115
- * @param {any} value the element to find
116
- * @param {Array<any>} list array list
117
- * @returns {number} the index
118
- */
119
- findIndexInList(value: any, list: Array<any>) {
120
- let index = -1
121
-
122
- if (list) {
123
- for (let i = 0; i < list.length; i++) {
124
- if (this.equals(list[i], value)) {
125
- index = i
126
- break
86
+ const fields = field.split('.')
87
+ let value = data
88
+
89
+ for (let i = 0, len = fields.length; i < len; ++i) {
90
+ if (data == null) {
91
+ return null
127
92
  }
93
+
94
+ value = value[fields[i]] as Record<string, unknown>
128
95
  }
96
+
97
+ return value
129
98
  }
99
+ } else {
100
+ return null
101
+ }
102
+ }
103
+
104
+ /**
105
+ * @param {any} obj data to check
106
+ * @returns {boolean}
107
+ */
108
+ // eslint-disable-next-line
109
+ export function isFunction(obj: any) {
110
+ return !!(obj && obj.constructor && obj.call && obj.apply)
111
+ }
130
112
 
131
- return index
132
- },
133
-
134
- /**
135
- * Return the index of value in list array
136
- * @param {any} value the element to find
137
- * @param {Array<any>} list array list
138
- * @returns {boolean} the index
139
- */
140
- contains(value: any, list: Array<any>) {
141
- if (value != null && list && list.length) {
142
- for (const val of list) {
143
- if (this.equals(value, val)) return true
113
+ /**
114
+ * Return the index of value in list array
115
+ * @param {any} value the element to find
116
+ * @param {Array<any>} list array list
117
+ * @returns {number} the index
118
+ */
119
+ export function findIndexInList<Type = unknown>(value: Type, list: Type[]) {
120
+ let index = -1
121
+
122
+ if (list) {
123
+ for (let i = 0; i < list.length; i++) {
124
+ if (equals(list[i], value)) {
125
+ index = i
126
+ break
144
127
  }
145
128
  }
129
+ }
146
130
 
147
- return false
148
- },
149
-
150
- /**
151
- * @param {string | null | undefined | number | Array<any> | object} value element to checj
152
- * @returns {boolean}
153
- */
154
- isEmpty(value: string | null | undefined | number | Array<any> | object) {
155
- return (
156
- value === null ||
157
- value === undefined ||
158
- value === '' ||
159
- (Array.isArray(value) && value.length === 0) ||
160
- (!(value instanceof Date) &&
161
- typeof value === 'object' &&
162
- Object.keys(value).length === 0)
163
- )
164
- },
165
-
166
- /**
167
- * @param {string | null | undefined | number | Array<any> | object} value element to checj
168
- * @returns {boolean}
169
- */
170
- isNotEmpty(
171
- value: string | null | undefined | number | Array<any> | object
172
- ) {
173
- return !this.isEmpty(value)
174
- },
175
-
176
- /**
177
- * Return the object entries that match the predicate passed
178
- * @param {Object} value
179
- * @param {Function} predicate
180
- * @returns {Object}
181
- */
182
- pickBy(value: { [key: string]: any }, predicate: (k: string) => boolean) {
183
- return Object.fromEntries(
184
- Object.entries(value).filter(([key]) => predicate(key))
185
- )
186
- },
187
-
188
- /**
189
- * Remove a value from an Array
190
- * @param {any} value the element to remove
191
- * @param {Array<any>} list
192
- * @returns {Array<any>}
193
- */
194
- removeFromList(value: any, list: Array<any>) {
195
- //check off
196
- const indexElToRemove = this.findIndexInList(value, list)
197
- if (indexElToRemove > -1) {
198
- return list.filter((el, elIndex) => elIndex !== indexElToRemove)
199
- } else {
200
- return list
131
+ return index
132
+ }
133
+
134
+ /**
135
+ * Return the index of value in list array
136
+ * @param {any} value the element to find
137
+ * @param {Array<any>} list array list
138
+ * @returns {boolean} the index
139
+ */
140
+ export function contains<Type = unknown>(value: Type, list: Type[]) {
141
+ if (value != null && list && list.length) {
142
+ for (const val of list) {
143
+ if (equals(value, val)) {
144
+ return true
145
+ }
201
146
  }
202
- },
203
-
204
- /**
205
- * @param {any} value
206
- * @returns {boolean}
207
- */
208
- isString(value: any) {
209
- return typeof value === 'string' || value instanceof String
210
- },
211
-
212
- /**
213
- * Convert props definition to object with "prop" as key and default as value
214
- * @param {ComponentObjectPropsOptions} props vue component props
215
- * @returns {Object}
216
- */
217
- propsToObject(props: any) {
218
- return Object.keys(props).reduce((initValue: any, value: any) => {
219
- if (this.isFunction(props[value])) {
147
+ }
148
+ return false
149
+ }
150
+
151
+ /**
152
+ * @param {boolean | string | null | undefined | number | Array<unknown> | object} value element to checj
153
+ * @returns {boolean}
154
+ */
155
+ export function isEmpty(
156
+ value:
157
+ | boolean
158
+ | string
159
+ | null
160
+ | undefined
161
+ | number
162
+ | unknown[]
163
+ | object
164
+ | Ref,
165
+ ) {
166
+ return ((value) =>
167
+ value === null ||
168
+ value === undefined ||
169
+ value === '' ||
170
+ (Array.isArray(value) && value.length === 0) ||
171
+ (!(value instanceof Date) &&
172
+ typeof value === 'object' &&
173
+ Object.keys(value).length === 0))(unref(value))
174
+ }
175
+
176
+ /**
177
+ * Return the object entries that match the predicate passed
178
+ * @param {Object} value
179
+ * @param {Function} predicate
180
+ * @returns {Object}
181
+ */
182
+ export function pickBy(
183
+ value: Record<string, unknown>,
184
+ predicate: (k: string) => boolean,
185
+ ) {
186
+ return Object.fromEntries(
187
+ Object.entries(value).filter(([key]) => predicate(key)),
188
+ )
189
+ }
190
+
191
+ /**
192
+ * Remove a value from an Array
193
+ * @param {any} value the element to remove
194
+ * @param {Array<any>} list
195
+ * @returns {Array<any>}
196
+ */
197
+ export function removeFromList<Type = unknown>(value: Type, list: Type[]) {
198
+ //check off
199
+ const indexElToRemove = findIndexInList(value, list)
200
+ if (indexElToRemove > -1) {
201
+ return list.filter((el, elIndex) => elIndex !== indexElToRemove)
202
+ } else {
203
+ return list
204
+ }
205
+ }
206
+
207
+ /**
208
+ * @param {any} value
209
+ * @returns {boolean}
210
+ */
211
+ export function isString(value: unknown) {
212
+ return typeof value === 'string' || value instanceof String
213
+ }
214
+
215
+ /**
216
+ * Convert props definition to object with "prop" as key and default as value
217
+ * @param {ComponentObjectPropsOptions} props vue component props
218
+ * @returns {Object}
219
+ */
220
+ // eslint-disable-next-line
221
+ export function propsToObject(props: any) {
222
+ return Object.keys(props).reduce(
223
+ (accumulator: Record<string, unknown>, key: string) => {
224
+ if (key === 'modelValue') {
225
+ return accumulator
226
+ }
227
+ if ('default' in props[key]) {
228
+ accumulator[key] = props[key].default
229
+ return accumulator
230
+ }
231
+ if (isFunction(props[key])) {
220
232
  // case prop1: String
221
- initValue[value] = props[value]()
222
- } else if (Array.isArray(props[value])) {
233
+ accumulator[key] = props[key]()
234
+ return accumulator
235
+ }
236
+ if (Array.isArray(props[key])) {
223
237
  // case prop1: [ String, Array ]
224
- initValue[value] = props[value][0]()
225
- } else if (props[value]?.type) {
226
- // case prop1: { type: ... }
227
- if (Array.isArray(props[value].type)) {
228
- // case prop1: { type: [ String, Array ] }
229
- initValue[value] =
230
- props[value]?.default || props[value]?.type[0]()
231
- } else {
232
- // case prop1: { type: String }
233
- initValue[value] =
234
- props[value]?.default || props[value]?.type()
235
- }
238
+ accumulator[key] = props[key][0]()
239
+ return accumulator
240
+ }
241
+ // case prop1: { type: ... }
242
+ if (Array.isArray(props[key].type)) {
243
+ accumulator[key] = props[key]?.type[0]()
244
+ return accumulator
236
245
  }
237
- return initValue
238
- }, {})
239
- },
240
-
241
- /**
242
- * Filter array objects by filter array
243
- * @param {object[]} list the listo to filter
244
- * @param {object[] | string[]} filter the filter list, array of string or array of object
245
- * @param {string} key
246
- * @return {object[]}
247
- */
248
- filterArray<T = { [key: string]: any }>(
249
- list: T[],
250
- filter: T[] | string[],
251
- key: string
252
- ): T[] {
253
- return list.filter((el) => {
254
- return filter.some((f) => {
255
- return typeof f === 'string'
256
- ? el[key as keyof typeof el] == f
257
- : this.equals(
258
- el[key as keyof typeof el],
259
- f[key as keyof typeof f]
260
- )
261
- })
246
+ // case prop1: { type: String }
247
+ accumulator[key] = props[key]?.type()
248
+ return accumulator
249
+ },
250
+ {} as Record<string, unknown>,
251
+ )
252
+ }
253
+
254
+ /**
255
+ * Filter array objects by filter array
256
+ * @param {object[]} list the listo to filter
257
+ * @param {object[] | string[]} filter the filter list, array of string or array of object
258
+ * @param {string} key
259
+ * @return {object[]}
260
+ */
261
+ export function filterArray<T = Record<string, unknown>>(
262
+ list: T[],
263
+ filter: T[] | string[],
264
+ key: string,
265
+ ): T[] {
266
+ return list.filter((el) => {
267
+ return filter.some((f) => {
268
+ return typeof f === 'string'
269
+ ? el[key as keyof typeof el] == f
270
+ : equals(el[key as keyof typeof el], f[key as keyof typeof f])
262
271
  })
263
- },
272
+ })
273
+ }
264
274
 
265
- kebabCase(value: string) {
266
- if (value) {
267
- return value
268
- .match(
269
- /[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g
270
- )
271
- ?.join('-')
272
- ?.toLowerCase()
273
- }
275
+ export function kebabCase(value: string) {
276
+ if (value) {
277
+ return value
278
+ .match(
279
+ /[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g,
280
+ )
281
+ ?.join('-')
282
+ ?.toLowerCase()
274
283
  }
275
284
  }
@@ -1,32 +0,0 @@
1
- import type { ExtractPropTypes } from 'vue';
2
- export declare const VvAccordionProps: {
3
- /**
4
- * Accordion header title
5
- */
6
- title: StringConstructor;
7
- /**
8
- * Accordion content description
9
- */
10
- content: StringConstructor;
11
- /**
12
- * (Optional) Defines if item is open. Event "update:open" is emitted on accordion header click
13
- */
14
- open: BooleanConstructor;
15
- /**
16
- * Change icon position to right side
17
- */
18
- iconRight: BooleanConstructor;
19
- /**
20
- * Add border to accordion item
21
- */
22
- bordered: BooleanConstructor;
23
- /**
24
- * String or String[] of css classes (modifiers) that will be concatenated to prefix 'vv-accordion--'
25
- */
26
- modifiers: (StringConstructor | ArrayConstructor)[];
27
- disabled: BooleanConstructor;
28
- };
29
- export declare const VvAccordionEvents: string[];
30
- declare type _VvAccordionPropsType = typeof VvAccordionProps;
31
- export declare type VvAccordionPropsTypes = ExtractPropTypes<_VvAccordionPropsType>;
32
- export {};
@@ -1,16 +0,0 @@
1
- import type { VvAccordionPropsTypes } from './VvAccordion';
2
- import type IAccordionGroupState from '@/composables/group/types/IAccordionGroupState';
3
- /**
4
- * Estreae tutte le prop del componente VvButton che possono essere
5
- * "sovrascritte" quando il buttone si trova in un gruppo.
6
- */
7
- export declare function toAccordionRefs(props: VvAccordionPropsTypes, emit: (event: any, ...args: any[]) => void): {
8
- modelValue: import("vue").WritableComputedRef<any>;
9
- disabled: import("vue").WritableComputedRef<any>;
10
- bordered: import("vue").WritableComputedRef<any>;
11
- iconRight: import("vue").WritableComputedRef<any>;
12
- isInGroup: import("vue").ComputedRef<boolean>;
13
- group: import("vue").Ref<IAccordionGroupState> | undefined;
14
- accordion: import("vue").WritableComputedRef<any>;
15
- modifiers: import("vue").Ref<string | unknown[] | undefined> | undefined;
16
- };