@ozdao/martyrs 0.2.508 → 0.2.510
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{main-Dq-UfO4G.js → main-DrpgUZcn.js} +2808 -2615
- package/dist/main-XJQJFmgj.cjs +11 -0
- package/dist/martyrs/src/components/Button/{Button.vue.cjs → Button.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Button/{Button.vue.js → Button.vue2.js} +2 -2
- package/dist/martyrs/src/components/Button/{Button.vue.cjs.map → Button.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs +1 -1
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js +1 -1
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js.map +1 -1
- package/dist/martyrs/src/components/Feed/Carousel.vue.cjs +4 -3
- package/dist/martyrs/src/components/Feed/Carousel.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Feed/Carousel.vue.js +5 -4
- package/dist/martyrs/src/components/Feed/Carousel.vue.js.map +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.cjs +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.js +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
- package/dist/martyrs/src/components/Field/Field.vue.cjs +1 -1
- package/dist/martyrs/src/components/Field/Field.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Field/Field.vue.js +1 -1
- package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -1
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs +3 -3
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +3 -3
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js.map +1 -1
- package/dist/martyrs/src/components/Tab/{Tab.vue2.cjs → Tab.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Tab/{Tab.vue2.js.map → Tab.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/Tab/{Tab.vue2.js → Tab.vue.js} +2 -2
- package/dist/martyrs/src/components/Tab/Tab.vue.js.map +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +17 -11
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +18 -12
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +1 -0
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +1 -0
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/globals.client.js +15 -15
- package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +8 -3
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +8 -3
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.cjs +121 -107
- package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.js +131 -117
- package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.cjs +112 -49
- package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.js +121 -58
- package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.js +1 -1
- package/dist/martyrs/src/modules/icons/logos/Logotype.vue.cjs +3 -3
- package/dist/martyrs/src/modules/icons/logos/Logotype.vue.js +3 -3
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.cjs +136 -134
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js +136 -134
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js.map +1 -1
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js +1 -1
- package/dist/martyrs/src/modules/music/router/music.cjs +2 -1
- package/dist/martyrs/src/modules/music/router/music.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/router/music.js +2 -1
- package/dist/martyrs/src/modules/music/router/music.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/pages/Notifications.vue.cjs +1 -1
- package/dist/martyrs/src/modules/notifications/components/pages/Notifications.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs +61 -9
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +61 -9
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +2 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/orders.client.cjs +36 -44
- package/dist/martyrs/src/modules/orders/orders.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/orders.client.js +36 -44
- package/dist/martyrs/src/modules/orders/orders.client.js.map +1 -1
- package/dist/martyrs/src/modules/orders/store/models/customer.cjs +7 -0
- package/dist/martyrs/src/modules/orders/store/models/customer.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/store/models/customer.js +7 -0
- package/dist/martyrs/src/modules/orders/store/models/customer.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs +17 -28
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js +17 -28
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs +9 -1
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js +9 -1
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +3 -2
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +3 -2
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +3 -3
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +3 -3
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +118 -135
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +123 -140
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs +3 -5
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js +4 -6
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs +10 -5
- package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.js +10 -5
- package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs +6 -3
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +6 -3
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +2 -2
- package/dist/martyrs/src/modules/products/store/products.cjs +5 -5
- package/dist/martyrs/src/modules/products/store/products.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/store/products.js +5 -5
- package/dist/martyrs/src/modules/products/store/products.js.map +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.cjs +2 -2
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +2 -2
- package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +1 -1
- package/dist/martyrs.cjs.js +1 -1
- package/dist/martyrs.css +1 -1
- package/dist/martyrs.es.js +1 -1
- package/dist/orders.server.cjs +58 -0
- package/dist/orders.server.js +58 -0
- package/dist/products.server.cjs +79 -45
- package/dist/products.server.js +79 -45
- package/dist/style.css +44 -52
- package/dist/{web-BXajFCU2.js → web-C5cmb1FH.js} +1 -1
- package/dist/{web-DaBwwCQ5.cjs → web-d40xcY_Y.cjs} +1 -1
- package/package.json +1 -1
- package/src/components/Checkbox/Checkbox.vue +1 -1
- package/src/components/Feed/Carousel.vue +3 -1
- package/src/components/Feed/Feed.vue +1 -1
- package/src/components/Field/Field.vue +5 -0
- package/src/components/FieldBig/FieldBig.vue +2 -2
- package/src/modules/auth/views/components/pages/ProfileEdit.vue +17 -10
- package/src/modules/globals/views/components/layouts/Client.vue +12 -1
- package/src/modules/globals/views/components/partials/Footer.centered.vue +338 -0
- package/src/modules/globals/views/components/partials/Footer.vue +104 -99
- package/src/modules/globals/views/components/partials/Header.vue +1 -1
- package/src/modules/globals/views/components/sections/Filters.vue +73 -15
- package/src/modules/icons/logos/Logotype.vue +1 -1
- package/src/modules/inventory/components/pages/Inventory.vue +126 -119
- package/src/modules/orders/components/forms/FormCustomerDetails.vue +51 -0
- package/src/modules/orders/middlewares/customers.verifier.js +60 -0
- package/src/modules/orders/models/customer.model.js +18 -0
- package/src/modules/orders/orders.client.js +36 -44
- package/src/modules/orders/store/models/customer.js +7 -0
- package/src/modules/organizations/configs/navigation.organization.config.js +17 -26
- package/src/modules/products/TASKS.MD +1 -157
- package/src/modules/products/components/elements/QuantitySelector.vue +17 -9
- package/src/modules/products/components/pages/Product.vue +1 -1
- package/src/modules/products/components/pages/Products.vue +148 -175
- package/src/modules/products/components/sections/EditRecommended.vue +1 -3
- package/src/modules/products/components/sections/ProductsPopular.vue +9 -5
- package/src/modules/products/components/sections/ProductsRecommended.vue +4 -1
- package/src/modules/products/controllers/configs/products.lookup.config.js +31 -4
- package/src/modules/products/controllers/products.controller.js +14 -2
- package/src/modules/products/controllers/queries/products.queries.js +46 -43
- package/src/modules/products/models/product.model.js +4 -0
- package/src/modules/products/store/products.js +5 -5
- package/src/styles/base/all.scss +9 -4
- package/src/styles/config.scss +10 -0
- package/src/styles/responsive.scss +2 -1
- package/src/styles/typography.scss +0 -5
- package/dist/main-AWSb_d2P.cjs +0 -11
- package/dist/martyrs/src/components/Button/Button.vue.js.map +0 -1
- package/dist/martyrs/src/components/Tab/Tab.vue2.cjs.map +0 -1
|
@@ -1,39 +1,47 @@
|
|
|
1
|
-
import { mergeModels, useModel, ref, reactive, watch, computed, createElementBlock, openBlock, createElementVNode, createVNode, normalizeClass, createCommentVNode, toDisplayString, Fragment, renderList,
|
|
2
|
-
import
|
|
3
|
-
import _sfc_main$
|
|
1
|
+
import { mergeModels, useModel, ref, reactive, watch, computed, createElementBlock, openBlock, createElementVNode, createVNode, normalizeClass, createCommentVNode, toDisplayString, Fragment, renderList, createBlock, withCtx, unref } from "vue";
|
|
2
|
+
import { useGlobalMixins } from "../../mixins/mixins.js";
|
|
3
|
+
import _sfc_main$3 from "../../../../../components/Popup/Popup.vue.js";
|
|
4
|
+
import _sfc_main$5 from "../../../../../components/Checkbox/Checkbox.vue.js";
|
|
4
5
|
import Field from "../../../../../components/Field/Field.vue.js";
|
|
6
|
+
import Calendar from "../../../../../components/Calendar/Calendar.vue2.js";
|
|
5
7
|
import _sfc_main$1 from "../../../../icons/navigation/IconFilter.vue.js";
|
|
6
|
-
import _sfc_main$
|
|
8
|
+
import _sfc_main$4 from "../../../../icons/navigation/IconCross.vue.js";
|
|
9
|
+
import _sfc_main$2 from "../../../../icons/entities/IconCalendar.vue.js";
|
|
7
10
|
/* empty css */
|
|
8
11
|
import _export_sfc from "../../../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
9
|
-
const _hoisted_1 = { class: "flex gap-thin" };
|
|
12
|
+
const _hoisted_1 = { class: "flex t-nowrap gap-thin" };
|
|
10
13
|
const _hoisted_2 = { key: 0 };
|
|
11
14
|
const _hoisted_3 = ["onClick"];
|
|
12
|
-
const _hoisted_4 = {
|
|
13
|
-
|
|
15
|
+
const _hoisted_4 = { class: "t-nowrap h-1r" };
|
|
16
|
+
const _hoisted_5 = {
|
|
17
|
+
key: 1,
|
|
14
18
|
class: "mn-l-micro"
|
|
15
19
|
};
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
20
|
+
const _hoisted_6 = { class: "flex-v-center flex-nowrap flex mn-b-medium" };
|
|
21
|
+
const _hoisted_7 = { class: "filters-content" };
|
|
22
|
+
const _hoisted_8 = { class: "mn-b-small" };
|
|
23
|
+
const _hoisted_9 = { key: 0 };
|
|
24
|
+
const _hoisted_10 = { key: 1 };
|
|
25
|
+
const _hoisted_11 = ["onClick"];
|
|
26
|
+
const _hoisted_12 = {
|
|
23
27
|
key: 2,
|
|
24
28
|
class: "flex gap-thin"
|
|
25
29
|
};
|
|
26
|
-
const
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
const
|
|
30
|
-
const
|
|
30
|
+
const _hoisted_13 = { key: 3 };
|
|
31
|
+
const _hoisted_14 = { class: "mn-b-medium" };
|
|
32
|
+
const _hoisted_15 = { key: 0 };
|
|
33
|
+
const _hoisted_16 = { key: 1 };
|
|
34
|
+
const _hoisted_17 = ["onClick"];
|
|
35
|
+
const _hoisted_18 = {
|
|
31
36
|
key: 2,
|
|
32
37
|
class: "flex gap-thin"
|
|
33
38
|
};
|
|
34
|
-
const
|
|
35
|
-
const
|
|
36
|
-
const
|
|
39
|
+
const _hoisted_19 = { key: 3 };
|
|
40
|
+
const _hoisted_20 = ["onClick"];
|
|
41
|
+
const _hoisted_21 = { class: "mn-t-small" };
|
|
42
|
+
const _hoisted_22 = { class: "flex gap-thin mn-t-medium" };
|
|
43
|
+
const _hoisted_23 = ["onClick"];
|
|
44
|
+
const _hoisted_24 = ["onClick"];
|
|
37
45
|
const _sfc_main = {
|
|
38
46
|
__name: "Filters",
|
|
39
47
|
props: {
|
|
@@ -53,17 +61,21 @@ const _sfc_main = {
|
|
|
53
61
|
const filters = useModel(__props, "filters");
|
|
54
62
|
const selected = useModel(__props, "selected");
|
|
55
63
|
const emit = __emit;
|
|
64
|
+
const { formatDate } = useGlobalMixins();
|
|
56
65
|
const showAllFilters = ref(false);
|
|
57
66
|
const individualPopups = reactive({});
|
|
58
67
|
const tempSelected = reactive({});
|
|
68
|
+
const tempDateRange = ref(null);
|
|
59
69
|
watch(filters, (newFilters) => {
|
|
60
70
|
newFilters.forEach((filter) => {
|
|
61
71
|
individualPopups[filter.value] = false;
|
|
62
72
|
if (!tempSelected[filter.value]) {
|
|
63
73
|
if (filter.type === "checkbox") {
|
|
64
|
-
tempSelected[filter.value] = selected.value[filter.value] || [];
|
|
74
|
+
tempSelected[filter.value] = [...selected.value[filter.value] || []];
|
|
65
75
|
} else if (filter.type === "range") {
|
|
66
|
-
tempSelected[filter.value] = selected.value[filter.value] || { min: "", max: "" };
|
|
76
|
+
tempSelected[filter.value] = { ...selected.value[filter.value] || { min: "", max: "" } };
|
|
77
|
+
} else if (filter.type === "date") {
|
|
78
|
+
tempSelected[filter.value] = selected.value[filter.value] || null;
|
|
67
79
|
} else {
|
|
68
80
|
tempSelected[filter.value] = selected.value[filter.value] || null;
|
|
69
81
|
}
|
|
@@ -72,7 +84,16 @@ const _sfc_main = {
|
|
|
72
84
|
}, { immediate: true, deep: true });
|
|
73
85
|
watch(selected, (newSelected) => {
|
|
74
86
|
Object.keys(newSelected).forEach((key) => {
|
|
75
|
-
|
|
87
|
+
const filter = filters.value.find((f) => f.value === key);
|
|
88
|
+
if (filter) {
|
|
89
|
+
if (filter.type === "checkbox") {
|
|
90
|
+
tempSelected[key] = [...newSelected[key] || []];
|
|
91
|
+
} else if (filter.type === "range") {
|
|
92
|
+
tempSelected[key] = { ...newSelected[key] || { min: "", max: "" } };
|
|
93
|
+
} else {
|
|
94
|
+
tempSelected[key] = newSelected[key];
|
|
95
|
+
}
|
|
96
|
+
}
|
|
76
97
|
});
|
|
77
98
|
}, { deep: true });
|
|
78
99
|
const activeFiltersCount = computed(() => {
|
|
@@ -107,6 +128,10 @@ const _sfc_main = {
|
|
|
107
128
|
if (!value.min && !value.max) return "";
|
|
108
129
|
return `${value.min || "0"}-${value.max || "∞"}`;
|
|
109
130
|
}
|
|
131
|
+
if (filter.type === "date") {
|
|
132
|
+
if (!value || !value.start || !value.end) return "";
|
|
133
|
+
return `${formatDate(value.start, { dayMonth: true, language: "en" })} - ${formatDate(value.end, { dayMonth: true, language: "en" })}`;
|
|
134
|
+
}
|
|
110
135
|
if (filter.type === "radio") {
|
|
111
136
|
const option = filter.options.find((o) => o.value === value);
|
|
112
137
|
return option ? `(${option.label})` : "";
|
|
@@ -122,9 +147,11 @@ const _sfc_main = {
|
|
|
122
147
|
const filter = filters.value.find((f) => f.value === filterValue);
|
|
123
148
|
if (filter) {
|
|
124
149
|
if (filter.type === "checkbox") {
|
|
125
|
-
tempSelected[filterValue] = selected.value[filterValue] || [];
|
|
150
|
+
tempSelected[filterValue] = [...selected.value[filterValue] || []];
|
|
126
151
|
} else if (filter.type === "range") {
|
|
127
|
-
tempSelected[filterValue] = selected.value[filterValue] || { min: "", max: "" };
|
|
152
|
+
tempSelected[filterValue] = { ...selected.value[filterValue] || { min: "", max: "" } };
|
|
153
|
+
} else if (filter.type === "date") {
|
|
154
|
+
tempSelected[filterValue] = selected.value[filterValue] || null;
|
|
128
155
|
} else {
|
|
129
156
|
tempSelected[filterValue] = selected.value[filterValue] || null;
|
|
130
157
|
}
|
|
@@ -148,6 +175,9 @@ const _sfc_main = {
|
|
|
148
175
|
} else if (filter.type === "range") {
|
|
149
176
|
tempSelected[filter.value] = { min: "", max: "" };
|
|
150
177
|
selected.value[filter.value] = { min: "", max: "" };
|
|
178
|
+
} else if (filter.type === "date") {
|
|
179
|
+
tempSelected[filter.value] = null;
|
|
180
|
+
selected.value[filter.value] = null;
|
|
151
181
|
} else {
|
|
152
182
|
tempSelected[filter.value] = null;
|
|
153
183
|
selected.value[filter.value] = null;
|
|
@@ -159,45 +189,50 @@ const _sfc_main = {
|
|
|
159
189
|
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
160
190
|
createElementVNode("button", {
|
|
161
191
|
onClick: _cache[0] || (_cache[0] = ($event) => showAllFilters.value = true),
|
|
162
|
-
class: normalizeClass(["pd-
|
|
192
|
+
class: normalizeClass(["pd-small radius-medium bg-light flex-v-center flex gap-micro cursor-pointer", { "bg-main": activeFiltersCount.value > 0 }])
|
|
163
193
|
}, [
|
|
164
|
-
createVNode(_sfc_main$1, { class: "i-
|
|
194
|
+
createVNode(_sfc_main$1, { class: "i-medium" }),
|
|
195
|
+
_cache[3] || (_cache[3] = createElementVNode("span", { class: "h-1r" }, null, -1)),
|
|
165
196
|
activeFiltersCount.value ? (openBlock(), createElementBlock("span", _hoisted_2, toDisplayString(activeFiltersCount.value), 1)) : createCommentVNode("", true)
|
|
166
197
|
], 2),
|
|
167
198
|
(openBlock(true), createElementBlock(Fragment, null, renderList(filters.value, (filter) => {
|
|
168
199
|
return openBlock(), createElementBlock("button", {
|
|
169
200
|
key: filter.value,
|
|
170
201
|
onClick: ($event) => openFilter(filter.value),
|
|
171
|
-
class: normalizeClass(["pd-
|
|
202
|
+
class: normalizeClass(["pd-small radius-medium bg-light cursor-pointer flex-v-center flex gap-micro", { "selected bg-main": isFilterActive(filter) }])
|
|
172
203
|
}, [
|
|
173
|
-
|
|
174
|
-
|
|
204
|
+
filter.type === "date" ? (openBlock(), createBlock(_sfc_main$2, {
|
|
205
|
+
key: 0,
|
|
206
|
+
class: "i-medium"
|
|
207
|
+
})) : createCommentVNode("", true),
|
|
208
|
+
createElementVNode("span", _hoisted_4, toDisplayString(filter.title), 1),
|
|
209
|
+
getFilterValue(filter) ? (openBlock(), createElementBlock("span", _hoisted_5, toDisplayString(formatFilterValue(filter)), 1)) : createCommentVNode("", true)
|
|
175
210
|
], 10, _hoisted_3);
|
|
176
211
|
}), 128)),
|
|
177
|
-
createVNode(_sfc_main$
|
|
212
|
+
createVNode(_sfc_main$3, {
|
|
178
213
|
isPopupOpen: showAllFilters.value,
|
|
179
214
|
onClosePopup: _cache[2] || (_cache[2] = ($event) => showAllFilters.value = false),
|
|
180
215
|
align: _ctx.isPhone() ? "bottom center" : "center center",
|
|
181
216
|
class: "w-min-20r bg-white radius-medium mobile:radius-zero mobile:radius-tr-medium mobile:radius-tl-medium mobile:w-100 pd-medium"
|
|
182
217
|
}, {
|
|
183
218
|
default: withCtx(() => [
|
|
184
|
-
createElementVNode("div",
|
|
185
|
-
_cache[
|
|
186
|
-
createVNode(_sfc_main$
|
|
219
|
+
createElementVNode("div", _hoisted_6, [
|
|
220
|
+
_cache[4] || (_cache[4] = createElementVNode("h3", { class: "flex-child-full" }, "Filters", -1)),
|
|
221
|
+
createVNode(_sfc_main$4, {
|
|
187
222
|
onClick: _cache[1] || (_cache[1] = ($event) => showAllFilters.value = false),
|
|
188
223
|
class: "i-regular cursor-pointer"
|
|
189
224
|
})
|
|
190
225
|
]),
|
|
191
|
-
createElementVNode("div",
|
|
226
|
+
createElementVNode("div", _hoisted_7, [
|
|
192
227
|
(openBlock(true), createElementBlock(Fragment, null, renderList(filters.value, (filter) => {
|
|
193
228
|
return openBlock(), createElementBlock("div", {
|
|
194
229
|
key: filter.value,
|
|
195
230
|
class: "mn-b-medium"
|
|
196
231
|
}, [
|
|
197
|
-
createElementVNode("h4",
|
|
198
|
-
filter.type === "checkbox" ? (openBlock(), createElementBlock("div",
|
|
232
|
+
createElementVNode("h4", _hoisted_8, toDisplayString(filter.title), 1),
|
|
233
|
+
filter.type === "checkbox" ? (openBlock(), createElementBlock("div", _hoisted_9, [
|
|
199
234
|
(openBlock(true), createElementBlock(Fragment, null, renderList(filter.options, (option) => {
|
|
200
|
-
return openBlock(), createBlock(_sfc_main$
|
|
235
|
+
return openBlock(), createBlock(_sfc_main$5, {
|
|
201
236
|
key: option.value,
|
|
202
237
|
label: option.label,
|
|
203
238
|
value: option.value,
|
|
@@ -207,7 +242,7 @@ const _sfc_main = {
|
|
|
207
242
|
class: "mn-b-micro"
|
|
208
243
|
}, null, 8, ["label", "value", "radio", "onUpdate:radio"]);
|
|
209
244
|
}), 128))
|
|
210
|
-
])) : filter.type === "radio" ? (openBlock(), createElementBlock("div",
|
|
245
|
+
])) : filter.type === "radio" ? (openBlock(), createElementBlock("div", _hoisted_10, [
|
|
211
246
|
(openBlock(true), createElementBlock(Fragment, null, renderList(filter.options, (option) => {
|
|
212
247
|
return openBlock(), createElementBlock("div", {
|
|
213
248
|
key: option.value,
|
|
@@ -216,23 +251,31 @@ const _sfc_main = {
|
|
|
216
251
|
"bg-main": tempSelected[filter.value] === option.value,
|
|
217
252
|
"bg-light": tempSelected[filter.value] !== option.value
|
|
218
253
|
}])
|
|
219
|
-
}, toDisplayString(option.label), 11,
|
|
254
|
+
}, toDisplayString(option.label), 11, _hoisted_11);
|
|
220
255
|
}), 128))
|
|
221
|
-
])) : filter.type === "range" ? (openBlock(), createElementBlock("div",
|
|
256
|
+
])) : filter.type === "range" ? (openBlock(), createElementBlock("div", _hoisted_12, [
|
|
222
257
|
createVNode(Field, {
|
|
223
258
|
field: tempSelected[filter.value].min,
|
|
224
259
|
"onUpdate:field": ($event) => tempSelected[filter.value].min = $event,
|
|
225
260
|
placeholder: filter.minPlaceholder || "Min",
|
|
226
261
|
type: "number",
|
|
227
|
-
class: "w-50 bg-light radius-small"
|
|
262
|
+
class: "w-50 bg-light pd-small radius-small"
|
|
228
263
|
}, null, 8, ["field", "onUpdate:field", "placeholder"]),
|
|
229
264
|
createVNode(Field, {
|
|
230
265
|
field: tempSelected[filter.value].max,
|
|
231
266
|
"onUpdate:field": ($event) => tempSelected[filter.value].max = $event,
|
|
232
267
|
placeholder: filter.maxPlaceholder || "Max",
|
|
233
268
|
type: "number",
|
|
234
|
-
class: "w-50 bg-light radius-small"
|
|
269
|
+
class: "w-50 bg-light pd-small radius-small"
|
|
235
270
|
}, null, 8, ["field", "onUpdate:field", "placeholder"])
|
|
271
|
+
])) : filter.type === "date" ? (openBlock(), createElementBlock("div", _hoisted_13, [
|
|
272
|
+
createVNode(Calendar, {
|
|
273
|
+
date: tempSelected[filter.value],
|
|
274
|
+
"onUpdate:date": ($event) => tempSelected[filter.value] = $event,
|
|
275
|
+
allowRange: true,
|
|
276
|
+
disablePastDates: true,
|
|
277
|
+
class: "bg-light radius-small"
|
|
278
|
+
}, null, 8, ["date", "onUpdate:date"])
|
|
236
279
|
])) : createCommentVNode("", true)
|
|
237
280
|
]);
|
|
238
281
|
}), 128))
|
|
@@ -251,7 +294,7 @@ const _sfc_main = {
|
|
|
251
294
|
_: 1
|
|
252
295
|
}, 8, ["isPopupOpen", "align"]),
|
|
253
296
|
(openBlock(true), createElementBlock(Fragment, null, renderList(filters.value, (filter) => {
|
|
254
|
-
return openBlock(), createBlock(_sfc_main$
|
|
297
|
+
return openBlock(), createBlock(_sfc_main$3, {
|
|
255
298
|
key: `popup-${filter.value}`,
|
|
256
299
|
isPopupOpen: individualPopups[filter.value],
|
|
257
300
|
onClosePopup: ($event) => individualPopups[filter.value] = false,
|
|
@@ -259,10 +302,10 @@ const _sfc_main = {
|
|
|
259
302
|
class: "bg-white radius-medium mobile:radius-zero mobile:radius-tr-medium mobile:radius-tl-medium mobile:w-100 pd-medium"
|
|
260
303
|
}, {
|
|
261
304
|
default: withCtx(() => [
|
|
262
|
-
createElementVNode("h4",
|
|
263
|
-
filter.type === "checkbox" ? (openBlock(), createElementBlock("div",
|
|
305
|
+
createElementVNode("h4", _hoisted_14, toDisplayString(filter.title), 1),
|
|
306
|
+
filter.type === "checkbox" ? (openBlock(), createElementBlock("div", _hoisted_15, [
|
|
264
307
|
(openBlock(true), createElementBlock(Fragment, null, renderList(filter.options, (option) => {
|
|
265
|
-
return openBlock(), createBlock(_sfc_main$
|
|
308
|
+
return openBlock(), createBlock(_sfc_main$5, {
|
|
266
309
|
key: option.value,
|
|
267
310
|
label: option.label,
|
|
268
311
|
value: option.value,
|
|
@@ -272,7 +315,7 @@ const _sfc_main = {
|
|
|
272
315
|
class: "mn-b-micro"
|
|
273
316
|
}, null, 8, ["label", "value", "radio", "onUpdate:radio"]);
|
|
274
317
|
}), 128))
|
|
275
|
-
])) : filter.type === "radio" ? (openBlock(), createElementBlock("div",
|
|
318
|
+
])) : filter.type === "radio" ? (openBlock(), createElementBlock("div", _hoisted_16, [
|
|
276
319
|
(openBlock(true), createElementBlock(Fragment, null, renderList(filter.options, (option) => {
|
|
277
320
|
return openBlock(), createElementBlock("div", {
|
|
278
321
|
key: option.value,
|
|
@@ -281,33 +324,53 @@ const _sfc_main = {
|
|
|
281
324
|
"bg-main": tempSelected[filter.value] === option.value,
|
|
282
325
|
"bg-light": tempSelected[filter.value] !== option.value
|
|
283
326
|
}])
|
|
284
|
-
}, toDisplayString(option.label), 11,
|
|
327
|
+
}, toDisplayString(option.label), 11, _hoisted_17);
|
|
285
328
|
}), 128))
|
|
286
|
-
])) : filter.type === "range" ? (openBlock(), createElementBlock("div",
|
|
329
|
+
])) : filter.type === "range" ? (openBlock(), createElementBlock("div", _hoisted_18, [
|
|
287
330
|
createVNode(Field, {
|
|
288
331
|
field: tempSelected[filter.value].min,
|
|
289
332
|
"onUpdate:field": ($event) => tempSelected[filter.value].min = $event,
|
|
290
333
|
placeholder: filter.minPlaceholder || "Min",
|
|
291
334
|
type: "number",
|
|
292
|
-
class: "w-50 bg-light radius-small"
|
|
335
|
+
class: "w-50 bg-light pd-small radius-small"
|
|
293
336
|
}, null, 8, ["field", "onUpdate:field", "placeholder"]),
|
|
294
337
|
createVNode(Field, {
|
|
295
338
|
field: tempSelected[filter.value].max,
|
|
296
339
|
"onUpdate:field": ($event) => tempSelected[filter.value].max = $event,
|
|
297
340
|
placeholder: filter.maxPlaceholder || "Max",
|
|
298
341
|
type: "number",
|
|
299
|
-
class: "w-50 bg-light radius-small"
|
|
342
|
+
class: "w-50 bg-light pd-small radius-small"
|
|
300
343
|
}, null, 8, ["field", "onUpdate:field", "placeholder"])
|
|
344
|
+
])) : filter.type === "date" ? (openBlock(), createElementBlock("div", _hoisted_19, [
|
|
345
|
+
createElementVNode("div", {
|
|
346
|
+
onClick: () => {
|
|
347
|
+
tempDateRange.value = tempSelected[filter.value];
|
|
348
|
+
tempSelected[filter.value] = tempSelected[filter.value] || null;
|
|
349
|
+
},
|
|
350
|
+
class: "pd-small radius-small bg-light cursor-pointer flex-v-center flex gap-micro"
|
|
351
|
+
}, [
|
|
352
|
+
createVNode(_sfc_main$2, { class: "i-small" }),
|
|
353
|
+
createElementVNode("span", null, toDisplayString(tempSelected[filter.value] ? `${unref(formatDate)(tempSelected[filter.value].start, { dayMonth: true, language: "en" })} - ${unref(formatDate)(tempSelected[filter.value].end, { dayMonth: true, language: "en" })}` : "Select dates"), 1)
|
|
354
|
+
], 8, _hoisted_20),
|
|
355
|
+
createElementVNode("div", _hoisted_21, [
|
|
356
|
+
createVNode(Calendar, {
|
|
357
|
+
date: tempSelected[filter.value],
|
|
358
|
+
"onUpdate:date": ($event) => tempSelected[filter.value] = $event,
|
|
359
|
+
allowRange: true,
|
|
360
|
+
disablePastDates: true,
|
|
361
|
+
class: "bg-light radius-small"
|
|
362
|
+
}, null, 8, ["date", "onUpdate:date"])
|
|
363
|
+
])
|
|
301
364
|
])) : createCommentVNode("", true),
|
|
302
|
-
createElementVNode("div",
|
|
365
|
+
createElementVNode("div", _hoisted_22, [
|
|
303
366
|
createElementVNode("button", {
|
|
304
367
|
onClick: ($event) => cancelFilter(filter.value),
|
|
305
368
|
class: "w-100 button bg-light"
|
|
306
|
-
}, " Cancel ", 8,
|
|
369
|
+
}, " Cancel ", 8, _hoisted_23),
|
|
307
370
|
createElementVNode("button", {
|
|
308
371
|
onClick: ($event) => applyFilter(filter.value),
|
|
309
372
|
class: "w-100 button bg-main"
|
|
310
|
-
}, " Apply ", 8,
|
|
373
|
+
}, " Apply ", 8, _hoisted_24)
|
|
311
374
|
])
|
|
312
375
|
]),
|
|
313
376
|
_: 2
|
|
@@ -317,7 +380,7 @@ const _sfc_main = {
|
|
|
317
380
|
};
|
|
318
381
|
}
|
|
319
382
|
};
|
|
320
|
-
const Filters = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
383
|
+
const Filters = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-e749b035"]]);
|
|
321
384
|
export {
|
|
322
385
|
Filters as default
|
|
323
386
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Filters.vue2.js","sources":["../../../../../../../../src/modules/globals/views/components/sections/Filters.vue"],"sourcesContent":["<template>\n <div class=\"flex gap-thin\">\n <!-- All Filters Button -->\n <button\n @click=\"showAllFilters = true\"\n class=\"pd-thin radius-medium bg-light flex-v-center flex gap-micro cursor-pointer\"\n :class=\"{ 'bg-main': activeFiltersCount > 0 }\"\n >\n <IconFilter class=\"i-small\" />\n <span v-if=\"activeFiltersCount\">{{ activeFiltersCount }}</span>\n </button>\n\n <!-- Individual Filter Buttons -->\n <button\n v-for=\"filter in filters\"\n :key=\"filter.value\"\n @click=\"openFilter(filter.value)\"\n class=\"pd-thin radius-medium bg-light cursor-pointer\"\n :class=\"{ 'selected bg-main': isFilterActive(filter) }\"\n >\n {{ filter.title }}\n <span v-if=\"getFilterValue(filter)\" class=\"mn-l-micro\">\n {{ formatFilterValue(filter) }}\n </span>\n </button>\n\n <!-- All Filters Popup -->\n <Popup\n :isPopupOpen=\"showAllFilters\"\n @close-popup=\"showAllFilters = false\"\n :align=\"isPhone() ? 'bottom center' : 'center center'\"\n class=\"w-min-20r bg-white radius-medium mobile:radius-zero mobile:radius-tr-medium mobile:radius-tl-medium mobile:w-100 pd-medium\"\n >\n <div class=\"flex-v-center flex-nowrap flex mn-b-medium\">\n <h3 class=\"flex-child-full\">Filters</h3>\n <IconCross \n @click=\"showAllFilters = false\" \n class=\"i-regular cursor-pointer\"\n />\n </div>\n\n <div class=\"filters-content\">\n <div \n v-for=\"filter in filters\" \n :key=\"filter.value\"\n class=\"mn-b-medium\"\n >\n <h4 class=\"mn-b-thin\">{{ filter.title }}</h4>\n \n <!-- Checkbox Filter -->\n <div v-if=\"filter.type === 'checkbox'\">\n <Checkbox\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n :label=\"option.label\"\n :value=\"option.value\"\n v-model:radio=\"tempSelected[filter.value]\"\n mode=\"checkbox\"\n class=\"mn-b-micro\"\n />\n </div>\n\n <!-- Radio Filter -->\n <div v-else-if=\"filter.type === 'radio'\">\n <div\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n @click=\"tempSelected[filter.value] = option.value\"\n class=\"pd-small radius-small cursor-pointer mn-b-micro\"\n :class=\"{ \n 'bg-main': tempSelected[filter.value] === option.value,\n 'bg-light': tempSelected[filter.value] !== option.value\n }\"\n >\n {{ option.label }}\n </div>\n </div>\n\n <!-- Range Filter -->\n <div v-else-if=\"filter.type === 'range'\" class=\"flex gap-thin\">\n <Field\n v-model:field=\"tempSelected[filter.value].min\"\n :placeholder=\"filter.minPlaceholder || 'Min'\"\n type=\"number\"\n class=\"w-50 bg-light radius-small\"\n />\n <Field\n v-model:field=\"tempSelected[filter.value].max\"\n :placeholder=\"filter.maxPlaceholder || 'Max'\"\n type=\"number\"\n class=\"w-50 bg-light radius-small\"\n />\n </div>\n </div>\n </div>\n\n <div class=\"flex gap-thin mn-t-medium\">\n <button \n @click=\"applyAllFilters\" \n class=\"button bg-main flex-child-full\"\n >\n Apply\n </button>\n <button \n @click=\"resetFilters\" \n class=\"button bg-light\"\n >\n Reset Filters\n </button>\n </div>\n </Popup>\n\n <!-- Individual Filter Popups -->\n <Popup\n v-for=\"filter in filters\"\n :key=\"`popup-${filter.value}`\"\n :isPopupOpen=\"individualPopups[filter.value]\"\n @close-popup=\"individualPopups[filter.value] = false\"\n :align=\"isPhone() ? 'bottom center' : 'center center'\"\n class=\"bg-white radius-medium mobile:radius-zero mobile:radius-tr-medium mobile:radius-tl-medium mobile:w-100 pd-medium\"\n >\n <h4 class=\"mn-b-medium\">{{ filter.title }}</h4>\n \n <!-- Checkbox Filter -->\n <div v-if=\"filter.type === 'checkbox'\">\n <Checkbox\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n :label=\"option.label\"\n :value=\"option.value\"\n v-model:radio=\"tempSelected[filter.value]\"\n mode=\"checkbox\"\n class=\"mn-b-micro\"\n />\n </div>\n\n <!-- Radio Filter -->\n <div v-else-if=\"filter.type === 'radio'\">\n <div\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n @click=\"tempSelected[filter.value] = option.value\"\n class=\"pd-small radius-small cursor-pointer mn-b-micro\"\n :class=\"{ \n 'bg-main': tempSelected[filter.value] === option.value,\n 'bg-light': tempSelected[filter.value] !== option.value\n }\"\n >\n {{ option.label }}\n </div>\n </div>\n\n <!-- Range Filter -->\n <div v-else-if=\"filter.type === 'range'\" class=\"flex gap-thin\">\n <Field\n v-model:field=\"tempSelected[filter.value].min\"\n :placeholder=\"filter.minPlaceholder || 'Min'\"\n type=\"number\"\n class=\"w-50 bg-light radius-small\"\n />\n <Field\n v-model:field=\"tempSelected[filter.value].max\"\n :placeholder=\"filter.maxPlaceholder || 'Max'\"\n type=\"number\"\n class=\"w-50 bg-light radius-small\"\n />\n </div>\n\n <div class=\"flex gap-thin mn-t-medium\">\n <button \n @click=\"cancelFilter(filter.value)\" \n class=\"w-100 button bg-light\"\n >\n Cancel\n </button>\n <button \n @click=\"applyFilter(filter.value)\" \n class=\"w-100 button bg-main\"\n >\n Apply\n </button>\n \n </div>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, reactive, watch } from 'vue'\nimport Popup from '@martyrs/src/components/Popup/Popup.vue'\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport IconFilter from '@martyrs/src/modules/icons/navigation/IconFilter.vue'\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue'\n\nconst filters = defineModel('filters', {\n type: Array,\n required: true\n})\n\nconst selected = defineModel('selected', {\n type: Object,\n default: () => ({})\n})\n\nconst emit = defineEmits(['select'])\n\n// State\nconst showAllFilters = ref(false)\nconst individualPopups = reactive({})\nconst tempSelected = reactive({})\n\n// Initialize popups and temp values\nwatch(filters, (newFilters) => {\n newFilters.forEach(filter => {\n individualPopups[filter.value] = false\n \n if (!tempSelected[filter.value]) {\n if (filter.type === 'checkbox') {\n tempSelected[filter.value] = selected.value[filter.value] || []\n } else if (filter.type === 'range') {\n tempSelected[filter.value] = selected.value[filter.value] || { min: '', max: '' }\n } else {\n tempSelected[filter.value] = selected.value[filter.value] || null\n }\n }\n })\n}, { immediate: true, deep: true })\n\n// Sync selected to tempSelected\nwatch(selected, (newSelected) => {\n Object.keys(newSelected).forEach(key => {\n tempSelected[key] = newSelected[key]\n })\n}, { deep: true })\n\n// Computed\nconst activeFiltersCount = computed(() => {\n return Object.entries(selected.value).filter(([key, value]) => {\n if (Array.isArray(value)) return value.length > 0\n if (typeof value === 'object' && value !== null) {\n return value.min || value.max\n }\n return value !== null && value !== undefined\n }).length\n})\n\n// Methods\nconst openFilter = (filterValue) => {\n individualPopups[filterValue] = true\n}\n\nconst isFilterActive = (filter) => {\n const value = selected.value[filter.value]\n if (!value) return false\n if (Array.isArray(value)) return value.length > 0\n if (filter.type === 'range') return value.min || value.max\n return true\n}\n\nconst getFilterValue = (filter) => {\n return selected.value[filter.value]\n}\n\nconst formatFilterValue = (filter) => {\n const value = selected.value[filter.value]\n if (!value) return ''\n \n if (Array.isArray(value)) {\n return `(${value.length})`\n }\n \n if (filter.type === 'range') {\n if (!value.min && !value.max) return ''\n return `${value.min || '0'}-${value.max || '∞'}`\n }\n \n if (filter.type === 'radio') {\n const option = filter.options.find(o => o.value === value)\n return option ? `(${option.label})` : ''\n }\n \n return ''\n}\n\nconst applyFilter = (filterValue) => {\n selected.value[filterValue] = tempSelected[filterValue]\n individualPopups[filterValue] = false\n emit('select', { filter: filterValue, value: tempSelected[filterValue] })\n}\n\nconst cancelFilter = (filterValue) => {\n const filter = filters.value.find(f => f.value === filterValue)\n if (filter) {\n if (filter.type === 'checkbox') {\n tempSelected[filterValue] = selected.value[filterValue] || []\n } else if (filter.type === 'range') {\n tempSelected[filterValue] = selected.value[filterValue] || { min: '', max: '' }\n } else {\n tempSelected[filterValue] = selected.value[filterValue] || null\n }\n }\n individualPopups[filterValue] = false\n}\n\nconst applyAllFilters = () => {\n Object.entries(tempSelected).forEach(([key, value]) => {\n if (selected.value[key] !== value) {\n selected.value[key] = value\n emit('select', { filter: key, value })\n }\n })\n showAllFilters.value = false\n}\n\nconst resetFilters = () => {\n filters.value.forEach(filter => {\n if (filter.type === 'checkbox') {\n tempSelected[filter.value] = []\n selected.value[filter.value] = []\n } else if (filter.type === 'range') {\n tempSelected[filter.value] = { min: '', max: '' }\n selected.value[filter.value] = { min: '', max: '' }\n } else {\n tempSelected[filter.value] = null\n selected.value[filter.value] = null\n }\n emit('select', { filter: filter.value, value: null })\n })\n}\n</script>\n\n<style scoped>\n.filters-content {\n max-height: 60vh;\n overflow-y: auto;\n}\n</style>"],"names":["_useModel"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Filters.vue2.js","sources":["../../../../../../../../src/modules/globals/views/components/sections/Filters.vue"],"sourcesContent":["<template>\n <div class=\"flex t-nowrap gap-thin\">\n <!-- All Filters Button -->\n <button\n @click=\"showAllFilters = true\"\n class=\"pd-small radius-medium bg-light flex-v-center flex gap-micro cursor-pointer\"\n :class=\"{ 'bg-main': activeFiltersCount > 0 }\"\n >\n <IconFilter class=\"i-medium\" />\n <span class=\"h-1r\"></span>\n <span v-if=\"activeFiltersCount\">{{ activeFiltersCount }}</span>\n </button>\n\n <!-- Individual Filter Buttons -->\n <button\n v-for=\"filter in filters\"\n :key=\"filter.value\"\n @click=\"openFilter(filter.value)\"\n class=\"pd-small radius-medium bg-light cursor-pointer flex-v-center flex gap-micro\"\n :class=\"{ 'selected bg-main': isFilterActive(filter) }\"\n >\n <IconCalendar v-if=\"filter.type === 'date'\" class=\"i-medium\" />\n <span class=\"t-nowrap h-1r\">{{ filter.title }}</span>\n <span v-if=\"getFilterValue(filter)\" class=\"mn-l-micro\">\n {{ formatFilterValue(filter) }}\n </span>\n </button>\n\n <!-- All Filters Popup -->\n <Popup\n :isPopupOpen=\"showAllFilters\"\n @close-popup=\"showAllFilters = false\"\n :align=\"isPhone() ? 'bottom center' : 'center center'\"\n class=\"w-min-20r bg-white radius-medium mobile:radius-zero mobile:radius-tr-medium mobile:radius-tl-medium mobile:w-100 pd-medium\"\n >\n <div class=\"flex-v-center flex-nowrap flex mn-b-medium\">\n <h3 class=\"flex-child-full\">Filters</h3>\n <IconCross \n @click=\"showAllFilters = false\" \n class=\"i-regular cursor-pointer\"\n />\n </div>\n\n <div class=\"filters-content\">\n <div \n v-for=\"filter in filters\" \n :key=\"filter.value\"\n class=\"mn-b-medium\"\n >\n <h4 class=\"mn-b-small\">{{ filter.title }}</h4>\n \n <!-- Checkbox Filter -->\n <div v-if=\"filter.type === 'checkbox'\">\n <Checkbox\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n :label=\"option.label\"\n :value=\"option.value\"\n v-model:radio=\"tempSelected[filter.value]\"\n mode=\"checkbox\"\n class=\"mn-b-micro\"\n />\n </div>\n\n <!-- Radio Filter -->\n <div v-else-if=\"filter.type === 'radio'\">\n <div\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n @click=\"tempSelected[filter.value] = option.value\"\n class=\"pd-small radius-small cursor-pointer mn-b-micro\"\n :class=\"{ \n 'bg-main': tempSelected[filter.value] === option.value,\n 'bg-light': tempSelected[filter.value] !== option.value\n }\"\n >\n {{ option.label }}\n </div>\n </div>\n\n <!-- Range Filter -->\n <div v-else-if=\"filter.type === 'range'\" class=\"flex gap-thin\">\n <Field\n v-model:field=\"tempSelected[filter.value].min\"\n :placeholder=\"filter.minPlaceholder || 'Min'\"\n type=\"number\"\n class=\"w-50 bg-light pd-small radius-small\"\n />\n <Field\n v-model:field=\"tempSelected[filter.value].max\"\n :placeholder=\"filter.maxPlaceholder || 'Max'\"\n type=\"number\"\n class=\"w-50 bg-light pd-small radius-small\"\n />\n </div>\n\n <!-- Date Filter -->\n <div v-else-if=\"filter.type === 'date'\">\n <Calendar\n v-model:date=\"tempSelected[filter.value]\"\n :allowRange=\"true\"\n :disablePastDates=\"true\"\n class=\"bg-light radius-small\"\n />\n </div>\n </div>\n </div>\n\n <div class=\"flex gap-thin mn-t-medium\">\n <button \n @click=\"applyAllFilters\" \n class=\"button bg-main flex-child-full\"\n >\n Apply\n </button>\n <button \n @click=\"resetFilters\" \n class=\"button bg-light\"\n >\n Reset Filters\n </button>\n </div>\n </Popup>\n\n <!-- Individual Filter Popups -->\n <Popup\n v-for=\"filter in filters\"\n :key=\"`popup-${filter.value}`\"\n :isPopupOpen=\"individualPopups[filter.value]\"\n @close-popup=\"individualPopups[filter.value] = false\"\n :align=\"isPhone() ? 'bottom center' : 'center center'\"\n class=\"bg-white radius-medium mobile:radius-zero mobile:radius-tr-medium mobile:radius-tl-medium mobile:w-100 pd-medium\"\n >\n <h4 class=\"mn-b-medium\">{{ filter.title }}</h4>\n \n <!-- Checkbox Filter -->\n <div v-if=\"filter.type === 'checkbox'\">\n <Checkbox\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n :label=\"option.label\"\n :value=\"option.value\"\n v-model:radio=\"tempSelected[filter.value]\"\n mode=\"checkbox\"\n class=\"mn-b-micro\"\n />\n </div>\n\n <!-- Radio Filter -->\n <div v-else-if=\"filter.type === 'radio'\">\n <div\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n @click=\"tempSelected[filter.value] = option.value\"\n class=\"pd-small radius-small cursor-pointer mn-b-micro\"\n :class=\"{ \n 'bg-main': tempSelected[filter.value] === option.value,\n 'bg-light': tempSelected[filter.value] !== option.value\n }\"\n >\n {{ option.label }}\n </div>\n </div>\n\n <!-- Range Filter -->\n <div v-else-if=\"filter.type === 'range'\" class=\"flex gap-thin\">\n <Field\n v-model:field=\"tempSelected[filter.value].min\"\n :placeholder=\"filter.minPlaceholder || 'Min'\"\n type=\"number\"\n class=\"w-50 bg-light pd-small radius-small\"\n />\n <Field\n v-model:field=\"tempSelected[filter.value].max\"\n :placeholder=\"filter.maxPlaceholder || 'Max'\"\n type=\"number\"\n class=\"w-50 bg-light pd-small radius-small\"\n />\n </div>\n\n <!-- Date Filter -->\n <div v-else-if=\"filter.type === 'date'\">\n <div \n @click=\"() => { tempDateRange = tempSelected[filter.value]; tempSelected[filter.value] = tempSelected[filter.value] || null; }\"\n class=\"pd-small radius-small bg-light cursor-pointer flex-v-center flex gap-micro\"\n >\n <IconCalendar class=\"i-small\" />\n <span>{{ tempSelected[filter.value] ? `${formatDate(tempSelected[filter.value].start, { dayMonth: true, language: 'en' })} - ${formatDate(tempSelected[filter.value].end, { dayMonth: true, language: 'en' })}` : 'Select dates'}}</span>\n </div>\n <div class=\"mn-t-small\">\n <Calendar\n v-model:date=\"tempSelected[filter.value]\"\n :allowRange=\"true\"\n :disablePastDates=\"true\"\n class=\"bg-light radius-small\"\n />\n </div>\n </div>\n\n <div class=\"flex gap-thin mn-t-medium\">\n <button \n @click=\"cancelFilter(filter.value)\" \n class=\"w-100 button bg-light\"\n >\n Cancel\n </button>\n <button \n @click=\"applyFilter(filter.value)\" \n class=\"w-100 button bg-main\"\n >\n Apply\n </button>\n \n </div>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, reactive, watch } from 'vue'\nimport { useGlobalMixins } from '@martyrs/src/modules/globals/views/mixins/mixins.js'\nimport Popup from '@martyrs/src/components/Popup/Popup.vue'\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport Calendar from '@martyrs/src/components/Calendar/Calendar.vue'\nimport IconFilter from '@martyrs/src/modules/icons/navigation/IconFilter.vue'\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue'\nimport IconCalendar from '@martyrs/src/modules/icons/entities/IconCalendar.vue'\n\nconst filters = defineModel('filters', {\n type: Array,\n required: true\n})\n\nconst selected = defineModel('selected', {\n type: Object,\n default: () => ({})\n})\n\nconst emit = defineEmits(['select'])\n\nconst { formatDate } = useGlobalMixins()\n\n// State\nconst showAllFilters = ref(false)\nconst individualPopups = reactive({})\nconst tempSelected = reactive({})\nconst tempDateRange = ref(null)\n\n// Initialize popups and temp values\nwatch(filters, (newFilters) => {\n newFilters.forEach(filter => {\n individualPopups[filter.value] = false\n \n if (!tempSelected[filter.value]) {\n if (filter.type === 'checkbox') {\n tempSelected[filter.value] = [...(selected.value[filter.value] || [])]\n } else if (filter.type === 'range') {\n tempSelected[filter.value] = { ...(selected.value[filter.value] || { min: '', max: '' }) }\n } else if (filter.type === 'date') {\n tempSelected[filter.value] = selected.value[filter.value] || null\n } else {\n tempSelected[filter.value] = selected.value[filter.value] || null\n }\n }\n })\n}, { immediate: true, deep: true })\n\n// Sync selected to tempSelected\nwatch(selected, (newSelected) => {\n Object.keys(newSelected).forEach(key => {\n const filter = filters.value.find(f => f.value === key)\n if (filter) {\n if (filter.type === 'checkbox') {\n tempSelected[key] = [...(newSelected[key] || [])]\n } else if (filter.type === 'range') {\n tempSelected[key] = { ...(newSelected[key] || { min: '', max: '' }) }\n } else {\n tempSelected[key] = newSelected[key]\n }\n }\n })\n}, { deep: true })\n\n// Computed\nconst activeFiltersCount = computed(() => {\n return Object.entries(selected.value).filter(([key, value]) => {\n if (Array.isArray(value)) return value.length > 0\n if (typeof value === 'object' && value !== null) {\n return value.min || value.max\n }\n return value !== null && value !== undefined\n }).length\n})\n\n// Methods\nconst openFilter = (filterValue) => {\n individualPopups[filterValue] = true\n}\n\nconst isFilterActive = (filter) => {\n const value = selected.value[filter.value]\n if (!value) return false\n if (Array.isArray(value)) return value.length > 0\n if (filter.type === 'range') return value.min || value.max\n return true\n}\n\nconst getFilterValue = (filter) => {\n return selected.value[filter.value]\n}\n\nconst formatFilterValue = (filter) => {\n const value = selected.value[filter.value]\n if (!value) return ''\n \n if (Array.isArray(value)) {\n return `(${value.length})`\n }\n \n if (filter.type === 'range') {\n if (!value.min && !value.max) return ''\n return `${value.min || '0'}-${value.max || '∞'}`\n }\n \n if (filter.type === 'date') {\n if (!value || !value.start || !value.end) return ''\n return `${formatDate(value.start, { dayMonth: true, language: 'en' })} - ${formatDate(value.end, { dayMonth: true, language: 'en' })}`\n }\n \n if (filter.type === 'radio') {\n const option = filter.options.find(o => o.value === value)\n return option ? `(${option.label})` : ''\n }\n \n return ''\n}\n\nconst applyFilter = (filterValue) => {\n selected.value[filterValue] = tempSelected[filterValue]\n individualPopups[filterValue] = false\n emit('select', { filter: filterValue, value: tempSelected[filterValue] })\n}\n\nconst cancelFilter = (filterValue) => {\n const filter = filters.value.find(f => f.value === filterValue)\n if (filter) {\n if (filter.type === 'checkbox') {\n tempSelected[filterValue] = [...(selected.value[filterValue] || [])]\n } else if (filter.type === 'range') {\n tempSelected[filterValue] = { ...(selected.value[filterValue] || { min: '', max: '' }) }\n } else if (filter.type === 'date') {\n tempSelected[filterValue] = selected.value[filterValue] || null\n } else {\n tempSelected[filterValue] = selected.value[filterValue] || null\n }\n }\n individualPopups[filterValue] = false\n}\n\nconst applyAllFilters = () => {\n Object.entries(tempSelected).forEach(([key, value]) => {\n if (selected.value[key] !== value) {\n selected.value[key] = value\n emit('select', { filter: key, value })\n }\n })\n showAllFilters.value = false\n}\n\nconst resetFilters = () => {\n filters.value.forEach(filter => {\n if (filter.type === 'checkbox') {\n tempSelected[filter.value] = []\n selected.value[filter.value] = []\n } else if (filter.type === 'range') {\n tempSelected[filter.value] = { min: '', max: '' }\n selected.value[filter.value] = { min: '', max: '' }\n } else if (filter.type === 'date') {\n tempSelected[filter.value] = null\n selected.value[filter.value] = null\n } else {\n tempSelected[filter.value] = null\n selected.value[filter.value] = null\n }\n emit('select', { filter: filter.value, value: null })\n })\n}\n</script>\n\n<style scoped>\n.filters-content {\n max-height: 60vh;\n overflow-y: auto;\n}\n</style>"],"names":["_useModel"],"mappings":"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"}
|
|
@@ -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 Tab = require("../../../../../components/Tab/Tab.
|
|
4
|
+
const Tab = require("../../../../../components/Tab/Tab.vue.cjs");
|
|
5
5
|
const _hoisted_1 = { class: "flex-v-center flex-nowrap flex" };
|
|
6
6
|
const _hoisted_2 = { class: "h2 mn-r-auto" };
|
|
7
7
|
const _hoisted_3 = ["onClick"];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { resolveComponent, createElementBlock, openBlock, createElementVNode, createBlock, createCommentVNode, toDisplayString, Fragment, renderList, normalizeClass, withCtx, createTextVNode } from "vue";
|
|
2
|
-
import _sfc_main$1 from "../../../../../components/Tab/Tab.
|
|
2
|
+
import _sfc_main$1 from "../../../../../components/Tab/Tab.vue.js";
|
|
3
3
|
const _hoisted_1 = { class: "flex-v-center flex-nowrap flex" };
|
|
4
4
|
const _hoisted_2 = { class: "h2 mn-r-auto" };
|
|
5
5
|
const _hoisted_3 = ["onClick"];
|
|
@@ -4,7 +4,7 @@ const vue = require("vue");
|
|
|
4
4
|
;/* empty css */
|
|
5
5
|
const _pluginVue_exportHelper = require("../../../../../_virtual/_plugin-vue_export-helper.cjs");
|
|
6
6
|
const _hoisted_1 = {
|
|
7
|
-
class: "
|
|
7
|
+
class: "w-auto",
|
|
8
8
|
width: "270",
|
|
9
9
|
height: "300",
|
|
10
10
|
viewBox: "0 0 270 300",
|
|
@@ -16,11 +16,11 @@ const _sfc_main = {
|
|
|
16
16
|
setup(__props) {
|
|
17
17
|
return (_ctx, _cache) => {
|
|
18
18
|
return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1, _cache[0] || (_cache[0] = [
|
|
19
|
-
vue.createStaticVNode('<g clip-path="url(#clip0)" data-v-
|
|
19
|
+
vue.createStaticVNode('<g clip-path="url(#clip0)" data-v-4241147a><path fill-rule="evenodd" clip-rule="evenodd" d="M264.626 52.2791C265.531 57.2858 266 62.4066 266 67.6155C266 125.882 207.349 173.116 135 173.116C62.6507 173.116 4 125.882 4 67.6155C4 62.4066 4.46875 57.2858 5.37413 52.2791C11.0997 32.6306 21.1714 14.8341 34.4789 0C34.1621 2.17658 34 4.38345 34 6.61562C34 43.8948 79.2192 74.1156 135 74.1156C190.781 74.1156 236 43.8948 236 6.61562C236 4.38345 235.838 2.17659 235.521 5.29254e-06C248.829 14.8341 258.9 32.6306 264.626 52.2791Z" fill="#00FF88" data-v-4241147a></path><path d="M270 165C270 239.558 209.558 300 135 300C60.4416 300 0 239.558 0 165C0 90.4416 60.4416 30 135 30C209.558 30 270 90.4416 270 165Z" fill="#00FF88" data-v-4241147a></path><ellipse class="eye" cx="143" cy="155.5" rx="37" ry="37.5" stroke="white" fill="white" stroke-width="1.48515" data-v-4241147a></ellipse><g class="eye" data-v-4241147a><path d="M215 166C215 210.849 179.07 247 135 247C90.9303 247 55 210.849 55 166C55 121.151 90.9303 85 135 85C179.07 85 215 121.151 215 166Z" stroke="white" stroke-width="11" data-v-4241147a></path></g></g><defs data-v-4241147a><clipPath id="clip0" data-v-4241147a><rect width="269.333" height="300" fill="white" data-v-4241147a></rect></clipPath></defs>', 2)
|
|
20
20
|
]));
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
23
|
};
|
|
24
|
-
const Logotype = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-
|
|
24
|
+
const Logotype = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-4241147a"]]);
|
|
25
25
|
exports.default = Logotype;
|
|
26
26
|
//# sourceMappingURL=Logotype.vue.cjs.map
|
|
@@ -2,7 +2,7 @@ import { createElementBlock, openBlock, createStaticVNode } from "vue";
|
|
|
2
2
|
/* empty css */
|
|
3
3
|
import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
4
4
|
const _hoisted_1 = {
|
|
5
|
-
class: "
|
|
5
|
+
class: "w-auto",
|
|
6
6
|
width: "270",
|
|
7
7
|
height: "300",
|
|
8
8
|
viewBox: "0 0 270 300",
|
|
@@ -14,12 +14,12 @@ const _sfc_main = {
|
|
|
14
14
|
setup(__props) {
|
|
15
15
|
return (_ctx, _cache) => {
|
|
16
16
|
return openBlock(), createElementBlock("svg", _hoisted_1, _cache[0] || (_cache[0] = [
|
|
17
|
-
createStaticVNode('<g clip-path="url(#clip0)" data-v-
|
|
17
|
+
createStaticVNode('<g clip-path="url(#clip0)" data-v-4241147a><path fill-rule="evenodd" clip-rule="evenodd" d="M264.626 52.2791C265.531 57.2858 266 62.4066 266 67.6155C266 125.882 207.349 173.116 135 173.116C62.6507 173.116 4 125.882 4 67.6155C4 62.4066 4.46875 57.2858 5.37413 52.2791C11.0997 32.6306 21.1714 14.8341 34.4789 0C34.1621 2.17658 34 4.38345 34 6.61562C34 43.8948 79.2192 74.1156 135 74.1156C190.781 74.1156 236 43.8948 236 6.61562C236 4.38345 235.838 2.17659 235.521 5.29254e-06C248.829 14.8341 258.9 32.6306 264.626 52.2791Z" fill="#00FF88" data-v-4241147a></path><path d="M270 165C270 239.558 209.558 300 135 300C60.4416 300 0 239.558 0 165C0 90.4416 60.4416 30 135 30C209.558 30 270 90.4416 270 165Z" fill="#00FF88" data-v-4241147a></path><ellipse class="eye" cx="143" cy="155.5" rx="37" ry="37.5" stroke="white" fill="white" stroke-width="1.48515" data-v-4241147a></ellipse><g class="eye" data-v-4241147a><path d="M215 166C215 210.849 179.07 247 135 247C90.9303 247 55 210.849 55 166C55 121.151 90.9303 85 135 85C179.07 85 215 121.151 215 166Z" stroke="white" stroke-width="11" data-v-4241147a></path></g></g><defs data-v-4241147a><clipPath id="clip0" data-v-4241147a><rect width="269.333" height="300" fill="white" data-v-4241147a></rect></clipPath></defs>', 2)
|
|
18
18
|
]));
|
|
19
19
|
};
|
|
20
20
|
}
|
|
21
21
|
};
|
|
22
|
-
const Logotype = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
22
|
+
const Logotype = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-4241147a"]]);
|
|
23
23
|
export {
|
|
24
24
|
Logotype as default
|
|
25
25
|
};
|