@skyux/packages 7.0.0-beta.6 → 7.0.0-beta.8

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyux/packages",
3
- "version": "7.0.0-beta.6",
3
+ "version": "7.0.0-beta.8",
4
4
  "author": "Blackbaud, Inc.",
5
5
  "description": "Handles the `ng update` command for SKY UX component libraries.",
6
6
  "keywords": [
@@ -27,54 +27,54 @@
27
27
  "@blackbaud/skyux-lib-code-block": "^7.0.0-beta.0",
28
28
  "@blackbaud/skyux-lib-media": "^7.0.0-beta.0",
29
29
  "@blackbaud/skyux-lib-stache": "^7.0.0-beta.0",
30
- "@skyux-sdk/prettier-schematics": "7.0.0-beta.6",
31
- "@skyux-sdk/testing": "7.0.0-beta.6",
32
- "@skyux/a11y": "7.0.0-beta.6",
33
- "@skyux/action-bars": "7.0.0-beta.6",
34
- "@skyux/ag-grid": "7.0.0-beta.6",
35
- "@skyux/angular-tree-component": "7.0.0-beta.6",
36
- "@skyux/animations": "7.0.0-beta.6",
37
- "@skyux/assets": "7.0.0-beta.6",
38
- "@skyux/autonumeric": "7.0.0-beta.6",
39
- "@skyux/avatar": "7.0.0-beta.6",
40
- "@skyux/colorpicker": "7.0.0-beta.6",
41
- "@skyux/config": "7.0.0-beta.6",
42
- "@skyux/core": "7.0.0-beta.6",
43
- "@skyux/data-manager": "7.0.0-beta.6",
44
- "@skyux/datetime": "7.0.0-beta.6",
30
+ "@skyux-sdk/prettier-schematics": "7.0.0-beta.8",
31
+ "@skyux-sdk/testing": "7.0.0-beta.8",
32
+ "@skyux/a11y": "7.0.0-beta.8",
33
+ "@skyux/action-bars": "7.0.0-beta.8",
34
+ "@skyux/ag-grid": "7.0.0-beta.8",
35
+ "@skyux/angular-tree-component": "7.0.0-beta.8",
36
+ "@skyux/animations": "7.0.0-beta.8",
37
+ "@skyux/assets": "7.0.0-beta.8",
38
+ "@skyux/autonumeric": "7.0.0-beta.8",
39
+ "@skyux/avatar": "7.0.0-beta.8",
40
+ "@skyux/colorpicker": "7.0.0-beta.8",
41
+ "@skyux/config": "7.0.0-beta.8",
42
+ "@skyux/core": "7.0.0-beta.8",
43
+ "@skyux/data-manager": "7.0.0-beta.8",
44
+ "@skyux/datetime": "7.0.0-beta.8",
45
45
  "@skyux/docs-tools": "^7.0.0-beta.0",
46
- "@skyux/errors": "7.0.0-beta.6",
47
- "@skyux/flyout": "7.0.0-beta.6",
48
- "@skyux/forms": "7.0.0-beta.6",
49
- "@skyux/grids": "7.0.0-beta.6",
50
- "@skyux/http": "7.0.0-beta.6",
51
- "@skyux/i18n": "7.0.0-beta.6",
46
+ "@skyux/errors": "7.0.0-beta.8",
47
+ "@skyux/flyout": "7.0.0-beta.8",
48
+ "@skyux/forms": "7.0.0-beta.8",
49
+ "@skyux/grids": "7.0.0-beta.8",
50
+ "@skyux/http": "7.0.0-beta.8",
51
+ "@skyux/i18n": "7.0.0-beta.8",
52
52
  "@skyux/icons": "^5.1.1",
53
- "@skyux/indicators": "7.0.0-beta.6",
54
- "@skyux/inline-form": "7.0.0-beta.6",
55
- "@skyux/layout": "7.0.0-beta.6",
56
- "@skyux/list-builder": "7.0.0-beta.6",
57
- "@skyux/list-builder-common": "7.0.0-beta.6",
58
- "@skyux/list-builder-view-checklist": "7.0.0-beta.6",
59
- "@skyux/list-builder-view-grids": "7.0.0-beta.6",
60
- "@skyux/lists": "7.0.0-beta.6",
61
- "@skyux/lookup": "7.0.0-beta.6",
62
- "@skyux/modals": "7.0.0-beta.6",
63
- "@skyux/navbar": "7.0.0-beta.6",
64
- "@skyux/omnibar-interop": "7.0.0-beta.6",
65
- "@skyux/pages": "7.0.0-beta.6",
66
- "@skyux/phone-field": "7.0.0-beta.6",
67
- "@skyux/popovers": "7.0.0-beta.6",
68
- "@skyux/progress-indicator": "7.0.0-beta.6",
69
- "@skyux/router": "7.0.0-beta.6",
70
- "@skyux/select-field": "7.0.0-beta.6",
71
- "@skyux/split-view": "7.0.0-beta.6",
72
- "@skyux/tabs": "7.0.0-beta.6",
73
- "@skyux/text-editor": "7.0.0-beta.6",
74
- "@skyux/theme": "7.0.0-beta.6",
75
- "@skyux/tiles": "7.0.0-beta.6",
76
- "@skyux/toast": "7.0.0-beta.6",
77
- "@skyux/validation": "7.0.0-beta.6",
53
+ "@skyux/indicators": "7.0.0-beta.8",
54
+ "@skyux/inline-form": "7.0.0-beta.8",
55
+ "@skyux/layout": "7.0.0-beta.8",
56
+ "@skyux/list-builder": "7.0.0-beta.8",
57
+ "@skyux/list-builder-common": "7.0.0-beta.8",
58
+ "@skyux/list-builder-view-checklist": "7.0.0-beta.8",
59
+ "@skyux/list-builder-view-grids": "7.0.0-beta.8",
60
+ "@skyux/lists": "7.0.0-beta.8",
61
+ "@skyux/lookup": "7.0.0-beta.8",
62
+ "@skyux/modals": "7.0.0-beta.8",
63
+ "@skyux/navbar": "7.0.0-beta.8",
64
+ "@skyux/omnibar-interop": "7.0.0-beta.8",
65
+ "@skyux/pages": "7.0.0-beta.8",
66
+ "@skyux/phone-field": "7.0.0-beta.8",
67
+ "@skyux/popovers": "7.0.0-beta.8",
68
+ "@skyux/progress-indicator": "7.0.0-beta.8",
69
+ "@skyux/router": "7.0.0-beta.8",
70
+ "@skyux/select-field": "7.0.0-beta.8",
71
+ "@skyux/split-view": "7.0.0-beta.8",
72
+ "@skyux/tabs": "7.0.0-beta.8",
73
+ "@skyux/text-editor": "7.0.0-beta.8",
74
+ "@skyux/theme": "7.0.0-beta.8",
75
+ "@skyux/tiles": "7.0.0-beta.8",
76
+ "@skyux/toast": "7.0.0-beta.8",
77
+ "@skyux/validation": "7.0.0-beta.8",
78
78
  "ag-grid-angular": "^27.2.0",
79
79
  "ag-grid-community": "^27.2.0",
80
80
  "ag-grid-enterprise": "^27.2.0"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schematics": {
3
3
  "noop": {
4
- "version": "7.0.0-beta.6",
4
+ "version": "7.0.0-beta.8",
5
5
  "factory": "./noop/noop.schematic",
6
6
  "description": "Update all SKY UX component packages"
7
7
  },
@@ -19,6 +19,11 @@
19
19
  "version": "7.0.0-beta.0",
20
20
  "factory": "./update-7/add-compat-stylesheets",
21
21
  "description": "Add a backwards-compatible stylesheet with styles that have been removed from components in SKY UX 7."
22
+ },
23
+ "fix-scss-imports": {
24
+ "version": "7.0.0-beta.0",
25
+ "factory": "./update-7/fix-scss-imports",
26
+ "description": "Fix SCSS imports"
22
27
  }
