@ozdao/martyrs 0.2.546 → 0.2.548
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/auth.server.cjs +9 -9
- package/dist/auth.server.js +9 -9
- package/dist/builder.cjs +12 -751
- package/dist/builder.js +21 -721
- package/dist/chats.server.cjs +61 -59
- package/dist/chats.server.js +61 -59
- package/dist/{common.schema-BzFEVNn3.cjs → common.schema-BtXLULba.cjs} +2 -2
- package/dist/{common.schema-Bw1O5_2Q.js → common.schema-GFSlNJo7.js} +2 -2
- package/dist/community.server.cjs +10 -10
- package/dist/community.server.js +10 -10
- package/dist/{credentials.schema-C9FB2EyY.js → credentials.schema--2vvcu8c.js} +2 -2
- package/dist/{credentials.schema-DwhGdrwC.cjs → credentials.schema-DVXaFnXl.cjs} +2 -2
- package/dist/{crud-Ed3dcRsC.js → crud-D_snnl2K.js} +78 -2
- package/dist/{crud-DGM6Xa1R.cjs → crud-pedHI2by.cjs} +78 -2
- package/dist/{engagement.schema-JADHu8pj.cjs → engagement.schema-DHw4iY_W.cjs} +2 -2
- package/dist/{engagement.schema-Dh1adRsn.js → engagement.schema-fh6W1fb_.js} +2 -2
- package/dist/events.server.cjs +452 -11
- package/dist/events.server.js +433 -9
- package/dist/files.server.cjs +2 -2
- package/dist/files.server.js +2 -2
- package/dist/gallery.server.cjs +5 -5
- package/dist/gallery.server.js +5 -5
- package/dist/globals.server.cjs +11 -373
- package/dist/globals.server.js +11 -356
- package/dist/globals.websocket-C2FxNmZ1.js +357 -0
- package/dist/globals.websocket-Cm72lPCs.cjs +374 -0
- package/dist/inventory.server.cjs +4 -5
- package/dist/inventory.server.js +2 -3
- package/dist/main-DvjCsGb1.cjs +11 -0
- package/dist/{main-d9n_ibdE.js → main-q-y0Lhcy.js} +28 -28
- package/dist/martyrs/node_modules/.pnpm/bignumber.js@9.2.1/node_modules/bignumber.js/bignumber.cjs +8 -8
- package/dist/martyrs/node_modules/.pnpm/bignumber.js@9.2.1/node_modules/bignumber.js/bignumber.cjs.map +1 -1
- package/dist/martyrs/node_modules/.pnpm/bignumber.js@9.2.1/node_modules/bignumber.js/bignumber.js +8 -8
- package/dist/martyrs/node_modules/.pnpm/bignumber.js@9.2.1/node_modules/bignumber.js/bignumber.js.map +1 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/ParseError.cjs +2 -2
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/ParseError.cjs.map +1 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/ParseError.js +2 -2
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/ParseError.js.map +1 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/PhoneNumber.cjs +2 -2
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/PhoneNumber.cjs.map +1 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/PhoneNumber.js +2 -2
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/PhoneNumber.js.map +1 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/metadata.cjs +8 -8
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/metadata.cjs.map +1 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/metadata.js +8 -8
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/metadata.js.map +1 -1
- package/dist/martyrs/src/components/Button/Button.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Button/Button.vue.js.map +1 -1
- package/dist/martyrs/src/components/Calendar/Calendar.vue2.cjs +3 -3
- package/dist/martyrs/src/components/Calendar/Calendar.vue2.cjs.map +1 -1
- package/dist/martyrs/src/components/Calendar/Calendar.vue2.js +3 -3
- package/dist/martyrs/src/components/Calendar/Calendar.vue2.js.map +1 -1
- package/dist/martyrs/src/components/Chips/Chips.vue2.cjs +1 -1
- package/dist/martyrs/src/components/Chips/Chips.vue2.js +1 -1
- package/dist/martyrs/src/components/Countdown/Countdown.vue.cjs +4 -4
- package/dist/martyrs/src/components/Countdown/Countdown.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Countdown/Countdown.vue.js +4 -4
- package/dist/martyrs/src/components/Countdown/Countdown.vue.js.map +1 -1
- package/dist/martyrs/src/components/EditImages/EditImages.vue2.cjs +1 -1
- package/dist/martyrs/src/components/EditImages/EditImages.vue2.js +1 -1
- package/dist/martyrs/src/components/EmptyState/EmptyState.vue.cjs +1 -1
- package/dist/martyrs/src/components/EmptyState/EmptyState.vue.js +1 -1
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs +1 -1
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +1 -1
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js.map +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js.map +1 -1
- package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.cjs +2 -2
- package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.js +2 -2
- package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.js.map +1 -1
- package/dist/martyrs/src/components/Menu/MenuItem.vue.cjs +1 -1
- package/dist/martyrs/src/components/Menu/MenuItem.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Menu/MenuItem.vue.js +1 -1
- package/dist/martyrs/src/components/Menu/MenuItem.vue.js.map +1 -1
- package/dist/martyrs/src/components/Spoiler/{Spoiler.vue.cjs → Spoiler.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Spoiler/Spoiler.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Spoiler/{Spoiler.vue.js → Spoiler.vue2.js} +2 -2
- package/dist/martyrs/src/components/Spoiler/{Spoiler.vue.cjs.map → Spoiler.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/Status/Snack.vue.cjs +1 -1
- package/dist/martyrs/src/components/Status/Snack.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Status/Snack.vue.js +1 -1
- package/dist/martyrs/src/components/Status/Snack.vue.js.map +1 -1
- package/dist/martyrs/src/components/Status/Status.vue.cjs +1 -1
- package/dist/martyrs/src/components/Status/Status.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Status/Status.vue.js +1 -1
- package/dist/martyrs/src/components/Status/Status.vue.js.map +1 -1
- package/dist/martyrs/src/components/UploadImage/{UploadImage.vue.cjs → UploadImage.vue2.cjs} +5 -5
- package/dist/martyrs/src/components/UploadImage/UploadImage.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/UploadImage/{UploadImage.vue.js → UploadImage.vue2.js} +5 -5
- package/dist/martyrs/src/components/UploadImage/UploadImage.vue2.js.map +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +4 -4
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +4 -4
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +1 -1
- 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 +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +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/sections/FeaturedUsers.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.js.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.cjs +3 -3
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js +3 -3
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs +2 -2
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js +2 -2
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js.map +1 -1
- package/dist/martyrs/src/modules/chats/components/sections/ChatWindow.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/chats/components/sections/ChatWindow.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs +2 -2
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +2 -2
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs +2 -2
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js +2 -2
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/Comments.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/sections/Comments.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/Comments.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/sections/Comments.vue.js.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.cjs +2 -2
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.js +2 -2
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.js.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.cjs +2 -2
- package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.js +2 -2
- package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.js.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/sections/Viewer.vue.cjs +1 -1
- package/dist/martyrs/src/modules/constructor/components/sections/Viewer.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/sections/Viewer.vue.js +1 -1
- package/dist/martyrs/src/modules/constructor/components/sections/Viewer.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs +4 -4
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +4 -4
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +3 -3
- 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 +3 -3
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +4 -4
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +4 -4
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/sections/SelectDate.vue.cjs +2 -2
- package/dist/martyrs/src/modules/events/components/sections/SelectDate.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/sections/SelectDate.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/sections/SelectDate.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/globals.client.cjs +0 -6
- package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/globals.client.js +0 -6
- package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.app.cjs +4 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.app.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.app.js +4 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.app.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +4 -4
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +4 -4
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js.map +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.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/elements/PhotoStack.vue.cjs +4 -4
- package/dist/martyrs/src/modules/globals/views/components/elements/PhotoStack.vue.js +4 -4
- package/dist/martyrs/src/modules/globals/views/components/partials/CitySelection.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/partials/CitySelection.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/CitySelection.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/partials/CitySelection.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.cjs +31 -123
- 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 +31 -123
- 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 +3 -3
- 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 +3 -3
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +3 -3
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +3 -3
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/Walkthrough.vue.cjs +10 -10
- package/dist/martyrs/src/modules/globals/views/components/sections/Walkthrough.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/Walkthrough.vue.js +10 -10
- package/dist/martyrs/src/modules/globals/views/components/sections/Walkthrough.vue.js.map +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.cjs +3 -3
- package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.js +3 -3
- package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.js.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.cjs +2 -2
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.js +2 -2
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.js.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.cjs +3 -3
- package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.js +3 -3
- package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.js.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.cjs +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.js +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.js.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.cjs +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.js +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.js.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.cjs +3 -3
- package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.js +3 -3
- package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.js.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.js +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs +4 -4
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js +4 -4
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.cjs +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs +3 -3
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +3 -3
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs +5 -5
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +5 -5
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs +7 -7
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +7 -7
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs +5 -5
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +5 -5
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs +8 -8
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +8 -8
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.cjs +10 -10
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +10 -10
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs +4 -4
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +4 -4
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs +5 -5
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +5 -5
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs +9 -9
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +9 -9
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.cjs +2 -2
- package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.js +2 -2
- package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +2 -2
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +2 -2
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrder.vue.cjs +8 -8
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrder.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrder.vue.js +8 -8
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrder.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs +4 -4
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +4 -4
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +8 -8
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +8 -8
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/Succes.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/Succes.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +3 -3
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +3 -3
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +3 -3
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +3 -3
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/EmptyState.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/EmptyState.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/Rating.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/blocks/Rating.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.cjs +4 -4
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +4 -4
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs +5 -5
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +5 -5
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +3 -3
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +3 -3
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +7 -7
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +7 -7
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +8 -8
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +8 -8
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.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.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +4 -4
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +4 -4
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs +3 -3
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +3 -3
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs +4 -4
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.js +4 -4
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs +2 -2
- 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 +2 -2
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/elements/{THC.vue.cjs → THC.vue2.cjs} +2 -2
- package/dist/martyrs/src/modules/products/components/elements/THC.vue2.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/elements/{THC.vue.js → THC.vue2.js} +2 -2
- package/dist/martyrs/src/modules/products/components/elements/THC.vue2.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +2 -2
- 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 +2 -2
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +5 -5
- 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 +5 -5
- 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 +3 -3
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +3 -3
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +3 -3
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +3 -3
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +5 -5
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +5 -5
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs +4 -4
- package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js +4 -4
- package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.js.map +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.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs +1 -1
- 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 +1 -1
- 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 +3 -3
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +3 -3
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js.map +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +2 -2
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +2 -2
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +6 -6
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +6 -6
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.cjs +4 -4
- package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.js +4 -4
- package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +4 -4
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +4 -4
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +2 -2
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +2 -2
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js.map +1 -1
- package/dist/martyrs.cjs.js +1 -1
- package/dist/martyrs.css +1 -1
- package/dist/martyrs.es.js +1 -1
- package/dist/{metadata.schema-RlxNv46L.cjs → metadata.schema-BGykn-_r.cjs} +2 -2
- package/dist/{metadata.schema-CWmcDJN7.js → metadata.schema-CIRR_WQ-.js} +2 -2
- package/dist/music.server.cjs +30 -33
- package/dist/music.server.js +30 -33
- package/dist/node_modules/.pnpm/@vue_shared@3.5.21/node_modules/@vue/shared/dist/shared.esm-bundler.cjs +2 -2
- package/dist/node_modules/.pnpm/@vue_shared@3.5.21/node_modules/@vue/shared/dist/shared.esm-bundler.cjs.map +1 -1
- package/dist/node_modules/.pnpm/@vue_shared@3.5.21/node_modules/@vue/shared/dist/shared.esm-bundler.js +2 -2
- package/dist/node_modules/.pnpm/@vue_shared@3.5.21/node_modules/@vue/shared/dist/shared.esm-bundler.js.map +1 -1
- package/dist/node_modules/.pnpm/dayjs@1.11.18/node_modules/dayjs/dayjs.min.cjs +13 -13
- package/dist/node_modules/.pnpm/dayjs@1.11.18/node_modules/dayjs/dayjs.min.cjs.map +1 -1
- package/dist/node_modules/.pnpm/dayjs@1.11.18/node_modules/dayjs/dayjs.min.js +13 -13
- package/dist/node_modules/.pnpm/dayjs@1.11.18/node_modules/dayjs/dayjs.min.js.map +1 -1
- package/dist/node_modules/.pnpm/dayjs@1.11.18/node_modules/dayjs/plugin/weekOfYear.cjs +3 -3
- package/dist/node_modules/.pnpm/dayjs@1.11.18/node_modules/dayjs/plugin/weekOfYear.cjs.map +1 -1
- package/dist/node_modules/.pnpm/dayjs@1.11.18/node_modules/dayjs/plugin/weekOfYear.js +3 -3
- package/dist/node_modules/.pnpm/dayjs@1.11.18/node_modules/dayjs/plugin/weekOfYear.js.map +1 -1
- package/dist/node_modules/.pnpm/lodash.merge@4.6.2/node_modules/lodash.merge/index.cjs +10 -10
- package/dist/node_modules/.pnpm/lodash.merge@4.6.2/node_modules/lodash.merge/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/lodash.merge@4.6.2/node_modules/lodash.merge/index.js +10 -10
- package/dist/node_modules/.pnpm/lodash.merge@4.6.2/node_modules/lodash.merge/index.js.map +1 -1
- package/dist/node_modules/.pnpm/vue-draggable-next@2.3.0_sortablejs@1.15.6_vue@3.5.21_typescript@5.9.2_/node_modules/vue-draggable-next/dist/vue-draggable-next.esm-bundler.cjs +2 -2
- package/dist/node_modules/.pnpm/vue-draggable-next@2.3.0_sortablejs@1.15.6_vue@3.5.21_typescript@5.9.2_/node_modules/vue-draggable-next/dist/vue-draggable-next.esm-bundler.cjs.map +1 -1
- package/dist/node_modules/.pnpm/vue-draggable-next@2.3.0_sortablejs@1.15.6_vue@3.5.21_typescript@5.9.2_/node_modules/vue-draggable-next/dist/vue-draggable-next.esm-bundler.js +2 -2
- package/dist/node_modules/.pnpm/vue-draggable-next@2.3.0_sortablejs@1.15.6_vue@3.5.21_typescript@5.9.2_/node_modules/vue-draggable-next/dist/vue-draggable-next.esm-bundler.js.map +1 -1
- package/dist/notifications.server.cjs +22 -18
- package/dist/notifications.server.js +22 -18
- package/dist/orders.server.cjs +10 -10
- package/dist/orders.server.js +10 -10
- package/dist/organizations.server.cjs +13 -13
- package/dist/organizations.server.js +13 -13
- package/dist/{ownership.schema-D1p5XSpt.cjs → ownership.schema-CRYdbemm.cjs} +2 -2
- package/dist/{ownership.schema-BqH4v5vH.js → ownership.schema-fwwDf_e5.js} +2 -2
- package/dist/pages.server.cjs +2 -2
- package/dist/pages.server.js +2 -2
- package/dist/products.server.cjs +13 -13
- package/dist/products.server.js +13 -13
- package/dist/{profile.schema-BGAe5VN5.js → profile.schema-CjLOfG7b.js} +2 -2
- package/dist/{profile.schema-pidHrksV.cjs → profile.schema-l0Dk4Ptu.cjs} +2 -2
- package/dist/rents.server.cjs +2 -2
- package/dist/rents.server.js +2 -2
- package/dist/reports.server.cjs +2 -2
- package/dist/reports.server.js +2 -2
- package/dist/{socials.schema-CtpSF9dE.cjs → socials.schema-CqEHax2w.cjs} +2 -2
- package/dist/{socials.schema-BOZV82Mp.js → socials.schema-DxnnaBgO.js} +2 -2
- package/dist/spots.server.cjs +4 -4
- package/dist/spots.server.js +4 -4
- package/dist/style.css +75 -76
- package/dist/{web-BkaOiiSn.js → web-8cpb2Zat.js} +1 -1
- package/dist/{web-CROHFHoW.cjs → web-B0k809Uc.cjs} +1 -1
- package/package.json +8 -12
- package/src/builder/builder.js +0 -6
- package/src/components/Button/Button.vue +0 -1
- package/src/components/Calendar/Calendar.vue +2 -2
- package/src/components/Chips/Chips.vue +1 -1
- package/src/components/Countdown/Countdown.vue +4 -4
- package/src/components/EmptyState/EmptyState.vue +1 -1
- package/src/components/FieldBig/FieldBig.vue +1 -1
- package/src/components/FieldPhone/FieldPhone.vue +1 -1
- package/src/components/LocationMarker/LocationMarker.vue +2 -2
- package/src/components/Menu/MenuItem.vue +1 -1
- package/src/components/Status/Snack.vue +1 -1
- package/src/components/Status/Status.vue +1 -1
- package/src/components/UploadImage/UploadImage.vue +2 -2
- package/src/configurator/components/layouts/layoutConfigurator.vue +1 -1
- package/src/modules/STYLES.MD +59 -77
- package/src/modules/TASK-CORE-TRANSFER.MD +62 -0
- package/src/modules/auth/views/components/pages/EnterPassword.vue +1 -1
- package/src/modules/auth/views/components/pages/Profile.vue +3 -3
- package/src/modules/auth/views/components/pages/ProfileEdit.vue +1 -1
- package/src/modules/auth/views/components/sections/FeaturedUsers.vue +1 -1
- package/src/modules/backoffice/components/admin/Users.vue +1 -1
- package/src/modules/backoffice/components/pages/Dashboard.vue +3 -3
- package/src/modules/backoffice/components/partials/Sidebar.vue +2 -2
- package/src/modules/chats/components/sections/ChatWindow.vue +1 -1
- package/src/modules/chats/routes/chats.routes.js +6 -4
- package/src/modules/community/components/blocks/CardBlogpost.vue +1 -1
- package/src/modules/community/components/layouts/Community.vue +2 -2
- package/src/modules/community/components/sections/Comment.vue +1 -1
- package/src/modules/community/components/sections/Comments.vue +1 -1
- package/src/modules/constructor/components/elements/Card.vue +1 -1
- package/src/modules/constructor/components/sections/Constructor.vue +2 -2
- package/src/modules/constructor/components/sections/Viewer.vue +1 -1
- package/src/modules/events/TASKS.MD +0 -0
- package/src/modules/events/components/blocks/CardEvent.vue +4 -4
- package/src/modules/events/components/pages/Event.vue +3 -3
- package/src/modules/events/components/pages/Events.vue +4 -4
- package/src/modules/events/components/sections/SelectDate.vue +2 -2
- package/src/modules/globals/TASK.MD +9 -102
- package/src/modules/globals/globals.client.js +0 -7
- package/src/modules/globals/globals.server.js +14 -1
- package/src/modules/globals/views/classes/globals.app.js +8 -4
- package/src/modules/globals/views/components/blocks/CardHeader.vue +4 -4
- package/src/modules/globals/views/components/blocks/PopupDateSelector.vue +1 -1
- package/src/modules/globals/views/components/elements/PhotoStack.vue +4 -4
- package/src/modules/globals/views/components/partials/CitySelection.vue +2 -2
- package/src/modules/globals/views/components/partials/Footer.centered.vue +6 -6
- package/src/modules/globals/views/components/partials/Footer.vue +31 -131
- package/src/modules/globals/views/components/partials/Header.vue +3 -3
- package/src/modules/globals/views/components/partials/LocationSelection.vue +1 -1
- package/src/modules/globals/views/components/partials/Navigation.vue +1 -1
- package/src/modules/globals/views/components/sections/SectionPageTitle.vue +2 -2
- package/src/modules/globals/views/components/sections/Walkthrough.vue +10 -10
- package/src/modules/governance/TASK-TRACKER.MD +192 -0
- package/src/modules/governance/controllers/routes/initiatives.routes.js +106 -11
- package/src/modules/governance/controllers/routes/milestones.routes.js +111 -0
- package/src/modules/governance/controllers/routes/tasks.routes.js +164 -11
- package/src/modules/governance/controllers/routes/votes.routes.js +50 -9
- package/src/modules/governance/controllers/routes/votings.routes.js +209 -12
- package/src/modules/governance/data/mockData.js +654 -0
- package/src/modules/governance/governance.server.js +6 -11
- package/src/modules/governance/middlewares/initiatives.verifier.js +197 -0
- package/src/modules/governance/middlewares/milestones.verifier.js +243 -0
- package/src/modules/governance/middlewares/tasks.verifier.js +224 -0
- package/src/modules/governance/middlewares/votes.verifier.js +115 -0
- package/src/modules/governance/middlewares/votings.verifier.js +237 -0
- package/src/modules/governance/models/initiative.model.js +14 -8
- package/src/modules/governance/models/task.model.js +13 -1
- package/src/modules/governance/models/voting.model.js +68 -2
- package/src/modules/governance/reactcode/.bolt/config.json +3 -0
- package/src/modules/governance/reactcode/.bolt/prompt +5 -0
- package/src/modules/governance/reactcode/eslint.config.js +28 -0
- package/src/modules/governance/reactcode/index.html +13 -0
- package/src/modules/governance/reactcode/package-lock.json +4229 -0
- package/src/modules/governance/reactcode/package.json +36 -0
- package/src/modules/governance/reactcode/postcss.config.js +6 -0
- package/src/modules/governance/reactcode/src/App.tsx +29 -0
- package/src/modules/governance/reactcode/src/components/CreateInitiativeForm.tsx +258 -0
- package/src/modules/governance/reactcode/src/components/CreateMilestoneForm.tsx +257 -0
- package/src/modules/governance/reactcode/src/components/EmptyState.tsx +29 -0
- package/src/modules/governance/reactcode/src/components/InitiativeCard.tsx +59 -0
- package/src/modules/governance/reactcode/src/components/LinkedEntityCard.tsx +58 -0
- package/src/modules/governance/reactcode/src/components/MilestoneCard.tsx +82 -0
- package/src/modules/governance/reactcode/src/components/ProductRepositories.tsx +70 -0
- package/src/modules/governance/reactcode/src/components/ProductSummary.tsx +183 -0
- package/src/modules/governance/reactcode/src/components/ProductTeam.tsx +100 -0
- package/src/modules/governance/reactcode/src/components/ProposeTaskForm.tsx +184 -0
- package/src/modules/governance/reactcode/src/components/TaskAssignForm.tsx +74 -0
- package/src/modules/governance/reactcode/src/components/TaskCard.tsx +88 -0
- package/src/modules/governance/reactcode/src/components/TaskStatusBadge.tsx +27 -0
- package/src/modules/governance/reactcode/src/components/VoteForm.tsx +96 -0
- package/src/modules/governance/reactcode/src/components/VotingCard.tsx +78 -0
- package/src/modules/governance/reactcode/src/components/VotingResults.tsx +155 -0
- package/src/modules/governance/reactcode/src/data/mockData.ts +1465 -0
- package/src/modules/governance/reactcode/src/index.css +3 -0
- package/src/modules/governance/reactcode/src/main.tsx +10 -0
- package/src/modules/governance/reactcode/src/pages/InitiativeDetailPage.tsx +569 -0
- package/src/modules/governance/reactcode/src/pages/InitiativeMilestonesPage.tsx +171 -0
- package/src/modules/governance/reactcode/src/pages/InitiativesListPage.tsx +182 -0
- package/src/modules/governance/reactcode/src/pages/MilestoneDetailPage.tsx +178 -0
- package/src/modules/governance/reactcode/src/pages/RoadmapPage.tsx +256 -0
- package/src/modules/governance/reactcode/src/pages/TaskDetailPage.tsx +529 -0
- package/src/modules/governance/reactcode/src/pages/VotingDetailPage.tsx +191 -0
- package/src/modules/governance/reactcode/src/pages/VotingsListPage.tsx +86 -0
- package/src/modules/governance/reactcode/src/vite-env.d.ts +1 -0
- package/src/modules/governance/reactcode/tailwind.config.js +8 -0
- package/src/modules/governance/reactcode/tsconfig.app.json +24 -0
- package/src/modules/governance/reactcode/tsconfig.json +7 -0
- package/src/modules/governance/reactcode/tsconfig.node.json +22 -0
- package/src/modules/governance/reactcode/vite.config.ts +10 -0
- package/src/modules/governance/seed-governance.js +348 -0
- package/src/modules/governance/views/components/blocks/CardInitiativeItem.vue +58 -7
- package/src/modules/governance/views/components/blocks/CardMilestoneItem.vue +70 -0
- package/src/modules/governance/views/components/blocks/CardTaskItem.vue +58 -7
- package/src/modules/governance/views/components/blocks/CardVotingItem.vue +65 -7
- package/src/modules/governance/views/components/layouts/Governance.vue +23 -0
- package/src/modules/governance/views/components/pages/Governance.vue +44 -0
- package/src/modules/governance/views/components/pages/Initiative.vue +413 -8
- package/src/modules/governance/views/components/pages/InitiativeMilestones.vue +159 -0
- package/src/modules/governance/views/components/pages/Initiatives.vue +164 -6
- package/src/modules/governance/views/components/pages/Milestone.vue +170 -0
- package/src/modules/governance/views/components/pages/Roadmap.vue +238 -0
- package/src/modules/governance/views/components/pages/Task.vue +393 -14
- package/src/modules/governance/views/components/pages/Tasks.vue +164 -10
- package/src/modules/governance/views/components/pages/Voting.vue +167 -20
- package/src/modules/governance/views/components/pages/Votings.vue +86 -9
- package/src/modules/governance/views/components/partials/EmptyState.vue +41 -0
- package/src/modules/governance/views/components/partials/LinkedEntityCard.vue +73 -0
- package/src/modules/governance/views/components/partials/TaskStatusBadge.vue +35 -0
- package/src/modules/governance/views/components/partials/VoteForm.vue +100 -0
- package/src/modules/governance/views/components/partials/VotingResults.vue +127 -0
- package/src/modules/governance/views/router/goverance.router.js +52 -1
- package/src/modules/governance/views/store/initiatives.js +10 -7
- package/src/modules/governance/views/store/tasks.js +10 -7
- package/src/modules/governance/views/store/votes.js +10 -7
- package/src/modules/governance/views/store/votings.js +9 -6
- package/src/modules/inventory/components/forms/AdjustmentForm.vue +1 -1
- package/src/modules/landing/components/sections/Examples.vue +1 -1
- package/src/modules/landing/components/sections/SectionEarn.vue +2 -2
- package/src/modules/landing/components/sections/SectionFeature.vue +1 -1
- package/src/modules/landing/components/sections/SectionFeaturesImages.vue +1 -1
- package/src/modules/landing/components/sections/SectionFocus.vue +1 -1
- package/src/modules/landing/components/sections/SectionGuide.vue +2 -2
- package/src/modules/landing/components/sections/SectionHeroToken.vue +1 -1
- package/src/modules/landing/components/sections/SectionHeroVideo.vue +2 -2
- package/src/modules/landing/components/sections/SectionJoinUs.vue +1 -1
- package/src/modules/landing/components/sections/SectionMobileApp.vue +3 -3
- package/src/modules/landing/components/sections/SubscribeNewsletter.vue +1 -1
- package/src/modules/marketplace/views/components/layouts/Marketplace.vue +3 -3
- package/src/modules/marketplace/views/components/sections/SectionMenu.vue +1 -1
- package/src/modules/music/components/forms/AlbumForm.vue +2 -2
- package/src/modules/music/components/forms/ArtistForm.vue +4 -4
- package/src/modules/music/components/forms/PlaylistForm.vue +6 -6
- package/src/modules/music/components/forms/TrackForm.vue +4 -4
- package/src/modules/music/components/pages/Album.vue +8 -8
- package/src/modules/music/components/pages/Artist.vue +10 -10
- package/src/modules/music/components/pages/MusicLibrary.vue +4 -4
- package/src/modules/music/components/pages/Playlist.vue +5 -5
- package/src/modules/music/components/pages/Track.vue +9 -9
- package/src/modules/music/music.server.js +0 -1
- package/src/modules/notifications/components/blocks/NotificationItem.vue +1 -1
- package/src/modules/notifications/components/elements/NotificationBadge.vue +1 -1
- package/src/modules/notifications/notifications.server.js +26 -20
- package/src/modules/orders/components/blocks/CardOrder.vue +7 -7
- package/src/modules/orders/components/blocks/CardOrderBackoffice.vue +1 -1
- package/src/modules/orders/components/blocks/CardOrderUser.vue +3 -3
- package/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue +2 -2
- package/src/modules/orders/components/elements/PriceTotal.vue +1 -1
- package/src/modules/orders/components/pages/Favorites.vue +1 -1
- package/src/modules/orders/components/pages/OrderBackoffice.vue +7 -7
- package/src/modules/orders/components/pages/Orders_refact.vue +3 -3
- package/src/modules/orders/components/partials/ShopCart.vue +1 -1
- package/src/modules/orders/components/sections/AskToLogin.vue +1 -1
- package/src/modules/orders/components/sections/Succes.vue +1 -1
- package/src/modules/organizations/components/blocks/CardOrganization.vue +3 -3
- package/src/modules/organizations/components/blocks/EmptyState.vue +1 -1
- package/src/modules/organizations/components/blocks/Rating.vue +2 -2
- package/src/modules/organizations/components/forms/AddExistingMembersForm.vue +1 -1
- package/src/modules/organizations/components/forms/DepartmentForm.vue +2 -2
- package/src/modules/organizations/components/forms/InviteForm.vue +1 -1
- package/src/modules/organizations/components/pages/Department.vue +2 -2
- package/src/modules/organizations/components/pages/DepartmentEdit.vue +2 -2
- package/src/modules/organizations/components/pages/Organization.new.vue +7 -7
- package/src/modules/organizations/components/pages/Organization.vue +6 -6
- package/src/modules/organizations/components/pages/OrganizationBackoffice.vue +8 -8
- package/src/modules/organizations/components/sections/MembersAdd.vue +1 -1
- package/src/modules/products/components/blocks/CardCategory.vue +2 -2
- package/src/modules/products/components/blocks/CardPosition.vue +1 -1
- package/src/modules/products/components/blocks/CardProduct.vue +3 -3
- package/src/modules/products/components/blocks/ProductDiscounts.vue +2 -2
- package/src/modules/products/components/elements/Price.vue +4 -4
- package/src/modules/products/components/elements/QuantitySelector.vue +2 -2
- package/src/modules/products/components/forms/StockAuditForm.vue +1 -1
- package/src/modules/products/components/pages/Product.vue +2 -2
- package/src/modules/products/components/pages/Products.vue +4 -4
- package/src/modules/products/components/sections/EditAttributes.vue +3 -3
- package/src/modules/products/components/sections/EditDiscounts.vue +3 -3
- package/src/modules/products/components/sections/EditVariants.vue +5 -5
- package/src/modules/products/components/sections/FilterProducts.vue +3 -3
- package/src/modules/products/components/sections/HeroRecommendation.vue +2 -2
- package/src/modules/products/components/sections/ProductConfigurator.vue +1 -1
- package/src/modules/products/components/sections/ProductsRecommended.vue +1 -1
- package/src/modules/products/components/sections/SectionProduct.vue +2 -2
- package/src/modules/reports/components/sections/FormReport.vue +2 -2
- package/src/modules/spots/components/blocks/CardSpot.vue +5 -5
- package/src/modules/spots/components/pages/Spot.vue +2 -2
- package/src/modules/spots/components/pages/SpotEdit.vue +3 -3
- package/src/modules/wallet/views/components/pages/Wallet.vue +4 -4
- package/src/styles/base/all.scss +20 -0
- package/src/styles/config.scss +10 -9
- package/src/styles/typography.scss +13 -13
- package/dist/globals.observer-C_FYclgV.cjs +0 -78
- package/dist/globals.observer-MZsqaE6F.js +0 -79
- package/dist/main-8f945Ngn.cjs +0 -11
- package/dist/martyrs/src/components/EditImages/EditImages.vue.cjs +0 -2
- package/dist/martyrs/src/components/EditImages/EditImages.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/EditImages/EditImages.vue.js +0 -2
- package/dist/martyrs/src/components/EditImages/EditImages.vue.js.map +0 -1
- package/dist/martyrs/src/components/Spoiler/Spoiler.vue.js.map +0 -1
- package/dist/martyrs/src/components/UploadImage/UploadImage.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/UploadImage/UploadImage.vue.js.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue2.cjs +0 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue2.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue2.js +0 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue2.js.map +0 -1
- package/dist/martyrs/src/modules/products/components/elements/THC.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/elements/THC.vue.js.map +0 -1
- package/dist/tickets.controller-9zoaVPcx.cjs +0 -444
- package/dist/tickets.controller-C8sWVqbB.js +0 -428
- package/dist/wallet.server.cjs +0 -528
- package/dist/wallet.server.js +0 -511
- package/src/builder/modes/ssr.vite.dev.js +0 -180
- package/src/builder/ssr/ssr-render-html.vite.js +0 -35
- package/src/builder/vite/index.js +0 -13
- package/src/builder/vite/vite.config.api.js +0 -52
- package/src/builder/vite/vite.config.base.js +0 -110
- package/src/builder/vite/vite.config.spa.client.js +0 -81
- package/src/builder/vite/vite.config.ssr.client.js +0 -244
- package/src/builder/vite/vite.config.ssr.server.js +0 -74
- package/src/modules/governance/controllers/factories/initiatives.controller.js +0 -90
- package/src/modules/governance/controllers/factories/tasks.controller.js +0 -88
- package/src/modules/governance/controllers/factories/votes.controller.js +0 -64
- package/src/modules/governance/controllers/factories/votings.controller.js +0 -105
- package/src/modules/governance/views/store/projects.js +0 -148
- /package/src/modules/governance/{DESCRIPTION.MD → IGNORE-ITS FOR FUTURE-DESCRIPTION.MD} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DepartmentForm.vue.cjs","sources":["../../../../../../../src/modules/organizations/components/forms/DepartmentForm.vue"],"sourcesContent":["<template>\n <div class=\"cols-1 gap-thin o-y-scroll\">\n <Block\n title=\"Profile\"\n class=\"mn-b-thin\"\n >\n <div\n class=\"cols-2-fit-content\"\n >\n <UploadImage \n v-model:photo=\"currentDepartment.profile.photo\"\n :uploadPath=\"'organizations/' + currentDepartment.profile.name + '/departments'\"\n class=\"w-8r aspect-1x1 o-hidden mn-r-small radius-extra\" \n />\n <div class=\"w-100 flex-child-grow-1 flex-child\">\n <Field \n v-model:field=\"currentDepartment.profile.name\" \n label=\"Name\" \n placeholder=\"Department Name\" \n class=\"mn-b-small bg-white radius-small pd-medium\"\n />\n <Field \n v-model:field=\"currentDepartment.profile.description\" \n label=\"Description\" \n placeholder=\"Department description (max 120 symbols)\" \n class=\"bg-white radius-small pd-medium\"\n /> \n </div>\n </div>\n </Block>\n\n <Block\n title=\"Team\"\n placeholder=\"No members added yet\"\n :actions=\"[{\n label: '+',\n function: () => openMemberPopup()\n }]\"\n class=\"cols-1 gap-thin mn-b-thin\"\n > \n <CardUser \n class=\"h-4r bg-white pd-thin radius-medium w-100\" \n v-for=\"(member, index) in currentDepartment.members\" \n :key=\"member._id || index\" \n :user=\"member.user\" \n :photo=\"member.user.profile.photo\"\n :name=\"member.user.profile.name || member.user.phone || member.user.email || member.user._id\"\n :position=\"member.position\" \n :action=\"{\n label: {\n is: IconDelete,\n props: { class: 'i-medium', fill: 'rgb(var(--white)' }\n },\n method: () => removeMember(member)\n }\"\n />\n </Block>\n\n <div class=\"bg-light pd-medium o-hidden radius-medium mn-b-thin\">\n <h3 class=\"mn-b-semi\">Department Settings</h3>\n \n <p class=\"p-medium mn-b-small\">Please settings for your department:</p>\n <div class=\"cols-1 gap-thin\">\n <Checkbox \n label=\"Hidden department\"\n name=\"hidden\"\n class=\"w-100 mn-r-small bg-white radius-small pd-small\"\n @update:radio=\"updated => currentDepartment.hidden = !currentDepartment.hidden\"\n :radio=\"currentDepartment.hidden\"\n />\n </div>\n </div>\n\n <div class=\"bg-light pd-medium o-hidden radius-medium\">\n <h3 class=\"mn-b-semi\">Accesses</h3>\n \n <p class=\"p-medium mn-b-small\">Please select organization accesses for user in department:</p>\n \n <div class=\"cols-1 gap-thin\">\n <div v-for=\"(actions, category) in currentDepartment.accesses\" :key=\"category\" class=\"mn-b-small\">\n <Spoiler :status=\"false\">\n <template #header=\"{ isOpen }\">\n <h4 class=\"cursor-pointer flex-v-center flex gap-thin\">\n {{ category.charAt(0).toUpperCase() + category.slice(1) }}\n <span class=\"t-small\">{{ isOpen ? '▼' : '▶' }}</span>\n </h4>\n </template>\n <template #content>\n <div class=\"cols-1 gap-thin mn-t-thin\">\n <Checkbox\n v-for=\"(value, action) in actions\"\n :key=\"action\"\n :label=\"action\"\n :name=\"action\"\n :radio=\"value\"\n @update:radio=\"updated => (currentDepartment.accesses[category][action] = !value)\"\n class=\"w-100 mn-r-small bg-white radius-small pd-small\"\n />\n </div>\n </template>\n </Spoiler>\n </div>\n </div>\n </div>\n\n <!-- Action Buttons -->\n <div class=\"flex gap-thin mn-t-medium\">\n <Button\n v-if=\"editingDepartment\"\n :submit=\"onDelete\"\n :showSuccess=\"true\"\n :showLoader=\"true\"\n class=\"bg-red\"\n >\n Delete\n </Button>\n <Button\n :showSuccess=\"false\"\n :showLoader=\"false\"\n class=\"bg-grey t-white w-100\"\n @click=\"$emit('close')\"\n >\n Cancel\n </Button>\n <Button\n class=\"bg-main w-100\"\n :submit=\"saveDepartment\"\n >\n {{ editingDepartment ? 'Update Department' : 'Create Department' }}\n </Button>\n </div>\n\n <!-- Member Selection Popup -->\n <Popup \n title=\"Add member\" \n @close-popup=\"closeMemberPopup\" \n :isPopupOpen=\"isOpenAddMemberPopup\"\n class=\"bg-white w-max-30r radius-medium pd-big\"\n >\n <Feed\n :search=\"{\n placeholder: 'Search member...',\n class: 'bg-light mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Members Found',\n description: 'Currently, there are no members in organization.'\n }\n }\"\n :store=\"{\n read: (options) => membershipsStore.read(options),\n state: null\n }\"\n :options=\"{\n target: organizationId,\n role: ['member', 'owner']\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"bg-light pd-medium w-min-20r w-max-40r radius-medium h-max-20r o-scroll\"\n >\n <CardUser\n v-for=\"(user, index) in items\" \n :key=\"user._id\"\n :user=\"user.user\"\n :photo=\"user.user.profile?.photo\"\n :name=\"user.user.profile?.name || user.user.phone || user.user.email\"\n :disabled=\"isDuplicateMember(user.user._id)\"\n @click=\"() => addMemberToDepartment(user.user)\"\n class=\"h-4r bg-white pd-thin radius-medium w-100 mn-b-thin\"\n :class=\"{ 'opacity-50 cursor-not-allowed': isDuplicateMember(user.user._id) }\"\n />\n </Feed>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive, computed } from 'vue';\nimport { useRoute } from 'vue-router';\n\nimport UploadImage from '@martyrs/src/components/UploadImage/UploadImage.vue';\nimport Field from '@martyrs/src/components/Field/Field.vue';\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\nimport Block from '@martyrs/src/components/Block/Block.vue';\nimport Feed from '@martyrs/src/components/Feed/Feed.vue';\nimport Spoiler from '@martyrs/src/components/Spoiler/Spoiler.vue';\n\nimport CardUser from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue';\nimport IconDelete from '@martyrs/src/modules/icons/navigation/IconDelete.vue';\n\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\nimport membershipsStore from '@martyrs/src/modules/organizations/store/memberships.store.js';\nimport departmentsStore from '@martyrs/src/modules/organizations/store/departments.store.js';\n\nconst route = useRoute();\n\nconst props = defineProps({\n department: Object,\n organizationId: String\n});\n\nconst emit = defineEmits(['close', 'saved']);\n\n// State\nconst editingDepartment = computed(() => !!props.department?._id);\nconst isOpenAddMemberPopup = ref(false);\n\n// Create default department structure\nconst createDefaultDepartment = () => ({\n organization: props.organizationId,\n profile: {\n photo: '',\n name: '',\n description: '',\n categories: [],\n },\n address: '',\n location: {\n lat: null,\n lng: null,\n },\n worktime: [],\n delivery: [],\n payment: [],\n members: [],\n subdepartments: [],\n hidden: false,\n accesses: {\n categories: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n rents: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n spots: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n members: {\n read: false,\n edit: false,\n delete: false,\n },\n posts: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n events: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n tickets: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n gallery: {\n read: false,\n create: false,\n edit: false,\n delete: false,\n },\n inventory: {\n read: false,\n edit: false,\n delete: false,\n },\n products: {\n read: false,\n edit: false,\n delete: false,\n },\n orders: {\n read: false,\n confirm: false,\n delete: false,\n },\n departments: {\n read: false,\n edit: false,\n delete: false,\n },\n },\n});\n\n// Current department reactive state - create deep copy to avoid mutating original\nconst currentDepartment = reactive(\n props.department ? JSON.parse(JSON.stringify(props.department)) : createDefaultDepartment()\n);\n\n// Member management\nfunction openMemberPopup() {\n isOpenAddMemberPopup.value = true;\n}\n\nfunction closeMemberPopup() {\n isOpenAddMemberPopup.value = false;\n}\n\nfunction isDuplicateMember(userId) {\n return currentDepartment.members.some(member => \n member.user._id === userId || member._id === userId\n );\n}\n\nfunction addMemberToDepartment(user) {\n if (!isDuplicateMember(user._id)) {\n currentDepartment.members.push({ \n _id: user._id, \n user: user, \n position: 'Member' \n });\n closeMemberPopup();\n } else {\n globals.actions.setError({ message: 'This user is already a member of this department' });\n }\n}\n\nfunction removeMember(member) {\n if (confirm(\"Are you sure you want to remove this member?\")) {\n const index = currentDepartment.members.findIndex(m => \n (m.user._id === member.user._id) || (m._id === member._id)\n );\n if (index > -1) {\n currentDepartment.members.splice(index, 1);\n }\n }\n}\n\n// Save/Delete operations\nasync function saveDepartment() {\n try {\n // Prepare department data\n const departmentData = {\n ...currentDepartment,\n organization: props.organizationId\n };\n\n let result;\n if (editingDepartment.value) {\n // Update existing department\n result = await departmentsStore.update({\n ...departmentData,\n _id: props.department._id\n });\n } else {\n // Create new department\n result = await departmentsStore.create(departmentData);\n }\n\n emit('saved', result);\n emit('close');\n } catch (error) {\n console.error('Error saving department:', error);\n globals.actions.setError(error);\n throw error;\n }\n}\n\nasync function onDelete() {\n if (confirm(\"Are you sure you want to delete this department?\")) {\n try {\n await departmentsStore.delete({ _id: props.department._id });\n emit('saved', null);\n emit('close');\n } catch (error) {\n console.error('Error deleting department:', error);\n globals.actions.setError(error);\n }\n }\n}\n</script>"],"names":["useRoute","computed","ref","reactive","globals.actions","departmentsStore"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DepartmentForm.vue.cjs","sources":["../../../../../../../src/modules/organizations/components/forms/DepartmentForm.vue"],"sourcesContent":["<template>\n <div class=\"cols-1 gap-thin o-y-scroll\">\n <Block\n title=\"Profile\"\n class=\"mn-b-thin\"\n >\n <div\n class=\"cols-2-fit-content\"\n >\n <UploadImage \n v-model:photo=\"currentDepartment.profile.photo\"\n :uploadPath=\"'organizations/' + currentDepartment.profile.name + '/departments'\"\n class=\"w-8r aspect-1x1 o-hidden mn-r-small radius-extra\" \n />\n <div class=\"w-100 flex-child-grow-1 flex-child\">\n <Field \n v-model:field=\"currentDepartment.profile.name\" \n label=\"Name\" \n placeholder=\"Department Name\" \n class=\"mn-b-small bg-white radius-small pd-medium\"\n />\n <Field \n v-model:field=\"currentDepartment.profile.description\" \n label=\"Description\" \n placeholder=\"Department description (max 120 symbols)\" \n class=\"bg-white radius-small pd-medium\"\n /> \n </div>\n </div>\n </Block>\n\n <Block\n title=\"Team\"\n placeholder=\"No members added yet\"\n :actions=\"[{\n label: '+',\n function: () => openMemberPopup()\n }]\"\n class=\"cols-1 gap-thin mn-b-thin\"\n > \n <CardUser \n class=\"h-4r bg-white pd-thin radius-medium w-100\" \n v-for=\"(member, index) in currentDepartment.members\" \n :key=\"member._id || index\" \n :user=\"member.user\" \n :photo=\"member.user.profile.photo\"\n :name=\"member.user.profile.name || member.user.phone || member.user.email || member.user._id\"\n :position=\"member.position\" \n :action=\"{\n label: {\n is: IconDelete,\n props: { class: 'i-medium', fill: 'rgb(var(--white)' }\n },\n method: () => removeMember(member)\n }\"\n />\n </Block>\n\n <div class=\"bg-light pd-medium o-hidden radius-medium mn-b-thin\">\n <h3 class=\"mn-b-semi\">Department Settings</h3>\n \n <p class=\"p-regular mn-b-small\">Please settings for your department:</p>\n <div class=\"cols-1 gap-thin\">\n <Checkbox \n label=\"Hidden department\"\n name=\"hidden\"\n class=\"w-100 mn-r-small bg-white radius-small pd-small\"\n @update:radio=\"updated => currentDepartment.hidden = !currentDepartment.hidden\"\n :radio=\"currentDepartment.hidden\"\n />\n </div>\n </div>\n\n <div class=\"bg-light pd-medium o-hidden radius-medium\">\n <h3 class=\"mn-b-semi\">Accesses</h3>\n \n <p class=\"p-regular mn-b-small\">Please select organization accesses for user in department:</p>\n \n <div class=\"cols-1 gap-thin\">\n <div v-for=\"(actions, category) in currentDepartment.accesses\" :key=\"category\" class=\"mn-b-small\">\n <Spoiler :status=\"false\">\n <template #header=\"{ isOpen }\">\n <h4 class=\"cursor-pointer flex-v-center flex gap-thin\">\n {{ category.charAt(0).toUpperCase() + category.slice(1) }}\n <span class=\"t-small\">{{ isOpen ? '▼' : '▶' }}</span>\n </h4>\n </template>\n <template #content>\n <div class=\"cols-1 gap-thin mn-t-thin\">\n <Checkbox\n v-for=\"(value, action) in actions\"\n :key=\"action\"\n :label=\"action\"\n :name=\"action\"\n :radio=\"value\"\n @update:radio=\"updated => (currentDepartment.accesses[category][action] = !value)\"\n class=\"w-100 mn-r-small bg-white radius-small pd-small\"\n />\n </div>\n </template>\n </Spoiler>\n </div>\n </div>\n </div>\n\n <!-- Action Buttons -->\n <div class=\"flex gap-thin mn-t-medium\">\n <Button\n v-if=\"editingDepartment\"\n :submit=\"onDelete\"\n :showSuccess=\"true\"\n :showLoader=\"true\"\n class=\"bg-red\"\n >\n Delete\n </Button>\n <Button\n :showSuccess=\"false\"\n :showLoader=\"false\"\n class=\"bg-grey t-white w-100\"\n @click=\"$emit('close')\"\n >\n Cancel\n </Button>\n <Button\n class=\"bg-main w-100\"\n :submit=\"saveDepartment\"\n >\n {{ editingDepartment ? 'Update Department' : 'Create Department' }}\n </Button>\n </div>\n\n <!-- Member Selection Popup -->\n <Popup \n title=\"Add member\" \n @close-popup=\"closeMemberPopup\" \n :isPopupOpen=\"isOpenAddMemberPopup\"\n class=\"bg-white w-max-30r radius-medium pd-big\"\n >\n <Feed\n :search=\"{\n placeholder: 'Search member...',\n class: 'bg-light mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Members Found',\n description: 'Currently, there are no members in organization.'\n }\n }\"\n :store=\"{\n read: (options) => membershipsStore.read(options),\n state: null\n }\"\n :options=\"{\n target: organizationId,\n role: ['member', 'owner']\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"bg-light pd-medium w-min-20r w-max-40r radius-medium h-max-20r o-scroll\"\n >\n <CardUser\n v-for=\"(user, index) in items\" \n :key=\"user._id\"\n :user=\"user.user\"\n :photo=\"user.user.profile?.photo\"\n :name=\"user.user.profile?.name || user.user.phone || user.user.email\"\n :disabled=\"isDuplicateMember(user.user._id)\"\n @click=\"() => addMemberToDepartment(user.user)\"\n class=\"h-4r bg-white pd-thin radius-medium w-100 mn-b-thin\"\n :class=\"{ 'opacity-50 cursor-not-allowed': isDuplicateMember(user.user._id) }\"\n />\n </Feed>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive, computed } from 'vue';\nimport { useRoute } from 'vue-router';\n\nimport UploadImage from '@martyrs/src/components/UploadImage/UploadImage.vue';\nimport Field from '@martyrs/src/components/Field/Field.vue';\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\nimport Block from '@martyrs/src/components/Block/Block.vue';\nimport Feed from '@martyrs/src/components/Feed/Feed.vue';\nimport Spoiler from '@martyrs/src/components/Spoiler/Spoiler.vue';\n\nimport CardUser from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue';\nimport IconDelete from '@martyrs/src/modules/icons/navigation/IconDelete.vue';\n\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\nimport membershipsStore from '@martyrs/src/modules/organizations/store/memberships.store.js';\nimport departmentsStore from '@martyrs/src/modules/organizations/store/departments.store.js';\n\nconst route = useRoute();\n\nconst props = defineProps({\n department: Object,\n organizationId: String\n});\n\nconst emit = defineEmits(['close', 'saved']);\n\n// State\nconst editingDepartment = computed(() => !!props.department?._id);\nconst isOpenAddMemberPopup = ref(false);\n\n// Create default department structure\nconst createDefaultDepartment = () => ({\n organization: props.organizationId,\n profile: {\n photo: '',\n name: '',\n description: '',\n categories: [],\n },\n address: '',\n location: {\n lat: null,\n lng: null,\n },\n worktime: [],\n delivery: [],\n payment: [],\n members: [],\n subdepartments: [],\n hidden: false,\n accesses: {\n categories: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n rents: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n spots: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n members: {\n read: false,\n edit: false,\n delete: false,\n },\n posts: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n events: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n tickets: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n gallery: {\n read: false,\n create: false,\n edit: false,\n delete: false,\n },\n inventory: {\n read: false,\n edit: false,\n delete: false,\n },\n products: {\n read: false,\n edit: false,\n delete: false,\n },\n orders: {\n read: false,\n confirm: false,\n delete: false,\n },\n departments: {\n read: false,\n edit: false,\n delete: false,\n },\n },\n});\n\n// Current department reactive state - create deep copy to avoid mutating original\nconst currentDepartment = reactive(\n props.department ? JSON.parse(JSON.stringify(props.department)) : createDefaultDepartment()\n);\n\n// Member management\nfunction openMemberPopup() {\n isOpenAddMemberPopup.value = true;\n}\n\nfunction closeMemberPopup() {\n isOpenAddMemberPopup.value = false;\n}\n\nfunction isDuplicateMember(userId) {\n return currentDepartment.members.some(member => \n member.user._id === userId || member._id === userId\n );\n}\n\nfunction addMemberToDepartment(user) {\n if (!isDuplicateMember(user._id)) {\n currentDepartment.members.push({ \n _id: user._id, \n user: user, \n position: 'Member' \n });\n closeMemberPopup();\n } else {\n globals.actions.setError({ message: 'This user is already a member of this department' });\n }\n}\n\nfunction removeMember(member) {\n if (confirm(\"Are you sure you want to remove this member?\")) {\n const index = currentDepartment.members.findIndex(m => \n (m.user._id === member.user._id) || (m._id === member._id)\n );\n if (index > -1) {\n currentDepartment.members.splice(index, 1);\n }\n }\n}\n\n// Save/Delete operations\nasync function saveDepartment() {\n try {\n // Prepare department data\n const departmentData = {\n ...currentDepartment,\n organization: props.organizationId\n };\n\n let result;\n if (editingDepartment.value) {\n // Update existing department\n result = await departmentsStore.update({\n ...departmentData,\n _id: props.department._id\n });\n } else {\n // Create new department\n result = await departmentsStore.create(departmentData);\n }\n\n emit('saved', result);\n emit('close');\n } catch (error) {\n console.error('Error saving department:', error);\n globals.actions.setError(error);\n throw error;\n }\n}\n\nasync function onDelete() {\n if (confirm(\"Are you sure you want to delete this department?\")) {\n try {\n await departmentsStore.delete({ _id: props.department._id });\n emit('saved', null);\n emit('close');\n } catch (error) {\n console.error('Error deleting department:', error);\n globals.actions.setError(error);\n }\n }\n}\n</script>"],"names":["useRoute","computed","ref","reactive","globals.actions","departmentsStore"],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { computed, ref, reactive, createElementBlock, openBlock, createVNode, createElementVNode, withCtx, Fragment, renderList, createBlock, createTextVNode, toDisplayString, createCommentVNode, unref, normalizeClass } from "vue";
|
|
2
2
|
import { useRoute } from "vue-router";
|
|
3
|
-
import UploadImage from "../../../../components/UploadImage/UploadImage.
|
|
3
|
+
import UploadImage from "../../../../components/UploadImage/UploadImage.vue2.js";
|
|
4
4
|
import Field from "../../../../components/Field/Field.vue2.js";
|
|
5
5
|
import _sfc_main$4 from "../../../../components/Checkbox/Checkbox.vue.js";
|
|
6
6
|
import _sfc_main$6 from "../../../../components/Button/Button.vue.js";
|
|
7
7
|
import _sfc_main$7 from "../../../../components/Popup/Popup.vue.js";
|
|
8
8
|
import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
|
|
9
9
|
import _sfc_main$8 from "../../../../components/Feed/Feed.vue.js";
|
|
10
|
-
import _sfc_main$5 from "../../../../components/Spoiler/Spoiler.
|
|
10
|
+
import _sfc_main$5 from "../../../../components/Spoiler/Spoiler.vue2.js";
|
|
11
11
|
import _sfc_main$2 from "../../../auth/views/components/blocks/CardUser.vue.js";
|
|
12
12
|
import _sfc_main$3 from "../../../icons/navigation/IconDelete.vue.js";
|
|
13
13
|
import { actions } from "../../../globals/views/store/globals.js";
|
|
@@ -263,7 +263,7 @@ const _sfc_main = {
|
|
|
263
263
|
}, 8, ["actions"]),
|
|
264
264
|
createElementVNode("div", _hoisted_4, [
|
|
265
265
|
_cache[5] || (_cache[5] = createElementVNode("h3", { class: "mn-b-semi" }, "Department Settings", -1)),
|
|
266
|
-
_cache[6] || (_cache[6] = createElementVNode("p", { class: "p-
|
|
266
|
+
_cache[6] || (_cache[6] = createElementVNode("p", { class: "p-regular mn-b-small" }, "Please settings for your department:", -1)),
|
|
267
267
|
createElementVNode("div", _hoisted_5, [
|
|
268
268
|
createVNode(_sfc_main$4, {
|
|
269
269
|
label: "Hidden department",
|
|
@@ -276,7 +276,7 @@ const _sfc_main = {
|
|
|
276
276
|
]),
|
|
277
277
|
createElementVNode("div", _hoisted_6, [
|
|
278
278
|
_cache[7] || (_cache[7] = createElementVNode("h3", { class: "mn-b-semi" }, "Accesses", -1)),
|
|
279
|
-
_cache[8] || (_cache[8] = createElementVNode("p", { class: "p-
|
|
279
|
+
_cache[8] || (_cache[8] = createElementVNode("p", { class: "p-regular mn-b-small" }, "Please select organization accesses for user in department:", -1)),
|
|
280
280
|
createElementVNode("div", _hoisted_7, [
|
|
281
281
|
(openBlock(true), createElementBlock(Fragment, null, renderList(currentDepartment.accesses, (actions2, category) => {
|
|
282
282
|
return openBlock(), createElementBlock("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DepartmentForm.vue.js","sources":["../../../../../../../src/modules/organizations/components/forms/DepartmentForm.vue"],"sourcesContent":["<template>\n <div class=\"cols-1 gap-thin o-y-scroll\">\n <Block\n title=\"Profile\"\n class=\"mn-b-thin\"\n >\n <div\n class=\"cols-2-fit-content\"\n >\n <UploadImage \n v-model:photo=\"currentDepartment.profile.photo\"\n :uploadPath=\"'organizations/' + currentDepartment.profile.name + '/departments'\"\n class=\"w-8r aspect-1x1 o-hidden mn-r-small radius-extra\" \n />\n <div class=\"w-100 flex-child-grow-1 flex-child\">\n <Field \n v-model:field=\"currentDepartment.profile.name\" \n label=\"Name\" \n placeholder=\"Department Name\" \n class=\"mn-b-small bg-white radius-small pd-medium\"\n />\n <Field \n v-model:field=\"currentDepartment.profile.description\" \n label=\"Description\" \n placeholder=\"Department description (max 120 symbols)\" \n class=\"bg-white radius-small pd-medium\"\n /> \n </div>\n </div>\n </Block>\n\n <Block\n title=\"Team\"\n placeholder=\"No members added yet\"\n :actions=\"[{\n label: '+',\n function: () => openMemberPopup()\n }]\"\n class=\"cols-1 gap-thin mn-b-thin\"\n > \n <CardUser \n class=\"h-4r bg-white pd-thin radius-medium w-100\" \n v-for=\"(member, index) in currentDepartment.members\" \n :key=\"member._id || index\" \n :user=\"member.user\" \n :photo=\"member.user.profile.photo\"\n :name=\"member.user.profile.name || member.user.phone || member.user.email || member.user._id\"\n :position=\"member.position\" \n :action=\"{\n label: {\n is: IconDelete,\n props: { class: 'i-medium', fill: 'rgb(var(--white)' }\n },\n method: () => removeMember(member)\n }\"\n />\n </Block>\n\n <div class=\"bg-light pd-medium o-hidden radius-medium mn-b-thin\">\n <h3 class=\"mn-b-semi\">Department Settings</h3>\n \n <p class=\"p-medium mn-b-small\">Please settings for your department:</p>\n <div class=\"cols-1 gap-thin\">\n <Checkbox \n label=\"Hidden department\"\n name=\"hidden\"\n class=\"w-100 mn-r-small bg-white radius-small pd-small\"\n @update:radio=\"updated => currentDepartment.hidden = !currentDepartment.hidden\"\n :radio=\"currentDepartment.hidden\"\n />\n </div>\n </div>\n\n <div class=\"bg-light pd-medium o-hidden radius-medium\">\n <h3 class=\"mn-b-semi\">Accesses</h3>\n \n <p class=\"p-medium mn-b-small\">Please select organization accesses for user in department:</p>\n \n <div class=\"cols-1 gap-thin\">\n <div v-for=\"(actions, category) in currentDepartment.accesses\" :key=\"category\" class=\"mn-b-small\">\n <Spoiler :status=\"false\">\n <template #header=\"{ isOpen }\">\n <h4 class=\"cursor-pointer flex-v-center flex gap-thin\">\n {{ category.charAt(0).toUpperCase() + category.slice(1) }}\n <span class=\"t-small\">{{ isOpen ? '▼' : '▶' }}</span>\n </h4>\n </template>\n <template #content>\n <div class=\"cols-1 gap-thin mn-t-thin\">\n <Checkbox\n v-for=\"(value, action) in actions\"\n :key=\"action\"\n :label=\"action\"\n :name=\"action\"\n :radio=\"value\"\n @update:radio=\"updated => (currentDepartment.accesses[category][action] = !value)\"\n class=\"w-100 mn-r-small bg-white radius-small pd-small\"\n />\n </div>\n </template>\n </Spoiler>\n </div>\n </div>\n </div>\n\n <!-- Action Buttons -->\n <div class=\"flex gap-thin mn-t-medium\">\n <Button\n v-if=\"editingDepartment\"\n :submit=\"onDelete\"\n :showSuccess=\"true\"\n :showLoader=\"true\"\n class=\"bg-red\"\n >\n Delete\n </Button>\n <Button\n :showSuccess=\"false\"\n :showLoader=\"false\"\n class=\"bg-grey t-white w-100\"\n @click=\"$emit('close')\"\n >\n Cancel\n </Button>\n <Button\n class=\"bg-main w-100\"\n :submit=\"saveDepartment\"\n >\n {{ editingDepartment ? 'Update Department' : 'Create Department' }}\n </Button>\n </div>\n\n <!-- Member Selection Popup -->\n <Popup \n title=\"Add member\" \n @close-popup=\"closeMemberPopup\" \n :isPopupOpen=\"isOpenAddMemberPopup\"\n class=\"bg-white w-max-30r radius-medium pd-big\"\n >\n <Feed\n :search=\"{\n placeholder: 'Search member...',\n class: 'bg-light mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Members Found',\n description: 'Currently, there are no members in organization.'\n }\n }\"\n :store=\"{\n read: (options) => membershipsStore.read(options),\n state: null\n }\"\n :options=\"{\n target: organizationId,\n role: ['member', 'owner']\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"bg-light pd-medium w-min-20r w-max-40r radius-medium h-max-20r o-scroll\"\n >\n <CardUser\n v-for=\"(user, index) in items\" \n :key=\"user._id\"\n :user=\"user.user\"\n :photo=\"user.user.profile?.photo\"\n :name=\"user.user.profile?.name || user.user.phone || user.user.email\"\n :disabled=\"isDuplicateMember(user.user._id)\"\n @click=\"() => addMemberToDepartment(user.user)\"\n class=\"h-4r bg-white pd-thin radius-medium w-100 mn-b-thin\"\n :class=\"{ 'opacity-50 cursor-not-allowed': isDuplicateMember(user.user._id) }\"\n />\n </Feed>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive, computed } from 'vue';\nimport { useRoute } from 'vue-router';\n\nimport UploadImage from '@martyrs/src/components/UploadImage/UploadImage.vue';\nimport Field from '@martyrs/src/components/Field/Field.vue';\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\nimport Block from '@martyrs/src/components/Block/Block.vue';\nimport Feed from '@martyrs/src/components/Feed/Feed.vue';\nimport Spoiler from '@martyrs/src/components/Spoiler/Spoiler.vue';\n\nimport CardUser from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue';\nimport IconDelete from '@martyrs/src/modules/icons/navigation/IconDelete.vue';\n\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\nimport membershipsStore from '@martyrs/src/modules/organizations/store/memberships.store.js';\nimport departmentsStore from '@martyrs/src/modules/organizations/store/departments.store.js';\n\nconst route = useRoute();\n\nconst props = defineProps({\n department: Object,\n organizationId: String\n});\n\nconst emit = defineEmits(['close', 'saved']);\n\n// State\nconst editingDepartment = computed(() => !!props.department?._id);\nconst isOpenAddMemberPopup = ref(false);\n\n// Create default department structure\nconst createDefaultDepartment = () => ({\n organization: props.organizationId,\n profile: {\n photo: '',\n name: '',\n description: '',\n categories: [],\n },\n address: '',\n location: {\n lat: null,\n lng: null,\n },\n worktime: [],\n delivery: [],\n payment: [],\n members: [],\n subdepartments: [],\n hidden: false,\n accesses: {\n categories: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n rents: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n spots: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n members: {\n read: false,\n edit: false,\n delete: false,\n },\n posts: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n events: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n tickets: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n gallery: {\n read: false,\n create: false,\n edit: false,\n delete: false,\n },\n inventory: {\n read: false,\n edit: false,\n delete: false,\n },\n products: {\n read: false,\n edit: false,\n delete: false,\n },\n orders: {\n read: false,\n confirm: false,\n delete: false,\n },\n departments: {\n read: false,\n edit: false,\n delete: false,\n },\n },\n});\n\n// Current department reactive state - create deep copy to avoid mutating original\nconst currentDepartment = reactive(\n props.department ? JSON.parse(JSON.stringify(props.department)) : createDefaultDepartment()\n);\n\n// Member management\nfunction openMemberPopup() {\n isOpenAddMemberPopup.value = true;\n}\n\nfunction closeMemberPopup() {\n isOpenAddMemberPopup.value = false;\n}\n\nfunction isDuplicateMember(userId) {\n return currentDepartment.members.some(member => \n member.user._id === userId || member._id === userId\n );\n}\n\nfunction addMemberToDepartment(user) {\n if (!isDuplicateMember(user._id)) {\n currentDepartment.members.push({ \n _id: user._id, \n user: user, \n position: 'Member' \n });\n closeMemberPopup();\n } else {\n globals.actions.setError({ message: 'This user is already a member of this department' });\n }\n}\n\nfunction removeMember(member) {\n if (confirm(\"Are you sure you want to remove this member?\")) {\n const index = currentDepartment.members.findIndex(m => \n (m.user._id === member.user._id) || (m._id === member._id)\n );\n if (index > -1) {\n currentDepartment.members.splice(index, 1);\n }\n }\n}\n\n// Save/Delete operations\nasync function saveDepartment() {\n try {\n // Prepare department data\n const departmentData = {\n ...currentDepartment,\n organization: props.organizationId\n };\n\n let result;\n if (editingDepartment.value) {\n // Update existing department\n result = await departmentsStore.update({\n ...departmentData,\n _id: props.department._id\n });\n } else {\n // Create new department\n result = await departmentsStore.create(departmentData);\n }\n\n emit('saved', result);\n emit('close');\n } catch (error) {\n console.error('Error saving department:', error);\n globals.actions.setError(error);\n throw error;\n }\n}\n\nasync function onDelete() {\n if (confirm(\"Are you sure you want to delete this department?\")) {\n try {\n await departmentsStore.delete({ _id: props.department._id });\n emit('saved', null);\n emit('close');\n } catch (error) {\n console.error('Error deleting department:', error);\n globals.actions.setError(error);\n }\n }\n}\n</script>"],"names":["globals.actions"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DepartmentForm.vue.js","sources":["../../../../../../../src/modules/organizations/components/forms/DepartmentForm.vue"],"sourcesContent":["<template>\n <div class=\"cols-1 gap-thin o-y-scroll\">\n <Block\n title=\"Profile\"\n class=\"mn-b-thin\"\n >\n <div\n class=\"cols-2-fit-content\"\n >\n <UploadImage \n v-model:photo=\"currentDepartment.profile.photo\"\n :uploadPath=\"'organizations/' + currentDepartment.profile.name + '/departments'\"\n class=\"w-8r aspect-1x1 o-hidden mn-r-small radius-extra\" \n />\n <div class=\"w-100 flex-child-grow-1 flex-child\">\n <Field \n v-model:field=\"currentDepartment.profile.name\" \n label=\"Name\" \n placeholder=\"Department Name\" \n class=\"mn-b-small bg-white radius-small pd-medium\"\n />\n <Field \n v-model:field=\"currentDepartment.profile.description\" \n label=\"Description\" \n placeholder=\"Department description (max 120 symbols)\" \n class=\"bg-white radius-small pd-medium\"\n /> \n </div>\n </div>\n </Block>\n\n <Block\n title=\"Team\"\n placeholder=\"No members added yet\"\n :actions=\"[{\n label: '+',\n function: () => openMemberPopup()\n }]\"\n class=\"cols-1 gap-thin mn-b-thin\"\n > \n <CardUser \n class=\"h-4r bg-white pd-thin radius-medium w-100\" \n v-for=\"(member, index) in currentDepartment.members\" \n :key=\"member._id || index\" \n :user=\"member.user\" \n :photo=\"member.user.profile.photo\"\n :name=\"member.user.profile.name || member.user.phone || member.user.email || member.user._id\"\n :position=\"member.position\" \n :action=\"{\n label: {\n is: IconDelete,\n props: { class: 'i-medium', fill: 'rgb(var(--white)' }\n },\n method: () => removeMember(member)\n }\"\n />\n </Block>\n\n <div class=\"bg-light pd-medium o-hidden radius-medium mn-b-thin\">\n <h3 class=\"mn-b-semi\">Department Settings</h3>\n \n <p class=\"p-regular mn-b-small\">Please settings for your department:</p>\n <div class=\"cols-1 gap-thin\">\n <Checkbox \n label=\"Hidden department\"\n name=\"hidden\"\n class=\"w-100 mn-r-small bg-white radius-small pd-small\"\n @update:radio=\"updated => currentDepartment.hidden = !currentDepartment.hidden\"\n :radio=\"currentDepartment.hidden\"\n />\n </div>\n </div>\n\n <div class=\"bg-light pd-medium o-hidden radius-medium\">\n <h3 class=\"mn-b-semi\">Accesses</h3>\n \n <p class=\"p-regular mn-b-small\">Please select organization accesses for user in department:</p>\n \n <div class=\"cols-1 gap-thin\">\n <div v-for=\"(actions, category) in currentDepartment.accesses\" :key=\"category\" class=\"mn-b-small\">\n <Spoiler :status=\"false\">\n <template #header=\"{ isOpen }\">\n <h4 class=\"cursor-pointer flex-v-center flex gap-thin\">\n {{ category.charAt(0).toUpperCase() + category.slice(1) }}\n <span class=\"t-small\">{{ isOpen ? '▼' : '▶' }}</span>\n </h4>\n </template>\n <template #content>\n <div class=\"cols-1 gap-thin mn-t-thin\">\n <Checkbox\n v-for=\"(value, action) in actions\"\n :key=\"action\"\n :label=\"action\"\n :name=\"action\"\n :radio=\"value\"\n @update:radio=\"updated => (currentDepartment.accesses[category][action] = !value)\"\n class=\"w-100 mn-r-small bg-white radius-small pd-small\"\n />\n </div>\n </template>\n </Spoiler>\n </div>\n </div>\n </div>\n\n <!-- Action Buttons -->\n <div class=\"flex gap-thin mn-t-medium\">\n <Button\n v-if=\"editingDepartment\"\n :submit=\"onDelete\"\n :showSuccess=\"true\"\n :showLoader=\"true\"\n class=\"bg-red\"\n >\n Delete\n </Button>\n <Button\n :showSuccess=\"false\"\n :showLoader=\"false\"\n class=\"bg-grey t-white w-100\"\n @click=\"$emit('close')\"\n >\n Cancel\n </Button>\n <Button\n class=\"bg-main w-100\"\n :submit=\"saveDepartment\"\n >\n {{ editingDepartment ? 'Update Department' : 'Create Department' }}\n </Button>\n </div>\n\n <!-- Member Selection Popup -->\n <Popup \n title=\"Add member\" \n @close-popup=\"closeMemberPopup\" \n :isPopupOpen=\"isOpenAddMemberPopup\"\n class=\"bg-white w-max-30r radius-medium pd-big\"\n >\n <Feed\n :search=\"{\n placeholder: 'Search member...',\n class: 'bg-light mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Members Found',\n description: 'Currently, there are no members in organization.'\n }\n }\"\n :store=\"{\n read: (options) => membershipsStore.read(options),\n state: null\n }\"\n :options=\"{\n target: organizationId,\n role: ['member', 'owner']\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"bg-light pd-medium w-min-20r w-max-40r radius-medium h-max-20r o-scroll\"\n >\n <CardUser\n v-for=\"(user, index) in items\" \n :key=\"user._id\"\n :user=\"user.user\"\n :photo=\"user.user.profile?.photo\"\n :name=\"user.user.profile?.name || user.user.phone || user.user.email\"\n :disabled=\"isDuplicateMember(user.user._id)\"\n @click=\"() => addMemberToDepartment(user.user)\"\n class=\"h-4r bg-white pd-thin radius-medium w-100 mn-b-thin\"\n :class=\"{ 'opacity-50 cursor-not-allowed': isDuplicateMember(user.user._id) }\"\n />\n </Feed>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive, computed } from 'vue';\nimport { useRoute } from 'vue-router';\n\nimport UploadImage from '@martyrs/src/components/UploadImage/UploadImage.vue';\nimport Field from '@martyrs/src/components/Field/Field.vue';\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\nimport Block from '@martyrs/src/components/Block/Block.vue';\nimport Feed from '@martyrs/src/components/Feed/Feed.vue';\nimport Spoiler from '@martyrs/src/components/Spoiler/Spoiler.vue';\n\nimport CardUser from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue';\nimport IconDelete from '@martyrs/src/modules/icons/navigation/IconDelete.vue';\n\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\nimport membershipsStore from '@martyrs/src/modules/organizations/store/memberships.store.js';\nimport departmentsStore from '@martyrs/src/modules/organizations/store/departments.store.js';\n\nconst route = useRoute();\n\nconst props = defineProps({\n department: Object,\n organizationId: String\n});\n\nconst emit = defineEmits(['close', 'saved']);\n\n// State\nconst editingDepartment = computed(() => !!props.department?._id);\nconst isOpenAddMemberPopup = ref(false);\n\n// Create default department structure\nconst createDefaultDepartment = () => ({\n organization: props.organizationId,\n profile: {\n photo: '',\n name: '',\n description: '',\n categories: [],\n },\n address: '',\n location: {\n lat: null,\n lng: null,\n },\n worktime: [],\n delivery: [],\n payment: [],\n members: [],\n subdepartments: [],\n hidden: false,\n accesses: {\n categories: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n rents: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n spots: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n members: {\n read: false,\n edit: false,\n delete: false,\n },\n posts: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n events: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n tickets: {\n create: false,\n read: false,\n edit: false,\n delete: false,\n },\n gallery: {\n read: false,\n create: false,\n edit: false,\n delete: false,\n },\n inventory: {\n read: false,\n edit: false,\n delete: false,\n },\n products: {\n read: false,\n edit: false,\n delete: false,\n },\n orders: {\n read: false,\n confirm: false,\n delete: false,\n },\n departments: {\n read: false,\n edit: false,\n delete: false,\n },\n },\n});\n\n// Current department reactive state - create deep copy to avoid mutating original\nconst currentDepartment = reactive(\n props.department ? JSON.parse(JSON.stringify(props.department)) : createDefaultDepartment()\n);\n\n// Member management\nfunction openMemberPopup() {\n isOpenAddMemberPopup.value = true;\n}\n\nfunction closeMemberPopup() {\n isOpenAddMemberPopup.value = false;\n}\n\nfunction isDuplicateMember(userId) {\n return currentDepartment.members.some(member => \n member.user._id === userId || member._id === userId\n );\n}\n\nfunction addMemberToDepartment(user) {\n if (!isDuplicateMember(user._id)) {\n currentDepartment.members.push({ \n _id: user._id, \n user: user, \n position: 'Member' \n });\n closeMemberPopup();\n } else {\n globals.actions.setError({ message: 'This user is already a member of this department' });\n }\n}\n\nfunction removeMember(member) {\n if (confirm(\"Are you sure you want to remove this member?\")) {\n const index = currentDepartment.members.findIndex(m => \n (m.user._id === member.user._id) || (m._id === member._id)\n );\n if (index > -1) {\n currentDepartment.members.splice(index, 1);\n }\n }\n}\n\n// Save/Delete operations\nasync function saveDepartment() {\n try {\n // Prepare department data\n const departmentData = {\n ...currentDepartment,\n organization: props.organizationId\n };\n\n let result;\n if (editingDepartment.value) {\n // Update existing department\n result = await departmentsStore.update({\n ...departmentData,\n _id: props.department._id\n });\n } else {\n // Create new department\n result = await departmentsStore.create(departmentData);\n }\n\n emit('saved', result);\n emit('close');\n } catch (error) {\n console.error('Error saving department:', error);\n globals.actions.setError(error);\n throw error;\n }\n}\n\nasync function onDelete() {\n if (confirm(\"Are you sure you want to delete this department?\")) {\n try {\n await departmentsStore.delete({ _id: props.department._id });\n emit('saved', null);\n emit('close');\n } catch (error) {\n console.error('Error deleting department:', error);\n globals.actions.setError(error);\n }\n }\n}\n</script>"],"names":["globals.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuMc,aAAQ;AAEtB,UAAM,QAAQ;AAKd,UAAM,OAAO;AAGb,UAAM,oBAAoB,SAAS,MAAM,CAAC,CAAC,MAAM,YAAY,GAAG;AAChE,UAAM,uBAAuB,IAAI,KAAK;AAGtC,UAAM,0BAA0B,OAAO;AAAA,MACrC,cAAc,MAAM;AAAA,MACpB,SAAS;AAAA,QACP,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa;AAAA,QACb,YAAY,CAAA;AAAA,MAChB;AAAA,MACE,SAAS;AAAA,MACT,UAAU;AAAA,QACR,KAAK;AAAA,QACL,KAAK;AAAA,MACT;AAAA,MACE,UAAU,CAAA;AAAA,MACV,UAAU,CAAA;AAAA,MACV,SAAS,CAAA;AAAA,MACT,SAAS,CAAA;AAAA,MACT,gBAAgB,CAAA;AAAA,MAChB,QAAQ;AAAA,MACR,UAAU;AAAA,QACR,YAAY;AAAA,UACV,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI,OAAO;AAAA,UACL,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI,OAAO;AAAA,UACL,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI,SAAS;AAAA,UACP,MAAM;AAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI,OAAO;AAAA,UACL,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI,QAAQ;AAAA,UACN,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI,SAAS;AAAA,UACP,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI,SAAS;AAAA,UACP,MAAM;AAAA,UACN,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI,WAAW;AAAA,UACT,MAAM;AAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI,UAAU;AAAA,UACR,MAAM;AAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI,QAAQ;AAAA,UACN,MAAM;AAAA,UACN,SAAS;AAAA,UACT,QAAQ;AAAA,QACd;AAAA,QACI,aAAa;AAAA,UACX,MAAM;AAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,MACA;AAAA,IACA;AAGA,UAAM,oBAAoB;AAAA,MACxB,MAAM,aAAa,KAAK,MAAM,KAAK,UAAU,MAAM,UAAU,CAAC,IAAI,wBAAuB;AAAA,IAC3F;AAGA,aAAS,kBAAkB;AACzB,2BAAqB,QAAQ;AAAA,IAC/B;AAEA,aAAS,mBAAmB;AAC1B,2BAAqB,QAAQ;AAAA,IAC/B;AAEA,aAAS,kBAAkB,QAAQ;AACjC,aAAO,kBAAkB,QAAQ;AAAA,QAAK,YACpC,OAAO,KAAK,QAAQ,UAAU,OAAO,QAAQ;AAAA,MACjD;AAAA,IACA;AAEA,aAAS,sBAAsB,MAAM;AACnC,UAAI,CAAC,kBAAkB,KAAK,GAAG,GAAG;AAChC,0BAAkB,QAAQ,KAAK;AAAA,UAC7B,KAAK,KAAK;AAAA,UACV;AAAA,UACA,UAAU;AAAA,QAChB,CAAK;AACD,yBAAgB;AAAA,MAClB,OAAO;AACLA,gBAAgB,SAAS,EAAE,SAAS,mDAAkD,CAAE;AAAA,MAC1F;AAAA,IACF;AAEA,aAAS,aAAa,QAAQ;AAC5B,UAAI,QAAQ,8CAA8C,GAAG;AAC3D,cAAM,QAAQ,kBAAkB,QAAQ;AAAA,UAAU,OAC/C,EAAE,KAAK,QAAQ,OAAO,KAAK,OAAS,EAAE,QAAQ,OAAO;AAAA,QAC5D;AACI,YAAI,QAAQ,IAAI;AACd,4BAAkB,QAAQ,OAAO,OAAO,CAAC;AAAA,QAC3C;AAAA,MACF;AAAA,IACF;AAGA,mBAAe,iBAAiB;AAC9B,UAAI;AAEF,cAAM,iBAAiB;AAAA,UACrB,GAAG;AAAA,UACH,cAAc,MAAM;AAAA,QAC1B;AAEI,YAAI;AACJ,YAAI,kBAAkB,OAAO;AAE3B,mBAAS,MAAM,iBAAiB,OAAO;AAAA,YACrC,GAAG;AAAA,YACH,KAAK,MAAM,WAAW;AAAA,UAC9B,CAAO;AAAA,QACH,OAAO;AAEL,mBAAS,MAAM,iBAAiB,OAAO,cAAc;AAAA,QACvD;AAEA,aAAK,SAAS,MAAM;AACpB,aAAK,OAAO;AAAA,MACd,SAAS,OAAO;AACd,gBAAQ,MAAM,4BAA4B,KAAK;AAC/CA,gBAAgB,SAAS,KAAK;AAC9B,cAAM;AAAA,MACR;AAAA,IACF;AAEA,mBAAe,WAAW;AACxB,UAAI,QAAQ,kDAAkD,GAAG;AAC/D,YAAI;AACF,gBAAM,iBAAiB,OAAO,EAAE,KAAK,MAAM,WAAW,KAAK;AAC3D,eAAK,SAAS,IAAI;AAClB,eAAK,OAAO;AAAA,QACd,SAAS,OAAO;AACd,kBAAQ,MAAM,8BAA8B,KAAK;AACjDA,kBAAgB,SAAS,KAAK;AAAA,QAChC;AAAA,MACF;AAAA,IACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -5,7 +5,7 @@ const Field = require("../../../../components/Field/Field.vue2.cjs");
|
|
|
5
5
|
const Button = require("../../../../components/Button/Button.vue.cjs");
|
|
6
6
|
const IconDelete = require("../../../icons/navigation/IconDelete.vue.cjs");
|
|
7
7
|
const IconAdd = require("../../../icons/navigation/IconAdd.vue.cjs");
|
|
8
|
-
const _hoisted_1 = { class: "mn-b-thin t-transp p-
|
|
8
|
+
const _hoisted_1 = { class: "mn-b-thin t-transp p-regular" };
|
|
9
9
|
const _hoisted_2 = { class: "cols-1 mn-b-small radius-medium pd-semi bg-light pos-relative" };
|
|
10
10
|
const _hoisted_3 = ["onClick"];
|
|
11
11
|
const _sfc_main = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InviteForm.vue.cjs","sources":["../../../../../../../src/modules/organizations/components/forms/InviteForm.vue"],"sourcesContent":["<template>\n <div>\n <p class=\"mn-b-thin t-transp p-
|
|
1
|
+
{"version":3,"file":"InviteForm.vue.cjs","sources":["../../../../../../../src/modules/organizations/components/forms/InviteForm.vue"],"sourcesContent":["<template>\n <div>\n <p class=\"mn-b-thin t-transp p-regular\">{{ text }}</p> \n\n <section class=\"cols-1 mn-b-small radius-medium pd-semi bg-light pos-relative\">\n <div\n v-for=\"(member, index) in members\" \n :key=\"index\" \n class=\"br-1px br-solid br-grey-transp-25 flex gap-thin radius-small mn-b-thin\"\n >\n <Field \n v-model:field=\"member.contact\" \n placeholder=\"Enter email or phone\" \n class=\"w-100 pd-small radius-small bg-white\"\n :validation=\"contactValidation\"\n >\n <div \n v-if=\"index < 1\" \n @click=\"() => members.push({contact: ''})\" \n class=\"radius-small h-100 i-big flex-center flex aspect-1x1 bg-green\"\n >\n <IconAdd \n class=\"i-medium\"\n :fill=\"'rgb(var(--white)'\"\n />\n </div>\n\n <div \n v-else \n @click=\"() => members.splice(index, 1)\" \n class=\"radius-small h-100 i-big flex-center flex aspect-1x1 bg-red\"\n >\n <IconDelete \n class=\"i-medium\"\n :fill=\"'rgb(var(--white)'\"\n />\n </div>\n </Field>\n </div>\n </section>\n\n <Button \n :submit=\"submitMembers\" \n class=\"w-100 bg-main\"\n >\n <span>Send invitations</span>\n </Button>\n </div>\n</template>\n\n<script setup>\nimport { ref } from 'vue';\n\nimport Field from '@martyrs/src/components/Field/Field.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\n\nimport IconDelete from '@martyrs/src/modules/icons/navigation/IconDelete.vue';\nimport IconAdd from '@martyrs/src/modules/icons/navigation/IconAdd.vue';\n\nconst props = defineProps({\n organization: Object,\n text: {\n type: String,\n default: 'Please enter email or phone number to send an invitation link:'\n }\n});\n\nconst emit = defineEmits(['send-invite']);\n\n// Validation\nconst contactValidation = ref(null);\n\n// Members list\nconst members = ref([{ contact: '' }]);\n\nasync function submitMembers() {\n return new Promise((resolve, reject) => {\n emit('send-invite', members.value, resolve, reject);\n });\n}\n</script>"],"names":["ref"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAmEA,UAAM,OAAO;AAGb,UAAM,oBAAoBA,IAAAA,IAAI,IAAI;AAGlC,UAAM,UAAUA,IAAAA,IAAI,CAAC,EAAE,SAAS,GAAE,CAAE,CAAC;AAErC,mBAAe,gBAAgB;AAC7B,aAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,aAAK,eAAe,QAAQ,OAAO,SAAS,MAAM;AAAA,MACpD,CAAC;AAAA,IACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -3,7 +3,7 @@ import Field from "../../../../components/Field/Field.vue2.js";
|
|
|
3
3
|
import _sfc_main$3 from "../../../../components/Button/Button.vue.js";
|
|
4
4
|
import _sfc_main$2 from "../../../icons/navigation/IconDelete.vue.js";
|
|
5
5
|
import _sfc_main$1 from "../../../icons/navigation/IconAdd.vue.js";
|
|
6
|
-
const _hoisted_1 = { class: "mn-b-thin t-transp p-
|
|
6
|
+
const _hoisted_1 = { class: "mn-b-thin t-transp p-regular" };
|
|
7
7
|
const _hoisted_2 = { class: "cols-1 mn-b-small radius-medium pd-semi bg-light pos-relative" };
|
|
8
8
|
const _hoisted_3 = ["onClick"];
|
|
9
9
|
const _sfc_main = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InviteForm.vue.js","sources":["../../../../../../../src/modules/organizations/components/forms/InviteForm.vue"],"sourcesContent":["<template>\n <div>\n <p class=\"mn-b-thin t-transp p-
|
|
1
|
+
{"version":3,"file":"InviteForm.vue.js","sources":["../../../../../../../src/modules/organizations/components/forms/InviteForm.vue"],"sourcesContent":["<template>\n <div>\n <p class=\"mn-b-thin t-transp p-regular\">{{ text }}</p> \n\n <section class=\"cols-1 mn-b-small radius-medium pd-semi bg-light pos-relative\">\n <div\n v-for=\"(member, index) in members\" \n :key=\"index\" \n class=\"br-1px br-solid br-grey-transp-25 flex gap-thin radius-small mn-b-thin\"\n >\n <Field \n v-model:field=\"member.contact\" \n placeholder=\"Enter email or phone\" \n class=\"w-100 pd-small radius-small bg-white\"\n :validation=\"contactValidation\"\n >\n <div \n v-if=\"index < 1\" \n @click=\"() => members.push({contact: ''})\" \n class=\"radius-small h-100 i-big flex-center flex aspect-1x1 bg-green\"\n >\n <IconAdd \n class=\"i-medium\"\n :fill=\"'rgb(var(--white)'\"\n />\n </div>\n\n <div \n v-else \n @click=\"() => members.splice(index, 1)\" \n class=\"radius-small h-100 i-big flex-center flex aspect-1x1 bg-red\"\n >\n <IconDelete \n class=\"i-medium\"\n :fill=\"'rgb(var(--white)'\"\n />\n </div>\n </Field>\n </div>\n </section>\n\n <Button \n :submit=\"submitMembers\" \n class=\"w-100 bg-main\"\n >\n <span>Send invitations</span>\n </Button>\n </div>\n</template>\n\n<script setup>\nimport { ref } from 'vue';\n\nimport Field from '@martyrs/src/components/Field/Field.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\n\nimport IconDelete from '@martyrs/src/modules/icons/navigation/IconDelete.vue';\nimport IconAdd from '@martyrs/src/modules/icons/navigation/IconAdd.vue';\n\nconst props = defineProps({\n organization: Object,\n text: {\n type: String,\n default: 'Please enter email or phone number to send an invitation link:'\n }\n});\n\nconst emit = defineEmits(['send-invite']);\n\n// Validation\nconst contactValidation = ref(null);\n\n// Members list\nconst members = ref([{ contact: '' }]);\n\nasync function submitMembers() {\n return new Promise((resolve, reject) => {\n emit('send-invite', members.value, resolve, reject);\n });\n}\n</script>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAmEA,UAAM,OAAO;AAGb,UAAM,oBAAoB,IAAI,IAAI;AAGlC,UAAM,UAAU,IAAI,CAAC,EAAE,SAAS,GAAE,CAAE,CAAC;AAErC,mBAAe,gBAAgB;AAC7B,aAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,aAAK,eAAe,QAAQ,OAAO,SAAS,MAAM;AAAA,MACpD,CAAC;AAAA,IACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
const vueRouter = require("vue-router");
|
|
5
|
-
;/* empty css
|
|
5
|
+
;/* empty css */
|
|
6
6
|
const departments_store = require("../../store/departments.store.cjs");
|
|
7
7
|
;/* empty css */
|
|
8
8
|
;/* empty css */
|
|
@@ -25,13 +25,13 @@ const IconEdit = require("../../../icons/navigation/IconEdit.vue.cjs");
|
|
|
25
25
|
;/* empty css */
|
|
26
26
|
;/* empty css */
|
|
27
27
|
;/* empty css */
|
|
28
|
-
;/* empty css
|
|
28
|
+
;/* empty css */
|
|
29
29
|
;/* empty css */
|
|
30
30
|
;/* empty css */
|
|
31
31
|
;/* empty css */
|
|
32
32
|
;/* empty css */
|
|
33
33
|
require("axios");
|
|
34
|
-
;/* empty css
|
|
34
|
+
;/* empty css */
|
|
35
35
|
;/* empty css */
|
|
36
36
|
const DepartmentSub = require("../blocks/DepartmentSub.vue.cjs");
|
|
37
37
|
;/* empty css */
|
|
@@ -79,7 +79,7 @@ const _sfc_main = {
|
|
|
79
79
|
}, {
|
|
80
80
|
default: vue.withCtx(() => [
|
|
81
81
|
vue.createVNode(IconEdit.default, {
|
|
82
|
-
class: "i-
|
|
82
|
+
class: "i-medium",
|
|
83
83
|
classes: "fill-white"
|
|
84
84
|
})
|
|
85
85
|
]),
|
|
@@ -87,7 +87,7 @@ const _sfc_main = {
|
|
|
87
87
|
}, 8, ["to"])
|
|
88
88
|
]),
|
|
89
89
|
vue.createElementVNode("p", {
|
|
90
|
-
class: "t-transp p-
|
|
90
|
+
class: "t-transp p-medium",
|
|
91
91
|
innerHTML: vue.unref(departments_store.default).state.items[0].description
|
|
92
92
|
}, null, 8, _hoisted_6)
|
|
93
93
|
]),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Department.vue.cjs","sources":["../../../../../../../src/modules/organizations/components/pages/Department.vue"],"sourcesContent":["<template>\n <div class=\"for-transition w-100\">\n \n <div v-if=\"departmentsStore.state.items.length > 0\" id=\"dash\" class=\"pd-medium bg-light\">\n <section class=\"mn-b-medium radius-medium pd-semi bg-white\">\n <div class=\"flex-nowrap flex mn-b-small\">\n\n <h2 class=\"w-100\">{{ departmentsStore.state.items[0].profile.name }}</h2>\n\n <router-link \n :to=\"{\n name: 'Department Edit', \n params: {\n _id: route.params._id,\n department: route.params.department\n }\n }\" \n class=\"\n cursor-pointer \n pos-absolute pos-t-regular pos-r-regular\n radius-extra pd-thin bg-second\n \"\n >\n <IconEdit\n class=\"i-
|
|
1
|
+
{"version":3,"file":"Department.vue.cjs","sources":["../../../../../../../src/modules/organizations/components/pages/Department.vue"],"sourcesContent":["<template>\n <div class=\"for-transition w-100\">\n \n <div v-if=\"departmentsStore.state.items.length > 0\" id=\"dash\" class=\"pd-medium bg-light\">\n <section class=\"mn-b-medium radius-medium pd-semi bg-white\">\n <div class=\"flex-nowrap flex mn-b-small\">\n\n <h2 class=\"w-100\">{{ departmentsStore.state.items[0].profile.name }}</h2>\n\n <router-link \n :to=\"{\n name: 'Department Edit', \n params: {\n _id: route.params._id,\n department: route.params.department\n }\n }\" \n class=\"\n cursor-pointer \n pos-absolute pos-t-regular pos-r-regular\n radius-extra pd-thin bg-second\n \"\n >\n <IconEdit\n class=\"i-medium\"\n classes=\"fill-white\"\n />\n </router-link>\n\n </div>\n <p class=\"t-transp p-medium\" v-html=\"departmentsStore.state.items[0].description\"></p>\n </section>\n\n <section class=\"mn-b-medium radius-medium pd-semi bg-white\">\n <h3 class=\"mn-b-regular\">Команда</h3>\n <ul>\n <li v-if=\"departmentsStore.state.items[0]?.members?.length < 1\">В отделе еще нет участников</li>\n <User \n class=\"br-b br-solid br-grey-transp-25\" \n v-for=\"(member, index) in departmentsStore.state.items[0]?.members || []\" \n :key=\"index\" \n :user=\"member.user\" \n :photo=\"member.user.profile.photo\"\n :name=\"member.user.profile.name || member.user.phone || member.user.email || member.user._id\"\n :position=\"member.position\" \n @click=\"$router.push({ name: 'User Profile', params: { _id: member.user._id } })\" \n />\n </ul>\n </section>\n\n <section class=\"mn-b-medium radius-medium pd-semi bg-white\">\n <h3 class=\"mn-b-regular\">Подотделы</h3>\n <ul>\n <li v-if=\"departmentsStore.state.items[0]?.subdepartments?.length < 1\">В отделе еще нет подотделов</li>\n <DepartmentSub v-for=\"(subdepartment, index) in departmentsStore.state.items[0]?.subdepartments || []\" @click=\"$router.push(`/app/organization/departments/${subdepartment._id}`)\" :key=\"index\" class=\"br-b br-solid br-grey-transp-25\" :department=\"subdepartment\" />\n </ul> \n </section>\n </div>\n </div>\n</template>\n\n<script setup>\nimport { useRoute, useRouter } from 'vue-router';\n\nimport Spoiler from '@martyrs/src/components/Spoiler/Spoiler.vue';\nimport { DepartmentSub, departmentsStore } from '@martyrs/src/modules/organizations/organizations.client.js';\nimport User from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue';\n\nimport IconEdit from '@martyrs/src/modules/icons/navigation/IconEdit.vue'\n\nconst router = useRouter();\nconst route = useRoute();\n\nawait departmentsStore.read({ _id: route.params.department });\n</script>\n\n<style scoped>\n</style>\n"],"names":["useRouter","useRoute","_withAsyncContext","departmentsStore"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsEeA,cAAAA,UAAS;AACxB,UAAM,QAAQC,UAAAA,SAAQ;AAEtB,IAAA,CAAA,QAAA,SAAA,IAAAC,IAAAA,iBAAA,MAAMC,kBAAAA,QAAiB,KAAK,EAAE,KAAK,MAAM,OAAO,WAAU,CAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { withAsyncContext, resolveComponent, createElementBlock, openBlock, createCommentVNode, unref, createElementVNode, createVNode, toDisplayString, withCtx, Fragment, renderList, createBlock } from "vue";
|
|
2
2
|
import { useRouter, useRoute } from "vue-router";
|
|
3
|
-
/* empty css
|
|
3
|
+
/* empty css */
|
|
4
4
|
import departmentsStore from "../../store/departments.store.js";
|
|
5
5
|
/* empty css */
|
|
6
6
|
/* empty css */
|
|
@@ -23,13 +23,13 @@ import _sfc_main$1 from "../../../icons/navigation/IconEdit.vue.js";
|
|
|
23
23
|
/* empty css */
|
|
24
24
|
/* empty css */
|
|
25
25
|
/* empty css */
|
|
26
|
-
/* empty css
|
|
26
|
+
/* empty css */
|
|
27
27
|
/* empty css */
|
|
28
28
|
/* empty css */
|
|
29
29
|
/* empty css */
|
|
30
30
|
/* empty css */
|
|
31
31
|
import "axios";
|
|
32
|
-
/* empty css
|
|
32
|
+
/* empty css */
|
|
33
33
|
/* empty css */
|
|
34
34
|
import DepartmentSub from "../blocks/DepartmentSub.vue.js";
|
|
35
35
|
/* empty css */
|
|
@@ -77,7 +77,7 @@ const _sfc_main = {
|
|
|
77
77
|
}, {
|
|
78
78
|
default: withCtx(() => [
|
|
79
79
|
createVNode(_sfc_main$1, {
|
|
80
|
-
class: "i-
|
|
80
|
+
class: "i-medium",
|
|
81
81
|
classes: "fill-white"
|
|
82
82
|
})
|
|
83
83
|
]),
|
|
@@ -85,7 +85,7 @@ const _sfc_main = {
|
|
|
85
85
|
}, 8, ["to"])
|
|
86
86
|
]),
|
|
87
87
|
createElementVNode("p", {
|
|
88
|
-
class: "t-transp p-
|
|
88
|
+
class: "t-transp p-medium",
|
|
89
89
|
innerHTML: unref(departmentsStore).state.items[0].description
|
|
90
90
|
}, null, 8, _hoisted_6)
|
|
91
91
|
]),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Department.vue.js","sources":["../../../../../../../src/modules/organizations/components/pages/Department.vue"],"sourcesContent":["<template>\n <div class=\"for-transition w-100\">\n \n <div v-if=\"departmentsStore.state.items.length > 0\" id=\"dash\" class=\"pd-medium bg-light\">\n <section class=\"mn-b-medium radius-medium pd-semi bg-white\">\n <div class=\"flex-nowrap flex mn-b-small\">\n\n <h2 class=\"w-100\">{{ departmentsStore.state.items[0].profile.name }}</h2>\n\n <router-link \n :to=\"{\n name: 'Department Edit', \n params: {\n _id: route.params._id,\n department: route.params.department\n }\n }\" \n class=\"\n cursor-pointer \n pos-absolute pos-t-regular pos-r-regular\n radius-extra pd-thin bg-second\n \"\n >\n <IconEdit\n class=\"i-
|
|
1
|
+
{"version":3,"file":"Department.vue.js","sources":["../../../../../../../src/modules/organizations/components/pages/Department.vue"],"sourcesContent":["<template>\n <div class=\"for-transition w-100\">\n \n <div v-if=\"departmentsStore.state.items.length > 0\" id=\"dash\" class=\"pd-medium bg-light\">\n <section class=\"mn-b-medium radius-medium pd-semi bg-white\">\n <div class=\"flex-nowrap flex mn-b-small\">\n\n <h2 class=\"w-100\">{{ departmentsStore.state.items[0].profile.name }}</h2>\n\n <router-link \n :to=\"{\n name: 'Department Edit', \n params: {\n _id: route.params._id,\n department: route.params.department\n }\n }\" \n class=\"\n cursor-pointer \n pos-absolute pos-t-regular pos-r-regular\n radius-extra pd-thin bg-second\n \"\n >\n <IconEdit\n class=\"i-medium\"\n classes=\"fill-white\"\n />\n </router-link>\n\n </div>\n <p class=\"t-transp p-medium\" v-html=\"departmentsStore.state.items[0].description\"></p>\n </section>\n\n <section class=\"mn-b-medium radius-medium pd-semi bg-white\">\n <h3 class=\"mn-b-regular\">Команда</h3>\n <ul>\n <li v-if=\"departmentsStore.state.items[0]?.members?.length < 1\">В отделе еще нет участников</li>\n <User \n class=\"br-b br-solid br-grey-transp-25\" \n v-for=\"(member, index) in departmentsStore.state.items[0]?.members || []\" \n :key=\"index\" \n :user=\"member.user\" \n :photo=\"member.user.profile.photo\"\n :name=\"member.user.profile.name || member.user.phone || member.user.email || member.user._id\"\n :position=\"member.position\" \n @click=\"$router.push({ name: 'User Profile', params: { _id: member.user._id } })\" \n />\n </ul>\n </section>\n\n <section class=\"mn-b-medium radius-medium pd-semi bg-white\">\n <h3 class=\"mn-b-regular\">Подотделы</h3>\n <ul>\n <li v-if=\"departmentsStore.state.items[0]?.subdepartments?.length < 1\">В отделе еще нет подотделов</li>\n <DepartmentSub v-for=\"(subdepartment, index) in departmentsStore.state.items[0]?.subdepartments || []\" @click=\"$router.push(`/app/organization/departments/${subdepartment._id}`)\" :key=\"index\" class=\"br-b br-solid br-grey-transp-25\" :department=\"subdepartment\" />\n </ul> \n </section>\n </div>\n </div>\n</template>\n\n<script setup>\nimport { useRoute, useRouter } from 'vue-router';\n\nimport Spoiler from '@martyrs/src/components/Spoiler/Spoiler.vue';\nimport { DepartmentSub, departmentsStore } from '@martyrs/src/modules/organizations/organizations.client.js';\nimport User from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue';\n\nimport IconEdit from '@martyrs/src/modules/icons/navigation/IconEdit.vue'\n\nconst router = useRouter();\nconst route = useRoute();\n\nawait departmentsStore.read({ _id: route.params.department });\n</script>\n\n<style scoped>\n</style>\n"],"names":["_withAsyncContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsEe,cAAS;AACxB,UAAM,QAAQ,SAAQ;AAEtB,IAAA,CAAA,QAAA,SAAA,IAAAA,iBAAA,MAAM,iBAAiB,KAAK,EAAE,KAAK,MAAM,OAAO,WAAU,CAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -9,7 +9,7 @@ const departments_store = require("../../store/departments.store.cjs");
|
|
|
9
9
|
const invites_store = require("../../store/invites.store.cjs");
|
|
10
10
|
const memberships_store = require("../../store/memberships.store.cjs");
|
|
11
11
|
const organizations = require("../../store/organizations.cjs");
|
|
12
|
-
;/* empty css
|
|
12
|
+
;/* empty css */
|
|
13
13
|
const CardUser = require("../../../auth/views/components/blocks/CardUser.vue.cjs");
|
|
14
14
|
require("vue-i18n");
|
|
15
15
|
;/* empty css */
|
|
@@ -27,7 +27,7 @@ require("../../../../components/Menu/MenuItem.vue.cjs");
|
|
|
27
27
|
;/* empty css */
|
|
28
28
|
;/* empty css */
|
|
29
29
|
;/* empty css */
|
|
30
|
-
;/* empty css
|
|
30
|
+
;/* empty css */
|
|
31
31
|
;/* empty css */
|
|
32
32
|
const auth = require("../../../auth/views/store/auth.cjs");
|
|
33
33
|
;/* empty css */
|
|
@@ -35,7 +35,7 @@ const auth = require("../../../auth/views/store/auth.cjs");
|
|
|
35
35
|
;/* empty css */
|
|
36
36
|
require("axios");
|
|
37
37
|
const IconDelete = require("../../../icons/navigation/IconDelete.vue.cjs");
|
|
38
|
-
;/* empty css
|
|
38
|
+
;/* empty css */
|
|
39
39
|
;/* empty css */
|
|
40
40
|
const DepartmentForm = require("../forms/DepartmentForm.vue.cjs");
|
|
41
41
|
const InviteForm = require("../forms/InviteForm.vue.cjs");
|
|
@@ -7,7 +7,7 @@ import departmentsStore from "../../store/departments.store.js";
|
|
|
7
7
|
import invitesStore from "../../store/invites.store.js";
|
|
8
8
|
import membershipsStore from "../../store/memberships.store.js";
|
|
9
9
|
import { actions } from "../../store/organizations.js";
|
|
10
|
-
/* empty css
|
|
10
|
+
/* empty css */
|
|
11
11
|
import _sfc_main$3 from "../../../auth/views/components/blocks/CardUser.vue.js";
|
|
12
12
|
import "vue-i18n";
|
|
13
13
|
/* empty css */
|
|
@@ -25,7 +25,7 @@ import "../../../../components/Menu/MenuItem.vue.js";
|
|
|
25
25
|
/* empty css */
|
|
26
26
|
/* empty css */
|
|
27
27
|
/* empty css */
|
|
28
|
-
/* empty css
|
|
28
|
+
/* empty css */
|
|
29
29
|
/* empty css */
|
|
30
30
|
import { state } from "../../../auth/views/store/auth.js";
|
|
31
31
|
/* empty css */
|
|
@@ -33,7 +33,7 @@ import { state } from "../../../auth/views/store/auth.js";
|
|
|
33
33
|
/* empty css */
|
|
34
34
|
import "axios";
|
|
35
35
|
import _sfc_main$4 from "../../../icons/navigation/IconDelete.vue.js";
|
|
36
|
-
/* empty css
|
|
36
|
+
/* empty css */
|
|
37
37
|
/* empty css */
|
|
38
38
|
import _sfc_main$8 from "../forms/DepartmentForm.vue.js";
|
|
39
39
|
import _sfc_main$6 from "../forms/InviteForm.vue.js";
|
|
@@ -15,7 +15,7 @@ const IconEllipsis = require("../../../icons/navigation/IconEllipsis.vue.cjs");
|
|
|
15
15
|
const PlaceholderOrganizationPic = require("../../../icons/placeholders/PlaceholderOrganizationPic.vue.cjs");
|
|
16
16
|
const memberships_store = require("../../store/memberships.store.cjs");
|
|
17
17
|
const organizations = require("../../store/organizations.cjs");
|
|
18
|
-
;/* empty css
|
|
18
|
+
;/* empty css */
|
|
19
19
|
;/* empty css */
|
|
20
20
|
;/* empty css */
|
|
21
21
|
;/* empty css */
|
|
@@ -32,7 +32,7 @@ const globals = require("../../../globals/views/store/globals.cjs");
|
|
|
32
32
|
;/* empty css */
|
|
33
33
|
;/* empty css */
|
|
34
34
|
require("axios");
|
|
35
|
-
;/* empty css
|
|
35
|
+
;/* empty css */
|
|
36
36
|
;/* empty css */
|
|
37
37
|
const ButtonToggleMembership = require("../elements/ButtonToggleMembership.vue.cjs");
|
|
38
38
|
;/* empty css */
|
|
@@ -54,7 +54,7 @@ const _hoisted_3 = { class: "bg-black pd-thin radius-small" };
|
|
|
54
54
|
const _hoisted_4 = ["src"];
|
|
55
55
|
const _hoisted_5 = { class: "mn-b-thin" };
|
|
56
56
|
const _hoisted_6 = { class: "flex-center pd-r-thin pd-l-thin flex-nowrap flex mn-t-thin bg-white radius-extra w-max" };
|
|
57
|
-
const _hoisted_7 = { class: "mn-t-thin p-
|
|
57
|
+
const _hoisted_7 = { class: "mn-t-thin p-regular t-medium uppercase mn-b-thin" };
|
|
58
58
|
const _hoisted_8 = {
|
|
59
59
|
key: 5,
|
|
60
60
|
class: "mn-t-small mn-b-thin"
|
|
@@ -91,7 +91,7 @@ const _sfc_main = {
|
|
|
91
91
|
vue.createElementVNode("section", _hoisted_2, [
|
|
92
92
|
auth.state.user._id !== organizations.state.current.owner ? (vue.openBlock(), vue.createBlock(Dropdown.default, {
|
|
93
93
|
key: 0,
|
|
94
|
-
label: { component: IconEllipsis.default, class: "i-
|
|
94
|
+
label: { component: IconEllipsis.default, class: "i-medium t-transp" },
|
|
95
95
|
align: "right",
|
|
96
96
|
class: "cursor-pointer pos-absolute pos-r-regular pos-t-regular pd-thin radius-extra"
|
|
97
97
|
}, {
|
|
@@ -136,7 +136,7 @@ const _sfc_main = {
|
|
|
136
136
|
}, {
|
|
137
137
|
default: vue.withCtx(() => [
|
|
138
138
|
vue.createVNode(IconEdit.default, {
|
|
139
|
-
class: "i-
|
|
139
|
+
class: "i-medium",
|
|
140
140
|
classes: "fill-white"
|
|
141
141
|
})
|
|
142
142
|
]),
|
|
@@ -164,13 +164,13 @@ const _sfc_main = {
|
|
|
164
164
|
status: organizations.state.current.isSubscriber,
|
|
165
165
|
text: { create: "+", remove: "-" },
|
|
166
166
|
onUpdateMembership: _cache[1] || (_cache[1] = (event) => handleMembershipUpdate(event, "isSubscriber", "numberOfSubscribers")),
|
|
167
|
-
class: "mn-l-thin p-
|
|
167
|
+
class: "mn-l-thin p-regular t-medium radius-extra i-medium"
|
|
168
168
|
}, null, 8, ["user", "target", "status"])) : vue.createCommentVNode("", true)
|
|
169
169
|
]),
|
|
170
170
|
organizations.state.current.profile?.tags?.length > 0 ? (vue.openBlock(), vue.createBlock(Chips.default, {
|
|
171
171
|
key: 4,
|
|
172
172
|
chips: organizations.state.current.profile.tags,
|
|
173
|
-
class: "p-
|
|
173
|
+
class: "p-regular"
|
|
174
174
|
}, null, 8, ["chips"])) : vue.createCommentVNode("", true),
|
|
175
175
|
Object.values(organizations.state.current.socials).some((value) => value) ? (vue.openBlock(), vue.createElementBlock("h4", _hoisted_8, " Find us in socials ")) : vue.createCommentVNode("", true),
|
|
176
176
|
vue.createVNode(vue.unref(Socials.default), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Organization.vue.cjs","sources":["../../../../../../../src/modules/organizations/components/pages/Organization.vue"],"sourcesContent":["<template>\n\t<div v-if=\"organizationData\" class=\"pd-thin for-transition w-100\">\n\n\t\t<!-- <Breadcrumbs class=\"mn-b-thin pd-medium bg-light radius-medium\"/> -->\n\t\t<!-- <pre>{{organization.state.current}}</pre> -->\n\n\t\t<section class=\"flex-center flex flex-column t-center pd-medium radius-medium bg-light mn-b-thin\">\n\n\t\t\t<Dropdown \n\t\t\t\tv-if=\"auth.state.user._id !== organization.state.current.owner\"\n\t\t\t\t:label=\"{ component: IconEllipsis, class: 'i-regular t-transp' }\"\n\t\t\t\t:align=\"'right'\"\n\t\t\t\tclass=\"cursor-pointer pos-absolute pos-r-regular pos-t-regular pd-thin radius-extra \"\n\t\t\t>\n\t\t\t\t<section \n\t\t\t\t\tclass=\"bg-black pd-thin radius-small\"\n\t\t\t\t>\n\t\t\t\t\t<FormReport \n\t\t\t\t\t\t:user=\"auth.state.user._id\"\n\t\t\t\t\t\t:type=\"'organization'\" \n\t\t\t\t\t\t:target=\"organization.state.current._id\" \n\t\t\t\t\t\t:text=\"'Report'\" \n\t\t\t\t\t\tclass=\"w-100\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<button \n\t\t\t\t\t\t\tclass=\"w-100 bg-black br-solid br-1px br-white-transp-20 t-white button-small button\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tReport\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</FormReport>\n\n\t\t\t\t\t<ButtonToggleMembership\n\t\t\t\t\t\tv-if=\"auth.state.user._id && auth.state.user._id !== organization.state.current.owner\"\n\t\t\t :user=\"auth.state.user._id\"\n\t\t\t :type=\"'organization'\" \n\t \t:role=\"'blocked'\" \n\t\t\t :target=\"organization.state.current._id\" \n\t\t\t :status=\"organization.state.current.isBlocked\" \n\t\t\t :text=\"{create: 'Block', remove: 'Unblock'}\"\n\t\t\t @updateMembership=\"event => handleMembershipUpdate(event, 'isBlocked')\"\n\t\t\t class=\"t-white w-100 mn-t-thin bg-red\" \n\t \t/>\n\t\t\t\t</section>\n\t </Dropdown>\n\n\t <router-link\n\t\t\t\tv-if=\"auth.state.user._id === organization.state.current.owner\"\n\t :to=\"{\n\t\t\t\t\tname: 'Organization Edit', \n\t\t\t\t\tparams: {\n\t\t\t\t\t\t_id: organization.state.current._id\n\t\t\t\t\t}\n\t\t\t\t}\" \n\t class=\"\n\t \tz-index-2\n\t cursor-pointer \n\t pos-absolute pos-t-regular pos-r-regular\n\t radius-extra pd-thin bg-second\n\t \"\n\t >\n\t <IconEdit\n\t class=\"i-regular\"\n\t classes=\"fill-white\"\n\t />\n\t </router-link>\n\n\n\t\t\t<img loading=\"lazy\" \n\t\t\t\tv-if=\"organization.state.current.profile.photo\" \n\t\t\t\t:src=\"(FILE_SERVER_URL || '') + organization.state.current.profile.photo\" \n\t\t\t\tclass=\"radius-medium bg-light flex-center flex mn-b-small w-8r\" \n\t\t\t/>\n\n\t\t\t<PlaceholderOrganizationPic\n\t\t\t\tv-else\n\t\t\t\tclass=\"radius-medium mn-b-small i-extra\"\n\t\t\t/>\n\n\t <h1\n\t \tclass=\"mn-b-thin\"\n\t >\n\t \t\t{{ organization.state.current.profile.name }}\n\t \t</h1>\n\n\t \t<div class=\"flex-center pd-r-thin pd-l-thin flex-nowrap flex mn-t-thin bg-white radius-extra w-max\">\n\t \t\t<IconFollowing class=\"i-medium mn-r-micro t-transp\"/>\n\n\t <p class=\"mn-t-thin p-medium t-medium uppercase mn-b-thin\">{{organization.state.current.numberOfSubscribers}} followers</p>\n\n\t <ButtonToggleMembership\n\t v-if=\"\n\t\t \tauth.state.user._id \n\t\t \t&& route.params._id \n\t\t \t&& route.params._id !== auth.state.user._id\n\t\t \t&& organization.state.current.owner !== auth.state.user._id\n\t\t \"\n\t :user=\"auth.state.user._id\"\n\t :type=\"'organization'\" \n\t :role=\"'subscriber'\" \n\t :target=\"organization.state.current._id\" \n\t :status=\"organization.state.current.isSubscriber\" \n\t :text=\"{create: '+', remove: '-'}\"\n\t @updateMembership=\"event => handleMembershipUpdate(event, 'isSubscriber', 'numberOfSubscribers')\"\n\t class=\" mn-l-thin p-medium t-medium radius-extra i-semi\" \n\t />\n\t </div>\n\n\t <!-- <p class=\"w-max-50r mn-t-regular mn-b-medium p-semi\">\n\t \t\t<Text :text=\"organization.profile.description || ''\" :showToggleText=\"true\" :maxLen=\"320\" />\n\t \t</p> -->\n\n\t \t<Chips \n\t \tv-if=\"organization.state.current.profile?.tags?.length > 0\" \n\t \t:chips=\"organization.state.current.profile.tags\"\n\t \tclass=\"p-medium\"\n\t \t/>\n\n\n\t <h4 \n\t \tv-if=\"Object.values(organization.state.current.socials).some(value => value)\" \n\t \tclass=\"mn-t-small mn-b-thin\"\n\t >\n\t \t\tFind us in socials\n\t \t</h4>\n\t \t\n\t \t<Socials \n\t \t\t:telegram=\"organization.state.current.socials.telegram\"\n\t \t\t:facebook=\"organization.state.current.socials.facebook\"\n\t \t\t:instagram=\"organization.state.current.socials.instagram\"\n\t \t\t:twitter=\"organization.state.current.socials.twitter\"\n\t \t\t:youtube=\"organization.state.current.socials.youtube\"\n\t \t/>\n\t\t</section>\n\t\t\n\t\t<!-- Backoffice -->\n\t\t<div v-if=\"MOBILE_APP\" @click=\"() => globals.state.isOpenSidebar = !globals.state.isOpenSidebar\" class=\"pos-relative\">\n\t\t\t<div class=\"bg-light radius-medium pd-medium\">\n\t\t\t\t<p class=\"t-medium t-black-transp-60\">\n\t\t\t\t\tShow Menu\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<!-- Organization Info Section -->\n\t\t<!-- <div class=\"pos-relative\">\n\t\t\t<div class=\"bg-light radius-medium pd-medium\">\n\t\t\t\t<h3 class=\"mn-b-small\">About {{ organization.state.current?.profile?.name }}</h3>\n\t\t\t\t<p v-if=\"organization.state.current?.profile?.description\" class=\"t-medium\">\n\t\t\t\t\t{{ organization.state.current.profile.description }}\n\t\t\t\t</p>\n\t\t\t\t<p v-else class=\"t-medium t-black-transp-60\">\n\t\t\t\t\tNo description available.\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</div> -->\n\n\t\t<Products/>\n\t</div>\n</template>\n\n<script setup>\n\timport { computed, reactive, ref, onMounted, watch } from 'vue'\n\timport { useRoute, useRouter } from 'vue-router'\n\t// Import components\n\timport Breadcrumbs \tfrom '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\n\timport Block \t\tfrom '@martyrs/src/components/Block/Block.vue'\n\timport Dropdown from \"@martyrs/src/components/Dropdown/Dropdown.vue\";\n\timport Text \t\tfrom '@martyrs/src/components/Text/Text.vue'\n\timport Chips from '@martyrs/src/components/Chips/Chips.vue'\n\t// Mobile Module\n\timport Menu from '@martyrs/src/components/Menu/Menu.vue'\n\timport MenuItem from '@martyrs/src/components/Menu/MenuItem.vue'\n\t// Icons\n\timport IconFollowing from '@martyrs/src/modules/icons/entities/IconFollowing.vue'\n\timport IconEdit from '@martyrs/src/modules/icons/navigation/IconEdit.vue'\n\timport IconEllipsis from '@martyrs/src/modules/icons/navigation/IconEllipsis.vue'\n\timport PlaceholderOrganizationPic from '@martyrs/src/modules/icons/placeholders/PlaceholderOrganizationPic.vue'\n\t// Organizations\n\timport { \n\t\tDepartmentSub, \n\t\tButtonToggleMembership, \n\t\tContacts, \n\t\tRating, \n\t\tSocials \n\t} from '@martyrs/src/modules/organizations/organizations.client.js'\n\timport User from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue';\n\t// Report Module\n\timport FormReport from '@martyrs/src/modules/reports/components/sections/FormReport.vue'\n\t// Products modu;e\n\timport Products from '@martyrs/src//modules/products/components/pages/Products.vue'\n\t// Import state\n\timport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n\timport * as globals from '@martyrs/src/modules/globals/views/store/globals.js'\n\n\timport * as organization from '@martyrs/src/modules/organizations/store/organizations.js';\n\timport membershipsStore from '@martyrs/src/modules/organizations/store/memberships.store.js';\n\timport departmentsStore from '@martyrs/src/modules/organizations/store/departments.store.js';\n\t// Init router\n\tconst router \t= useRouter()\n\tconst route \t= useRoute()\n\n\tconst organizationData = ref(null)\n\n\tonMounted(async () => {\n\t\t\n\t\torganizationData.value = await organization.actions.read({\n\t\t\t_id: route.params._id, \n\t\t\tuser: auth.state.user._id,\n\t\t\tlookup: ['memberships']\n\t\t})\n\n \t\tawait membershipsStore.read({target: route.params._id})\n\n \t\tif (typeof gtag === 'function') {\n\t\t\tgtag('event', 'view_organization', {\n\t\t\t\torganization_id: route.params._id,\n\t\t\t\torganization_name: organizationData.value?.profile?.name || 'unknown',\n\t\t\t\tpage_path: window.location.pathname,\n\t\t\t\tuser_id: auth.state.user._id || 'anonymous',\n\t\t\t\ttimestamp: new Date().toISOString()\n\t\t\t});\n\t\t}\n\t})\n\n\t// Methods\n\tconst handleMembershipUpdate = ({ membership, status, target }, statusName, statusNumber) => {\n\t membershipsStore.handleMembershipUpdate(organization.state.current, membership, status, target, statusName, statusNumber)\n\t};\n</script>\n\n<style lang=\"scss\">\n</style>\n"],"names":["useRouter","useRoute","ref","onMounted","organization.actions","auth.state","membershipsStore","organization.state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsMiBA,cAAAA,UAAS;AACzB,UAAM,QAASC,UAAAA,SAAQ;AAEvB,UAAM,mBAAmBC,IAAAA,IAAI,IAAI;AAEjCC,QAAAA,UAAU,YAAY;AAErB,uBAAiB,QAAQ,MAAMC,cAAAA,QAAqB,KAAK;AAAA,QACxD,KAAK,MAAM,OAAO;AAAA,QAClB,MAAMC,KAAAA,MAAW,KAAK;AAAA,QACtB,QAAQ,CAAC,aAAa;AAAA,MACzB,CAAG;AAEA,YAAMC,kBAAAA,QAAiB,KAAK,EAAC,QAAQ,MAAM,OAAO,IAAG,CAAC;AAEtD,UAAI,OAAO,SAAS,YAAY;AAChC,aAAK,SAAS,qBAAqB;AAAA,UAClC,iBAAiB,MAAM,OAAO;AAAA,UAC9B,mBAAmB,iBAAiB,OAAO,SAAS,QAAQ;AAAA,UAC5D,WAAW,OAAO,SAAS;AAAA,UAC3B,SAASD,KAAAA,MAAW,KAAK,OAAO;AAAA,UAChC,YAAW,oBAAI,KAAI,GAAG,YAAW;AAAA,QACrC,CAAI;AAAA,MACF;AAAA,IACD,CAAC;AAGD,UAAM,yBAAyB,CAAC,EAAE,YAAY,QAAQ,OAAM,GAAI,YAAY,iBAAiB;AAC3FC,gCAAiB,uBAAuBC,cAAAA,MAAmB,SAAS,YAAY,QAAQ,QAAQ,YAAY,YAAY;AAAA,IAC1H;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"Organization.vue.cjs","sources":["../../../../../../../src/modules/organizations/components/pages/Organization.vue"],"sourcesContent":["<template>\n\t<div v-if=\"organizationData\" class=\"pd-thin for-transition w-100\">\n\n\t\t<!-- <Breadcrumbs class=\"mn-b-thin pd-medium bg-light radius-medium\"/> -->\n\t\t<!-- <pre>{{organization.state.current}}</pre> -->\n\n\t\t<section class=\"flex-center flex flex-column t-center pd-medium radius-medium bg-light mn-b-thin\">\n\n\t\t\t<Dropdown \n\t\t\t\tv-if=\"auth.state.user._id !== organization.state.current.owner\"\n\t\t\t\t:label=\"{ component: IconEllipsis, class: 'i-medium t-transp' }\"\n\t\t\t\t:align=\"'right'\"\n\t\t\t\tclass=\"cursor-pointer pos-absolute pos-r-regular pos-t-regular pd-thin radius-extra \"\n\t\t\t>\n\t\t\t\t<section \n\t\t\t\t\tclass=\"bg-black pd-thin radius-small\"\n\t\t\t\t>\n\t\t\t\t\t<FormReport \n\t\t\t\t\t\t:user=\"auth.state.user._id\"\n\t\t\t\t\t\t:type=\"'organization'\" \n\t\t\t\t\t\t:target=\"organization.state.current._id\" \n\t\t\t\t\t\t:text=\"'Report'\" \n\t\t\t\t\t\tclass=\"w-100\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<button \n\t\t\t\t\t\t\tclass=\"w-100 bg-black br-solid br-1px br-white-transp-20 t-white button-small button\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tReport\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</FormReport>\n\n\t\t\t\t\t<ButtonToggleMembership\n\t\t\t\t\t\tv-if=\"auth.state.user._id && auth.state.user._id !== organization.state.current.owner\"\n\t\t\t :user=\"auth.state.user._id\"\n\t\t\t :type=\"'organization'\" \n\t \t:role=\"'blocked'\" \n\t\t\t :target=\"organization.state.current._id\" \n\t\t\t :status=\"organization.state.current.isBlocked\" \n\t\t\t :text=\"{create: 'Block', remove: 'Unblock'}\"\n\t\t\t @updateMembership=\"event => handleMembershipUpdate(event, 'isBlocked')\"\n\t\t\t class=\"t-white w-100 mn-t-thin bg-red\" \n\t \t/>\n\t\t\t\t</section>\n\t </Dropdown>\n\n\t <router-link\n\t\t\t\tv-if=\"auth.state.user._id === organization.state.current.owner\"\n\t :to=\"{\n\t\t\t\t\tname: 'Organization Edit', \n\t\t\t\t\tparams: {\n\t\t\t\t\t\t_id: organization.state.current._id\n\t\t\t\t\t}\n\t\t\t\t}\" \n\t class=\"\n\t \tz-index-2\n\t cursor-pointer \n\t pos-absolute pos-t-regular pos-r-regular\n\t radius-extra pd-thin bg-second\n\t \"\n\t >\n\t <IconEdit\n\t class=\"i-medium\"\n\t classes=\"fill-white\"\n\t />\n\t </router-link>\n\n\n\t\t\t<img loading=\"lazy\" \n\t\t\t\tv-if=\"organization.state.current.profile.photo\" \n\t\t\t\t:src=\"(FILE_SERVER_URL || '') + organization.state.current.profile.photo\" \n\t\t\t\tclass=\"radius-medium bg-light flex-center flex mn-b-small w-8r\" \n\t\t\t/>\n\n\t\t\t<PlaceholderOrganizationPic\n\t\t\t\tv-else\n\t\t\t\tclass=\"radius-medium mn-b-small i-extra\"\n\t\t\t/>\n\n\t <h1\n\t \tclass=\"mn-b-thin\"\n\t >\n\t \t\t{{ organization.state.current.profile.name }}\n\t \t</h1>\n\n\t \t<div class=\"flex-center pd-r-thin pd-l-thin flex-nowrap flex mn-t-thin bg-white radius-extra w-max\">\n\t \t\t<IconFollowing class=\"i-medium mn-r-micro t-transp\"/>\n\n\t <p class=\"mn-t-thin p-regular t-medium uppercase mn-b-thin\">{{organization.state.current.numberOfSubscribers}} followers</p>\n\n\t <ButtonToggleMembership\n\t v-if=\"\n\t\t \tauth.state.user._id \n\t\t \t&& route.params._id \n\t\t \t&& route.params._id !== auth.state.user._id\n\t\t \t&& organization.state.current.owner !== auth.state.user._id\n\t\t \"\n\t :user=\"auth.state.user._id\"\n\t :type=\"'organization'\" \n\t :role=\"'subscriber'\" \n\t :target=\"organization.state.current._id\" \n\t :status=\"organization.state.current.isSubscriber\" \n\t :text=\"{create: '+', remove: '-'}\"\n\t @updateMembership=\"event => handleMembershipUpdate(event, 'isSubscriber', 'numberOfSubscribers')\"\n\t class=\" mn-l-thin p-regular t-medium radius-extra i-medium\" \n\t />\n\t </div>\n\n\t <!-- <p class=\"w-max-50r mn-t-regular mn-b-medium p-medium\">\n\t \t\t<Text :text=\"organization.profile.description || ''\" :showToggleText=\"true\" :maxLen=\"320\" />\n\t \t</p> -->\n\n\t \t<Chips \n\t \tv-if=\"organization.state.current.profile?.tags?.length > 0\" \n\t \t:chips=\"organization.state.current.profile.tags\"\n\t \tclass=\"p-regular\"\n\t \t/>\n\n\n\t <h4 \n\t \tv-if=\"Object.values(organization.state.current.socials).some(value => value)\" \n\t \tclass=\"mn-t-small mn-b-thin\"\n\t >\n\t \t\tFind us in socials\n\t \t</h4>\n\t \t\n\t \t<Socials \n\t \t\t:telegram=\"organization.state.current.socials.telegram\"\n\t \t\t:facebook=\"organization.state.current.socials.facebook\"\n\t \t\t:instagram=\"organization.state.current.socials.instagram\"\n\t \t\t:twitter=\"organization.state.current.socials.twitter\"\n\t \t\t:youtube=\"organization.state.current.socials.youtube\"\n\t \t/>\n\t\t</section>\n\t\t\n\t\t<!-- Backoffice -->\n\t\t<div v-if=\"MOBILE_APP\" @click=\"() => globals.state.isOpenSidebar = !globals.state.isOpenSidebar\" class=\"pos-relative\">\n\t\t\t<div class=\"bg-light radius-medium pd-medium\">\n\t\t\t\t<p class=\"t-medium t-black-transp-60\">\n\t\t\t\t\tShow Menu\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<!-- Organization Info Section -->\n\t\t<!-- <div class=\"pos-relative\">\n\t\t\t<div class=\"bg-light radius-medium pd-medium\">\n\t\t\t\t<h3 class=\"mn-b-small\">About {{ organization.state.current?.profile?.name }}</h3>\n\t\t\t\t<p v-if=\"organization.state.current?.profile?.description\" class=\"t-medium\">\n\t\t\t\t\t{{ organization.state.current.profile.description }}\n\t\t\t\t</p>\n\t\t\t\t<p v-else class=\"t-medium t-black-transp-60\">\n\t\t\t\t\tNo description available.\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</div> -->\n\n\t\t<Products/>\n\t</div>\n</template>\n\n<script setup>\n\timport { computed, reactive, ref, onMounted, watch } from 'vue'\n\timport { useRoute, useRouter } from 'vue-router'\n\t// Import components\n\timport Breadcrumbs \tfrom '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\n\timport Block \t\tfrom '@martyrs/src/components/Block/Block.vue'\n\timport Dropdown from \"@martyrs/src/components/Dropdown/Dropdown.vue\";\n\timport Text \t\tfrom '@martyrs/src/components/Text/Text.vue'\n\timport Chips from '@martyrs/src/components/Chips/Chips.vue'\n\t// Mobile Module\n\timport Menu from '@martyrs/src/components/Menu/Menu.vue'\n\timport MenuItem from '@martyrs/src/components/Menu/MenuItem.vue'\n\t// Icons\n\timport IconFollowing from '@martyrs/src/modules/icons/entities/IconFollowing.vue'\n\timport IconEdit from '@martyrs/src/modules/icons/navigation/IconEdit.vue'\n\timport IconEllipsis from '@martyrs/src/modules/icons/navigation/IconEllipsis.vue'\n\timport PlaceholderOrganizationPic from '@martyrs/src/modules/icons/placeholders/PlaceholderOrganizationPic.vue'\n\t// Organizations\n\timport { \n\t\tDepartmentSub, \n\t\tButtonToggleMembership, \n\t\tContacts, \n\t\tRating, \n\t\tSocials \n\t} from '@martyrs/src/modules/organizations/organizations.client.js'\n\timport User from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue';\n\t// Report Module\n\timport FormReport from '@martyrs/src/modules/reports/components/sections/FormReport.vue'\n\t// Products modu;e\n\timport Products from '@martyrs/src//modules/products/components/pages/Products.vue'\n\t// Import state\n\timport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n\timport * as globals from '@martyrs/src/modules/globals/views/store/globals.js'\n\n\timport * as organization from '@martyrs/src/modules/organizations/store/organizations.js';\n\timport membershipsStore from '@martyrs/src/modules/organizations/store/memberships.store.js';\n\timport departmentsStore from '@martyrs/src/modules/organizations/store/departments.store.js';\n\t// Init router\n\tconst router \t= useRouter()\n\tconst route \t= useRoute()\n\n\tconst organizationData = ref(null)\n\n\tonMounted(async () => {\n\t\t\n\t\torganizationData.value = await organization.actions.read({\n\t\t\t_id: route.params._id, \n\t\t\tuser: auth.state.user._id,\n\t\t\tlookup: ['memberships']\n\t\t})\n\n \t\tawait membershipsStore.read({target: route.params._id})\n\n \t\tif (typeof gtag === 'function') {\n\t\t\tgtag('event', 'view_organization', {\n\t\t\t\torganization_id: route.params._id,\n\t\t\t\torganization_name: organizationData.value?.profile?.name || 'unknown',\n\t\t\t\tpage_path: window.location.pathname,\n\t\t\t\tuser_id: auth.state.user._id || 'anonymous',\n\t\t\t\ttimestamp: new Date().toISOString()\n\t\t\t});\n\t\t}\n\t})\n\n\t// Methods\n\tconst handleMembershipUpdate = ({ membership, status, target }, statusName, statusNumber) => {\n\t membershipsStore.handleMembershipUpdate(organization.state.current, membership, status, target, statusName, statusNumber)\n\t};\n</script>\n\n<style lang=\"scss\">\n</style>\n"],"names":["useRouter","useRoute","ref","onMounted","organization.actions","auth.state","membershipsStore","organization.state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsMiBA,cAAAA,UAAS;AACzB,UAAM,QAASC,UAAAA,SAAQ;AAEvB,UAAM,mBAAmBC,IAAAA,IAAI,IAAI;AAEjCC,QAAAA,UAAU,YAAY;AAErB,uBAAiB,QAAQ,MAAMC,cAAAA,QAAqB,KAAK;AAAA,QACxD,KAAK,MAAM,OAAO;AAAA,QAClB,MAAMC,KAAAA,MAAW,KAAK;AAAA,QACtB,QAAQ,CAAC,aAAa;AAAA,MACzB,CAAG;AAEA,YAAMC,kBAAAA,QAAiB,KAAK,EAAC,QAAQ,MAAM,OAAO,IAAG,CAAC;AAEtD,UAAI,OAAO,SAAS,YAAY;AAChC,aAAK,SAAS,qBAAqB;AAAA,UAClC,iBAAiB,MAAM,OAAO;AAAA,UAC9B,mBAAmB,iBAAiB,OAAO,SAAS,QAAQ;AAAA,UAC5D,WAAW,OAAO,SAAS;AAAA,UAC3B,SAASD,KAAAA,MAAW,KAAK,OAAO;AAAA,UAChC,YAAW,oBAAI,KAAI,GAAG,YAAW;AAAA,QACrC,CAAI;AAAA,MACF;AAAA,IACD,CAAC;AAGD,UAAM,yBAAyB,CAAC,EAAE,YAAY,QAAQ,OAAM,GAAI,YAAY,iBAAiB;AAC3FC,gCAAiB,uBAAuBC,cAAAA,MAAmB,SAAS,YAAY,QAAQ,QAAQ,YAAY,YAAY;AAAA,IAC1H;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|