@ozdao/prometheus-framework 0.2.155 → 0.2.157
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/_virtual/_commonjsHelpers.cjs +1 -1
- package/dist/_virtual/_commonjsHelpers.js +5 -3
- package/dist/_virtual/purify.cjs +1 -0
- package/dist/_virtual/purify.js +4 -0
- package/dist/builder.js +822 -0
- package/dist/builder.mjs +801 -0
- package/dist/{main-D_RRsfEH.mjs → main-Ba3SEUWZ.mjs} +1812 -1774
- package/dist/main-ldzk-jIP.js +92 -0
- package/dist/main.css +1 -1
- package/dist/node_modules/dompurify/dist/purify.cjs +2 -0
- package/dist/node_modules/dompurify/dist/purify.js +531 -0
- package/dist/node_modules/isomorphic-dompurify/browser.cjs +1 -0
- package/dist/node_modules/isomorphic-dompurify/browser.js +7 -0
- package/dist/products.server.js +1 -1
- package/dist/products.server.mjs +1 -1
- package/dist/prometheus-framework/node_modules/uuid/dist/esm-browser/regex.cjs +1 -0
- package/dist/prometheus-framework/node_modules/uuid/dist/esm-browser/regex.js +4 -0
- package/dist/prometheus-framework/node_modules/uuid/dist/esm-browser/rng.cjs +1 -0
- package/dist/prometheus-framework/node_modules/uuid/dist/esm-browser/rng.js +9 -0
- package/dist/prometheus-framework/node_modules/uuid/dist/esm-browser/stringify.cjs +1 -0
- package/dist/prometheus-framework/node_modules/uuid/dist/esm-browser/stringify.js +13 -0
- package/dist/prometheus-framework/node_modules/uuid/dist/esm-browser/v4.cjs +1 -0
- package/dist/prometheus-framework/node_modules/uuid/dist/esm-browser/v4.js +10 -0
- package/dist/prometheus-framework/node_modules/uuid/dist/esm-browser/validate.cjs +1 -0
- package/dist/prometheus-framework/node_modules/uuid/dist/esm-browser/validate.js +7 -0
- package/dist/prometheus-framework/src/components/Feed/Feed.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Feed/Feed.vue.js +1 -1
- package/dist/prometheus-framework/src/components/Field/Field.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/components/Field/Field.vue2.js +47 -30
- package/dist/prometheus-framework/src/components/FieldBig/FieldBig.vue.js +9 -9
- package/dist/prometheus-framework/src/components/Popup/Popup.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/components/Popup/Popup.vue2.js +10 -10
- package/dist/prometheus-framework/src/modules/auth/components/pages/EnterPassword.vue.js +14 -14
- package/dist/prometheus-framework/src/modules/auth/components/pages/Invite.vue.js +9 -9
- package/dist/prometheus-framework/src/modules/auth/components/pages/ResetPassword.vue.js +11 -11
- package/dist/prometheus-framework/src/modules/auth/components/pages/SignIn.vue.js +34 -34
- package/dist/prometheus-framework/src/modules/auth/components/pages/SignUp.vue.js +27 -27
- package/dist/prometheus-framework/src/modules/backoffice/components/layouts/Backoffice.vue.cjs +1 -0
- package/dist/prometheus-framework/src/modules/backoffice/components/layouts/Backoffice.vue.js +58 -0
- package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.js +11 -180
- package/dist/prometheus-framework/src/modules/backoffice/components/partials/Sidebar.vue.cjs +1 -0
- package/dist/prometheus-framework/src/modules/backoffice/components/partials/Sidebar.vue.js +190 -0
- package/dist/prometheus-framework/src/modules/backoffice/router/backoffice.cjs +1 -1
- package/dist/prometheus-framework/src/modules/backoffice/router/backoffice.js +9 -7
- package/dist/prometheus-framework/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/blocks/CardBlogpost.vue.js +48 -43
- package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.js +41 -63
- package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.js +37 -36
- package/dist/prometheus-framework/src/modules/community/components/sections/Comments.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/sections/Comments.vue.js +5 -5
- package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/community/router/blogposts.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/router/blogposts.js +3 -0
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.js +13 -13
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Textarea.vue2.cjs +1 -5
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Textarea.vue2.js +105 -53
- package/dist/prometheus-framework/src/modules/constructor/components/sections/Constructor.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/constructor/components/sections/Constructor.vue.js +92 -98
- package/dist/prometheus-framework/src/modules/constructor/components/sections/Viewer.vue.cjs +1 -0
- package/dist/prometheus-framework/src/modules/constructor/components/sections/Viewer.vue.js +39 -0
- package/dist/prometheus-framework/src/modules/events/components/blocks/CardEvent.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/blocks/CardEvent.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.js +13 -12
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.js +19 -19
- package/dist/prometheus-framework/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/gallery/components/pages/Gallery.vue.js +32 -32
- package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/globals/components/blocks/BlockSearch.vue.js +7 -7
- package/dist/prometheus-framework/src/modules/globals/components/blocks/CardHeader.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/components/blocks/CardHeader.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/globals/components/sections/SectionPageTitle.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/components/sections/SectionPageTitle.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/middlewares/client/auth.validation.cjs +1 -1
- package/dist/prometheus-framework/src/modules/middlewares/client/auth.validation.js +13 -15
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.js +4 -4
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormDelivery.vue.js +8 -8
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormPayment.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormPayment.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/orders/orders.client.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/orders.client.js +34 -33
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.js +14 -14
- package/dist/prometheus-framework/src/modules/organizations/components/sections/DetailsTab.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/DetailsTab.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.js +10 -10
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js +5 -5
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.js +4 -4
- package/dist/prometheus-framework/src/modules/organizations/router/organizations.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/router/organizations.js +13 -7
- package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.js +18 -18
- package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/LeftoverPositions.vue.js +6 -6
- package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.js +11 -11
- package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.js +17 -17
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.js +30 -30
- package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.js +9 -9
- package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/spots/components/blocks/CardSpot.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/blocks/CardSpot.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/blocks/SpotMemberModify.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.js +16 -16
- package/dist/prometheus-framework/src/modules/spots/router/spots.cjs +1 -1
- package/dist/prometheus-framework/src/modules/spots/router/spots.js +4 -0
- package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.js +22 -22
- package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CardDeposit.vue.js +4 -4
- package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +17 -17
- package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.js +4 -4
- package/dist/prometheus-framework.cjs.js +1 -1
- package/dist/prometheus-framework.es.js +1 -1
- package/dist/style.css +1 -1
- package/dist/{web-3rnOWrQO.mjs → web-CT2tGYho.mjs} +1 -1
- package/dist/{web-C04IcLk4.js → web-DWjMBTNi.js} +1 -1
- package/package.json +3 -2
- package/src/builder/builder.js +14 -0
- package/src/builder/modes/spa.dev.js +100 -0
- package/src/builder/modes/spa.prod.js +59 -0
- package/src/builder/modes/ssr.dev.js +184 -0
- package/src/builder/modes/ssr.prod.js +76 -0
- package/src/builder/ssr/ssr-render-html.js +57 -0
- package/src/builder/ssr/ssr-transform-webpack-stats.js +54 -0
- package/src/builder/templates/page.html +37 -0
- package/src/builder/templates/screen.html +33 -0
- package/src/builder/utils/hot-reload.js +5 -0
- package/src/builder/webpack/index.js +13 -0
- package/src/builder/webpack/webpack.config.base.js +127 -0
- package/src/builder/webpack/webpack.config.client.js +78 -0
- package/src/builder/webpack/webpack.config.server.js +31 -0
- package/src/builder/webpack/webpack.config.spa.js +80 -0
- package/src/builder/webpack/webpack.config.ssr.js +57 -0
- package/src/components/Breadcrumbs/Breadcrumbs.vue +39 -16
- package/src/components/Field/Field.vue +21 -2
- package/src/components/Popup/Popup.vue +2 -2
- package/src/modules/auth/store/auth.js +1 -2
- package/src/modules/backoffice/components/layouts/Backoffice.vue +36 -62
- package/src/modules/backoffice/components/pages/Dashboard.vue +2 -125
- package/src/modules/backoffice/components/partials/Sidebar.vue +176 -0
- package/src/modules/backoffice/router/admin.js +0 -15
- package/src/modules/backoffice/router/backoffice.js +5 -1
- package/src/modules/community/components/blocks/CardBlogpost.vue +6 -1
- package/src/modules/community/components/pages/BlogPost.vue +30 -67
- package/src/modules/community/components/sections/Comments.vue +1 -1
- package/src/modules/community/router/blogposts.js +4 -0
- package/src/modules/constructor/components/elements/Textarea.vue +197 -79
- package/src/modules/constructor/components/sections/Constructor.vue +19 -32
- package/src/modules/constructor/components/sections/Viewer.vue +53 -0
- package/src/modules/gallery/components/pages/Gallery.vue +1 -1
- package/src/modules/globals/components/layouts/Client.vue +21 -7
- package/src/modules/globals/components/layouts/Empty.vue +1 -6
- package/src/modules/globals/components/pages/404.vue +1 -1
- package/src/modules/globals/components/sections/SectionPageTitle.vue +2 -2
- package/src/modules/globals/mixins/mixins.js +129 -97
- package/src/modules/landing/router/landing.js +3 -0
- package/src/modules/marketplace/components/pages/Catalog.vue +1 -1
- package/src/modules/middlewares/client/auth.validation.js +14 -15
- package/src/modules/orders/orders.client.js +4 -2
- package/src/modules/organizations/router/organizations.js +9 -3
- package/src/modules/pages/controllers/factories/pages.factory.js +106 -0
- package/src/modules/pages/controllers/routes/pages.routes.js +24 -0
- package/src/modules/pages/models/page.model.js +18 -11
- package/src/modules/pages/pages.client.js +40 -0
- package/src/modules/pages/pages.server.js +32 -0
- package/src/modules/pages/views/components/blocks/CardPage.vue +123 -0
- package/src/modules/pages/views/components/pages/Page.vue +173 -0
- package/src/modules/pages/views/components/pages/PageEdit.vue +121 -0
- package/src/modules/pages/views/components/pages/Pages.vue +60 -0
- package/src/modules/pages/views/components/partials/SidebarPages.vue +112 -0
- package/src/modules/pages/views/router/pages.backoffice.router.js +46 -0
- package/src/modules/pages/views/router/pages.router.js +25 -0
- package/src/modules/pages/views/store/pages.js +78 -0
- package/src/modules/pages/views/store/pages.store.js +5 -0
- package/src/modules/products/controllers/leftovers.controller.js +1 -1
- package/src/modules/spots/router/spots.js +4 -0
- package/src/styles/base/all.scss +66 -53
- package/dist/index-BshfsiQG.js +0 -220
- package/dist/index-C-8xOJnM.mjs +0 -244
- package/dist/index-C-DW6ra2.js +0 -260
- package/dist/index-CDbtWkBj.js +0 -243
- package/dist/index-D4j29ivg.mjs +0 -261
- package/dist/index-DKtnWDNC.mjs +0 -221
- package/dist/index-DNI4aUP2.js +0 -259
- package/dist/index-Tcyehi73.mjs +0 -260
- package/dist/main-3Vn8SU2y.mjs +0 -14509
- package/dist/main-5IrI2IOV.js +0 -92
- package/dist/main-BFKp44Ze.mjs +0 -14509
- package/dist/main-BF_nMkug.js +0 -92
- package/dist/main-BHr0-Z3t.mjs +0 -14510
- package/dist/main-BY2OvGB9.mjs +0 -14509
- package/dist/main-Bcj0J6tP.mjs +0 -14509
- package/dist/main-By5Tbyui.js +0 -92
- package/dist/main-CEoQQpJV.js +0 -92
- package/dist/main-CI9l9xMs.js +0 -92
- package/dist/main-Ckn0Sslr.js +0 -92
- package/dist/main-DBv451oC.js +0 -92
- package/dist/main-DPg58GOU.mjs +0 -14509
- package/dist/main-DTHFR7H_.mjs +0 -14510
- package/dist/main-DxyAONrm.mjs +0 -14438
- package/dist/main-gY_284gJ.js +0 -92
- package/dist/main-wXdocsbd.js +0 -92
- package/dist/middlewares.server.js +0 -19
- package/dist/middlewares.server.mjs +0 -20
- package/dist/prometheus-framework/src/components/Address/Address.vue.cjs +0 -1
- package/dist/prometheus-framework/src/components/Address/Address.vue.js +0 -89
- package/dist/prometheus-framework/src/components/Button/Button.vue.cjs +0 -1
- package/dist/prometheus-framework/src/components/Button/Button.vue.js +0 -95
- package/dist/prometheus-framework/src/components/Chips/Chips.vue2.cjs +0 -1
- package/dist/prometheus-framework/src/components/Chips/Chips.vue2.js +0 -26
- package/dist/prometheus-framework/src/components/Dropdown/Dropdown.vue2.cjs +0 -1
- package/dist/prometheus-framework/src/components/Dropdown/Dropdown.vue2.js +0 -57
- package/dist/prometheus-framework/src/components/Field/Field.vue.cjs +0 -1
- package/dist/prometheus-framework/src/components/Field/Field.vue.js +0 -83
- package/dist/prometheus-framework/src/components/LocationMarker/LocationMarker.vue.cjs +0 -1
- package/dist/prometheus-framework/src/components/LocationMarker/LocationMarker.vue.js +0 -127
- package/dist/prometheus-framework/src/components/Menu/Menu.vue.cjs +0 -1
- package/dist/prometheus-framework/src/components/Menu/Menu.vue.js +0 -13
- package/dist/prometheus-framework/src/components/Popup/Popup.vue.cjs +0 -1
- package/dist/prometheus-framework/src/components/Popup/Popup.vue.js +0 -77
- package/dist/prometheus-framework/src/components/Select/Select.vue.cjs +0 -1
- package/dist/prometheus-framework/src/components/Select/Select.vue.js +0 -103
- package/dist/prometheus-framework/src/components/Tab/Tab.vue.cjs +0 -1
- package/dist/prometheus-framework/src/components/Tab/Tab.vue.js +0 -36
- package/dist/prometheus-framework/src/components/Tooltip/Tooltip.vue2.cjs +0 -1
- package/dist/prometheus-framework/src/components/Tooltip/Tooltip.vue2.js +0 -44
- package/dist/prometheus-framework/src/modules/community/components/sections/Feed.vue.cjs +0 -1
- package/dist/prometheus-framework/src/modules/community/components/sections/Feed.vue.js +0 -125
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Bullets.vue.cjs +0 -2
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Bullets.vue.js +0 -47
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Caption.vue.cjs +0 -2
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Caption.vue.js +0 -46
- package/dist/prometheus-framework/src/modules/constructor/components/elements/H2.vue.cjs +0 -4
- package/dist/prometheus-framework/src/modules/constructor/components/elements/H2.vue.js +0 -65
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Textarea.vue.cjs +0 -5
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Textarea.vue.js +0 -67
- package/dist/prometheus-framework/src/modules/wallet/components/blocks/CardBalanceReplenished.vue.cjs +0 -1
- package/dist/prometheus-framework/src/modules/wallet/components/blocks/CardBalanceReplenished.vue.js +0 -30
- package/dist/prometheus-framework/src/modules/wallet/components/blocks/CardDeposite.vue.cjs +0 -1
- package/dist/prometheus-framework/src/modules/wallet/components/blocks/CardDeposite.vue.js +0 -42
- package/dist/prometheus-framework/src/modules/wallet/components/blocks/CashDeposite.vue.cjs +0 -1
- package/dist/prometheus-framework/src/modules/wallet/components/blocks/CashDeposite.vue.js +0 -26
- package/dist/prometheus-framework/src/modules/wallet/components/blocks/CryptoDeposite.vue.cjs +0 -1
- package/dist/prometheus-framework/src/modules/wallet/components/blocks/CryptoDeposite.vue.js +0 -42
- package/dist/prometheus-framework/src/modules/wallet/localization/Wallet.json.cjs +0 -1
- package/dist/prometheus-framework/src/modules/wallet/localization/Wallet.json.js +0 -26
- package/dist/queryProcessor-g8208K6g.mjs +0 -178
- package/dist/queryProcessor-haY_gPGg.js +0 -177
- package/dist/web-5eyiz9L7.mjs +0 -54
- package/dist/web-BPUCAST-.mjs +0 -54
- package/dist/web-Be96Xqd4.mjs +0 -54
- package/dist/web-BmdKi_fZ.js +0 -1
- package/dist/web-Bqpk8Mpk.js +0 -1
- package/dist/web-BzUFKqzw.js +0 -1
- package/dist/web-CcFPvlkl.js +0 -1
- package/dist/web-CgjTW1bL.js +0 -1
- package/dist/web-Cw0ijzjY.js +0 -1
- package/dist/web-CwTWV4ca.mjs +0 -54
- package/dist/web-DZUec7pP.js +0 -1
- package/dist/web-Dh669DqQ.mjs +0 -54
- package/dist/web-DkWpHYrh.mjs +0 -54
- package/dist/web-Dt2RCU54.js +0 -1
- package/dist/web-krQQeSb6.mjs +0 -54
- package/dist/web-nqFW_Sd1.mjs +0 -54
- package/src/modules/community/controllers/comments.controller.aggr.js +0 -280
- package/src/modules/community/controllers/comments.controller.populate.js +0 -180
- package/src/modules/constructor/components/elements/H2.vue +0 -102
- package/src/modules/pages/components/pages/Page.vue +0 -174
- package/src/modules/pages/components/pages/PageEdit.vue +0 -159
- package/src/modules/pages/components/pages/Pages.vue +0 -108
- package/src/modules/pages/controllers/pages.controller.js +0 -71
- package/src/modules/pages/router/pages.router.js +0 -15
- package/src/modules/pages/routes/pages.routes.js +0 -30
- package/src/modules/pages/store/pages.js +0 -94
@@ -0,0 +1,76 @@
|
|
1
|
+
const path = require("path");
|
2
|
+
const express = require("express");
|
3
|
+
|
4
|
+
const { transformProdStats } = require('../ssr/ssr-transform-webpack-stats.js');
|
5
|
+
|
6
|
+
const { renderHtml } = require('../ssr/ssr-render-html.js');
|
7
|
+
|
8
|
+
module.exports =
|
9
|
+
function createSsrProdServer(projectRoot, {clientConfig,serverConfig, createServerPath}) {
|
10
|
+
|
11
|
+
const clientStats = require(path.join(projectRoot, "builds/web/client/stats.json"));
|
12
|
+
const serverManifest = require(path.join(projectRoot, "builds/web/server/manifest.json"));
|
13
|
+
|
14
|
+
const { createServer } = require(path.resolve(projectRoot, createServerPath));
|
15
|
+
|
16
|
+
const startServer = async () => {
|
17
|
+
const { app, server, env } = await createServer();
|
18
|
+
|
19
|
+
app.use(
|
20
|
+
clientConfig.output.publicPath,
|
21
|
+
express.static(path.resolve(projectRoot, "builds/web/client"), {
|
22
|
+
maxAge: '1d' // Кэширование на 1 день
|
23
|
+
})
|
24
|
+
);
|
25
|
+
|
26
|
+
const { render } = require(path.join(
|
27
|
+
serverConfig.output.path,
|
28
|
+
serverManifest["main.js"]
|
29
|
+
));
|
30
|
+
|
31
|
+
const { head, body } = transformProdStats({
|
32
|
+
stats: clientStats,
|
33
|
+
publicPath: clientConfig.output.publicPath,
|
34
|
+
});
|
35
|
+
|
36
|
+
app.use("/*", async (req, res) => {
|
37
|
+
const { html, meta, state, statusCode } = await render({
|
38
|
+
url: req.originalUrl,
|
39
|
+
cookies: req.cookies,
|
40
|
+
languages: req.acceptsLanguages()
|
41
|
+
});
|
42
|
+
|
43
|
+
if (state.NotFound) {
|
44
|
+
res.status(404);
|
45
|
+
}
|
46
|
+
|
47
|
+
const userState = JSON.stringify(state.user);
|
48
|
+
const completeHtml = await renderHtml({
|
49
|
+
appHtml: html,
|
50
|
+
meta,
|
51
|
+
head,
|
52
|
+
body,
|
53
|
+
userState
|
54
|
+
});
|
55
|
+
|
56
|
+
res.status(statusCode).header("Content-Type", "text/html; charset=utf-8").send(completeHtml);
|
57
|
+
});
|
58
|
+
|
59
|
+
return server;
|
60
|
+
};
|
61
|
+
|
62
|
+
const port = process.env.PORT || 8080;
|
63
|
+
|
64
|
+
const start = async () => {
|
65
|
+
const server = await startServer();
|
66
|
+
|
67
|
+
try {
|
68
|
+
server.listen(port, () => console.log(`Server running on port ${port}`));
|
69
|
+
} catch (err) {
|
70
|
+
console.error(err);
|
71
|
+
process.exit(1);
|
72
|
+
}
|
73
|
+
};
|
74
|
+
|
75
|
+
return start;
|
76
|
+
};
|
@@ -0,0 +1,57 @@
|
|
1
|
+
const path = require("path");
|
2
|
+
const Mustache = require("mustache");
|
3
|
+
const chokidar = require("chokidar");
|
4
|
+
const { promises: { readFile } } = require("fs");
|
5
|
+
|
6
|
+
const templatePath = path.resolve(__dirname,"../templates/page.html");
|
7
|
+
|
8
|
+
let template;
|
9
|
+
|
10
|
+
const renderHtml = async (stuff) => {
|
11
|
+
if (!template) {
|
12
|
+
const buffer = await readFile(templatePath);
|
13
|
+
template = buffer.toString();
|
14
|
+
}
|
15
|
+
|
16
|
+
const data = {
|
17
|
+
...stuff,
|
18
|
+
googleTagId: process.env.GOOGLE_TAG_ID,
|
19
|
+
googleMapApiKey: process.env.GOOGLE_MAPS_API_KEY
|
20
|
+
};
|
21
|
+
|
22
|
+
return Mustache.render(template, data);
|
23
|
+
};
|
24
|
+
|
25
|
+
const createHtmlRenderer = (onTemplateUpdate) => {
|
26
|
+
let shouldReload = true;
|
27
|
+
let currentTemplate;
|
28
|
+
|
29
|
+
chokidar.watch(templatePath).on("change", () => {
|
30
|
+
shouldReload = true;
|
31
|
+
onTemplateUpdate();
|
32
|
+
});
|
33
|
+
|
34
|
+
const loadTemplate = async () => {
|
35
|
+
if (!shouldReload) return;
|
36
|
+
const buffer = await readFile(templatePath);
|
37
|
+
currentTemplate = buffer.toString();
|
38
|
+
shouldReload = false;
|
39
|
+
};
|
40
|
+
|
41
|
+
return async (stuff) => {
|
42
|
+
await loadTemplate();
|
43
|
+
|
44
|
+
const data = {
|
45
|
+
...stuff,
|
46
|
+
googleTagId: process.env.GOOGLE_TAG_ID,
|
47
|
+
googleMapApiKey: process.env.GOOGLE_MAPS_API_KEY
|
48
|
+
};
|
49
|
+
|
50
|
+
return Mustache.render(currentTemplate, data);
|
51
|
+
};
|
52
|
+
};
|
53
|
+
|
54
|
+
module.exports = {
|
55
|
+
createHtmlRenderer,
|
56
|
+
renderHtml,
|
57
|
+
};
|
@@ -0,0 +1,54 @@
|
|
1
|
+
const normalizeAssets = (assets) => {
|
2
|
+
if (Array.isArray(assets)) return assets;
|
3
|
+
if (typeof assets === "object") return Object.values(assets);
|
4
|
+
return [assets];
|
5
|
+
};
|
6
|
+
|
7
|
+
const transformDevStats = (stats, outputFileSystem) => {
|
8
|
+
const {
|
9
|
+
assetsByChunkName: { main },
|
10
|
+
outputPath,
|
11
|
+
publicPath,
|
12
|
+
} = stats;
|
13
|
+
|
14
|
+
const head = `
|
15
|
+
<style>
|
16
|
+
${normalizeAssets(main)
|
17
|
+
.filter((path) => path.endsWith(".css"))
|
18
|
+
.map((path) =>
|
19
|
+
outputFileSystem.readFileSync(path.join(outputPath, path))
|
20
|
+
)
|
21
|
+
.join("\n")}
|
22
|
+
</style>
|
23
|
+
`;
|
24
|
+
|
25
|
+
const body = normalizeAssets(main)
|
26
|
+
.filter((path) => path.endsWith(".js"))
|
27
|
+
.map((path) => `<script src="${publicPath}${path}"></script>`)
|
28
|
+
.join("\n");
|
29
|
+
|
30
|
+
return { head, body };
|
31
|
+
};
|
32
|
+
|
33
|
+
const transformProdStats = ({ stats, publicPath }) => {
|
34
|
+
const {
|
35
|
+
assetsByChunkName: { main },
|
36
|
+
} = stats;
|
37
|
+
|
38
|
+
const head = normalizeAssets(main)
|
39
|
+
.filter((path) => path.endsWith(".css"))
|
40
|
+
.map((path) => `<link rel="stylesheet" href="${publicPath}${path}">`)
|
41
|
+
.join("\n");
|
42
|
+
|
43
|
+
const body = normalizeAssets(main)
|
44
|
+
.filter((path) => path.endsWith(".js"))
|
45
|
+
.map((path) => `<script src="${publicPath}${path}"></script>`)
|
46
|
+
.join("\n");
|
47
|
+
|
48
|
+
return { head, body };
|
49
|
+
};
|
50
|
+
|
51
|
+
module.exports = {
|
52
|
+
transformDevStats,
|
53
|
+
transformProdStats,
|
54
|
+
};
|
@@ -0,0 +1,37 @@
|
|
1
|
+
<!-- <!DOCTYPE html> -->
|
2
|
+
<html {{{ meta.htmlAttrs }}}>
|
3
|
+
<head {{{ meta.headAttrs }}}>
|
4
|
+
{{{ meta.head }}}
|
5
|
+
<link rel="apple-touch-icon" sizes="180x180" href="/favicon/apple-touch-icon.png">
|
6
|
+
<link rel="icon" type="image/png" sizes="32x32" href="/favicon/favicon-32x32.png">
|
7
|
+
<link rel="icon" type="image/png" sizes="16x16" href="/favicon/favicon-16x16.png">
|
8
|
+
<link rel="manifest" href="/favicon/site.webmanifest">
|
9
|
+
<link rel="mask-icon" href="/favicon/safari-pinned-tab.svg" color="#5bbad5">
|
10
|
+
<meta name="msapplication-TileColor" content="#000000">
|
11
|
+
<meta name="theme-color" content="#ffffff">
|
12
|
+
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
|
13
|
+
{{{ head }}}
|
14
|
+
<!-- Sign in with Apple -->
|
15
|
+
<!-- <script type="text/javascript" src="https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js"></script> -->
|
16
|
+
</head>
|
17
|
+
<!-- Google tag (gtag.js) -->
|
18
|
+
<script async src="https://www.googletagmanager.com/gtag/js?id={{googleTagId}}"></script>
|
19
|
+
|
20
|
+
<body {{{ meta.bodyAttrs }}}>
|
21
|
+
<div id="app">{{{ appHtml }}}</div>
|
22
|
+
|
23
|
+
<script type="application/json" data-user-state>
|
24
|
+
{{{ userState }}}
|
25
|
+
</script>
|
26
|
+
|
27
|
+
<script>
|
28
|
+
window.dataLayer = window.dataLayer || [];
|
29
|
+
function gtag(){dataLayer.push(arguments);}
|
30
|
+
gtag('js', new Date());
|
31
|
+
|
32
|
+
gtag('config', '{{googleTagId}}');
|
33
|
+
</script>
|
34
|
+
|
35
|
+
{{{ meta.body }}} {{{ body }}}
|
36
|
+
</body>
|
37
|
+
</html>
|
@@ -0,0 +1,33 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang="en">
|
3
|
+
<head>
|
4
|
+
<link rel="apple-touch-icon" sizes="180x180" href="/favicon/apple-touch-icon.png">
|
5
|
+
<link rel="icon" type="image/png" sizes="32x32" href="/favicon/favicon-32x32.png">
|
6
|
+
<link rel="icon" type="image/png" sizes="16x16" href="/favicon/favicon-16x16.png">
|
7
|
+
<!-- <link rel="manifest" href="/favicon/site.webmanifest"> -->
|
8
|
+
<link rel="mask-icon" href="/favicon/safari-pinned-tab.svg" color="#5bbad5">
|
9
|
+
<meta name="msapplication-TileColor" content="#000000">
|
10
|
+
<meta name="theme-color" content="#ffffff">
|
11
|
+
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
|
12
|
+
<title>Weeder</title>
|
13
|
+
<!-- Sign in with Apple -->
|
14
|
+
<script type="text/javascript" src="https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js"></script>
|
15
|
+
<!-- Google tag (gtag.js) -->
|
16
|
+
<script async src="https://www.googletagmanager.com/gtag/js?id=<%= googleTagId %>"></script>
|
17
|
+
<script>
|
18
|
+
window.dataLayer = window.dataLayer || [];
|
19
|
+
function gtag(){dataLayer.push(arguments);}
|
20
|
+
gtag('js', new Date());
|
21
|
+
|
22
|
+
gtag('config', '<%= googleTagId %>');
|
23
|
+
</script>
|
24
|
+
<!-- Google Map Api -->
|
25
|
+
<script src="https://maps.googleapis.com/maps/api/js?key=<%= googleMapApiKey %>&libraries=places&language=en" async=""></script>
|
26
|
+
<link rel="stylesheet" type="text/css" href="/main.css">
|
27
|
+
</head>
|
28
|
+
<body>
|
29
|
+
<div id="app"></div>
|
30
|
+
|
31
|
+
<script src="/main.js"></script>
|
32
|
+
</body>
|
33
|
+
</html>
|
@@ -0,0 +1,13 @@
|
|
1
|
+
const baseConfig = require('./webpack.config.base');
|
2
|
+
const clientConfig = require('./webpack.config.client');
|
3
|
+
const serverConfig = require('./webpack.config.server');
|
4
|
+
const spaConfig = require('./webpack.config.spa');
|
5
|
+
const ssrConfig = require('./webpack.config.ssr');
|
6
|
+
|
7
|
+
module.exports = {
|
8
|
+
baseConfig,
|
9
|
+
clientConfig,
|
10
|
+
serverConfig,
|
11
|
+
spaConfig,
|
12
|
+
ssrConfig,
|
13
|
+
};
|
@@ -0,0 +1,127 @@
|
|
1
|
+
const path = require("path");
|
2
|
+
const webpack = require("webpack");
|
3
|
+
const { VueLoaderPlugin } = require("vue-loader");
|
4
|
+
const MiniCssExtractPlugin = require('mini-css-extract-plugin')
|
5
|
+
const { CleanWebpackPlugin } = require("clean-webpack-plugin");
|
6
|
+
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
|
7
|
+
|
8
|
+
const Dotenv = require('dotenv-webpack');
|
9
|
+
|
10
|
+
module.exports = (projectRoot) => {
|
11
|
+
return {
|
12
|
+
resolve: {
|
13
|
+
alias: {
|
14
|
+
'@': path.resolve(projectRoot, 'src'),
|
15
|
+
'@pf': path.resolve(projectRoot, 'prometheus-framework'),
|
16
|
+
'vue': path.resolve(projectRoot, 'node_modules/vue'),
|
17
|
+
'vue-router': path.resolve(projectRoot, 'node_modules/vue-router'),
|
18
|
+
'vue-i18n': path.resolve(projectRoot, 'node_modules/vue-i18n'),
|
19
|
+
},
|
20
|
+
fallback: {
|
21
|
+
"path": false
|
22
|
+
}
|
23
|
+
},
|
24
|
+
module: {
|
25
|
+
rules: [
|
26
|
+
{
|
27
|
+
test: /\.m?js$/,
|
28
|
+
exclude: /node_modules\/(?!(vue-meta)\/).*/,
|
29
|
+
use: {
|
30
|
+
loader: "babel-loader",
|
31
|
+
options: {
|
32
|
+
configFile: path.resolve(projectRoot, 'babel.config.js')
|
33
|
+
},
|
34
|
+
},
|
35
|
+
},
|
36
|
+
{
|
37
|
+
test: /\.vue$/,
|
38
|
+
use: [
|
39
|
+
{
|
40
|
+
loader: require.resolve('vue-loader'),
|
41
|
+
},
|
42
|
+
],
|
43
|
+
},
|
44
|
+
{
|
45
|
+
test: /\.(sa|sc|c)ss$/,
|
46
|
+
use: [
|
47
|
+
process.env.NODE_ENV !== 'production'
|
48
|
+
? 'vue-style-loader'
|
49
|
+
: MiniCssExtractPlugin.loader,
|
50
|
+
{
|
51
|
+
loader: 'css-loader',
|
52
|
+
options: {
|
53
|
+
sourceMap: true,
|
54
|
+
url: {
|
55
|
+
filter: (url, resourcePath) => {
|
56
|
+
if (url.indexOf("/fonts/")==0) {
|
57
|
+
return false;
|
58
|
+
}
|
59
|
+
return true;
|
60
|
+
},
|
61
|
+
}
|
62
|
+
}
|
63
|
+
},
|
64
|
+
{
|
65
|
+
loader: 'sass-loader',
|
66
|
+
options: {
|
67
|
+
sourceMap: true,
|
68
|
+
}
|
69
|
+
},
|
70
|
+
],
|
71
|
+
},
|
72
|
+
{
|
73
|
+
test: /\.(?:ico|gif|png|jpg|jpeg|mp4|webp|webm|svg|woff2?|eot|ttf|otf)$/i,
|
74
|
+
use: {
|
75
|
+
loader: 'url-loader',
|
76
|
+
options: {
|
77
|
+
emitFile: false
|
78
|
+
},
|
79
|
+
},
|
80
|
+
}
|
81
|
+
],
|
82
|
+
},
|
83
|
+
plugins: [
|
84
|
+
// new BundleAnalyzerPlugin(),
|
85
|
+
new MiniCssExtractPlugin({
|
86
|
+
filename: '[name].[contenthash].css',
|
87
|
+
chunkFilename: '[id].[contenthash].css',
|
88
|
+
ignoreOrder: true
|
89
|
+
}),
|
90
|
+
new CleanWebpackPlugin(),
|
91
|
+
new VueLoaderPlugin(),
|
92
|
+
new Dotenv({
|
93
|
+
path: `.env.${process.env.NODE_ENV}`
|
94
|
+
}),
|
95
|
+
new webpack.DefinePlugin({
|
96
|
+
__VUE_I18N_LEGACY_API__:false,
|
97
|
+
__VUE_OPTIONS_API__:true,
|
98
|
+
__VUE_PROD_DEVTOOLS_:false,
|
99
|
+
__VUE_PROD_DEVTOOLS__: true,
|
100
|
+
__VUE_PROD_HYDRATION_MISMATCH_DETAILS__: true,
|
101
|
+
__VUE_I18N_FULL_INSTALL__:true,
|
102
|
+
__INTLIFY_PROD_DEVTOOLS__:false,
|
103
|
+
__MOBILE_APP__: false,
|
104
|
+
})
|
105
|
+
],
|
106
|
+
infrastructureLogging: {
|
107
|
+
level: 'verbose',
|
108
|
+
},
|
109
|
+
stats: {
|
110
|
+
colors: true,
|
111
|
+
hash: true,
|
112
|
+
version: true,
|
113
|
+
timings: true,
|
114
|
+
assets: true,
|
115
|
+
chunks: true,
|
116
|
+
modules: true,
|
117
|
+
reasons: true,
|
118
|
+
children: true,
|
119
|
+
source: true,
|
120
|
+
errors: true,
|
121
|
+
errorDetails: true,
|
122
|
+
errorStack: true,
|
123
|
+
warnings: true,
|
124
|
+
publicPath: true
|
125
|
+
},
|
126
|
+
};
|
127
|
+
};
|
@@ -0,0 +1,78 @@
|
|
1
|
+
const path = require("path");
|
2
|
+
const glob = require('glob-all');
|
3
|
+
const webpack = require("webpack");
|
4
|
+
const { merge } = require("webpack-merge");
|
5
|
+
const { StatsWriterPlugin } = require("webpack-stats-plugin");
|
6
|
+
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
|
7
|
+
const CssMinimizerPlugin = require("css-minimizer-webpack-plugin");
|
8
|
+
const TerserPlugin = require("terser-webpack-plugin");
|
9
|
+
const WorkboxPlugin = require('workbox-webpack-plugin');
|
10
|
+
const PurgeCSSPlugin = require('purgecss-webpack-plugin');
|
11
|
+
|
12
|
+
const baseConfig = require('./webpack.config.base');
|
13
|
+
|
14
|
+
module.exports = (projectRoot) => {
|
15
|
+
const isProd = process.env.NODE_ENV === "production";
|
16
|
+
|
17
|
+
const config = {
|
18
|
+
mode: !isProd ? "development" : "production",
|
19
|
+
devtool: !isProd ? "inline-source-map" : "source-map",
|
20
|
+
entry: {
|
21
|
+
main: !isProd
|
22
|
+
? [path.resolve("../utils/hot-reload.js"), path.resolve(projectRoot, "src/entry-client.js")]
|
23
|
+
: path.resolve(projectRoot, "src/entry-client.js"),
|
24
|
+
},
|
25
|
+
module: {
|
26
|
+
rules: [],
|
27
|
+
},
|
28
|
+
output: {
|
29
|
+
filename: "main.[fullhash].js",
|
30
|
+
chunkFilename: '[name].[contenthash].js',
|
31
|
+
path: path.resolve(projectRoot, "builds/web/client"),
|
32
|
+
publicPath: "/",
|
33
|
+
clean: true
|
34
|
+
},
|
35
|
+
plugins: [
|
36
|
+
...(!isProd ? [new webpack.HotModuleReplacementPlugin()] : []),
|
37
|
+
new StatsWriterPlugin(),
|
38
|
+
new WorkboxPlugin.GenerateSW({
|
39
|
+
clientsClaim: true,
|
40
|
+
skipWaiting: true,
|
41
|
+
}),
|
42
|
+
new PurgeCSSPlugin({
|
43
|
+
paths: glob.sync([
|
44
|
+
path.join(projectRoot, 'src/**/*.vue'),
|
45
|
+
path.join(projectRoot, 'prometheus-framework/src/**/*.vue'),
|
46
|
+
]),
|
47
|
+
safelist: { greedy: [ /data-v-.*/ ] }
|
48
|
+
}),
|
49
|
+
],
|
50
|
+
optimization: {
|
51
|
+
usedExports: true,
|
52
|
+
splitChunks: {
|
53
|
+
chunks: "async",
|
54
|
+
minSize: 0,
|
55
|
+
minRemainingSize: 0,
|
56
|
+
minChunks: 1,
|
57
|
+
maxAsyncRequests: 30,
|
58
|
+
maxInitialRequests: 30,
|
59
|
+
enforceSizeThreshold: 50000,
|
60
|
+
cacheGroups: {
|
61
|
+
vendor: {
|
62
|
+
test: /[\\/]node_modules[\\/]/,
|
63
|
+
name: "vendors",
|
64
|
+
priority: -10,
|
65
|
+
reuseExistingChunk: true,
|
66
|
+
},
|
67
|
+
},
|
68
|
+
},
|
69
|
+
minimize: isProd,
|
70
|
+
minimizer: [
|
71
|
+
new TerserPlugin(),
|
72
|
+
new CssMinimizerPlugin()
|
73
|
+
],
|
74
|
+
},
|
75
|
+
};
|
76
|
+
|
77
|
+
return merge(baseConfig(projectRoot), config);
|
78
|
+
};
|
@@ -0,0 +1,31 @@
|
|
1
|
+
const path = require("path");
|
2
|
+
const webpack = require('webpack');
|
3
|
+
const nodeExternals = require('webpack-node-externals');
|
4
|
+
|
5
|
+
module.exports = (projectRoot) => {
|
6
|
+
return {
|
7
|
+
target: 'node',
|
8
|
+
mode: "development",
|
9
|
+
entry: [
|
10
|
+
'webpack/hot/poll?1000',
|
11
|
+
path.resolve(projectRoot, 'server/server.js')
|
12
|
+
],
|
13
|
+
output: {
|
14
|
+
filename: "server.[fullhash].js",
|
15
|
+
path: path.resolve(projectRoot, "builds/web/server"),
|
16
|
+
clean: true
|
17
|
+
},
|
18
|
+
resolve: {
|
19
|
+
alias: {
|
20
|
+
'@pf': path.resolve(projectRoot, 'prometheus-framework'),
|
21
|
+
},
|
22
|
+
fallback: {
|
23
|
+
"path": false
|
24
|
+
}
|
25
|
+
},
|
26
|
+
// externals: [nodeExternals()],
|
27
|
+
plugins: [
|
28
|
+
new webpack.HotModuleReplacementPlugin(),
|
29
|
+
],
|
30
|
+
};
|
31
|
+
};
|
@@ -0,0 +1,80 @@
|
|
1
|
+
const path = require("path");
|
2
|
+
const webpack = require("webpack");
|
3
|
+
const { merge } = require("webpack-merge");
|
4
|
+
const { VueLoaderPlugin } = require("vue-loader");
|
5
|
+
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
|
6
|
+
const CssMinimizerPlugin = require("css-minimizer-webpack-plugin");
|
7
|
+
const CopyWebpackPlugin = require('copy-webpack-plugin');
|
8
|
+
const TerserPlugin = require("terser-webpack-plugin");
|
9
|
+
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
10
|
+
const { StatsWriterPlugin } = require("webpack-stats-plugin");
|
11
|
+
const Mustache = require("mustache");
|
12
|
+
const fs = require('fs').promises;
|
13
|
+
|
14
|
+
const getClientConfig = require("./webpack.config.client");
|
15
|
+
const templatePath = path.resolve(__dirname,"../templates/page.html");
|
16
|
+
|
17
|
+
const isProd = process.env.NODE_ENV === "production";
|
18
|
+
|
19
|
+
module.exports = (projectRoot) => {
|
20
|
+
|
21
|
+
// let mainJS = !isProd ? [path.resolve("../utils/hot-reload.js"), path.resolve(projectRoot, "src/app.js")] : path.resolve(projectRoot, "src/app.js")
|
22
|
+
|
23
|
+
const spaConfig = {
|
24
|
+
mode: !isProd ? "development" : "production",
|
25
|
+
devtool: "source-map",
|
26
|
+
entry: {
|
27
|
+
main: path.resolve(projectRoot, "src/app.js"),
|
28
|
+
},
|
29
|
+
output: {
|
30
|
+
filename: "main.js",
|
31
|
+
path: path.resolve(projectRoot, "builds/web/spa"),
|
32
|
+
clean: true
|
33
|
+
},
|
34
|
+
target: "web",
|
35
|
+
module: {
|
36
|
+
rules: [
|
37
|
+
// Дополнительные правила могут быть добавлены здесь
|
38
|
+
]
|
39
|
+
},
|
40
|
+
plugins: [
|
41
|
+
...(!isProd ? [new webpack.HotModuleReplacementPlugin()] : []),
|
42
|
+
new StatsWriterPlugin(),
|
43
|
+
new webpack.optimize.LimitChunkCountPlugin({
|
44
|
+
maxChunks: 1,
|
45
|
+
}),
|
46
|
+
new HtmlWebpackPlugin({
|
47
|
+
templateContent: async () => {
|
48
|
+
const template = await fs.readFile(templatePath, 'utf8');
|
49
|
+
const meta = {
|
50
|
+
htmlAttrs: 'lang="en"',
|
51
|
+
headAttrs: '',
|
52
|
+
bodyAttrs: '',
|
53
|
+
head: '<meta name="description" content="Example">',
|
54
|
+
body: '',
|
55
|
+
};
|
56
|
+
const data = {
|
57
|
+
googleTagId: process.env.GOOGLE_TAG_ID,
|
58
|
+
googleMapApiKey: process.env.GOOGLE_MAPS_API_KEY,
|
59
|
+
meta,
|
60
|
+
};
|
61
|
+
return Mustache.render(template, data);
|
62
|
+
},
|
63
|
+
filename: 'index.html',
|
64
|
+
inject: 'body',
|
65
|
+
}),
|
66
|
+
new CopyWebpackPlugin({
|
67
|
+
patterns: [
|
68
|
+
{ from: path.resolve(projectRoot, '../public/logo'), to: 'logo' },
|
69
|
+
{ from: path.resolve(projectRoot, '../public/walkthrough'), to: 'walkthrough' }
|
70
|
+
]
|
71
|
+
}),
|
72
|
+
// new ServiceWorkerPlugin()
|
73
|
+
],
|
74
|
+
optimization: {
|
75
|
+
minimizer: [new TerserPlugin(), new CssMinimizerPlugin()],
|
76
|
+
},
|
77
|
+
};
|
78
|
+
|
79
|
+
return merge(getClientConfig(projectRoot), spaConfig);
|
80
|
+
};
|
@@ -0,0 +1,57 @@
|
|
1
|
+
const path = require("path");
|
2
|
+
const webpack = require("webpack");
|
3
|
+
const nodeExternals = require('webpack-node-externals');
|
4
|
+
const { merge } = require("webpack-merge");
|
5
|
+
const { WebpackManifestPlugin } = require("webpack-manifest-plugin");
|
6
|
+
|
7
|
+
const getBaseConfig = require("./webpack.config.base.js");
|
8
|
+
|
9
|
+
module.exports = (projectRoot) => {
|
10
|
+
const isProd = process.env.NODE_ENV === "production";
|
11
|
+
|
12
|
+
const ssrConfig = {
|
13
|
+
target: "node",
|
14
|
+
mode: !isProd ? "development" : "production",
|
15
|
+
entry: {
|
16
|
+
main: path.resolve(projectRoot, "src/entry-server.js"),
|
17
|
+
},
|
18
|
+
output: {
|
19
|
+
filename: "main.[fullhash].js",
|
20
|
+
path: path.resolve(projectRoot, "builds/web/server"),
|
21
|
+
libraryTarget: "commonjs2",
|
22
|
+
clean: true
|
23
|
+
},
|
24
|
+
module: {
|
25
|
+
rules: [
|
26
|
+
{
|
27
|
+
test: /\.css$/,
|
28
|
+
// we don't need styles on the server, so we just ignore them
|
29
|
+
use: "null-loader",
|
30
|
+
},
|
31
|
+
],
|
32
|
+
},
|
33
|
+
optimization: {
|
34
|
+
minimize: false,
|
35
|
+
},
|
36
|
+
plugins: [
|
37
|
+
new webpack.optimize.LimitChunkCountPlugin({
|
38
|
+
maxChunks: 1,
|
39
|
+
}),
|
40
|
+
...(isProd ? [new WebpackManifestPlugin({
|
41
|
+
fileName: 'manifest.json'
|
42
|
+
})] : []),
|
43
|
+
],
|
44
|
+
externals: [
|
45
|
+
nodeExternals({
|
46
|
+
allowlist: [
|
47
|
+
/^vue-meta*/,
|
48
|
+
/\.(css|sass|scss)$/,
|
49
|
+
/\.(vue)$/,
|
50
|
+
/\.(html)$/,
|
51
|
+
],
|
52
|
+
})
|
53
|
+
],
|
54
|
+
};
|
55
|
+
|
56
|
+
return merge(getBaseConfig(projectRoot), ssrConfig);
|
57
|
+
};
|