aloha-vue 2.7.0 → 2.7.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.
- package/CHANGELOG.md +8 -0
- package/LICENSE +21 -21
- package/dist/aloha-vue.es.js +6669 -6559
- package/dist/aloha-vue.umd.js +55 -55
- package/package.json +1 -1
- package/src/AAccordion/AAccordionItem/compositionAPI/AttributesAPI.js +96 -96
- package/src/AAccordion/AAccordionItem/compositionAPI/ChildrenAPI.js +28 -28
- package/src/AAccordion/AAccordionItem/compositionAPI/ClassAPI.js +44 -44
- package/src/AAccordion/AAccordionItem/compositionAPI/ToggleAPI.js +81 -81
- package/src/AAccordion/AAccordionItem/compositionAPI/VisibleAPI.js +46 -46
- package/src/AAccordion/compositionAPI/IndexesForOpenAPI.js +61 -61
- package/src/AAlert/compositionAPI/ClassAPI.js +16 -16
- package/src/AAlert/compositionAPI/CloseAPI.js +26 -26
- package/src/AAlert/compositionAPI/IconAPI.js +28 -28
- package/src/AButton/compositionAPI/EmitsAPI.js +9 -9
- package/src/ACloak/i18n/ACloakI18n.js +7 -7
- package/src/ACollapse/ACollapse.js +103 -103
- package/src/ACollapse/ACollapse.pug +25 -25
- package/src/ACollapse/ACollapse.vue +2 -2
- package/src/ADisclosure/compositionAPI/BtnAttributesAPI.js +61 -61
- package/src/ADisclosure/i18n/ADisclosureI18n.js +19 -19
- package/src/ADisclosure/i18n/ar.json +4 -4
- package/src/ADisclosure/i18n/de.json +4 -4
- package/src/ADisclosure/i18n/en.json +4 -4
- package/src/ADisclosure/i18n/es.json +4 -4
- package/src/ADisclosure/i18n/fr.json +4 -4
- package/src/ADisclosure/i18n/hr.json +4 -4
- package/src/ADisclosure/i18n/it.json +4 -4
- package/src/ADisclosure/i18n/ru.json +4 -4
- package/src/ADropdown/ADropdownAction/compositionAPI/AttributesAPI.js +38 -38
- package/src/ADropdown/compositionAPI/ActionsAPI.js +27 -27
- package/src/ADropdown/compositionAPI/AttributesAPI.js +75 -75
- package/src/ADropdown/compositionAPI/ClassAPI.js +41 -41
- package/src/ADropdown/compositionAPI/EventsAPI.js +70 -70
- package/src/ADropdown/compositionAPI/FocusAPI.js +25 -25
- package/src/ADropdown/compositionAPI/RefsAPI.js +13 -13
- package/src/AElement/comositionAPI/AttributesAPI.js +51 -51
- package/src/AElement/comositionAPI/ComponentLocalAPI.js +23 -23
- package/src/AElement/comositionAPI/LoadingAPI.js +22 -22
- package/src/AElement/comositionAPI/RouterLinkAPI.js +20 -20
- package/src/AElement/comositionAPI/SwitchAPI.js +33 -33
- package/src/AElement/comositionAPI/TagAPI.js +34 -34
- package/src/AElement/comositionAPI/TextAPI.js +78 -78
- package/src/AElement/comositionAPI/TitleAPI.js +29 -29
- package/src/AFilters/AFilersRight/compositionAPI/IdAPI.js +16 -16
- package/src/AFilters/AFilterCenter/AFilterCenterItem/compositionAPI/CloseFilterValueAPI.js +24 -24
- package/src/AFilters/AFilterCenter/AFilterCenterItem/compositionAPI/FilterVisibleAPI.js +26 -26
- package/src/AFilters/AFilterCenter/AFilterCenterItem/compositionAPI/HasFilterAPI.js +24 -24
- package/src/AFilters/AFilterCenter/AFilterCenterItem/compositionAPI/LabelAPI.js +33 -33
- package/src/AFilters/AFilterCenter/compositionAPI/LoadingFiltersAPI.js +32 -32
- package/src/AFilters/AFilterCenter/utils/utils.js +15 -15
- package/src/AFilters/AFilters/compositionAPI/CloseFilterAPI.js +5 -5
- package/src/AFilters/AFilters/compositionAPI/ExcludeRenderAttributesAPI.js +24 -24
- package/src/AFilters/AFilters/compositionAPI/SaveAPI.js +57 -57
- package/src/AFilters/AFilters/compositionAPI/ToggleAPI.js +3 -3
- package/src/AFilters/AFiltersHorizontal/AFiltersHorizontalFilter/compositionAPI/IdAPI.js +29 -29
- package/src/AFilters/AFiltersHorizontal/AFiltersHorizontalFilter/compositionAPI/IsFilterAPI.js +16 -16
- package/src/AFilters/AFiltersHorizontal/AFiltersHorizontalFilter/compositionAPI/LabelAPI.js +19 -19
- package/src/AFilters/AFiltersHorizontal/AFiltersHorizontalFilterUi/compositionAPI/ComponentTypesAPI.js +18 -18
- package/src/AFilters/AFiltersHorizontal/AFiltersHorizontalFilterUi/compositionAPI/ContainerAPI.js +20 -20
- package/src/AFilters/AFiltersHorizontal/AFiltersHorizontalFilterUi/compositionAPI/FilterSpecificTypeAPI.js +42 -42
- package/src/AFilters/AFiltersHorizontal/AFiltersHorizontalFilterUi/compositionAPI/IdAPI.js +16 -16
- package/src/AFilters/AFiltersHorizontal/AFiltersHorizontalFilterUi/compositionAPI/UpdateDataAPI.js +34 -34
- package/src/AFilters/AFiltersHorizontal/compositionAPI/DropdownAPI.js +30 -30
- package/src/AFilters/AFiltersHorizontal/compositionAPI/FiltersSavedDeleteAPI.js +108 -108
- package/src/AFilters/AFiltersHorizontal/compositionAPI/IdAPI.js +16 -16
- package/src/AFilters/AFiltersHorizontal/compositionAPI/SearchAPI.js +22 -22
- package/src/AFilters/AFiltersMain/compositionAPI/IdAPI.js +16 -16
- package/src/AFilters/AFiltersMain/compositionAPI/MainFilterAPI.js +26 -26
- package/src/AFilters/AFiltersMain/compositionAPI/SearchAPI.js +18 -18
- package/src/AFilters/AFiltersSaveModal/compositionAPI/DataFormAPI.js +54 -54
- package/src/AFilters/AFiltersSaveModal/compositionAPI/SaveAPI.js +65 -65
- package/src/AFilters/i18n/AFiltersI18n.js +19 -19
- package/src/AFilters/i18n/ar.json +23 -23
- package/src/AFilters/i18n/de.json +30 -30
- package/src/AFilters/i18n/en.json +28 -28
- package/src/AFilters/i18n/es.json +23 -23
- package/src/AFilters/i18n/fr.json +23 -23
- package/src/AFilters/i18n/hr.json +23 -23
- package/src/AFilters/i18n/it.json +23 -23
- package/src/AGroupButtonDropdown/AGroupButtonDropdownItem/compositionAPI/DropdownAPI.js +27 -27
- package/src/AGroupButtonDropdown/compositionAPI/ActionsAPI.js +141 -141
- package/src/AIcon/Icons/Aloha.js +27 -27
- package/src/AIcon/Icons/EyeClose.js +14 -14
- package/src/AIcon/Icons/EyeOpen.js +14 -14
- package/src/AIcon/Icons/Lock.js +14 -14
- package/src/AIcon/Icons/Minus.js +3 -3
- package/src/AIcon/Icons/WeightForScale.js +11 -11
- package/src/AIcon/Icons/WeightForScaleEmpty.js +11 -11
- package/src/AIcon/Icons/WeightForScaleEmptyKG.js +24 -24
- package/src/AIcon/Icons/WeightForScaleKG.js +34 -34
- package/src/AIcon/Icons/_NoImage.js +11 -11
- package/src/AIcon/compositionAPI/AriaLabelHiddenAPI.js +23 -23
- package/src/AInfiniteScroll/AInfiniteScroll.js +74 -74
- package/src/AInfiniteScroll/compositionAPI/ObserverAPI.js +61 -61
- package/src/ALinkCopy/compositionAPI/CopyAPI.js +48 -48
- package/src/ALinkCopy/i18n/ALinkCopyI18n.js +19 -19
- package/src/ALinkCopy/i18n/de.json +4 -4
- package/src/ALinkCopy/i18n/hr.json +4 -4
- package/src/ALinkCopy/i18n/ru.json +4 -4
- package/src/AList/AList.js +132 -132
- package/src/AList/AListItem/compositionAPI/ChildrenAPI.js +39 -39
- package/src/AList/AListItem/compositionAPI/LabelAPI.js +38 -38
- package/src/AList/compositionAPI/PlainTextAPI.js +30 -30
- package/src/AList/compositionAPI/TagAPI.js +22 -22
- package/src/AMenu/compositionAPI/AMenuBlockerClickAPI.js +27 -27
- package/src/AModal/compositionAPI/AttributesAPI.js +21 -21
- package/src/AModal/compositionAPI/CloseFromOutsideAPI.js +29 -29
- package/src/AModal/compositionAPI/DisabledAPI.js +17 -17
- package/src/AModal/compositionAPI/FocusByDestroyAPI.js +67 -67
- package/src/AModal/compositionAPI/HideModalAPI.js +14 -14
- package/src/AModal/compositionAPI/KeydownAPI.js +29 -29
- package/src/AModal/compositionAPI/ShowModalAPI.js +26 -26
- package/src/AModal/compositionAPI/SizeAPI.js +19 -19
- package/src/AModal/compositionAPI/WrapperAPI.js +21 -21
- package/src/AModal/compositionAPI/ZIndexAPI.js +48 -48
- package/src/AModal/i18n/AModalI18n.js +19 -19
- package/src/AModal/i18n/ar.json +7 -7
- package/src/AModal/i18n/de.json +7 -7
- package/src/AModal/i18n/en.json +7 -7
- package/src/AModal/i18n/es.json +7 -7
- package/src/AModal/i18n/fr.json +7 -7
- package/src/AModal/i18n/hr.json +7 -7
- package/src/AModal/i18n/it.json +7 -7
- package/src/AModal/i18n/ru.json +7 -7
- package/src/AModalConfirm/compositionAPI/CloseFromOutsideAPI.js +26 -26
- package/src/AModalForm/compositionAPI/DataFormAPI.js +16 -16
- package/src/AModalWizard/compositionAPI/EmitsAPI.js +13 -13
- package/src/ANotification/ANotification.js +50 -50
- package/src/API/frameworksApi.js +20 -20
- package/src/APageTabTitle/APageTabTitle.js +23 -23
- package/src/APagination/APaginationCountPerPage/compositionAPI/LimitAPI.js +42 -42
- package/src/APagination/APaginationCountPerPage/compositionAPI/MainAPI.js +40 -40
- package/src/APagination/APaginationPages/compositionAPI/DisabledAPI.js +24 -24
- package/src/APagination/APaginationPages/compositionAPI/UpdateOffsetAPI.js +111 -111
- package/src/APagination/compositionAPI/EmitsAPI.js +14 -14
- package/src/APagination/i18n/APaginationI18n.js +19 -19
- package/src/APagination/i18n/ar.json +12 -12
- package/src/APagination/i18n/de.json +12 -12
- package/src/APagination/i18n/en.json +12 -12
- package/src/APagination/i18n/es.json +12 -12
- package/src/APagination/i18n/fr.json +12 -12
- package/src/APagination/i18n/hr.json +12 -12
- package/src/APagination/i18n/it.json +12 -12
- package/src/APagination/i18n/ru.json +12 -12
- package/src/APopup/compositionAPI/ContainerAPI.js +29 -29
- package/src/APopup/compositionAPI/ToggleAPI.js +29 -29
- package/src/AProgress/AProgress.js +141 -141
- package/src/AProgress/compositionAPI/ClassBarAPI.js +25 -25
- package/src/AProgress/compositionAPI/DurationAPI.js +23 -23
- package/src/AProgress/compositionAPI/ValuePercentAPI.js +33 -33
- package/src/AProgress/compositionAPI/WidthAPI.js +18 -18
- package/src/AProgressCircle/AProgressCircle.js +160 -160
- package/src/AProgressCircle/compositionAPI/CircleAPI.js +35 -35
- package/src/AProgressCircle/compositionAPI/CircleSizesAPI.js +23 -23
- package/src/AProgressCircle/compositionAPI/SvgAPI.js +25 -25
- package/src/AScale/AScale.js +199 -199
- package/src/AScale/AScaleBalance/AScaleBalance.js +106 -106
- package/src/AScale/AScaleBalance/compositionAPI/SizesAPI.js +57 -57
- package/src/AScale/AScaleBowl/compositionAPI/SizesAPI.js +59 -59
- package/src/AScale/AScaleBowlDefs/AScaleBowlDefs.js +65 -65
- package/src/AScale/AScaleBowlDefs/compositionAPI/SizesAPI.js +30 -30
- package/src/AScale/AScaleStand/AScaleStand.js +70 -70
- package/src/AScale/AScaleStand/compositionAPI/SizesAPI.js +23 -23
- package/src/AScale/compositionAPI/SizesAPI.js +34 -34
- package/src/AShowMore/compositionAPI/BtnAttributesAPI.js +76 -76
- package/src/AShowMore/compositionAPI/ExpandedAPI.js +20 -20
- package/src/AShowMore/compositionAPI/HeightAPI.js +26 -26
- package/src/AShowMore/compositionAPI/ScreenReaderAPI.js +22 -22
- package/src/AShowMore/compositionAPI/TextLengthAPI.js +63 -63
- package/src/AShowMore/compositionAPI/TextOrHtmlAPI.js +19 -19
- package/src/AShowMore/i18n/AShowMoreI18n.js +19 -19
- package/src/AShowMore/i18n/ar.json +6 -6
- package/src/AShowMore/i18n/de.json +6 -6
- package/src/AShowMore/i18n/en.json +6 -6
- package/src/AShowMore/i18n/es.json +6 -6
- package/src/AShowMore/i18n/fr.json +6 -6
- package/src/AShowMore/i18n/hr.json +6 -6
- package/src/AShowMore/i18n/it.json +6 -6
- package/src/AShowMore/i18n/ru.json +6 -6
- package/src/ASlot/ASlot.js +7 -7
- package/src/ASlot/ASlot.pug +1 -1
- package/src/ASlot/ASlot.vue +2 -2
- package/src/ATable/ATableHeader/ATableHeader.js +177 -177
- package/src/ATable/ATableHeaderTh/compositionAPI/AttributesAPI.js +65 -65
- package/src/ATable/ATableHeaderThAction/ATableHeaderThActionItem/compositionAPI/AttributesComponentAPI.js +43 -43
- package/src/ATable/ATablePreviewRight/compositionAPI/ArrowsAPI.js +69 -69
- package/src/ATable/ATablePreviewRight/compositionAPI/IdAPI.js +20 -20
- package/src/ATable/ATablePreviewRight/compositionAPI/MouseEventsAPI.js +36 -36
- package/src/ATable/ATablePreviewRight/compositionAPI/RowAPI.js +86 -86
- package/src/ATable/ATableSortingAdditional/compositionAPI/AttributesAPI.js +21 -21
- package/src/ATable/ATableSortingAdditional/compositionAPI/ColumnsAPI.js +39 -39
- package/src/ATable/ATableSortingAdditional/compositionAPI/DropdownAPI.js +26 -26
- package/src/ATable/ATableSortingAdditional/compositionAPI/FormAPI.js +92 -92
- package/src/ATable/ATableSortingAdditional/compositionAPI/ModelAPI.js +150 -150
- package/src/ATable/ATableTd/compositionAPI/AttributesAPI.js +42 -42
- package/src/ATable/ATableTd/compositionAPI/SlotAPI.js +25 -25
- package/src/ATable/ATableTdAction/compositionAPI/RowNumberAPI.js +16 -16
- package/src/ATable/ATableTopPanel/compositionAPI/CountAllRowsAPI.js +22 -22
- package/src/ATable/ATableTopPanel/compositionAPI/ViewsAPI.js +21 -21
- package/src/ATable/ATableTr/compositionAPI/CheckboxAPI.js +59 -59
- package/src/ATable/ATableTr/compositionAPI/ChildrenAPI.js +66 -66
- package/src/ATable/ATableTr/compositionAPI/PreviewAPI.js +68 -68
- package/src/ATable/compositionAPI/ColumnSearchAPI.js +16 -16
- package/src/ATable/compositionAPI/ColumnStylesAPI.js +39 -39
- package/src/ATable/compositionAPI/ColumnsAPI.js +127 -127
- package/src/ATable/compositionAPI/DragAndDropChildAPI.js +97 -97
- package/src/ATable/compositionAPI/DragAndDropParentAPI.js +79 -79
- package/src/ATable/compositionAPI/FocusTableAPI.js +31 -31
- package/src/ATable/compositionAPI/MobileColumnsAPI.js +27 -27
- package/src/ATable/compositionAPI/PreviewRightRewAPI.js +16 -16
- package/src/ATable/compositionAPI/RowsAPI.js +121 -121
- package/src/ATable/compositionAPI/SortChangeAPI.js +79 -79
- package/src/ATable/compositionAPI/StickyAPI.js +20 -20
- package/src/ATable/compositionAPI/TableAttributesAPI.js +45 -45
- package/src/ATable/compositionAPI/TableColumnsVisibleFunctionAPI.js +23 -23
- package/src/ATable/compositionAPI/TextsAPI.js +23 -23
- package/src/ATable/compositionAPI/VariablesAPI.js +21 -21
- package/src/ATable/compositionAPI/ViewsAPI.js +66 -66
- package/src/ATable/i18n/ATableI18n.js +19 -19
- package/src/ATooltip/compositionAPI/PopperContainerAPI.js +27 -27
- package/src/ATooltip/compositionAPI/TagAPI.js +22 -22
- package/src/ATooltip/compositionAPI/ToggleAPI.js +40 -40
- package/src/ATranslation/compositionAPI/ATranslationAPI.js +67 -67
- package/src/ATranslation/compositionAPI/AriaLabelAPI.js +83 -83
- package/src/ATranslation/compositionAPI/AttributesAPI.js +39 -39
- package/src/ATranslation/compositionAPI/TextAPI.js +102 -102
- package/src/ATranslation/compositionAPI/TextAfterBeforeAPI.js +55 -55
- package/src/ATranslation/compositionAPI/TitleAPI.js +101 -101
- package/src/ATranslation/compositionAPI/UtilsAPI.js +144 -144
- package/src/AVerticalScroll/compositionAPI/ListenerAPI.js +21 -21
- package/src/AVerticalScroll/compositionAPI/ScrollAPI.js +52 -52
- package/src/AVerticalScroll/i18n/AVerticalScrollI18n.js +19 -19
- package/src/AVerticalScroll/i18n/ar.json +4 -4
- package/src/AVerticalScroll/i18n/de.json +4 -4
- package/src/AVerticalScroll/i18n/en.json +3 -3
- package/src/AVerticalScroll/i18n/es.json +3 -3
- package/src/AVerticalScroll/i18n/fr.json +3 -3
- package/src/AVerticalScroll/i18n/hr.json +3 -3
- package/src/AVerticalScroll/i18n/it.json +3 -3
- package/src/AVerticalScroll/i18n/ru.json +3 -3
- package/src/AWizard/AWizardStep/compositionAPI/DisabledAPI.js +39 -39
- package/src/AWizard/AWizardStep/compositionAPI/NumberAPI.js +36 -36
- package/src/AWizard/AWizardTab/compositionAPI/ActiveAPI.js +17 -17
- package/src/AWizard/AWizardTab/compositionAPI/ContentIdAPI.js +17 -17
- package/src/AWizard/AWizardTab/compositionAPI/FocusIdAPI.js +17 -17
- package/src/AWizard/AWizardTab/compositionAPI/VisibilityAPI.js +24 -24
- package/src/AWizard/AWizardToolbar/compositionAPI/DisabledAPI.js +31 -31
- package/src/AWizard/AWizardToolbar/compositionAPI/EventsAPI.js +14 -14
- package/src/AWizard/AWizardToolbar/compositionAPI/FirstLastAPI.js +22 -22
- package/src/AWizard/AWizardToolbar/compositionAPI/HideAPI.js +33 -33
- package/src/AWizard/compositionAPI/EventsAPI.js +74 -74
- package/src/AWizard/compositionAPI/FocusAPI.js +32 -32
- package/src/AWizard/compositionAPI/LocalAPI.js +60 -60
- package/src/AWizard/compositionAPI/MobileAPI.js +22 -22
- package/src/AWizard/compositionAPI/StepsAPI.js +23 -23
- package/src/AWizard/compositionAPI/TeleportAPI.js +24 -24
- package/src/AWizard/i18n/AWizardI18n.js +19 -19
- package/src/PVP/new.txt +39 -39
- package/src/compositionAPI/ADropdownGlobalAPI.js +20 -20
- package/src/compositionAPI/AEventOutsideAPI.js +46 -46
- package/src/compositionAPI/AMobileAPI.js +24 -24
- package/src/compositionAPI/APageTabTitleAPI.js +73 -73
- package/src/const/AFocusableElements.js +13 -13
- package/src/const/AKeyChildren.js +1 -1
- package/src/const/AKeyId.js +1 -1
- package/src/const/AKeyLabel.js +1 -1
- package/src/const/AKeyParent.js +1 -1
- package/src/const/colors.js +10 -10
- package/src/const/frameworks.js +6 -6
- package/src/const/placements.js +17 -17
- package/src/directives/AOnHooks.js +0 -0
- package/src/filters/filterCurrency.js +16 -16
- package/src/filters/filterDefaultForEmpty.js +20 -20
- package/src/filters/filterEmail.js +27 -27
- package/src/filters/filterKeyValue.js +17 -17
- package/src/filters/filterLimitTo.js +45 -45
- package/src/filters/filterLink.js +31 -31
- package/src/filters/filterPropertyByValue.js +18 -18
- package/src/filters/i18n/Filters18n.js +19 -19
- package/src/filters/i18n/ar.json +11 -11
- package/src/filters/i18n/de.json +11 -11
- package/src/filters/i18n/en.json +11 -11
- package/src/filters/i18n/es.json +11 -11
- package/src/filters/i18n/fr.json +11 -11
- package/src/filters/i18n/hr.json +10 -10
- package/src/filters/i18n/it.json +11 -11
- package/src/filters/i18n/ru.json +10 -10
- package/src/plugins/AFiltersPlugin.js +99 -99
- package/src/plugins/AGroupButtonDropdownPlugin.js +26 -26
- package/src/plugins/AHttpPlugin.js +23 -23
- package/src/plugins/AI18nPlugin.js +32 -32
- package/src/plugins/APageTabTitlePlugin.js +9 -9
- package/src/plugins/ATablePlugin.js +28 -28
- package/src/plugins/alohaPlugin.js +5 -5
- package/src/svg/ACircle/ACircle.js +47 -47
- package/src/svg/AEllipse/AEllipse.js +53 -53
- package/src/svg/ALine/ALine.js +49 -49
- package/src/svg/APath/APath.js +44 -44
- package/src/svg/APolygon/APolygon.js +55 -55
- package/src/svg/APolyline/APolyline.js +48 -48
- package/src/svg/ARect/ARect.js +63 -63
- package/src/ui/ACheckbox/ACheckbox.js +0 -0
- package/src/ui/ACheckbox/ACheckboxItem/ACheckboxItem.js +0 -0
- package/src/ui/ACheckbox/ACheckboxItem/compositionAPI/ButtonGroupAPI.js +21 -21
- package/src/ui/ACheckbox/ACheckboxItem/compositionAPI/CheckedAPI.js +18 -18
- package/src/ui/ACheckbox/ACheckboxItem/compositionAPI/EventsAPI.js +55 -55
- package/src/ui/ACheckbox/compositionAPI/ChangeAPI.js +25 -25
- package/src/ui/ACheckbox/compositionAPI/TextAfterLabelAPI.js +16 -16
- package/src/ui/ACheckbox/i18n/ACheckboxI18n.js +19 -19
- package/src/ui/ACheckboxRadioGroups/ACheckboxRadioGroups.js +0 -0
- package/src/ui/ACheckboxRadioGroups/compostionAPI/ChangeModelAPI.js +9 -9
- package/src/ui/ACheckboxRadioGroups/compostionAPI/ComponentAPI.js +35 -35
- package/src/ui/ACheckboxRadioGroups/compostionAPI/DataAPI.js +33 -33
- package/src/ui/ADatepicker/compositionAPI/RefsAPI.js +19 -19
- package/src/ui/ADatepicker/locale/languages.js +174 -174
- package/src/ui/ADatepicker/utils/scroll-into-view.js +23 -23
- package/src/ui/ADatepicker/utils/transform.js +14 -14
- package/src/ui/ADatepickerAlt/locale/languages.js +174 -174
- package/src/ui/ADatepickerAlt/utils/scroll-into-view.js +23 -23
- package/src/ui/ADatepickerAlt/utils/transform.js +14 -14
- package/src/ui/ADatepickerRange/compositionAPI/IdAPI.js +20 -20
- package/src/ui/ADatepickerRange/compositionAPI/InputAttributesAPI.js +39 -39
- package/src/ui/ADatepickerRange/compositionAPI/ModelAPI.js +43 -43
- package/src/ui/ADatepickerRange/compositionAPI/ReadonlyAPI.js +35 -35
- package/src/ui/ADatepickerRange/i18n/ADatepickerRangeI18n.js +19 -19
- package/src/ui/ADatepickerRange/i18n/ar.json +4 -4
- package/src/ui/ADatepickerRange/i18n/de.json +4 -4
- package/src/ui/ADatepickerRange/i18n/en.json +4 -4
- package/src/ui/ADatepickerRange/i18n/es.json +4 -4
- package/src/ui/ADatepickerRange/i18n/fr.json +4 -4
- package/src/ui/ADatepickerRange/i18n/hr.json +4 -4
- package/src/ui/ADatepickerRange/i18n/it.json +4 -4
- package/src/ui/ADatepickerRange/i18n/ru.json +4 -4
- package/src/ui/ADatepickerRange/utils/Types.js +14 -14
- package/src/ui/AErrors/AErrors.js +0 -0
- package/src/ui/AErrors/AErrorsElement/AErrorsElement.js +0 -0
- package/src/ui/AErrors/compositionAPI/CloseAPI.js +9 -9
- package/src/ui/AErrors/compositionAPI/ErrorsAPI.js +20 -20
- package/src/ui/AErrors/compositionAPI/FocusAPI.js +26 -26
- package/src/ui/AErrorsText/AErrorsText.js +51 -51
- package/src/ui/AFieldset/AFieldset.js +0 -0
- package/src/ui/AFieldset/compositionAPI/ReadonlyAPI.js +33 -33
- package/src/ui/AFieldset/i18n/AFieldsetI18n.js +19 -19
- package/src/ui/AFieldset/i18n/de.json +4 -4
- package/src/ui/AFieldset/i18n/ru.json +4 -4
- package/src/ui/AForm/AForm.js +0 -0
- package/src/ui/AFormElement/AFormElement.js +145 -145
- package/src/ui/AFormHelpText/AFormHelpText.js +37 -37
- package/src/ui/AFormReadonly/AFormReadonly.js +188 -188
- package/src/ui/AFormReadonly/compositionAPI/AttributesAPI.js +72 -72
- package/src/ui/AGroup/AGroup.js +0 -0
- package/src/ui/AGroup/compositionAPI/SpecificTypeAPI.js +50 -50
- package/src/ui/AInput/AInput.js +0 -0
- package/src/ui/AInputCurrency/compositionAPI/UtilsAPI.js +52 -52
- package/src/ui/AInputFile/AInputFile.js +0 -0
- package/src/ui/AInputNumber/AInputNumber.js +0 -0
- package/src/ui/AInputNumber/compositionAPI/MinAPI.js +32 -32
- package/src/ui/AInputNumber/compositionAPI/NumberAttributesAPI.js +40 -40
- package/src/ui/AInputNumber/compositionAPI/WidthAPI.js +31 -31
- package/src/ui/AInputNumberRange/AInputNumberRange.js +0 -0
- package/src/ui/AInputNumberRange/compositionAPI/IdAPI.js +20 -20
- package/src/ui/AInputNumberRange/compositionAPI/InputAttributesAPI.js +39 -39
- package/src/ui/AInputNumberRange/compositionAPI/ReadonlyAPI.js +35 -35
- package/src/ui/AInputNumberRange/compositionAPI/TypeAPI.js +16 -16
- package/src/ui/AInputNumberRange/i18n/AInputNumberRangeI18n.js +19 -19
- package/src/ui/AInputNumberRange/i18n/de.json +3 -3
- package/src/ui/AInputNumberRange/utils/Types.js +15 -15
- package/src/ui/ALabel/ALabel.js +0 -0
- package/src/ui/ALabel/compositionAPI/PropsTypeAPI.js +66 -66
- package/src/ui/AOneCheckbox/AOneCheckbox.js +0 -0
- package/src/ui/AOneCheckbox/compositionAPI/LabelAPI.js +20 -20
- package/src/ui/AOneCheckbox/compositionAPI/ReadonlyAPI.js +26 -26
- package/src/ui/ARadio/ARadio.js +0 -0
- package/src/ui/ARadio/ARadioItem/ARadioItem.js +0 -0
- package/src/ui/ARadio/ARadioItem/compositionAPI/CheckedAPI.js +25 -25
- package/src/ui/ARadio/ARadioItem/compositionAPI/EventsAPI.js +43 -43
- package/src/ui/ARadio/compositionAPI/ChangeAPI.js +58 -58
- package/src/ui/ARadio/compositionAPI/ReadonlyAPI.js +36 -36
- package/src/ui/ARadio/i18n/ARadioI18n.js +19 -19
- package/src/ui/ARequired/ARequired.js +27 -27
- package/src/ui/ARequired/i18n/ARequiredI18n.js +19 -19
- package/src/ui/ARouterLinkConfig/ARouterLinkConfig.js +325 -325
- package/src/ui/ARouterLinkConfig/compositionAPI/DataFormAPI.js +100 -100
- package/src/ui/ASelect/ASelect.js +0 -0
- package/src/ui/ASelect/ASelectElement/ASelectElement.js +0 -0
- package/src/ui/ASelect/ASelectElement/compositionAPI/CheckedAPI.js +22 -22
- package/src/ui/ASelect/ASelectElement/compositionAPI/EventsAPI.js +39 -39
- package/src/ui/ASelect/ASelectLabelElement.js +0 -0
- package/src/ui/ASelect/ASelectValueCloseable.js +0 -0
- package/src/ui/ASelect/compositionAPI/DividerAPI.js +19 -19
- package/src/ui/ASelect/i18n/ASelectI18n.js +19 -19
- package/src/ui/ASwitch/ASwitch.js +0 -0
- package/src/ui/ASwitch/compositionAPI/CheckedAPI.js +22 -22
- package/src/ui/ASwitch/compositionAPI/ModelAPI.js +30 -30
- package/src/ui/ASwitch/compositionAPI/OnInputAPI.js +51 -51
- package/src/ui/ATemplate/ATemplate.js +74 -4
- package/src/ui/ATextarea/ATextarea.js +0 -0
- package/src/ui/ATextarea/compositionAPI/ResizeClass.js +23 -23
- package/src/ui/compositionApi/UIExcludeRenderAttributesAPI.js +25 -25
- package/src/ui/compositionApi/UiCheckboxRadioItemAPI.js +39 -39
- package/src/ui/compositionApi/UiDataSortAPI.js +26 -26
- package/src/ui/compositionApi/UiDataWatchEmitAPI.js +18 -18
- package/src/ui/compositionApi/UiDisabledElementAPI.js +2 -1
- package/src/ui/compositionApi/UiErrorsAPI.js +37 -37
- package/src/ui/compositionApi/UiInputAutofillAPI.js +41 -41
- package/src/ui/compositionApi/UiLoadingAPI.js +19 -19
- package/src/ui/compositionApi/UiTitleElementAPI.js +28 -28
- package/src/ui/compositionApi/UiVisibleElementWithSearchAPI.js +51 -51
- package/src/ui/const/AUiTypes.js +65 -65
- package/src/ui/utils/utils.js +3 -3
|
@@ -1,101 +1,101 @@
|
|
|
1
|
-
import {
|
|
2
|
-
computed,
|
|
3
|
-
toRef,
|
|
4
|
-
} from "vue";
|
|
5
|
-
|
|
6
|
-
import AMobileAPI from "../../compositionAPI/AMobileAPI";
|
|
7
|
-
import ATranslationAPI from "./ATranslationAPI";
|
|
8
|
-
import UtilsAPI from "./UtilsAPI";
|
|
9
|
-
|
|
10
|
-
import {
|
|
11
|
-
forEach,
|
|
12
|
-
isArray,
|
|
13
|
-
isNil,
|
|
14
|
-
isPlainObject,
|
|
15
|
-
} from "lodash-es";
|
|
16
|
-
|
|
17
|
-
export default function TitleAPI(props) {
|
|
18
|
-
const alwaysTranslate = toRef(props, "alwaysTranslate");
|
|
19
|
-
const extra = toRef(props, "extra");
|
|
20
|
-
const title = toRef(props, "title");
|
|
21
|
-
|
|
22
|
-
const {
|
|
23
|
-
isPlaceholderTranslate,
|
|
24
|
-
getTranslatedText,
|
|
25
|
-
} = UtilsAPI();
|
|
26
|
-
|
|
27
|
-
const {
|
|
28
|
-
isMobileWidth,
|
|
29
|
-
} = AMobileAPI();
|
|
30
|
-
|
|
31
|
-
const {
|
|
32
|
-
translationChanges,
|
|
33
|
-
} = ATranslationAPI();
|
|
34
|
-
|
|
35
|
-
const titleForCurrentDevice = computed(() => {
|
|
36
|
-
if (isPlainObject(title.value)) {
|
|
37
|
-
if (isMobileWidth.value) {
|
|
38
|
-
return title.value.mobile;
|
|
39
|
-
}
|
|
40
|
-
return title.value.desktop;
|
|
41
|
-
}
|
|
42
|
-
return title.value;
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
const isTitleArray = computed(() => {
|
|
46
|
-
return isArray(title.value);
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
const hasTitle = computed(() => {
|
|
50
|
-
if (isTitleArray.value) {
|
|
51
|
-
return title.value.length > 0;
|
|
52
|
-
}
|
|
53
|
-
return !(isNil(titleForCurrentDevice.value) || titleForCurrentDevice.value === "");
|
|
54
|
-
});
|
|
55
|
-
|
|
56
|
-
const titleLocalOptions = computed(() => {
|
|
57
|
-
if (!translationChanges.value) {
|
|
58
|
-
return undefined;
|
|
59
|
-
}
|
|
60
|
-
const TITLE_LOCAL_OPTIONS = {
|
|
61
|
-
title: undefined,
|
|
62
|
-
dataTranslateTitle: undefined,
|
|
63
|
-
};
|
|
64
|
-
if (!hasTitle.value) {
|
|
65
|
-
return TITLE_LOCAL_OPTIONS;
|
|
66
|
-
}
|
|
67
|
-
const TITLE_LIST = isTitleArray.value ?
|
|
68
|
-
title.value :
|
|
69
|
-
[titleForCurrentDevice.value];
|
|
70
|
-
let titleCombined = "";
|
|
71
|
-
let dataTranslateTitle = "";
|
|
72
|
-
forEach(TITLE_LIST, titleEl => {
|
|
73
|
-
if (!titleEl && titleEl !== 0) {
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
if (titleCombined) {
|
|
77
|
-
titleCombined += " ";
|
|
78
|
-
dataTranslateTitle += " ";
|
|
79
|
-
}
|
|
80
|
-
if (isPlaceholderTranslate(titleEl)) {
|
|
81
|
-
titleCombined += getTranslatedText({
|
|
82
|
-
placeholder: titleEl,
|
|
83
|
-
extra: extra.value,
|
|
84
|
-
alwaysTranslate: alwaysTranslate.value,
|
|
85
|
-
});
|
|
86
|
-
dataTranslateTitle += titleEl;
|
|
87
|
-
} else {
|
|
88
|
-
titleCombined += titleEl;
|
|
89
|
-
}
|
|
90
|
-
});
|
|
91
|
-
|
|
92
|
-
TITLE_LOCAL_OPTIONS.title = titleCombined || undefined;
|
|
93
|
-
TITLE_LOCAL_OPTIONS.dataTranslateTitle = dataTranslateTitle || undefined;
|
|
94
|
-
|
|
95
|
-
return TITLE_LOCAL_OPTIONS;
|
|
96
|
-
});
|
|
97
|
-
|
|
98
|
-
return {
|
|
99
|
-
titleLocalOptions,
|
|
100
|
-
};
|
|
101
|
-
}
|
|
1
|
+
import {
|
|
2
|
+
computed,
|
|
3
|
+
toRef,
|
|
4
|
+
} from "vue";
|
|
5
|
+
|
|
6
|
+
import AMobileAPI from "../../compositionAPI/AMobileAPI";
|
|
7
|
+
import ATranslationAPI from "./ATranslationAPI";
|
|
8
|
+
import UtilsAPI from "./UtilsAPI";
|
|
9
|
+
|
|
10
|
+
import {
|
|
11
|
+
forEach,
|
|
12
|
+
isArray,
|
|
13
|
+
isNil,
|
|
14
|
+
isPlainObject,
|
|
15
|
+
} from "lodash-es";
|
|
16
|
+
|
|
17
|
+
export default function TitleAPI(props) {
|
|
18
|
+
const alwaysTranslate = toRef(props, "alwaysTranslate");
|
|
19
|
+
const extra = toRef(props, "extra");
|
|
20
|
+
const title = toRef(props, "title");
|
|
21
|
+
|
|
22
|
+
const {
|
|
23
|
+
isPlaceholderTranslate,
|
|
24
|
+
getTranslatedText,
|
|
25
|
+
} = UtilsAPI();
|
|
26
|
+
|
|
27
|
+
const {
|
|
28
|
+
isMobileWidth,
|
|
29
|
+
} = AMobileAPI();
|
|
30
|
+
|
|
31
|
+
const {
|
|
32
|
+
translationChanges,
|
|
33
|
+
} = ATranslationAPI();
|
|
34
|
+
|
|
35
|
+
const titleForCurrentDevice = computed(() => {
|
|
36
|
+
if (isPlainObject(title.value)) {
|
|
37
|
+
if (isMobileWidth.value) {
|
|
38
|
+
return title.value.mobile;
|
|
39
|
+
}
|
|
40
|
+
return title.value.desktop;
|
|
41
|
+
}
|
|
42
|
+
return title.value;
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
const isTitleArray = computed(() => {
|
|
46
|
+
return isArray(title.value);
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
const hasTitle = computed(() => {
|
|
50
|
+
if (isTitleArray.value) {
|
|
51
|
+
return title.value.length > 0;
|
|
52
|
+
}
|
|
53
|
+
return !(isNil(titleForCurrentDevice.value) || titleForCurrentDevice.value === "");
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
const titleLocalOptions = computed(() => {
|
|
57
|
+
if (!translationChanges.value) {
|
|
58
|
+
return undefined;
|
|
59
|
+
}
|
|
60
|
+
const TITLE_LOCAL_OPTIONS = {
|
|
61
|
+
title: undefined,
|
|
62
|
+
dataTranslateTitle: undefined,
|
|
63
|
+
};
|
|
64
|
+
if (!hasTitle.value) {
|
|
65
|
+
return TITLE_LOCAL_OPTIONS;
|
|
66
|
+
}
|
|
67
|
+
const TITLE_LIST = isTitleArray.value ?
|
|
68
|
+
title.value :
|
|
69
|
+
[titleForCurrentDevice.value];
|
|
70
|
+
let titleCombined = "";
|
|
71
|
+
let dataTranslateTitle = "";
|
|
72
|
+
forEach(TITLE_LIST, titleEl => {
|
|
73
|
+
if (!titleEl && titleEl !== 0) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
if (titleCombined) {
|
|
77
|
+
titleCombined += " ";
|
|
78
|
+
dataTranslateTitle += " ";
|
|
79
|
+
}
|
|
80
|
+
if (isPlaceholderTranslate(titleEl)) {
|
|
81
|
+
titleCombined += getTranslatedText({
|
|
82
|
+
placeholder: titleEl,
|
|
83
|
+
extra: extra.value,
|
|
84
|
+
alwaysTranslate: alwaysTranslate.value,
|
|
85
|
+
});
|
|
86
|
+
dataTranslateTitle += titleEl;
|
|
87
|
+
} else {
|
|
88
|
+
titleCombined += titleEl;
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
|
|
92
|
+
TITLE_LOCAL_OPTIONS.title = titleCombined || undefined;
|
|
93
|
+
TITLE_LOCAL_OPTIONS.dataTranslateTitle = dataTranslateTitle || undefined;
|
|
94
|
+
|
|
95
|
+
return TITLE_LOCAL_OPTIONS;
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
return {
|
|
99
|
+
titleLocalOptions,
|
|
100
|
+
};
|
|
101
|
+
}
|
|
@@ -1,144 +1,144 @@
|
|
|
1
|
-
import {
|
|
2
|
-
isTranslate,
|
|
3
|
-
timeTranslationLastChanged,
|
|
4
|
-
translation,
|
|
5
|
-
} from "./ATranslationAPI";
|
|
6
|
-
|
|
7
|
-
import {
|
|
8
|
-
translateConfig,
|
|
9
|
-
} from "../../plugins/AI18nPlugin";
|
|
10
|
-
import {
|
|
11
|
-
get,
|
|
12
|
-
isFunction,
|
|
13
|
-
isNil,
|
|
14
|
-
isPlainObject,
|
|
15
|
-
isString,
|
|
16
|
-
} from "lodash-es";
|
|
17
|
-
|
|
18
|
-
export default function UtilsAPI() {
|
|
19
|
-
return {
|
|
20
|
-
getTranslatedText,
|
|
21
|
-
getTranslationAttributes,
|
|
22
|
-
isPlaceholderTranslate,
|
|
23
|
-
replaceText,
|
|
24
|
-
spliceString,
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Checks if a given text is a placeholder translation.
|
|
30
|
-
*
|
|
31
|
-
* @param {string} text - The text to check.
|
|
32
|
-
* @return {boolean} - True if the text is a placeholder translation, false otherwise.
|
|
33
|
-
*/
|
|
34
|
-
export function isPlaceholderTranslate(text = "") {
|
|
35
|
-
return !(!isString(text) ||
|
|
36
|
-
text[0] !== "_" ||
|
|
37
|
-
text[text.length - 1] !== "_");
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Retrieves the translated text for a given placeholder.
|
|
42
|
-
*
|
|
43
|
-
* @param {object} options - The options object.
|
|
44
|
-
* @param {string} options.placeholder - The placeholder text to be translated.
|
|
45
|
-
* @param {object} [options.translationObj=translation] - The translation object to use.
|
|
46
|
-
* @param {object} [options.extra] - Optional additional data to be used in text replacement.
|
|
47
|
-
* @param {boolean} [options.alwaysTranslate=false] - If true, forces translation regardless of the isTranslate.value flag.
|
|
48
|
-
*
|
|
49
|
-
* @return {string} The translated text for the given placeholder.
|
|
50
|
-
*/
|
|
51
|
-
export function getTranslatedText({ placeholder, translationObj = translation, extra, alwaysTranslate = false }) {
|
|
52
|
-
if (!translationObj || !timeTranslationLastChanged.value) {
|
|
53
|
-
return placeholder;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
let textFromTranslation;
|
|
57
|
-
if (!alwaysTranslate && !isTranslate.value) {
|
|
58
|
-
textFromTranslation = placeholder;
|
|
59
|
-
} else {
|
|
60
|
-
textFromTranslation = isNil(translationObj[placeholder]) ? placeholder : translationObj[placeholder];
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
if (extra) {
|
|
64
|
-
return replaceText({
|
|
65
|
-
text: textFromTranslation,
|
|
66
|
-
object: extra,
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
return textFromTranslation;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
/**
|
|
74
|
-
* Replaces placeholders in a text with corresponding values from an object.
|
|
75
|
-
* If a translation configuration is available, it uses the `replaceText` method
|
|
76
|
-
* from the configuration to perform the replacement.
|
|
77
|
-
*
|
|
78
|
-
* @param {object} options - The options for replacement.
|
|
79
|
-
* @param {string} options.text - The text containing placeholders.
|
|
80
|
-
* @param {object} options.object - The object containing values for placeholders.
|
|
81
|
-
* @return {string} - The text with replaced placeholders.
|
|
82
|
-
*/
|
|
83
|
-
function replaceText({ text = "", object }) {
|
|
84
|
-
if (isFunction(translateConfig.value?.replaceText)) {
|
|
85
|
-
return translateConfig.value?.replaceText({ text, object });
|
|
86
|
-
}
|
|
87
|
-
if (!isPlainObject(object)) {
|
|
88
|
-
return text;
|
|
89
|
-
}
|
|
90
|
-
let textClone = text;
|
|
91
|
-
let searchIndexStart = 0;
|
|
92
|
-
while (true) {
|
|
93
|
-
const firstIndex = textClone.indexOf("{{", searchIndexStart);
|
|
94
|
-
const lastIndex = textClone.indexOf("}}", searchIndexStart);
|
|
95
|
-
|
|
96
|
-
if (firstIndex === -1 || lastIndex === -1) {
|
|
97
|
-
break;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
const PATH = textClone.slice(firstIndex + 2, lastIndex).trim();
|
|
101
|
-
const valueFromObject = get(object, PATH);
|
|
102
|
-
|
|
103
|
-
textClone = spliceString({
|
|
104
|
-
text: textClone,
|
|
105
|
-
replaceText: valueFromObject,
|
|
106
|
-
firstIndex,
|
|
107
|
-
lastindex: lastIndex + 2,
|
|
108
|
-
});
|
|
109
|
-
searchIndexStart = firstIndex + `${ valueFromObject }`.length;
|
|
110
|
-
}
|
|
111
|
-
return textClone;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
/**
|
|
115
|
-
* Splices a given text by replacing a substring with a new string.
|
|
116
|
-
*
|
|
117
|
-
* @param {Object} params - The parameters for the splicing
|
|
118
|
-
* @param {string} params.text - The original text to be spliced
|
|
119
|
-
* @param {string} params.replaceText - The new string to replace the substring
|
|
120
|
-
* @param {number} params.firstIndex - The index where the replacement starts
|
|
121
|
-
* @param {number} params.lastIndex - The index where the replacement ends
|
|
122
|
-
*
|
|
123
|
-
* @return {string} The spliced text with the replaced substring
|
|
124
|
-
*/
|
|
125
|
-
function spliceString({
|
|
126
|
-
text = "",
|
|
127
|
-
replaceText = "",
|
|
128
|
-
firstIndex,
|
|
129
|
-
lastindex,
|
|
130
|
-
}) {
|
|
131
|
-
return `${ text.slice(0, firstIndex) }${ replaceText }${ text.slice(lastindex, text.length) }`;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
export function getTranslationAttributes({ attr = "", value = "", translation = "", isTranslate = true }) {
|
|
135
|
-
const ATTRIBUTES = {};
|
|
136
|
-
if (!isNil(translation)) {
|
|
137
|
-
ATTRIBUTES[attr] = translation;
|
|
138
|
-
}
|
|
139
|
-
if (isTranslate) {
|
|
140
|
-
ATTRIBUTES[`data-translate-${ attr }`] = value;
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
return ATTRIBUTES;
|
|
144
|
-
}
|
|
1
|
+
import {
|
|
2
|
+
isTranslate,
|
|
3
|
+
timeTranslationLastChanged,
|
|
4
|
+
translation,
|
|
5
|
+
} from "./ATranslationAPI";
|
|
6
|
+
|
|
7
|
+
import {
|
|
8
|
+
translateConfig,
|
|
9
|
+
} from "../../plugins/AI18nPlugin";
|
|
10
|
+
import {
|
|
11
|
+
get,
|
|
12
|
+
isFunction,
|
|
13
|
+
isNil,
|
|
14
|
+
isPlainObject,
|
|
15
|
+
isString,
|
|
16
|
+
} from "lodash-es";
|
|
17
|
+
|
|
18
|
+
export default function UtilsAPI() {
|
|
19
|
+
return {
|
|
20
|
+
getTranslatedText,
|
|
21
|
+
getTranslationAttributes,
|
|
22
|
+
isPlaceholderTranslate,
|
|
23
|
+
replaceText,
|
|
24
|
+
spliceString,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Checks if a given text is a placeholder translation.
|
|
30
|
+
*
|
|
31
|
+
* @param {string} text - The text to check.
|
|
32
|
+
* @return {boolean} - True if the text is a placeholder translation, false otherwise.
|
|
33
|
+
*/
|
|
34
|
+
export function isPlaceholderTranslate(text = "") {
|
|
35
|
+
return !(!isString(text) ||
|
|
36
|
+
text[0] !== "_" ||
|
|
37
|
+
text[text.length - 1] !== "_");
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Retrieves the translated text for a given placeholder.
|
|
42
|
+
*
|
|
43
|
+
* @param {object} options - The options object.
|
|
44
|
+
* @param {string} options.placeholder - The placeholder text to be translated.
|
|
45
|
+
* @param {object} [options.translationObj=translation] - The translation object to use.
|
|
46
|
+
* @param {object} [options.extra] - Optional additional data to be used in text replacement.
|
|
47
|
+
* @param {boolean} [options.alwaysTranslate=false] - If true, forces translation regardless of the isTranslate.value flag.
|
|
48
|
+
*
|
|
49
|
+
* @return {string} The translated text for the given placeholder.
|
|
50
|
+
*/
|
|
51
|
+
export function getTranslatedText({ placeholder, translationObj = translation, extra, alwaysTranslate = false }) {
|
|
52
|
+
if (!translationObj || !timeTranslationLastChanged.value) {
|
|
53
|
+
return placeholder;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
let textFromTranslation;
|
|
57
|
+
if (!alwaysTranslate && !isTranslate.value) {
|
|
58
|
+
textFromTranslation = placeholder;
|
|
59
|
+
} else {
|
|
60
|
+
textFromTranslation = isNil(translationObj[placeholder]) ? placeholder : translationObj[placeholder];
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (extra) {
|
|
64
|
+
return replaceText({
|
|
65
|
+
text: textFromTranslation,
|
|
66
|
+
object: extra,
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
return textFromTranslation;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Replaces placeholders in a text with corresponding values from an object.
|
|
75
|
+
* If a translation configuration is available, it uses the `replaceText` method
|
|
76
|
+
* from the configuration to perform the replacement.
|
|
77
|
+
*
|
|
78
|
+
* @param {object} options - The options for replacement.
|
|
79
|
+
* @param {string} options.text - The text containing placeholders.
|
|
80
|
+
* @param {object} options.object - The object containing values for placeholders.
|
|
81
|
+
* @return {string} - The text with replaced placeholders.
|
|
82
|
+
*/
|
|
83
|
+
function replaceText({ text = "", object }) {
|
|
84
|
+
if (isFunction(translateConfig.value?.replaceText)) {
|
|
85
|
+
return translateConfig.value?.replaceText({ text, object });
|
|
86
|
+
}
|
|
87
|
+
if (!isPlainObject(object)) {
|
|
88
|
+
return text;
|
|
89
|
+
}
|
|
90
|
+
let textClone = text;
|
|
91
|
+
let searchIndexStart = 0;
|
|
92
|
+
while (true) {
|
|
93
|
+
const firstIndex = textClone.indexOf("{{", searchIndexStart);
|
|
94
|
+
const lastIndex = textClone.indexOf("}}", searchIndexStart);
|
|
95
|
+
|
|
96
|
+
if (firstIndex === -1 || lastIndex === -1) {
|
|
97
|
+
break;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
const PATH = textClone.slice(firstIndex + 2, lastIndex).trim();
|
|
101
|
+
const valueFromObject = get(object, PATH);
|
|
102
|
+
|
|
103
|
+
textClone = spliceString({
|
|
104
|
+
text: textClone,
|
|
105
|
+
replaceText: valueFromObject,
|
|
106
|
+
firstIndex,
|
|
107
|
+
lastindex: lastIndex + 2,
|
|
108
|
+
});
|
|
109
|
+
searchIndexStart = firstIndex + `${ valueFromObject }`.length;
|
|
110
|
+
}
|
|
111
|
+
return textClone;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* Splices a given text by replacing a substring with a new string.
|
|
116
|
+
*
|
|
117
|
+
* @param {Object} params - The parameters for the splicing
|
|
118
|
+
* @param {string} params.text - The original text to be spliced
|
|
119
|
+
* @param {string} params.replaceText - The new string to replace the substring
|
|
120
|
+
* @param {number} params.firstIndex - The index where the replacement starts
|
|
121
|
+
* @param {number} params.lastIndex - The index where the replacement ends
|
|
122
|
+
*
|
|
123
|
+
* @return {string} The spliced text with the replaced substring
|
|
124
|
+
*/
|
|
125
|
+
function spliceString({
|
|
126
|
+
text = "",
|
|
127
|
+
replaceText = "",
|
|
128
|
+
firstIndex,
|
|
129
|
+
lastindex,
|
|
130
|
+
}) {
|
|
131
|
+
return `${ text.slice(0, firstIndex) }${ replaceText }${ text.slice(lastindex, text.length) }`;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
export function getTranslationAttributes({ attr = "", value = "", translation = "", isTranslate = true }) {
|
|
135
|
+
const ATTRIBUTES = {};
|
|
136
|
+
if (!isNil(translation)) {
|
|
137
|
+
ATTRIBUTES[attr] = translation;
|
|
138
|
+
}
|
|
139
|
+
if (isTranslate) {
|
|
140
|
+
ATTRIBUTES[`data-translate-${ attr }`] = value;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
return ATTRIBUTES;
|
|
144
|
+
}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
ref,
|
|
3
|
-
} from "vue";
|
|
4
|
-
|
|
5
|
-
export default function ListenerAPI({
|
|
6
|
-
onScroll = () => {},
|
|
7
|
-
scrollContentRef = ref(undefined),
|
|
8
|
-
}) {
|
|
9
|
-
const addScrollListener = () => {
|
|
10
|
-
scrollContentRef.value.addEventListener("scroll", onScroll);
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
const destroyScrollListener = () => {
|
|
14
|
-
scrollContentRef.value.removeEventListener("scroll", onScroll);
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
return {
|
|
18
|
-
addScrollListener,
|
|
19
|
-
destroyScrollListener,
|
|
20
|
-
};
|
|
21
|
-
}
|
|
1
|
+
import {
|
|
2
|
+
ref,
|
|
3
|
+
} from "vue";
|
|
4
|
+
|
|
5
|
+
export default function ListenerAPI({
|
|
6
|
+
onScroll = () => {},
|
|
7
|
+
scrollContentRef = ref(undefined),
|
|
8
|
+
}) {
|
|
9
|
+
const addScrollListener = () => {
|
|
10
|
+
scrollContentRef.value.addEventListener("scroll", onScroll);
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const destroyScrollListener = () => {
|
|
14
|
+
scrollContentRef.value.removeEventListener("scroll", onScroll);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
return {
|
|
18
|
+
addScrollListener,
|
|
19
|
+
destroyScrollListener,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
import {
|
|
2
|
-
ref,
|
|
3
|
-
toRef,
|
|
4
|
-
} from "vue";
|
|
5
|
-
|
|
6
|
-
export default function ScrollAPI(props) {
|
|
7
|
-
const scrollDistance = toRef(props, "scrollDistance");
|
|
8
|
-
|
|
9
|
-
const canScrollDown = ref(false);
|
|
10
|
-
const canScrollUp = ref(false);
|
|
11
|
-
const containerRef = ref(undefined);
|
|
12
|
-
const hasScroll = ref(false);
|
|
13
|
-
const scrollContentRef = ref(undefined);
|
|
14
|
-
const scrollContentChildRef = ref(undefined);
|
|
15
|
-
|
|
16
|
-
const onScroll = () => {
|
|
17
|
-
const scrollContent = scrollContentRef.value;
|
|
18
|
-
canScrollUp.value = scrollContent.scrollTop > 0;
|
|
19
|
-
canScrollDown.value = scrollContent.scrollTop < (scrollContent.scrollHeight - scrollContent.clientHeight);
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
const checkScroll = () => {
|
|
23
|
-
hasScroll.value = scrollContentRef.value.scrollHeight > scrollContentRef.value.clientHeight;
|
|
24
|
-
if (!hasScroll.value) {
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
onScroll();
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
const scrollUp = () => {
|
|
31
|
-
scrollContentRef.value.scrollTop -= scrollDistance.value;
|
|
32
|
-
checkScroll();
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
const scrollDown = () => {
|
|
36
|
-
scrollContentRef.value.scrollTop += scrollDistance.value;
|
|
37
|
-
checkScroll();
|
|
38
|
-
};
|
|
39
|
-
|
|
40
|
-
return {
|
|
41
|
-
canScrollDown,
|
|
42
|
-
canScrollUp,
|
|
43
|
-
checkScroll,
|
|
44
|
-
containerRef,
|
|
45
|
-
hasScroll,
|
|
46
|
-
onScroll,
|
|
47
|
-
scrollContentChildRef,
|
|
48
|
-
scrollContentRef,
|
|
49
|
-
scrollDown,
|
|
50
|
-
scrollUp,
|
|
51
|
-
};
|
|
52
|
-
}
|
|
1
|
+
import {
|
|
2
|
+
ref,
|
|
3
|
+
toRef,
|
|
4
|
+
} from "vue";
|
|
5
|
+
|
|
6
|
+
export default function ScrollAPI(props) {
|
|
7
|
+
const scrollDistance = toRef(props, "scrollDistance");
|
|
8
|
+
|
|
9
|
+
const canScrollDown = ref(false);
|
|
10
|
+
const canScrollUp = ref(false);
|
|
11
|
+
const containerRef = ref(undefined);
|
|
12
|
+
const hasScroll = ref(false);
|
|
13
|
+
const scrollContentRef = ref(undefined);
|
|
14
|
+
const scrollContentChildRef = ref(undefined);
|
|
15
|
+
|
|
16
|
+
const onScroll = () => {
|
|
17
|
+
const scrollContent = scrollContentRef.value;
|
|
18
|
+
canScrollUp.value = scrollContent.scrollTop > 0;
|
|
19
|
+
canScrollDown.value = scrollContent.scrollTop < (scrollContent.scrollHeight - scrollContent.clientHeight);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
const checkScroll = () => {
|
|
23
|
+
hasScroll.value = scrollContentRef.value.scrollHeight > scrollContentRef.value.clientHeight;
|
|
24
|
+
if (!hasScroll.value) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
onScroll();
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
const scrollUp = () => {
|
|
31
|
+
scrollContentRef.value.scrollTop -= scrollDistance.value;
|
|
32
|
+
checkScroll();
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
const scrollDown = () => {
|
|
36
|
+
scrollContentRef.value.scrollTop += scrollDistance.value;
|
|
37
|
+
checkScroll();
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
return {
|
|
41
|
+
canScrollDown,
|
|
42
|
+
canScrollUp,
|
|
43
|
+
checkScroll,
|
|
44
|
+
containerRef,
|
|
45
|
+
hasScroll,
|
|
46
|
+
onScroll,
|
|
47
|
+
scrollContentChildRef,
|
|
48
|
+
scrollContentRef,
|
|
49
|
+
scrollDown,
|
|
50
|
+
scrollUp,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import ar from "./ar.json";
|
|
2
|
-
import de from "./de.json";
|
|
3
|
-
import en from "./en.json";
|
|
4
|
-
import es from "./es.json";
|
|
5
|
-
import fr from "./fr.json";
|
|
6
|
-
import hr from "./hr.json";
|
|
7
|
-
import it from "./it.json";
|
|
8
|
-
import ru from "./ru.json";
|
|
9
|
-
|
|
10
|
-
export default {
|
|
11
|
-
ar,
|
|
12
|
-
de,
|
|
13
|
-
en,
|
|
14
|
-
es,
|
|
15
|
-
fr,
|
|
16
|
-
hr,
|
|
17
|
-
it,
|
|
18
|
-
ru,
|
|
19
|
-
};
|
|
1
|
+
import ar from "./ar.json";
|
|
2
|
+
import de from "./de.json";
|
|
3
|
+
import en from "./en.json";
|
|
4
|
+
import es from "./es.json";
|
|
5
|
+
import fr from "./fr.json";
|
|
6
|
+
import hr from "./hr.json";
|
|
7
|
+
import it from "./it.json";
|
|
8
|
+
import ru from "./ru.json";
|
|
9
|
+
|
|
10
|
+
export default {
|
|
11
|
+
ar,
|
|
12
|
+
de,
|
|
13
|
+
en,
|
|
14
|
+
es,
|
|
15
|
+
fr,
|
|
16
|
+
hr,
|
|
17
|
+
it,
|
|
18
|
+
ru,
|
|
19
|
+
};
|