23
28
  }
24
29
  }
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const schematics_1 = require("@angular-devkit/schematics");
4
4
  const tree_1 = require("../../utility/tree");
5
5
  const workspace_1 = require("../../utility/workspace");
6
- const SKYUX7_COMPAT_CSS_PATH = 'src/app/skyux7-compat.css';
6
+ const SKYUX7_COMPAT_CSS_FILE_NAME = 'skyux7-compat.css';
7
7
  const compatStyles = {
8
8
  libraries: [
9
9
  {
@@ -26,10 +26,19 @@ The preset bottom margin has been removed from alert components. To implement th
26
26
  },
27
27
  ],
28
28
  };
29
+ function getProjectSourcePath(projectDefinition) {
30
+ /*istanbul ignore else*/
31
+ if (projectDefinition.sourceRoot) {
32
+ return `${projectDefinition.sourceRoot}/app`;
33
+ }
34
+ else {
35
+ return `${projectDefinition.root}/src/app`;
36
+ }
37
+ }
29
38
  function buildCommentBlock(message) {
30
39
  return `/${'*'.repeat(79)}
31
40
  * ${message.replace(/(?![^\n]{1,75}$)([^\n]{1,75})\s/g, '$1\n * ')}
32
- ${'*'.repeat(79)}/`;
41
+ ${'*'.repeat(79)}/`;
33
42
  }
34
43
  function buildComponentCss(component) {
35
44
  let contents = buildCommentBlock(`COMPONENT: ${component.name.toUpperCase()}`);
@@ -43,13 +52,14 @@ ${style.css.trim()}
43
52
  }
44
53
  return contents;
45
54
  }
46
- function writeStylesheet(contents) {
55
+ function writeStylesheet(sourceRoot, contents) {
56
+ const filePath = `${sourceRoot}/${SKYUX7_COMPAT_CSS_FILE_NAME}`;
47
57
  return (tree) => {
48
- if (tree.exists(SKYUX7_COMPAT_CSS_PATH)) {
49
- tree.overwrite(SKYUX7_COMPAT_CSS_PATH, contents);
58
+ if (tree.exists(filePath)) {
59
+ tree.overwrite(filePath, contents);
50
60
  }
51
61
  else {
52
- tree.create(SKYUX7_COMPAT_CSS_PATH, contents);
62
+ tree.create(filePath, contents);
53
63
  }
54
64
  };
55
65
  }
@@ -57,16 +67,16 @@ function addStylesheetToWorkspace() {
57
67
  return () => (0, workspace_1.updateWorkspace)((workspace) => {
58
68
  for (const project of workspace.projects.values()) {
59
69
  for (const targetName of ['build', 'test']) {
60
- // Ignore build target for libraries.
61
- if (!(targetName === 'build' &&
62
- project.extensions.projectType === 'library')) {
70
+ if (project.extensions.projectType === 'application') {
63
71
  const target = project.targets.get(targetName);
72
+ const sourceRoot = getProjectSourcePath(project);
73
+ const filePath = `${sourceRoot}/${SKYUX7_COMPAT_CSS_FILE_NAME}`;
64
74
  /* istanbul ignore else */
65
75
  if (target && target.options) {
66
76
  const styles = (target.options.styles = (target.options.styles ||
67
77
  []));
68
- if (!styles.includes(SKYUX7_COMPAT_CSS_PATH)) {
69
- styles.push(SKYUX7_COMPAT_CSS_PATH);
78
+ if (!styles.includes(filePath)) {
79
+ styles.push(filePath);
70
80
  }
71
81
  }
72
82
  }
@@ -74,29 +84,43 @@ function addStylesheetToWorkspace() {
74
84
  }
75
85
  });
76
86
  }
77
- function default_1() {
78
- return (tree) => {
79
- const packageJson = JSON.parse((0, tree_1.readRequiredFile)(tree, '/package.json'));
80
- let contents = '';
81
- for (const library of compatStyles.libraries) {
82
- if (packageJson.dependencies?.[library.name] ||
83
- packageJson.devDependencies?.[library.name]) {
84
- for (const component of library.components) {
85
- contents += buildComponentCss(component);
86
- }
87
+ function getCompatStyles(tree) {
88
+ let contents = '';
89
+ const packageJson = JSON.parse((0, tree_1.readRequiredFile)(tree, '/package.json'));
90
+ for (const library of compatStyles.libraries) {
91
+ if (packageJson.dependencies?.[library.name] ||
92
+ packageJson.devDependencies?.[library.name]) {
93
+ for (const component of library.components) {
94
+ contents += buildComponentCss(component);
87
95
  }
88
96
  }
89
- const rules = [];
90
- if (contents) {
91
- contents = `${buildCommentBlock(`TODO: The following component libraries introduced visual breaking changes in SKY UX 7. Each block of CSS reintroduces the styles that were changed or removed for backwards compatibility. You will need to do the following before migrating to the next major version of SKY UX:
97
+ }
98
+ return contents
99
+ ? `${buildCommentBlock(`TODO: The following component libraries introduced visual breaking changes in SKY UX 7. Each block of CSS reintroduces the styles that were changed or removed for backwards compatibility. You will need to do the following before migrating to the next major version of SKY UX:
92
100
  - Address each of the changes by following the instructions
93
101
  in each block of CSS, then remove the block.
94
102
  - Delete this file after all blocks have been addressed.
95
103
  - Remove each occurrence of this file in your project's
96
104
  angular.json file.`)}
97
105
 
98
- ${contents}`;
99
- rules.push(writeStylesheet(contents), addStylesheetToWorkspace());
106
+ ${contents}`
107
+ : undefined;
108
+ }
109
+ function default_1() {
110
+ return async (tree) => {
111
+ const { workspace } = await (0, workspace_1.getWorkspace)(tree);
112
+ const styles = getCompatStyles(tree);
113
+ const rules = [];
114
+ for (const [, projectDefinition] of workspace.projects.entries()) {
115
+ if (projectDefinition.extensions.projectType === 'application') {
116
+ if (styles) {
117
+ const sourcePath = getProjectSourcePath(projectDefinition);
118
+ rules.push(writeStylesheet(sourcePath, styles));
119
+ }
120
+ }
121
+ }
122
+ if (styles) {
123
+ rules.push(addStylesheetToWorkspace());
100
124
  }
101
125
  return (0, schematics_1.chain)(rules);
102
126
  };
@@ -1 +1 @@
1
- {"version":3,"file":"add-compat-stylesheets.js","sourceRoot":"","sources":["../../../../../../../../libs/components/packages/src/schematics/migrations/update-7/add-compat-stylesheets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-compat-stylesheets.js","sourceRoot":"","sources":["../../../../../../../../libs/components/packages/src/schematics/migrations/update-7/add-compat-stylesheets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ export default function (): Rule;
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const schematics_1 = require("@angular-devkit/schematics");
4
+ const tree_1 = require("../../utility/tree");
5
+ const workspace_1 = require("../../utility/workspace");
6
+ /**
7
+ * Replaces any @blackbaud/skyux-design-tokens imports with their @skyux/theme equivalents.
8
+ */
9
+ function replaceDesignTokensImports(contents) {
10
+ const matches = contents.matchAll(/@import\s+['"]?node_modules\/@blackbaud\/skyux-design-tokens\/scss\/_?(mixins|variables)(?:\.scss)?['"]?;?\s+/g);
11
+ for (const match of matches) {
12
+ const importPath = match[0];
13
+ const importType = match[1]; // mixins or variables
14
+ const replacementTemplate = new RegExp(`@import\\s+['"]?node_modules\\/@skyux\\/theme\\/scss\\/_?${importType}(?:\\.scss)?['"]?;?`);
15
+ // If the equivalent default import is already found, just remove the design tokens import.
16
+ if (replacementTemplate.test(contents)) {
17
+ contents = contents.replace(importPath, '');
18
+ continue;
19
+ }
20
+ contents = contents.replace(importPath, `@import 'node_modules/@skyux/theme/scss/${importType}';\n`);
21
+ }
22
+ return contents;
23
+ }
24
+ /**
25
+ * If a mixins import exists, add the variables import as well.
26
+ * (In prior versions of SKY UX, the variables were exported from the mixins file, but
27
+ * this created a circular reference, hence the fix.)
28
+ */
29
+ function addVariablesScssImports(contents) {
30
+ const matches = contents.matchAll(/@import\s+['"]?node_modules\/@skyux\/theme\/scss\/(_compat\/|themes\/modern\/_compat\/)?_?mixins(?:\.scss)?['"]?;?/g);
31
+ for (const match of matches) {
32
+ const mixinsImport = match[0];
33
+ const variablesImport = mixinsImport.replace('mixins', 'variables');
34
+ if (!contents.includes(variablesImport)) {
35
+ contents = contents.replace(mixinsImport, `${mixinsImport}\n${variablesImport}`);
36
+ }
37
+ }
38
+ return contents;
39
+ }
40
+ function fixScssImports() {
41
+ return async (tree) => {
42
+ const { workspace } = await (0, workspace_1.getWorkspace)(tree);
43
+ for (const [, projectDefinition] of workspace.projects.entries()) {
44
+ tree.getDir(projectDefinition.root).visit((filePath) => {
45
+ if (filePath.endsWith('.scss')) {
46
+ const contents = (0, tree_1.readRequiredFile)(tree, filePath);
47
+ let updatedContents = contents;
48
+ updatedContents = replaceDesignTokensImports(updatedContents);
49
+ updatedContents = addVariablesScssImports(updatedContents);
50
+ if (updatedContents !== contents) {
51
+ tree.overwrite(filePath, updatedContents);
52
+ }
53
+ }
54
+ });
55
+ }
56
+ };
57
+ }
58
+ /**
59
+ * Removes the local version of '@blackbaud/skyux-design-tokens' from package.json;
60
+ */
61
+ function removeDesignTokensPackage() {
62
+ return (tree) => {
63
+ const packageJson = JSON.parse((0, tree_1.readRequiredFile)(tree, 'package.json'));
64
+ if (packageJson.dependencies) {
65
+ delete packageJson.dependencies['@blackbaud/skyux-design-tokens'];
66
+ }
67
+ if (packageJson.devDependencies) {
68
+ delete packageJson.devDependencies['@blackbaud/skyux-design-tokens'];
69
+ }
70
+ tree.overwrite('package.json', JSON.stringify(packageJson));
71
+ };
72
+ }
73
+ function default_1() {
74
+ return (0, schematics_1.chain)([fixScssImports(), removeDesignTokensPackage()]);
75
+ }
76
+ exports.default = default_1;
77
+ //# sourceMappingURL=fix-scss-imports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fix-scss-imports.js","sourceRoot":"","sources":["../../../../../../../../libs/components/packages/src/schematics/migrations/update-7/fix-scss-imports.ts"],"names":[],"mappings":"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"}