aloha-vue 2.66.0 → 2.66.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 (432) hide show
  1. package/CHANGELOG.md +1098 -1090
  2. package/dist/aloha-vue.es.js +15671 -15507
  3. package/dist/aloha-vue.umd.js +68 -68
  4. package/package.json +99 -99
  5. package/scss/_base.scss +62 -62
  6. package/scss/aloha-vue.scss +68 -68
  7. package/scss/components/AFilters.scss +304 -304
  8. package/scss/components/AFormElement/AValidatedJson.scss +6 -6
  9. package/scss/components/AMenu.scss +627 -627
  10. package/scss/components/AModal.scss +44 -44
  11. package/scss/components/APagination.scss +167 -167
  12. package/scss/components/ARate.scss +78 -78
  13. package/scss/components/AResizer.scss +63 -63
  14. package/scss/components/ATable.scss +819 -819
  15. package/scss/components/ATableForm.scss +307 -307
  16. package/scss/components/AVerticalScroll.scss +47 -47
  17. package/scss/components/AWizard.scss +669 -669
  18. package/scss/components/ui/ADatepicker.scss +342 -342
  19. package/scss/components/ui/ADatepickerRange.scss +45 -45
  20. package/scss/components/ui/AFieldset.scss +78 -78
  21. package/scss/components/ui/AInputNumber.scss +62 -62
  22. package/scss/components/ui/AInputNumberRange.scss +30 -30
  23. package/scss/components/ui/ASelect.scss +236 -236
  24. package/scss/components/ui/ASlider.scss +186 -186
  25. package/scss/components/ui/ASwitch.scss +148 -148
  26. package/scss/components/ui/ui.scss +254 -254
  27. package/scss/text/text_alignment.scss +39 -39
  28. package/scss/text/text_transform.scss +51 -51
  29. package/scss/text/text_wrapping.scss +40 -40
  30. package/scss/utils/badge.scss +45 -45
  31. package/scss/utils/checkbox_radio.scss +134 -134
  32. package/scss/utils/color.scss +46 -46
  33. package/scss/utils/dropdown.scss +185 -185
  34. package/scss/utils/list.scss +75 -75
  35. package/scss/utils/modal.scss +173 -173
  36. package/scss/utils/sizing.scss +137 -137
  37. package/scss/utils/spacing.scss +63 -63
  38. package/scss/utils/tooltip.scss +63 -63
  39. package/src/AAccordion/AAccordion.js +206 -206
  40. package/src/AAccordion/compositionAPI/IndexesForOpenAPI.js +63 -63
  41. package/src/AAccordion/compositionAPI/ToggleAPI.js +85 -85
  42. package/src/AAlert/AAlert.js +216 -216
  43. package/src/AAlert/compositionAPI/ClassAPI.js +21 -21
  44. package/src/AAlert/i18n/AAlertI18n.js +19 -19
  45. package/src/AAlert/i18n/ar.json +2 -2
  46. package/src/AAlert/i18n/de.json +2 -2
  47. package/src/AAlert/i18n/en.json +2 -2
  48. package/src/AAlert/i18n/es.json +2 -2
  49. package/src/AAlert/i18n/fr.json +2 -2
  50. package/src/AAlert/i18n/hr.json +2 -2
  51. package/src/AAlert/i18n/it.json +2 -2
  52. package/src/AAlert/i18n/ru.json +2 -2
  53. package/src/AButton/AButton.js +275 -275
  54. package/src/ACarousel/ACarousel.js +361 -361
  55. package/src/ACarousel/ACarouselBtn/ACarouselBtn.js +75 -75
  56. package/src/ACarousel/ACarouselBtn/compositionAPI/ClassAPI.js +16 -16
  57. package/src/ACarousel/ACarouselBtn/compositionAPI/TextAPI.js +25 -25
  58. package/src/ACarousel/ACarouselControls/ACarouselControls.js +114 -114
  59. package/src/ACarousel/ACarouselControls/ACarouselControlsIndicator/ACarouselControlsIndicator.js +146 -146
  60. package/src/ACarousel/ACarouselControls/ACarouselControlsIndicator/compositionAPI/ActiveAPI.js +33 -33
  61. package/src/ACarousel/ACarouselControls/ACarouselControlsIndicator/compositionAPI/AttributesAPI.js +40 -40
  62. package/src/ACarousel/ACarouselControls/ACarouselControlsIndicator/compositionAPI/EventsAPI.js +25 -25
  63. package/src/ACarousel/ACarouselControls/ACarouselControlsIndicator/compositionAPI/IconAPI.js +20 -20
  64. package/src/ACarousel/ACarouselControls/compositionAPI/AriaLabelAPI.js +20 -20
  65. package/src/ACarousel/ACarouselItem/ACarouselItem.js +83 -83
  66. package/src/ACarousel/ACarouselItem/compositionAPI/AttributesAPI.js +39 -39
  67. package/src/ACarousel/ACarouselItem/compositionAPI/IsActiveAPI.js +21 -21
  68. package/src/ACarousel/compositionAPI/ActiveAPI.js +111 -111
  69. package/src/ACarousel/compositionAPI/AriaLabelAPI.js +25 -25
  70. package/src/ACarousel/compositionAPI/ArrowsAPI.js +17 -17
  71. package/src/ACarousel/compositionAPI/ClassAPI.js +44 -44
  72. package/src/ACarousel/compositionAPI/DataAPI.js +41 -41
  73. package/src/ACarousel/compositionAPI/IndicatorsAPI.js +148 -148
  74. package/src/ACarousel/compositionAPI/TextsAPI.js +25 -25
  75. package/src/ACarousel/i18n/ACarouselI18n.js +19 -19
  76. package/src/ACarousel/i18n/ar.json +8 -8
  77. package/src/ACarousel/i18n/de.json +8 -8
  78. package/src/ACarousel/i18n/en.json +8 -8
  79. package/src/ACarousel/i18n/es.json +8 -8
  80. package/src/ACarousel/i18n/fr.json +8 -8
  81. package/src/ACarousel/i18n/hr.json +8 -8
  82. package/src/ACarousel/i18n/it.json +8 -8
  83. package/src/ACarousel/i18n/ru.json +8 -8
  84. package/src/ACollapse/ACollapse.js +103 -103
  85. package/src/ADropdown/ADropdown.js +544 -544
  86. package/src/ADropdown/ADropdownGroup.js +85 -85
  87. package/src/ADropdown/compositionAPI/ActionsAPI.js +147 -147
  88. package/src/ADropdown/compositionAPI/AttributesAPI.js +100 -100
  89. package/src/AElement/AElement.js +518 -518
  90. package/src/AElement/compositionAPI/AttributesAPI.js +51 -51
  91. package/src/AElement/compositionAPI/ClickAPI.js +30 -30
  92. package/src/AElement/compositionAPI/ComponentLocalAPI.js +23 -23
  93. package/src/AElement/compositionAPI/DisabledAPI.js +22 -22
  94. package/src/AElement/compositionAPI/HtmlTitleAPI.js +33 -33
  95. package/src/AElement/compositionAPI/KeydownAPI.js +35 -35
  96. package/src/AElement/compositionAPI/LoadingAPI.js +22 -22
  97. package/src/AElement/compositionAPI/RouterLinkAPI.js +20 -20
  98. package/src/AElement/compositionAPI/SwitchAPI.js +33 -33
  99. package/src/AElement/compositionAPI/TagAPI.js +34 -34
  100. package/src/AElement/compositionAPI/TextAPI.js +78 -78
  101. package/src/AElement/compositionAPI/TitleAPI.js +29 -29
  102. package/src/AFilters/AFilterCenter/AFilterCenter.js +154 -154
  103. package/src/AFilters/AFilterCenter/AFilterCenterItem/AFilterCenterItem.js +207 -207
  104. package/src/AFilters/AFilters/AFilters.js +282 -282
  105. package/src/AFilters/i18n/ar.json +30 -30
  106. package/src/AFilters/i18n/en.json +30 -30
  107. package/src/AFilters/i18n/es.json +30 -30
  108. package/src/AFilters/i18n/fr.json +30 -30
  109. package/src/AFilters/i18n/hr.json +30 -30
  110. package/src/AFilters/i18n/it.json +30 -30
  111. package/src/AFilters/i18n/ru.json +30 -30
  112. package/src/AGroupButtonDropdown/compositionAPI/ActionsAPI.js +143 -143
  113. package/src/ALink/ALink.js +253 -253
  114. package/src/AMenu/AMenu.js +578 -578
  115. package/src/AMenu/AMenuBreadcrumbs/compositionAPI/RenderTruncatedAPI.js +74 -74
  116. package/src/AMenu/AMenuButtonToggle/AMenuButtonToggle.js +94 -94
  117. package/src/AMenu/AMenuButtonToggle/compositionAPI/ToggleAPI.js +95 -95
  118. package/src/AMenu/AMenuPanelLink/AMenuPanelLink.js +250 -250
  119. package/src/AMenu/compositionAPI/BackdropAPI.js +42 -42
  120. package/src/AMenu/compositionAPI/KeydownAPI.js +197 -197
  121. package/src/AMenu/compositionAPI/LinkClickAPI.js +48 -48
  122. package/src/AMenu/compositionAPI/MenuAttributesAPI.js +51 -51
  123. package/src/AMenu/compositionAPI/PanelsAPI.js +78 -78
  124. package/src/AMenu/compositionAPI/ResizeAPI.js +74 -74
  125. package/src/AModal/AModal.js +530 -530
  126. package/src/AModalForm/AModalForm.js +383 -383
  127. package/src/AModalWizard/AModalWizard.js +563 -563
  128. package/src/ANotification/ANotification.js +60 -60
  129. package/src/APagination/APagination.js +111 -111
  130. package/src/APagination/APaginationCountPerPage/APaginationCountPerPage.js +209 -209
  131. package/src/APagination/APaginationCountPerPage/compositionAPI/MainAPI.js +40 -40
  132. package/src/APagination/APaginationCountPerPage/compositionAPI/TextsAPI.js +54 -54
  133. package/src/APagination/APaginationPages/APaginationPages.js +282 -282
  134. package/src/APagination/APaginationPages/compositionAPI/PaginationItemsAPI.js +102 -102
  135. package/src/APagination/APaginationPages/compositionAPI/TextsAPI.js +74 -74
  136. package/src/APagination/compositionAPI/ComponentsAPI.js +79 -79
  137. package/src/APagination/i18n/ar.json +12 -12
  138. package/src/APagination/i18n/es.json +12 -12
  139. package/src/APagination/i18n/fr.json +12 -12
  140. package/src/APagination/i18n/hr.json +12 -12
  141. package/src/APagination/i18n/it.json +12 -12
  142. package/src/APagination/i18n/ru.json +12 -12
  143. package/src/APopup/APopup.js +115 -115
  144. package/src/ATable/ATable.js +1159 -1157
  145. package/src/ATable/ATableHeaderThAction/ATableHeaderThAction.js +241 -241
  146. package/src/ATable/ATableSortingAdditional/__tests__/ATableSortingAdditional.ModelAPI.test.js +200 -200
  147. package/src/ATable/ATableSortingAdditional/compositionAPI/ModelAPI.js +152 -152
  148. package/src/ATable/ATableTd/ATableTd.js +145 -145
  149. package/src/ATable/ATableTdAction/ATableTdAction.js +223 -218
  150. package/src/ATable/ATableTopPanel/ATableTopPanel.js +433 -433
  151. package/src/ATable/ATableTr/ATableTr.js +8 -0
  152. package/src/ATable/ATableTr/compositionAPI/AttributesAPI.js +3 -1
  153. package/src/ATable/__tests__/ATable.RowIdsAPI.test.js +66 -0
  154. package/src/ATable/compositionAPI/ColumnActionAPI.js +105 -105
  155. package/src/ATable/compositionAPI/ColumnStylesAPI.js +50 -50
  156. package/src/ATable/compositionAPI/ColumnsGroupedAPI.js +187 -187
  157. package/src/ATable/compositionAPI/PaginationModesAPI.js +44 -44
  158. package/src/ATable/compositionAPI/PreviewAPI.js +201 -201
  159. package/src/ATable/compositionAPI/PreviewRightResizeAPI.js +135 -135
  160. package/src/ATable/compositionAPI/RowActionsAPI.js +3 -1
  161. package/src/ATable/compositionAPI/ScrollControlAPI.js +249 -249
  162. package/src/ATable/compositionAPI/SortAPI.js +86 -86
  163. package/src/ATable/compositionAPI/WidthAPI.js +73 -73
  164. package/src/ATableForm/ATableForm.js +595 -595
  165. package/src/ATableForm/ATableFormCell/ATableFormCell.js +204 -204
  166. package/src/ATableForm/ATableFormCell/compositionAPI/DisabledAPI.js +23 -23
  167. package/src/ATableForm/ATableFormCell/compositionAPI/ReadonlyAPI.js +31 -31
  168. package/src/ATableForm/ATableFormCellAction/ATableFormCellAction.js +282 -282
  169. package/src/ATableForm/ATableFormCellAction/compositionAPI/DeleteAPI.js +80 -80
  170. package/src/ATableForm/ATableFormCellAction/compositionAPI/DisabledAPI.js +60 -60
  171. package/src/ATableForm/ATableFormCellAction/compositionAPI/HiddenAPI.js +46 -46
  172. package/src/ATableForm/ATableFormCellAction/compositionAPI/IdsAPI.js +31 -31
  173. package/src/ATableForm/ATableFormCellAction/compositionAPI/StylesAPI.js +27 -27
  174. package/src/ATableForm/ATableFormCellAction/compositionAPI/TitleAPI.js +47 -47
  175. package/src/ATableForm/ATableFormCellDnd/compositionAPI/IdAPI.js +21 -21
  176. package/src/ATableForm/ATableFormCellList/ATableFormCellList.js +127 -127
  177. package/src/ATableForm/ATableFormCellList/compositionAPI/DataAPI.js +77 -77
  178. package/src/ATableForm/ATableFormRow/ATableFormRow.js +592 -592
  179. package/src/ATableForm/ATableFormRow/compositionAPI/ErrorsAPI.js +40 -40
  180. package/src/ATableForm/ATableFormRow/compositionAPI/FocusAPI.js +55 -55
  181. package/src/ATableForm/ATableFormRow/compositionAPI/IdAPI.js +19 -19
  182. package/src/ATableForm/__tests__/ATableForm.ListView.test.js +864 -864
  183. package/src/ATableForm/compositionAPI/ClassesAPI.js +23 -23
  184. package/src/ATableForm/compositionAPI/ColumnsGrowAPI.js +180 -180
  185. package/src/ATableForm/compositionAPI/DeleteAPI.js +9 -9
  186. package/src/ATableForm/compositionAPI/EditAPI.js +125 -125
  187. package/src/ATableForm/compositionAPI/RowsAPI.js +42 -42
  188. package/src/ATableForm/compositionAPI/StylesAPI.js +62 -62
  189. package/src/ATableForm/compositionAPI/WidthsAPI.js +20 -20
  190. package/src/ATableForm/i18n/ATableFormI18n.js +19 -19
  191. package/src/ATableForm/utils/getFormElement.js +32 -32
  192. package/src/ATabs/ATabsContent/ATabsContent.js +102 -102
  193. package/src/ATabs/ATabsTab/ATabsTab.js +185 -185
  194. package/src/ATooltip/ATooltip.js +221 -221
  195. package/src/ATranslation/compositionAPI/UtilsAPI.js +187 -187
  196. package/src/AVerticalScroll/compositionAPI/ScrollAPI.js +55 -55
  197. package/src/AWizard/AWizard.js +467 -467
  198. package/src/compositionAPI/AEventOutsideAPI.js +46 -46
  199. package/src/compositionAPI/AFiltersAPI.js +178 -178
  200. package/src/compositionAPI/AMobileAPI.js +32 -32
  201. package/src/compositionAPI/APageTabTitleAPI.js +84 -84
  202. package/src/compositionAPI/ARemPxAPI.js +47 -47
  203. package/src/compositionAPI/FocusByDestroyAPI.js +67 -67
  204. package/src/const/AKeys.js +9 -9
  205. package/src/directives/AOnHooks.js +0 -0
  206. package/src/filters/__tests__/filterValueByCondition.test.js +94 -94
  207. package/src/filters/filterValueByCondition.js +87 -87
  208. package/src/i18n/allLanguages.js +377 -377
  209. package/src/i18n/ar.json +4 -4
  210. package/src/i18n/de.json +4 -4
  211. package/src/i18n/en.json +4 -4
  212. package/src/i18n/es.json +4 -4
  213. package/src/i18n/fr.json +4 -4
  214. package/src/i18n/hr.json +4 -4
  215. package/src/i18n/it.json +4 -4
  216. package/src/i18n/ru.json +4 -4
  217. package/src/index.js +403 -403
  218. package/src/plugins/AAlertPlugin.js +53 -53
  219. package/src/plugins/ACarouselPlugin.js +34 -34
  220. package/src/plugins/ADatepickerPlugin.js +57 -57
  221. package/src/plugins/AFiltersPlugin.js +102 -102
  222. package/src/plugins/AInputCurrencyPlugin.js +31 -31
  223. package/src/plugins/AMobilePlugin.js +32 -32
  224. package/src/plugins/ARemPxPlugin.js +37 -37
  225. package/src/plugins/ASelectPlugin.js +51 -51
  226. package/src/plugins/ASelectStylesPlugin.js +2376 -2376
  227. package/src/temp/px_to_rem_mapping_1_to_800.md +802 -802
  228. package/src/ui/ACheckbox/ACheckbox.js +929 -929
  229. package/src/ui/ACheckbox/ACheckboxItem/ACheckboxItem.js +0 -0
  230. package/src/ui/ACheckboxRadioGroups/ACheckboxRadioGroups.js +0 -0
  231. package/src/ui/ADatepicker/ADatepicker.js +804 -803
  232. package/src/ui/ADatepicker/ADatepickerCalendarPanel/ADatepickerCalendarPanel.js +796 -796
  233. package/src/ui/ADatepicker/ADatepickerCalendarPanel/compositionAPI/CalendarAPI.js +51 -51
  234. package/src/ui/ADatepicker/compositionAPI/LanguagesAPI.js +92 -92
  235. package/src/ui/ADatepicker/compositionAPI/PlaceholderAPI.js +55 -55
  236. package/src/ui/ADatepicker/i18n/ADatepickerI18n.js +19 -19
  237. package/src/ui/ADatepicker/i18n/ar.json +47 -47
  238. package/src/ui/ADatepicker/i18n/de.json +48 -48
  239. package/src/ui/ADatepicker/i18n/en.json +48 -48
  240. package/src/ui/ADatepicker/i18n/es.json +47 -47
  241. package/src/ui/ADatepicker/i18n/fr.json +47 -47
  242. package/src/ui/ADatepicker/i18n/hr.json +47 -47
  243. package/src/ui/ADatepicker/i18n/it.json +47 -47
  244. package/src/ui/ADatepicker/i18n/ru.json +48 -48
  245. package/src/ui/ADatepicker/panel/APanelDate/APanelDate.js +196 -196
  246. package/src/ui/ADatepicker/panel/APanelDate/compositionAPI/DatesAPI.js +66 -66
  247. package/src/ui/ADatepicker/panel/APanelDate/compositionAPI/FocusAPI.js +96 -96
  248. package/src/ui/ADatepicker/panel/APanelDate/compositionAPI/FocusActiveAPI.js +27 -27
  249. package/src/ui/ADatepicker/panel/APanelDate/compositionAPI/SelectAPI.js +21 -21
  250. package/src/ui/ADatepicker/panel/APanelDate/compositionAPI/TableAPI.js +128 -128
  251. package/src/ui/ADatepicker/panel/APanelMonth/APanelMonth.js +129 -129
  252. package/src/ui/ADatepicker/panel/APanelMonth/compositionAPI/FocusAPI.js +94 -94
  253. package/src/ui/ADatepicker/panel/APanelMonth/compositionAPI/FocusActiveAPI.js +21 -21
  254. package/src/ui/ADatepicker/panel/APanelMonth/compositionAPI/MonthsAPI.js +51 -51
  255. package/src/ui/ADatepicker/panel/APanelMonth/compositionAPI/SelectAPI.js +29 -29
  256. package/src/ui/ADatepicker/panel/APanelYearItem/APanelYearItem.js +75 -75
  257. package/src/ui/ADatepicker/panel/APanelYearItem/compositionAPI/AttributesAPI.js +35 -35
  258. package/src/ui/ADatepicker/panel/APanelYearItem/compositionAPI/SelectAPI.js +35 -35
  259. package/src/ui/ADatepickerAlt/ADatepicker.js +1 -0
  260. package/src/ui/ADatepickerRange/ADatepickerRange.js +528 -525
  261. package/src/ui/AErrors/AErrors.js +149 -149
  262. package/src/ui/AErrors/AErrorsElement/AErrorsElement.js +0 -0
  263. package/src/ui/AErrors/i18n/AErrorsI18n.js +19 -19
  264. package/src/ui/AErrors/i18n/ar.json +3 -3
  265. package/src/ui/AErrors/i18n/de.json +2 -2
  266. package/src/ui/AErrors/i18n/en.json +3 -3
  267. package/src/ui/AErrors/i18n/es.json +3 -3
  268. package/src/ui/AErrors/i18n/fr.json +3 -3
  269. package/src/ui/AErrors/i18n/hr.json +3 -3
  270. package/src/ui/AErrors/i18n/it.json +3 -3
  271. package/src/ui/AErrors/i18n/ru.json +3 -3
  272. package/src/ui/AErrorsText/AErrorsText.js +62 -62
  273. package/src/ui/AFieldset/AFieldset.js +535 -535
  274. package/src/ui/AFieldset/compositionAPI/ModelAPI.js +54 -54
  275. package/src/ui/AForm/AForm.js +252 -252
  276. package/src/ui/AFormElement/AFormElement.js +160 -160
  277. package/src/ui/AFormElementBtnClear/AFormElementBtnClear.js +86 -86
  278. package/src/ui/AFormElementBtnClear/i18n/AFormElementBtnClearI18n.js +19 -19
  279. package/src/ui/AFormElementBtnClear/i18n/ar.json +2 -2
  280. package/src/ui/AFormElementBtnClear/i18n/de.json +2 -2
  281. package/src/ui/AFormElementBtnClear/i18n/en.json +2 -2
  282. package/src/ui/AFormElementBtnClear/i18n/es.json +2 -2
  283. package/src/ui/AFormElementBtnClear/i18n/fr.json +2 -2
  284. package/src/ui/AFormElementBtnClear/i18n/hr.json +2 -2
  285. package/src/ui/AFormElementBtnClear/i18n/it.json +2 -2
  286. package/src/ui/AFormElementBtnClear/i18n/ru.json +2 -2
  287. package/src/ui/AFormHelpText/AFormHelpText.js +37 -37
  288. package/src/ui/AFormLabelDescription/AFormLabelDescription.js +43 -43
  289. package/src/ui/AFormReadonly/AFormReadonly.js +193 -193
  290. package/src/ui/AGroup/AGroup.js +427 -427
  291. package/src/ui/AInput/AInput.js +516 -516
  292. package/src/ui/AInput/compositionAPI/ClassAPI.js +43 -43
  293. package/src/ui/AInputCurrency/AInputCurrency.js +620 -619
  294. package/src/ui/AInputCurrency/compositionAPI/IncreaseDecreaseAPI.js +76 -76
  295. package/src/ui/AInputCurrency/compositionAPI/InputEventsAPI.js +752 -752
  296. package/src/ui/AInputCurrency/compositionAPI/ModelAPI.js +88 -88
  297. package/src/ui/AInputCurrency/compositionAPI/UtilsAPI.js +67 -67
  298. package/src/ui/AInputFile/AInputFile.js +244 -243
  299. package/src/ui/AInputNumber/AInputNumber.js +491 -489
  300. package/src/ui/AInputNumber/compositionAPI/InputEventsAPI.js +196 -196
  301. package/src/ui/AInputNumber/compositionAPI/ModelAPI.js +72 -72
  302. package/src/ui/AInputNumberRange/AInputNumberRange.js +508 -505
  303. package/src/ui/AJson/AJson.js +434 -434
  304. package/src/ui/ALabel/ALabel.js +0 -0
  305. package/src/ui/AMultiselectOrdered/AMultiselectOrdered.js +935 -935
  306. package/src/ui/AOneCheckbox/AOneCheckbox.js +366 -366
  307. package/src/ui/ARadio/ARadio.js +924 -924
  308. package/src/ui/ARadio/ARadioItem/ARadioItem.js +0 -0
  309. package/src/ui/ARequired/ARequired.js +0 -0
  310. package/src/ui/ARouterLinkConfig/ARouterLinkConfig.js +391 -391
  311. package/src/ui/ARouterLinkConfig/compositionAPI/DataFormAPI.js +102 -102
  312. package/src/ui/ARouterLinkConfig/compositionAPI/ModelLocalAPI.js +96 -96
  313. package/src/ui/ARouterLinkConfig/compositionAPI/RouteAPI.js +51 -51
  314. package/src/ui/ASelect/ASelect.js +1210 -1209
  315. package/src/ui/ASelect/ASelectElement/ASelectElement.js +0 -0
  316. package/src/ui/ASelect/ASelectValueCloseable/compositionAPI/CloseAPI.js +28 -28
  317. package/src/ui/ASelect/compositionAPI/ToggleAPI.js +255 -255
  318. package/src/ui/ASelect/i18n/ar.json +6 -6
  319. package/src/ui/ASelect/i18n/de.json +7 -7
  320. package/src/ui/ASelect/i18n/en.json +6 -6
  321. package/src/ui/ASelect/i18n/es.json +6 -6
  322. package/src/ui/ASelect/i18n/fr.json +6 -6
  323. package/src/ui/ASelect/i18n/hr.json +6 -6
  324. package/src/ui/ASelect/i18n/it.json +6 -6
  325. package/src/ui/ASelect/i18n/ru.json +6 -6
  326. package/src/ui/ASelectIcon/ASelectIcon.js +386 -386
  327. package/src/ui/ASelectStyle/ASelectStyle.js +391 -391
  328. package/src/ui/ASelectStyle/compositionAPI/DataAPI.js +68 -68
  329. package/src/ui/ASelectStyle/compositionAPI/EventsAPI.js +24 -24
  330. package/src/ui/ASelectStyle/compositionAPI/KeyLabelCallbackAPI.js +15 -15
  331. package/src/ui/ASelectStyle/compositionAPI/TypeAPI.js +24 -24
  332. package/src/ui/ASelectStyle/i18n/ASelectStyleI18n.js +19 -19
  333. package/src/ui/ASelectStyle/i18n/ar.json +277 -277
  334. package/src/ui/ASelectStyle/i18n/de.json +277 -277
  335. package/src/ui/ASelectStyle/i18n/en.json +277 -277
  336. package/src/ui/ASelectStyle/i18n/es.json +277 -277
  337. package/src/ui/ASelectStyle/i18n/fr.json +277 -277
  338. package/src/ui/ASelectStyle/i18n/hr.json +277 -277
  339. package/src/ui/ASelectStyle/i18n/it.json +277 -277
  340. package/src/ui/ASelectStyle/i18n/ru.json +277 -277
  341. package/src/ui/ASlider/ASlider.js +672 -672
  342. package/src/ui/ASlider/compositionAPI/AriaAttributesAPI.js +121 -121
  343. package/src/ui/ASlider/compositionAPI/AttributesAPI.js +15 -15
  344. package/src/ui/ASlider/compositionAPI/DataAPI.js +115 -115
  345. package/src/ui/ASlider/compositionAPI/DragAndDropAPI.js +198 -198
  346. package/src/ui/ASlider/compositionAPI/LabelAPI.js +13 -13
  347. package/src/ui/ASlider/compositionAPI/MarksAPI.js +32 -32
  348. package/src/ui/ASlider/compositionAPI/SliderAPI.js +289 -289
  349. package/src/ui/ASlider/compositionAPI/StopsAPI.js +47 -47
  350. package/src/ui/ASlider/compositionAPI/StylesAPI.js +79 -79
  351. package/src/ui/ASlider/compositionAPI/TitleAPI.js +42 -42
  352. package/src/ui/ASlider/i18n/ASliderI18n.js +19 -19
  353. package/src/ui/ASlider/i18n/en.json +4 -4
  354. package/src/ui/ASwitch/ASwitch.js +439 -438
  355. package/src/ui/ATemplate/ATemplate.js +0 -0
  356. package/src/ui/ATextarea/ATextarea.js +437 -437
  357. package/src/ui/AUiComponents.js +59 -59
  358. package/src/ui/AUiContainerComponents.js +12 -12
  359. package/src/ui/AValidatedJson/AValidatedJson.js +594 -594
  360. package/src/ui/AValidatedJson/AValidatedJsonItem/compositionAPI/DeleteAPI.js +63 -63
  361. package/src/ui/AValidatedJson/AValidatedJsonItem/compositionAPI/DetailsAPI.js +59 -59
  362. package/src/ui/AValidatedJson/AValidatedJsonItem/compositionAPI/MoveAPI.js +50 -50
  363. package/src/ui/AValidatedJson/AValidatedJsonItem/compositionAPI/UpdateAPI.js +48 -48
  364. package/src/ui/AValidatedJson/AValidatedJsonModalCreateOrUpdate/composiitionAPI/DataFormAPI.js +69 -69
  365. package/src/ui/AValidatedJson/AValidatedJsonModalCreateOrUpdate/composiitionAPI/DisabledAPI.js +35 -35
  366. package/src/ui/AValidatedJson/AValidatedJsonModalCreateOrUpdate/composiitionAPI/ModelAPI.js +31 -31
  367. package/src/ui/AValidatedJson/AValidatedJsonModalCreateOrUpdate/composiitionAPI/SaveAPI.js +115 -115
  368. package/src/ui/AValidatedJson/AValidatedJsonModalCreateOrUpdate/composiitionAPI/TextAPI.js +25 -25
  369. package/src/ui/AValidatedJson/compositionAPI/AValidatedJsonErrorLabelsAPI.js +18 -18
  370. package/src/ui/AValidatedJson/compositionAPI/AttributesAPI.js +15 -15
  371. package/src/ui/AValidatedJson/compositionAPI/ChildrenAPI.js +70 -70
  372. package/src/ui/AValidatedJson/compositionAPI/EventsAPI.js +19 -19
  373. package/src/ui/AValidatedJson/compositionAPI/JsonModeAPI.js +119 -119
  374. package/src/ui/AValidatedJson/compositionAPI/ListModeAPI.js +144 -144
  375. package/src/ui/AValidatedJson/compositionAPI/ModelAPI.js +38 -38
  376. package/src/ui/AValidatedJson/compositionAPI/SingleModeAPI.js +112 -112
  377. package/src/ui/AValidatedJson/compositionAPI/TranslateAPI.js +22 -22
  378. package/src/ui/AValidatedJson/i18n/AValidatedJsonI18n.js +19 -19
  379. package/src/ui/AValidatedJson/i18n/ar.json +3 -3
  380. package/src/ui/AValidatedJson/i18n/de.json +22 -22
  381. package/src/ui/AValidatedJson/i18n/en.json +3 -3
  382. package/src/ui/AValidatedJson/i18n/es.json +3 -3
  383. package/src/ui/AValidatedJson/i18n/fr.json +3 -3
  384. package/src/ui/AValidatedJson/i18n/hr.json +3 -3
  385. package/src/ui/AValidatedJson/i18n/it.json +3 -3
  386. package/src/ui/AValidatedJson/i18n/ru.json +6 -6
  387. package/src/ui/compositionApi/UIDataGroupAPI.js +94 -94
  388. package/src/ui/compositionApi/UiAPI.js +185 -185
  389. package/src/ui/compositionApi/UiClearButtonAPI.js +19 -19
  390. package/src/ui/compositionApi/UiDataSortAPI.js +29 -29
  391. package/src/ui/compositionApi/UiDataWithKeyIdAndLabelAPI.js +155 -155
  392. package/src/ui/const/AUiTypes.js +69 -69
  393. package/src/ui/mixins/UiMixinProps.js +129 -129
  394. package/src/ui/utils/utils.js +79 -79
  395. package/src/utils/__tests__/utils.aOrderBy.test.js +237 -237
  396. package/src/utils/__tests__/utils.aSortBy.test.js +331 -331
  397. package/src/utils/__tests__/utilsArray.aFirst.test.js +54 -54
  398. package/src/utils/__tests__/utilsArray.aLast.test.js +54 -54
  399. package/src/utils/__tests__/utilsLang.isArguments.test.js +52 -52
  400. package/src/utils/__tests__/utilsLang.isArray.test.js +50 -50
  401. package/src/utils/__tests__/utilsLang.isArrayBuffer.test.js +48 -48
  402. package/src/utils/__tests__/utilsLang.isBoolean.test.js +56 -56
  403. package/src/utils/__tests__/utilsLang.isBuffer.test.js +47 -47
  404. package/src/utils/__tests__/utilsLang.isDate.test.js +54 -54
  405. package/src/utils/__tests__/utilsLang.isElement.test.js +53 -53
  406. package/src/utils/__tests__/utilsLang.isError.test.js +52 -52
  407. package/src/utils/__tests__/utilsLang.isFinite.test.js +57 -57
  408. package/src/utils/__tests__/utilsLang.isFunction.test.js +46 -46
  409. package/src/utils/__tests__/utilsLang.isInteger.test.js +58 -58
  410. package/src/utils/__tests__/utilsLang.isMap.test.js +50 -50
  411. package/src/utils/__tests__/utilsLang.isNaN.test.js +55 -55
  412. package/src/utils/__tests__/utilsLang.isNil.test.js +57 -57
  413. package/src/utils/__tests__/utilsLang.isNull.test.js +53 -53
  414. package/src/utils/__tests__/utilsLang.isNumber.test.js +54 -54
  415. package/src/utils/__tests__/utilsLang.isObject.test.js +49 -49
  416. package/src/utils/__tests__/utilsLang.isObjectLike.test.js +45 -45
  417. package/src/utils/__tests__/utilsLang.isPlainObject.test.js +60 -60
  418. package/src/utils/__tests__/utilsLang.isPromise.test.js +93 -93
  419. package/src/utils/__tests__/utilsLang.isRegExp.test.js +46 -46
  420. package/src/utils/__tests__/utilsLang.isSet.test.js +50 -50
  421. package/src/utils/__tests__/utilsLang.isString.test.js +50 -50
  422. package/src/utils/__tests__/utilsLang.isSymbol.test.js +45 -45
  423. package/src/utils/__tests__/utilsLang.isUndefined.test.js +57 -57
  424. package/src/utils/__tests__/utilsLang.isWeakMap.test.js +49 -49
  425. package/src/utils/__tests__/utilsLang.isWeakSet.test.js +49 -49
  426. package/src/utils/actions.js +67 -67
  427. package/src/utils/autosize.js +277 -277
  428. package/src/utils/isBrowser.js +12 -12
  429. package/src/utils/utils.js +253 -253
  430. package/src/utils/utilsArray.js +29 -29
  431. package/src/utils/utilsDOM.js +188 -188
  432. package/src/utils/utilsLang.js +346 -346
