@ozdao/prometheus-framework 0.2.308 → 0.2.309
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/main.css +1 -1
- package/dist/prometheus-framework/src/components/Feed/Feed.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Feed/Feed.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/components/Feed/Feed.vue.js +1 -1
- package/dist/prometheus-framework/src/components/Feed/Feed.vue.js.map +1 -1
- package/dist/prometheus-framework/src/components/Field/Field.vue2.cjs +13 -12
- package/dist/prometheus-framework/src/components/Field/Field.vue2.cjs.map +1 -1
- package/dist/prometheus-framework/src/components/Field/Field.vue2.js +13 -12
- package/dist/prometheus-framework/src/components/Field/Field.vue2.js.map +1 -1
- package/dist/prometheus-framework/src/components/FieldBig/FieldBig.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/FieldBig/FieldBig.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/auth/auth.client.cjs +1 -0
- package/dist/prometheus-framework/src/modules/auth/auth.client.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/auth/auth.client.js +1 -0
- package/dist/prometheus-framework/src/modules/auth/auth.client.js.map +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/layouts/Auth.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/layouts/Auth.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterCode.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterCode.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterPassword.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Invite.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Invite.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.cjs +59 -79
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.js +80 -100
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +92 -87
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue.js +95 -90
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ResetPassword.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignIn.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignIn.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignUp.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignUp.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/router/users.cjs +19 -1
- package/dist/prometheus-framework/src/modules/auth/views/router/users.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/router/users.js +19 -1
- package/dist/prometheus-framework/src/modules/auth/views/router/users.js.map +1 -1
- package/dist/prometheus-framework/src/modules/backoffice/components/partials/Sidebar.vue.js +12 -12
- package/dist/prometheus-framework/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/blocks/CardBlogpost.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/community/components/blocks/CardBlogpost.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/blocks/FooterBlogpost.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/community/components/blocks/FooterBlogpost.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/blocks/FooterBlogpost.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/community/components/blocks/FooterBlogpost.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.cjs +9 -9
- package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.js +9 -9
- package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/Blog.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/Blog.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/Blog.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/Blog.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.cjs +4 -4
- package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.js +4 -4
- package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/community/components/sections/Comments.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/community/components/sections/Comments.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/sections/Comments.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/community/components/sections/Comments.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/community/router/blogposts.cjs +2 -1
- package/dist/prometheus-framework/src/modules/community/router/blogposts.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/community/router/blogposts.js +2 -1
- package/dist/prometheus-framework/src/modules/community/router/blogposts.js.map +1 -1
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Card.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Card.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/globals/globals.client.cjs +4 -2
- package/dist/prometheus-framework/src/modules/globals/globals.client.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/globals/globals.client.js +2 -0
- package/dist/prometheus-framework/src/modules/globals/globals.client.js.map +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/classes/store.cjs +57 -0
- package/dist/prometheus-framework/src/modules/globals/views/classes/store.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/globals/views/classes/store.js +57 -0
- package/dist/prometheus-framework/src/modules/globals/views/classes/store.js.map +1 -0
- package/dist/prometheus-framework/src/modules/globals/views/components/blocks/BlockSearch.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/blocks/BlockSearch.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/blocks/CardHeader.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/BottomNavigationBar.vue.cjs +75 -114
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/BottomNavigationBar.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/BottomNavigationBar.vue.js +76 -115
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/BottomNavigationBar.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/icons/entities/IconCatalog.vue.cjs +36 -0
- package/dist/prometheus-framework/src/modules/icons/entities/IconCatalog.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/icons/entities/IconCatalog.vue.js +36 -0
- package/dist/prometheus-framework/src/modules/icons/entities/IconCatalog.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.cjs +36 -24
- package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.js +36 -24
- package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/icons/entities/IconGroups.vue.cjs +21 -12
- package/dist/prometheus-framework/src/modules/icons/entities/IconGroups.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/icons/entities/IconGroups.vue.js +21 -12
- package/dist/prometheus-framework/src/modules/icons/entities/IconGroups.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/icons/entities/IconHome.vue.cjs +36 -0
- package/dist/prometheus-framework/src/modules/icons/entities/IconHome.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/icons/entities/IconHome.vue.js +36 -0
- package/dist/prometheus-framework/src/modules/icons/entities/IconHome.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonBlogpost.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonBlogpost.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonBlogpost.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonBlogpost.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEvent.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEvent.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEvent.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEvent.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEventShort.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEventShort.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEventShort.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEventShort.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonOrganization.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonOrganization.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonOrganization.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonOrganization.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormDelivery.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormDelivery.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +12 -12
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/pages/pages.client.cjs +745 -745
- package/dist/prometheus-framework/src/modules/pages/pages.client.js +745 -745
- package/dist/prometheus-framework/src/modules/pages/views/components/blocks/CardPage.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/pages/views/components/blocks/CardPage.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/pages/views/components/pages/PageEdit.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/pages/views/components/pages/PageEdit.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/LeftoverPositions.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/LeftoverPositions.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/ListPositions.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/ListPositions.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Categories.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Categories.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/blocks/SpotMemberModify.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/pages/Map.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/pages/Map.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CardDeposit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CardDeposit.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.js +1 -1
- package/dist/prometheus-framework.cjs.js +21 -21
- package/dist/prometheus-framework.es.js +910 -910
- package/package.json +1 -1
- package/src/components/Completion/Completion.vue +1 -0
- package/src/components/Feed/Feed.vue +1 -1
- package/src/components/Field/Field.vue +1 -1
- package/src/modules/auth/auth.client.js +2 -0
- package/src/modules/auth/views/components/pages/Profile.vue +57 -35
- package/src/modules/auth/views/components/pages/ProfileEdit.vue +91 -77
- package/src/modules/auth/views/router/users.js +21 -2
- package/src/modules/community/components/blocks/CardBlogpost.vue +1 -1
- package/src/modules/community/components/blocks/FooterBlogpost.vue +3 -3
- package/src/modules/community/components/layouts/Community.vue +8 -8
- package/src/modules/community/components/pages/Blog.vue +1 -1
- package/src/modules/community/components/pages/BlogPost.vue +3 -3
- package/src/modules/community/components/pages/Community.vue +1 -1
- package/src/modules/community/components/sections/Comments.vue +2 -2
- package/src/modules/community/router/blogposts.js +4 -3
- package/src/modules/globals/globals.client.js +3 -0
- package/src/modules/globals/views/classes/store.js +63 -0
- package/src/modules/globals/views/components/partials/BottomNavigationBar.vue +87 -59
- package/src/modules/icons/entities/IconCatalog.vue +18 -0
- package/src/modules/icons/entities/IconCommunity.vue +15 -5
- package/src/modules/icons/entities/IconGroups.vue +7 -2
- package/src/modules/icons/entities/IconHome.vue +18 -0
- package/src/modules/icons/skeletons/SkeletonBlogpost.vue +1 -1
- package/src/modules/icons/skeletons/SkeletonEvent.vue +1 -1
- package/src/modules/icons/skeletons/SkeletonEventShort.vue +1 -1
- package/src/modules/icons/skeletons/SkeletonOrganization.vue +1 -1
- package/src/styles/base/shadow_transitions_hover_refactor.scss +2 -0
- package/src/styles/typography.scss +2 -2
- package/src/modules/auth/views/router/account.js +0 -41
@@ -277,7 +277,7 @@ const _sfc_main = {
|
|
277
277
|
vue.unref(isLoading) ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 0 }, vue.renderList(vue.unref(currentLimit), (i) => {
|
278
278
|
return vue.openBlock(), vue.createBlock(SkeletonEvent.default, {
|
279
279
|
key: "skeleton-" + i,
|
280
|
-
class: "mn-b-small radius-
|
280
|
+
class: "mn-b-small radius-medium o-hidden d-block"
|
281
281
|
});
|
282
282
|
}), 128)) : vue.createCommentVNode("", true)
|
283
283
|
]),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Feed.vue.cjs","sources":["../../../../../src/components/Feed/Feed.vue"],"sourcesContent":["<template>\n\n <div v-if=\"search || date || (sort && !sort.hideButton)\" class=\"flex-nowrap flex gap-thin\">\n\n <BlockSearch \n v-if=\"search\"\n :placeholder=\"search.placeholder || 'Search...'\"\n :class=\"search.class || 'bg-light'\"\n @search=\"updateSearch\"\n />\n\n <template\n v-if=\"filter\"\n >\n <div \n :class=\"filter.class || 'bg-light'\"\n class=\"flex-center flex pd-thin bg-light radius-extra aspect-1x1 h-100\"\n >\n <IconFilter @click=\"() => filter.active = !filter.active\" class=\"w-1r h-auto\"/>\n </div>\n\n \n <BottomSheet\n v-if=\"filter.active\"\n :show=\"filter.active\"\n @toggle=\"() => filter.active = false\"\n class=\"z-index-10 pos-fixed pos-t-0 pos-r-0\"\n :class=\"{\n 'pos-t-0': filter.active,\n 'pos-t-100': !filter.active\n }\"\n >\n <BlockFilter\n v-model:filter=\"filter\"\n :options=\"filter.options\"\n class=\"h-100 w-100 pd-small bg-light\"\n />\n </BottomSheet> \n </template>\n\n <Dropdown \n v-if=\"date\"\n :label=\"{\n component: ButtonDate,\n props: { date: date }\n }\" \n :class=\"date.class || 'bg-light'\"\n class=\"flex-child flex-child-shrink-0 pd-r-small pd-l-small pd-thin bg-light radius-big\"\n :align=\"search ? 'right' : 'left'\"\n >\n\n <Calendar\n v-model:date=\"date\"\n :locale=\"$i18n.locale\"\n :allowRange=\"true\"\n class=\"radius-semi w-100 o-hidden bg-light\"\n />\n </Dropdown> \n\n <Dropdown \n v-if=\"sort && !sort.hideButton\"\n :label=\"{\n component: ButtonSort,\n props: { order: sort.order },\n class: 'w-1r'\n }\" \n :class=\"sort.class || 'bg-light'\"\n class=\"radius-extra aspect-1x1 h-100\"\n :align=\"search ? 'right' : 'left'\"\n >\n\n <BlockSorting\n v-model:param=\"sort.param\"\n v-model:order=\"sort.order\"\n :options=\"sort.options\"\n class=\"h-100 pd-small radius-semi t-white bg-black\"\n />\n </Dropdown> \n </div>\n\n <TransitionGroup \n\n v-if=\"isLoading\"\n tag=\"ul\" \n name=\"scaleTransition\" \n >\n <SkeletonEvent\n v-if=\"isLoading\"\n v-for=\"i in currentLimit\" \n :key=\"'skeleton-' + i\"\n class=\"mn-b-small radius-big o-hidden d-block\"\n />\n </TransitionGroup>\n\n <TransitionGroup \n tag=\"ul\" \n v-if=\"!isLoading && itemsList.length < 1\"\n name=\"feed\"\n >\n <EmptyState\n v-if=\"!isLoading && itemsList.length < 1\"\n :title=\"states.empty.title\"\n :description=\"states.empty.description\"\n :action=\"states.empty.action\"\n :callback=\"states.empty.callback\"\n class=\"pd-medium mn-b-thin bg-light radius-big\"\n />\n </TransitionGroup>\n\n <TransitionGroup \n tag=\"ul\" \n name=\"feed\"\n :class=\"$attrs.class\"\n >\n <slot\n v-if=\"!isLoading && itemsList.length > 0\"\n :items=\"itemsList\"\n >\n </slot>\n </TransitionGroup>\n\n <button\n v-if=\"showLoadMore && hasMoreItems && itemsList.length > 0 && !isLoadingExtra\"\n @click=\"loadMoreItems\"\n class=\"col-w-100 mn-t-thin w-100 t-black bg-main button\"\n >\n Load More\n </button>\n\n <div v-else key=\"sentinel\" ref=\"sentinel\" class=\"sentinel\"></div> \n\n <div\n\n v-if=\"isLoadingExtra\"\n class=\"col-w-100 w-100 pos-relative\"\n >\n <Loader/>\n </div>\n \n\n</template>\n\n<script setup>\nimport { ref, computed, onMounted, onUnmounted, shallowRef, watch } from 'vue';\n\nimport SkeletonEvent from '@pf/src/modules/icons/skeletons/SkeletonEvent.vue'\n\nimport Loader from '@pf/src/components/Loader/Loader.vue';\nimport EmptyState from '@pf/src/components/EmptyState/EmptyState.vue';\nimport Dropdown from \"@pf/src/components/Dropdown/Dropdown.vue\";\nimport Calendar from '@pf/src/components/DatePicker/Calendar.vue'\nimport BottomSheet from '@pf/src/components/BottomSheet/BottomSheet.vue';\n\nimport BlockSearch from '@pf/src/modules/globals/views/components/blocks/BlockSearch.vue'\nimport BlockSorting from '@pf/src/modules/globals/views/components/blocks/BlockSorting.vue'\nimport BlockFilter from '@pf/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\nimport ButtonSort from '@pf/src/modules/globals/views/components/elements/ButtonSort.vue'\nimport ButtonDate from '@pf/src/modules/globals/views/components/elements/ButtonDate.vue'\n\nimport IconFilter from '@pf/src/modules/icons/navigation/IconFilter.vue'\nimport IconEvents from '@pf/src/modules/icons/entities/IconEvents.vue'\n\nconst search = defineModel('search')\nconst sort = defineModel('sort')\nconst filter = defineModel('filter')\nconst date = defineModel('date')\nconst items = defineModel('items')\n\n// Пропсы\nconst props = defineProps({\n showLoadMore: {\n type: Boolean,\n default: true\n },\n search: {\n type: [Boolean, Object],\n default: false\n },\n states: {\n type: Object,\n default: () => ({\n empty: {\n title: String,\n description: String,\n },\n }),\n },\n store: {\n type: Object,\n default: () => ({\n read: Function,\n state: Object,\n }),\n },\n external: {\n type: Boolean,\n default: false\n },\n options: {\n type: Object,\n default: () => ({\n category: null,\n limit: 20, \n skip: 0 ,\n owner: null,\n creator: null,\n user: null,\n status: null,\n period: null,\n contain: null,\n }),\n },\n});\n \nconst itemsList = shallowRef(items.value || []);\nconst hasMoreItems = ref(false);\n\nlet isLoading = ref(true);\nlet isLoadingExtra = ref(false);\nlet sentinel = ref(null)\n\nlet currentSkip = ref(props.options.skip ? props.options.skip : 0);\nlet currentLimit = ref(props.options.limit ? props.options.limit : 10);\n\n// let sortParam = ref(sort.value?.param || 'createdAt');\n// let sortOrder = ref(sort.value?.order || 'asc');\n\nlet currentSearch = ref('');\n\nfunction debounce(fn, delay) {\n let timeoutId = null;\n return (...args) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => fn(...args), delay);\n };\n}\n\nconst debouncedSearch = debounce((value) => {\n currentSearch.value = value;\n currentSkip.value = 0;\n currentLimit.value = 10;\n fetchItems();\n}, 300);\n\nfunction updateSearch(search) {\n debouncedSearch(search);\n}\n\nconst loadMoreItems = async () => {\n isLoadingExtra.value = true\n\n if (hasMoreItems.value) {\n currentSkip.value += currentLimit.value;\n \n const data = await props.store.read({\n skip: currentSkip.value,\n limit: currentLimit.value,\n search: currentSearch.value,\n dateStart: date.value ? date.value.start : null,\n dateEnd: date.value ? date.value.end : null,\n sortParam: sort.value ? sort.value.param : null,\n sortOrder: sort.value ? sort.value.order : null,\n ...props.options\n });\n\n if (data.length === 0) {\n hasMoreItems.value = false;\n } else if (data.length < currentLimit.value) {\n hasMoreItems.value = false;\n } else {\n hasMoreItems.value = true;\n }\n\n itemsList.value = [...itemsList.value, ...data];\n \n if (items.value) items.value = itemsList.value;\n }\n\n isLoadingExtra.value = false\n};\n\nconst fetchItems = async () => {\n isLoading.value = true;\n const data = await props.store.read({\n skip: currentSkip.value,\n limit: currentLimit.value,\n dateStart: date.value ? date.value.start : null,\n dateEnd: date.value ? date.value.end : null,\n sortParam: sort.value ? sort.value.param : null,\n sortOrder: sort.value ? sort.value.order : null,\n search: currentSearch.value,\n ...props.options\n });\n\n if (data.length === 0) {\n hasMoreItems.value = false;\n } else if (data.length < currentLimit.value) {\n hasMoreItems.value = false;\n } else {\n hasMoreItems.value = true;\n }\n\n itemsList.value = data;\n if (items.value) items.value = itemsList.value;\n isLoading.value = false;\n};\n\nwatch(\n () => [props.external, date.value, sort.value, props.options],\n ([newExternal, newDate, newSort, newOptions], [oldExternal, oldDate, oldSort, oldOptions]) => {\n if (\n newExternal !== oldExternal ||\n newDate !== oldDate ||\n newSort?.order !== oldSort?.order ||\n newSort?.param !== oldSort?.param ||\n JSON.stringify(newOptions) !== JSON.stringify(oldOptions)\n ) {\n currentSkip.value = 0;\n fetchItems();\n }\n },\n { deep: true }\n);\n\nlet observer = null\n\nonMounted(async () => {\n await fetchItems()\n\n if (typeof window !== 'undefined' && !props.showLoadMore) {\n observer = new IntersectionObserver(entries => {\n if (entries.some(entry => entry.isIntersecting)) {\n loadMoreItems()\n }\n })\n\n if (sentinel.value) observer.observe(sentinel.value)\n }\n});\n\nonUnmounted(() => {\n if (observer) {\n observer.disconnect();\n }\n});\n</script>\n\n\n<style>\n.feed-move, /* apply transition to moving elements */\n.feed-enter-active,\n.feed-leave-active {\n transition: all 0.5s ease;\n}\n\n.feed-enter-from,\n.feed-leave-to {\n opacity: 0;\n transform: translateY(30px);\n}\n\n/* ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n.feed-leave-active {\n position: absolute;\n}\n</style>"],"names":["_useModel","shallowRef","ref","search","watch","onMounted","onUnmounted"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Feed.vue.cjs","sources":["../../../../../src/components/Feed/Feed.vue"],"sourcesContent":["<template>\n\n <div v-if=\"search || date || (sort && !sort.hideButton)\" class=\"flex-nowrap flex gap-thin\">\n\n <BlockSearch \n v-if=\"search\"\n :placeholder=\"search.placeholder || 'Search...'\"\n :class=\"search.class || 'bg-light'\"\n @search=\"updateSearch\"\n />\n\n <template\n v-if=\"filter\"\n >\n <div \n :class=\"filter.class || 'bg-light'\"\n class=\"flex-center flex pd-thin bg-light radius-extra aspect-1x1 h-100\"\n >\n <IconFilter @click=\"() => filter.active = !filter.active\" class=\"w-1r h-auto\"/>\n </div>\n\n \n <BottomSheet\n v-if=\"filter.active\"\n :show=\"filter.active\"\n @toggle=\"() => filter.active = false\"\n class=\"z-index-10 pos-fixed pos-t-0 pos-r-0\"\n :class=\"{\n 'pos-t-0': filter.active,\n 'pos-t-100': !filter.active\n }\"\n >\n <BlockFilter\n v-model:filter=\"filter\"\n :options=\"filter.options\"\n class=\"h-100 w-100 pd-small bg-light\"\n />\n </BottomSheet> \n </template>\n\n <Dropdown \n v-if=\"date\"\n :label=\"{\n component: ButtonDate,\n props: { date: date }\n }\" \n :class=\"date.class || 'bg-light'\"\n class=\"flex-child flex-child-shrink-0 pd-r-small pd-l-small pd-thin bg-light radius-big\"\n :align=\"search ? 'right' : 'left'\"\n >\n\n <Calendar\n v-model:date=\"date\"\n :locale=\"$i18n.locale\"\n :allowRange=\"true\"\n class=\"radius-semi w-100 o-hidden bg-light\"\n />\n </Dropdown> \n\n <Dropdown \n v-if=\"sort && !sort.hideButton\"\n :label=\"{\n component: ButtonSort,\n props: { order: sort.order },\n class: 'w-1r'\n }\" \n :class=\"sort.class || 'bg-light'\"\n class=\"radius-extra aspect-1x1 h-100\"\n :align=\"search ? 'right' : 'left'\"\n >\n\n <BlockSorting\n v-model:param=\"sort.param\"\n v-model:order=\"sort.order\"\n :options=\"sort.options\"\n class=\"h-100 pd-small radius-semi t-white bg-black\"\n />\n </Dropdown> \n </div>\n\n <TransitionGroup \n\n v-if=\"isLoading\"\n tag=\"ul\" \n name=\"scaleTransition\" \n >\n <SkeletonEvent\n v-if=\"isLoading\"\n v-for=\"i in currentLimit\" \n :key=\"'skeleton-' + i\"\n class=\"mn-b-small radius-medium o-hidden d-block\"\n />\n </TransitionGroup>\n\n <TransitionGroup \n tag=\"ul\" \n v-if=\"!isLoading && itemsList.length < 1\"\n name=\"feed\"\n >\n <EmptyState\n v-if=\"!isLoading && itemsList.length < 1\"\n :title=\"states.empty.title\"\n :description=\"states.empty.description\"\n :action=\"states.empty.action\"\n :callback=\"states.empty.callback\"\n class=\"pd-medium mn-b-thin bg-light radius-big\"\n />\n </TransitionGroup>\n\n <TransitionGroup \n tag=\"ul\" \n name=\"feed\"\n :class=\"$attrs.class\"\n >\n <slot\n v-if=\"!isLoading && itemsList.length > 0\"\n :items=\"itemsList\"\n >\n </slot>\n </TransitionGroup>\n\n <button\n v-if=\"showLoadMore && hasMoreItems && itemsList.length > 0 && !isLoadingExtra\"\n @click=\"loadMoreItems\"\n class=\"col-w-100 mn-t-thin w-100 t-black bg-main button\"\n >\n Load More\n </button>\n\n <div v-else key=\"sentinel\" ref=\"sentinel\" class=\"sentinel\"></div> \n\n <div\n\n v-if=\"isLoadingExtra\"\n class=\"col-w-100 w-100 pos-relative\"\n >\n <Loader/>\n </div>\n \n\n</template>\n\n<script setup>\nimport { ref, computed, onMounted, onUnmounted, shallowRef, watch } from 'vue';\n\nimport SkeletonEvent from '@pf/src/modules/icons/skeletons/SkeletonEvent.vue'\n\nimport Loader from '@pf/src/components/Loader/Loader.vue';\nimport EmptyState from '@pf/src/components/EmptyState/EmptyState.vue';\nimport Dropdown from \"@pf/src/components/Dropdown/Dropdown.vue\";\nimport Calendar from '@pf/src/components/DatePicker/Calendar.vue'\nimport BottomSheet from '@pf/src/components/BottomSheet/BottomSheet.vue';\n\nimport BlockSearch from '@pf/src/modules/globals/views/components/blocks/BlockSearch.vue'\nimport BlockSorting from '@pf/src/modules/globals/views/components/blocks/BlockSorting.vue'\nimport BlockFilter from '@pf/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\nimport ButtonSort from '@pf/src/modules/globals/views/components/elements/ButtonSort.vue'\nimport ButtonDate from '@pf/src/modules/globals/views/components/elements/ButtonDate.vue'\n\nimport IconFilter from '@pf/src/modules/icons/navigation/IconFilter.vue'\nimport IconEvents from '@pf/src/modules/icons/entities/IconEvents.vue'\n\nconst search = defineModel('search')\nconst sort = defineModel('sort')\nconst filter = defineModel('filter')\nconst date = defineModel('date')\nconst items = defineModel('items')\n\n// Пропсы\nconst props = defineProps({\n showLoadMore: {\n type: Boolean,\n default: true\n },\n search: {\n type: [Boolean, Object],\n default: false\n },\n states: {\n type: Object,\n default: () => ({\n empty: {\n title: String,\n description: String,\n },\n }),\n },\n store: {\n type: Object,\n default: () => ({\n read: Function,\n state: Object,\n }),\n },\n external: {\n type: Boolean,\n default: false\n },\n options: {\n type: Object,\n default: () => ({\n category: null,\n limit: 20, \n skip: 0 ,\n owner: null,\n creator: null,\n user: null,\n status: null,\n period: null,\n contain: null,\n }),\n },\n});\n \nconst itemsList = shallowRef(items.value || []);\nconst hasMoreItems = ref(false);\n\nlet isLoading = ref(true);\nlet isLoadingExtra = ref(false);\nlet sentinel = ref(null)\n\nlet currentSkip = ref(props.options.skip ? props.options.skip : 0);\nlet currentLimit = ref(props.options.limit ? props.options.limit : 10);\n\n// let sortParam = ref(sort.value?.param || 'createdAt');\n// let sortOrder = ref(sort.value?.order || 'asc');\n\nlet currentSearch = ref('');\n\nfunction debounce(fn, delay) {\n let timeoutId = null;\n return (...args) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => fn(...args), delay);\n };\n}\n\nconst debouncedSearch = debounce((value) => {\n currentSearch.value = value;\n currentSkip.value = 0;\n currentLimit.value = 10;\n fetchItems();\n}, 300);\n\nfunction updateSearch(search) {\n debouncedSearch(search);\n}\n\nconst loadMoreItems = async () => {\n isLoadingExtra.value = true\n\n if (hasMoreItems.value) {\n currentSkip.value += currentLimit.value;\n \n const data = await props.store.read({\n skip: currentSkip.value,\n limit: currentLimit.value,\n search: currentSearch.value,\n dateStart: date.value ? date.value.start : null,\n dateEnd: date.value ? date.value.end : null,\n sortParam: sort.value ? sort.value.param : null,\n sortOrder: sort.value ? sort.value.order : null,\n ...props.options\n });\n\n if (data.length === 0) {\n hasMoreItems.value = false;\n } else if (data.length < currentLimit.value) {\n hasMoreItems.value = false;\n } else {\n hasMoreItems.value = true;\n }\n\n itemsList.value = [...itemsList.value, ...data];\n \n if (items.value) items.value = itemsList.value;\n }\n\n isLoadingExtra.value = false\n};\n\nconst fetchItems = async () => {\n isLoading.value = true;\n const data = await props.store.read({\n skip: currentSkip.value,\n limit: currentLimit.value,\n dateStart: date.value ? date.value.start : null,\n dateEnd: date.value ? date.value.end : null,\n sortParam: sort.value ? sort.value.param : null,\n sortOrder: sort.value ? sort.value.order : null,\n search: currentSearch.value,\n ...props.options\n });\n\n if (data.length === 0) {\n hasMoreItems.value = false;\n } else if (data.length < currentLimit.value) {\n hasMoreItems.value = false;\n } else {\n hasMoreItems.value = true;\n }\n\n itemsList.value = data;\n if (items.value) items.value = itemsList.value;\n isLoading.value = false;\n};\n\nwatch(\n () => [props.external, date.value, sort.value, props.options],\n ([newExternal, newDate, newSort, newOptions], [oldExternal, oldDate, oldSort, oldOptions]) => {\n if (\n newExternal !== oldExternal ||\n newDate !== oldDate ||\n newSort?.order !== oldSort?.order ||\n newSort?.param !== oldSort?.param ||\n JSON.stringify(newOptions) !== JSON.stringify(oldOptions)\n ) {\n currentSkip.value = 0;\n fetchItems();\n }\n },\n { deep: true }\n);\n\nlet observer = null\n\nonMounted(async () => {\n await fetchItems()\n\n if (typeof window !== 'undefined' && !props.showLoadMore) {\n observer = new IntersectionObserver(entries => {\n if (entries.some(entry => entry.isIntersecting)) {\n loadMoreItems()\n }\n })\n\n if (sentinel.value) observer.observe(sentinel.value)\n }\n});\n\nonUnmounted(() => {\n if (observer) {\n observer.disconnect();\n }\n});\n</script>\n\n\n<style>\n.feed-move, /* apply transition to moving elements */\n.feed-enter-active,\n.feed-leave-active {\n transition: all 0.5s ease;\n}\n\n.feed-enter-from,\n.feed-leave-to {\n opacity: 0;\n transform: translateY(30px);\n}\n\n/* ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n.feed-leave-active {\n position: absolute;\n}\n</style>"],"names":["_useModel","shallowRef","ref","search","watch","onMounted","onUnmounted"],"mappings":"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"}
|
@@ -275,7 +275,7 @@ const _sfc_main = {
|
|
275
275
|
unref(isLoading) ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(unref(currentLimit), (i) => {
|
276
276
|
return openBlock(), createBlock(SkeletonEvent, {
|
277
277
|
key: "skeleton-" + i,
|
278
|
-
class: "mn-b-small radius-
|
278
|
+
class: "mn-b-small radius-medium o-hidden d-block"
|
279
279
|
});
|
280
280
|
}), 128)) : createCommentVNode("", true)
|
281
281
|
]),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Feed.vue.js","sources":["../../../../../src/components/Feed/Feed.vue"],"sourcesContent":["<template>\n\n <div v-if=\"search || date || (sort && !sort.hideButton)\" class=\"flex-nowrap flex gap-thin\">\n\n <BlockSearch \n v-if=\"search\"\n :placeholder=\"search.placeholder || 'Search...'\"\n :class=\"search.class || 'bg-light'\"\n @search=\"updateSearch\"\n />\n\n <template\n v-if=\"filter\"\n >\n <div \n :class=\"filter.class || 'bg-light'\"\n class=\"flex-center flex pd-thin bg-light radius-extra aspect-1x1 h-100\"\n >\n <IconFilter @click=\"() => filter.active = !filter.active\" class=\"w-1r h-auto\"/>\n </div>\n\n \n <BottomSheet\n v-if=\"filter.active\"\n :show=\"filter.active\"\n @toggle=\"() => filter.active = false\"\n class=\"z-index-10 pos-fixed pos-t-0 pos-r-0\"\n :class=\"{\n 'pos-t-0': filter.active,\n 'pos-t-100': !filter.active\n }\"\n >\n <BlockFilter\n v-model:filter=\"filter\"\n :options=\"filter.options\"\n class=\"h-100 w-100 pd-small bg-light\"\n />\n </BottomSheet> \n </template>\n\n <Dropdown \n v-if=\"date\"\n :label=\"{\n component: ButtonDate,\n props: { date: date }\n }\" \n :class=\"date.class || 'bg-light'\"\n class=\"flex-child flex-child-shrink-0 pd-r-small pd-l-small pd-thin bg-light radius-big\"\n :align=\"search ? 'right' : 'left'\"\n >\n\n <Calendar\n v-model:date=\"date\"\n :locale=\"$i18n.locale\"\n :allowRange=\"true\"\n class=\"radius-semi w-100 o-hidden bg-light\"\n />\n </Dropdown> \n\n <Dropdown \n v-if=\"sort && !sort.hideButton\"\n :label=\"{\n component: ButtonSort,\n props: { order: sort.order },\n class: 'w-1r'\n }\" \n :class=\"sort.class || 'bg-light'\"\n class=\"radius-extra aspect-1x1 h-100\"\n :align=\"search ? 'right' : 'left'\"\n >\n\n <BlockSorting\n v-model:param=\"sort.param\"\n v-model:order=\"sort.order\"\n :options=\"sort.options\"\n class=\"h-100 pd-small radius-semi t-white bg-black\"\n />\n </Dropdown> \n </div>\n\n <TransitionGroup \n\n v-if=\"isLoading\"\n tag=\"ul\" \n name=\"scaleTransition\" \n >\n <SkeletonEvent\n v-if=\"isLoading\"\n v-for=\"i in currentLimit\" \n :key=\"'skeleton-' + i\"\n class=\"mn-b-small radius-big o-hidden d-block\"\n />\n </TransitionGroup>\n\n <TransitionGroup \n tag=\"ul\" \n v-if=\"!isLoading && itemsList.length < 1\"\n name=\"feed\"\n >\n <EmptyState\n v-if=\"!isLoading && itemsList.length < 1\"\n :title=\"states.empty.title\"\n :description=\"states.empty.description\"\n :action=\"states.empty.action\"\n :callback=\"states.empty.callback\"\n class=\"pd-medium mn-b-thin bg-light radius-big\"\n />\n </TransitionGroup>\n\n <TransitionGroup \n tag=\"ul\" \n name=\"feed\"\n :class=\"$attrs.class\"\n >\n <slot\n v-if=\"!isLoading && itemsList.length > 0\"\n :items=\"itemsList\"\n >\n </slot>\n </TransitionGroup>\n\n <button\n v-if=\"showLoadMore && hasMoreItems && itemsList.length > 0 && !isLoadingExtra\"\n @click=\"loadMoreItems\"\n class=\"col-w-100 mn-t-thin w-100 t-black bg-main button\"\n >\n Load More\n </button>\n\n <div v-else key=\"sentinel\" ref=\"sentinel\" class=\"sentinel\"></div> \n\n <div\n\n v-if=\"isLoadingExtra\"\n class=\"col-w-100 w-100 pos-relative\"\n >\n <Loader/>\n </div>\n \n\n</template>\n\n<script setup>\nimport { ref, computed, onMounted, onUnmounted, shallowRef, watch } from 'vue';\n\nimport SkeletonEvent from '@pf/src/modules/icons/skeletons/SkeletonEvent.vue'\n\nimport Loader from '@pf/src/components/Loader/Loader.vue';\nimport EmptyState from '@pf/src/components/EmptyState/EmptyState.vue';\nimport Dropdown from \"@pf/src/components/Dropdown/Dropdown.vue\";\nimport Calendar from '@pf/src/components/DatePicker/Calendar.vue'\nimport BottomSheet from '@pf/src/components/BottomSheet/BottomSheet.vue';\n\nimport BlockSearch from '@pf/src/modules/globals/views/components/blocks/BlockSearch.vue'\nimport BlockSorting from '@pf/src/modules/globals/views/components/blocks/BlockSorting.vue'\nimport BlockFilter from '@pf/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\nimport ButtonSort from '@pf/src/modules/globals/views/components/elements/ButtonSort.vue'\nimport ButtonDate from '@pf/src/modules/globals/views/components/elements/ButtonDate.vue'\n\nimport IconFilter from '@pf/src/modules/icons/navigation/IconFilter.vue'\nimport IconEvents from '@pf/src/modules/icons/entities/IconEvents.vue'\n\nconst search = defineModel('search')\nconst sort = defineModel('sort')\nconst filter = defineModel('filter')\nconst date = defineModel('date')\nconst items = defineModel('items')\n\n// Пропсы\nconst props = defineProps({\n showLoadMore: {\n type: Boolean,\n default: true\n },\n search: {\n type: [Boolean, Object],\n default: false\n },\n states: {\n type: Object,\n default: () => ({\n empty: {\n title: String,\n description: String,\n },\n }),\n },\n store: {\n type: Object,\n default: () => ({\n read: Function,\n state: Object,\n }),\n },\n external: {\n type: Boolean,\n default: false\n },\n options: {\n type: Object,\n default: () => ({\n category: null,\n limit: 20, \n skip: 0 ,\n owner: null,\n creator: null,\n user: null,\n status: null,\n period: null,\n contain: null,\n }),\n },\n});\n \nconst itemsList = shallowRef(items.value || []);\nconst hasMoreItems = ref(false);\n\nlet isLoading = ref(true);\nlet isLoadingExtra = ref(false);\nlet sentinel = ref(null)\n\nlet currentSkip = ref(props.options.skip ? props.options.skip : 0);\nlet currentLimit = ref(props.options.limit ? props.options.limit : 10);\n\n// let sortParam = ref(sort.value?.param || 'createdAt');\n// let sortOrder = ref(sort.value?.order || 'asc');\n\nlet currentSearch = ref('');\n\nfunction debounce(fn, delay) {\n let timeoutId = null;\n return (...args) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => fn(...args), delay);\n };\n}\n\nconst debouncedSearch = debounce((value) => {\n currentSearch.value = value;\n currentSkip.value = 0;\n currentLimit.value = 10;\n fetchItems();\n}, 300);\n\nfunction updateSearch(search) {\n debouncedSearch(search);\n}\n\nconst loadMoreItems = async () => {\n isLoadingExtra.value = true\n\n if (hasMoreItems.value) {\n currentSkip.value += currentLimit.value;\n \n const data = await props.store.read({\n skip: currentSkip.value,\n limit: currentLimit.value,\n search: currentSearch.value,\n dateStart: date.value ? date.value.start : null,\n dateEnd: date.value ? date.value.end : null,\n sortParam: sort.value ? sort.value.param : null,\n sortOrder: sort.value ? sort.value.order : null,\n ...props.options\n });\n\n if (data.length === 0) {\n hasMoreItems.value = false;\n } else if (data.length < currentLimit.value) {\n hasMoreItems.value = false;\n } else {\n hasMoreItems.value = true;\n }\n\n itemsList.value = [...itemsList.value, ...data];\n \n if (items.value) items.value = itemsList.value;\n }\n\n isLoadingExtra.value = false\n};\n\nconst fetchItems = async () => {\n isLoading.value = true;\n const data = await props.store.read({\n skip: currentSkip.value,\n limit: currentLimit.value,\n dateStart: date.value ? date.value.start : null,\n dateEnd: date.value ? date.value.end : null,\n sortParam: sort.value ? sort.value.param : null,\n sortOrder: sort.value ? sort.value.order : null,\n search: currentSearch.value,\n ...props.options\n });\n\n if (data.length === 0) {\n hasMoreItems.value = false;\n } else if (data.length < currentLimit.value) {\n hasMoreItems.value = false;\n } else {\n hasMoreItems.value = true;\n }\n\n itemsList.value = data;\n if (items.value) items.value = itemsList.value;\n isLoading.value = false;\n};\n\nwatch(\n () => [props.external, date.value, sort.value, props.options],\n ([newExternal, newDate, newSort, newOptions], [oldExternal, oldDate, oldSort, oldOptions]) => {\n if (\n newExternal !== oldExternal ||\n newDate !== oldDate ||\n newSort?.order !== oldSort?.order ||\n newSort?.param !== oldSort?.param ||\n JSON.stringify(newOptions) !== JSON.stringify(oldOptions)\n ) {\n currentSkip.value = 0;\n fetchItems();\n }\n },\n { deep: true }\n);\n\nlet observer = null\n\nonMounted(async () => {\n await fetchItems()\n\n if (typeof window !== 'undefined' && !props.showLoadMore) {\n observer = new IntersectionObserver(entries => {\n if (entries.some(entry => entry.isIntersecting)) {\n loadMoreItems()\n }\n })\n\n if (sentinel.value) observer.observe(sentinel.value)\n }\n});\n\nonUnmounted(() => {\n if (observer) {\n observer.disconnect();\n }\n});\n</script>\n\n\n<style>\n.feed-move, /* apply transition to moving elements */\n.feed-enter-active,\n.feed-leave-active {\n transition: all 0.5s ease;\n}\n\n.feed-enter-from,\n.feed-leave-to {\n opacity: 0;\n transform: translateY(30px);\n}\n\n/* ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n.feed-leave-active {\n position: absolute;\n}\n</style>"],"names":["_useModel","search"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Feed.vue.js","sources":["../../../../../src/components/Feed/Feed.vue"],"sourcesContent":["<template>\n\n <div v-if=\"search || date || (sort && !sort.hideButton)\" class=\"flex-nowrap flex gap-thin\">\n\n <BlockSearch \n v-if=\"search\"\n :placeholder=\"search.placeholder || 'Search...'\"\n :class=\"search.class || 'bg-light'\"\n @search=\"updateSearch\"\n />\n\n <template\n v-if=\"filter\"\n >\n <div \n :class=\"filter.class || 'bg-light'\"\n class=\"flex-center flex pd-thin bg-light radius-extra aspect-1x1 h-100\"\n >\n <IconFilter @click=\"() => filter.active = !filter.active\" class=\"w-1r h-auto\"/>\n </div>\n\n \n <BottomSheet\n v-if=\"filter.active\"\n :show=\"filter.active\"\n @toggle=\"() => filter.active = false\"\n class=\"z-index-10 pos-fixed pos-t-0 pos-r-0\"\n :class=\"{\n 'pos-t-0': filter.active,\n 'pos-t-100': !filter.active\n }\"\n >\n <BlockFilter\n v-model:filter=\"filter\"\n :options=\"filter.options\"\n class=\"h-100 w-100 pd-small bg-light\"\n />\n </BottomSheet> \n </template>\n\n <Dropdown \n v-if=\"date\"\n :label=\"{\n component: ButtonDate,\n props: { date: date }\n }\" \n :class=\"date.class || 'bg-light'\"\n class=\"flex-child flex-child-shrink-0 pd-r-small pd-l-small pd-thin bg-light radius-big\"\n :align=\"search ? 'right' : 'left'\"\n >\n\n <Calendar\n v-model:date=\"date\"\n :locale=\"$i18n.locale\"\n :allowRange=\"true\"\n class=\"radius-semi w-100 o-hidden bg-light\"\n />\n </Dropdown> \n\n <Dropdown \n v-if=\"sort && !sort.hideButton\"\n :label=\"{\n component: ButtonSort,\n props: { order: sort.order },\n class: 'w-1r'\n }\" \n :class=\"sort.class || 'bg-light'\"\n class=\"radius-extra aspect-1x1 h-100\"\n :align=\"search ? 'right' : 'left'\"\n >\n\n <BlockSorting\n v-model:param=\"sort.param\"\n v-model:order=\"sort.order\"\n :options=\"sort.options\"\n class=\"h-100 pd-small radius-semi t-white bg-black\"\n />\n </Dropdown> \n </div>\n\n <TransitionGroup \n\n v-if=\"isLoading\"\n tag=\"ul\" \n name=\"scaleTransition\" \n >\n <SkeletonEvent\n v-if=\"isLoading\"\n v-for=\"i in currentLimit\" \n :key=\"'skeleton-' + i\"\n class=\"mn-b-small radius-medium o-hidden d-block\"\n />\n </TransitionGroup>\n\n <TransitionGroup \n tag=\"ul\" \n v-if=\"!isLoading && itemsList.length < 1\"\n name=\"feed\"\n >\n <EmptyState\n v-if=\"!isLoading && itemsList.length < 1\"\n :title=\"states.empty.title\"\n :description=\"states.empty.description\"\n :action=\"states.empty.action\"\n :callback=\"states.empty.callback\"\n class=\"pd-medium mn-b-thin bg-light radius-big\"\n />\n </TransitionGroup>\n\n <TransitionGroup \n tag=\"ul\" \n name=\"feed\"\n :class=\"$attrs.class\"\n >\n <slot\n v-if=\"!isLoading && itemsList.length > 0\"\n :items=\"itemsList\"\n >\n </slot>\n </TransitionGroup>\n\n <button\n v-if=\"showLoadMore && hasMoreItems && itemsList.length > 0 && !isLoadingExtra\"\n @click=\"loadMoreItems\"\n class=\"col-w-100 mn-t-thin w-100 t-black bg-main button\"\n >\n Load More\n </button>\n\n <div v-else key=\"sentinel\" ref=\"sentinel\" class=\"sentinel\"></div> \n\n <div\n\n v-if=\"isLoadingExtra\"\n class=\"col-w-100 w-100 pos-relative\"\n >\n <Loader/>\n </div>\n \n\n</template>\n\n<script setup>\nimport { ref, computed, onMounted, onUnmounted, shallowRef, watch } from 'vue';\n\nimport SkeletonEvent from '@pf/src/modules/icons/skeletons/SkeletonEvent.vue'\n\nimport Loader from '@pf/src/components/Loader/Loader.vue';\nimport EmptyState from '@pf/src/components/EmptyState/EmptyState.vue';\nimport Dropdown from \"@pf/src/components/Dropdown/Dropdown.vue\";\nimport Calendar from '@pf/src/components/DatePicker/Calendar.vue'\nimport BottomSheet from '@pf/src/components/BottomSheet/BottomSheet.vue';\n\nimport BlockSearch from '@pf/src/modules/globals/views/components/blocks/BlockSearch.vue'\nimport BlockSorting from '@pf/src/modules/globals/views/components/blocks/BlockSorting.vue'\nimport BlockFilter from '@pf/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\nimport ButtonSort from '@pf/src/modules/globals/views/components/elements/ButtonSort.vue'\nimport ButtonDate from '@pf/src/modules/globals/views/components/elements/ButtonDate.vue'\n\nimport IconFilter from '@pf/src/modules/icons/navigation/IconFilter.vue'\nimport IconEvents from '@pf/src/modules/icons/entities/IconEvents.vue'\n\nconst search = defineModel('search')\nconst sort = defineModel('sort')\nconst filter = defineModel('filter')\nconst date = defineModel('date')\nconst items = defineModel('items')\n\n// Пропсы\nconst props = defineProps({\n showLoadMore: {\n type: Boolean,\n default: true\n },\n search: {\n type: [Boolean, Object],\n default: false\n },\n states: {\n type: Object,\n default: () => ({\n empty: {\n title: String,\n description: String,\n },\n }),\n },\n store: {\n type: Object,\n default: () => ({\n read: Function,\n state: Object,\n }),\n },\n external: {\n type: Boolean,\n default: false\n },\n options: {\n type: Object,\n default: () => ({\n category: null,\n limit: 20, \n skip: 0 ,\n owner: null,\n creator: null,\n user: null,\n status: null,\n period: null,\n contain: null,\n }),\n },\n});\n \nconst itemsList = shallowRef(items.value || []);\nconst hasMoreItems = ref(false);\n\nlet isLoading = ref(true);\nlet isLoadingExtra = ref(false);\nlet sentinel = ref(null)\n\nlet currentSkip = ref(props.options.skip ? props.options.skip : 0);\nlet currentLimit = ref(props.options.limit ? props.options.limit : 10);\n\n// let sortParam = ref(sort.value?.param || 'createdAt');\n// let sortOrder = ref(sort.value?.order || 'asc');\n\nlet currentSearch = ref('');\n\nfunction debounce(fn, delay) {\n let timeoutId = null;\n return (...args) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => fn(...args), delay);\n };\n}\n\nconst debouncedSearch = debounce((value) => {\n currentSearch.value = value;\n currentSkip.value = 0;\n currentLimit.value = 10;\n fetchItems();\n}, 300);\n\nfunction updateSearch(search) {\n debouncedSearch(search);\n}\n\nconst loadMoreItems = async () => {\n isLoadingExtra.value = true\n\n if (hasMoreItems.value) {\n currentSkip.value += currentLimit.value;\n \n const data = await props.store.read({\n skip: currentSkip.value,\n limit: currentLimit.value,\n search: currentSearch.value,\n dateStart: date.value ? date.value.start : null,\n dateEnd: date.value ? date.value.end : null,\n sortParam: sort.value ? sort.value.param : null,\n sortOrder: sort.value ? sort.value.order : null,\n ...props.options\n });\n\n if (data.length === 0) {\n hasMoreItems.value = false;\n } else if (data.length < currentLimit.value) {\n hasMoreItems.value = false;\n } else {\n hasMoreItems.value = true;\n }\n\n itemsList.value = [...itemsList.value, ...data];\n \n if (items.value) items.value = itemsList.value;\n }\n\n isLoadingExtra.value = false\n};\n\nconst fetchItems = async () => {\n isLoading.value = true;\n const data = await props.store.read({\n skip: currentSkip.value,\n limit: currentLimit.value,\n dateStart: date.value ? date.value.start : null,\n dateEnd: date.value ? date.value.end : null,\n sortParam: sort.value ? sort.value.param : null,\n sortOrder: sort.value ? sort.value.order : null,\n search: currentSearch.value,\n ...props.options\n });\n\n if (data.length === 0) {\n hasMoreItems.value = false;\n } else if (data.length < currentLimit.value) {\n hasMoreItems.value = false;\n } else {\n hasMoreItems.value = true;\n }\n\n itemsList.value = data;\n if (items.value) items.value = itemsList.value;\n isLoading.value = false;\n};\n\nwatch(\n () => [props.external, date.value, sort.value, props.options],\n ([newExternal, newDate, newSort, newOptions], [oldExternal, oldDate, oldSort, oldOptions]) => {\n if (\n newExternal !== oldExternal ||\n newDate !== oldDate ||\n newSort?.order !== oldSort?.order ||\n newSort?.param !== oldSort?.param ||\n JSON.stringify(newOptions) !== JSON.stringify(oldOptions)\n ) {\n currentSkip.value = 0;\n fetchItems();\n }\n },\n { deep: true }\n);\n\nlet observer = null\n\nonMounted(async () => {\n await fetchItems()\n\n if (typeof window !== 'undefined' && !props.showLoadMore) {\n observer = new IntersectionObserver(entries => {\n if (entries.some(entry => entry.isIntersecting)) {\n loadMoreItems()\n }\n })\n\n if (sentinel.value) observer.observe(sentinel.value)\n }\n});\n\nonUnmounted(() => {\n if (observer) {\n observer.disconnect();\n }\n});\n</script>\n\n\n<style>\n.feed-move, /* apply transition to moving elements */\n.feed-enter-active,\n.feed-leave-active {\n transition: all 0.5s ease;\n}\n\n.feed-enter-from,\n.feed-leave-to {\n opacity: 0;\n transform: translateY(30px);\n}\n\n/* ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n.feed-leave-active {\n position: absolute;\n}\n</style>"],"names":["_useModel","search"],"mappings":"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"}
|
@@ -7,14 +7,15 @@ const _hoisted_1 = {
|
|
7
7
|
key: 0,
|
8
8
|
class: "t-transp mn-r-small"
|
9
9
|
};
|
10
|
-
const _hoisted_2 = { class: "
|
11
|
-
const _hoisted_3 =
|
12
|
-
const _hoisted_4 = ["value", "placeholder", "tabindex", "disabled"];
|
13
|
-
const _hoisted_5 =
|
10
|
+
const _hoisted_2 = { class: "t-nowrap" };
|
11
|
+
const _hoisted_3 = { class: "w-100" };
|
12
|
+
const _hoisted_4 = ["type", "value", "placeholder", "tabindex", "disabled"];
|
13
|
+
const _hoisted_5 = ["value", "placeholder", "tabindex", "disabled"];
|
14
|
+
const _hoisted_6 = {
|
14
15
|
key: 1,
|
15
16
|
class: "t-transp mn-l-small"
|
16
17
|
};
|
17
|
-
const
|
18
|
+
const _hoisted_7 = {
|
18
19
|
key: 0,
|
19
20
|
class: "mn-t-thin mn-b-thin mn-b-thin invalid-feedback"
|
20
21
|
};
|
@@ -72,9 +73,9 @@ const _sfc_main = {
|
|
72
73
|
], "flex-center flex-nowrap flex"])
|
73
74
|
}, [
|
74
75
|
__props.label ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
|
75
|
-
vue.createElementVNode("span",
|
76
|
+
vue.createElementVNode("span", _hoisted_2, vue.toDisplayString(__props.label), 1)
|
76
77
|
])) : vue.createCommentVNode("", true),
|
77
|
-
vue.createElementVNode("div",
|
78
|
+
vue.createElementVNode("div", _hoisted_3, [
|
78
79
|
__props.type !== "textarea" ? (vue.openBlock(), vue.createElementBlock("input", {
|
79
80
|
key: 0,
|
80
81
|
onInput: _cache[0] || (_cache[0] = (event) => text.value = emit("update:field", event.target.value)),
|
@@ -86,7 +87,7 @@ const _sfc_main = {
|
|
86
87
|
placeholder: __props.placeholder,
|
87
88
|
tabindex: __props.tabindex,
|
88
89
|
disabled: __props.disabled
|
89
|
-
}, null, 40,
|
90
|
+
}, null, 40, _hoisted_4)) : (vue.openBlock(), vue.createElementBlock("textarea", {
|
90
91
|
key: 1,
|
91
92
|
ref_key: "textarea",
|
92
93
|
ref: textarea,
|
@@ -99,16 +100,16 @@ const _sfc_main = {
|
|
99
100
|
placeholder: __props.placeholder,
|
100
101
|
tabindex: __props.tabindex,
|
101
102
|
disabled: __props.disabled
|
102
|
-
}, null, 40,
|
103
|
+
}, null, 40, _hoisted_5))
|
103
104
|
]),
|
104
105
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true),
|
105
|
-
__props.symbol ? (vue.openBlock(), vue.createElementBlock("div",
|
106
|
+
__props.symbol ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6, [
|
106
107
|
vue.createElementVNode("span", null, vue.toDisplayString(__props.symbol), 1)
|
107
108
|
])) : vue.createCommentVNode("", true)
|
108
109
|
], 2),
|
109
110
|
vue.createVNode(vue.Transition, { name: "fade" }, {
|
110
111
|
default: vue.withCtx(() => [
|
111
|
-
__props.validation ? (vue.openBlock(), vue.createElementBlock("div",
|
112
|
+
__props.validation ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_7, " * " + vue.toDisplayString(__props.validation.message), 1)) : vue.createCommentVNode("", true)
|
112
113
|
]),
|
113
114
|
_: 1
|
114
115
|
})
|
@@ -116,6 +117,6 @@ const _sfc_main = {
|
|
116
117
|
};
|
117
118
|
}
|
118
119
|
};
|
119
|
-
const Field = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-
|
120
|
+
const Field = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-dd79a28b"]]);
|
120
121
|
exports.default = Field;
|
121
122
|
//# sourceMappingURL=Field.vue2.cjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Field.vue2.cjs","sources":["../../../../../src/components/Field/Field.vue"],"sourcesContent":["<script setup>\n import { ref, computed, onUpdated, onMounted, nextTick } from 'vue'\n\n const emit = defineEmits(['update:field', 'focus', 'blur']);\n\n const props = defineProps({\n label: null,\n symbol: null,\n type: 'text',\n placeholder: 'Enter something here',\n field: null,\n value: null,\n validation: false,\n disabled: null,\n tabindex: -1\n });\n\n if (props.value) {\n emit('update:field', props.value)\n }\n\n const textarea = ref(null);\n\n function resize() {\n if (textarea.value) textarea.value.style.height = \"1rem\";\n if (textarea.value) textarea.value.style.height = textarea.value?.scrollHeight + \"px\";\n }\n\n\n onUpdated(() => {\n if (props.type === 'textarea') nextTick(() => { { focus()} })\n resize()\n });\n\n onMounted(() => {\n if (props.type === 'textarea') nextTick(() => { { focus()} })\n resize()\n });\n\n const text = ref(props.field);\n</script>\n\n<template>\n <div \n :class=\"[\n $attrs.class, \n { \n 'bg-fourth-nano': validation \n }\n ]\" \n class=\"flex-center flex-nowrap flex\"\n >\n <div \n v-if=\"label\" \n class=\"t-transp mn-r-small\"\n >\n <span>\n {{label}}\n </span>\n </div>\n\n <div class=\"w-100\">\n <input \n v-if=\"type !== 'textarea'\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n :type=\"type\"\n class=\"w-100\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n />\n <textarea \n v-else\n ref=\"textarea\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n class=\"w-100\"\n style=\"resize: vertical;\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n />\n </div> \n\n <slot></slot>\n\n <div \n v-if=\"symbol\" \n class=\"t-transp mn-l-small\"\n >\n <span>\n {{symbol}}\n </span>\n </div>\n </div>\n\n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n\n<style lang=\"scss\" scoped>\n input, textarea, span {\n line-height: 1;\n color: inherit;\n }\n</style>"],"names":["ref","onUpdated","nextTick","onMounted"],"mappings":"
|
1
|
+
{"version":3,"file":"Field.vue2.cjs","sources":["../../../../../src/components/Field/Field.vue"],"sourcesContent":["<script setup>\n import { ref, computed, onUpdated, onMounted, nextTick } from 'vue'\n\n const emit = defineEmits(['update:field', 'focus', 'blur']);\n\n const props = defineProps({\n label: null,\n symbol: null,\n type: 'text',\n placeholder: 'Enter something here',\n field: null,\n value: null,\n validation: false,\n disabled: null,\n tabindex: -1\n });\n\n if (props.value) {\n emit('update:field', props.value)\n }\n\n const textarea = ref(null);\n\n function resize() {\n if (textarea.value) textarea.value.style.height = \"1rem\";\n if (textarea.value) textarea.value.style.height = textarea.value?.scrollHeight + \"px\";\n }\n\n\n onUpdated(() => {\n if (props.type === 'textarea') nextTick(() => { { focus()} })\n resize()\n });\n\n onMounted(() => {\n if (props.type === 'textarea') nextTick(() => { { focus()} })\n resize()\n });\n\n const text = ref(props.field);\n</script>\n\n<template>\n <div \n :class=\"[\n $attrs.class, \n { \n 'bg-fourth-nano': validation \n }\n ]\" \n class=\"flex-center flex-nowrap flex\"\n >\n <div \n v-if=\"label\" \n class=\"t-transp mn-r-small\"\n >\n <span class=\"t-nowrap\">\n {{label}}\n </span>\n </div>\n\n <div class=\"w-100\">\n <input \n v-if=\"type !== 'textarea'\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n :type=\"type\"\n class=\"w-100\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n />\n <textarea \n v-else\n ref=\"textarea\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n class=\"w-100\"\n style=\"resize: vertical;\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n />\n </div> \n\n <slot></slot>\n\n <div \n v-if=\"symbol\" \n class=\"t-transp mn-l-small\"\n >\n <span>\n {{symbol}}\n </span>\n </div>\n </div>\n\n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n\n<style lang=\"scss\" scoped>\n input, textarea, span {\n line-height: 1;\n color: inherit;\n }\n</style>"],"names":["ref","onUpdated","nextTick","onMounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGE,UAAM,OAAO;AAEb,UAAM,QAAQ;AAYd,QAAI,MAAM,OAAO;AACf,WAAK,gBAAgB,MAAM,KAAK;AAAA,IACjC;AAED,UAAM,WAAWA,QAAI,IAAI;AAEzB,aAAS,SAAS;;AAChB,UAAI,SAAS,MAAO,UAAS,MAAM,MAAM,SAAS;AAClD,UAAI,SAAS,MAAO,UAAS,MAAM,MAAM,WAAS,cAAS,UAAT,mBAAgB,gBAAe;AAAA,IAClF;AAGDC,QAAAA,UAAU,MAAM;AACf,UAAI,MAAM,SAAS,WAAYC,KAAAA,SAAS,MAAM;AAAG;AAAE,gBAAO;AAAA,QAAA;AAAA,OAAG;AAC5D,aAAQ;AAAA,IACZ,CAAG;AAEDC,QAAAA,UAAU,MAAM;AACd,UAAI,MAAM,SAAS,WAAYD,KAAAA,SAAS,MAAM;AAAG;AAAE,gBAAO;AAAA,QAAA;AAAA,OAAG;AAC7D,aAAQ;AAAA,IACZ,CAAG;AAED,UAAM,OAAOF,IAAAA,IAAI,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -5,14 +5,15 @@ const _hoisted_1 = {
|
|
5
5
|
key: 0,
|
6
6
|
class: "t-transp mn-r-small"
|
7
7
|
};
|
8
|
-
const _hoisted_2 = { class: "
|
9
|
-
const _hoisted_3 =
|
10
|
-
const _hoisted_4 = ["value", "placeholder", "tabindex", "disabled"];
|
11
|
-
const _hoisted_5 =
|
8
|
+
const _hoisted_2 = { class: "t-nowrap" };
|
9
|
+
const _hoisted_3 = { class: "w-100" };
|
10
|
+
const _hoisted_4 = ["type", "value", "placeholder", "tabindex", "disabled"];
|
11
|
+
const _hoisted_5 = ["value", "placeholder", "tabindex", "disabled"];
|
12
|
+
const _hoisted_6 = {
|
12
13
|
key: 1,
|
13
14
|
class: "t-transp mn-l-small"
|
14
15
|
};
|
15
|
-
const
|
16
|
+
const _hoisted_7 = {
|
16
17
|
key: 0,
|
17
18
|
class: "mn-t-thin mn-b-thin mn-b-thin invalid-feedback"
|
18
19
|
};
|
@@ -70,9 +71,9 @@ const _sfc_main = {
|
|
70
71
|
], "flex-center flex-nowrap flex"])
|
71
72
|
}, [
|
72
73
|
__props.label ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
73
|
-
createElementVNode("span",
|
74
|
+
createElementVNode("span", _hoisted_2, toDisplayString(__props.label), 1)
|
74
75
|
])) : createCommentVNode("", true),
|
75
|
-
createElementVNode("div",
|
76
|
+
createElementVNode("div", _hoisted_3, [
|
76
77
|
__props.type !== "textarea" ? (openBlock(), createElementBlock("input", {
|
77
78
|
key: 0,
|
78
79
|
onInput: _cache[0] || (_cache[0] = (event) => text.value = emit("update:field", event.target.value)),
|
@@ -84,7 +85,7 @@ const _sfc_main = {
|
|
84
85
|
placeholder: __props.placeholder,
|
85
86
|
tabindex: __props.tabindex,
|
86
87
|
disabled: __props.disabled
|
87
|
-
}, null, 40,
|
88
|
+
}, null, 40, _hoisted_4)) : (openBlock(), createElementBlock("textarea", {
|
88
89
|
key: 1,
|
89
90
|
ref_key: "textarea",
|
90
91
|
ref: textarea,
|
@@ -97,16 +98,16 @@ const _sfc_main = {
|
|
97
98
|
placeholder: __props.placeholder,
|
98
99
|
tabindex: __props.tabindex,
|
99
100
|
disabled: __props.disabled
|
100
|
-
}, null, 40,
|
101
|
+
}, null, 40, _hoisted_5))
|
101
102
|
]),
|
102
103
|
renderSlot(_ctx.$slots, "default", {}, void 0, true),
|
103
|
-
__props.symbol ? (openBlock(), createElementBlock("div",
|
104
|
+
__props.symbol ? (openBlock(), createElementBlock("div", _hoisted_6, [
|
104
105
|
createElementVNode("span", null, toDisplayString(__props.symbol), 1)
|
105
106
|
])) : createCommentVNode("", true)
|
106
107
|
], 2),
|
107
108
|
createVNode(Transition, { name: "fade" }, {
|
108
109
|
default: withCtx(() => [
|
109
|
-
__props.validation ? (openBlock(), createElementBlock("div",
|
110
|
+
__props.validation ? (openBlock(), createElementBlock("div", _hoisted_7, " * " + toDisplayString(__props.validation.message), 1)) : createCommentVNode("", true)
|
110
111
|
]),
|
111
112
|
_: 1
|
112
113
|
})
|
@@ -114,7 +115,7 @@ const _sfc_main = {
|
|
114
115
|
};
|
115
116
|
}
|
116
117
|
};
|
117
|
-
const Field = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
118
|
+
const Field = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-dd79a28b"]]);
|
118
119
|
export {
|
119
120
|
Field as default
|
120
121
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Field.vue2.js","sources":["../../../../../src/components/Field/Field.vue"],"sourcesContent":["<script setup>\n import { ref, computed, onUpdated, onMounted, nextTick } from 'vue'\n\n const emit = defineEmits(['update:field', 'focus', 'blur']);\n\n const props = defineProps({\n label: null,\n symbol: null,\n type: 'text',\n placeholder: 'Enter something here',\n field: null,\n value: null,\n validation: false,\n disabled: null,\n tabindex: -1\n });\n\n if (props.value) {\n emit('update:field', props.value)\n }\n\n const textarea = ref(null);\n\n function resize() {\n if (textarea.value) textarea.value.style.height = \"1rem\";\n if (textarea.value) textarea.value.style.height = textarea.value?.scrollHeight + \"px\";\n }\n\n\n onUpdated(() => {\n if (props.type === 'textarea') nextTick(() => { { focus()} })\n resize()\n });\n\n onMounted(() => {\n if (props.type === 'textarea') nextTick(() => { { focus()} })\n resize()\n });\n\n const text = ref(props.field);\n</script>\n\n<template>\n <div \n :class=\"[\n $attrs.class, \n { \n 'bg-fourth-nano': validation \n }\n ]\" \n class=\"flex-center flex-nowrap flex\"\n >\n <div \n v-if=\"label\" \n class=\"t-transp mn-r-small\"\n >\n <span>\n {{label}}\n </span>\n </div>\n\n <div class=\"w-100\">\n <input \n v-if=\"type !== 'textarea'\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n :type=\"type\"\n class=\"w-100\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n />\n <textarea \n v-else\n ref=\"textarea\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n class=\"w-100\"\n style=\"resize: vertical;\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n />\n </div> \n\n <slot></slot>\n\n <div \n v-if=\"symbol\" \n class=\"t-transp mn-l-small\"\n >\n <span>\n {{symbol}}\n </span>\n </div>\n </div>\n\n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n\n<style lang=\"scss\" scoped>\n input, textarea, span {\n line-height: 1;\n color: inherit;\n }\n</style>"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"Field.vue2.js","sources":["../../../../../src/components/Field/Field.vue"],"sourcesContent":["<script setup>\n import { ref, computed, onUpdated, onMounted, nextTick } from 'vue'\n\n const emit = defineEmits(['update:field', 'focus', 'blur']);\n\n const props = defineProps({\n label: null,\n symbol: null,\n type: 'text',\n placeholder: 'Enter something here',\n field: null,\n value: null,\n validation: false,\n disabled: null,\n tabindex: -1\n });\n\n if (props.value) {\n emit('update:field', props.value)\n }\n\n const textarea = ref(null);\n\n function resize() {\n if (textarea.value) textarea.value.style.height = \"1rem\";\n if (textarea.value) textarea.value.style.height = textarea.value?.scrollHeight + \"px\";\n }\n\n\n onUpdated(() => {\n if (props.type === 'textarea') nextTick(() => { { focus()} })\n resize()\n });\n\n onMounted(() => {\n if (props.type === 'textarea') nextTick(() => { { focus()} })\n resize()\n });\n\n const text = ref(props.field);\n</script>\n\n<template>\n <div \n :class=\"[\n $attrs.class, \n { \n 'bg-fourth-nano': validation \n }\n ]\" \n class=\"flex-center flex-nowrap flex\"\n >\n <div \n v-if=\"label\" \n class=\"t-transp mn-r-small\"\n >\n <span class=\"t-nowrap\">\n {{label}}\n </span>\n </div>\n\n <div class=\"w-100\">\n <input \n v-if=\"type !== 'textarea'\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n :type=\"type\"\n class=\"w-100\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n />\n <textarea \n v-else\n ref=\"textarea\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n class=\"w-100\"\n style=\"resize: vertical;\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n />\n </div> \n\n <slot></slot>\n\n <div \n v-if=\"symbol\" \n class=\"t-transp mn-l-small\"\n >\n <span>\n {{symbol}}\n </span>\n </div>\n </div>\n\n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n\n<style lang=\"scss\" scoped>\n input, textarea, span {\n line-height: 1;\n color: inherit;\n }\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGE,UAAM,OAAO;AAEb,UAAM,QAAQ;AAYd,QAAI,MAAM,OAAO;AACf,WAAK,gBAAgB,MAAM,KAAK;AAAA,IACjC;AAED,UAAM,WAAW,IAAI,IAAI;AAEzB,aAAS,SAAS;;AAChB,UAAI,SAAS,MAAO,UAAS,MAAM,MAAM,SAAS;AAClD,UAAI,SAAS,MAAO,UAAS,MAAM,MAAM,WAAS,cAAS,UAAT,mBAAgB,gBAAe;AAAA,IAClF;AAGD,cAAU,MAAM;AACf,UAAI,MAAM,SAAS,WAAY,UAAS,MAAM;AAAG;AAAE,gBAAO;AAAA,QAAA;AAAA,OAAG;AAC5D,aAAQ;AAAA,IACZ,CAAG;AAED,cAAU,MAAM;AACd,UAAI,MAAM,SAAS,WAAY,UAAS,MAAM;AAAG;AAAE,gBAAO;AAAA,QAAA;AAAA,OAAG;AAC7D,aAAQ;AAAA,IACZ,CAAG;AAED,UAAM,OAAO,IAAI,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
3
|
const vue = require("vue");
|
4
|
-
const Field = require("../Field/Field.
|
4
|
+
const Field = require("../Field/Field.vue2.cjs");
|
5
5
|
const IconArrow = require("../../modules/icons/navigation/IconArrow.vue.cjs");
|
6
6
|
const vueI18n = require("vue-i18n");
|
7
7
|
const _hoisted_1 = { class: "pd-thin radius-extra flex-nowrap flex" };
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { ref, onMounted, watchEffect, openBlock, createElementBlock, createVNode, unref, isRef, createElementVNode, toDisplayString, createCommentVNode } from "vue";
|
2
|
-
import Field from "../Field/Field.
|
2
|
+
import Field from "../Field/Field.vue2.js";
|
3
3
|
import _sfc_main$1 from "../../modules/icons/navigation/IconArrow.vue.js";
|
4
4
|
import { useI18n } from "vue-i18n";
|
5
5
|
const _hoisted_1 = { class: "pd-thin radius-extra flex-nowrap flex" };
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"auth.client.cjs","sources":["../../../../../src/modules/auth/auth.client.js"],"sourcesContent":["// Store\nimport * as storeAuth from './views/store/auth.js';\nimport * as storeTwofa from './views/store/twofa.js';\nimport * as storeUsers from './views/store/users.js';\n\n// Router\nimport routerAuth from './views/router/auth.js';\nimport routerUsers from './views/router/users.js';\n\n// Middlewares\nimport * as validationAuth from '@pf/src/modules/auth/views/middlewares/auth.validation';\n\n// Views\nimport Auth from './views/components/layouts/Auth.vue';\nimport EnterCode from './views/components/pages/EnterCode.vue';\nimport Invite from './views/components/pages/Invite.vue';\nimport EnterPassword from './views/components/pages/EnterPassword.vue';\nimport ResetPassword from './views/components/pages/ResetPassword.vue';\nimport SignUp from './views/components/pages/SignUp.vue';\nimport SignIn from './views/components/pages/SignIn.vue';\nimport Profile from './views/components/pages/Profile.vue';\nimport ProfileEdit from './views/components/pages/ProfileEdit.vue'\n\n// Importing sections components\nimport SliderFeatures from './views/components/sections/SliderFeatures.vue';\nimport FeaturedUsers from './views/components/sections/FeaturedUsers.vue';\n\n// Пример функции инициализации для модуля аутентификации\nfunction initializeAuth(app, store, router, options = {}) {\n const route = options.route || 'Home';\n \n router.addRoute(route, routerAuth);\n router.addRoute(route, routerUsers);\n \n store.addStore('auth', storeAuth);\n store.addStore('twofa', storeTwofa);\n store.addStore('users', storeUsers);\n \n}\n\nconst ModuleAuth = {\n initialize: initializeAuth,\n views: {\n store: {\n storeAuth,\n storeTwofa,\n storeUsers\n },\n router: {\n routerAuth,\n routerUsers\n },\n middlewares: {\n validationAuth\n },\n components: {\n // Layout\n Auth,\n // Pages\n EnterCode,\n Invite,\n EnterPassword,\n ResetPassword,\n SignUp,\n SignIn,\n Profile,\n ProfileEdit,\n // Sections\n SliderFeatures,\n FeaturedUsers\n }\n }\n}\n\nexport default ModuleAuth"],"names":["routerAuth","routerUsers","storeAuth","storeTwofa","storeUsers","validationAuth","Auth","EnterCode","Invite","EnterPassword","ResetPassword","SignUp","SignIn","Profile","ProfileEdit","SliderFeatures","FeaturedUsers"],"mappings":";;;;;;;;;;;;;;;;;;;AA4BA,SAAS,eAAe,KAAK,OAAO,QAAQ,UAAU,CAAA,GAAI;AACxD,QAAM,QAAQ,QAAQ,SAAS;AAE/B,SAAO,SAAS,OAAOA,OAAAA,OAAU;AACjC,SAAO,SAAS,OAAOC,QAAAA,OAAW;AAElC,QAAM,SAAS,QAAQC,IAAS;AAChC,QAAM,SAAS,SAASC,KAAU;AAClC,QAAM,SAAS,SAASC,KAAU;
|
1
|
+
{"version":3,"file":"auth.client.cjs","sources":["../../../../../src/modules/auth/auth.client.js"],"sourcesContent":["// Store\nimport * as storeAuth from './views/store/auth.js';\nimport * as storeTwofa from './views/store/twofa.js';\nimport * as storeUsers from './views/store/users.js';\n\n// Router\nimport routerAuth from './views/router/auth.js';\nimport routerUsers from './views/router/users.js';\n\n// Middlewares\nimport * as validationAuth from '@pf/src/modules/auth/views/middlewares/auth.validation';\n\n// Views\nimport Auth from './views/components/layouts/Auth.vue';\nimport EnterCode from './views/components/pages/EnterCode.vue';\nimport Invite from './views/components/pages/Invite.vue';\nimport EnterPassword from './views/components/pages/EnterPassword.vue';\nimport ResetPassword from './views/components/pages/ResetPassword.vue';\nimport SignUp from './views/components/pages/SignUp.vue';\nimport SignIn from './views/components/pages/SignIn.vue';\nimport Profile from './views/components/pages/Profile.vue';\nimport ProfileEdit from './views/components/pages/ProfileEdit.vue'\n\n// Importing sections components\nimport SliderFeatures from './views/components/sections/SliderFeatures.vue';\nimport FeaturedUsers from './views/components/sections/FeaturedUsers.vue';\n\n// Пример функции инициализации для модуля аутентификации\nfunction initializeAuth(app, store, router, options = {}) {\n const route = options.route || 'Home';\n \n router.addRoute(route, routerAuth);\n router.addRoute(route, routerUsers);\n \n store.addStore('auth', storeAuth);\n store.addStore('twofa', storeTwofa);\n store.addStore('users', storeUsers);\n\n app.provide('store', store)\n \n}\n\nconst ModuleAuth = {\n initialize: initializeAuth,\n views: {\n store: {\n storeAuth,\n storeTwofa,\n storeUsers\n },\n router: {\n routerAuth,\n routerUsers\n },\n middlewares: {\n validationAuth\n },\n components: {\n // Layout\n Auth,\n // Pages\n EnterCode,\n Invite,\n EnterPassword,\n ResetPassword,\n SignUp,\n SignIn,\n Profile,\n ProfileEdit,\n // Sections\n SliderFeatures,\n FeaturedUsers\n }\n }\n}\n\nexport default ModuleAuth"],"names":["routerAuth","routerUsers","storeAuth","storeTwofa","storeUsers","validationAuth","Auth","EnterCode","Invite","EnterPassword","ResetPassword","SignUp","SignIn","Profile","ProfileEdit","SliderFeatures","FeaturedUsers"],"mappings":";;;;;;;;;;;;;;;;;;;AA4BA,SAAS,eAAe,KAAK,OAAO,QAAQ,UAAU,CAAA,GAAI;AACxD,QAAM,QAAQ,QAAQ,SAAS;AAE/B,SAAO,SAAS,OAAOA,OAAAA,OAAU;AACjC,SAAO,SAAS,OAAOC,QAAAA,OAAW;AAElC,QAAM,SAAS,QAAQC,IAAS;AAChC,QAAM,SAAS,SAASC,KAAU;AAClC,QAAM,SAAS,SAASC,KAAU;AAElC,MAAI,QAAQ,SAAS,KAAK;AAE5B;AAEK,MAAC,aAAa;AAAA,EACjB,YAAY;AAAA,EACZ,OAAO;AAAA,IACL,OAAO;AAAA,MACX,WAAMF;AAAAA,MACN,YAAMC;AAAAA,MACN,YAAMC;AAAAA,IACD;AAAA,IACD,QAAQ;AAAA,MACZ,YAAMJ,OAAU;AAAA,MAChB,aAAMC,QAAW;AAAA,IACZ;AAAA,IACD,aAAa;AAAA,MACjB,gBAAMI;AAAAA,IACD;AAAA,IACD,YAAY;AAAA;AAAA,MAEhB,MAAMC,KAAI;AAAA;AAAA,MAEV,WAAMC,UAAS;AAAA,MACf,QAAMC,OAAM;AAAA,MACZ,eAAMC,cAAa;AAAA,MACnB,eAAMC,cAAa;AAAA,MACnB,QAAMC,OAAM;AAAA,MACZ,QAAMC,OAAM;AAAA,MACZ,SAAMC,QAAO;AAAA,MACb,aAAMC,YAAW;AAAA;AAAA,MAEjB,gBAAMC,eAAc;AAAA,MACpB,eAAMC,cAAa;AAAA,IACd;AAAA,EACF;AACH;;"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"auth.client.js","sources":["../../../../../src/modules/auth/auth.client.js"],"sourcesContent":["// Store\nimport * as storeAuth from './views/store/auth.js';\nimport * as storeTwofa from './views/store/twofa.js';\nimport * as storeUsers from './views/store/users.js';\n\n// Router\nimport routerAuth from './views/router/auth.js';\nimport routerUsers from './views/router/users.js';\n\n// Middlewares\nimport * as validationAuth from '@pf/src/modules/auth/views/middlewares/auth.validation';\n\n// Views\nimport Auth from './views/components/layouts/Auth.vue';\nimport EnterCode from './views/components/pages/EnterCode.vue';\nimport Invite from './views/components/pages/Invite.vue';\nimport EnterPassword from './views/components/pages/EnterPassword.vue';\nimport ResetPassword from './views/components/pages/ResetPassword.vue';\nimport SignUp from './views/components/pages/SignUp.vue';\nimport SignIn from './views/components/pages/SignIn.vue';\nimport Profile from './views/components/pages/Profile.vue';\nimport ProfileEdit from './views/components/pages/ProfileEdit.vue'\n\n// Importing sections components\nimport SliderFeatures from './views/components/sections/SliderFeatures.vue';\nimport FeaturedUsers from './views/components/sections/FeaturedUsers.vue';\n\n// Пример функции инициализации для модуля аутентификации\nfunction initializeAuth(app, store, router, options = {}) {\n const route = options.route || 'Home';\n \n router.addRoute(route, routerAuth);\n router.addRoute(route, routerUsers);\n \n store.addStore('auth', storeAuth);\n store.addStore('twofa', storeTwofa);\n store.addStore('users', storeUsers);\n \n}\n\nconst ModuleAuth = {\n initialize: initializeAuth,\n views: {\n store: {\n storeAuth,\n storeTwofa,\n storeUsers\n },\n router: {\n routerAuth,\n routerUsers\n },\n middlewares: {\n validationAuth\n },\n components: {\n // Layout\n Auth,\n // Pages\n EnterCode,\n Invite,\n EnterPassword,\n ResetPassword,\n SignUp,\n SignIn,\n Profile,\n ProfileEdit,\n // Sections\n SliderFeatures,\n FeaturedUsers\n }\n }\n}\n\nexport default ModuleAuth"],"names":["routerAuth","routerUsers","storeAuth","storeTwofa","storeUsers","validationAuth","Auth","EnterCode","Invite","EnterPassword","ResetPassword","SignUp","SignIn","Profile","ProfileEdit","SliderFeatures","FeaturedUsers"],"mappings":";;;;;;;;;;;;;;;;;AA4BA,SAAS,eAAe,KAAK,OAAO,QAAQ,UAAU,CAAA,GAAI;AACxD,QAAM,QAAQ,QAAQ,SAAS;AAE/B,SAAO,SAAS,OAAOA,MAAU;AACjC,SAAO,SAAS,OAAOC,OAAW;AAElC,QAAM,SAAS,QAAQC,IAAS;AAChC,QAAM,SAAS,SAASC,KAAU;AAClC,QAAM,SAAS,SAASC,KAAU;
|
1
|
+
{"version":3,"file":"auth.client.js","sources":["../../../../../src/modules/auth/auth.client.js"],"sourcesContent":["// Store\nimport * as storeAuth from './views/store/auth.js';\nimport * as storeTwofa from './views/store/twofa.js';\nimport * as storeUsers from './views/store/users.js';\n\n// Router\nimport routerAuth from './views/router/auth.js';\nimport routerUsers from './views/router/users.js';\n\n// Middlewares\nimport * as validationAuth from '@pf/src/modules/auth/views/middlewares/auth.validation';\n\n// Views\nimport Auth from './views/components/layouts/Auth.vue';\nimport EnterCode from './views/components/pages/EnterCode.vue';\nimport Invite from './views/components/pages/Invite.vue';\nimport EnterPassword from './views/components/pages/EnterPassword.vue';\nimport ResetPassword from './views/components/pages/ResetPassword.vue';\nimport SignUp from './views/components/pages/SignUp.vue';\nimport SignIn from './views/components/pages/SignIn.vue';\nimport Profile from './views/components/pages/Profile.vue';\nimport ProfileEdit from './views/components/pages/ProfileEdit.vue'\n\n// Importing sections components\nimport SliderFeatures from './views/components/sections/SliderFeatures.vue';\nimport FeaturedUsers from './views/components/sections/FeaturedUsers.vue';\n\n// Пример функции инициализации для модуля аутентификации\nfunction initializeAuth(app, store, router, options = {}) {\n const route = options.route || 'Home';\n \n router.addRoute(route, routerAuth);\n router.addRoute(route, routerUsers);\n \n store.addStore('auth', storeAuth);\n store.addStore('twofa', storeTwofa);\n store.addStore('users', storeUsers);\n\n app.provide('store', store)\n \n}\n\nconst ModuleAuth = {\n initialize: initializeAuth,\n views: {\n store: {\n storeAuth,\n storeTwofa,\n storeUsers\n },\n router: {\n routerAuth,\n routerUsers\n },\n middlewares: {\n validationAuth\n },\n components: {\n // Layout\n Auth,\n // Pages\n EnterCode,\n Invite,\n EnterPassword,\n ResetPassword,\n SignUp,\n SignIn,\n Profile,\n ProfileEdit,\n // Sections\n SliderFeatures,\n FeaturedUsers\n }\n }\n}\n\nexport default ModuleAuth"],"names":["routerAuth","routerUsers","storeAuth","storeTwofa","storeUsers","validationAuth","Auth","EnterCode","Invite","EnterPassword","ResetPassword","SignUp","SignIn","Profile","ProfileEdit","SliderFeatures","FeaturedUsers"],"mappings":";;;;;;;;;;;;;;;;;AA4BA,SAAS,eAAe,KAAK,OAAO,QAAQ,UAAU,CAAA,GAAI;AACxD,QAAM,QAAQ,QAAQ,SAAS;AAE/B,SAAO,SAAS,OAAOA,MAAU;AACjC,SAAO,SAAS,OAAOC,OAAW;AAElC,QAAM,SAAS,QAAQC,IAAS;AAChC,QAAM,SAAS,SAASC,KAAU;AAClC,QAAM,SAAS,SAASC,KAAU;AAElC,MAAI,QAAQ,SAAS,KAAK;AAE5B;AAEK,MAAC,aAAa;AAAA,EACjB,YAAY;AAAA,EACZ,OAAO;AAAA,IACL,OAAO;AAAA,MACX,WAAMF;AAAAA,MACN,YAAMC;AAAAA,MACN,YAAMC;AAAAA,IACD;AAAA,IACD,QAAQ;AAAA,MACZ,YAAMJ;AAAAA,MACN,aAAMC;AAAAA,IACD;AAAA,IACD,aAAa;AAAA,MACjB,gBAAMI;AAAAA,IACD;AAAA,IACD,YAAY;AAAA;AAAA,MAEhB,MAAMC;AAAAA;AAAAA,MAEN,WAAMC;AAAAA,MACN,QAAMC;AAAAA,MACN,eAAMC;AAAAA,MACN,eAAMC;AAAAA,MACN,QAAMC;AAAAA,MACN,QAAMC;AAAAA,MACN,SAAMC;AAAAA,MACN,aAAMC;AAAAA;AAAAA,MAEN,gBAAMC;AAAAA,MACN,eAAMC;AAAAA,IACD;AAAA,EACF;AACH;"}
|
@@ -2,9 +2,9 @@
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
3
|
const vue = require("vue");
|
4
4
|
;/* empty css */
|
5
|
-
;/* empty css
|
5
|
+
;/* empty css */
|
6
|
+
;/* empty css */
|
6
7
|
;/* empty css */
|
7
|
-
;/* empty css */
|
8
8
|
require("vue-i18n");
|
9
9
|
;/* empty css */
|
10
10
|
const vueRouter = require("vue-router");
|
@@ -1,8 +1,8 @@
|
|
1
1
|
import { ref, resolveComponent, openBlock, createElementBlock, createVNode, withCtx, Transition, createBlock, resolveDynamicComponent, createElementVNode } from "vue";
|
2
2
|
/* empty css */
|
3
|
-
/* empty css
|
3
|
+
/* empty css */
|
4
|
+
/* empty css */
|
4
5
|
/* empty css */
|
5
|
-
/* empty css */
|
6
6
|
import "vue-i18n";
|
7
7
|
/* empty css */
|
8
8
|
import { useRoute, useRouter } from "vue-router";
|
@@ -1,7 +1,7 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
3
|
const vue = require("vue");
|
4
|
-
;/* empty css
|
4
|
+
;/* empty css */
|
5
5
|
const vueRouter = require("vue-router");
|
6
6
|
const vueI18n = require("vue-i18n");
|
7
7
|
const auth = require("../../store/auth.cjs");
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { reactive, watch, ref, openBlock, createElementBlock, createElementVNode, toDisplayString, unref, withDirectives, vModelText } from "vue";
|
2
|
-
/* empty css
|
2
|
+
/* empty css */
|
3
3
|
import { useRoute, useRouter } from "vue-router";
|
4
4
|
import { useI18n } from "vue-i18n";
|
5
5
|
import { state as state$1 } from "../../store/auth.js";
|
package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterPassword.vue.cjs
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
3
|
const vue = require("vue");
|
4
4
|
;/* empty css */
|
5
|
-
const Field = require("../../../../../components/Field/Field.
|
6
|
-
const Button = require("../../../../../components/Button/Button.
|
5
|
+
const Field = require("../../../../../components/Field/Field.vue2.cjs");
|
6
|
+
const Button = require("../../../../../components/Button/Button.vue2.cjs");
|
7
7
|
const vueRouter = require("vue-router");
|
8
8
|
const vueI18n = require("vue-i18n");
|
9
9
|
const auth = require("../../store/auth.cjs");
|
package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterPassword.vue.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import { ref, openBlock, createElementBlock, createElementVNode, toDisplayString, unref, createVNode, createTextVNode, createCommentVNode, withCtx } from "vue";
|
2
2
|
/* empty css */
|
3
|
-
import Field from "../../../../../components/Field/Field.
|
4
|
-
import _sfc_main$1 from "../../../../../components/Button/Button.
|
3
|
+
import Field from "../../../../../components/Field/Field.vue2.js";
|
4
|
+
import _sfc_main$1 from "../../../../../components/Button/Button.vue2.js";
|
5
5
|
import { useRoute, useRouter } from "vue-router";
|
6
6
|
import { useI18n } from "vue-i18n";
|
7
7
|
import { state, actions } from "../../store/auth.js";
|
@@ -2,8 +2,8 @@
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
3
|
const vue = require("vue");
|
4
4
|
;/* empty css */
|
5
|
-
const Field = require("../../../../../components/Field/Field.
|
6
|
-
const Button = require("../../../../../components/Button/Button.
|
5
|
+
const Field = require("../../../../../components/Field/Field.vue2.cjs");
|
6
|
+
const Button = require("../../../../../components/Button/Button.vue2.cjs");
|
7
7
|
const vueRouter = require("vue-router");
|
8
8
|
const auth = require("../../store/auth.cjs");
|
9
9
|
const invites = require("../../../../organizations/store/invites.cjs");
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { ref, onMounted, openBlock, createElementBlock, createElementVNode, createVNode, withCtx } from "vue";
|
2
2
|
/* empty css */
|
3
|
-
import Field from "../../../../../components/Field/Field.
|
4
|
-
import _sfc_main$1 from "../../../../../components/Button/Button.
|
3
|
+
import Field from "../../../../../components/Field/Field.vue2.js";
|
4
|
+
import _sfc_main$1 from "../../../../../components/Button/Button.vue2.js";
|
5
5
|
import { useRoute, useRouter } from "vue-router";
|
6
6
|
import { state, actions as actions$1 } from "../../store/auth.js";
|
7
7
|
import { actions } from "../../../../organizations/store/invites.js";
|