Jelajahi Sumber

refactor(admin-ui): Split admin ui into library of sub-packages

This allows the admin-ui to be easily rebuilt with extensions by the ui-devkit package
Michael Bromley 5 tahun lalu
induk
melakukan
1622b146d7
100 mengubah file dengan 247 tambahan dan 436 penghapusan
  1. 1 9
      packages/admin-ui/.gitignore
  2. 2 2
      packages/admin-ui/.npmignore
  3. 15 2
      packages/admin-ui/README.md
  4. 12 95
      packages/admin-ui/angular.json
  5. 0 19
      packages/admin-ui/ng-package.json
  6. 6 6
      packages/admin-ui/package.json
  7. 32 18
      packages/admin-ui/scripts/build-public-api.js
  8. 8 0
      packages/admin-ui/scripts/copy-package-json.js
  9. 3 2
      packages/admin-ui/scripts/set-version.js
  10. 1 2
      packages/admin-ui/src/app/app.module.ts
  11. 8 10
      packages/admin-ui/src/app/app.routes.ts
  12. 0 15
      packages/admin-ui/src/app/extensions/lazy-extensions.module.ts
  13. 0 15
      packages/admin-ui/src/app/extensions/shared-extensions.module.ts
  14. 0 76
      packages/admin-ui/src/app/shared/shared-declarations.ts
  15. 0 4
      packages/admin-ui/src/environments/environment.prod.ts
  16. 0 5
      packages/admin-ui/src/environments/environment.ts
  17. 0 1
      packages/admin-ui/src/environments/version.ts
  18. 7 0
      packages/admin-ui/src/lib/catalog/ng-package.json
  19. 1 2
      packages/admin-ui/src/lib/catalog/src/catalog.module.ts
  20. 5 9
      packages/admin-ui/src/lib/catalog/src/catalog.routes.ts
  21. 0 0
      packages/admin-ui/src/lib/catalog/src/components/apply-facet-dialog/apply-facet-dialog.component.html
  22. 0 0
      packages/admin-ui/src/lib/catalog/src/components/apply-facet-dialog/apply-facet-dialog.component.scss
  23. 2 2
      packages/admin-ui/src/lib/catalog/src/components/apply-facet-dialog/apply-facet-dialog.component.ts
  24. 0 0
      packages/admin-ui/src/lib/catalog/src/components/asset-detail/asset-detail.component.html
  25. 0 0
      packages/admin-ui/src/lib/catalog/src/components/asset-detail/asset-detail.component.scss
  26. 2 6
      packages/admin-ui/src/lib/catalog/src/components/asset-detail/asset-detail.component.ts
  27. 0 0
      packages/admin-ui/src/lib/catalog/src/components/asset-list/asset-list.component.html
  28. 0 0
      packages/admin-ui/src/lib/catalog/src/components/asset-list/asset-list.component.scss
  29. 1 5
      packages/admin-ui/src/lib/catalog/src/components/asset-list/asset-list.component.ts
  30. 0 0
      packages/admin-ui/src/lib/catalog/src/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.html
  31. 0 0
      packages/admin-ui/src/lib/catalog/src/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.scss
  32. 4 4
      packages/admin-ui/src/lib/catalog/src/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.ts
  33. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-contents/collection-contents.component.html
  34. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-contents/collection-contents.component.scss
  35. 2 2
      packages/admin-ui/src/lib/catalog/src/components/collection-contents/collection-contents.component.ts
  36. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-detail/collection-detail.component.html
  37. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-detail/collection-detail.component.scss
  38. 11 18
      packages/admin-ui/src/lib/catalog/src/components/collection-detail/collection-detail.component.ts
  39. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-list/collection-list.component.html
  40. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-list/collection-list.component.scss
  41. 2 5
      packages/admin-ui/src/lib/catalog/src/components/collection-list/collection-list.component.ts
  42. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-tree/array-to-tree.spec.ts
  43. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-tree/array-to-tree.ts
  44. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree-node.component.html
  45. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree-node.component.scss
  46. 2 2
      packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree-node.component.ts
  47. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree.component.html
  48. 0 0
      packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree.component.scss
  49. 1 1
      packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree.component.ts
  50. 0 0
      packages/admin-ui/src/lib/catalog/src/components/facet-detail/facet-detail.component.html
  51. 0 0
      packages/admin-ui/src/lib/catalog/src/components/facet-detail/facet-detail.component.scss
  52. 11 12
      packages/admin-ui/src/lib/catalog/src/components/facet-detail/facet-detail.component.ts
  53. 0 0
      packages/admin-ui/src/lib/catalog/src/components/facet-list/facet-list.component.html
  54. 0 0
      packages/admin-ui/src/lib/catalog/src/components/facet-list/facet-list.component.scss
  55. 5 5
      packages/admin-ui/src/lib/catalog/src/components/facet-list/facet-list.component.ts
  56. 0 0
      packages/admin-ui/src/lib/catalog/src/components/generate-product-variants/generate-product-variants.component.html
  57. 0 0
      packages/admin-ui/src/lib/catalog/src/components/generate-product-variants/generate-product-variants.component.scss
  58. 2 2
      packages/admin-ui/src/lib/catalog/src/components/generate-product-variants/generate-product-variants.component.ts
  59. 0 0
      packages/admin-ui/src/lib/catalog/src/components/option-value-input/option-value-input.component.html
  60. 0 0
      packages/admin-ui/src/lib/catalog/src/components/option-value-input/option-value-input.component.scss
  61. 0 0
      packages/admin-ui/src/lib/catalog/src/components/option-value-input/option-value-input.component.ts
  62. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-assets/product-assets.component.html
  63. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-assets/product-assets.component.scss
  64. 2 6
      packages/admin-ui/src/lib/catalog/src/components/product-assets/product-assets.component.ts
  65. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-detail/product-detail.component.html
  66. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-detail/product-detail.component.scss
  67. 13 24
      packages/admin-ui/src/lib/catalog/src/components/product-detail/product-detail.component.ts
  68. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-list/product-list.component.html
  69. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-list/product-list.component.scss
  70. 6 6
      packages/admin-ui/src/lib/catalog/src/components/product-list/product-list.component.ts
  71. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-search-input/product-search-input.component.html
  72. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-search-input/product-search-input.component.scss
  73. 1 1
      packages/admin-ui/src/lib/catalog/src/components/product-search-input/product-search-input.component.ts
  74. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-search-input/product-search-selection-model.ts
  75. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-variants-editor/product-variants-editor.component.html
  76. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-variants-editor/product-variants-editor.component.scss
  77. 11 11
      packages/admin-ui/src/lib/catalog/src/components/product-variants-editor/product-variants-editor.component.ts
  78. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-variants-list/product-variants-list.component.html
  79. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-variants-list/product-variants-list.component.scss
  80. 3 3
      packages/admin-ui/src/lib/catalog/src/components/product-variants-list/product-variants-list.component.ts
  81. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-variants-table/product-variants-table.component.html
  82. 0 0
      packages/admin-ui/src/lib/catalog/src/components/product-variants-table/product-variants-table.component.scss
  83. 1 1
      packages/admin-ui/src/lib/catalog/src/components/product-variants-table/product-variants-table.component.ts
  84. 0 0
      packages/admin-ui/src/lib/catalog/src/components/update-product-option-dialog/update-product-option-dialog.component.html
  85. 0 0
      packages/admin-ui/src/lib/catalog/src/components/update-product-option-dialog/update-product-option-dialog.component.scss
  86. 3 4
      packages/admin-ui/src/lib/catalog/src/components/update-product-option-dialog/update-product-option-dialog.component.ts
  87. 0 0
      packages/admin-ui/src/lib/catalog/src/components/variant-price-detail/variant-price-detail.component.html
  88. 0 0
      packages/admin-ui/src/lib/catalog/src/components/variant-price-detail/variant-price-detail.component.scss
  89. 1 1
      packages/admin-ui/src/lib/catalog/src/components/variant-price-detail/variant-price-detail.component.ts
  90. 2 2
      packages/admin-ui/src/lib/catalog/src/providers/product-detail.service.ts
  91. 2 4
      packages/admin-ui/src/lib/catalog/src/providers/routing/asset-resolver.ts
  92. 4 5
      packages/admin-ui/src/lib/catalog/src/providers/routing/collection-resolver.ts
  93. 4 4
      packages/admin-ui/src/lib/catalog/src/providers/routing/facet-resolver.ts
  94. 4 4
      packages/admin-ui/src/lib/catalog/src/providers/routing/product-resolver.ts
  95. 3 3
      packages/admin-ui/src/lib/catalog/src/providers/routing/product-variants-resolver.ts
  96. 33 0
      packages/admin-ui/src/lib/catalog/src/public_api.ts
  97. 7 0
      packages/admin-ui/src/lib/core/ng-package.json
  98. 0 0
      packages/admin-ui/src/lib/core/src/app.component.html
  99. 1 1
      packages/admin-ui/src/lib/core/src/app.component.module.ts
  100. 0 0
      packages/admin-ui/src/lib/core/src/app.component.scss