@@ -1,96 +1,96 @@
1
- import {
2
- computed,
3
- ref,
4
- toRef,
5
- } from "vue";
6
-
7
- import AKeysCode from "../../../../../const/AKeysCode";
8
- import moment from "moment";
9
- import {
10
- setFocusToElement,
11
- } from "../../../../../utils/utilsDOM";
12
-
13
- export default function FocusAPI(props, { emit }, {
14
- dayFromValueOrToday = computed(() => ""),
15
- }) {
16
- const calendarMonth = toRef(props, "calendarMonth");
17
- const calendarYear = toRef(props, "calendarYear");
18
- const id = toRef(props, "id");
19
-
20
- const dayForFocusButton = ref(undefined);
21
-
22
- const idForFocus = computed(() => {
23
- if (dayForFocusButton.value) {
24
- return `${ id.value }_${ dayForFocusButton.value }`;
25
- }
26
-
27
- return "";
28
- });
29
-
30
- const daysInMonth = computed(() => {
31
- return moment(`${ calendarYear.value }_${ calendarMonth.value + 1 }`, "YYYY-MM").daysInMonth();
32
- });
33
-
34
- const setFocusToElementWithTimeout = idForFocusElement => {
35
- setTimeout(() => {
36
- setFocusToElement({ selector: `#${ idForFocusElement }` });
37
- });
38
- };
39
-
40
- const stopCurrentEvent = $event => {
41
- $event.preventDefault();
42
- $event.stopPropagation();
43
- };
44
-
45
- const setFocusToPast = minusDays => {
46
- const NEW_DAY_FOR_BUTTON = dayForFocusButton.value - minusDays;
47
- if (NEW_DAY_FOR_BUTTON > 0) {
48
- dayForFocusButton.value = NEW_DAY_FOR_BUTTON;
49
- } else {
50
- emit("handleIconMonth", -1);
51
- setTimeout(() => {
52
- dayForFocusButton.value = daysInMonth.value - Math.abs(NEW_DAY_FOR_BUTTON);
53
- });
54
- }
55
- setFocusToElementWithTimeout(idForFocus.value);
56
- };
57
-
58
- const setFocusToFuture = plusDays => {
59
- const NEW_DAY_FOR_BUTTON = dayForFocusButton.value + plusDays;
60
- if (NEW_DAY_FOR_BUTTON <= daysInMonth.value) {
61
- dayForFocusButton.value = NEW_DAY_FOR_BUTTON;
62
- } else {
63
- const ALT_DAY_IN_MONTH = daysInMonth.value;
64
- emit("handleIconMonth", 1);
65
- dayForFocusButton.value = NEW_DAY_FOR_BUTTON - ALT_DAY_IN_MONTH;
66
- }
67
- setFocusToElementWithTimeout(idForFocus.value);
68
- };
69
-
70
- const pressButton = $event => {
71
- const KEY_CODE = $event.keyCode;
72
- if (KEY_CODE === AKeysCode.arrowUp) {
73
- setFocusToPast(7);
74
- stopCurrentEvent($event);
75
- } else if (KEY_CODE === AKeysCode.arrowDown) {
76
- setFocusToFuture(7);
77
- stopCurrentEvent($event);
78
- } else if (KEY_CODE === AKeysCode.arrowLeft) {
79
- setFocusToPast(1);
80
- stopCurrentEvent($event);
81
- } else if (KEY_CODE === AKeysCode.arrowRight) {
82
- setFocusToFuture(1);
83
- stopCurrentEvent($event);
84
- }
85
- };
86
-
87
- const setDefaultDayForFocusButton = () => {
88
- dayForFocusButton.value = dayFromValueOrToday.value;
89
- };
90
-
91
- return {
92
- idForFocus,
93
- pressButton,
94
- setDefaultDayForFocusButton,
95
- };
96
- }
1
+ import {
2
+ computed,
3
+ ref,
4
+ toRef,
5
+ } from "vue";
6
+
7
+ import AKeysCode from "../../../../../const/AKeysCode";
8
+ import moment from "moment";
9
+ import {
10
+ setFocusToElement,
11
+ } from "../../../../../utils/utilsDOM";
12
+
13
+ export default function FocusAPI(props, { emit }, {
14
+ dayFromValueOrToday = computed(() => ""),
15
+ }) {
16
+ const calendarMonth = toRef(props, "calendarMonth");
17
+ const calendarYear = toRef(props, "calendarYear");
18
+ const id = toRef(props, "id");
19
+
20
+ const dayForFocusButton = ref(undefined);
21
+
22
+ const idForFocus = computed(() => {
23
+ if (dayForFocusButton.value) {
24
+ return `${ id.value }_${ dayForFocusButton.value }`;
25
+ }
26
+
27
+ return "";
28
+ });
29
+
30
+ const daysInMonth = computed(() => {
31
+ return moment(`${ calendarYear.value }_${ calendarMonth.value + 1 }`, "YYYY-MM").daysInMonth();
32
+ });
33
+
34
+ const setFocusToElementWithTimeout = idForFocusElement => {
35
+ setTimeout(() => {
36
+ setFocusToElement({ selector: `#${ idForFocusElement }` });
37
+ });
38
+ };
39
+
40
+ const stopCurrentEvent = $event => {
41
+ $event.preventDefault();
42
+ $event.stopPropagation();
43
+ };
44
+
45
+ const setFocusToPast = minusDays => {
46
+ const NEW_DAY_FOR_BUTTON = dayForFocusButton.value - minusDays;
47
+ if (NEW_DAY_FOR_BUTTON > 0) {
48
+ dayForFocusButton.value = NEW_DAY_FOR_BUTTON;
49
+ } else {
50
+ emit("handleIconMonth", -1);
51
+ setTimeout(() => {
52
+ dayForFocusButton.value = daysInMonth.value - Math.abs(NEW_DAY_FOR_BUTTON);
53
+ });
54
+ }
55
+ setFocusToElementWithTimeout(idForFocus.value);
56
+ };
57
+
58
+ const setFocusToFuture = plusDays => {
59
+ const NEW_DAY_FOR_BUTTON = dayForFocusButton.value + plusDays;
60
+ if (NEW_DAY_FOR_BUTTON <= daysInMonth.value) {
61
+ dayForFocusButton.value = NEW_DAY_FOR_BUTTON;
62
+ } else {
63
+ const ALT_DAY_IN_MONTH = daysInMonth.value;
64
+ emit("handleIconMonth", 1);
65
+ dayForFocusButton.value = NEW_DAY_FOR_BUTTON - ALT_DAY_IN_MONTH;
66
+ }
67
+ setFocusToElementWithTimeout(idForFocus.value);
68
+ };
69
+
70
+ const pressButton = $event => {
71
+ const KEY_CODE = $event.keyCode;
72
+ if (KEY_CODE === AKeysCode.arrowUp) {
73
+ setFocusToPast(7);
74
+ stopCurrentEvent($event);
75
+ } else if (KEY_CODE === AKeysCode.arrowDown) {
76
+ setFocusToFuture(7);
77
+ stopCurrentEvent($event);
78
+ } else if (KEY_CODE === AKeysCode.arrowLeft) {
79
+ setFocusToPast(1);
80
+ stopCurrentEvent($event);
81
+ } else if (KEY_CODE === AKeysCode.arrowRight) {
82
+ setFocusToFuture(1);
83
+ stopCurrentEvent($event);
84
+ }
85
+ };
86
+
87
+ const setDefaultDayForFocusButton = () => {
88
+ dayForFocusButton.value = dayFromValueOrToday.value;
89
+ };
90
+
91
+ return {
92
+ idForFocus,
93
+ pressButton,
94
+ setDefaultDayForFocusButton,
95
+ };
96
+ }
@@ -1,27 +1,27 @@
1
- import {
2
- computed,
3
- } from "vue";
4
-
5
- import {
6
- setFocusToElement,
7
- } from "../../../../../utils/utilsDOM";
8
-
9
- export default function FocusActiveAPI({
10
- idForFocus = computed(() => ""),
11
- setDefaultDayForFocusButton = () => {},
12
- setListenerForPressButtons = () => {},
13
- }) {
14
- const setFocusToActiveDay = () => {
15
- setTimeout(() => {
16
- setDefaultDayForFocusButton();
17
- setFocusToElement({
18
- selector: `#${ idForFocus.value }`,
19
- });
20
- setListenerForPressButtons();
21
- });
22
- };
23
-
24
- return {
25
- setFocusToActiveDay,
26
- };
27
- }
1
+ import {
2
+ computed,
3
+ } from "vue";
4
+
5
+ import {
6
+ setFocusToElement,
7
+ } from "../../../../../utils/utilsDOM";
8
+
9
+ export default function FocusActiveAPI({
10
+ idForFocus = computed(() => ""),
11
+ setDefaultDayForFocusButton = () => {},
12
+ setListenerForPressButtons = () => {},
13
+ }) {
14
+ const setFocusToActiveDay = () => {
15
+ setTimeout(() => {
16
+ setDefaultDayForFocusButton();
17
+ setFocusToElement({
18
+ selector: `#${ idForFocus.value }`,
19
+ });
20
+ setListenerForPressButtons();
21
+ });
22
+ };
23
+
24
+ return {
25
+ setFocusToActiveDay,
26
+ };
27
+ }
@@ -1,21 +1,21 @@
1
- import {
2
- toRef,
3
- } from "vue";
4
-
5
- export default function SelectAPI(props, { emit }) {
6
- const disabledDate = toRef(props, "disabledDate");
7
-
8
- const selectDate = ($event, { year, month, day }) => {
9
- $event.stopPropagation();
10
- const date = new Date(year, month, day);
11
- if (disabledDate.value(date)) {
12
- return;
13
- }
14
-
15
- emit("select", date);
16
- };
17
-
18
- return {
19
- selectDate,
20
- };
21
- }
1
+ import {
2
+ toRef,
3
+ } from "vue";
4
+
5
+ export default function SelectAPI(props, { emit }) {
6
+ const disabledDate = toRef(props, "disabledDate");
7
+
8
+ const selectDate = ($event, { year, month, day }) => {
9
+ $event.stopPropagation();
10
+ const date = new Date(year, month, day);
11
+ if (disabledDate.value(date)) {
12
+ return;
13
+ }
14
+
15
+ emit("select", date);
16
+ };
17
+
18
+ return {
19
+ selectDate,
20
+ };
21
+ }
@@ -1,128 +1,128 @@
1
- import {
2
- computed,
3
- toRef,
4
- } from "vue";
5
-
6
- import {
7
- formatDate,
8
- } from "../../../utils";
9
-
10
- export default function TableAPI(props, {
11
- dates = computed(() => []),
12
- }) {
13
- const calendarMonth = toRef(props, "calendarMonth");
14
- const currentLanguage = toRef(props, "currentLanguage");
15
- const disabledDate = toRef(props, "disabledDate");
16
- const dateFormat = toRef(props, "dateFormat");
17
- const endAt = toRef(props, "endAt");
18
- const firstDayOfWeek = toRef(props, "firstDayOfWeek");
19
- const id = toRef(props, "id");
20
- const startAt = toRef(props, "startAt");
21
- const value = toRef(props, "value");
22
-
23
- const ths = computed(() => {
24
- const days = currentLanguage.value.days;
25
- const firstDay = parseInt(firstDayOfWeek.value, 10);
26
-
27
- return days.concat(days).slice(firstDay, firstDay + 7);
28
- });
29
-
30
- const getCellTime = ({ year, month, day }) => {
31
- return new Date(year, month, day).getTime();
32
- };
33
-
34
- const isCurrentDayToday = ({ year, month, day }) => {
35
- const CELL_TIME = getCellTime({ year, month, day });
36
- const TODAY = new Date().setHours(0, 0, 0, 0);
37
- return CELL_TIME === TODAY;
38
- };
39
-
40
-
41
- const getCellClasses = ({ cellTime, isToday, month }) => {
42
- const CLASSES = [];
43
- const CURRENT_TIME = value.value && new Date(value.value).setHours(0, 0, 0, 0);
44
- const START_TIME = startAt.value && new Date(startAt.value).setHours(0, 0, 0, 0);
45
- const END_TIME = endAt.value && new Date(endAt.value).setHours(0, 0, 0, 0);
46
-
47
- if (month < calendarMonth.value) {
48
- CLASSES.push("last-month");
49
- } else if (month > calendarMonth.value) {
50
- CLASSES.push("next-month");
51
- } else {
52
- CLASSES.push("cur-month");
53
- }
54
-
55
- if (isToday) {
56
- CLASSES.push("today");
57
- }
58
-
59
- if (disabledDate.value(cellTime)) {
60
- CLASSES.push("disabled");
61
- }
62
-
63
- if (CURRENT_TIME) {
64
- if (cellTime === CURRENT_TIME) {
65
- CLASSES.push("actived");
66
- } else if (START_TIME && cellTime <= CURRENT_TIME) {
67
- CLASSES.push("inrange");
68
- } else if (END_TIME && cellTime >= CURRENT_TIME) {
69
- CLASSES.push("inrange");
70
- }
71
- }
72
- return CLASSES.join(" ");
73
- };
74
-
75
- const getId = ({ month, day }) => {
76
- let _id = `${ id.value }_${ day }`;
77
- if (month < calendarMonth.value) {
78
- _id += "_last_month";
79
- } else if (month > calendarMonth.value) {
80
- _id += "_next_month";
81
- }
82
-
83
- return _id;
84
- };
85
-
86
- const getCellTitle = ({ year, month, day }) => {
87
- return formatDate(new Date(year, month, day), dateFormat.value);
88
- };
89
-
90
- const trsWithTds = computed(() => {
91
- const TRS_WITH_TDS = [];
92
- for (let i = 0; i < 6; i++) {
93
- const TDS = [];
94
- dates.value.slice(7 * i, 7 * i + 7).forEach(date => {
95
- const IS_TODAY = isCurrentDayToday(date);
96
- const CELL_TIME = getCellTime(date);
97
- const IS_DISABLED = disabledDate.value(CELL_TIME);
98
- TDS.push({
99
- class: getCellClasses({
100
- cellTime: CELL_TIME,
101
- isToday: IS_TODAY,
102
- month: date.month,
103
- }),
104
- id: getId({
105
- month: date.month,
106
- day: date.day,
107
- }),
108
- year: date.year,
109
- month: date.month,
110
- fullDate: getCellTitle(date),
111
- date: date,
112
- label: date.day,
113
- isToday: IS_TODAY,
114
- isDisabled: IS_DISABLED,
115
- isCurrentMonth: date.month === calendarMonth.value,
116
- });
117
- });
118
- TRS_WITH_TDS.push(TDS);
119
- }
120
-
121
- return TRS_WITH_TDS;
122
- });
123
-
124
- return {
125
- ths,
126
- trsWithTds,
127
- };
128
- }
1
+ import {
2
+ computed,
3
+ toRef,
4
+ } from "vue";
5
+
6
+ import {
7
+ formatDate,
8
+ } from "../../../utils";
9
+
10
+ export default function TableAPI(props, {
11
+ dates = computed(() => []),
12
+ }) {
13
+ const calendarMonth = toRef(props, "calendarMonth");
14
+ const currentLanguage = toRef(props, "currentLanguage");
15
+ const disabledDate = toRef(props, "disabledDate");
16
+ const dateFormat = toRef(props, "dateFormat");
17
+ const endAt = toRef(props, "endAt");
18
+ const firstDayOfWeek = toRef(props, "firstDayOfWeek");
19
+ const id = toRef(props, "id");
20
+ const startAt = toRef(props, "startAt");
21
+ const value = toRef(props, "value");
22
+
23
+ const ths = computed(() => {
24
+ const days = currentLanguage.value.days;
25
+ const firstDay = parseInt(firstDayOfWeek.value, 10);
26
+
27
+ return days.concat(days).slice(firstDay, firstDay + 7);
28
+ });
29
+
30
+ const getCellTime = ({ year, month, day }) => {
31
+ return new Date(year, month, day).getTime();
32
+ };
33
+
34
+ const isCurrentDayToday = ({ year, month, day }) => {
35
+ const CELL_TIME = getCellTime({ year, month, day });
36
+ const TODAY = new Date().setHours(0, 0, 0, 0);
37
+ return CELL_TIME === TODAY;
38
+ };
39
+
40
+
41
+ const getCellClasses = ({ cellTime, isToday, month }) => {
42
+ const CLASSES = [];
43
+ const CURRENT_TIME = value.value && new Date(value.value).setHours(0, 0, 0, 0);
44
+ const START_TIME = startAt.value && new Date(startAt.value).setHours(0, 0, 0, 0);
45
+ const END_TIME = endAt.value && new Date(endAt.value).setHours(0, 0, 0, 0);
46
+
47
+ if (month < calendarMonth.value) {
48
+ CLASSES.push("last-month");
49
+ } else if (month > calendarMonth.value) {
50
+ CLASSES.push("next-month");
51
+ } else {
52
+ CLASSES.push("cur-month");
53
+ }
54
+
55
+ if (isToday) {
56
+ CLASSES.push("today");
57
+ }
58
+
59
+ if (disabledDate.value(cellTime)) {
60
+ CLASSES.push("disabled");
61
+ }
62
+
63
+ if (CURRENT_TIME) {
64
+ if (cellTime === CURRENT_TIME) {
65
+ CLASSES.push("actived");
66
+ } else if (START_TIME && cellTime <= CURRENT_TIME) {
67
+ CLASSES.push("inrange");
68
+ } else if (END_TIME && cellTime >= CURRENT_TIME) {
69
+ CLASSES.push("inrange");
70
+ }
71
+ }
72
+ return CLASSES.join(" ");
73
+ };
74
+
75
+ const getId = ({ month, day }) => {
76
+ let _id = `${ id.value }_${ day }`;
77
+ if (month < calendarMonth.value) {
78
+ _id += "_last_month";
79
+ } else if (month > calendarMonth.value) {
80
+ _id += "_next_month";
81
+ }
82
+
83
+ return _id;
84
+ };
85
+
86
+ const getCellTitle = ({ year, month, day }) => {
87
+ return formatDate(new Date(year, month, day), dateFormat.value);
88
+ };
89
+
90
+ const trsWithTds = computed(() => {
91
+ const TRS_WITH_TDS = [];
92
+ for (let i = 0; i < 6; i++) {
93
+ const TDS = [];
94
+ dates.value.slice(7 * i, 7 * i + 7).forEach(date => {
95
+ const IS_TODAY = isCurrentDayToday(date);
96
+ const CELL_TIME = getCellTime(date);
97
+ const IS_DISABLED = disabledDate.value(CELL_TIME);
98
+ TDS.push({
99
+ class: getCellClasses({
100
+ cellTime: CELL_TIME,
101
+ isToday: IS_TODAY,
102
+ month: date.month,
103
+ }),
104
+ id: getId({
105
+ month: date.month,
106
+ day: date.day,
107
+ }),
108
+ year: date.year,
109
+ month: date.month,
110
+ fullDate: getCellTitle(date),
111
+ date: date,
112
+ label: date.day,
113
+ isToday: IS_TODAY,
114
+ isDisabled: IS_DISABLED,
115
+ isCurrentMonth: date.month === calendarMonth.value,
116
+ });
117
+ });
118
+ TRS_WITH_TDS.push(TDS);
119
+ }
120
+
121
+ return TRS_WITH_TDS;
122
+ });
123
+
124
+ return {
125
+ ths,
126
+ trsWithTds,
127
+ };
128
+ }