@vendure/dashboard 3.2.0 → 3.2.2
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/LICENSE.md +42 -0
- package/README.md +12 -12
- package/dist/plugin/vite-plugin-admin-api-schema.js +2 -2
- package/dist/plugin/vite-plugin-dashboard-metadata.js +4 -4
- package/dist/plugin/vite-plugin-theme.d.ts +55 -0
- package/dist/plugin/vite-plugin-theme.js +130 -0
- package/dist/plugin/vite-plugin-ui-config.js +2 -2
- package/dist/plugin/vite-plugin-vendure-dashboard.d.ts +2 -1
- package/dist/plugin/vite-plugin-vendure-dashboard.js +2 -0
- package/index.html +15 -15
- package/lingui.config.js +12 -12
- package/package.json +15 -5
- package/src/app/app-providers.tsx +30 -30
- package/src/app/main.tsx +97 -97
- package/src/app/routes/__root.tsx +24 -24
- package/src/app/routes/_authenticated/_administrators/administrators.graphql.ts +79 -79
- package/src/app/routes/_authenticated/_administrators/administrators.tsx +86 -86
- package/src/app/routes/_authenticated/_administrators/administrators_.$id.tsx +155 -155
- package/src/app/routes/_authenticated/_administrators/components/role-permissions-display.tsx +133 -133
- package/src/app/routes/_authenticated/_assets/assets.tsx +19 -19
- package/src/app/routes/_authenticated/_channels/channels.graphql.ts +93 -93
- package/src/app/routes/_authenticated/_channels/channels.tsx +60 -60
- package/src/app/routes/_authenticated/_channels/channels_.$id.tsx +248 -248
- package/src/app/routes/_authenticated/_collections/collections.graphql.ts +133 -133
- package/src/app/routes/_authenticated/_collections/collections.tsx +195 -195
- package/src/app/routes/_authenticated/_collections/collections_.$id.tsx +224 -224
- package/src/app/routes/_authenticated/_collections/components/collection-contents-preview-table.tsx +127 -127
- package/src/app/routes/_authenticated/_collections/components/collection-contents-sheet.tsx +46 -46
- package/src/app/routes/_authenticated/_collections/components/collection-contents-table.tsx +82 -82
- package/src/app/routes/_authenticated/_collections/components/collection-filters-selector.tsx +91 -91
- package/src/app/routes/_authenticated/_countries/countries.graphql.ts +69 -69
- package/src/app/routes/_authenticated/_countries/countries.tsx +67 -67
- package/src/app/routes/_authenticated/_countries/countries_.$id.tsx +122 -122
- package/src/app/routes/_authenticated/_customer-groups/components/customer-group-members-sheet.tsx +44 -44
- package/src/app/routes/_authenticated/_customer-groups/components/customer-group-members-table.tsx +129 -129
- package/src/app/routes/_authenticated/_customer-groups/customer-groups.graphql.ts +71 -71
- package/src/app/routes/_authenticated/_customer-groups/customer-groups.tsx +68 -68
- package/src/app/routes/_authenticated/_customer-groups/customer-groups_.$id.tsx +111 -111
- package/src/app/routes/_authenticated/_customers/components/customer-address-card.tsx +155 -155
- package/src/app/routes/_authenticated/_customers/components/customer-address-form.tsx +344 -344
- package/src/app/routes/_authenticated/_customers/components/customer-group-controls.tsx +4 -4
- package/src/app/routes/_authenticated/_customers/components/customer-history/customer-history-container.tsx +78 -78
- package/src/app/routes/_authenticated/_customers/components/customer-history/customer-history.tsx +77 -77
- package/src/app/routes/_authenticated/_customers/components/customer-history/index.ts +3 -3
- package/src/app/routes/_authenticated/_customers/components/customer-history/use-customer-history.ts +169 -169
- package/src/app/routes/_authenticated/_customers/components/customer-order-table.tsx +88 -88
- package/src/app/routes/_authenticated/_customers/components/customer-status-badge.tsx +33 -33
- package/src/app/routes/_authenticated/_customers/customers.graphql.ts +204 -204
- package/src/app/routes/_authenticated/_customers/customers.tsx +82 -82
- package/src/app/routes/_authenticated/_customers/customers_.$id.tsx +274 -274
- package/src/app/routes/_authenticated/_facets/components/edit-facet-value.tsx +129 -129
- package/src/app/routes/_authenticated/_facets/components/facet-values-sheet.tsx +46 -46
- package/src/app/routes/_authenticated/_facets/components/facet-values-table.tsx +97 -97
- package/src/app/routes/_authenticated/_facets/facets.graphql.ts +104 -104
- package/src/app/routes/_authenticated/_facets/facets.tsx +97 -97
- package/src/app/routes/_authenticated/_facets/facets_.$id.tsx +139 -139
- package/src/app/routes/_authenticated/_global-settings/global-settings.graphql.ts +28 -28
- package/src/app/routes/_authenticated/_global-settings/global-settings.tsx +161 -161
- package/src/app/routes/_authenticated/_orders/components/order-address.tsx +58 -58
- package/src/app/routes/_authenticated/_orders/components/order-history/index.ts +3 -3
- package/src/app/routes/_authenticated/_orders/components/order-history/order-history-container.tsx +72 -72
- package/src/app/routes/_authenticated/_orders/components/order-history/order-history.tsx +96 -96
- package/src/app/routes/_authenticated/_orders/components/order-history/use-order-history.ts +171 -171
- package/src/app/routes/_authenticated/_orders/components/order-table.tsx +169 -169
- package/src/app/routes/_authenticated/_orders/components/order-tax-summary.tsx +38 -38
- package/src/app/routes/_authenticated/_orders/components/payment-details.tsx +61 -61
- package/src/app/routes/_authenticated/_orders/orders.graphql.ts +325 -325
- package/src/app/routes/_authenticated/_orders/orders.tsx +120 -120
- package/src/app/routes/_authenticated/_orders/orders_.$id.tsx +133 -133
- package/src/app/routes/_authenticated/_payment-methods/components/payment-eligibility-checker-selector.tsx +104 -104
- package/src/app/routes/_authenticated/_payment-methods/components/payment-handler-selector.tsx +100 -100
- package/src/app/routes/_authenticated/_payment-methods/payment-methods.graphql.ts +83 -83
- package/src/app/routes/_authenticated/_payment-methods/payment-methods.tsx +64 -64
- package/src/app/routes/_authenticated/_payment-methods/payment-methods_.$id.tsx +183 -183
- package/src/app/routes/_authenticated/_product-variants/components/variant-price-detail.tsx +87 -87
- package/src/app/routes/_authenticated/_product-variants/product-variants.graphql.ts +123 -123
- package/src/app/routes/_authenticated/_product-variants/product-variants.tsx +78 -78
- package/src/app/routes/_authenticated/_product-variants/product-variants_.$id.tsx +331 -331
- package/src/app/routes/_authenticated/_products/components/create-product-variants-dialog.tsx +228 -228
- package/src/app/routes/_authenticated/_products/components/create-product-variants.tsx +462 -462
- package/src/app/routes/_authenticated/_products/components/option-value-input.tsx +95 -95
- package/src/app/routes/_authenticated/_products/components/product-variants-table.tsx +87 -87
- package/src/app/routes/_authenticated/_products/products.graphql.ts +116 -116
- package/src/app/routes/_authenticated/_products/products.tsx +48 -48
- package/src/app/routes/_authenticated/_products/products_.$id.tsx +196 -196
- package/src/app/routes/_authenticated/_profile/profile.graphql.ts +23 -23
- package/src/app/routes/_authenticated/_profile/profile.tsx +122 -122
- package/src/app/routes/_authenticated/_promotions/components/promotion-actions-selector.tsx +107 -107
- package/src/app/routes/_authenticated/_promotions/components/promotion-conditions-selector.tsx +107 -107
- package/src/app/routes/_authenticated/_promotions/promotions.graphql.ts +96 -96
- package/src/app/routes/_authenticated/_promotions/promotions.tsx +61 -61
- package/src/app/routes/_authenticated/_promotions/promotions_.$id.tsx +235 -235
- package/src/app/routes/_authenticated/_roles/components/expandable-permissions.tsx +54 -54
- package/src/app/routes/_authenticated/_roles/components/permissions-grid.tsx +116 -116
- package/src/app/routes/_authenticated/_roles/roles.graphql.ts +67 -67
- package/src/app/routes/_authenticated/_roles/roles.tsx +96 -96
- package/src/app/routes/_authenticated/_roles/roles_.$id.tsx +142 -142
- package/src/app/routes/_authenticated/_sellers/sellers.graphql.ts +61 -61
- package/src/app/routes/_authenticated/_sellers/sellers.tsx +51 -51
- package/src/app/routes/_authenticated/_sellers/sellers_.$id.tsx +111 -111
- package/src/app/routes/_authenticated/_shipping-methods/components/fulfillment-handler-selector.tsx +56 -56
- package/src/app/routes/_authenticated/_shipping-methods/components/shipping-calculator-selector.tsx +101 -101
- package/src/app/routes/_authenticated/_shipping-methods/components/shipping-eligibility-checker-selector.tsx +101 -101
- package/src/app/routes/_authenticated/_shipping-methods/components/test-shipping-method-dialog.tsx +32 -32
- package/src/app/routes/_authenticated/_shipping-methods/shipping-methods.graphql.ts +83 -83
- package/src/app/routes/_authenticated/_shipping-methods/shipping-methods.tsx +55 -55
- package/src/app/routes/_authenticated/_shipping-methods/shipping-methods_.$id.tsx +171 -171
- package/src/app/routes/_authenticated/_stock-locations/stock-locations.graphql.ts +62 -62
- package/src/app/routes/_authenticated/_stock-locations/stock-locations.tsx +48 -48
- package/src/app/routes/_authenticated/_stock-locations/stock-locations_.$id.tsx +115 -115
- package/src/app/routes/_authenticated/_system/components/payload-dialog.tsx +34 -34
- package/src/app/routes/_authenticated/_system/healthchecks.tsx +93 -93
- package/src/app/routes/_authenticated/_system/job-queue.graphql.ts +43 -43
- package/src/app/routes/_authenticated/_system/job-queue.tsx +161 -161
- package/src/app/routes/_authenticated/_tax-categories/tax-categories.graphql.ts +63 -63
- package/src/app/routes/_authenticated/_tax-categories/tax-categories.tsx +65 -65
- package/src/app/routes/_authenticated/_tax-categories/tax-categories_.$id.tsx +115 -115
- package/src/app/routes/_authenticated/_tax-rates/tax-rates.graphql.ts +75 -75
- package/src/app/routes/_authenticated/_tax-rates/tax-rates.tsx +108 -108
- package/src/app/routes/_authenticated/_tax-rates/tax-rates_.$id.tsx +148 -148
- package/src/app/routes/_authenticated/_zones/components/zone-countries-sheet.tsx +31 -31
- package/src/app/routes/_authenticated/_zones/components/zone-countries-table.tsx +79 -79
- package/src/app/routes/_authenticated/_zones/zones.graphql.ts +96 -96
- package/src/app/routes/_authenticated/_zones/zones.tsx +57 -57
- package/src/app/routes/_authenticated/_zones/zones_.$id.tsx +103 -103
- package/src/app/routes/_authenticated/index.tsx +194 -194
- package/src/app/routes/_authenticated.tsx +25 -25
- package/src/app/routes/login.tsx +48 -48
- package/src/app/styles.css +82 -82
- package/src/app/tailwindcss-animate.css +275 -275
- package/src/i18n/locales/de.po +1579 -1579
- package/src/i18n/locales/en.po +1579 -1579
- package/src/lib/components/data-display/boolean.tsx +23 -23
- package/src/lib/components/data-display/date-time.tsx +13 -13
- package/src/lib/components/data-display/json.tsx +5 -5
- package/src/lib/components/data-display/money.tsx +15 -15
- package/src/lib/components/data-input/affixed-input.tsx +49 -49
- package/src/lib/components/data-input/customer-group-input.tsx +72 -72
- package/src/lib/components/data-input/datetime-input.tsx +149 -149
- package/src/lib/components/data-input/facet-value-input.tsx +68 -68
- package/src/lib/components/data-input/money-input.tsx +112 -112
- package/src/lib/components/data-input/richt-text-input.tsx +99 -99
- package/src/lib/components/data-table/data-table-column-header.tsx +73 -73
- package/src/lib/components/data-table/data-table-faceted-filter.tsx +172 -172
- package/src/lib/components/data-table/data-table-filter-dialog.tsx +73 -73
- package/src/lib/components/data-table/data-table-pagination.tsx +87 -87
- package/src/lib/components/data-table/data-table-view-options.tsx +53 -53
- package/src/lib/components/data-table/data-table.tsx +218 -218
- package/src/lib/components/layout/app-layout.tsx +42 -42
- package/src/lib/components/layout/app-sidebar.tsx +34 -34
- package/src/lib/components/layout/channel-switcher.tsx +87 -87
- package/src/lib/components/layout/content-language-selector.tsx +41 -41
- package/src/lib/components/layout/generated-breadcrumbs.tsx +82 -82
- package/src/lib/components/layout/language-dialog.tsx +104 -104
- package/src/lib/components/layout/nav-main.tsx +178 -178
- package/src/lib/components/layout/nav-projects.tsx +81 -81
- package/src/lib/components/layout/nav-user.tsx +176 -176
- package/src/lib/components/layout/prerelease-popup.tsx +38 -38
- package/src/lib/components/login/login-form.tsx +173 -173
- package/src/lib/components/shared/alerts.tsx +20 -20
- package/src/lib/components/shared/animated-number.tsx +49 -49
- package/src/lib/components/shared/asset-gallery.tsx +433 -433
- package/src/lib/components/shared/asset-picker-dialog.tsx +71 -71
- package/src/lib/components/shared/asset-preview-dialog.tsx +48 -48
- package/src/lib/components/shared/asset-preview.tsx +345 -345
- package/src/lib/components/shared/assigned-facet-values.tsx +68 -68
- package/src/lib/components/shared/channel-code-label.tsx +7 -7
- package/src/lib/components/shared/channel-selector.tsx +51 -51
- package/src/lib/components/shared/configurable-operation-arg-input.tsx +51 -51
- package/src/lib/components/shared/configurable-operation-input.tsx +133 -133
- package/src/lib/components/shared/confirmation-dialog.tsx +58 -58
- package/src/lib/components/shared/copyable-text.tsx +31 -31
- package/src/lib/components/shared/country-selector.tsx +105 -105
- package/src/lib/components/shared/currency-selector.tsx +33 -33
- package/src/lib/components/shared/custom-fields-form.tsx +86 -86
- package/src/lib/components/shared/customer-address-form.tsx +330 -330
- package/src/lib/components/shared/customer-group-chip.tsx +30 -30
- package/src/lib/components/shared/customer-group-selector.tsx +62 -62
- package/src/lib/components/shared/customer-selector.tsx +107 -107
- package/src/lib/components/shared/detail-page-button.tsx +22 -22
- package/src/lib/components/shared/entity-assets.tsx +340 -340
- package/src/lib/components/shared/error-page.tsx +31 -31
- package/src/lib/components/shared/facet-value-chip.tsx +44 -44
- package/src/lib/components/shared/facet-value-selector.tsx +306 -306
- package/src/lib/components/shared/focal-point-control.tsx +64 -64
- package/src/lib/components/shared/form-field-wrapper.tsx +37 -37
- package/src/lib/components/shared/history-timeline/history-entry.tsx +112 -112
- package/src/lib/components/shared/history-timeline/history-note-checkbox.tsx +28 -28
- package/src/lib/components/shared/history-timeline/history-note-editor.tsx +60 -60
- package/src/lib/components/shared/history-timeline/history-note-input.tsx +39 -39
- package/src/lib/components/shared/history-timeline/history-timeline.tsx +56 -56
- package/src/lib/components/shared/icon-mark.tsx +18 -18
- package/src/lib/components/shared/language-selector.tsx +48 -48
- package/src/lib/components/shared/logo-mark.tsx +24 -24
- package/src/lib/components/shared/multi-select.tsx +159 -159
- package/src/lib/components/shared/option-value-input.tsx +94 -94
- package/src/lib/components/shared/paginated-list-data-table.tsx +520 -520
- package/src/lib/components/shared/permission-guard.tsx +20 -20
- package/src/lib/components/shared/role-code-label.tsx +8 -8
- package/src/lib/components/shared/role-selector.tsx +56 -56
- package/src/lib/components/shared/seller-selector.tsx +107 -107
- package/src/lib/components/shared/tax-category-selector.tsx +65 -65
- package/src/lib/components/shared/translatable-form-field.tsx +74 -74
- package/src/lib/components/shared/vendure-image.tsx +159 -159
- package/src/lib/components/shared/zone-selector.tsx +66 -66
- package/src/lib/components/ui/accordion.tsx +59 -59
- package/src/lib/components/ui/alert-dialog.tsx +128 -128
- package/src/lib/components/ui/alert.tsx +60 -60
- package/src/lib/components/ui/avatar.tsx +38 -38
- package/src/lib/components/ui/badge.tsx +38 -38
- package/src/lib/components/ui/breadcrumb.tsx +102 -102
- package/src/lib/components/ui/button.tsx +51 -51
- package/src/lib/components/ui/calendar.tsx +69 -69
- package/src/lib/components/ui/card.tsx +47 -47
- package/src/lib/components/ui/checkbox.tsx +27 -27
- package/src/lib/components/ui/collapsible.tsx +33 -33
- package/src/lib/components/ui/command.tsx +133 -133
- package/src/lib/components/ui/dialog.tsx +116 -116
- package/src/lib/components/ui/dropdown-menu.tsx +220 -220
- package/src/lib/components/ui/form.tsx +141 -141
- package/src/lib/components/ui/hover-card.tsx +36 -36
- package/src/lib/components/ui/input.tsx +19 -19
- package/src/lib/components/ui/label.tsx +21 -21
- package/src/lib/components/ui/pagination.tsx +127 -127
- package/src/lib/components/ui/popover.tsx +40 -40
- package/src/lib/components/ui/scroll-area.tsx +50 -50
- package/src/lib/components/ui/select.tsx +161 -161
- package/src/lib/components/ui/separator.tsx +26 -26
- package/src/lib/components/ui/sheet.tsx +118 -118
- package/src/lib/components/ui/sidebar.tsx +696 -696
- package/src/lib/components/ui/skeleton.tsx +13 -13
- package/src/lib/components/ui/sonner.tsx +27 -27
- package/src/lib/components/ui/switch.tsx +26 -26
- package/src/lib/components/ui/table.tsx +82 -82
- package/src/lib/components/ui/tabs.tsx +48 -48
- package/src/lib/components/ui/textarea.tsx +18 -18
- package/src/lib/components/ui/tooltip.tsx +51 -51
- package/src/lib/constants.ts +326 -326
- package/src/lib/framework/component-registry/component-registry.tsx +70 -70
- package/src/lib/framework/component-registry/dynamic-component.tsx +58 -58
- package/src/lib/framework/dashboard-widget/base-widget.tsx +97 -97
- package/src/lib/framework/dashboard-widget/latest-orders-widget/index.tsx +96 -96
- package/src/lib/framework/dashboard-widget/latest-orders-widget/latest-orders-widget.graphql.ts +35 -35
- package/src/lib/framework/dashboard-widget/metrics-widget/chart.tsx +24 -24
- package/src/lib/framework/dashboard-widget/metrics-widget/index.tsx +82 -82
- package/src/lib/framework/dashboard-widget/metrics-widget/metrics-widget.graphql.ts +14 -14
- package/src/lib/framework/dashboard-widget/orders-summary/index.tsx +167 -167
- package/src/lib/framework/dashboard-widget/orders-summary/order-summary-widget.graphql.ts +14 -14
- package/src/lib/framework/dashboard-widget/types.ts +22 -22
- package/src/lib/framework/dashboard-widget/widget-extensions.tsx +19 -19
- package/src/lib/framework/defaults.ts +219 -219
- package/src/lib/framework/document-introspection/add-custom-fields.spec.ts +242 -242
- package/src/lib/framework/document-introspection/add-custom-fields.ts +246 -246
- package/src/lib/framework/document-introspection/get-document-structure.spec.ts +310 -310
- package/src/lib/framework/document-introspection/get-document-structure.ts +460 -460
- package/src/lib/framework/document-introspection/hooks.ts +10 -10
- package/src/lib/framework/extension-api/define-dashboard-extension.ts +66 -66
- package/src/lib/framework/extension-api/extension-api-types.ts +58 -58
- package/src/lib/framework/extension-api/use-dashboard-extensions.ts +26 -26
- package/src/lib/framework/form-engine/form-schema-tools.ts +98 -98
- package/src/lib/framework/form-engine/use-generated-form.tsx +116 -116
- package/src/lib/framework/layout-engine/layout-extensions.ts +30 -30
- package/src/lib/framework/layout-engine/location-wrapper.tsx +96 -96
- package/src/lib/framework/layout-engine/page-layout.tsx +272 -272
- package/src/lib/framework/nav-menu/nav-menu-extensions.ts +66 -66
- package/src/lib/framework/page/detail-page-route-loader.tsx +48 -48
- package/src/lib/framework/page/detail-page.tsx +131 -131
- package/src/lib/framework/page/list-page.tsx +166 -166
- package/src/lib/framework/page/page-api.ts +9 -9
- package/src/lib/framework/page/page-types.ts +51 -51
- package/src/lib/framework/page/use-detail-page.ts +217 -217
- package/src/lib/framework/page/use-extended-router.tsx +69 -69
- package/src/lib/framework/registry/global-registry.ts +46 -46
- package/src/lib/framework/registry/registry-types.ts +15 -15
- package/src/lib/graphql/api.ts +61 -61
- package/src/lib/graphql/fragments.tsx +54 -54
- package/src/lib/graphql/graphql-env.d.ts +499 -499
- package/src/lib/graphql/graphql.ts +15 -15
- package/src/lib/hooks/use-auth.tsx +11 -11
- package/src/lib/hooks/use-channel.ts +12 -12
- package/src/lib/hooks/use-custom-field-config.ts +10 -10
- package/src/lib/hooks/use-grouped-permissions.ts +54 -54
- package/src/lib/hooks/use-local-format.ts +119 -119
- package/src/lib/hooks/use-mobile.ts +19 -19
- package/src/lib/hooks/use-page.tsx +10 -10
- package/src/lib/hooks/use-permissions.ts +22 -22
- package/src/lib/hooks/use-server-config.ts +4 -4
- package/src/lib/hooks/use-theme.ts +10 -10
- package/src/lib/hooks/use-user-settings.tsx +12 -12
- package/src/lib/index.ts +149 -149
- package/src/lib/lib/trans.tsx +16 -16
- package/src/lib/lib/utils.ts +60 -60
- package/src/lib/providers/auth.tsx +152 -152
- package/src/lib/providers/channel-provider.tsx +121 -121
- package/src/lib/providers/i18n-provider.tsx +28 -28
- package/src/lib/providers/server-config.tsx +279 -279
- package/src/lib/providers/theme-provider.tsx +54 -54
- package/src/lib/providers/user-settings.tsx +89 -89
- package/src/lib/virtual.d.ts +12 -12
- package/vite/config-loader.ts +181 -181
- package/vite/constants.ts +280 -280
- package/vite/index.ts +1 -1
- package/vite/schema-generator.ts +40 -40
- package/vite/ui-config.ts +60 -60
- package/vite/vite-plugin-admin-api-schema.ts +141 -141
- package/vite/vite-plugin-config-loader.ts +64 -64
- package/vite/vite-plugin-config.ts +42 -42
- package/vite/vite-plugin-dashboard-metadata.ts +58 -58
- package/vite/vite-plugin-gql-tada.ts +62 -62
- package/vite/vite-plugin-theme.ts +195 -195
- package/vite/vite-plugin-ui-config.ts +60 -60
- package/vite/vite-plugin-vendure-dashboard.ts +118 -118
- package/dist/plugin/.vendure-dashboard-temp/dev-config.js +0 -227
- package/dist/plugin/.vendure-dashboard-temp/dev-config.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/api/api-extensions.js +0 -33
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/api/api-extensions.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/api/mv.resolver.js +0 -69
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/api/mv.resolver.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/config/mv-order-process.js +0 -110
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/config/mv-order-process.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/config/mv-order-seller-strategy.js +0 -134
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/config/mv-order-seller-strategy.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/config/mv-payment-handler.js +0 -86
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/config/mv-payment-handler.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/config/mv-shipping-eligibility-checker.js +0 -49
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/config/mv-shipping-eligibility-checker.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/config/mv-shipping-line-assignment-strategy.js +0 -57
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/config/mv-shipping-line-assignment-strategy.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/constants.js +0 -20
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/constants.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/multivendor.plugin.js +0 -151
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/multivendor.plugin.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/payment/mv-connect-sdk.js +0 -47
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/payment/mv-connect-sdk.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/service/mv.service.js +0 -222
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/service/mv.service.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/types.js +0 -4
- package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/types.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/package.json +0 -3
- package/dist/plugin/.vendure-dashboard-temp/schema.graphql +0 -6378
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/api/api-extensions.js +0 -103
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/api/api-extensions.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/api/product-entity.resolver.js +0 -105
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/api/product-entity.resolver.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/api/product-review-admin.resolver.js +0 -183
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/api/product-review-admin.resolver.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/api/product-review-entity.resolver.js +0 -113
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/api/product-review-entity.resolver.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/api/product-review-shop.resolver.js +0 -112
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/api/product-review-shop.resolver.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/entities/product-review.entity.js +0 -111
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/entities/product-review.entity.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/generated-admin-types.js +0 -616
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/generated-admin-types.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/generated-shop-types.js +0 -563
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/generated-shop-types.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/reviews-plugin.js +0 -135
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/reviews-plugin.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/types.js +0 -4
- package/dist/plugin/.vendure-dashboard-temp/test-plugins/reviews/types.js.map +0 -1
- package/dist/plugin/.vendure-dashboard-temp/tsconfig.json +0 -10
- package/dist/plugin/vite-plugin-set-root.d.ts +0 -4
- package/dist/plugin/vite-plugin-set-root.js +0 -15
- package/src/app/routeTree.gen.ts +0 -1372
package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/multivendor.plugin.js
DELETED
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "MultivendorPlugin", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return MultivendorPlugin;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _core = require("@vendure/core");
|
|
12
|
-
const _apiextensions = require("./api/api-extensions");
|
|
13
|
-
const _mvresolver = require("./api/mv.resolver");
|
|
14
|
-
const _mvorderprocess = require("./config/mv-order-process");
|
|
15
|
-
const _mvordersellerstrategy = require("./config/mv-order-seller-strategy");
|
|
16
|
-
const _mvpaymenthandler = require("./config/mv-payment-handler");
|
|
17
|
-
const _mvshippingeligibilitychecker = require("./config/mv-shipping-eligibility-checker");
|
|
18
|
-
const _mvshippinglineassignmentstrategy = require("./config/mv-shipping-line-assignment-strategy");
|
|
19
|
-
const _constants = require("./constants");
|
|
20
|
-
const _mvservice = require("./service/mv.service");
|
|
21
|
-
function _define_property(obj, key, value) {
|
|
22
|
-
if (key in obj) {
|
|
23
|
-
Object.defineProperty(obj, key, {
|
|
24
|
-
value: value,
|
|
25
|
-
enumerable: true,
|
|
26
|
-
configurable: true,
|
|
27
|
-
writable: true
|
|
28
|
-
});
|
|
29
|
-
} else {
|
|
30
|
-
obj[key] = value;
|
|
31
|
-
}
|
|
32
|
-
return obj;
|
|
33
|
-
}
|
|
34
|
-
function _ts_decorate(decorators, target, key, desc) {
|
|
35
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
36
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
37
|
-
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
38
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
39
|
-
}
|
|
40
|
-
function _ts_metadata(k, v) {
|
|
41
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
42
|
-
}
|
|
43
|
-
class MultivendorPlugin {
|
|
44
|
-
static init(options) {
|
|
45
|
-
MultivendorPlugin.options = options;
|
|
46
|
-
return MultivendorPlugin;
|
|
47
|
-
}
|
|
48
|
-
async onApplicationBootstrap() {
|
|
49
|
-
await this.ensureConnectedPaymentMethodExists();
|
|
50
|
-
}
|
|
51
|
-
async ensureConnectedPaymentMethodExists() {
|
|
52
|
-
const paymentMethod = await this.connection.rawConnection.getRepository(_core.PaymentMethod).findOne({
|
|
53
|
-
where: {
|
|
54
|
-
code: _constants.CONNECTED_PAYMENT_METHOD_CODE
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
if (!paymentMethod) {
|
|
58
|
-
const ctx = await this.requestContextService.create({
|
|
59
|
-
apiType: 'admin'
|
|
60
|
-
});
|
|
61
|
-
const allChannels = await this.connection.getRepository(ctx, _core.Channel).find();
|
|
62
|
-
const createdPaymentMethod = await this.paymentMethodService.create(ctx, {
|
|
63
|
-
code: _constants.CONNECTED_PAYMENT_METHOD_CODE,
|
|
64
|
-
enabled: true,
|
|
65
|
-
handler: {
|
|
66
|
-
code: _mvpaymenthandler.multivendorPaymentMethodHandler.code,
|
|
67
|
-
arguments: []
|
|
68
|
-
},
|
|
69
|
-
translations: [
|
|
70
|
-
{
|
|
71
|
-
languageCode: _core.LanguageCode.en,
|
|
72
|
-
name: 'Connected Payments'
|
|
73
|
-
}
|
|
74
|
-
]
|
|
75
|
-
});
|
|
76
|
-
await this.channelService.assignToChannels(ctx, _core.PaymentMethod, createdPaymentMethod.id, allChannels.map((c)=>c.id));
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
constructor(connection, channelService, requestContextService, paymentMethodService){
|
|
80
|
-
_define_property(this, "connection", void 0);
|
|
81
|
-
_define_property(this, "channelService", void 0);
|
|
82
|
-
_define_property(this, "requestContextService", void 0);
|
|
83
|
-
_define_property(this, "paymentMethodService", void 0);
|
|
84
|
-
this.connection = connection;
|
|
85
|
-
this.channelService = channelService;
|
|
86
|
-
this.requestContextService = requestContextService;
|
|
87
|
-
this.paymentMethodService = paymentMethodService;
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
_define_property(MultivendorPlugin, "options", void 0);
|
|
91
|
-
MultivendorPlugin = _ts_decorate([
|
|
92
|
-
(0, _core.VendurePlugin)({
|
|
93
|
-
imports: [
|
|
94
|
-
_core.PluginCommonModule
|
|
95
|
-
],
|
|
96
|
-
configuration: (config)=>{
|
|
97
|
-
config.customFields.Seller.push({
|
|
98
|
-
name: 'connectedAccountId',
|
|
99
|
-
label: [
|
|
100
|
-
{
|
|
101
|
-
languageCode: _core.LanguageCode.en,
|
|
102
|
-
value: 'Connected account ID'
|
|
103
|
-
}
|
|
104
|
-
],
|
|
105
|
-
description: [
|
|
106
|
-
{
|
|
107
|
-
languageCode: _core.LanguageCode.en,
|
|
108
|
-
value: 'The ID used to process connected payments'
|
|
109
|
-
}
|
|
110
|
-
],
|
|
111
|
-
type: 'string',
|
|
112
|
-
public: false
|
|
113
|
-
});
|
|
114
|
-
config.paymentOptions.paymentMethodHandlers.push(_mvpaymenthandler.multivendorPaymentMethodHandler);
|
|
115
|
-
const customDefaultOrderProcess = (0, _core.configureDefaultOrderProcess)({
|
|
116
|
-
checkFulfillmentStates: false
|
|
117
|
-
});
|
|
118
|
-
config.orderOptions.process = [
|
|
119
|
-
customDefaultOrderProcess,
|
|
120
|
-
_mvorderprocess.multivendorOrderProcess
|
|
121
|
-
];
|
|
122
|
-
config.orderOptions.orderSellerStrategy = new _mvordersellerstrategy.MultivendorSellerStrategy();
|
|
123
|
-
config.catalogOptions.productVariantPriceUpdateStrategy = new _core.DefaultProductVariantPriceUpdateStrategy({
|
|
124
|
-
syncPricesAcrossChannels: true
|
|
125
|
-
});
|
|
126
|
-
config.shippingOptions.shippingEligibilityCheckers.push(_mvshippingeligibilitychecker.multivendorShippingEligibilityChecker);
|
|
127
|
-
config.shippingOptions.shippingLineAssignmentStrategy = new _mvshippinglineassignmentstrategy.MultivendorShippingLineAssignmentStrategy();
|
|
128
|
-
return config;
|
|
129
|
-
},
|
|
130
|
-
shopApiExtensions: {
|
|
131
|
-
schema: _apiextensions.shopApiExtensions,
|
|
132
|
-
resolvers: [
|
|
133
|
-
_mvresolver.MultivendorResolver
|
|
134
|
-
]
|
|
135
|
-
},
|
|
136
|
-
providers: [
|
|
137
|
-
_mvservice.MultivendorService,
|
|
138
|
-
{
|
|
139
|
-
provide: _constants.MULTIVENDOR_PLUGIN_OPTIONS,
|
|
140
|
-
useFactory: ()=>MultivendorPlugin.options
|
|
141
|
-
}
|
|
142
|
-
]
|
|
143
|
-
}),
|
|
144
|
-
_ts_metadata("design:type", Function),
|
|
145
|
-
_ts_metadata("design:paramtypes", [
|
|
146
|
-
typeof _core.TransactionalConnection === "undefined" ? Object : _core.TransactionalConnection,
|
|
147
|
-
typeof _core.ChannelService === "undefined" ? Object : _core.ChannelService,
|
|
148
|
-
typeof _core.RequestContextService === "undefined" ? Object : _core.RequestContextService,
|
|
149
|
-
typeof _core.PaymentMethodService === "undefined" ? Object : _core.PaymentMethodService
|
|
150
|
-
])
|
|
151
|
-
], MultivendorPlugin);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"{\"version\":3,\"sources\":[\"C:\\\\Development\\\\vendure\\\\vendure\\\\packages\\\\dev-server\\\\example-plugins\\\\multivendor-plugin\\\\multivendor.plugin.ts\"],\"sourcesContent\":[\"import { OnApplicationBootstrap } from '@nestjs/common';\\r\\nimport {\\r\\n Channel,\\r\\n ChannelService,\\r\\n configureDefaultOrderProcess,\\r\\n DefaultProductVariantPriceUpdateStrategy,\\r\\n LanguageCode,\\r\\n PaymentMethod,\\r\\n PaymentMethodService,\\r\\n PluginCommonModule,\\r\\n RequestContextService,\\r\\n TransactionalConnection,\\r\\n VendurePlugin,\\r\\n} from '@vendure/core';\\r\\n\\r\\nimport { shopApiExtensions } from './api/api-extensions';\\r\\nimport { MultivendorResolver } from './api/mv.resolver';\\r\\nimport { multivendorOrderProcess } from './config/mv-order-process';\\r\\nimport { MultivendorSellerStrategy } from './config/mv-order-seller-strategy';\\r\\nimport { multivendorPaymentMethodHandler } from './config/mv-payment-handler';\\r\\nimport { multivendorShippingEligibilityChecker } from './config/mv-shipping-eligibility-checker';\\r\\nimport { MultivendorShippingLineAssignmentStrategy } from './config/mv-shipping-line-assignment-strategy';\\r\\nimport { CONNECTED_PAYMENT_METHOD_CODE, MULTIVENDOR_PLUGIN_OPTIONS } from './constants';\\r\\nimport { MultivendorService } from './service/mv.service';\\r\\nimport { MultivendorPluginOptions } from './types';\\r\\n\\r\\n/**\\r\\n * @description\\r\\n * This is an example of how to implement a multivendor marketplace app using the new features introduced in\\r\\n * Vendure v2.0.\\r\\n *\\r\\n * ## Setup\\r\\n *\\r\\n * Add this plugin to your VendureConfig:\\r\\n * ```ts\\r\\n * plugins: [\\r\\n * MultivendorPlugin.init({\\r\\n * platformFeePercent: 10,\\r\\n * platformFeeSKU: 'FEE',\\r\\n * }),\\r\\n * // ...\\r\\n * ]\\r\\n * ```\\r\\n *\\r\\n * ## Create a Seller\\r\\n *\\r\\n * Now you can create new sellers with the following mutation:\\r\\n *\\r\\n * ```graphql\\r\\n * mutation RegisterSeller {\\r\\n * registerNewSeller(input: {\\r\\n * shopName: \\\"Bob's Parts\\\",\\r\\n * seller {\\r\\n * firstName: \\\"Bob\\\"\\r\\n * lastName: \\\"Dobalina\\\"\\r\\n * emailAddress: \\\"bob@bobs-parts.com\\\"\\r\\n * password: \\\"test\\\",\\r\\n * }\\r\\n * }) {\\r\\n * id\\r\\n * code\\r\\n * token\\r\\n * }\\r\\n * }\\r\\n * ```\\r\\n *\\r\\n * This mutation will:\\r\\n *\\r\\n * - Create a new Seller representing the shop \\\"Bob's Parts\\\"\\r\\n * - Create a new Channel and associate it with the new Seller\\r\\n * - Create a Role & Administrator for Bob to access his shop admin account\\r\\n * - Create a ShippingMethod for Bob's shop\\r\\n * - Create a StockLocation for Bob's shop\\r\\n *\\r\\n * Bob can then go and sign in to the Admin UI using the provided emailAddress & password credentials, and start\\r\\n * creating some products.\\r\\n *\\r\\n * Repeat this process for more Sellers.\\r\\n *\\r\\n * ## Storefront\\r\\n *\\r\\n * To create a multivendor Order, use the default Channel in the storefront and add variants to an Order from\\r\\n * various Sellers.\\r\\n *\\r\\n * ### Shipping\\r\\n *\\r\\n * When it comes to setting the shipping method, the `eligibleShippingMethods` query should just return the\\r\\n * shipping methods for the shops from which the OrderLines come. So assuming the Order contains items from 3 different\\r\\n * Sellers, there should be at least 3 eligible ShippingMethods (plus any global ones from the default Channel).\\r\\n *\\r\\n * You should now select the IDs of all the Seller-specific ShippingMethods:\\r\\n *\\r\\n * ```graphql\\r\\n * mutation {\\r\\n * setOrderShippingMethod(shippingMethodId: [\\\"3\\\", \\\"4\\\"]) {\\r\\n * ... on Order {\\r\\n * id\\r\\n * }\\r\\n * }\\r\\n * }\\r\\n * ```\\r\\n *\\r\\n * ### Payment\\r\\n *\\r\\n * This plugin automatically creates a \\\"connected payment method\\\" in the default Channel, which is a simple simulation\\r\\n * of something like Stripe Connect.\\r\\n *\\r\\n * ```graphql\\r\\n * mutation {\\r\\n * addPaymentToOrder(input: { method: \\\"connected-payment-method\\\", metadata: {} }) {\\r\\n * ... on Order { id }\\r\\n * ... on ErrorResult {\\r\\n * errorCode\\r\\n * message\\r\\n * }\\r\\n * ... on PaymentFailedError {\\r\\n * paymentErrorMessage\\r\\n * }\\r\\n * }\\r\\n * }\\r\\n * ```\\r\\n *\\r\\n * After that, you should be able to see that the Order has been split into an \\\"aggregate\\\" order in the default Channel,\\r\\n * and then one or more \\\"seller\\\" orders in each Channel from which the customer bought items.\\r\\n */\\r\\n@VendurePlugin({\\r\\n imports: [PluginCommonModule],\\r\\n configuration: config => {\\r\\n config.customFields.Seller.push({\\r\\n name: 'connectedAccountId',\\r\\n label: [{ languageCode: LanguageCode.en, value: 'Connected account ID' }],\\r\\n description: [\\r\\n { languageCode: LanguageCode.en, value: 'The ID used to process connected payments' },\\r\\n ],\\r\\n type: 'string',\\r\\n public: false,\\r\\n });\\r\\n config.paymentOptions.paymentMethodHandlers.push(multivendorPaymentMethodHandler);\\r\\n\\r\\n const customDefaultOrderProcess = configureDefaultOrderProcess({\\r\\n checkFulfillmentStates: false,\\r\\n });\\r\\n config.orderOptions.process = [customDefaultOrderProcess, multivendorOrderProcess];\\r\\n config.orderOptions.orderSellerStrategy = new MultivendorSellerStrategy();\\r\\n config.catalogOptions.productVariantPriceUpdateStrategy =\\r\\n new DefaultProductVariantPriceUpdateStrategy({\\r\\n syncPricesAcrossChannels: true,\\r\\n });\\r\\n config.shippingOptions.shippingEligibilityCheckers.push(multivendorShippingEligibilityChecker);\\r\\n config.shippingOptions.shippingLineAssignmentStrategy =\\r\\n new MultivendorShippingLineAssignmentStrategy();\\r\\n return config;\\r\\n },\\r\\n shopApiExtensions: {\\r\\n schema: shopApiExtensions,\\r\\n resolvers: [MultivendorResolver],\\r\\n },\\r\\n providers: [\\r\\n MultivendorService,\\r\\n { provide: MULTIVENDOR_PLUGIN_OPTIONS, useFactory: () => MultivendorPlugin.options },\\r\\n ],\\r\\n})\\r\\nexport class MultivendorPlugin implements OnApplicationBootstrap {\\r\\n static options: MultivendorPluginOptions;\\r\\n\\r\\n constructor(\\r\\n private connection: TransactionalConnection,\\r\\n private channelService: ChannelService,\\r\\n private requestContextService: RequestContextService,\\r\\n private paymentMethodService: PaymentMethodService,\\r\\n ) {}\\r\\n\\r\\n static init(options: MultivendorPluginOptions) {\\r\\n MultivendorPlugin.options = options;\\r\\n return MultivendorPlugin;\\r\\n }\\r\\n\\r\\n async onApplicationBootstrap() {\\r\\n await this.ensureConnectedPaymentMethodExists();\\r\\n }\\r\\n\\r\\n private async ensureConnectedPaymentMethodExists() {\\r\\n const paymentMethod = await this.connection.rawConnection.getRepository(PaymentMethod).findOne({\\r\\n where: {\\r\\n code: CONNECTED_PAYMENT_METHOD_CODE,\\r\\n },\\r\\n });\\r\\n if (!paymentMethod) {\\r\\n const ctx = await this.requestContextService.create({ apiType: 'admin' });\\r\\n const allChannels = await this.connection.getRepository(ctx, Channel).find();\\r\\n const createdPaymentMethod = await this.paymentMethodService.create(ctx, {\\r\\n code: CONNECTED_PAYMENT_METHOD_CODE,\\r\\n enabled: true,\\r\\n handler: {\\r\\n code: multivendorPaymentMethodHandler.code,\\r\\n arguments: [],\\r\\n },\\r\\n translations: [\\r\\n {\\r\\n languageCode: LanguageCode.en,\\r\\n name: 'Connected Payments',\\r\\n },\\r\\n ],\\r\\n });\\r\\n await this.channelService.assignToChannels(\\r\\n ctx,\\r\\n PaymentMethod,\\r\\n createdPaymentMethod.id,\\r\\n allChannels.map(c => c.id),\\r\\n );\\r\\n }\\r\\n }\\r\\n}\\r\\n\"],\"names\":[\"MultivendorPlugin\",\"init\",\"options\",\"onApplicationBootstrap\",\"ensureConnectedPaymentMethodExists\",\"paymentMethod\",\"connection\",\"rawConnection\",\"getRepository\",\"PaymentMethod\",\"findOne\",\"where\",\"code\",\"CONNECTED_PAYMENT_METHOD_CODE\",\"ctx\",\"requestContextService\",\"create\",\"apiType\",\"allChannels\",\"Channel\",\"find\",\"createdPaymentMethod\",\"paymentMethodService\",\"enabled\",\"handler\",\"multivendorPaymentMethodHandler\",\"arguments\",\"translations\",\"languageCode\",\"LanguageCode\",\"en\",\"name\",\"channelService\",\"assignToChannels\",\"id\",\"map\",\"c\",\"constructor\",\"imports\",\"PluginCommonModule\",\"configuration\",\"config\",\"customFields\",\"Seller\",\"push\",\"label\",\"value\",\"description\",\"type\",\"public\",\"paymentOptions\",\"paymentMethodHandlers\",\"customDefaultOrderProcess\",\"configureDefaultOrderProcess\",\"checkFulfillmentStates\",\"orderOptions\",\"process\",\"multivendorOrderProcess\",\"orderSellerStrategy\",\"MultivendorSellerStrategy\",\"catalogOptions\",\"productVariantPriceUpdateStrategy\",\"DefaultProductVariantPriceUpdateStrategy\",\"syncPricesAcrossChannels\",\"shippingOptions\",\"shippingEligibilityCheckers\",\"multivendorShippingEligibilityChecker\",\"shippingLineAssignmentStrategy\",\"MultivendorShippingLineAssignmentStrategy\",\"shopApiExtensions\",\"schema\",\"resolvers\",\"MultivendorResolver\",\"providers\",\"MultivendorService\",\"provide\",\"MULTIVENDOR_PLUGIN_OPTIONS\",\"useFactory\"],\"mappings\":\"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\"}"
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @description
|
|
3
|
-
* A fake payment API based loosely on the Stripe Connect multiparty payments flow
|
|
4
|
-
* described here: https://stripe.com/docs/connect/charges-transfers
|
|
5
|
-
*/ "use strict";
|
|
6
|
-
Object.defineProperty(exports, "__esModule", {
|
|
7
|
-
value: true
|
|
8
|
-
});
|
|
9
|
-
Object.defineProperty(exports, "MyConnectSdk", {
|
|
10
|
-
enumerable: true,
|
|
11
|
-
get: function() {
|
|
12
|
-
return MyConnectSdk;
|
|
13
|
-
}
|
|
14
|
-
});
|
|
15
|
-
function _define_property(obj, key, value) {
|
|
16
|
-
if (key in obj) {
|
|
17
|
-
Object.defineProperty(obj, key, {
|
|
18
|
-
value: value,
|
|
19
|
-
enumerable: true,
|
|
20
|
-
configurable: true,
|
|
21
|
-
writable: true
|
|
22
|
-
});
|
|
23
|
-
} else {
|
|
24
|
-
obj[key] = value;
|
|
25
|
-
}
|
|
26
|
-
return obj;
|
|
27
|
-
}
|
|
28
|
-
class MyConnectSdk {
|
|
29
|
-
/**
|
|
30
|
-
* Used to create a payment on the platform itself.
|
|
31
|
-
*/ async createPayment(options) {
|
|
32
|
-
return {
|
|
33
|
-
transactionId: Math.random().toString(36).substring(3)
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Used to create a transfer payment to a Seller.
|
|
38
|
-
*/ async createTransfer(options) {
|
|
39
|
-
return {
|
|
40
|
-
transactionId: Math.random().toString(36).substring(3)
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
constructor(options){
|
|
44
|
-
_define_property(this, "options", void 0);
|
|
45
|
-
this.options = options;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"{\"version\":3,\"sources\":[\"C:\\\\Development\\\\vendure\\\\vendure\\\\packages\\\\dev-server\\\\example-plugins\\\\multivendor-plugin\\\\payment\\\\mv-connect-sdk.ts\"],\"sourcesContent\":[\"/**\\r\\n * @description\\r\\n * A fake payment API based loosely on the Stripe Connect multiparty payments flow\\r\\n * described here: https://stripe.com/docs/connect/charges-transfers\\r\\n */\\r\\nexport class MyConnectSdk {\\r\\n constructor(private options: { apiKey: string }) {}\\r\\n\\r\\n /**\\r\\n * Used to create a payment on the platform itself.\\r\\n */\\r\\n async createPayment(options: { amount: number; currency: string; transfer_group: string }) {\\r\\n return { transactionId: Math.random().toString(36).substring(3) };\\r\\n }\\r\\n\\r\\n /**\\r\\n * Used to create a transfer payment to a Seller.\\r\\n */\\r\\n async createTransfer(options: {\\r\\n amount: number;\\r\\n currency: string;\\r\\n connectedAccountId: string;\\r\\n transfer_group: string;\\r\\n }) {\\r\\n return { transactionId: Math.random().toString(36).substring(3) };\\r\\n }\\r\\n}\\r\\n\"],\"names\":[\"MyConnectSdk\",\"createPayment\",\"options\",\"transactionId\",\"Math\",\"random\",\"toString\",\"substring\",\"createTransfer\",\"constructor\"],\"mappings\":\"AAAA;;;;CAIC;;;;+BACYA;;;eAAAA;;;;;;;;;;;;;;;;AAAN,MAAMA;IAGT;;KAEC,GACD,MAAMC,cAAcC,OAAqE,EAAE;QACvF,OAAO;YAAEC,eAAeC,KAAKC,MAAM,GAAGC,QAAQ,CAAC,IAAIC,SAAS,CAAC;QAAG;IACpE;IAEA;;KAEC,GACD,MAAMC,eAAeN,OAKpB,EAAE;QACC,OAAO;YAAEC,eAAeC,KAAKC,MAAM,GAAGC,QAAQ,CAAC,IAAIC,SAAS,CAAC;QAAG;IACpE;IAnBAE,YAAY,AAAQP,OAA2B,CAAE;;aAA7BA,UAAAA;IAA8B;AAoBtD\"}"
|
package/dist/plugin/.vendure-dashboard-temp/example-plugins/multivendor-plugin/service/mv.service.js
DELETED
|
@@ -1,222 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "MultivendorService", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return MultivendorService;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _common = require("@nestjs/common");
|
|
12
|
-
const _generatedtypes = require("@vendure/common/lib/generated-types");
|
|
13
|
-
const _normalizestring = require("@vendure/common/lib/normalize-string");
|
|
14
|
-
const _core = require("@vendure/core");
|
|
15
|
-
const _mvshippingeligibilitychecker = require("../config/mv-shipping-eligibility-checker");
|
|
16
|
-
function _define_property(obj, key, value) {
|
|
17
|
-
if (key in obj) {
|
|
18
|
-
Object.defineProperty(obj, key, {
|
|
19
|
-
value: value,
|
|
20
|
-
enumerable: true,
|
|
21
|
-
configurable: true,
|
|
22
|
-
writable: true
|
|
23
|
-
});
|
|
24
|
-
} else {
|
|
25
|
-
obj[key] = value;
|
|
26
|
-
}
|
|
27
|
-
return obj;
|
|
28
|
-
}
|
|
29
|
-
function _ts_decorate(decorators, target, key, desc) {
|
|
30
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
31
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
32
|
-
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
33
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
34
|
-
}
|
|
35
|
-
function _ts_metadata(k, v) {
|
|
36
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
37
|
-
}
|
|
38
|
-
class MultivendorService {
|
|
39
|
-
async registerNewSeller(ctx, input) {
|
|
40
|
-
const superAdminCtx = await this.getSuperAdminContext(ctx);
|
|
41
|
-
const channel = await this.createSellerChannelRoleAdmin(superAdminCtx, input);
|
|
42
|
-
await this.createSellerShippingMethod(superAdminCtx, input.shopName, channel);
|
|
43
|
-
await this.createSellerStockLocation(superAdminCtx, input.shopName, channel);
|
|
44
|
-
return channel;
|
|
45
|
-
}
|
|
46
|
-
async createSellerShippingMethod(ctx, shopName, sellerChannel) {
|
|
47
|
-
const defaultChannel = await this.channelService.getDefaultChannel(ctx);
|
|
48
|
-
const { shippingEligibilityCheckers, shippingCalculators, fulfillmentHandlers } = this.configService.shippingOptions;
|
|
49
|
-
const shopCode = (0, _normalizestring.normalizeString)(shopName, '-');
|
|
50
|
-
const checker = shippingEligibilityCheckers.find((c)=>c.code === _mvshippingeligibilitychecker.multivendorShippingEligibilityChecker.code);
|
|
51
|
-
const calculator = shippingCalculators.find((c)=>c.code === _core.defaultShippingCalculator.code);
|
|
52
|
-
const fulfillmentHandler = fulfillmentHandlers.find((h)=>h.code === _core.manualFulfillmentHandler.code);
|
|
53
|
-
if (!checker) {
|
|
54
|
-
throw new _core.InternalServerError('Could not find a suitable ShippingEligibilityChecker for the seller');
|
|
55
|
-
}
|
|
56
|
-
if (!calculator) {
|
|
57
|
-
throw new _core.InternalServerError('Could not find a suitable ShippingCalculator for the seller');
|
|
58
|
-
}
|
|
59
|
-
if (!fulfillmentHandler) {
|
|
60
|
-
throw new _core.InternalServerError('Could not find a suitable FulfillmentHandler for the seller');
|
|
61
|
-
}
|
|
62
|
-
const shippingMethod = await this.shippingMethodService.create(ctx, {
|
|
63
|
-
code: `${shopCode}-shipping`,
|
|
64
|
-
checker: {
|
|
65
|
-
code: checker.code,
|
|
66
|
-
arguments: []
|
|
67
|
-
},
|
|
68
|
-
calculator: {
|
|
69
|
-
code: calculator.code,
|
|
70
|
-
arguments: [
|
|
71
|
-
{
|
|
72
|
-
name: 'rate',
|
|
73
|
-
value: '500'
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
name: 'includesTax',
|
|
77
|
-
value: _core.TaxSetting.auto
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
name: 'taxRate',
|
|
81
|
-
value: '20'
|
|
82
|
-
}
|
|
83
|
-
]
|
|
84
|
-
},
|
|
85
|
-
fulfillmentHandler: fulfillmentHandler.code,
|
|
86
|
-
translations: [
|
|
87
|
-
{
|
|
88
|
-
languageCode: defaultChannel.defaultLanguageCode,
|
|
89
|
-
name: `Standard Shipping for ${shopName}`
|
|
90
|
-
}
|
|
91
|
-
]
|
|
92
|
-
});
|
|
93
|
-
await this.channelService.assignToChannels(ctx, _core.ShippingMethod, shippingMethod.id, [
|
|
94
|
-
sellerChannel.id
|
|
95
|
-
]);
|
|
96
|
-
}
|
|
97
|
-
async createSellerStockLocation(ctx, shopName, sellerChannel) {
|
|
98
|
-
const stockLocation = await this.stockLocationService.create(ctx, {
|
|
99
|
-
name: `${shopName} Warehouse`
|
|
100
|
-
});
|
|
101
|
-
await this.channelService.assignToChannels(ctx, _core.StockLocation, stockLocation.id, [
|
|
102
|
-
sellerChannel.id
|
|
103
|
-
]);
|
|
104
|
-
}
|
|
105
|
-
async createSellerChannelRoleAdmin(ctx, input) {
|
|
106
|
-
const defaultChannel = await this.channelService.getDefaultChannel(ctx);
|
|
107
|
-
const shopCode = (0, _normalizestring.normalizeString)(input.shopName, '-');
|
|
108
|
-
const seller = await this.sellerService.create(ctx, {
|
|
109
|
-
name: input.shopName,
|
|
110
|
-
customFields: {
|
|
111
|
-
// This simulates a connection to a payment provider,
|
|
112
|
-
// which would supply the connected account ID.
|
|
113
|
-
// In this case we just use a pseudo-random string
|
|
114
|
-
connectedAccountId: Math.random().toString(30).substring(3)
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
const channel = await this.channelService.create(ctx, {
|
|
118
|
-
code: shopCode,
|
|
119
|
-
sellerId: seller.id,
|
|
120
|
-
token: `${shopCode}-token`,
|
|
121
|
-
currencyCode: defaultChannel.defaultCurrencyCode,
|
|
122
|
-
defaultLanguageCode: defaultChannel.defaultLanguageCode,
|
|
123
|
-
pricesIncludeTax: defaultChannel.pricesIncludeTax,
|
|
124
|
-
defaultShippingZoneId: defaultChannel.defaultShippingZone.id,
|
|
125
|
-
defaultTaxZoneId: defaultChannel.defaultTaxZone.id
|
|
126
|
-
});
|
|
127
|
-
if ((0, _core.isGraphQlErrorResult)(channel)) {
|
|
128
|
-
throw new _core.InternalServerError(channel.message);
|
|
129
|
-
}
|
|
130
|
-
const superAdminRole = await this.roleService.getSuperAdminRole(ctx);
|
|
131
|
-
const customerRole = await this.roleService.getCustomerRole(ctx);
|
|
132
|
-
await this.roleService.assignRoleToChannel(ctx, superAdminRole.id, channel.id);
|
|
133
|
-
const role = await this.roleService.create(ctx, {
|
|
134
|
-
code: `${shopCode}-admin`,
|
|
135
|
-
channelIds: [
|
|
136
|
-
channel.id
|
|
137
|
-
],
|
|
138
|
-
description: `Administrator of ${input.shopName}`,
|
|
139
|
-
permissions: [
|
|
140
|
-
_generatedtypes.Permission.CreateCatalog,
|
|
141
|
-
_generatedtypes.Permission.UpdateCatalog,
|
|
142
|
-
_generatedtypes.Permission.ReadCatalog,
|
|
143
|
-
_generatedtypes.Permission.DeleteCatalog,
|
|
144
|
-
_generatedtypes.Permission.CreateOrder,
|
|
145
|
-
_generatedtypes.Permission.ReadOrder,
|
|
146
|
-
_generatedtypes.Permission.UpdateOrder,
|
|
147
|
-
_generatedtypes.Permission.DeleteOrder,
|
|
148
|
-
_generatedtypes.Permission.ReadCustomer,
|
|
149
|
-
_generatedtypes.Permission.ReadPaymentMethod,
|
|
150
|
-
_generatedtypes.Permission.ReadShippingMethod,
|
|
151
|
-
_generatedtypes.Permission.ReadPromotion,
|
|
152
|
-
_generatedtypes.Permission.ReadCountry,
|
|
153
|
-
_generatedtypes.Permission.ReadZone,
|
|
154
|
-
_generatedtypes.Permission.CreateCustomer,
|
|
155
|
-
_generatedtypes.Permission.UpdateCustomer,
|
|
156
|
-
_generatedtypes.Permission.DeleteCustomer,
|
|
157
|
-
_generatedtypes.Permission.CreateTag,
|
|
158
|
-
_generatedtypes.Permission.ReadTag,
|
|
159
|
-
_generatedtypes.Permission.UpdateTag,
|
|
160
|
-
_generatedtypes.Permission.DeleteTag
|
|
161
|
-
]
|
|
162
|
-
});
|
|
163
|
-
const administrator = await this.administratorService.create(ctx, {
|
|
164
|
-
firstName: input.seller.firstName,
|
|
165
|
-
lastName: input.seller.lastName,
|
|
166
|
-
emailAddress: input.seller.emailAddress,
|
|
167
|
-
password: input.seller.password,
|
|
168
|
-
roleIds: [
|
|
169
|
-
role.id
|
|
170
|
-
]
|
|
171
|
-
});
|
|
172
|
-
return channel;
|
|
173
|
-
}
|
|
174
|
-
async getSuperAdminContext(ctx) {
|
|
175
|
-
const { superadminCredentials } = this.configService.authOptions;
|
|
176
|
-
const superAdminUser = await this.connection.getRepository(ctx, _core.User).findOne({
|
|
177
|
-
where: {
|
|
178
|
-
identifier: superadminCredentials.identifier
|
|
179
|
-
}
|
|
180
|
-
});
|
|
181
|
-
return this.requestContextService.create({
|
|
182
|
-
apiType: 'shop',
|
|
183
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
184
|
-
user: superAdminUser
|
|
185
|
-
});
|
|
186
|
-
}
|
|
187
|
-
constructor(administratorService, sellerService, roleService, channelService, shippingMethodService, configService, stockLocationService, requestContextService, connection){
|
|
188
|
-
_define_property(this, "administratorService", void 0);
|
|
189
|
-
_define_property(this, "sellerService", void 0);
|
|
190
|
-
_define_property(this, "roleService", void 0);
|
|
191
|
-
_define_property(this, "channelService", void 0);
|
|
192
|
-
_define_property(this, "shippingMethodService", void 0);
|
|
193
|
-
_define_property(this, "configService", void 0);
|
|
194
|
-
_define_property(this, "stockLocationService", void 0);
|
|
195
|
-
_define_property(this, "requestContextService", void 0);
|
|
196
|
-
_define_property(this, "connection", void 0);
|
|
197
|
-
this.administratorService = administratorService;
|
|
198
|
-
this.sellerService = sellerService;
|
|
199
|
-
this.roleService = roleService;
|
|
200
|
-
this.channelService = channelService;
|
|
201
|
-
this.shippingMethodService = shippingMethodService;
|
|
202
|
-
this.configService = configService;
|
|
203
|
-
this.stockLocationService = stockLocationService;
|
|
204
|
-
this.requestContextService = requestContextService;
|
|
205
|
-
this.connection = connection;
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
MultivendorService = _ts_decorate([
|
|
209
|
-
(0, _common.Injectable)(),
|
|
210
|
-
_ts_metadata("design:type", Function),
|
|
211
|
-
_ts_metadata("design:paramtypes", [
|
|
212
|
-
typeof _core.AdministratorService === "undefined" ? Object : _core.AdministratorService,
|
|
213
|
-
typeof _core.SellerService === "undefined" ? Object : _core.SellerService,
|
|
214
|
-
typeof _core.RoleService === "undefined" ? Object : _core.RoleService,
|
|
215
|
-
typeof _core.ChannelService === "undefined" ? Object : _core.ChannelService,
|
|
216
|
-
typeof _core.ShippingMethodService === "undefined" ? Object : _core.ShippingMethodService,
|
|
217
|
-
typeof _core.ConfigService === "undefined" ? Object : _core.ConfigService,
|
|
218
|
-
typeof _core.StockLocationService === "undefined" ? Object : _core.StockLocationService,
|
|
219
|
-
typeof _core.RequestContextService === "undefined" ? Object : _core.RequestContextService,
|
|
220
|
-
typeof _core.TransactionalConnection === "undefined" ? Object : _core.TransactionalConnection
|
|
221
|
-
])
|
|
222
|
-
], MultivendorService);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"{\"version\":3,\"sources\":[\"C:\\\\Development\\\\vendure\\\\vendure\\\\packages\\\\dev-server\\\\example-plugins\\\\multivendor-plugin\\\\service\\\\mv.service.ts\"],\"sourcesContent\":[\"import { Injectable } from '@nestjs/common';\\r\\nimport { CreateAdministratorInput, Permission } from '@vendure/common/lib/generated-types';\\r\\nimport { normalizeString } from '@vendure/common/lib/normalize-string';\\r\\nimport {\\r\\n AdministratorService,\\r\\n Channel,\\r\\n ChannelService,\\r\\n ConfigService,\\r\\n defaultShippingCalculator,\\r\\n InternalServerError,\\r\\n isGraphQlErrorResult,\\r\\n manualFulfillmentHandler,\\r\\n RequestContext,\\r\\n RequestContextService,\\r\\n RoleService,\\r\\n SellerService,\\r\\n ShippingMethod,\\r\\n ShippingMethodService,\\r\\n StockLocation,\\r\\n StockLocationService,\\r\\n TaxSetting,\\r\\n TransactionalConnection,\\r\\n User,\\r\\n} from '@vendure/core';\\r\\n\\r\\nimport { multivendorShippingEligibilityChecker } from '../config/mv-shipping-eligibility-checker';\\r\\nimport { CreateSellerInput } from '../types';\\r\\n\\r\\n@Injectable()\\r\\nexport class MultivendorService {\\r\\n constructor(\\r\\n private administratorService: AdministratorService,\\r\\n private sellerService: SellerService,\\r\\n private roleService: RoleService,\\r\\n private channelService: ChannelService,\\r\\n private shippingMethodService: ShippingMethodService,\\r\\n private configService: ConfigService,\\r\\n private stockLocationService: StockLocationService,\\r\\n private requestContextService: RequestContextService,\\r\\n private connection: TransactionalConnection,\\r\\n ) {}\\r\\n\\r\\n async registerNewSeller(ctx: RequestContext, input: { shopName: string; seller: CreateSellerInput }) {\\r\\n const superAdminCtx = await this.getSuperAdminContext(ctx);\\r\\n const channel = await this.createSellerChannelRoleAdmin(superAdminCtx, input);\\r\\n await this.createSellerShippingMethod(superAdminCtx, input.shopName, channel);\\r\\n await this.createSellerStockLocation(superAdminCtx, input.shopName, channel);\\r\\n return channel;\\r\\n }\\r\\n\\r\\n private async createSellerShippingMethod(ctx: RequestContext, shopName: string, sellerChannel: Channel) {\\r\\n const defaultChannel = await this.channelService.getDefaultChannel(ctx);\\r\\n const { shippingEligibilityCheckers, shippingCalculators, fulfillmentHandlers } =\\r\\n this.configService.shippingOptions;\\r\\n const shopCode = normalizeString(shopName, '-');\\r\\n const checker = shippingEligibilityCheckers.find(\\r\\n c => c.code === multivendorShippingEligibilityChecker.code,\\r\\n );\\r\\n const calculator = shippingCalculators.find(c => c.code === defaultShippingCalculator.code);\\r\\n const fulfillmentHandler = fulfillmentHandlers.find(h => h.code === manualFulfillmentHandler.code);\\r\\n if (!checker) {\\r\\n throw new InternalServerError(\\r\\n 'Could not find a suitable ShippingEligibilityChecker for the seller',\\r\\n );\\r\\n }\\r\\n if (!calculator) {\\r\\n throw new InternalServerError('Could not find a suitable ShippingCalculator for the seller');\\r\\n }\\r\\n if (!fulfillmentHandler) {\\r\\n throw new InternalServerError('Could not find a suitable FulfillmentHandler for the seller');\\r\\n }\\r\\n const shippingMethod = await this.shippingMethodService.create(ctx, {\\r\\n code: `${shopCode}-shipping`,\\r\\n checker: {\\r\\n code: checker.code,\\r\\n arguments: [],\\r\\n },\\r\\n calculator: {\\r\\n code: calculator.code,\\r\\n arguments: [\\r\\n { name: 'rate', value: '500' },\\r\\n { name: 'includesTax', value: TaxSetting.auto },\\r\\n { name: 'taxRate', value: '20' },\\r\\n ],\\r\\n },\\r\\n fulfillmentHandler: fulfillmentHandler.code,\\r\\n translations: [\\r\\n {\\r\\n languageCode: defaultChannel.defaultLanguageCode,\\r\\n name: `Standard Shipping for ${shopName}`,\\r\\n },\\r\\n ],\\r\\n });\\r\\n\\r\\n await this.channelService.assignToChannels(ctx, ShippingMethod, shippingMethod.id, [\\r\\n sellerChannel.id,\\r\\n ]);\\r\\n }\\r\\n\\r\\n private async createSellerStockLocation(ctx: RequestContext, shopName: string, sellerChannel: Channel) {\\r\\n const stockLocation = await this.stockLocationService.create(ctx, {\\r\\n name: `${shopName} Warehouse`,\\r\\n });\\r\\n await this.channelService.assignToChannels(ctx, StockLocation, stockLocation.id, [sellerChannel.id]);\\r\\n }\\r\\n\\r\\n private async createSellerChannelRoleAdmin(\\r\\n ctx: RequestContext,\\r\\n input: { shopName: string; seller: CreateSellerInput },\\r\\n ) {\\r\\n const defaultChannel = await this.channelService.getDefaultChannel(ctx);\\r\\n const shopCode = normalizeString(input.shopName, '-');\\r\\n const seller = await this.sellerService.create(ctx, {\\r\\n name: input.shopName,\\r\\n customFields: {\\r\\n // This simulates a connection to a payment provider,\\r\\n // which would supply the connected account ID.\\r\\n // In this case we just use a pseudo-random string\\r\\n connectedAccountId: Math.random().toString(30).substring(3),\\r\\n },\\r\\n });\\r\\n const channel = await this.channelService.create(ctx, {\\r\\n code: shopCode,\\r\\n sellerId: seller.id,\\r\\n token: `${shopCode}-token`,\\r\\n currencyCode: defaultChannel.defaultCurrencyCode,\\r\\n defaultLanguageCode: defaultChannel.defaultLanguageCode,\\r\\n pricesIncludeTax: defaultChannel.pricesIncludeTax,\\r\\n defaultShippingZoneId: defaultChannel.defaultShippingZone.id,\\r\\n defaultTaxZoneId: defaultChannel.defaultTaxZone.id,\\r\\n });\\r\\n if (isGraphQlErrorResult(channel)) {\\r\\n throw new InternalServerError(channel.message);\\r\\n }\\r\\n const superAdminRole = await this.roleService.getSuperAdminRole(ctx);\\r\\n const customerRole = await this.roleService.getCustomerRole(ctx);\\r\\n await this.roleService.assignRoleToChannel(ctx, superAdminRole.id, channel.id);\\r\\n const role = await this.roleService.create(ctx, {\\r\\n code: `${shopCode}-admin`,\\r\\n channelIds: [channel.id],\\r\\n description: `Administrator of ${input.shopName}`,\\r\\n permissions: [\\r\\n Permission.CreateCatalog,\\r\\n Permission.UpdateCatalog,\\r\\n Permission.ReadCatalog,\\r\\n Permission.DeleteCatalog,\\r\\n Permission.CreateOrder,\\r\\n Permission.ReadOrder,\\r\\n Permission.UpdateOrder,\\r\\n Permission.DeleteOrder,\\r\\n Permission.ReadCustomer,\\r\\n Permission.ReadPaymentMethod,\\r\\n Permission.ReadShippingMethod,\\r\\n Permission.ReadPromotion,\\r\\n Permission.ReadCountry,\\r\\n Permission.ReadZone,\\r\\n Permission.CreateCustomer,\\r\\n Permission.UpdateCustomer,\\r\\n Permission.DeleteCustomer,\\r\\n Permission.CreateTag,\\r\\n Permission.ReadTag,\\r\\n Permission.UpdateTag,\\r\\n Permission.DeleteTag,\\r\\n ],\\r\\n });\\r\\n const administrator = await this.administratorService.create(ctx, {\\r\\n firstName: input.seller.firstName,\\r\\n lastName: input.seller.lastName,\\r\\n emailAddress: input.seller.emailAddress,\\r\\n password: input.seller.password,\\r\\n roleIds: [role.id],\\r\\n });\\r\\n return channel;\\r\\n }\\r\\n\\r\\n private async getSuperAdminContext(ctx: RequestContext): Promise<RequestContext> {\\r\\n const { superadminCredentials } = this.configService.authOptions;\\r\\n const superAdminUser = await this.connection.getRepository(ctx, User).findOne({\\r\\n where: {\\r\\n identifier: superadminCredentials.identifier,\\r\\n },\\r\\n });\\r\\n return this.requestContextService.create({\\r\\n apiType: 'shop',\\r\\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\\r\\n user: superAdminUser!,\\r\\n });\\r\\n }\\r\\n}\\r\\n\"],\"names\":[\"MultivendorService\",\"registerNewSeller\",\"ctx\",\"input\",\"superAdminCtx\",\"getSuperAdminContext\",\"channel\",\"createSellerChannelRoleAdmin\",\"createSellerShippingMethod\",\"shopName\",\"createSellerStockLocation\",\"sellerChannel\",\"defaultChannel\",\"channelService\",\"getDefaultChannel\",\"shippingEligibilityCheckers\",\"shippingCalculators\",\"fulfillmentHandlers\",\"configService\",\"shippingOptions\",\"shopCode\",\"normalizeString\",\"checker\",\"find\",\"c\",\"code\",\"multivendorShippingEligibilityChecker\",\"calculator\",\"defaultShippingCalculator\",\"fulfillmentHandler\",\"h\",\"manualFulfillmentHandler\",\"InternalServerError\",\"shippingMethod\",\"shippingMethodService\",\"create\",\"arguments\",\"name\",\"value\",\"TaxSetting\",\"auto\",\"translations\",\"languageCode\",\"defaultLanguageCode\",\"assignToChannels\",\"ShippingMethod\",\"id\",\"stockLocation\",\"stockLocationService\",\"StockLocation\",\"seller\",\"sellerService\",\"customFields\",\"connectedAccountId\",\"Math\",\"random\",\"toString\",\"substring\",\"sellerId\",\"token\",\"currencyCode\",\"defaultCurrencyCode\",\"pricesIncludeTax\",\"defaultShippingZoneId\",\"defaultShippingZone\",\"defaultTaxZoneId\",\"defaultTaxZone\",\"isGraphQlErrorResult\",\"message\",\"superAdminRole\",\"roleService\",\"getSuperAdminRole\",\"customerRole\",\"getCustomerRole\",\"assignRoleToChannel\",\"role\",\"channelIds\",\"description\",\"permissions\",\"Permission\",\"CreateCatalog\",\"UpdateCatalog\",\"ReadCatalog\",\"DeleteCatalog\",\"CreateOrder\",\"ReadOrder\",\"UpdateOrder\",\"DeleteOrder\",\"ReadCustomer\",\"ReadPaymentMethod\",\"ReadShippingMethod\",\"ReadPromotion\",\"ReadCountry\",\"ReadZone\",\"CreateCustomer\",\"UpdateCustomer\",\"DeleteCustomer\",\"CreateTag\",\"ReadTag\",\"UpdateTag\",\"DeleteTag\",\"administrator\",\"administratorService\",\"firstName\",\"lastName\",\"emailAddress\",\"password\",\"roleIds\",\"superadminCredentials\",\"authOptions\",\"superAdminUser\",\"connection\",\"getRepository\",\"User\",\"findOne\",\"where\",\"identifier\",\"requestContextService\",\"apiType\",\"user\",\"constructor\"],\"mappings\":\"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\"}"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"{\"version\":3,\"sources\":[],\"names\":[],\"mappings\":\"\"}"
|