@ozdao/martyrs 0.2.564 → 0.2.565
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/abac-BPl9Bmf9.js +1527 -0
- package/dist/builder.js +51 -39
- package/dist/{common.schema-GFSlNJo7.js → common.schema-DswiUXKB.js} +1 -1
- package/dist/community.server.js +48 -9
- package/dist/core.server.js +6 -4
- package/dist/{crud-C7FSTUes.js → crud-q1ye5IhV.js} +7 -7
- package/dist/events.server.js +3 -3
- package/dist/gallery.server.js +2 -2
- package/dist/inventory.server.js +4 -6
- package/dist/{main-CmjWiDVF.js → main-B9o1iBAZ.js} +1279 -1287
- package/dist/marketplace.server.js +1 -1
- package/dist/martyrs/src/components/Button/{Button.vue.js → Button.vue2.js} +36 -45
- package/dist/martyrs/src/components/Button/Button.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Feed/Carousel.vue.js +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.js +1 -1
- package/dist/martyrs/src/components/Field/{Field.vue2.js → Field.vue.js} +2 -2
- package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -0
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +2 -2
- 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/Loader/{Loader.vue2.js → Loader.vue.js} +3 -4
- package/dist/martyrs/src/components/Loader/Loader.vue.js.map +1 -0
- package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.js +1 -1
- package/dist/martyrs/src/components/Media/Media.vue.js +1 -1
- package/dist/martyrs/src/components/Menu/{Menu.vue.js → Menu.vue2.js} +2 -2
- package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Select/{Select.vue2.js → Select.vue.js} +2 -2
- package/dist/martyrs/src/components/Select/Select.vue.js.map +1 -0
- package/dist/martyrs/src/components/SelectMulti/{SelectMulti.vue.js → SelectMulti.vue2.js} +2 -2
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Tree/Tree.vue.js +6 -3
- package/dist/martyrs/src/components/Tree/Tree.vue.js.map +1 -1
- package/dist/martyrs/src/components/UploadImage/UploadImage.vue.js +1 -1
- package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/auth.client.js +10 -7
- package/dist/martyrs/src/modules/auth/auth.client.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +3 -3
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +13 -13
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/router/auth.router.js +116 -0
- package/dist/martyrs/src/modules/auth/views/router/auth.router.js.map +1 -0
- package/dist/martyrs/src/modules/auth/views/router/users.router.js +180 -0
- package/dist/martyrs/src/modules/auth/views/router/users.router.js.map +1 -0
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js +4 -4
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +2 -2
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +2 -2
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.js +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js +1 -1
- package/dist/martyrs/src/modules/core/locales/en.js +45 -0
- package/dist/martyrs/src/modules/core/locales/en.js.map +1 -1
- package/dist/martyrs/src/modules/core/locales/ru.js +45 -0
- package/dist/martyrs/src/modules/core/locales/ru.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/classes/i18n.manager.js +9 -0
- package/dist/martyrs/src/modules/core/views/classes/i18n.manager.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/BlockSearch.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/PopupAuth.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/PopupDateSelector.vue.js +2 -2
- package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js +2 -2
- package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js +2 -2
- package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterRange.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/mixins/mixins.js +1 -2
- package/dist/martyrs/src/modules/core/views/mixins/mixins.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/router/addRoutes.js +6 -1
- package/dist/martyrs/src/modules/core/views/router/addRoutes.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +4 -4
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/sections/EditTickets.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/sections/Feed.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/sections/List.vue.js +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +4 -4
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +3 -3
- package/dist/martyrs/src/modules/inventory/components/forms/ColumnSettingsMenu.vue.js +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.js +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +3 -3
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +5 -5
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Marketplace.vue.js +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +3 -3
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +4 -4
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +3 -3
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js +1 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +4 -4
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js +3 -0
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +3 -3
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +3 -3
- package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +5 -5
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +3 -3
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +3 -3
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +3 -3
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +2 -2
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +15 -2
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/elements/Image360.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +10 -7
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +7 -6
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +11 -2
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +4 -4
- package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +3 -3
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +3 -3
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +11 -8
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js.map +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +211 -61
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +2 -2
- package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js +2 -2
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +4 -4
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.js +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +2 -2
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +2 -2
- package/dist/martyrs.css +1 -1
- package/dist/martyrs.es.js +1 -1
- package/dist/music.server.js +11 -12
- package/dist/notifications.server.js +0 -3
- package/dist/orders.server.js +5 -6
- package/dist/organizations.server.js +9 -10
- package/dist/products.server.js +27 -26
- package/dist/{queryProcessor-CBQgZycY.js → queryProcessor-C_5Iipam.js} +4 -1
- package/dist/rents.server.js +2 -3
- package/dist/spots.server.js +1 -1
- package/dist/style.css +38 -23
- package/dist/{web-cNKIl_cL.js → web-BF3ijvEr.js} +1 -1
- package/package.json +1 -1
- package/src/builder/modes/ssr.rspack.dev.js +4 -3
- package/src/builder/rspack/rspack.config.api.js +15 -4
- package/src/builder/rspack/rspack.config.base.js +3 -3
- package/src/builder/rspack/rspack.config.ssr.client.js +28 -28
- package/src/builder/templates/page.js +2 -2
- package/src/components/Button/Button.vue +50 -37
- package/src/components/FieldPhone/FieldPhone.vue +1 -1
- package/src/components/Loader/Loader.vue +1 -1
- package/src/components/Tree/Tree.vue +6 -3
- package/src/modules/PROCESS.md +0 -0
- package/src/modules/TASKS.MD +17 -0
- package/src/modules/auth/auth.client.js +11 -7
- package/src/modules/auth/views/components/pages/SignIn.vue +1 -1
- package/src/modules/auth/views/router/auth.router.js +94 -0
- package/src/modules/auth/views/router/users.router.js +153 -0
- package/src/modules/backoffice/components/partials/Sidebar.vue +7 -7
- package/src/modules/community/community.server.js +8 -0
- package/src/modules/community/policies/blog.policies.js +55 -0
- package/src/modules/community/routes/blog.routes.js +1 -1
- package/src/modules/community/routes/comments.routes.js +1 -1
- package/src/modules/community/routes/reactions.routes.js +1 -4
- package/src/modules/core/controllers/classes/abac/abac.adapter.express.js +206 -124
- package/src/modules/core/controllers/classes/abac/abac.adapter.ws.js +203 -50
- package/src/modules/core/controllers/classes/abac/abac.core.js +127 -36
- package/src/modules/core/controllers/classes/abac/abac.fields.js +144 -179
- package/src/modules/core/controllers/classes/abac/abac.js +201 -10
- package/src/modules/core/controllers/classes/abac/abac.policies.js +147 -57
- package/src/modules/core/controllers/classes/crud/crud.policies.js +5 -5
- package/src/modules/core/controllers/policies/core.policies.js +5 -2
- package/src/modules/core/controllers/utils/queryProcessor.js +4 -1
- package/src/modules/core/core.server.js +1 -0
- package/src/modules/core/locales/en.js +45 -0
- package/src/modules/core/locales/ru.js +45 -0
- package/src/modules/core/models/schemas/common.schema.js +1 -1
- package/src/modules/core/views/classes/i18n.manager.js +13 -0
- package/src/modules/core/views/components/sections/filters/FilterPrice.vue +81 -0
- package/src/modules/core/views/mixins/mixins.js +1 -2
- package/src/modules/core/views/router/addRoutes.js +6 -1
- package/src/modules/events/routes/events.routes.js +1 -1
- package/src/modules/inventory/components/pages/InventoryEdit.vue +3 -3
- package/src/modules/inventory/policies/inventory.policies.js +1 -1
- package/src/modules/inventory/routes/inventory.routes.js +1 -1
- package/src/modules/marketplace/marketplace.router.js +66 -0
- package/src/modules/marketplace/views/components/layouts/Marketplace.vue +363 -0
- package/src/modules/marketplace/views/components/pages/Catalog.vue +73 -0
- package/src/modules/music/controllers/stream.controller.js +1 -1
- package/src/modules/music/music.server.js +1 -1
- package/src/modules/music/policies/music.policies.js +3 -2
- package/src/modules/music/router/library.router.js +26 -0
- package/src/modules/music/router/music.router.js +176 -0
- package/src/modules/notifications/components/elements/NotificationBadge.vue +5 -6
- package/src/modules/notifications/notifications.server.js +1 -3
- package/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue +5 -0
- package/src/modules/orders/orders.server.js +0 -1
- package/src/modules/organizations/components/blocks/CardOrganization.vue +2 -2
- package/src/modules/organizations/components/pages/DepartmentEdit.vue +2 -2
- package/src/modules/organizations/components/pages/OrganizationEdit.vue +2 -2
- package/src/modules/organizations/policies/organizations.policies.js +12 -6
- package/src/modules/organizations/routes/organizations.routes.js +1 -3
- package/src/modules/products/components/blocks/CardCategory.vue +1 -1
- package/src/modules/products/components/blocks/CardProduct.vue +16 -2
- package/src/modules/products/components/pages/Categories.vue +9 -6
- package/src/modules/products/components/pages/CategoryEdit.vue +8 -4
- package/src/modules/products/components/pages/Product.vue +11 -5
- package/src/modules/products/components/sections/SectionProduct.vue +11 -7
- package/src/modules/products/controllers/categories.controller.js +32 -27
- package/src/modules/products/routes/categories.routes.js +1 -1
- package/src/modules/rents/controllers/routes/rents.routes.js +1 -1
- package/src/modules/rents/views/components/pages/RentsEdit.vue +208 -49
- package/src/modules/spots/components/pages/Map.vue +2 -2
- package/dist/abac-DYoheWuc.js +0 -1031
- package/dist/core.abac-DUPBnlk6.js +0 -298
- package/dist/core.logger-C3q8A9dl.js +0 -51
- package/dist/martyrs/src/components/Button/Button.vue.js.map +0 -1
- package/dist/martyrs/src/components/Field/Field.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Loader/Loader.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue.js.map +0 -1
- package/dist/martyrs/src/components/Select/Select.vue2.js.map +0 -1
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.js.map +0 -1
- package/dist/martyrs/src/modules/auth/auth.router.js +0 -342
- package/dist/martyrs/src/modules/auth/auth.router.js.map +0 -1
- package/src/modules/auth/auth.router.js +0 -262
- package/src/modules/core/controllers/classes/abac/v2/abac-core-fixed.js +0 -313
- package/src/modules/core/controllers/classes/abac/v2/abac-express-fixed.js +0 -276
- package/src/modules/core/controllers/classes/abac/v2/abac-fields-fixed.js +0 -425
- package/src/modules/core/controllers/classes/abac/v2/abac-main-fixed.js +0 -295
- package/src/modules/core/controllers/classes/abac/v2/abac-policies-fixed.js +0 -316
- package/src/modules/core/controllers/classes/abac/v2/abac-ws-fixed.js +0 -237
- package/src/modules/core/controllers/classes/core.abac.js +0 -310
- package/src/modules/core/controllers/classes/core.crud.js +0 -89
- package/src/modules/governance/reactcode/eslint.config.js +0 -28
package/dist/martyrs.es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as e, a as o, b as d, C as r, k as t, c as l, d as i, e as p, f as u, g as n, h as M, i as S, j as c, F as m, l as C, n as F, o as g, p as h, L as b, q as k, M as x, r as B, I, s as T, t as U, u as f, v as w, S as D, w as E, x as L, y as P, z as q, A as y, B as A, D as G, E as j, U as v, G as z, H, m as R } from "./main-
|
|
1
|
+
import { _ as e, a as o, b as d, C as r, k as t, c as l, d as i, e as p, f as u, g as n, h as M, i as S, j as c, F as m, l as C, n as F, o as g, p as h, L as b, q as k, M as x, r as B, I, s as T, t as U, u as f, v as w, S as D, w as E, x as L, y as P, z as q, A as y, B as A, D as G, E as j, U as v, G as z, H, m as R } from "./main-B9o1iBAZ.js";
|
|
2
2
|
export {
|
|
3
3
|
e as Address,
|
|
4
4
|
o as Breadcrumbs,
|
package/dist/music.server.js
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
import { c as coreabac } from "./
|
|
1
|
+
import { c as coreabac, L as LoggerNamespaced } from "./abac-BPl9Bmf9.js";
|
|
2
2
|
import { C as CacheNamespaced } from "./core.cache-DALYFDdy.js";
|
|
3
|
-
import {
|
|
4
|
-
import { C as CRUD } from "./crud-C7FSTUes.js";
|
|
5
|
-
import { A as ABAC } from "./abac-DYoheWuc.js";
|
|
3
|
+
import { C as CRUD } from "./crud-q1ye5IhV.js";
|
|
6
4
|
import { V as Verifier, a as Validator } from "./core.verifier-gPPX_jhf.js";
|
|
7
5
|
import fs$1 from "fs";
|
|
8
6
|
import path$1 from "path";
|
|
9
|
-
import { a as applyCommonSchema } from "./common.schema-
|
|
7
|
+
import { a as applyCommonSchema } from "./common.schema-DswiUXKB.js";
|
|
10
8
|
import { a as applyEngagementSchema } from "./engagement.schema-fh6W1fb_.js";
|
|
11
9
|
import { a as applyMetadataSchema, c as createFriendlyURL } from "./metadata.schema-CIRR_WQ-.js";
|
|
12
10
|
import { a as applyOwnershipSchema } from "./ownership.schema-fwwDf_e5.js";
|
|
@@ -187,7 +185,7 @@ function tracksVerifierFactory(db) {
|
|
|
187
185
|
deleteVerifier
|
|
188
186
|
};
|
|
189
187
|
}
|
|
190
|
-
const { getInstance: getInstance$4 } =
|
|
188
|
+
const { getInstance: getInstance$4 } = coreabac;
|
|
191
189
|
function setupTracksRoutes(app, db) {
|
|
192
190
|
const abac = getInstance$4(db);
|
|
193
191
|
const verifier = tracksVerifierFactory();
|
|
@@ -449,7 +447,7 @@ function artistsVerifierFactory(db) {
|
|
|
449
447
|
deleteVerifier
|
|
450
448
|
};
|
|
451
449
|
}
|
|
452
|
-
const { getInstance: getInstance$3 } =
|
|
450
|
+
const { getInstance: getInstance$3 } = coreabac;
|
|
453
451
|
function setupArtistsRoutes(app, db) {
|
|
454
452
|
const abac = getInstance$3(db);
|
|
455
453
|
const verifier = artistsVerifierFactory();
|
|
@@ -732,7 +730,7 @@ function albumsVerifierFactory(db) {
|
|
|
732
730
|
deleteVerifier
|
|
733
731
|
};
|
|
734
732
|
}
|
|
735
|
-
const { getInstance: getInstance$2 } =
|
|
733
|
+
const { getInstance: getInstance$2 } = coreabac;
|
|
736
734
|
function setupAlbumsRoutes(app, db) {
|
|
737
735
|
const abac = getInstance$2(db);
|
|
738
736
|
const verifier = albumsVerifierFactory();
|
|
@@ -989,7 +987,7 @@ function playlistsVerifierFactory(db) {
|
|
|
989
987
|
deleteVerifier
|
|
990
988
|
};
|
|
991
989
|
}
|
|
992
|
-
const { getInstance: getInstance$1 } =
|
|
990
|
+
const { getInstance: getInstance$1 } = coreabac;
|
|
993
991
|
function setupPlaylistsRoutes(app, db) {
|
|
994
992
|
const abac = getInstance$1(db);
|
|
995
993
|
const verifier = playlistsVerifierFactory();
|
|
@@ -1289,7 +1287,7 @@ function genresVerifierFactory(db) {
|
|
|
1289
1287
|
deleteVerifier
|
|
1290
1288
|
};
|
|
1291
1289
|
}
|
|
1292
|
-
const { getInstance } =
|
|
1290
|
+
const { getInstance } = coreabac;
|
|
1293
1291
|
function setupGenresRoutes(app, db) {
|
|
1294
1292
|
const abac = getInstance(db);
|
|
1295
1293
|
const verifier = genresVerifierFactory();
|
|
@@ -1869,8 +1867,9 @@ const musicPolicies = (function initializeMusicPolicies(abacAccessControl) {
|
|
|
1869
1867
|
return true;
|
|
1870
1868
|
}
|
|
1871
1869
|
if (action === "create") {
|
|
1872
|
-
|
|
1873
|
-
|
|
1870
|
+
const creator = context.data.body?.creator;
|
|
1871
|
+
if (creator?.target) {
|
|
1872
|
+
return creator.target.toString() === user.toString();
|
|
1874
1873
|
}
|
|
1875
1874
|
return false;
|
|
1876
1875
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { c as coreabac } from "./core.abac-DUPBnlk6.js";
|
|
2
1
|
import { Types } from "mongoose";
|
|
3
2
|
import apn from "apn";
|
|
4
3
|
import { m as mailing } from "./mailing-DuEFRsa3.js";
|
|
@@ -761,13 +760,11 @@ const NotificationService = (function(db, wss) {
|
|
|
761
760
|
sendToAnonymousDevices
|
|
762
761
|
};
|
|
763
762
|
});
|
|
764
|
-
const { getInstance } = coreabac;
|
|
765
763
|
function initializeNotifications(app, db, wss, origins, publicPath) {
|
|
766
764
|
db.notification = NotificationModel(db);
|
|
767
765
|
db.userDevice = UserDeviceModel(db);
|
|
768
766
|
db.notificationPreference = NotificationPreferenceModel(db);
|
|
769
767
|
db.notificationLog = NotificationLogModel(db);
|
|
770
|
-
getInstance(db);
|
|
771
768
|
if (wss) {
|
|
772
769
|
const notificationService = NotificationService(db, wss);
|
|
773
770
|
if (app) {
|
package/dist/orders.server.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import "node-cache";
|
|
2
|
-
import { q as queryProcessorCore } from "./queryProcessor-CBQgZycY.js";
|
|
3
1
|
import "./mailing-DuEFRsa3.js";
|
|
2
|
+
import { q as queryProcessorCore } from "./queryProcessor-C_5Iipam.js";
|
|
4
3
|
import { m as modelsFactory, a as applyProfileSchema } from "./profile.schema-CjLOfG7b.js";
|
|
5
4
|
import { a as applyOwnershipSchema } from "./ownership.schema-fwwDf_e5.js";
|
|
6
5
|
import { a as applyCredentialsSchema } from "./credentials.schema--2vvcu8c.js";
|
|
7
|
-
import { C as CRUD } from "./crud-
|
|
8
|
-
import {
|
|
6
|
+
import { C as CRUD } from "./crud-q1ye5IhV.js";
|
|
7
|
+
import { c as coreabac } from "./abac-BPl9Bmf9.js";
|
|
9
8
|
import axios from "axios";
|
|
10
9
|
import { V as Verifier, a as Validator } from "./core.verifier-gPPX_jhf.js";
|
|
11
10
|
import { m as middlewareIndexFactory } from "./index-_Edcmck_.js";
|
|
@@ -882,7 +881,7 @@ const verifierFactory$1 = (function(db) {
|
|
|
882
881
|
deleteVerifier
|
|
883
882
|
};
|
|
884
883
|
});
|
|
885
|
-
const { getInstance: getInstance$1 } =
|
|
884
|
+
const { getInstance: getInstance$1 } = coreabac;
|
|
886
885
|
function setupApplicationsRoutes(app, db) {
|
|
887
886
|
const abac = getInstance$1(db);
|
|
888
887
|
const verifier = verifierFactory$1();
|
|
@@ -1217,7 +1216,7 @@ const verifierFactory = (function(db) {
|
|
|
1217
1216
|
deleteVerifier
|
|
1218
1217
|
};
|
|
1219
1218
|
});
|
|
1220
|
-
const { getInstance } =
|
|
1219
|
+
const { getInstance } = coreabac;
|
|
1221
1220
|
function setupCustomersRoutes(app, db) {
|
|
1222
1221
|
const abac = getInstance(db);
|
|
1223
1222
|
const verifier = verifierFactory();
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { c as coreabac } from "./abac-BPl9Bmf9.js";
|
|
2
2
|
import { a as applyCredentialsSchema } from "./credentials.schema--2vvcu8c.js";
|
|
3
3
|
import { a as applyOwnershipSchema } from "./ownership.schema-fwwDf_e5.js";
|
|
4
4
|
import { a as applyEngagementSchema } from "./engagement.schema-fh6W1fb_.js";
|
|
5
5
|
import { m as middlewareIndexFactory } from "./index-_Edcmck_.js";
|
|
6
6
|
import { m as mailing } from "./mailing-DuEFRsa3.js";
|
|
7
7
|
import { uuid } from "uuidv4";
|
|
8
|
-
import { q as queryProcessorCore } from "./queryProcessor-
|
|
8
|
+
import { q as queryProcessorCore } from "./queryProcessor-C_5Iipam.js";
|
|
9
9
|
import { Types } from "mongoose";
|
|
10
|
-
import { c as coreabac } from "./core.abac-DUPBnlk6.js";
|
|
11
10
|
import { C as CacheNamespaced } from "./core.cache-DALYFDdy.js";
|
|
12
11
|
import { a as addUserStatusFields, b as addMembersQuantity } from "./addUserStatusFields-Cc-JpmPo.js";
|
|
13
12
|
import jwt from "jsonwebtoken";
|
|
@@ -1068,11 +1067,9 @@ const controllerFactory = (db) => {
|
|
|
1068
1067
|
checkAccesses
|
|
1069
1068
|
};
|
|
1070
1069
|
};
|
|
1071
|
-
const { getInstance: getInstance$1 } = coreabac;
|
|
1072
1070
|
const organizationsRoutes = (function(app, db) {
|
|
1073
1071
|
const controller = controllerFactory(db);
|
|
1074
1072
|
const { authJwt } = middlewareIndexFactory(db);
|
|
1075
|
-
getInstance$1(db);
|
|
1076
1073
|
app.get(
|
|
1077
1074
|
"/api/organizations",
|
|
1078
1075
|
[
|
|
@@ -1170,11 +1167,13 @@ const initOrganizationPolicies = (function initializeOrganizationPolicies(abacAc
|
|
|
1170
1167
|
if (currentResource?.owner?.type === "organization") {
|
|
1171
1168
|
return String(currentResource.owner.target);
|
|
1172
1169
|
}
|
|
1173
|
-
|
|
1174
|
-
|
|
1170
|
+
const ownerData = data?.body?.owner || data?.params?.owner;
|
|
1171
|
+
if (ownerData?.type === "organization") {
|
|
1172
|
+
return String(ownerData.target);
|
|
1175
1173
|
}
|
|
1176
|
-
|
|
1177
|
-
|
|
1174
|
+
const orgId = data?.body?.organization || data?.params?.organization;
|
|
1175
|
+
if (orgId) {
|
|
1176
|
+
return String(orgId);
|
|
1178
1177
|
}
|
|
1179
1178
|
if (currentResource?.organization) {
|
|
1180
1179
|
return String(currentResource.organization);
|
|
@@ -1320,7 +1319,7 @@ const initOrganizationPolicies = (function initializeOrganizationPolicies(abacAc
|
|
|
1320
1319
|
abacAccessControl.organizationHelpers = organizationHelpers;
|
|
1321
1320
|
return abacAccessControl;
|
|
1322
1321
|
});
|
|
1323
|
-
const { getInstance } =
|
|
1322
|
+
const { getInstance } = coreabac;
|
|
1324
1323
|
function initializeOrganization(app, db, origins, publicPath) {
|
|
1325
1324
|
db.department = DepartmentModel(db);
|
|
1326
1325
|
db.organization = OrganizationModel(db);
|
package/dist/products.server.js
CHANGED
|
@@ -1,21 +1,20 @@
|
|
|
1
1
|
import { C as CacheNamespaced } from "./core.cache-DALYFDdy.js";
|
|
2
|
-
import { L as LoggerNamespaced } from "./
|
|
3
|
-
import { q as queryProcessorCore } from "./queryProcessor-
|
|
2
|
+
import { L as LoggerNamespaced, c as coreabac } from "./abac-BPl9Bmf9.js";
|
|
3
|
+
import { q as queryProcessorCore } from "./queryProcessor-C_5Iipam.js";
|
|
4
4
|
import OpenAI from "openai";
|
|
5
5
|
import { Types } from "mongoose";
|
|
6
|
-
import { a as applyCommonSchema } from "./common.schema-
|
|
6
|
+
import { a as applyCommonSchema } from "./common.schema-DswiUXKB.js";
|
|
7
7
|
import { a as applyEngagementSchema } from "./engagement.schema-fh6W1fb_.js";
|
|
8
8
|
import { a as applyMetadataSchema } from "./metadata.schema-CIRR_WQ-.js";
|
|
9
9
|
import { a as applyOwnershipSchema } from "./ownership.schema-fwwDf_e5.js";
|
|
10
10
|
import { m as middlewareFactory } from "./authJwt-J1csaMWA.js";
|
|
11
|
-
import { c as coreabac } from "./core.abac-DUPBnlk6.js";
|
|
12
11
|
import { a as Validator, V as Verifier } from "./core.verifier-gPPX_jhf.js";
|
|
13
|
-
import { C as CRUD } from "./crud-
|
|
14
|
-
import { A as ABAC } from "./abac-DYoheWuc.js";
|
|
12
|
+
import { C as CRUD } from "./crud-q1ye5IhV.js";
|
|
15
13
|
const controllerFactory$1 = (db) => {
|
|
16
14
|
const Category = db.category;
|
|
17
15
|
const logger = new LoggerNamespaced(db);
|
|
18
16
|
const cache = new CacheNamespaced();
|
|
17
|
+
const abac = coreabac.getInstance(db);
|
|
19
18
|
const generateSlug = async (name, parentId = null) => {
|
|
20
19
|
const baseSlug = name.toLowerCase().replace(/[^a-z0-9\s-]/g, "").replace(/\s+/g, "-").replace(/-+/g, "-").trim("-");
|
|
21
20
|
let slug = baseSlug;
|
|
@@ -137,13 +136,24 @@ const controllerFactory$1 = (db) => {
|
|
|
137
136
|
const depthNum = parseInt(depth, 10);
|
|
138
137
|
const isTree = tree === "true" || tree === true;
|
|
139
138
|
const isRoot = root === "true" || root === true;
|
|
140
|
-
|
|
141
|
-
const cacheKey = JSON.stringify(req.query);
|
|
139
|
+
const cacheKey = JSON.stringify({ query: req.query, userId: req.userId });
|
|
142
140
|
const cached = await cache.get(cacheKey);
|
|
143
141
|
if (cached) return res.json(cached);
|
|
142
|
+
let canViewAllStatuses = false;
|
|
143
|
+
if (req.userId) {
|
|
144
|
+
const accessCheck = await abac.checkAccess({
|
|
145
|
+
user: req.userId,
|
|
146
|
+
resource: "category",
|
|
147
|
+
action: "read",
|
|
148
|
+
data: {
|
|
149
|
+
body: owner ? { owner: { type: "organization", target: owner } } : {}
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
canViewAllStatuses = accessCheck.allow;
|
|
153
|
+
}
|
|
144
154
|
const match = {
|
|
145
155
|
..._id && { _id: new db.mongoose.Types.ObjectId(_id) },
|
|
146
|
-
...status
|
|
156
|
+
...status !== void 0 ? { status } : canViewAllStatuses ? {} : { status: "published" },
|
|
147
157
|
...search && { name: { $regex: search, $options: "i" } },
|
|
148
158
|
...type && { "owner.type": type },
|
|
149
159
|
...owner && { "owner.target": new db.mongoose.Types.ObjectId(owner) },
|
|
@@ -167,48 +177,39 @@ const controllerFactory$1 = (db) => {
|
|
|
167
177
|
} else if (isRoot && !_id) {
|
|
168
178
|
match.url = { $regex: "^/[^/]+$" };
|
|
169
179
|
}
|
|
170
|
-
console.log("🔎 Match object:", JSON.stringify(match, null, 2));
|
|
171
180
|
const pipeline = [
|
|
172
181
|
{ $match: match },
|
|
173
|
-
...queryProcessorCore.getSortingOptions(sortParam, sortOrder)
|
|
174
|
-
|
|
182
|
+
...queryProcessorCore.getSortingOptions(sortParam, sortOrder),
|
|
183
|
+
...!isTree && (skip || limit) ? queryProcessorCore.getPaginationOptions(skip, limit) : []
|
|
175
184
|
];
|
|
176
|
-
console.log("🔧 Pipeline:", JSON.stringify(pipeline, null, 2));
|
|
177
185
|
let results = await Category.aggregate(pipeline);
|
|
178
|
-
console.log("🔍 Aggregate results:", results.length, "categories found");
|
|
179
|
-
console.log("🔍 Results URLs:", results.map((r) => r.url));
|
|
180
186
|
if (url && depthNum > 1) {
|
|
181
187
|
const maxLevel = url.split("/").filter(Boolean).length + depthNum - 1;
|
|
182
188
|
results = results.filter((cat) => {
|
|
183
189
|
const catLevel = cat.url.split("/").filter(Boolean).length;
|
|
184
190
|
return cat.url === url || catLevel <= maxLevel;
|
|
185
191
|
});
|
|
186
|
-
console.log("🔍 After depth filter:", results.length, "categories");
|
|
187
192
|
}
|
|
188
193
|
if (isTree && results.length > 0) {
|
|
189
|
-
console.log("🌳 Building tree from results");
|
|
190
194
|
results = buildTreeFromUrl(results, sortParam, sortOrder);
|
|
195
|
+
const skipNum = parseInt(skip, 10) || 0;
|
|
196
|
+
const limitNum = parseInt(limit, 10) || 0;
|
|
197
|
+
if (limitNum > 0) {
|
|
198
|
+
results = results.slice(skipNum, skipNum + limitNum);
|
|
199
|
+
}
|
|
191
200
|
} else if (!isTree && depthNum === 1 && url && results.length > 0) {
|
|
192
|
-
console.log("📋 Processing tree=false, depth=1");
|
|
193
|
-
console.log("📋 Looking for main category with url:", url);
|
|
194
201
|
const mainCategory = results.find((c) => c.url === url);
|
|
195
|
-
console.log("📋 Main category found:", !!mainCategory, mainCategory?.url);
|
|
196
202
|
if (mainCategory) {
|
|
197
203
|
const children = results.filter(
|
|
198
204
|
(c) => c.url !== url && c.url.startsWith(url + "/")
|
|
199
205
|
);
|
|
200
|
-
console.log("📋 Children found:", children.length, children.map((c) => c.url));
|
|
201
206
|
mainCategory.children = children;
|
|
202
207
|
results = [mainCategory];
|
|
203
|
-
console.log("📋 Final result with children:", results[0].url, "children:", results[0].children.length);
|
|
204
|
-
} else {
|
|
205
|
-
console.log("❌ Main category not found in results!");
|
|
206
208
|
}
|
|
207
209
|
}
|
|
208
210
|
const tags = ["categories"];
|
|
209
211
|
if (owner) tags.push(`organization_${owner}`);
|
|
210
212
|
await cache.setWithTags(cacheKey, results, tags);
|
|
211
|
-
console.log("✅ Final results count:", results.length);
|
|
212
213
|
res.json(results);
|
|
213
214
|
} catch (err) {
|
|
214
215
|
logger.error(`Error reading categories: ${err.message}`);
|
|
@@ -1611,7 +1612,7 @@ const verifierFactory = (function(db) {
|
|
|
1611
1612
|
deleteVerifier
|
|
1612
1613
|
};
|
|
1613
1614
|
});
|
|
1614
|
-
const { getInstance } =
|
|
1615
|
+
const { getInstance } = coreabac;
|
|
1615
1616
|
function setupVariantsRoutes(app, db) {
|
|
1616
1617
|
const abac = getInstance(db);
|
|
1617
1618
|
const verifier = verifierFactory();
|
|
@@ -2,7 +2,7 @@ import { Types } from "mongoose";
|
|
|
2
2
|
const ObjectId = { Types }.Types.ObjectId;
|
|
3
3
|
function getBasicOptions(query) {
|
|
4
4
|
console.log(query);
|
|
5
|
-
const { _id, url, status, notstatus, type, organization, owner, customer, creator, product } = query;
|
|
5
|
+
const { _id, url, status, notstatus, type, organization, owner, customer, creator, product, listing } = query;
|
|
6
6
|
const stages = [];
|
|
7
7
|
const conditions = [];
|
|
8
8
|
if (_id) {
|
|
@@ -43,6 +43,9 @@ function getBasicOptions(query) {
|
|
|
43
43
|
if (product) {
|
|
44
44
|
conditions.push({ "product": new ObjectId(product) });
|
|
45
45
|
}
|
|
46
|
+
if (listing) {
|
|
47
|
+
conditions.push({ listing });
|
|
48
|
+
}
|
|
46
49
|
if (conditions.length > 0) {
|
|
47
50
|
stages.push({ $match: { $and: conditions } });
|
|
48
51
|
}
|
package/dist/rents.server.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { m as middlewareIndexFactory } from "./index-_Edcmck_.js";
|
|
2
|
-
import { c as coreabac } from "./
|
|
2
|
+
import { L as LoggerNamespaced, c as coreabac } from "./abac-BPl9Bmf9.js";
|
|
3
3
|
import { C as CacheNamespaced } from "./core.cache-DALYFDdy.js";
|
|
4
|
-
import { L as LoggerNamespaced } from "./core.logger-C3q8A9dl.js";
|
|
5
4
|
import { V as Verifier, a as Validator } from "./core.verifier-gPPX_jhf.js";
|
|
6
|
-
import { q as queryProcessorCore } from "./queryProcessor-
|
|
5
|
+
import { q as queryProcessorCore } from "./queryProcessor-C_5Iipam.js";
|
|
7
6
|
const queryValidatorConfig = {
|
|
8
7
|
// status: { rule: 'optional', validator: Validator.schema().string().oneOf(['published', 'pending']), default: 'pending' },
|
|
9
8
|
owner: { rule: "optional", validator: Validator.schema().string(), default: null },
|
package/dist/spots.server.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { q as queryProcessorCore } from "./queryProcessor-
|
|
1
|
+
import { q as queryProcessorCore } from "./queryProcessor-C_5Iipam.js";
|
|
2
2
|
const getIsOpenNowStage = (function getIsOpenNowStage2() {
|
|
3
3
|
const now = /* @__PURE__ */ new Date();
|
|
4
4
|
const currentDay = now.getDay();
|
package/dist/style.css
CHANGED
|
@@ -167,6 +167,7 @@ a.button {
|
|
|
167
167
|
text-box: trim-both cap alphabetic;
|
|
168
168
|
}
|
|
169
169
|
.button {
|
|
170
|
+
position: relative;
|
|
170
171
|
display: flex;
|
|
171
172
|
padding: var(--small);
|
|
172
173
|
border-radius: var(--small);
|
|
@@ -211,29 +212,43 @@ a.button {
|
|
|
211
212
|
align-items: center;
|
|
212
213
|
justify-content: center;
|
|
213
214
|
gap: 8px;
|
|
215
|
+
transition: opacity 0.3s ease;
|
|
214
216
|
}
|
|
215
|
-
.
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
.
|
|
223
|
-
|
|
217
|
+
.button-loader {
|
|
218
|
+
position: absolute;
|
|
219
|
+
inset: 0;
|
|
220
|
+
display: flex;
|
|
221
|
+
align-items: center;
|
|
222
|
+
justify-content: center;
|
|
223
|
+
opacity: 0;
|
|
224
|
+
transition: opacity 0.3s ease;
|
|
225
|
+
pointer-events: none;
|
|
224
226
|
}
|
|
225
|
-
.
|
|
227
|
+
.button-success {
|
|
228
|
+
position: absolute;
|
|
229
|
+
inset: 0;
|
|
230
|
+
display: flex;
|
|
231
|
+
align-items: center;
|
|
232
|
+
justify-content: center;
|
|
226
233
|
opacity: 0;
|
|
227
|
-
|
|
234
|
+
transition: opacity 0.3s ease;
|
|
235
|
+
pointer-events: none;
|
|
228
236
|
}
|
|
229
|
-
.
|
|
237
|
+
.button-error {
|
|
238
|
+
position: absolute;
|
|
239
|
+
inset: 0;
|
|
240
|
+
display: flex;
|
|
241
|
+
align-items: center;
|
|
242
|
+
justify-content: center;
|
|
230
243
|
opacity: 0;
|
|
231
|
-
|
|
244
|
+
transition: opacity 0.3s ease;
|
|
245
|
+
pointer-events: none;
|
|
232
246
|
}
|
|
233
|
-
.
|
|
234
|
-
.content-leave-from {
|
|
247
|
+
.active {
|
|
235
248
|
opacity: 1;
|
|
236
|
-
|
|
249
|
+
}
|
|
250
|
+
.hidden {
|
|
251
|
+
opacity: 0;
|
|
237
252
|
}.slide-fade-enter-active {
|
|
238
253
|
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
|
|
239
254
|
}
|
|
@@ -1417,21 +1432,21 @@ to {
|
|
|
1417
1432
|
margin-left: 0.5rem;
|
|
1418
1433
|
}
|
|
1419
1434
|
|
|
1420
|
-
.notification-badge-container[data-v-
|
|
1435
|
+
.notification-badge-container[data-v-1dbe1152] {
|
|
1421
1436
|
position: relative;
|
|
1422
1437
|
display: inline-block;
|
|
1423
1438
|
}
|
|
1424
|
-
.notification-button[data-v-
|
|
1439
|
+
.notification-button[data-v-1dbe1152] {
|
|
1425
1440
|
background: none;
|
|
1426
1441
|
border: none;
|
|
1427
1442
|
cursor: pointer;
|
|
1428
1443
|
position: relative;
|
|
1429
1444
|
font-size: 1.2rem;
|
|
1430
1445
|
}
|
|
1431
|
-
.notification-icon[data-v-
|
|
1446
|
+
.notification-icon[data-v-1dbe1152] {
|
|
1432
1447
|
font-size: 1.4rem;
|
|
1433
1448
|
}
|
|
1434
|
-
.button-counter[data-v-
|
|
1449
|
+
.button-counter[data-v-1dbe1152] {
|
|
1435
1450
|
position: absolute;
|
|
1436
1451
|
right: -8px;
|
|
1437
1452
|
bottom: -8px;
|
|
@@ -1445,8 +1460,8 @@ to {
|
|
|
1445
1460
|
line-height: 16px;
|
|
1446
1461
|
font-size: 10px;
|
|
1447
1462
|
}
|
|
1448
|
-
.notifications-loading[data-v-
|
|
1449
|
-
.notifications-empty[data-v-
|
|
1463
|
+
.notifications-loading[data-v-1dbe1152],
|
|
1464
|
+
.notifications-empty[data-v-1dbe1152] {
|
|
1450
1465
|
padding: 24px;
|
|
1451
1466
|
text-align: center;
|
|
1452
1467
|
color: rgb(var(--text-light));
|
|
@@ -2900,7 +2915,7 @@ to { opacity: 1; transform: translateY(0);
|
|
|
2900
2915
|
.bg-danger[data-v-58dea369] {
|
|
2901
2916
|
background-color: #ef4444;
|
|
2902
2917
|
}
|
|
2903
|
-
#map[data-v-
|
|
2918
|
+
#map[data-v-e9370e2c]:focus {
|
|
2904
2919
|
outline: none;
|
|
2905
2920
|
}
|
|
2906
2921
|
/* Add styles for the user card component here */
|
package/package.json
CHANGED
|
@@ -196,9 +196,10 @@ export default function createSsrDevServer(projectRoot, configs, createServer) {
|
|
|
196
196
|
console.log('[LOADING 6] Loading server module...');
|
|
197
197
|
|
|
198
198
|
// Получаем путь к скомпилированному файлу
|
|
199
|
-
const
|
|
200
|
-
const
|
|
201
|
-
const
|
|
199
|
+
const jsonStats = stats.toJson();
|
|
200
|
+
const { outputPath } = jsonStats;
|
|
201
|
+
const entryName = Object.keys(jsonStats.entrypoints)[0];
|
|
202
|
+
const assetName = jsonStats.entrypoints[entryName].assets[0].name;
|
|
202
203
|
|
|
203
204
|
// Импортируем с уникальным параметром для сброса кэша
|
|
204
205
|
serverModule = await import(`file://${path.resolve(outputPath, assetName)}?t=${Date.now()}`);
|
|
@@ -7,18 +7,25 @@ export default projectRoot => {
|
|
|
7
7
|
return {
|
|
8
8
|
target: 'node',
|
|
9
9
|
mode: 'development',
|
|
10
|
-
entry:
|
|
10
|
+
entry: {
|
|
11
|
+
server: path.resolve(projectRoot, 'src/server.js')
|
|
12
|
+
},
|
|
11
13
|
output: {
|
|
12
14
|
filename: 'server.js',
|
|
15
|
+
chunkFilename: '[name].server.js',
|
|
13
16
|
path: path.resolve(projectRoot, 'builds/web/server'),
|
|
14
17
|
libraryTarget: 'module',
|
|
15
|
-
chunkFormat: 'module',
|
|
18
|
+
chunkFormat: 'module',
|
|
19
|
+
chunkLoading: 'import',
|
|
16
20
|
module: true,
|
|
17
21
|
clean: true,
|
|
18
22
|
},
|
|
19
23
|
experiments: {
|
|
20
24
|
outputModule: true,
|
|
21
25
|
},
|
|
26
|
+
optimization: {
|
|
27
|
+
minimize: false,
|
|
28
|
+
},
|
|
22
29
|
resolve: {
|
|
23
30
|
alias: {
|
|
24
31
|
'@martyrs': path.resolve(projectRoot, 'martyrs'),
|
|
@@ -37,13 +44,17 @@ export default projectRoot => {
|
|
|
37
44
|
}),
|
|
38
45
|
// Для .node файлов тоже используем module
|
|
39
46
|
function({ context, request }, callback) {
|
|
40
|
-
if (
|
|
47
|
+
if (request.endsWith('.node')) {
|
|
41
48
|
return callback(null, `module ${request}`);
|
|
42
49
|
}
|
|
43
50
|
callback();
|
|
44
51
|
}
|
|
45
52
|
],
|
|
46
|
-
plugins: [
|
|
53
|
+
plugins: [
|
|
54
|
+
new rspack.optimize.LimitChunkCountPlugin({
|
|
55
|
+
maxChunks: 1
|
|
56
|
+
})
|
|
57
|
+
],
|
|
47
58
|
module: {
|
|
48
59
|
rules: [
|
|
49
60
|
{
|
|
@@ -48,7 +48,7 @@ export default (projectRoot) => {
|
|
|
48
48
|
const rewritten = content
|
|
49
49
|
// Обработка существующего синтаксиса v-slot
|
|
50
50
|
.replace(
|
|
51
|
-
/<(\w+)\s+v-slot(:[\w
|
|
51
|
+
/<(\w+)\s+v-slot(:[\w-]+)?=("|'){([^"'}]+)}("|')\s*>/g,
|
|
52
52
|
(_match, tag, slotName, _q1, slotProps, _q2) => {
|
|
53
53
|
const slotAttr = slotName || '';
|
|
54
54
|
return `<template v-slot${slotAttr}="{${slotProps}}"><${tag}>`;
|
|
@@ -60,13 +60,13 @@ export default (projectRoot) => {
|
|
|
60
60
|
)
|
|
61
61
|
// Новая обработка для сокращенного синтаксиса #slotname
|
|
62
62
|
.replace(
|
|
63
|
-
/<(\w+)(\s+#[\w
|
|
63
|
+
/<(\w+)(\s+#[\w-]+)([^>]*)\/>/g,
|
|
64
64
|
(_match, tag, slotDirective, attrs) => {
|
|
65
65
|
return `<template${slotDirective}><${tag}${attrs}/></template>`;
|
|
66
66
|
}
|
|
67
67
|
)
|
|
68
68
|
.replace(
|
|
69
|
-
/<(\w+)(\s+#[\w
|
|
69
|
+
/<(\w+)(\s+#[\w-]+)([^>]*)>(.*?)<\/\1>/gs,
|
|
70
70
|
(_match, tag, slotDirective, attrs, content) => {
|
|
71
71
|
return `<template${slotDirective}><${tag}${attrs}>${content}</${tag}></template>`;
|
|
72
72
|
}
|
|
@@ -77,7 +77,7 @@ export default (projectRoot) => {
|
|
|
77
77
|
{
|
|
78
78
|
extractor: (content) => {
|
|
79
79
|
// Ищем классы и селекторы с префиксами Tailwind
|
|
80
|
-
const normalClasses = content.match(/[A-Za-z0-9-_
|
|
80
|
+
const normalClasses = content.match(/[A-Za-z0-9-_:/]+/g) || [];
|
|
81
81
|
|
|
82
82
|
// Дополнительно ищем Vue атрибуты data-v-*
|
|
83
83
|
// Это важно для правильного распознавания scoped стилей
|
|
@@ -96,6 +96,33 @@ export default (projectRoot) => {
|
|
|
96
96
|
fileName: 'manifest.json',
|
|
97
97
|
publicPath: '/'
|
|
98
98
|
}),
|
|
99
|
+
new RspackManifestPlugin({
|
|
100
|
+
fileName: 'pwa-manifest.json',
|
|
101
|
+
seed: {
|
|
102
|
+
name: process.env.APP_NAME || 'App by Martyrs Framework',
|
|
103
|
+
short_name: process.env.APP_SHORT_NAME || 'App',
|
|
104
|
+
description: process.env.APP_DESCRIPTION || 'Progressive Web App by Martyrs Framework',
|
|
105
|
+
theme_color: '#000000',
|
|
106
|
+
background_color: '#ffffff',
|
|
107
|
+
display: 'standalone',
|
|
108
|
+
orientation: 'portrait',
|
|
109
|
+
scope: '/',
|
|
110
|
+
start_url: '/',
|
|
111
|
+
icons: [
|
|
112
|
+
{
|
|
113
|
+
src: '/favicon/android-chrome-192x192.png',
|
|
114
|
+
sizes: '192x192',
|
|
115
|
+
type: 'image/png'
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
src: '/favicon/android-chrome-512x512.png',
|
|
119
|
+
sizes: '512x512',
|
|
120
|
+
type: 'image/png'
|
|
121
|
+
}
|
|
122
|
+
]
|
|
123
|
+
},
|
|
124
|
+
generate: (seed) => seed
|
|
125
|
+
}),
|
|
99
126
|
...(isProd ? [
|
|
100
127
|
new InjectManifest({
|
|
101
128
|
swSrc: path.resolve(projectRoot, '../public/sw.js'),
|
|
@@ -119,33 +146,6 @@ export default (projectRoot) => {
|
|
|
119
146
|
return { manifest };
|
|
120
147
|
}
|
|
121
148
|
]
|
|
122
|
-
}),
|
|
123
|
-
new RspackManifestPlugin({
|
|
124
|
-
fileName: 'pwa-manifest.json',
|
|
125
|
-
seed: {
|
|
126
|
-
name: process.env.APP_NAME || 'App by Martyrs Framework',
|
|
127
|
-
short_name: process.env.APP_SHORT_NAME || 'App',
|
|
128
|
-
description: process.env.APP_DESCRIPTION || 'Progressive Web App by Martyrs Framework',
|
|
129
|
-
theme_color: '#000000',
|
|
130
|
-
background_color: '#ffffff',
|
|
131
|
-
display: 'standalone',
|
|
132
|
-
orientation: 'portrait',
|
|
133
|
-
scope: '/',
|
|
134
|
-
start_url: '/',
|
|
135
|
-
icons: [
|
|
136
|
-
{
|
|
137
|
-
src: '/favicon/android-chrome-192x192.png',
|
|
138
|
-
sizes: '192x192',
|
|
139
|
-
type: 'image/png'
|
|
140
|
-
},
|
|
141
|
-
{
|
|
142
|
-
src: '/favicon/android-chrome-512x512.png',
|
|
143
|
-
sizes: '512x512',
|
|
144
|
-
type: 'image/png'
|
|
145
|
-
}
|
|
146
|
-
]
|
|
147
|
-
},
|
|
148
|
-
generate: (seed) => seed
|
|
149
149
|
})
|
|
150
150
|
] : []),
|
|
151
151
|
],
|
|
@@ -38,14 +38,14 @@ export default `
|
|
|
38
38
|
requestIdleCallback(() => {
|
|
39
39
|
const link = document.createElement('link');
|
|
40
40
|
link.rel = 'manifest';
|
|
41
|
-
link.href = '/manifest.json';
|
|
41
|
+
link.href = '/pwa-manifest.json';
|
|
42
42
|
document.head.appendChild(link);
|
|
43
43
|
});
|
|
44
44
|
} else {
|
|
45
45
|
setTimeout(() => {
|
|
46
46
|
const link = document.createElement('link');
|
|
47
47
|
link.rel = 'manifest';
|
|
48
|
-
link.href = '/manifest.json';
|
|
48
|
+
link.href = '/pwa-manifest.json';
|
|
49
49
|
document.head.appendChild(link);
|
|
50
50
|
}, 0);
|
|
51
51
|
}
|