+ 1 - 9
packages/admin-ui/.gitignore

@@ -5,19 +5,11 @@
 /tmp
 /out-tsc
 /library
+/src/lib/package.json
 
 # dependencies
 /node_modules
 
-# generated extension files
-/src/app/extensions/__static-assets__
-/src/app/extensions/modules
-/src/app/extensions/extensions.module.ts.generated
-/src/app/extensions/extensions.module.ts.temp
-
-# compiled compiler files
-/compiler
-
 # IDEs and editors
 /.idea
 .project

+ 2 - 2
packages/admin-ui/.npmignore

@@ -3,7 +3,7 @@ yarn-error.log
 e2e
 dist
 *.spec.ts
-src/app/extensions/modules
-src/app/extensions/*.generated
+src/lib/extensions/modules
+src/lib/extensions/*.generated
 scripts
 /src

+ 15 - 2
packages/admin-ui/README.md

@@ -6,9 +6,22 @@ It is an Angular application built with the Angular CLI.
 
 The UI is powered by the [Clarity Design System](https://vmware.github.io/clarity/).
 
-## Compiler
+## Structure
 
-The `/src/compiler` directory contains the code which is used to dynamically compile the Admin UI app with UI extensions. This code is used by the `@vendure/admin-ui-plugin`.
+### Library
+
+The Admin UI is structured as an Angular library conforming to the [ng-packagr format](https://github.com/ng-packagr/ng-packagr). This library is what is published to npm as `@vendure/admin-ui`. The libary consists
+of a set of modules which are accessible from consuming applications as sub-packages:
+
+* `@vendure/admin-ui/core`
+* `@vendure/admin-ui/catalog`
+* `@vendure/admin-ui/orders`
+
+etc. These library packages are located at [./src/lib](./src/lib)
+
+### Application
+
+In addition to the library, there is also a full application located at [./src/app](./src/app). This application is used both during development of the Admin UI, and also as the "default" Admin UI without any UI extensions, as provided as the default by the [admin-ui-plugin](../admin-ui-plugin).
 
 ## Localization
 

+ 12 - 95
packages/admin-ui/angular.json

@@ -20,28 +20,19 @@
             "aot": true,
             "baseHref": "/admin/",
             "outputPath": "dist",
-            "index": "src/index.html",
+            "index": "src/lib/static/index.html",
             "main": "src/main.ts",
-            "polyfills": "src/polyfills.ts",
+            "polyfills": "src/lib/static/polyfills.ts",
             "tsConfig": "src/tsconfig.app.json",
             "assets": [
-              "src/favicon.ico",
-              "src/vendure-ui-config.json",
-              "src/assets",
-              "src/i18n-messages",
-              {
-                "glob": "**/*.*",
-                "input": "src/app/extensions/__static-assets__",
-                "output": "assets"
-              }
+              { "glob": "**/*", "input": "src/lib/static/", "output": "/" }
             ],
             "styles": [
-              "../../node_modules/@clr/icons/clr-icons.min.css",
-              "src/styles/styles.scss"
+              "src/lib/static/styles/styles.scss"
             ],
             "stylePreprocessorOptions": {
               "includePaths": [
-                "./src/styles"
+                "./src/lib/static/styles"
               ]
             },
             "showCircularDependencies": false
@@ -68,81 +59,7 @@
               "aot": true,
               "extractLicenses": true,
               "vendorChunk": false,
-              "buildOptimizer": true
-            },
-            "plugin": {
-              "budgets": [
-                {
-                  "type": "anyComponentStyle",
-                  "maximumWarning": "6kb"
-                }
-              ],
-              "fileReplacements": [
-                {
-                  "replace": "src/environments/environment.ts",
-                  "with": "src/environments/environment.prod.ts"
-                }
-              ],
-              "optimization": true,
-              "outputHashing": "all",
-              "sourceMap": true,
-              "extractCss": true,
-              "namedChunks": false,
-              "aot": false,
-              "extractLicenses": true,
-              "vendorChunk": false,
-              "buildOptimizer": false,
-              "styles": [
-                "../../@clr/icons/clr-icons.min.css",
-                "src/styles/styles.scss"
-              ]
-            },
-            "plugin-watch": {
-              "budgets": [
-                {
-                  "type": "anyComponentStyle",
-                  "maximumWarning": "6kb"
-                }
-              ],
-              "aot": false,
-              "styles": [
-                "../../@clr/icons/clr-icons.min.css",
-                "src/styles/styles.scss"
-              ]
-            },
-            "plugin-dev": {
-              "budgets": [
-                {
-                  "type": "anyComponentStyle",
-                  "maximumWarning": "6kb"
-                }
-              ],
-              "optimization": true,
-              "outputHashing": "all",
-              "sourceMap": true,
-              "extractCss": true,
-              "namedChunks": false,
-              "aot": true,
-              "extractLicenses": true,
-              "vendorChunk": false,
-              "buildOptimizer": true,
-              "styles": [
-                "../../node_modules/@clr/icons/clr-icons.min.css",
-                "src/styles/styles.scss"
-              ]
-            },
-            "plugin-dev-watch": {
-              "budgets": [
-                {
-                  "type": "anyComponentStyle",
-                  "maximumWarning": "6kb"
-                }
-              ],
-              "aot": false,
-              "styles": [
-                "../../node_modules/@clr/icons/clr-icons.min.css",
-                "src/styles/styles.scss"
-              ]
+              "buildOptimizer": false
             }
           }
         },
@@ -173,20 +90,20 @@
           "builder": "@angular-devkit/build-angular:karma",
           "options": {
             "main": "src/test.ts",
-            "polyfills": "src/polyfills.ts",
+            "polyfills": "src/lib/static/polyfills.ts",
             "tsConfig": "src/tsconfig.spec.json",
             "karmaConfig": "src/karma.conf.js",
             "styles": [
-              "src/styles/styles.scss"
+              "src/lib/static/styles/styles.scss"
             ],
             "scripts": [],
             "assets": [
-              "src/favicon.ico",
-              "src/assets"
+              "src/lib/static/favicon.ico",
+              "src/lib/static/assets"
             ],
             "stylePreprocessorOptions": {
               "includePaths": [
-                "./src/styles"
+                "./src/lib/static/styles"
               ]
             }
           }
