eco-vue-js 0.8.41 → 0.8.42
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/dist/components/ActionsBar/WActionsBar.vue.d.ts.map +1 -1
- package/dist/components/ActionsBar/WActionsBar.vue.js +8 -8
- package/dist/components/BottomSheet/WBottomSheet.vue.d.ts +4 -4
- package/dist/components/BottomSheet/WBottomSheet.vue.d.ts.map +1 -1
- package/dist/components/BottomSheet/WBottomSheet.vue.js +28 -39
- package/dist/components/Button/WButton.vue.d.ts +1 -1
- package/dist/components/Button/WButton.vue.d.ts.map +1 -1
- package/dist/components/Button/WButton.vue.js +7 -7
- package/dist/components/Button/WButtonAction.vue.d.ts +1 -1
- package/dist/components/Button/WButtonAction.vue.d.ts.map +1 -1
- package/dist/components/Button/WButtonAction.vue.js +3 -3
- package/dist/components/Button/WButtonCopy.vue.d.ts.map +1 -1
- package/dist/components/Button/WButtonCopy.vue.js +1 -1
- package/dist/components/Button/WButtonDropdown.vue.d.ts +1 -1
- package/dist/components/Button/WButtonDropdown.vue.d.ts.map +1 -1
- package/dist/components/Button/WButtonDropdown.vue.js +3 -3
- package/dist/components/Button/WButtonGroup.vue.d.ts.map +1 -1
- package/dist/components/Button/WButtonGroup.vue.js +2 -2
- package/dist/components/Button/WButtonMore.vue.d.ts.map +1 -1
- package/dist/components/Button/WButtonMore.vue.js +4 -4
- package/dist/components/Button/WButtonMoreItem.vue.d.ts.map +1 -1
- package/dist/components/Button/WButtonMoreItem.vue.js +1 -1
- package/dist/components/Button/WButtonSelection.vue.d.ts.map +1 -1
- package/dist/components/Button/WButtonSelection.vue.js +8 -8
- package/dist/components/Button/WButtonSelectionAction.vue.d.ts.map +1 -1
- package/dist/components/Button/WButtonSelectionAction.vue.js +3 -3
- package/dist/components/Button/types.d.ts +1 -1
- package/dist/components/Button/types.d.ts.map +1 -1
- package/dist/components/Checkbox/WCheckbox.vue.d.ts +3 -1
- package/dist/components/Checkbox/WCheckbox.vue.d.ts.map +1 -1
- package/dist/components/Checkbox/WCheckbox.vue.js +11 -12
- package/dist/components/Chip/WChip.vue.d.ts.map +1 -1
- package/dist/components/Chip/WChip.vue.js +2 -2
- package/dist/components/ClickOutside/WClickOutside.vue.d.ts +3 -1
- package/dist/components/ClickOutside/WClickOutside.vue.d.ts.map +1 -1
- package/dist/components/ClickOutside/WClickOutside.vue.js +5 -7
- package/dist/components/Counter/WCounter.vue.d.ts.map +1 -1
- package/dist/components/Counter/WCounter.vue.js +3 -3
- package/dist/components/DatePicker/WDatePicker.vue.d.ts.map +1 -1
- package/dist/components/DatePicker/WDatePicker.vue.js +2 -2
- package/dist/components/DatePicker/WDatePickerSingle.vue.d.ts.map +1 -1
- package/dist/components/DatePicker/WDatePickerSingle.vue.js +1 -1
- package/dist/components/DatePicker/components/CalendarDay.vue.d.ts.map +1 -1
- package/dist/components/DatePicker/components/CalendarDay.vue.js +6 -6
- package/dist/components/DatePicker/components/CalendarMonth.vue.d.ts +1 -1
- package/dist/components/DatePicker/components/CalendarMonth.vue.d.ts.map +1 -1
- package/dist/components/DatePicker/components/CalendarMonth.vue.js +3 -3
- package/dist/components/DatePicker/components/CalendarToggle.vue.d.ts.map +1 -1
- package/dist/components/DatePicker/components/CalendarToggle.vue.js +6 -6
- package/dist/components/DatePicker/components/CalendarValue.vue.d.ts.map +1 -1
- package/dist/components/DatePicker/components/CalendarValue.vue.js +1 -1
- package/dist/components/DatePicker/components/CalendarWeek.vue.d.ts.map +1 -1
- package/dist/components/DatePicker/models/types.d.ts.map +1 -1
- package/dist/components/Dropdown/WDropdown.vue.d.ts +3 -1
- package/dist/components/Dropdown/WDropdown.vue.d.ts.map +1 -1
- package/dist/components/Dropdown/WDropdown.vue.js +6 -7
- package/dist/components/DropdownMenu/WDropdownMenu.vue.d.ts +4 -0
- package/dist/components/DropdownMenu/WDropdownMenu.vue.d.ts.map +1 -1
- package/dist/components/Expansion/WExpansion.vue.d.ts.map +1 -1
- package/dist/components/Expansion/WExpansion.vue.js +1 -1
- package/dist/components/Expansion/WExpansionItem.vue.d.ts.map +1 -1
- package/dist/components/Expansion/WExpansionItem.vue.js +5 -5
- package/dist/components/FieldWrapper/WFieldWrapper.vue.d.ts.map +1 -1
- package/dist/components/FieldWrapper/WFieldWrapper.vue.js +10 -10
- package/dist/components/FieldWrapper/types.d.ts.map +1 -1
- package/dist/components/FilePicker/WFilePicker.vue.d.ts +4 -1
- package/dist/components/FilePicker/WFilePicker.vue.d.ts.map +1 -1
- package/dist/components/FilePicker/WFilePicker.vue.js +24 -26
- package/dist/components/FilePicker/components/FilePickerItem.vue.d.ts.map +1 -1
- package/dist/components/FilePicker/components/FilePickerItem.vue.js +3 -3
- package/dist/components/FilePicker/components/FilePickerSvg.vue.d.ts +3 -1
- package/dist/components/FilePicker/components/FilePickerSvg.vue.d.ts.map +1 -1
- package/dist/components/FilePicker/components/FilePickerSvg.vue.js +4 -5
- package/dist/components/FilterWrapper/WFilterWrapper.vue.d.ts.map +1 -1
- package/dist/components/FilterWrapper/WFilterWrapper.vue.js +4 -4
- package/dist/components/Form/WForm.vue.d.ts.map +1 -1
- package/dist/components/Form/WFormValidator.vue.d.ts +1 -1
- package/dist/components/Form/WFormValidator.vue.d.ts.map +1 -1
- package/dist/components/Form/WFormValidator.vue.js +7 -7
- package/dist/components/Form/use/useFormErrorMessageMap.d.ts.map +1 -1
- package/dist/components/Form/use/useFormHasChangesMap.d.ts.map +1 -1
- package/dist/components/Form/use/useFormInitModelMap.d.ts.map +1 -1
- package/dist/components/Form/use/useFormInvalidateMap.d.ts.map +1 -1
- package/dist/components/Form/use/useFormTitleMap.d.ts.map +1 -1
- package/dist/components/Form/use/useFormValidateMap.d.ts.map +1 -1
- package/dist/components/FormAsync/WFormAsyncButtonGroup.vue.d.ts.map +1 -1
- package/dist/components/FormAsync/WFormAsyncButtonGroup.vue.js +3 -3
- package/dist/components/FormAsync/WFormAsyncInput.vue.d.ts.map +1 -1
- package/dist/components/FormAsync/WFormAsyncInput.vue.js +2 -2
- package/dist/components/FormAsync/WFormAsyncSelect.vue.d.ts.map +1 -1
- package/dist/components/FormAsync/WFormAsyncSelect.vue.js +2 -2
- package/dist/components/FormAsync/WFormAsyncSelectInfiniteSingle.vue.d.ts.map +1 -1
- package/dist/components/FormAsync/WFormAsyncSelectInfiniteSingle.vue.js +2 -2
- package/dist/components/FormAsync/WFormAsyncSelectSingle.vue.d.ts.map +1 -1
- package/dist/components/FormAsync/WFormAsyncSelectSingle.vue.js +2 -2
- package/dist/components/FormAsync/WFormAsyncSelectStringified.vue.d.ts.map +1 -1
- package/dist/components/FormAsync/WFormAsyncSelectStringified.vue.js +2 -2
- package/dist/components/FormAsync/WFormAsyncToggle.vue.d.ts.map +1 -1
- package/dist/components/FormAsync/WFormAsyncToggle.vue.js +1 -1
- package/dist/components/FormAsync/types.d.ts +2 -2
- package/dist/components/FormAsync/types.d.ts.map +1 -1
- package/dist/components/HeaderBar/WHeaderBar.vue.d.ts.map +1 -1
- package/dist/components/HeaderBar/WHeaderBar.vue.js +14 -16
- package/dist/components/ImageViewer/WImageViewer.vue.d.ts.map +1 -1
- package/dist/components/ImageViewer/WImageViewer.vue.js +6 -6
- package/dist/components/ImageViewer/components/ImageModal.vue.d.ts.map +1 -1
- package/dist/components/ImageViewer/components/ImageModal.vue2.js +3 -3
- package/dist/components/InfiniteList/WInfiniteList.vue.d.ts +2 -2
- package/dist/components/InfiniteList/WInfiniteList.vue.d.ts.map +1 -1
- package/dist/components/InfiniteList/WInfiniteList.vue.js +9 -10
- package/dist/components/InfiniteList/WInfiniteListWrapper.vue.d.ts.map +1 -1
- package/dist/components/InfiniteList/WInfiniteListWrapper.vue.js +2 -1
- package/dist/components/InfiniteList/components/EmptyComponent.vue.d.ts.map +1 -1
- package/dist/components/InfiniteList/components/InfiniteListButton.vue.d.ts.map +1 -1
- package/dist/components/InfiniteList/components/InfiniteListButton.vue.js +2 -2
- package/dist/components/InfiniteList/components/InfiniteListPage.vue.d.ts.map +1 -1
- package/dist/components/InfiniteList/components/InfiniteListPage.vue.js +15 -16
- package/dist/components/InfiniteList/components/InfiniteListPageSelectItem.vue.d.ts.map +1 -1
- package/dist/components/InfiniteList/components/InfiniteListPageSelection.vue.d.ts.map +1 -1
- package/dist/components/InfiniteList/components/InfiniteListPageTitle.vue.d.ts.map +1 -1
- package/dist/components/InfiniteList/components/InfiniteListPageTitle.vue.js +1 -1
- package/dist/components/InfiniteList/components/InfiniteListPages.vue.d.ts.map +1 -1
- package/dist/components/InfiniteList/components/InfiniteListPages.vue.js +17 -18
- package/dist/components/InfiniteList/components/InfiniteListScroll.vue.d.ts.map +1 -1
- package/dist/components/InfiniteList/models/utils.d.ts.map +1 -1
- package/dist/components/InfiniteList/use/useInfiniteListHeader.d.ts.map +1 -1
- package/dist/components/InfiniteList/use/useRefetchNextPages.d.ts.map +1 -1
- package/dist/components/InfiniteList/use/useSelected.d.ts.map +1 -1
- package/dist/components/InfoCard/WInfoCard.vue.d.ts.map +1 -1
- package/dist/components/InfoCard/WInfoCard.vue.js +3 -3
- package/dist/components/InfoCard/WInfoCardNegative.vue.d.ts.map +1 -1
- package/dist/components/InfoCard/WInfoCardNegative.vue.js +5 -5
- package/dist/components/Input/WInput.vue.d.ts.map +1 -1
- package/dist/components/Input/WInput.vue.js +15 -16
- package/dist/components/Input/WInputAsync.vue.d.ts.map +1 -1
- package/dist/components/Input/WInputAsync.vue.js +12 -15
- package/dist/components/Input/WInputDate.vue.d.ts +9 -2
- package/dist/components/Input/WInputDate.vue.d.ts.map +1 -1
- package/dist/components/Input/WInputDate.vue.js +6 -9
- package/dist/components/Input/WInputOptions.vue.d.ts.map +1 -1
- package/dist/components/Input/WInputOptions.vue.js +9 -12
- package/dist/components/Input/WInputSuggest.vue.d.ts.map +1 -1
- package/dist/components/Input/WInputSuggest.vue.js +16 -23
- package/dist/components/Input/components/InputActions.vue.d.ts.map +1 -1
- package/dist/components/Input/components/InputActions.vue.js +3 -3
- package/dist/components/Input/components/InputActionsButton.vue.d.ts.map +1 -1
- package/dist/components/Input/components/InputActionsButton.vue.js +2 -2
- package/dist/components/Input/types.d.ts +1 -1
- package/dist/components/Input/types.d.ts.map +1 -1
- package/dist/components/Link/WLink.vue.d.ts +1 -1
- package/dist/components/Link/WLink.vue.d.ts.map +1 -1
- package/dist/components/Link/WLink.vue.js +4 -4
- package/dist/components/Link/WLinkArrow.vue.d.ts.map +1 -1
- package/dist/components/Link/WLinkArrow.vue.js +1 -1
- package/dist/components/List/WList.vue.d.ts.map +1 -1
- package/dist/components/List/WList.vue.js +6 -5
- package/dist/components/List/WListCard.vue.d.ts.map +1 -1
- package/dist/components/List/WListCard.vue.js +19 -19
- package/dist/components/List/WListCardField.vue.d.ts.map +1 -1
- package/dist/components/List/WListHeader.vue.d.ts.map +1 -1
- package/dist/components/List/WListHeader.vue.js +8 -8
- package/dist/components/List/WListHeaderItem.vue.d.ts.map +1 -1
- package/dist/components/List/WListHeaderItem.vue.js +4 -4
- package/dist/components/List/components/HeaderFieldNested.vue.d.ts.map +1 -1
- package/dist/components/List/components/HeaderItemResizer.vue.d.ts.map +1 -1
- package/dist/components/List/components/HeaderItemResizer.vue.js +1 -1
- package/dist/components/List/components/HeaderSettings.vue.d.ts.map +1 -1
- package/dist/components/List/components/HeaderSettings.vue.js +4 -4
- package/dist/components/List/components/HeaderSettingsItem.vue.d.ts.map +1 -1
- package/dist/components/List/components/HeaderSettingsItem.vue.js +4 -4
- package/dist/components/List/components/ListCardFieldNested.vue.d.ts.map +1 -1
- package/dist/components/List/components/ListCardFieldNested.vue.js +1 -1
- package/dist/components/List/components/ListCardFieldNestedItem.vue.d.ts.map +1 -1
- package/dist/components/List/use/useFieldConfigMap.d.ts +1 -1
- package/dist/components/List/use/useFieldConfigMap.d.ts.map +1 -1
- package/dist/components/MenuItem/WMenuItem.vue.d.ts.map +1 -1
- package/dist/components/MenuItem/WMenuItem.vue.js +2 -2
- package/dist/components/Modal/WModal.vue.d.ts.map +1 -1
- package/dist/components/Modal/WModal.vue.js +2 -2
- package/dist/components/Modal/WModalStepper.vue.d.ts +201 -1
- package/dist/components/Modal/WModalStepper.vue.d.ts.map +1 -1
- package/dist/components/Modal/WModalStepper.vue.js +9 -10
- package/dist/components/Modal/WModalWrapper.vue.d.ts.map +1 -1
- package/dist/components/Modal/WModalWrapper.vue.js +4 -4
- package/dist/components/Modal/components/ModalCloseButton.vue.d.ts +3 -1
- package/dist/components/Modal/components/ModalCloseButton.vue.d.ts.map +1 -1
- package/dist/components/Modal/components/ModalCloseButton.vue.js +5 -6
- package/dist/components/Modal/modals/Confirm/ConfirmModal.vue.d.ts.map +1 -1
- package/dist/components/Modal/modals/Confirm/ConfirmModal.vue2.js +2 -2
- package/dist/components/Nav/WNavBar.vue.d.ts.map +1 -1
- package/dist/components/Nav/WNavBar.vue.js +4 -4
- package/dist/components/Nav/WNavItem.vue.d.ts.map +1 -1
- package/dist/components/Nav/WNavItem.vue.js +9 -9
- package/dist/components/Nav/WNavItemExpand.vue.d.ts.map +1 -1
- package/dist/components/Nav/WNavItemExpand.vue.js +3 -3
- package/dist/components/Notify/WNotify.vue.d.ts.map +1 -1
- package/dist/components/Notify/WNotify.vue.js +1 -1
- package/dist/components/Notify/components/NotifyCard.vue.d.ts +4 -2
- package/dist/components/Notify/components/NotifyCard.vue.d.ts.map +1 -1
- package/dist/components/Notify/components/NotifyCard.vue.js +17 -18
- package/dist/components/Notify/models/NotifyType.d.ts.map +1 -1
- package/dist/components/Notify/models/types.d.ts +1 -1
- package/dist/components/Notify/models/types.d.ts.map +1 -1
- package/dist/components/Select/WSelect.vue.d.ts +1 -1
- package/dist/components/Select/WSelect.vue.d.ts.map +1 -1
- package/dist/components/Select/WSelect.vue.js +13 -16
- package/dist/components/Select/WSelectAsync.vue.d.ts.map +1 -1
- package/dist/components/Select/WSelectAsync.vue.js +13 -17
- package/dist/components/Select/WSelectAsyncList.vue.d.ts.map +1 -1
- package/dist/components/Select/WSelectAsyncList.vue.js +11 -11
- package/dist/components/Select/WSelectAsyncSingle.vue.d.ts.map +1 -1
- package/dist/components/Select/WSelectSingle.vue.d.ts +1 -1
- package/dist/components/Select/WSelectSingle.vue.d.ts.map +1 -1
- package/dist/components/Select/WSelectSingle.vue.js +5 -8
- package/dist/components/Select/WSelectStringified.vue.d.ts +1 -1
- package/dist/components/Select/WSelectStringified.vue.d.ts.map +1 -1
- package/dist/components/Select/WSelectStringified.vue.js +4 -7
- package/dist/components/Select/components/SelectAsyncList.vue.d.ts.map +1 -1
- package/dist/components/Select/components/SelectAsyncList.vue.js +2 -2
- package/dist/components/Select/components/SelectAsyncPrefix.vue.d.ts.map +1 -1
- package/dist/components/Select/components/SelectAsyncPrefix.vue.js +5 -5
- package/dist/components/Select/components/SelectAsyncPrefixPage.vue.d.ts.map +1 -1
- package/dist/components/Select/components/SelectAsyncPrefixPage.vue.js +5 -5
- package/dist/components/Select/components/SelectOption.vue.d.ts.map +1 -1
- package/dist/components/Select/components/SelectOption.vue.js +8 -9
- package/dist/components/Select/components/SelectOptionPrefix.vue.d.ts +1 -1
- package/dist/components/Select/components/SelectOptionPrefix.vue.d.ts.map +1 -1
- package/dist/components/Select/components/SelectOptionPrefix.vue.js +5 -5
- package/dist/components/Spinner/WSpinner.vue.js +1 -1
- package/dist/components/Tabs/WTabs.vue.d.ts +3 -1
- package/dist/components/Tabs/WTabs.vue.d.ts.map +1 -1
- package/dist/components/Tabs/WTabs.vue.js +22 -25
- package/dist/components/Tabs/WTabsColumns.vue.d.ts.map +1 -1
- package/dist/components/Tabs/WTabsColumns.vue.js +1 -1
- package/dist/components/Tabs/components/TabItem.vue.d.ts +3 -1
- package/dist/components/Tabs/components/TabItem.vue.d.ts.map +1 -1
- package/dist/components/Tabs/components/TabItem.vue.js +6 -8
- package/dist/components/Tabs/use/useIsInsideTab.d.ts.map +1 -1
- package/dist/components/Tabs/use/useTabActiveListener.d.ts.map +1 -1
- package/dist/components/Tabs/use/useTabItemActiveListener.d.ts.map +1 -1
- package/dist/components/Toggle/WToggle.vue.d.ts.map +1 -1
- package/dist/components/Toggle/WToggle.vue.js +8 -8
- package/dist/components/Toggle/types.d.ts.map +1 -1
- package/dist/components/Tooltip/WTooltip.vue.d.ts.map +1 -1
- package/dist/components/Tooltip/WTooltip.vue.js +1 -1
- package/dist/components/Tooltip/WTooltipContainer.vue.d.ts.map +1 -1
- package/dist/components/Tooltip/WTooltipContainer.vue.js +1 -1
- package/dist/components/Tooltip/components/TooltipContainer.vue.d.ts +3 -1
- package/dist/components/Tooltip/components/TooltipContainer.vue.d.ts.map +1 -1
- package/dist/components/Tooltip/components/TooltipContainer.vue.js +14 -15
- package/dist/components/Tooltip/models/utils.d.ts.map +1 -1
- package/dist/imports/componentsPlugin.d.ts +1 -1
- package/dist/imports/componentsPlugin.d.ts.map +1 -1
- package/dist/imports/iconsSax.d.ts +2 -0
- package/dist/imports/iconsSax.d.ts.map +1 -1
- package/dist/imports/iconsSax.js +2 -0
- package/dist/main.d.ts +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +2 -1
- package/dist/types/global.d.ts +1 -0
- package/dist/utils/HorizontalAlign.d.ts.map +1 -1
- package/dist/utils/Modal.d.ts +1 -1
- package/dist/utils/Modal.d.ts.map +1 -1
- package/dist/utils/Notify.d.ts.map +1 -1
- package/dist/utils/SemanticType.d.ts.map +1 -1
- package/dist/utils/api.d.ts.map +1 -1
- package/dist/utils/order.d.ts.map +1 -1
- package/dist/utils/useCopy.d.ts.map +1 -1
- package/dist/utils/useCopy.js +1 -1
- package/dist/utils/useDefaultQuery.d.ts +1 -1
- package/dist/utils/useDefaultQuery.d.ts.map +1 -1
- package/dist/utils/useDefaultQuery.js +1 -1
- package/dist/utils/useQueryUpdater.d.ts.map +1 -1
- package/dist/utils/useSelected.d.ts.map +1 -1
- package/eslint/plugin.js +43 -0
- package/eslint/recommended.js +171 -0
- package/eslint/rules/modal-declaration.js +33 -0
- package/eslint/rules/modal-import-async.js +38 -0
- package/eslint/rules/modal-import.js +44 -0
- package/eslint/rules/ui-kit-imports.js +65 -0
- package/package.json +14 -6
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Notify.d.ts","sourceRoot":"","sources":["../../src/utils/Notify.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAE,YAAY,EAAC,MAAM,kCAAkC,CAAA;
|
1
|
+
{"version":3,"file":"Notify.d.ts","sourceRoot":"","sources":["../../src/utils/Notify.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAE,YAAY,EAAC,MAAM,kCAAkC,CAAA;AAM7E,eAAO,MAAM,UAAU,UAAW,SAAS,GAAG,SAAS,SAEtD,CAAA;AAED,eAAO,MAAM,MAAM;oBACD,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,IAAI;iBAGpC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,IAAI;kBAGhC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,IAAI;CAGhD,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SemanticType.d.ts","sourceRoot":"","sources":["../../src/utils/SemanticType.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"SemanticType.d.ts","sourceRoot":"","sources":["../../src/utils/SemanticType.ts"],"names":[],"mappings":"AAAA,oBAAY,YAAY;IACtB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,IAAI,SAAS;CACd"}
|
package/dist/utils/api.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/utils/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,6BAA6B,CAAA;AACpD,OAAO,KAAK,cAAc,MAAM,sCAAsC,CAAA;
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/utils/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,6BAA6B,CAAA;AACpD,OAAO,KAAK,cAAc,MAAM,sCAAsC,CAAA;AAMtE,KAAK,aAAa,CAAC,QAAQ,IAAI;KAC5B,GAAG,IAAI,QAAQ,GAAG,kBAAkB,GAAG,MAAM,QAAQ,CAAC,CAAC,EAAE,GAAG,SAAS,QAAQ,GAAG,MAAM,GAAG,MAAM,EAAE;CACnG,CAAA;AAED,qBAAa,QAAQ,CAAC,IAAI,SAAS,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAE,SAAQ,KAAK;aACvF,QAAQ,EAAE,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC;gBAA1C,QAAQ,EAAE,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC;CAGvE;AAED,qBAAa,cAAc,CAAC,IAAI,SAAS,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,CAAE,SAAQ,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;gBAChG,QAAQ,EAAE,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC;CAGvD;AAED,eAAO,MAAM,cAAc,GAAI,KAAK,SAC3B,KAAK,SACL;IAAC,UAAU,EAAE,iBAAiB,CAAC,OAAO,KAAK,CAAC,CAAC,YAAY,CAAC,CAAA;CAAC,GAAG,IAAI,UACjE,MAAM,kBACE;IAAC,UAAU,EAAE,iBAAiB,CAAC,OAAO,cAAc,CAAC,CAAC,YAAY,CAAC,CAAA;CAAC,GAAG,IAAI,KAC1F,OAAO,CAAC,KAAK,CAgBf,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"order.d.ts","sourceRoot":"","sources":["../../src/utils/order.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"order.d.ts","sourceRoot":"","sources":["../../src/utils/order.ts"],"names":[],"mappings":"AAAA,oBAAY,KAAK;IACf,GAAG,QAAQ;IACX,IAAI,SAAS;CACd;AAED,MAAM,MAAM,SAAS,CAAC,KAAK,IAAI;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAC,CAAA;AAE3D,eAAO,MAAM,aAAa,GAAI,KAAK,SAAS,MAAM,qBAAqB,MAAM,KAAG,SAAS,CAAC,KAAK,CAAC,EAO/F,CAAA;AAED,eAAO,MAAM,cAAc,UAAW,SAAS,CAAC,OAAO,CAAC,EAAE,KAAG,MAAM,GAAG,SAErE,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useCopy.d.ts","sourceRoot":"","sources":["../../src/utils/useCopy.ts"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"useCopy.d.ts","sourceRoot":"","sources":["../../src/utils/useCopy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,QAAQ,EAAgC,MAAM,KAAK,CAAA;AAOhE,eAAO,MAAM,OAAO,UAAW,QAAQ,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;;;;CAgEnE,CAAA"}
|
package/dist/utils/useCopy.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import { ref, computed, markRaw, unref } from 'vue';
|
2
|
-
import { Notify } from './Notify.js';
|
3
2
|
import IconCopy from '../assets/icons/sax/IconCopy.svg.js';
|
4
3
|
import IconCopySuccess from '../assets/icons/sax/IconCopySuccess.svg.js';
|
4
|
+
import { Notify } from './Notify.js';
|
5
5
|
|
6
6
|
const useCopy = (value) => {
|
7
7
|
const copied = ref(false);
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { QueryClient,
|
1
|
+
import { QueryClient, QueryKey, UseQueryReturnType } from '@tanstack/vue-query';
|
2
2
|
import { ApiError } from './api';
|
3
3
|
type Params = Parameters<QueryClient['setQueriesData']>;
|
4
4
|
type SetData<TQueryFnData = unknown> = (updater: TQueryFnData, options?: Params[2]) => ReturnType<QueryClient['setQueriesData']>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useDefaultQuery.d.ts","sourceRoot":"","sources":["../../src/utils/useDefaultQuery.ts"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"useDefaultQuery.d.ts","sourceRoot":"","sources":["../../src/utils/useDefaultQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,WAAW,EAAE,KAAK,QAAQ,EAAE,KAAK,kBAAkB,EAA2B,MAAM,qBAAqB,CAAA;AAGtH,OAAO,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAA;AAE9B,KAAK,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAA;AAEvD,KAAK,OAAO,CAAC,YAAY,GAAG,OAAO,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAA;AAEhI,KAAK,yBAAyB,CAAC,YAAY,GAAG,OAAO,EAAE,KAAK,GAAG,YAAY,IAAI,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG;IACnH,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;CAC/B,CAAA;AAED,eAAO,MAAM,eAAe,GAC1B,YAAY,YACZ,KAAK,iBACL,SAAS,SAAS,QAAQ;;;+EACuD,yBAAyB,CAAC,YAAY,EAAE,KAAK,CAO/H,CAAA;AAED,eAAO,MAAM,WAAW,KAAK,CAAA;AAE7B,eAAO,MAAM,kBAAkB,GAAI,IAAI,EAAE,WAAW,SAAS;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAC,OAAO,MAAM,UAAU,CAAC,WAAW,EAAE,WAAW,KAAK,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,0BAA6B,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAoDvO,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useQueryUpdater.d.ts","sourceRoot":"","sources":["../../src/utils/useQueryUpdater.ts"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"useQueryUpdater.d.ts","sourceRoot":"","sources":["../../src/utils/useQueryUpdater.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,YAAY,EAAiB,MAAM,qBAAqB,CAAA;AAErE,eAAO,MAAM,wBAAwB,GAAI,IAAI,SAAS,WAAW,WAAW,iBAAiB,CAAC,IAAI,CAAC,GAAG,SAAS,aAAa,IAAI,EAAE,YAAY,MAAM,EAAE,iCAA6B,iBAAiB,CAAC,IAAI,CAAC,GAAG,SAuB5M,CAAA;AAED,eAAO,MAAM,eAAe;aAGV,KAAK,SAAS,WAAW,QAAQ,KAAK,WAAW;QAAC,eAAe,CAAC,EAAE,YAAY,CAAC;QAAC,oBAAoB,CAAC,EAAE,YAAY,CAAA;KAAC;iBAwBlH,KAAK,SAAS,WAAW,QAAQ,KAAK,EAAE,UAAU,YAAY;aAM7D,KAAK,SAAS,WAAW,UAAU,YAAY,YAAY,MAAM,EAAE;CAYzF,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useSelected.d.ts","sourceRoot":"","sources":["../../src/utils/useSelected.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"useSelected.d.ts","sourceRoot":"","sources":["../../src/utils/useSelected.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,OAAO,KAAG,KAAK,IAAI,YAAY,CAAC,CAAC,CAMzE,CAAA;AAMD,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,OAAO,KAAG,KAAK,IAAI,aAAa,CAAC,CAAC,CAK3E,CAAA;AAMD,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,cAAc,MAAM,KAAG,MAE3E,CAAA;AAMD,eAAO,MAAM,WAAW;;8BAmBW,aAAa,CAAC,MAAM,CAAC;;;yBAgB1B,MAAM,EAAE,KAAG,IAAI;gCAIR,MAAM,EAAE,KAAG,IAAI;CAanD,CAAA"}
|
package/eslint/plugin.js
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
import recommended from './recommended.js'
|
2
|
+
import modalDeclaration from './rules/modal-declaration.js'
|
3
|
+
import modalImportAsync from './rules/modal-import-async.js'
|
4
|
+
import modalImport from './rules/modal-import.js'
|
5
|
+
import uiKitImports from './rules/ui-kit-imports.js'
|
6
|
+
|
7
|
+
const plugin = {
|
8
|
+
rules: {
|
9
|
+
'modal-declaration': modalDeclaration,
|
10
|
+
'modal-import-async': modalImportAsync,
|
11
|
+
'modal-import': modalImport,
|
12
|
+
'ui-kit-imports': uiKitImports,
|
13
|
+
},
|
14
|
+
|
15
|
+
configs: {},
|
16
|
+
}
|
17
|
+
|
18
|
+
plugin.configs.recommended = [
|
19
|
+
...recommended,
|
20
|
+
{
|
21
|
+
name: 'custom-rules',
|
22
|
+
plugins: {
|
23
|
+
'custom-rules': plugin,
|
24
|
+
},
|
25
|
+
files: ['**/*.{ts,js,vue}'],
|
26
|
+
rules: {
|
27
|
+
'custom-rules/modal-declaration': ['error'],
|
28
|
+
'custom-rules/modal-import-async': ['error'],
|
29
|
+
'custom-rules/modal-import': ['error'],
|
30
|
+
'custom-rules/ui-kit-imports': ['error'],
|
31
|
+
|
32
|
+
'no-restricted-imports': [
|
33
|
+
'error',
|
34
|
+
{
|
35
|
+
name: 'eco-vue-js',
|
36
|
+
message: 'Use import eco-vue-js/dist/',
|
37
|
+
},
|
38
|
+
],
|
39
|
+
},
|
40
|
+
},
|
41
|
+
]
|
42
|
+
|
43
|
+
export default plugin
|
@@ -0,0 +1,171 @@
|
|
1
|
+
import pluginQuery from '@tanstack/eslint-plugin-query'
|
2
|
+
import vueTsEslintConfig from '@vue/eslint-config-typescript'
|
3
|
+
import importPlugin from 'eslint-plugin-import'
|
4
|
+
import tailwind from 'eslint-plugin-tailwindcss'
|
5
|
+
import unusedImports from 'eslint-plugin-unused-imports'
|
6
|
+
import pluginVue from 'eslint-plugin-vue'
|
7
|
+
|
8
|
+
export default [
|
9
|
+
...pluginVue.configs['flat/recommended'],
|
10
|
+
...tailwind.configs['flat/recommended'],
|
11
|
+
...pluginQuery.configs['flat/recommended'],
|
12
|
+
...vueTsEslintConfig(),
|
13
|
+
|
14
|
+
{
|
15
|
+
files: ['**/*.cjs'],
|
16
|
+
rules: {
|
17
|
+
'@typescript-eslint/no-require-imports': 'off',
|
18
|
+
},
|
19
|
+
},
|
20
|
+
|
21
|
+
{
|
22
|
+
files: ['**/*.{ts,js,mts,tsx,json}'],
|
23
|
+
rules: {
|
24
|
+
'indent': ['error', 2, {
|
25
|
+
'SwitchCase': 1,
|
26
|
+
}],
|
27
|
+
},
|
28
|
+
},
|
29
|
+
|
30
|
+
{
|
31
|
+
files: ['**/*.json'],
|
32
|
+
rules: {
|
33
|
+
'quotes': ['error', 'double'],
|
34
|
+
'@typescript-eslint/no-unused-expressions': 'off',
|
35
|
+
'comma-dangle': ['error', 'never'],
|
36
|
+
},
|
37
|
+
},
|
38
|
+
|
39
|
+
{
|
40
|
+
files: ['**/*.ts'],
|
41
|
+
rules: {
|
42
|
+
'@typescript-eslint/naming-convention': [
|
43
|
+
'error',
|
44
|
+
{'selector': 'enum', 'format': ['PascalCase']},
|
45
|
+
{'selector': 'enumMember', 'format': ['UPPER_CASE', 'snake_case']},
|
46
|
+
],
|
47
|
+
},
|
48
|
+
},
|
49
|
+
|
50
|
+
{
|
51
|
+
files: ['**/*.{ts,js,vue}'],
|
52
|
+
plugins: {
|
53
|
+
import: importPlugin,
|
54
|
+
},
|
55
|
+
languageOptions: {
|
56
|
+
parser: pluginVue.parser,
|
57
|
+
ecmaVersion: 'latest',
|
58
|
+
sourceType: 'module',
|
59
|
+
},
|
60
|
+
rules: {
|
61
|
+
...importPlugin.flatConfigs.recommended.rules,
|
62
|
+
'import/order': [
|
63
|
+
1,
|
64
|
+
{
|
65
|
+
'newlines-between': 'always',
|
66
|
+
'named': true,
|
67
|
+
'groups': ['type', 'external', 'builtin', 'internal', 'sibling', 'parent', 'index'],
|
68
|
+
distinctGroup: true,
|
69
|
+
'pathGroups': [
|
70
|
+
{'pattern': 'eco-vue-js/**/W**', 'group': 'builtin', 'position': 'before'},
|
71
|
+
{'pattern': '**/W**', 'group': 'builtin', 'position': 'before'},
|
72
|
+
{'pattern': 'eco-vue-js/**/Icon**', 'group': 'builtin', 'position': 'before'},
|
73
|
+
{'pattern': '**/Icon**', 'group': 'builtin', 'position': 'before'},
|
74
|
+
{'pattern': 'eco-vue-js/**', 'group': 'external', 'position': 'after'},
|
75
|
+
],
|
76
|
+
'pathGroupsExcludedImportTypes': ['builtin'],
|
77
|
+
'alphabetize': {'order': 'asc', 'caseInsensitive': false},
|
78
|
+
},
|
79
|
+
],
|
80
|
+
'import/no-useless-path-segments': [1, {noUselessIndex: true}],
|
81
|
+
// 'import/extensions': [1, 'never'],
|
82
|
+
'import/first': 1,
|
83
|
+
'import/newline-after-import': 1,
|
84
|
+
},
|
85
|
+
settings: {
|
86
|
+
'import/parsers': {
|
87
|
+
'@typescript-eslint/parser': ['.ts', '.js'],
|
88
|
+
},
|
89
|
+
'import/resolver': {
|
90
|
+
'typescript': {
|
91
|
+
'alwaysTryTypes': true,
|
92
|
+
'project': './tsconfig.vue.json',
|
93
|
+
},
|
94
|
+
'node': true,
|
95
|
+
},
|
96
|
+
},
|
97
|
+
},
|
98
|
+
|
99
|
+
{
|
100
|
+
files: ['**/*.{ts,js,vue}'],
|
101
|
+
plugins: {
|
102
|
+
'unused-imports': unusedImports,
|
103
|
+
},
|
104
|
+
rules: {
|
105
|
+
'semi': ['error', 'never'],
|
106
|
+
'quotes': ['error', 'single', {allowTemplateLiterals: true}],
|
107
|
+
'comma-dangle': ['error', 'always-multiline'],
|
108
|
+
'comma-spacing': ['error', {'before': false, 'after': true}],
|
109
|
+
'object-curly-spacing': ['error', 'never'],
|
110
|
+
'func-call-spacing': 'off',
|
111
|
+
'template-curly-spacing': ['error', 'always'],
|
112
|
+
'space-before-function-paren': ['error', {anonymous: 'always', named: 'never', asyncArrow: 'always'}],
|
113
|
+
'vue/no-lone-template': ['error', {
|
114
|
+
ignoreAccessible: false,
|
115
|
+
}],
|
116
|
+
'no-undef': 'off',
|
117
|
+
'default-case-last': 'off',
|
118
|
+
'no-console': ['warn'],
|
119
|
+
'no-unused-vars': 'off',
|
120
|
+
'@typescript-eslint/no-unused-vars': ['error', {'args': 'after-used', 'caughtErrors': 'none'}],
|
121
|
+
'unused-imports/no-unused-imports': 'error',
|
122
|
+
'tailwindcss/no-custom-classname': 'off',
|
123
|
+
'tailwindcss/migration-from-tailwind-2': 'off',
|
124
|
+
'no-multiple-empty-lines': [1, {max: 1, maxEOF: 0, maxBOF: 0}],
|
125
|
+
},
|
126
|
+
},
|
127
|
+
|
128
|
+
{
|
129
|
+
files: ['**/*.vue'],
|
130
|
+
rules: {
|
131
|
+
'vue/script-indent': ['error', 2, {
|
132
|
+
'baseIndent': 0,
|
133
|
+
'switchCase': 1,
|
134
|
+
'ignores': [],
|
135
|
+
}],
|
136
|
+
'vue/component-name-in-template-casing': ['error', 'PascalCase', {registeredComponentsOnly: false}],
|
137
|
+
'vue/component-tags-order': ['error', {
|
138
|
+
'order': ['template', 'script[setup]', 'style'],
|
139
|
+
}],
|
140
|
+
'vue/multiline-html-element-content-newline': ['error', {
|
141
|
+
'ignoreWhenEmpty': true,
|
142
|
+
'ignores': ['pre', 'textarea', 'span', 'tspan'],
|
143
|
+
'allowEmptyLines': false,
|
144
|
+
}],
|
145
|
+
'vue/attributes-order': ['error', {
|
146
|
+
'order': [
|
147
|
+
'DEFINITION',
|
148
|
+
'LIST_RENDERING',
|
149
|
+
'CONDITIONALS',
|
150
|
+
'RENDER_MODIFIERS',
|
151
|
+
'GLOBAL',
|
152
|
+
['UNIQUE', 'SLOT'],
|
153
|
+
'TWO_WAY_BINDING',
|
154
|
+
'OTHER_DIRECTIVES',
|
155
|
+
['ATTR_DYNAMIC', 'ATTR_STATIC', 'ATTR_SHORTHAND_BOOL'],
|
156
|
+
'EVENTS',
|
157
|
+
'CONTENT',
|
158
|
+
],
|
159
|
+
'alphabetical': false,
|
160
|
+
}],
|
161
|
+
'vue/prefer-use-template-ref': 'error',
|
162
|
+
'vue/require-macro-variable-name': ['error', {'defineProps': 'props', 'defineEmits': 'emit', 'defineSlots': 'slots', 'useSlots': 'slots', 'useAttrs': 'attrs'}],
|
163
|
+
'vue/require-typed-ref': 'error',
|
164
|
+
'vue/padding-line-between-blocks': ['error', 'always'],
|
165
|
+
'vue/block-tag-newline': [1, {
|
166
|
+
'singleline': 'always',
|
167
|
+
'multiline': 'always',
|
168
|
+
}],
|
169
|
+
},
|
170
|
+
},
|
171
|
+
]
|
@@ -0,0 +1,33 @@
|
|
1
|
+
export default {
|
2
|
+
meta: {
|
3
|
+
type: 'suggestion',
|
4
|
+
docs: {
|
5
|
+
description: 'Restrict specific imports and provide replacement',
|
6
|
+
category: 'Best Practices',
|
7
|
+
recommended: true,
|
8
|
+
},
|
9
|
+
fixable: 'code',
|
10
|
+
},
|
11
|
+
|
12
|
+
create: function (context) {
|
13
|
+
const sourceCode = context.sourceCode ?? context.getSourceCode()
|
14
|
+
const filename = context.filename ?? context.getFilename()
|
15
|
+
return {
|
16
|
+
Program(node) {
|
17
|
+
const baseName = filename
|
18
|
+
|
19
|
+
if (!baseName.endsWith('.vue') || baseName.includes('Modal')) return
|
20
|
+
|
21
|
+
const templateNode = node.templateBody
|
22
|
+
if (!templateNode) return
|
23
|
+
|
24
|
+
if (!sourceCode.getText(templateNode).includes('<WModalWrapper')) return
|
25
|
+
|
26
|
+
context.report({
|
27
|
+
node,
|
28
|
+
message: `Component with <WModalWrapper> should contain "Modal" in file name`,
|
29
|
+
})
|
30
|
+
},
|
31
|
+
}
|
32
|
+
},
|
33
|
+
}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
export default {
|
2
|
+
meta: {
|
3
|
+
type: 'suggestion',
|
4
|
+
docs: {
|
5
|
+
description: 'Restrict specific imports and provide replacement',
|
6
|
+
category: 'Best Practices',
|
7
|
+
recommended: true,
|
8
|
+
},
|
9
|
+
fixable: 'code',
|
10
|
+
},
|
11
|
+
|
12
|
+
create: function (context) {
|
13
|
+
return {
|
14
|
+
ImportDeclaration(node) {
|
15
|
+
const importPath = node.source.value
|
16
|
+
|
17
|
+
// Check if import is of a modal component
|
18
|
+
if (importPath.includes('@') && importPath.includes('Modal')) {
|
19
|
+
const defaultImport = node.specifiers.find(specifier => specifier.type === 'ImportDefaultSpecifier')
|
20
|
+
|
21
|
+
if (defaultImport) {
|
22
|
+
// Check if import method is not defineAsyncComponent
|
23
|
+
if (node.importKind !== 'type' && node.importKind !== 'typeof') {
|
24
|
+
context.report({
|
25
|
+
node,
|
26
|
+
message: `Imported modal component '${ defaultImport.local.name }' should use defineAsyncComponent`,
|
27
|
+
fix: function (fixer) {
|
28
|
+
const replacement = `const ${ defaultImport.local.name } = defineAsyncComponent(() => import('${ importPath }'))`
|
29
|
+
return fixer.replaceText(node, replacement)
|
30
|
+
},
|
31
|
+
})
|
32
|
+
}
|
33
|
+
}
|
34
|
+
}
|
35
|
+
},
|
36
|
+
}
|
37
|
+
},
|
38
|
+
}
|
@@ -0,0 +1,44 @@
|
|
1
|
+
export default {
|
2
|
+
meta: {
|
3
|
+
type: 'suggestion',
|
4
|
+
docs: {
|
5
|
+
description: 'Ensure defineAsyncComponent is not called inside functions or passed as arguments',
|
6
|
+
category: 'Best Practices',
|
7
|
+
recommended: true,
|
8
|
+
},
|
9
|
+
fixable: 'code',
|
10
|
+
},
|
11
|
+
|
12
|
+
create(context) {
|
13
|
+
const sourceCode = context.sourceCode ?? context.getSourceCode()
|
14
|
+
return {
|
15
|
+
CallExpression(node) {
|
16
|
+
if (node.callee.type === 'Identifier' && node.callee.name === 'defineAsyncComponent') {
|
17
|
+
const parentFunction = (sourceCode.getAncestors ? sourceCode.getAncestors(node, node) : context.getAncestors()).find(ancestor => ancestor.type === 'FunctionDeclaration' || ancestor.type === 'ArrowFunctionExpression')
|
18
|
+
|
19
|
+
if (parentFunction) {
|
20
|
+
const importPath = node.arguments[0].body.source.value
|
21
|
+
const componentName = importPath.substring(importPath.lastIndexOf('/') + 1, importPath.lastIndexOf('.'))
|
22
|
+
|
23
|
+
context.report({
|
24
|
+
node: node,
|
25
|
+
message: 'defineAsyncComponent should not be called inside functions or passed as arguments',
|
26
|
+
fix: function (fixer) {
|
27
|
+
return [
|
28
|
+
fixer.replaceText(node, componentName),
|
29
|
+
fixer.insertTextAfterRange(
|
30
|
+
(sourceCode.getAncestors ? sourceCode.getAncestors(node, node) : context.getAncestors())[0].body
|
31
|
+
.slice()
|
32
|
+
.reverse()
|
33
|
+
.find(item => item.type === 'ImportDeclaration').source.range,
|
34
|
+
`\n\nconst ${ componentName } = defineAsyncComponent(() => import('${ importPath }'));`,
|
35
|
+
),
|
36
|
+
]
|
37
|
+
},
|
38
|
+
})
|
39
|
+
}
|
40
|
+
}
|
41
|
+
},
|
42
|
+
}
|
43
|
+
},
|
44
|
+
}
|
@@ -0,0 +1,65 @@
|
|
1
|
+
export default {
|
2
|
+
meta: {
|
3
|
+
type: 'suggestion',
|
4
|
+
docs: {
|
5
|
+
description: 'Restrict specific imports and provide replacement',
|
6
|
+
category: 'Best Practices',
|
7
|
+
recommended: true,
|
8
|
+
},
|
9
|
+
fixable: 'code',
|
10
|
+
},
|
11
|
+
|
12
|
+
create: function (context) {
|
13
|
+
return {
|
14
|
+
ImportDeclaration(node) {
|
15
|
+
const source = node.source.value
|
16
|
+
const importSpecifiers = node.specifiers.filter(specifier => specifier.type === 'ImportSpecifier')
|
17
|
+
|
18
|
+
importSpecifiers.forEach(specifier => {
|
19
|
+
if (!source.includes('eco-vue-js')) return
|
20
|
+
|
21
|
+
const importedName = specifier.imported.name
|
22
|
+
|
23
|
+
if (importedName.startsWith('W')) {
|
24
|
+
const replacementImport = `import ${ importedName } from 'eco-vue-js/dist/components/${ importedName.substr(1) }/${ importedName }.vue'`
|
25
|
+
context.report({
|
26
|
+
node,
|
27
|
+
message: `Do not import '${ importedName }' directly. Use the replacement: ${ replacementImport }`,
|
28
|
+
fix: function (fixer) {
|
29
|
+
return fixer.replaceText(node, replacementImport)
|
30
|
+
},
|
31
|
+
})
|
32
|
+
|
33
|
+
return
|
34
|
+
}
|
35
|
+
|
36
|
+
if (source.includes('iconsSax')) {
|
37
|
+
const replacementImport = `import ${ importedName } from 'eco-vue-js/dist/assets/icons/sax/${ importedName }'`
|
38
|
+
context.report({
|
39
|
+
node,
|
40
|
+
message: `Do not import '${ importedName }' directly. Use the replacement: ${ replacementImport }`,
|
41
|
+
fix: function (fixer) {
|
42
|
+
return fixer.replaceText(node, replacementImport)
|
43
|
+
},
|
44
|
+
})
|
45
|
+
|
46
|
+
return
|
47
|
+
}
|
48
|
+
|
49
|
+
if (source.includes('iconsDefault')) {
|
50
|
+
const replacementImport = `import ${ importedName } from 'eco-vue-js/dist/assets/icons/default/${ importedName }'`
|
51
|
+
context.report({
|
52
|
+
node,
|
53
|
+
message: `Do not import '${ importedName }' directly. Use the replacement: ${ replacementImport }`,
|
54
|
+
fix: function (fixer) {
|
55
|
+
return fixer.replaceText(node, replacementImport)
|
56
|
+
},
|
57
|
+
})
|
58
|
+
|
59
|
+
return
|
60
|
+
}
|
61
|
+
})
|
62
|
+
},
|
63
|
+
}
|
64
|
+
},
|
65
|
+
}
|
package/package.json
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
"type": "git",
|
5
5
|
"url": "https://github.com/rsmple/eco-vue-js.git"
|
6
6
|
},
|
7
|
-
"version": "0.8.
|
7
|
+
"version": "0.8.42",
|
8
8
|
"scripts": {
|
9
9
|
"build": "run-p type-check \"build-only {@}\" --",
|
10
10
|
"preview": "vite preview",
|
@@ -15,25 +15,29 @@
|
|
15
15
|
"lint-inspect-config": "npx eslint --inspect-config",
|
16
16
|
"write-imports": "node write-imports.js"
|
17
17
|
},
|
18
|
+
"dependencies": {
|
19
|
+
"@tanstack/eslint-plugin-query": "5.60.1",
|
20
|
+
"@vue/eslint-config-typescript": "14.1.3",
|
21
|
+
"eslint-import-resolver-typescript": "3.6.3",
|
22
|
+
"eslint-plugin-import": "2.31.0",
|
23
|
+
"eslint-plugin-tailwindcss": "3.17.5",
|
24
|
+
"eslint-plugin-unused-imports": "4.1.4",
|
25
|
+
"eslint-plugin-vue": "9.31.0"
|
26
|
+
},
|
18
27
|
"peerDependencies": {
|
19
28
|
"@tanstack/vue-query": ">=5.59.0",
|
20
29
|
"vue": ">=3.5.11",
|
21
30
|
"vue-router": ">=4.4.5"
|
22
31
|
},
|
23
32
|
"devDependencies": {
|
24
|
-
"@tanstack/eslint-plugin-query": "5.60.1",
|
25
33
|
"@tsconfig/node22": "22.0.0",
|
26
34
|
"@types/jsdom": "21.1.7",
|
27
35
|
"@types/node": "22.9.1",
|
28
36
|
"@types/postcss-import": "14.0.3",
|
29
37
|
"@vitejs/plugin-vue": "5.2.0",
|
30
|
-
"@vue/eslint-config-typescript": "14.1.3",
|
31
38
|
"@vue/tsconfig": "0.6.0",
|
32
39
|
"autoprefixer": "10.4.20",
|
33
40
|
"eslint": "9.15.0",
|
34
|
-
"eslint-plugin-tailwindcss": "3.17.5",
|
35
|
-
"eslint-plugin-unused-imports": "4.1.4",
|
36
|
-
"eslint-plugin-vue": "9.31.0",
|
37
41
|
"jsdom": "25.0.1",
|
38
42
|
"npm-run-all2": "7.0.1",
|
39
43
|
"path": "0.12.7",
|
@@ -48,6 +52,7 @@
|
|
48
52
|
},
|
49
53
|
"type": "module",
|
50
54
|
"files": [
|
55
|
+
"eslint",
|
51
56
|
"dist",
|
52
57
|
"tailwind-base",
|
53
58
|
"LICENSE"
|
@@ -68,6 +73,9 @@
|
|
68
73
|
"./tailwind-base/index.cjs": {
|
69
74
|
"require": "./tailwind-base/index.cjs"
|
70
75
|
},
|
76
|
+
"./eslint/plugin": {
|
77
|
+
"import": "./eslint/plugin.js"
|
78
|
+
},
|
71
79
|
"./dist/assets/icons/default/*": {
|
72
80
|
"import": "./dist/assets/icons/default/*.svg.js"
|
73
81
|
},
|