@@ -242,7 +159,7 @@
           "builder": "@angular-devkit/build-ng-packagr:build",
           "options": {
             "tsConfig": "./tsconfig.lib.json",
-            "project": "./ng-package.json"
+            "project": "./src/lib/ng-package.json"
           },
           "configurations": {
             "production": {

+ 0 - 19
packages/admin-ui/ng-package.json

@@ -1,19 +0,0 @@
-{
-  "$schema": "node_modules/ng-packagr/ng-package.schema.json",
-  "dest": "library",
-  "whitelistedNonPeerDependencies": ["."],
-  "assets": [
-    "src/index.html",
-    "src/polyfills.ts",
-    "src/tsconfig.app.json",
-    "src/assets/*.*",
-    "src/styles/**/*.scss",
-    "src/favicon.ico",
-    "src/i18n-messages/*.json",
-    "src/vendure-ui-config.json"
-  ],
-  "lib": {
-    "entryFile": "src/public-api.ts",
-    "styleIncludePaths": ["src/styles"]
-  }
-}

+ 6 - 6
packages/admin-ui/package.json

@@ -1,21 +1,21 @@
 {
   "name": "@vendure/admin-ui",
-  "version": "0.9.8",
+  "version": "0.9.11",
   "license": "MIT",
   "scripts": {
     "ng": "ng",
     "start": "node scripts/set-version.js && ng serve",
-    "build": "yarn reset-extensions && ng build --prod",
-    "build:library": "node scripts/set-version.js && node scripts/build-public-api.js && ng build vendure-admin-lib --prod",
+    "build:app": "ng build --prod",
+    "build": "node scripts/copy-package-json.js && node scripts/set-version.js && node scripts/build-public-api.js && ng build vendure-admin-lib --prod",
     "watch": "ng build --watch=true",
     "test": "ng test --watch=false --browsers=ChromeHeadlessCI --progress=false",
     "lint": "tslint --fix",
-    "reset-extensions": "rimraf ./src/app/extensions/modules && rimraf ./src/app/extensions/*.generated && rimraf ./src/app/extensions/*.temp",
-    "extract-translations": "ngx-translate-extract --input ./src --output ./src/i18n-messages/en.json --clean --sort --format namespaced-json --format-indentation \"  \" -m _",
+    "extract-translations": "ngx-translate-extract --input ./src/lib --output ./src/lib/static/i18n-messages/en.json --clean --sort --format namespaced-json --format-indentation \"  \" -m _",
     "ngcc": "ngcc --properties es2015 browser module main --first-only --create-ivy-entry-points"
   },
   "publishConfig": {
-    "access": "public"
+    "access": "public",
+    "directory": "dist"
   },
   "main": "./library/bundles/vendure-admin-ui.umd.js",
   "module": "./library/fesm5/vendure-admin-ui.js",

+ 32 - 18
packages/admin-ui/scripts/build-public-api.js

@@ -5,26 +5,40 @@ const path = require('path');
 // contents. This is then used as the public API entrypoint for the Angular CLI's library
 // builder process.
 
-console.log('Generating public api...');
-const SOURCES_DIR = path.join(__dirname, '/../src/app');
-const APP_SOURCE_FILE_PATTERN = /\.(pipe|service|component|module|routes|directive|guard|config)\.ts$/;
-const EXCLUDED_PATTERN = /app\.(module|routes)\.ts$/;
+console.log('Generating public apis...');
+const SOURCES_DIR = path.join(__dirname, '/../src/lib');
+const APP_SOURCE_FILE_PATTERN = /\.ts$/;
+const EXCLUDED_PATTERN = /(public_api|spec|mock)\.ts$/;
 
-const files = [];
-const publicApiFilePath = path.join(__dirname, '/../src');
-forMatchingFiles(SOURCES_DIR, APP_SOURCE_FILE_PATTERN, filename => {
-    if (!EXCLUDED_PATTERN.test(filename)) {
-        const relativeFilename = '.' + filename.replace(publicApiFilePath, '')
-            .replace(/\\/g, '/')
-            .replace(/\.ts$/, '');
-        files.push(relativeFilename);
-    }
-});
+const MODULES = [
+    'catalog',
+    'core',
+    'customer',
+    'dashboard',
+    'login',
+    'marketing',
+    'order',
+    'settings',
+];
+
+for (const moduleDir of MODULES) {
+    const modulePath = path.join(SOURCES_DIR, moduleDir, 'src');
 
-const header = `// This file was generated by the build-public-api.ts script\n`;
-const fileContents = header + files.map(f => `export * from '${f}';`).join('\n') + '\n';
-fs.writeFileSync(path.join(publicApiFilePath, 'public-api.ts'), fileContents, 'utf8');
-console.log('Done!');
+    const files = [];
+    forMatchingFiles(modulePath, APP_SOURCE_FILE_PATTERN, filename => {
+        if (!EXCLUDED_PATTERN.test(filename)) {
+            const relativeFilename = '.' + filename.replace(modulePath, '')
+                .replace(/\\/g, '/')
+                .replace(/\.ts$/, '');
+            files.push(relativeFilename);
+        }
+    });
+    const header = `// This file was generated by the build-public-api.ts script\n`;
+    const fileContents = header + files.map(f => `export * from '${f}';`).join('\n') + '\n';
+    const publicApiFile = path.join(modulePath, 'public_api.ts');
+    fs.writeFileSync(publicApiFile, fileContents, 'utf8');
+    console.log(`Created ${publicApiFile}`);
+}
 
 /**
  *

+ 8 - 0
packages/admin-ui/scripts/copy-package-json.js

@@ -0,0 +1,8 @@
+const path = require('path');
+const fs = require('fs');
+// Copies the main package.json file into the lib directory so that
+// ng-packagr can use it when generating the library bundle
+
+console.log('Copying main package.json to library...');
+const packageJson = require('../package');
+fs.writeFileSync(path.join(__dirname, '/../src/lib/package.json'), JSON.stringify(packageJson, null, 2), 'utf8');

+ 3 - 2
packages/admin-ui/scripts/set-version.js

@@ -2,9 +2,10 @@ const path = require('path');
 const fs = require('fs');
 const appVersion = require('../package.json').version;
 
-const versionFilePath = path.join(__dirname + '/../src/environments/version.ts');
+const versionFilePath = path.join(__dirname + '/../src/lib/core/src/common/version.ts');
 
-const src = `export const ADMIN_UI_VERSION = '${appVersion}';
+const src = `// Auto-generated by the set-version.js script.
+export const ADMIN_UI_VERSION = '${appVersion}';
 `;
 
 // ensure version module pulls value from package.json

+ 1 - 2
packages/admin-ui/src/app/app.module.ts

@@ -1,8 +1,7 @@
 import { NgModule } from '@angular/core';
 import { RouterModule } from '@angular/router';
+import { AppComponent, AppComponentModule } from '@vendure/admin-ui/core';
 
-import { AppComponent } from './app.component';
-import { AppComponentModule } from './app.component.module';
 import { routes } from './app.routes';
 
 @NgModule({

+ 8 - 10
packages/admin-ui/src/app/app.routes.ts

@@ -1,11 +1,9 @@
 import { Route } from '@angular/router';
 import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
-
-import { AppShellComponent } from './core/components/app-shell/app-shell.component';
-import { AuthGuard } from './core/providers/guard/auth.guard';
+import { AppShellComponent, AuthGuard } from '@vendure/admin-ui/core';
 
 export const routes: Route[] = [
-    { path: 'login', loadChildren: () => import('./login/login.module').then(m => m.LoginModule) },
+    { path: 'login', loadChildren: () => import('@vendure/admin-ui/login').then(m => m.LoginModule) },
     {
         path: '',
         canActivate: [AuthGuard],
@@ -17,27 +15,27 @@ export const routes: Route[] = [
             {
                 path: '',
                 pathMatch: 'full',
-                loadChildren: () => import('./dashboard/dashboard.module').then(m => m.DashboardModule),
+                loadChildren: () => import('@vendure/admin-ui/dashboard').then(m => m.DashboardModule),
             },
             {
                 path: 'catalog',
-                loadChildren: () => import('./catalog/catalog.module').then(m => m.CatalogModule),
+                loadChildren: () => import('@vendure/admin-ui/catalog').then(m => m.CatalogModule),
             },
             {
                 path: 'customer',
-                loadChildren: () => import('./customer/customer.module').then(m => m.CustomerModule),
+                loadChildren: () => import('@vendure/admin-ui/customer').then(m => m.CustomerModule),
             },
             {
                 path: 'orders',
-                loadChildren: () => import('./order/order.module').then(m => m.OrderModule),
+                loadChildren: () => import('@vendure/admin-ui/order').then(m => m.OrderModule),
             },
             {
                 path: 'marketing',
-                loadChildren: () => import('./marketing/marketing.module').then(m => m.MarketingModule),
+                loadChildren: () => import('@vendure/admin-ui/marketing').then(m => m.MarketingModule),
             },
             {
                 path: 'settings',
-                loadChildren: () => import('./settings/settings.module').then(m => m.SettingsModule),
+                loadChildren: () => import('@vendure/admin-ui/settings').then(m => m.SettingsModule),
             },
         ],
     },

+ 0 - 15
packages/admin-ui/src/app/extensions/lazy-extensions.module.ts

@@ -1,15 +0,0 @@
-/** This file is generated by the createExtensionsModules() function in devkit/common.ts. Do not edit. */
-import { CommonModule } from '@angular/common';
-import { NgModule } from '@angular/core';
-
-/**
- * This is a placeholder module for UI extensions provided by the AdminUiPlugin `extensions` option.
- * When the {@link createExtensionsModules} function is executed, this module gets temporarily replaced
- * by a generated module which includes all of the configured extension modules.
- */
-@NgModule({
-    imports: [
-        CommonModule,
-    ],
-})
-export class LazyExtensionsModule {}

+ 0 - 15
packages/admin-ui/src/app/extensions/shared-extensions.module.ts

@@ -1,15 +0,0 @@
-/** This file is generated by the createExtensionsModules() function in devkit/common.ts. Do not edit. */
-import { CommonModule } from '@angular/common';
-import { NgModule } from '@angular/core';
-
-/**
- * This is a placeholder module for UI extensions provided by the AdminUiPlugin `extensions` option.
- * When the {@link createExtensionsModules} function is executed, this module gets temporarily replaced
- * by a generated module which includes all of the configured extension modules.
- */
-@NgModule({
-    imports: [
-        CommonModule,
-    ],
-})
-export class SharedExtensionsModule {}

+ 0 - 76
packages/admin-ui/src/app/shared/shared-declarations.ts

@@ -1,76 +0,0 @@
-export {
-    ActionBarComponent,
-    ActionBarLeftComponent,
-    ActionBarRightComponent,
-} from './components/action-bar/action-bar.component';
-export { AffixedInputComponent } from './components/affixed-input/affixed-input.component';
-export { AssetFileInputComponent } from './components/asset-file-input/asset-file-input.component';
-export { AssetGalleryComponent } from './components/asset-gallery/asset-gallery.component';
-export { AssetPickerDialogComponent } from './components/asset-picker-dialog/asset-picker-dialog.component';
-export {
-    AssetPreviewDialogComponent,
-} from './components/asset-preview-dialog/asset-preview-dialog.component';
-export { AssetPreviewComponent } from './components/asset-preview/asset-preview.component';
-export { AssetPreviewPipe } from './pipes/asset-preview.pipe';
-export { PercentageSuffixInputComponent } from './components/affixed-input/percentage-suffix-input.component';
-export {
-    ChannelAssignmentControlComponent,
-} from './components/channel-assignment-control/channel-assignment-control.component';
-export { ChannelBadgeComponent } from './components/channel-badge/channel-badge.component';
-export { ChannelLabelPipe } from './pipes/channel-label.pipe';
-export { ChipComponent } from './components/chip/chip.component';
-export { ConfigurableInputComponent } from './components/configurable-input/configurable-input.component';
-export { CurrencyInputComponent } from './components/currency-input/currency-input.component';
-export {
-    CustomFieldControlComponent,
-} from './components/custom-field-control/custom-field-control.component';
-export { CustomFieldLabelPipe } from './pipes/custom-field-label.pipe';
-export { CustomerLabelComponent } from './components/customer-label/customer-label.component';
-export { DataTableColumnComponent } from './components/data-table/data-table-column.component';
-export { DataTableComponent } from './components/data-table/data-table.component';
-export { DropdownItemDirective } from './components/dropdown/dropdown-item.directive';
-export { DropdownMenuComponent } from './components/dropdown/dropdown-menu.component';
-export { DropdownTriggerDirective } from './components/dropdown/dropdown-trigger.directive';
-export { DropdownComponent } from './components/dropdown/dropdown.component';
-export { FacetValueChipComponent } from './components/facet-value-chip/facet-value-chip.component';
-export {
-    FacetValueSelectorComponent,
-} from './components/facet-value-selector/facet-value-selector.component';
-export { FocalPointControlComponent } from './components/focal-point-control/focal-point-control.component';
-export { FormFieldControlDirective } from './components/form-field/form-field-control.directive';
-export { FormFieldComponent } from './components/form-field/form-field.component';
-export { FormItemComponent } from './components/form-item/form-item.component';
-export { FormattedAddressComponent } from './components/formatted-address/formatted-address.component';
-export { IfDefaultChannelActiveDirective } from './directives/if-default-channel-active.directive';
-export { IfMultichannelDirective } from './directives/if-multichannel.directive';
-export { IfPermissionsDirective } from './directives/if-permissions.directive';
-export {
-    ItemsPerPageControlsComponent,
-} from './components/items-per-page-controls/items-per-page-controls.component';
-export { LabeledDataComponent } from './components/labeled-data/labeled-data.component';
-export { LanguageSelectorComponent } from './components/language-selector/language-selector.component';
-export { DialogButtonsDirective } from './components/modal-dialog/dialog-buttons.directive';
-export { DialogComponentOutletComponent } from './components/modal-dialog/dialog-component-outlet.component';
-export { DialogTitleDirective } from './components/modal-dialog/dialog-title.directive';
-export { ExtensionHostComponent } from './components/extension-host/extension-host.component';
-export * from './components/extension-host/extension-host-config';
-export { ModalDialogComponent } from './components/modal-dialog/modal-dialog.component';
-export { ObjectTreeComponent } from './components/object-tree/object-tree.component';
-export { OrderStateLabelComponent } from './components/order-state-label/order-state-label.component';
-export { PaginationControlsComponent } from './components/pagination-controls/pagination-controls.component';
-export { RichTextEditorComponent } from './components/rich-text-editor/rich-text-editor.component';
-export {
-    ExternalImageDialogComponent,
-} from './components/rich-text-editor/external-image-dialog/external-image-dialog.component';
-export { LinkDialogComponent } from './components/rich-text-editor/link-dialog/link-dialog.component';
-export { SelectToggleComponent } from './components/select-toggle/select-toggle.component';
-export { SimpleDialogComponent } from './components/simple-dialog/simple-dialog.component';
-export { TableRowActionComponent } from './components/table-row-action/table-row-action.component';
-export { TitleInputComponent } from './components/title-input/title-input.component';
-export { EntityInfoComponent } from './components/entity-info/entity-info.component';
-export { DatetimePickerComponent } from './components/datetime-picker/datetime-picker.component';
-export { CurrencyNamePipe } from './pipes/currency-name.pipe';
-export { FileSizePipe } from './pipes/file-size.pipe';
-export { SentenceCasePipe } from './pipes/sentence-case.pipe';
-export { SortPipe } from './pipes/sort.pipe';
-export { StringToColorPipe } from './pipes/string-to-color.pipe';

+ 0 - 4
packages/admin-ui/src/environments/environment.prod.ts

@@ -1,7 +1,3 @@
-import { ADMIN_UI_VERSION } from './version';
-
-declare function require(path: string): any;
 export const environment = {
     production: true,
-    version: ADMIN_UI_VERSION,
 };

+ 0 - 5
packages/admin-ui/src/environments/environment.ts

@@ -1,13 +1,8 @@
 // This file can be replaced during build by using the `fileReplacements` array.
 // `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.
 // The list of file replacements can be found in `angular.json`.
-import { ADMIN_UI_VERSION } from './version';
-
-declare function require(path: string): any;
-
 export const environment = {
     production: false,
-    version: ADMIN_UI_VERSION + '-dev',
 };
 
 /*

+ 0 - 1
packages/admin-ui/src/environments/version.ts

@@ -1 +0,0 @@
-export const ADMIN_UI_VERSION = '0.9.7';

+ 7 - 0
packages/admin-ui/src/lib/catalog/ng-package.json

@@ -0,0 +1,7 @@
+{
+  "lib": {
+    "styleIncludePaths": [
+      "../static/styles"
+    ]
+  }
+}

+ 1 - 2
packages/admin-ui/src/app/catalog/catalog.module.ts → packages/admin-ui/src/lib/catalog/src/catalog.module.ts

@@ -1,7 +1,6 @@
 import { NgModule } from '@angular/core';
 import { RouterModule } from '@angular/router';
-
-import { SharedModule } from '../shared/shared.module';
+import { SharedModule } from '@vendure/admin-ui/core';
 
 import { catalogRoutes } from './catalog.routes';
 import { ApplyFacetDialogComponent } from './components/apply-facet-dialog/apply-facet-dialog.component';

+ 5 - 9
packages/admin-ui/src/app/catalog/catalog.routes.ts → packages/admin-ui/src/lib/catalog/src/catalog.routes.ts

@@ -1,19 +1,15 @@
 import { Route } from '@angular/router';
 import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
-import { Observable } from 'rxjs';
-import { map } from 'rxjs/operators';
-
-import { createResolveData } from '../common/base-entity-resolver';
-import { detailBreadcrumb } from '../common/detail-breadcrumb';
 import {
     Asset,
+    CanDeactivateDetailGuard,
     Collection,
+    createResolveData,
+    detailBreadcrumb,
     FacetWithValues,
-    OrderDetail,
     ProductWithVariants,
-} from '../common/generated-types';
-import { BreadcrumbValue } from '../core/components/breadcrumb/breadcrumb.component';
-import { CanDeactivateDetailGuard } from '../shared/providers/routing/can-deactivate-detail-guard';
+} from '@vendure/admin-ui/core';
+import { map } from 'rxjs/operators';
 
 import { AssetDetailComponent } from './components/asset-detail/asset-detail.component';
 import { AssetListComponent } from './components/asset-list/asset-list.component';

+ 0 - 0
packages/admin-ui/src/app/catalog/components/apply-facet-dialog/apply-facet-dialog.component.html → packages/admin-ui/src/lib/catalog/src/components/apply-facet-dialog/apply-facet-dialog.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/apply-facet-dialog/apply-facet-dialog.component.scss → packages/admin-ui/src/lib/catalog/src/components/apply-facet-dialog/apply-facet-dialog.component.scss


+ 2 - 2
packages/admin-ui/src/app/catalog/components/apply-facet-dialog/apply-facet-dialog.component.ts → packages/admin-ui/src/lib/catalog/src/components/apply-facet-dialog/apply-facet-dialog.component.ts

@@ -1,7 +1,7 @@
 import { ChangeDetectionStrategy, Component } from '@angular/core';
 
-import { FacetValue, FacetWithValues } from '../../../common/generated-types';
-import { Dialog } from '../../../shared/providers/modal/modal.service';
+import { FacetValue, FacetWithValues } from '@vendure/admin-ui/core';
+import { Dialog } from '@vendure/admin-ui/core';
 
 @Component({
     selector: 'vdr-apply-facet-dialog',

+ 0 - 0
packages/admin-ui/src/app/catalog/components/asset-detail/asset-detail.component.html → packages/admin-ui/src/lib/catalog/src/components/asset-detail/asset-detail.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/asset-detail/asset-detail.component.scss → packages/admin-ui/src/lib/catalog/src/components/asset-detail/asset-detail.component.scss


+ 2 - 6
packages/admin-ui/src/app/catalog/components/asset-detail/asset-detail.component.ts → packages/admin-ui/src/lib/catalog/src/components/asset-detail/asset-detail.component.ts

@@ -2,12 +2,8 @@ import { ChangeDetectionStrategy, Component, OnDestroy, OnInit } from '@angular/
 import { FormBuilder, FormControl, FormGroup } from '@angular/forms';
 import { ActivatedRoute, Router } from '@angular/router';
 import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
-
-import { BaseDetailComponent } from '../../../common/base-detail.component';
-import { Asset, LanguageCode } from '../../../common/generated-types';
-import { NotificationService } from '../../../core/providers/notification/notification.service';
-import { DataService } from '../../../data/providers/data.service';
-import { ServerConfigService } from '../../../data/server-config';
+import { Asset, BaseDetailComponent, LanguageCode } from '@vendure/admin-ui/core';
+import { DataService, NotificationService, ServerConfigService } from '@vendure/admin-ui/core';
 
 @Component({
     selector: 'vdr-asset-detail',

+ 0 - 0
packages/admin-ui/src/app/catalog/components/asset-list/asset-list.component.html → packages/admin-ui/src/lib/catalog/src/components/asset-list/asset-list.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/asset-list/asset-list.component.scss → packages/admin-ui/src/lib/catalog/src/components/asset-list/asset-list.component.scss


+ 1 - 5
packages/admin-ui/src/app/catalog/components/asset-list/asset-list.component.ts → packages/admin-ui/src/lib/catalog/src/components/asset-list/asset-list.component.ts

@@ -2,16 +2,12 @@ import { Component, OnInit } from '@angular/core';
 import { FormControl } from '@angular/forms';
 import { ActivatedRoute, Router } from '@angular/router';
 import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
+import { BaseListComponent, DataService, GetAssetList, NotificationService } from '@vendure/admin-ui/core';
 import { SortOrder } from '@vendure/common/lib/generated-shop-types';
 import { PaginationInstance } from 'ngx-pagination';
 import { combineLatest, Observable } from 'rxjs';
 import { debounceTime, map, takeUntil } from 'rxjs/operators';
 
-import { BaseListComponent } from '../../../common/base-list.component';
-import { GetAssetList } from '../../../common/generated-types';
-import { NotificationService } from '../../../core/providers/notification/notification.service';
-import { DataService } from '../../../data/providers/data.service';
-
 @Component({
     selector: 'vdr-asset-list',
     templateUrl: './asset-list.component.html',

+ 0 - 0
packages/admin-ui/src/app/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.html → packages/admin-ui/src/lib/catalog/src/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.scss → packages/admin-ui/src/lib/catalog/src/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.scss


+ 4 - 4
packages/admin-ui/src/app/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.ts → packages/admin-ui/src/lib/catalog/src/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.ts

@@ -4,10 +4,10 @@ import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
 import { combineLatest, from, Observable } from 'rxjs';
 import { map, startWith, switchMap } from 'rxjs/operators';
 
-import { GetChannels, ProductVariantFragment } from '../../../common/generated-types';
-import { NotificationService } from '../../../core/providers/notification/notification.service';
-import { DataService } from '../../../data/providers/data.service';
-import { Dialog } from '../../../shared/providers/modal/modal.service';
+import { GetChannels, ProductVariantFragment } from '@vendure/admin-ui/core';
+import { NotificationService } from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
+import { Dialog } from '@vendure/admin-ui/core';
 
 @Component({
     selector: 'vdr-assign-products-to-channel-dialog',

+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-contents/collection-contents.component.html → packages/admin-ui/src/lib/catalog/src/components/collection-contents/collection-contents.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-contents/collection-contents.component.scss → packages/admin-ui/src/lib/catalog/src/components/collection-contents/collection-contents.component.scss


+ 2 - 2
packages/admin-ui/src/app/catalog/components/collection-contents/collection-contents.component.ts → packages/admin-ui/src/lib/catalog/src/components/collection-contents/collection-contents.component.ts

@@ -22,8 +22,8 @@ import {
     tap,
 } from 'rxjs/operators';
 
-import { GetCollectionContents } from '../../../common/generated-types';
-import { DataService } from '../../../data/providers/data.service';
+import { GetCollectionContents } from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
 
 @Component({
     selector: 'vdr-collection-contents',

+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-detail/collection-detail.component.html → packages/admin-ui/src/lib/catalog/src/components/collection-detail/collection-detail.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-detail/collection-detail.component.scss → packages/admin-ui/src/lib/catalog/src/components/collection-detail/collection-detail.component.scss


+ 11 - 18
packages/admin-ui/src/app/catalog/components/collection-detail/collection-detail.component.ts → packages/admin-ui/src/lib/catalog/src/components/collection-detail/collection-detail.component.ts

@@ -1,35 +1,28 @@
-import {
-    ChangeDetectionStrategy,
-    ChangeDetectorRef,
-    Component,
-    OnDestroy,
-    OnInit,
-    ViewChild,
-} from '@angular/core';
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnDestroy, OnInit, ViewChild } from '@angular/core';
 import { FormArray, FormBuilder, FormGroup, Validators } from '@angular/forms';
 import { ActivatedRoute, Router } from '@angular/router';
 import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
-import { combineLatest, Observable } from 'rxjs';
-import { mergeMap, shareReplay, take } from 'rxjs/operators';
-
-import { BaseDetailComponent } from '../../../common/base-detail.component';
 import {
+    BaseDetailComponent,
     Collection,
     ConfigurableOperation,
     ConfigurableOperationDefinition,
     ConfigurableOperationInput,
     CreateCollectionInput,
+    createUpdatedTranslatable,
     CustomFieldConfig,
+    DataService,
     FacetWithValues,
     GetActiveChannel,
     LanguageCode,
+    ModalService,
+    NotificationService,
+    ServerConfigService,
     UpdateCollectionInput,
-} from '../../../common/generated-types';
-import { createUpdatedTranslatable } from '../../../common/utilities/create-updated-translatable';
-import { NotificationService } from '../../../core/providers/notification/notification.service';
-import { DataService } from '../../../data/providers/data.service';
-import { ServerConfigService } from '../../../data/server-config';
-import { ModalService } from '../../../shared/providers/modal/modal.service';
+} from '@vendure/admin-ui/core';
+import { combineLatest, Observable } from 'rxjs';
+import { mergeMap, shareReplay, take } from 'rxjs/operators';
+
 import { CollectionContentsComponent } from '../collection-contents/collection-contents.component';
 
 @Component({

+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-list/collection-list.component.html → packages/admin-ui/src/lib/catalog/src/components/collection-list/collection-list.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-list/collection-list.component.scss → packages/admin-ui/src/lib/catalog/src/components/collection-list/collection-list.component.scss


+ 2 - 5
packages/admin-ui/src/app/catalog/components/collection-list/collection-list.component.ts → packages/admin-ui/src/lib/catalog/src/components/collection-list/collection-list.component.ts

@@ -1,14 +1,11 @@
 import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core';
 import { ActivatedRoute, Router } from '@angular/router';
 import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
+import { GetCollectionList } from '@vendure/admin-ui/core';
+import { DataService, ModalService, NotificationService, QueryResult } from '@vendure/admin-ui/core';
 import { combineLatest, EMPTY, Observable } from 'rxjs';
 import { distinctUntilChanged, map, switchMap, take } from 'rxjs/operators';
 
-import { Collection, GetCollectionList } from '../../../common/generated-types';
-import { NotificationService } from '../../../core/providers/notification/notification.service';
-import { DataService } from '../../../data/providers/data.service';
-import { QueryResult } from '../../../data/query-result';
-import { ModalService } from '../../../shared/providers/modal/modal.service';
 import { RearrangeEvent } from '../collection-tree/collection-tree.component';
 
 @Component({

+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-tree/array-to-tree.spec.ts → packages/admin-ui/src/lib/catalog/src/components/collection-tree/array-to-tree.spec.ts


+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-tree/array-to-tree.ts → packages/admin-ui/src/lib/catalog/src/components/collection-tree/array-to-tree.ts


+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-tree/collection-tree-node.component.html → packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree-node.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-tree/collection-tree-node.component.scss → packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree-node.component.scss


+ 2 - 2
packages/admin-ui/src/app/catalog/components/collection-tree/collection-tree-node.component.ts → packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree-node.component.ts

@@ -3,8 +3,8 @@ import { ChangeDetectionStrategy, Component, Input, OnInit, Optional, SkipSelf }
 import { Observable } from 'rxjs';
 import { map, shareReplay } from 'rxjs/operators';
 
-import { Permission } from '../../../common/generated-types';
-import { DataService } from '../../../data/providers/data.service';
+import { Permission } from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
 
 import { RootNode, TreeNode } from './array-to-tree';
 import { CollectionPartial, CollectionTreeComponent } from './collection-tree.component';

+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-tree/collection-tree.component.html → packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/collection-tree/collection-tree.component.scss → packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree.component.scss


+ 1 - 1
packages/admin-ui/src/app/catalog/components/collection-tree/collection-tree.component.ts → packages/admin-ui/src/lib/catalog/src/components/collection-tree/collection-tree.component.ts

@@ -9,7 +9,7 @@ import {
     SimpleChanges,
 } from '@angular/core';
 
-import { Collection } from '../../../common/generated-types';
+import { Collection } from '@vendure/admin-ui/core';
 
 import { arrayToTree, HasParent, RootNode } from './array-to-tree';
 

+ 0 - 0
packages/admin-ui/src/app/catalog/components/facet-detail/facet-detail.component.html → packages/admin-ui/src/lib/catalog/src/components/facet-detail/facet-detail.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/facet-detail/facet-detail.component.scss → packages/admin-ui/src/lib/catalog/src/components/facet-detail/facet-detail.component.scss


+ 11 - 12
packages/admin-ui/src/app/catalog/components/facet-detail/facet-detail.component.ts → packages/admin-ui/src/lib/catalog/src/components/facet-detail/facet-detail.component.ts

@@ -2,27 +2,26 @@ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnDestroy, OnIni
 import { FormArray, FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';
 import { ActivatedRoute, Router } from '@angular/router';
 import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
-import { normalizeString } from '@vendure/common/lib/normalize-string';
-import { notNullOrUndefined } from '@vendure/common/lib/shared-utils';
-import { combineLatest, EMPTY, forkJoin, Observable } from 'rxjs';
-import { map, mergeMap, switchMap, take } from 'rxjs/operators';
-
-import { BaseDetailComponent } from '../../../common/base-detail.component';
 import {
+    BaseDetailComponent,
     CreateFacetInput,
     CreateFacetValueInput,
+    createUpdatedTranslatable,
     CustomFieldConfig,
+    DataService,
     DeletionResult,
     FacetWithValues,
     LanguageCode,
+    ModalService,
+    NotificationService,
+    ServerConfigService,
     UpdateFacetInput,
     UpdateFacetValueInput,
-} from '../../../common/generated-types';
-import { createUpdatedTranslatable } from '../../../common/utilities/create-updated-translatable';
-import { NotificationService } from '../../../core/providers/notification/notification.service';
-import { DataService } from '../../../data/providers/data.service';
-import { ServerConfigService } from '../../../data/server-config';
-import { ModalService } from '../../../shared/providers/modal/modal.service';
+} from '@vendure/admin-ui/core';
+import { normalizeString } from '@vendure/common/lib/normalize-string';
+import { notNullOrUndefined } from '@vendure/common/lib/shared-utils';
+import { combineLatest, EMPTY, forkJoin, Observable } from 'rxjs';
+import { map, mergeMap, switchMap, take } from 'rxjs/operators';
 
 @Component({
     selector: 'vdr-facet-detail',

+ 0 - 0
packages/admin-ui/src/app/catalog/components/facet-list/facet-list.component.html → packages/admin-ui/src/lib/catalog/src/components/facet-list/facet-list.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/facet-list/facet-list.component.scss → packages/admin-ui/src/lib/catalog/src/components/facet-list/facet-list.component.scss


+ 5 - 5
packages/admin-ui/src/app/catalog/components/facet-list/facet-list.component.ts → packages/admin-ui/src/lib/catalog/src/components/facet-list/facet-list.component.ts

@@ -4,11 +4,11 @@ import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
 import { EMPTY } from 'rxjs';
 import { map, switchMap } from 'rxjs/operators';
 
-import { BaseListComponent } from '../../../common/base-list.component';
-import { DeletionResult, GetFacetList } from '../../../common/generated-types';
-import { NotificationService } from '../../../core/providers/notification/notification.service';
-import { DataService } from '../../../data/providers/data.service';
-import { ModalService } from '../../../shared/providers/modal/modal.service';
+import { BaseListComponent } from '@vendure/admin-ui/core';
+import { DeletionResult, GetFacetList } from '@vendure/admin-ui/core';
+import { NotificationService } from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
+import { ModalService } from '@vendure/admin-ui/core';
 
 @Component({
     selector: 'vdr-facet-list',

+ 0 - 0
packages/admin-ui/src/app/catalog/components/generate-product-variants/generate-product-variants.component.html → packages/admin-ui/src/lib/catalog/src/components/generate-product-variants/generate-product-variants.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/generate-product-variants/generate-product-variants.component.scss → packages/admin-ui/src/lib/catalog/src/components/generate-product-variants/generate-product-variants.component.scss


+ 2 - 2
packages/admin-ui/src/app/catalog/components/generate-product-variants/generate-product-variants.component.ts → packages/admin-ui/src/lib/catalog/src/components/generate-product-variants/generate-product-variants.component.ts

@@ -1,8 +1,8 @@
 import { Component, EventEmitter, OnInit, Output } from '@angular/core';
 import { generateAllCombinations } from '@vendure/common/lib/shared-utils';
 
-import { CurrencyCode } from '../../../common/generated-types';
-import { DataService } from '../../../data/providers/data.service';
+import { CurrencyCode } from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
 import { OptionValueInputComponent } from '../option-value-input/option-value-input.component';
 
 const DEFAULT_VARIANT_CODE = '__DEFAULT_VARIANT__';

+ 0 - 0
packages/admin-ui/src/app/catalog/components/option-value-input/option-value-input.component.html → packages/admin-ui/src/lib/catalog/src/components/option-value-input/option-value-input.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/option-value-input/option-value-input.component.scss → packages/admin-ui/src/lib/catalog/src/components/option-value-input/option-value-input.component.scss


+ 0 - 0
packages/admin-ui/src/app/catalog/components/option-value-input/option-value-input.component.ts → packages/admin-ui/src/lib/catalog/src/components/option-value-input/option-value-input.component.ts


+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-assets/product-assets.component.html → packages/admin-ui/src/lib/catalog/src/components/product-assets/product-assets.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-assets/product-assets.component.scss → packages/admin-ui/src/lib/catalog/src/components/product-assets/product-assets.component.scss


+ 2 - 6
packages/admin-ui/src/app/catalog/components/product-assets/product-assets.component.ts → packages/admin-ui/src/lib/catalog/src/components/product-assets/product-assets.component.ts

@@ -11,13 +11,9 @@ import {
     Output,
     ViewChild,
 } from '@angular/core';
+import { Asset, AssetPickerDialogComponent, AssetPreviewDialogComponent, ModalService } from '@vendure/admin-ui/core';
 import { unique } from '@vendure/common/lib/unique';
 
-import { Asset } from '../../../common/generated-types';
-import { AssetPickerDialogComponent } from '../../../shared/components/asset-picker-dialog/asset-picker-dialog.component';
-import { AssetPreviewDialogComponent } from '../../../shared/components/asset-preview-dialog/asset-preview-dialog.component';
-import { ModalService } from '../../../shared/providers/modal/modal.service';
-
 export interface AssetChange {
     assetIds: string[];
     featuredAssetId: string | undefined;
@@ -199,7 +195,7 @@ export class ProductAssetsComponent implements AfterViewInit {
             drag.element.nativeElement.offsetTop,
         );
         return false;
-    };
+    }
 
     /** Determines the point of the page that was touched by the user. */
     getPointerPositionOnPage(event: MouseEvent | TouchEvent) {

+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-detail/product-detail.component.html → packages/admin-ui/src/lib/catalog/src/components/product-detail/product-detail.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-detail/product-detail.component.scss → packages/admin-ui/src/lib/catalog/src/components/product-detail/product-detail.component.scss


+ 13 - 24
packages/admin-ui/src/app/catalog/components/product-detail/product-detail.component.ts → packages/admin-ui/src/lib/catalog/src/components/product-detail/product-detail.component.ts

@@ -3,26 +3,14 @@ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnDestroy, OnIni
 import { FormArray, FormBuilder, FormGroup, Validators } from '@angular/forms';
 import { ActivatedRoute, Router } from '@angular/router';
 import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
-import { normalizeString } from '@vendure/common/lib/normalize-string';
-import { DEFAULT_CHANNEL_CODE } from '@vendure/common/lib/shared-constants';
-import { notNullOrUndefined } from '@vendure/common/lib/shared-utils';
-import { unique } from '@vendure/common/lib/unique';
-import { combineLatest, EMPTY, merge, Observable } from 'rxjs';
-import {
-    distinctUntilChanged,
-    map,
-    mergeMap,
-    switchMap,
-    take,
-    takeUntil,
-    withLatestFrom,
-} from 'rxjs/operators';
-
-import { BaseDetailComponent } from '../../../common/base-detail.component';
 import {
+    BaseDetailComponent,
     CreateProductInput,
+    createUpdatedTranslatable,
     CustomFieldConfig,
     FacetWithValues,
+    flattenFacetValues,
+    IGNORE_CAN_DEACTIVATE_GUARD,
     LanguageCode,
     ProductWithVariants,
     TaxCategory,
@@ -31,14 +19,15 @@ import {
     UpdateProductOptionInput,
     UpdateProductVariantInput,
     UpdateProductVariantsMutation,
-} from '../../../common/generated-types';
-import { createUpdatedTranslatable } from '../../../common/utilities/create-updated-translatable';
-import { flattenFacetValues } from '../../../common/utilities/flatten-facet-values';
-import { NotificationService } from '../../../core/providers/notification/notification.service';
-import { DataService } from '../../../data/providers/data.service';
-import { ServerConfigService } from '../../../data/server-config';
-import { ModalService } from '../../../shared/providers/modal/modal.service';
-import { IGNORE_CAN_DEACTIVATE_GUARD } from '../../../shared/providers/routing/can-deactivate-detail-guard';
+} from '@vendure/admin-ui/core';
+import { DataService, ModalService, NotificationService, ServerConfigService } from '@vendure/admin-ui/core';
+import { normalizeString } from '@vendure/common/lib/normalize-string';
+import { DEFAULT_CHANNEL_CODE } from '@vendure/common/lib/shared-constants';
+import { notNullOrUndefined } from '@vendure/common/lib/shared-utils';
+import { unique } from '@vendure/common/lib/unique';
+import { combineLatest, EMPTY, merge, Observable } from 'rxjs';
+import { distinctUntilChanged, map, mergeMap, switchMap, take, takeUntil, withLatestFrom } from 'rxjs/operators';
+
 import { ProductDetailService } from '../../providers/product-detail.service';
 import { ApplyFacetDialogComponent } from '../apply-facet-dialog/apply-facet-dialog.component';
 import { AssignProductsToChannelDialogComponent } from '../assign-products-to-channel-dialog/assign-products-to-channel-dialog.component';

+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-list/product-list.component.html → packages/admin-ui/src/lib/catalog/src/components/product-list/product-list.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-list/product-list.component.scss → packages/admin-ui/src/lib/catalog/src/components/product-list/product-list.component.scss


+ 6 - 6
packages/admin-ui/src/app/catalog/components/product-list/product-list.component.ts → packages/admin-ui/src/lib/catalog/src/components/product-list/product-list.component.ts

@@ -1,15 +1,15 @@
 import { Component, OnInit, ViewChild } from '@angular/core';
 import { ActivatedRoute, Router } from '@angular/router';
 import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
+import { JobState, SearchInput, SearchProducts } from '@vendure/admin-ui/core';
+import { BaseListComponent } from '@vendure/admin-ui/core';
+import { JobQueueService } from '@vendure/admin-ui/core';
+import { NotificationService } from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
+import { ModalService } from '@vendure/admin-ui/core';
 import { EMPTY, Observable, of } from 'rxjs';
 import { delay, map, switchMap, take, takeUntil, withLatestFrom } from 'rxjs/operators';
 
-import { BaseListComponent } from '../../../common/base-list.component';
-import { JobState, SearchInput, SearchProducts } from '../../../common/generated-types';
-import { JobQueueService } from '../../../core/providers/job-queue/job-queue.service';
-import { NotificationService } from '../../../core/providers/notification/notification.service';
-import { DataService } from '../../../data/providers/data.service';
-import { ModalService } from '../../../shared/providers/modal/modal.service';
 import { ProductSearchInputComponent } from '../product-search-input/product-search-input.component';
 
 @Component({

+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-search-input/product-search-input.component.html → packages/admin-ui/src/lib/catalog/src/components/product-search-input/product-search-input.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-search-input/product-search-input.component.scss → packages/admin-ui/src/lib/catalog/src/components/product-search-input/product-search-input.component.scss


+ 1 - 1
packages/admin-ui/src/app/catalog/components/product-search-input/product-search-input.component.ts → packages/admin-ui/src/lib/catalog/src/components/product-search-input/product-search-input.component.ts

@@ -2,7 +2,7 @@ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewCh
 import { NgSelectComponent, SELECTION_MODEL_FACTORY } from '@ng-select/ng-select';
 import { notNullOrUndefined } from '@vendure/common/lib/shared-utils';
 
-import { SearchProducts } from '../../../common/generated-types';
+import { SearchProducts } from '@vendure/admin-ui/core';
 
 import { ProductSearchSelectionModelFactory } from './product-search-selection-model';
 

+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-search-input/product-search-selection-model.ts → packages/admin-ui/src/lib/catalog/src/components/product-search-input/product-search-selection-model.ts


+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-variants-editor/product-variants-editor.component.html → packages/admin-ui/src/lib/catalog/src/components/product-variants-editor/product-variants-editor.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-variants-editor/product-variants-editor.component.scss → packages/admin-ui/src/lib/catalog/src/components/product-variants-editor/product-variants-editor.component.scss


+ 11 - 11
packages/admin-ui/src/app/catalog/components/product-variants-editor/product-variants-editor.component.ts → packages/admin-ui/src/lib/catalog/src/components/product-variants-editor/product-variants-editor.component.ts

@@ -1,12 +1,10 @@
 import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core';
 import { ActivatedRoute } from '@angular/router';
 import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
-import { normalizeString } from '@vendure/common/lib/normalize-string';
-import { generateAllCombinations, notNullOrUndefined } from '@vendure/common/lib/shared-utils';
-import { EMPTY, forkJoin, Observable, of } from 'rxjs';
-import { filter, map, mergeMap, switchMap, take } from 'rxjs/operators';
-
-import { DeactivateAware } from '../../../common/deactivate-aware';
+import { DeactivateAware } from '@vendure/admin-ui/core';
+import { NotificationService } from '@vendure/admin-ui/core';
+import { ModalService } from '@vendure/admin-ui/core';
+import { getDefaultLanguage } from '@vendure/admin-ui/core';
 import {
     CreateProductOptionGroup,
     CreateProductOptionInput,
@@ -14,11 +12,13 @@ import {
     GetProductVariantOptions,
     LanguageCode,
     ProductOptionGroupFragment,
-} from '../../../common/generated-types';
-import { getDefaultLanguage } from '../../../common/utilities/get-default-language';
-import { NotificationService } from '../../../core/providers/notification/notification.service';
-import { DataService } from '../../../data/providers/data.service';
-import { ModalService } from '../../../shared/providers/modal/modal.service';
+} from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
+import { normalizeString } from '@vendure/common/lib/normalize-string';
+import { generateAllCombinations, notNullOrUndefined } from '@vendure/common/lib/shared-utils';
+import { EMPTY, forkJoin, Observable, of } from 'rxjs';
+import { filter, map, mergeMap, switchMap, take } from 'rxjs/operators';
+
 import { ProductDetailService } from '../../providers/product-detail.service';
 
 export interface VariantInfo {

+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-variants-list/product-variants-list.component.html → packages/admin-ui/src/lib/catalog/src/components/product-variants-list/product-variants-list.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-variants-list/product-variants-list.component.scss → packages/admin-ui/src/lib/catalog/src/components/product-variants-list/product-variants-list.component.scss


+ 3 - 3
packages/admin-ui/src/app/catalog/components/product-variants-list/product-variants-list.component.ts → packages/admin-ui/src/lib/catalog/src/components/product-variants-list/product-variants-list.component.ts

@@ -22,9 +22,9 @@ import {
     ProductWithVariants,
     TaxCategory,
     UpdateProductOptionInput,
-} from '../../../common/generated-types';
-import { flattenFacetValues } from '../../../common/utilities/flatten-facet-values';
-import { ModalService } from '../../../shared/providers/modal/modal.service';
+} from '@vendure/admin-ui/core';
+import { flattenFacetValues } from '@vendure/admin-ui/core';
+import { ModalService } from '@vendure/admin-ui/core';
 import { AssetChange } from '../product-assets/product-assets.component';
 import { VariantFormValue } from '../product-detail/product-detail.component';
 import { UpdateProductOptionDialogComponent } from '../update-product-option-dialog/update-product-option-dialog.component';

+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-variants-table/product-variants-table.component.html → packages/admin-ui/src/lib/catalog/src/components/product-variants-table/product-variants-table.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/product-variants-table/product-variants-table.component.scss → packages/admin-ui/src/lib/catalog/src/components/product-variants-table/product-variants-table.component.scss


+ 1 - 1
packages/admin-ui/src/app/catalog/components/product-variants-table/product-variants-table.component.ts → packages/admin-ui/src/lib/catalog/src/components/product-variants-table/product-variants-table.component.ts

@@ -1,7 +1,7 @@
 import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
 import { FormArray } from '@angular/forms';
 
-import { ProductWithVariants } from '../../../common/generated-types';
+import { ProductWithVariants } from '@vendure/admin-ui/core';
 
 @Component({
     selector: 'vdr-product-variants-table',

+ 0 - 0
packages/admin-ui/src/app/catalog/components/update-product-option-dialog/update-product-option-dialog.component.html → packages/admin-ui/src/lib/catalog/src/components/update-product-option-dialog/update-product-option-dialog.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/update-product-option-dialog/update-product-option-dialog.component.scss → packages/admin-ui/src/lib/catalog/src/components/update-product-option-dialog/update-product-option-dialog.component.scss


+ 3 - 4
packages/admin-ui/src/app/catalog/components/update-product-option-dialog/update-product-option-dialog.component.ts → packages/admin-ui/src/lib/catalog/src/components/update-product-option-dialog/update-product-option-dialog.component.ts

@@ -1,10 +1,9 @@
 import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core';
+import { ProductVariant, UpdateProductOptionInput } from '@vendure/admin-ui/core';
+import { createUpdatedTranslatable } from '@vendure/admin-ui/core';
+import { Dialog } from '@vendure/admin-ui/core';
 import { normalizeString } from '@vendure/common/lib/normalize-string';
 
-import { ProductVariant, UpdateProductOptionInput } from '../../../common/generated-types';
-import { createUpdatedTranslatable } from '../../../common/utilities/create-updated-translatable';
-import { Dialog } from '../../../shared/providers/modal/modal.service';
-
 @Component({
     selector: 'vdr-update-product-option-dialog',
     templateUrl: './update-product-option-dialog.component.html',

+ 0 - 0
packages/admin-ui/src/app/catalog/components/variant-price-detail/variant-price-detail.component.html → packages/admin-ui/src/lib/catalog/src/components/variant-price-detail/variant-price-detail.component.html


+ 0 - 0
packages/admin-ui/src/app/catalog/components/variant-price-detail/variant-price-detail.component.scss → packages/admin-ui/src/lib/catalog/src/components/variant-price-detail/variant-price-detail.component.scss


+ 1 - 1
packages/admin-ui/src/app/catalog/components/variant-price-detail/variant-price-detail.component.ts → packages/admin-ui/src/lib/catalog/src/components/variant-price-detail/variant-price-detail.component.ts

@@ -2,7 +2,7 @@ import { ChangeDetectionStrategy, Component, Input, OnChanges, OnInit, SimpleCha
 import { BehaviorSubject, combineLatest, Observable, Subject } from 'rxjs';
 import { map } from 'rxjs/operators';
 
-import { DataService } from '../../../data/providers/data.service';
+import { DataService } from '@vendure/admin-ui/core';
 
 @Component({
     selector: 'vdr-variant-price-detail',

+ 2 - 2
packages/admin-ui/src/app/catalog/providers/product-detail.service.ts → packages/admin-ui/src/lib/catalog/src/providers/product-detail.service.ts

@@ -16,8 +16,8 @@ import {
     UpdateProductOptionInput,
     UpdateProductVariantInput,
     UpdateProductVariantsMutation,
-} from '../../common/generated-types';
-import { DataService } from '../../data/providers/data.service';
+} from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
 import { CreateProductVariantsConfig } from '../components/generate-product-variants/generate-product-variants.component';
 
 /**

+ 2 - 4
packages/admin-ui/src/app/catalog/providers/routing/asset-resolver.ts → packages/admin-ui/src/lib/catalog/src/providers/routing/asset-resolver.ts

@@ -1,9 +1,7 @@
 import { Injectable } from '@angular/core';
 import { Router } from '@angular/router';
-
-import { BaseEntityResolver } from '../../../common/base-entity-resolver';
-import { Asset, AssetType } from '../../../common/generated-types';
-import { DataService } from '../../../data/providers/data.service';
+import { Asset, AssetType, BaseEntityResolver } from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
 
 @Injectable()
 export class AssetResolver extends BaseEntityResolver<Asset.Fragment> {

+ 4 - 5
packages/admin-ui/src/app/catalog/providers/routing/collection-resolver.ts → packages/admin-ui/src/lib/catalog/src/providers/routing/collection-resolver.ts

@@ -1,10 +1,9 @@
 import { Injectable } from '@angular/core';
 import { Router } from '@angular/router';
-
-import { BaseEntityResolver } from '../../../common/base-entity-resolver';
-import { Collection, ProductWithVariants } from '../../../common/generated-types';
-import { getDefaultLanguage } from '../../../common/utilities/get-default-language';
-import { DataService } from '../../../data/providers/data.service';
+import { BaseEntityResolver } from '@vendure/admin-ui/core';
+import { Collection, ProductWithVariants } from '@vendure/admin-ui/core';
+import { getDefaultLanguage } from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
 
 @Injectable()
 export class CollectionResolver extends BaseEntityResolver<Collection.Fragment> {

+ 4 - 4
packages/admin-ui/src/app/catalog/providers/routing/facet-resolver.ts → packages/admin-ui/src/lib/catalog/src/providers/routing/facet-resolver.ts

@@ -1,10 +1,10 @@
 import { Injectable } from '@angular/core';
 import { Router } from '@angular/router';
 
-import { BaseEntityResolver } from '../../../common/base-entity-resolver';
-import { FacetWithValues } from '../../../common/generated-types';
-import { getDefaultLanguage } from '../../../common/utilities/get-default-language';
-import { DataService } from '../../../data/providers/data.service';
+import { BaseEntityResolver } from '@vendure/admin-ui/core';
+import { FacetWithValues } from '@vendure/admin-ui/core';
+import { getDefaultLanguage } from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
 
 @Injectable()
 export class FacetResolver extends BaseEntityResolver<FacetWithValues.Fragment> {

+ 4 - 4
packages/admin-ui/src/app/catalog/providers/routing/product-resolver.ts → packages/admin-ui/src/lib/catalog/src/providers/routing/product-resolver.ts

@@ -1,10 +1,10 @@
 import { Injectable } from '@angular/core';
 import { Router } from '@angular/router';
 
-import { BaseEntityResolver } from '../../../common/base-entity-resolver';
-import { ProductWithVariants } from '../../../common/generated-types';
-import { getDefaultLanguage } from '../../../common/utilities/get-default-language';
-import { DataService } from '../../../data/providers/data.service';
+import { BaseEntityResolver } from '@vendure/admin-ui/core';
+import { ProductWithVariants } from '@vendure/admin-ui/core';
+import { getDefaultLanguage } from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
 
 @Injectable()
 export class ProductResolver extends BaseEntityResolver<ProductWithVariants.Fragment> {

+ 3 - 3
packages/admin-ui/src/app/catalog/providers/routing/product-variants-resolver.ts → packages/admin-ui/src/lib/catalog/src/providers/routing/product-variants-resolver.ts

@@ -1,9 +1,9 @@
 import { Injectable } from '@angular/core';
 import { Router } from '@angular/router';
 
-import { BaseEntityResolver } from '../../../common/base-entity-resolver';
-import { GetProductVariantOptions } from '../../../common/generated-types';
-import { DataService } from '../../../data/providers/data.service';
+import { BaseEntityResolver } from '@vendure/admin-ui/core';
+import { GetProductVariantOptions } from '@vendure/admin-ui/core';
+import { DataService } from '@vendure/admin-ui/core';
 
 @Injectable()
 export class ProductVariantsResolver extends BaseEntityResolver<GetProductVariantOptions.Product> {

+ 33 - 0
packages/admin-ui/src/lib/catalog/src/public_api.ts

@@ -0,0 +1,33 @@
+// This file was generated by the build-public-api.ts script
+export * from './catalog.module';
+export * from './catalog.routes';
+export * from './components/apply-facet-dialog/apply-facet-dialog.component';
+export * from './components/asset-detail/asset-detail.component';
+export * from './components/asset-list/asset-list.component';
+export * from './components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component';
+export * from './components/collection-contents/collection-contents.component';
+export * from './components/collection-detail/collection-detail.component';
+export * from './components/collection-list/collection-list.component';
+export * from './components/collection-tree/array-to-tree';
+export * from './components/collection-tree/collection-tree-node.component';
+export * from './components/collection-tree/collection-tree.component';
+export * from './components/facet-detail/facet-detail.component';
+export * from './components/facet-list/facet-list.component';
+export * from './components/generate-product-variants/generate-product-variants.component';
+export * from './components/option-value-input/option-value-input.component';
+export * from './components/product-assets/product-assets.component';
+export * from './components/product-detail/product-detail.component';
+export * from './components/product-list/product-list.component';
+export * from './components/product-search-input/product-search-input.component';
+export * from './components/product-search-input/product-search-selection-model';
+export * from './components/product-variants-editor/product-variants-editor.component';
+export * from './components/product-variants-list/product-variants-list.component';
+export * from './components/product-variants-table/product-variants-table.component';
+export * from './components/update-product-option-dialog/update-product-option-dialog.component';
+export * from './components/variant-price-detail/variant-price-detail.component';
+export * from './providers/product-detail.service';
+export * from './providers/routing/asset-resolver';
+export * from './providers/routing/collection-resolver';
+export * from './providers/routing/facet-resolver';
+export * from './providers/routing/product-resolver';
+export * from './providers/routing/product-variants-resolver';

+ 7 - 0
packages/admin-ui/src/lib/core/ng-package.json

@@ -0,0 +1,7 @@
+{
+  "lib": {
+    "styleIncludePaths": [
+      "../static/styles"
+    ]
+  }
+}

+ 0 - 0
packages/admin-ui/src/app/app.component.html → packages/admin-ui/src/lib/core/src/app.component.html


+ 1 - 1
packages/admin-ui/src/app/app.component.module.ts → packages/admin-ui/src/lib/core/src/app.component.module.ts

@@ -1,7 +1,7 @@
 import { NgModule } from '@angular/core';
 
 import { AppComponent } from './app.component';
-import { CoreModule } from './core/core.module';
+import { CoreModule } from './core.module';
 import { SharedModule } from './shared/shared.module';
 
 @NgModule({

+ 0 - 0
packages/admin-ui/src/app/app.component.scss → packages/admin-ui/src/lib/core/src/app.component.scss


Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini