@skyux/packages 7.0.0-beta.2 → 7.0.0-beta.4

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.2",
3
+ "version": "7.0.0-beta.4",
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.2",
31
- "@skyux-sdk/testing": "7.0.0-beta.2",
32
- "@skyux/a11y": "7.0.0-beta.2",
33
- "@skyux/action-bars": "7.0.0-beta.2",
34
- "@skyux/ag-grid": "7.0.0-beta.2",
35
- "@skyux/angular-tree-component": "7.0.0-beta.2",
36
- "@skyux/animations": "7.0.0-beta.2",
37
- "@skyux/assets": "7.0.0-beta.2",
38
- "@skyux/autonumeric": "7.0.0-beta.2",
39
- "@skyux/avatar": "7.0.0-beta.2",
40
- "@skyux/colorpicker": "7.0.0-beta.2",
41
- "@skyux/config": "7.0.0-beta.2",
42
- "@skyux/core": "7.0.0-beta.2",
43
- "@skyux/data-manager": "7.0.0-beta.2",
44
- "@skyux/datetime": "7.0.0-beta.2",
30
+ "@skyux-sdk/prettier-schematics": "7.0.0-beta.4",
31
+ "@skyux-sdk/testing": "7.0.0-beta.4",
32
+ "@skyux/a11y": "7.0.0-beta.4",
33
+ "@skyux/action-bars": "7.0.0-beta.4",
34
+ "@skyux/ag-grid": "7.0.0-beta.4",
35
+ "@skyux/angular-tree-component": "7.0.0-beta.4",
36
+ "@skyux/animations": "7.0.0-beta.4",
37
+ "@skyux/assets": "7.0.0-beta.4",
38
+ "@skyux/autonumeric": "7.0.0-beta.4",
39
+ "@skyux/avatar": "7.0.0-beta.4",
40
+ "@skyux/colorpicker": "7.0.0-beta.4",
41
+ "@skyux/config": "7.0.0-beta.4",
42
+ "@skyux/core": "7.0.0-beta.4",
43
+ "@skyux/data-manager": "7.0.0-beta.4",
44
+ "@skyux/datetime": "7.0.0-beta.4",
45
45
  "@skyux/docs-tools": "^7.0.0-beta.0",
46
- "@skyux/errors": "7.0.0-beta.2",
47
- "@skyux/flyout": "7.0.0-beta.2",
48
- "@skyux/forms": "7.0.0-beta.2",
49
- "@skyux/grids": "7.0.0-beta.2",
50
- "@skyux/http": "7.0.0-beta.2",
51
- "@skyux/i18n": "7.0.0-beta.2",
46
+ "@skyux/errors": "7.0.0-beta.4",
47
+ "@skyux/flyout": "7.0.0-beta.4",
48
+ "@skyux/forms": "7.0.0-beta.4",
49
+ "@skyux/grids": "7.0.0-beta.4",
50
+ "@skyux/http": "7.0.0-beta.4",
51
+ "@skyux/i18n": "7.0.0-beta.4",
52
52
  "@skyux/icons": "^5.1.1",
53
- "@skyux/indicators": "7.0.0-beta.2",
54
- "@skyux/inline-form": "7.0.0-beta.2",
55
- "@skyux/layout": "7.0.0-beta.2",
56
- "@skyux/list-builder": "7.0.0-beta.2",
57
- "@skyux/list-builder-common": "7.0.0-beta.2",
58
- "@skyux/list-builder-view-checklist": "7.0.0-beta.2",
59
- "@skyux/list-builder-view-grids": "7.0.0-beta.2",
60
- "@skyux/lists": "7.0.0-beta.2",
61
- "@skyux/lookup": "7.0.0-beta.2",
62
- "@skyux/modals": "7.0.0-beta.2",
63
- "@skyux/navbar": "7.0.0-beta.2",
64
- "@skyux/omnibar-interop": "7.0.0-beta.2",
65
- "@skyux/pages": "7.0.0-beta.2",
66
- "@skyux/phone-field": "7.0.0-beta.2",
67
- "@skyux/popovers": "7.0.0-beta.2",
68
- "@skyux/progress-indicator": "7.0.0-beta.2",
69
- "@skyux/router": "7.0.0-beta.2",
70
- "@skyux/select-field": "7.0.0-beta.2",
71
- "@skyux/split-view": "7.0.0-beta.2",
72
- "@skyux/tabs": "7.0.0-beta.2",
73
- "@skyux/text-editor": "7.0.0-beta.2",
74
- "@skyux/theme": "7.0.0-beta.2",
75
- "@skyux/tiles": "7.0.0-beta.2",
76
- "@skyux/toast": "7.0.0-beta.2",
77
- "@skyux/validation": "7.0.0-beta.2",
53
+ "@skyux/indicators": "7.0.0-beta.4",
54
+ "@skyux/inline-form": "7.0.0-beta.4",
55
+ "@skyux/layout": "7.0.0-beta.4",
56
+ "@skyux/list-builder": "7.0.0-beta.4",
57
+ "@skyux/list-builder-common": "7.0.0-beta.4",
58
+ "@skyux/list-builder-view-checklist": "7.0.0-beta.4",
59
+ "@skyux/list-builder-view-grids": "7.0.0-beta.4",
60
+ "@skyux/lists": "7.0.0-beta.4",
61
+ "@skyux/lookup": "7.0.0-beta.4",
62
+ "@skyux/modals": "7.0.0-beta.4",
63
+ "@skyux/navbar": "7.0.0-beta.4",
64
+ "@skyux/omnibar-interop": "7.0.0-beta.4",
65
+ "@skyux/pages": "7.0.0-beta.4",
66
+ "@skyux/phone-field": "7.0.0-beta.4",
67
+ "@skyux/popovers": "7.0.0-beta.4",
68
+ "@skyux/progress-indicator": "7.0.0-beta.4",
69
+ "@skyux/router": "7.0.0-beta.4",
70
+ "@skyux/select-field": "7.0.0-beta.4",
71
+ "@skyux/split-view": "7.0.0-beta.4",
72
+ "@skyux/tabs": "7.0.0-beta.4",
73
+ "@skyux/text-editor": "7.0.0-beta.4",
74
+ "@skyux/theme": "7.0.0-beta.4",
75
+ "@skyux/tiles": "7.0.0-beta.4",
76
+ "@skyux/toast": "7.0.0-beta.4",
77
+ "@skyux/validation": "7.0.0-beta.4",
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.2",
4
+ "version": "7.0.0-beta.4",
5
5
  "factory": "./noop/noop.schematic",
6
6
  "description": "Update all SKY UX component packages"
7
7
  },
@@ -11,9 +11,14 @@
11
11
  "description": "Add moment.js as a dependency since SKY UX 7 references moment.js as a peer."
12
12
  },
13
13
  "rename-mutation-observer-service": {
14
- "version": "",
14
+ "version": "7.0.0-beta.0",
15
15
  "factory": "./update-7/rename-mutation-observer-service",
16
16
  "description": "Replace all instances of 'MutationObserverService' with 'SkyMutationObserverService'"
17
+ },
18
+ "add-compat-stylesheets": {
19
+ "version": "7.0.0-beta.0",
20
+ "factory": "./update-7/add-compat-stylesheets",
21
+ "description": "Add a backwards-compatible stylesheet with styles that have been removed from components in SKY UX 7."
17
22
  }
18
23
  }
19
24
  }
@@ -0,0 +1,2 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ export default function (): Rule;
@@ -0,0 +1,105 @@
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
+ const SKYUX7_COMPAT_CSS_PATH = 'src/app/skyux7-compat.css';
7
+ const compatStyles = {
8
+ libraries: [
9
+ {
10
+ name: '@skyux/indicators',
11
+ components: [
12
+ {
13
+ name: 'alert',
14
+ styles: [
15
+ {
16
+ css: `
17
+ .sky-alert {
18
+ margin-bottom: 20px;
19
+ }`,
20
+ instructions: `
21
+ The preset bottom margin has been removed from alert components. To implement the newly-recommended spacing, add the \`sky-margin-stacked-lg\` CSS class to each \`sky-alert\` component in your application, then remove this block.`,
22
+ },
23
+ ],
24
+ },
25
+ ],
26
+ },
27
+ ],
28
+ };
29
+ function buildCommentBlock(message) {
30
+ return `/${'*'.repeat(79)}
31
+ * ${message.replace(/(?![^\n]{1,75}$)([^\n]{1,75})\s/g, '$1\n * ')}
32
+ ${'*'.repeat(79)}/`;
33
+ }
34
+ function buildComponentCss(component) {
35
+ let contents = buildCommentBlock(`COMPONENT: ${component.name.toUpperCase()}`);
36
+ for (const style of component.styles) {
37
+ contents += `
38
+
39
+ ${buildCommentBlock(style.instructions.trim())}
40
+
41
+ ${style.css.trim()}
42
+ `;
43
+ }
44
+ return contents;
45
+ }
46
+ function writeStylesheet(contents) {
47
+ return (tree) => {
48
+ if (tree.exists(SKYUX7_COMPAT_CSS_PATH)) {
49
+ tree.overwrite(SKYUX7_COMPAT_CSS_PATH, contents);
50
+ }
51
+ else {
52
+ tree.create(SKYUX7_COMPAT_CSS_PATH, contents);
53
+ }
54
+ };
55
+ }
56
+ function addStylesheetToWorkspace() {
57
+ return () => (0, workspace_1.updateWorkspace)((workspace) => {
58
+ for (const project of workspace.projects.values()) {
59
+ for (const targetName of ['build', 'test']) {
60
+ // Ignore build target for libraries.
61
+ if (!(targetName === 'build' &&
62
+ project.extensions.projectType === 'library')) {
63
+ const target = project.targets.get(targetName);
64
+ /* istanbul ignore else */
65
+ if (target && target.options) {
66
+ const styles = (target.options.styles = (target.options.styles ||
67
+ []));
68
+ if (!styles.includes(SKYUX7_COMPAT_CSS_PATH)) {
69
+ styles.push(SKYUX7_COMPAT_CSS_PATH);
70
+ }
71
+ }
72
+ }
73
+ }
74
+ }
75
+ });
76
+ }
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
+ }
88
+ }
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:
92
+ - Address each of the changes by following the instructions
93
+ in each block of CSS, then remove the block.
94
+ - Delete this file after all blocks have been addressed.
95
+ - Remove each occurrence of this file in your project's
96
+ angular.json file.`)}
97
+
98
+ ${contents}`;
99
+ rules.push(writeStylesheet(contents), addStylesheetToWorkspace());
100
+ }
101
+ return (0, schematics_1.chain)(rules);
102
+ };
103
+ }
104
+ exports.default = default_1;
105
+ //# sourceMappingURL=add-compat-stylesheets.js.map
@@ -0,0 +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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"}
@@ -14,4 +14,4 @@ export declare function getProject(workspace: workspaces.WorkspaceDefinition, pr
14
14
  /**
15
15
  * Allows updates to the Angular project config (angular.json).
16
16
  */
17
- export declare function updateWorkspace(updater: (workspace: workspaces.WorkspaceDefinition) => void): Rule;
17
+ export declare function updateWorkspace(updater: (workspace: workspaces.WorkspaceDefinition) => void | Promise<void>): Rule;
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../../../../../libs/components/packages/src/schematics/utility/workspace.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,2DAA6E;AAE7E,iCAA0C;AAE1C;;;GAGG;AACH,SAAS,UAAU,CAAC,IAAU;IAC5B,OAAO;QACL,0BAA0B;QAC1B,KAAK,CAAC,QAAQ,CAAC,IAAY;YACzB,OAAO,IAAA,uBAAgB,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACtC,CAAC;QACD,0BAA0B;QAC1B,KAAK,CAAC,SAAS,CAAC,IAAY,EAAE,IAAY;YACxC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,IAAY;YAC5B,gCAAgC;YAChC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACrE,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,IAAY;YACvB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,YAAY,CAAC,IAAU;IAI3C,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,iBAAU,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAChE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AAC7B,CAAC;AAPD,oCAOC;AAEM,KAAK,UAAU,UAAU,CAC9B,SAAyC,EACzC,WAAmB;IAEnB,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACpD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,gCAAmB,CAC3B,QAAQ,WAAW,yEAAyE,CAC7F,CAAC;KACH;IAED,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AAClC,CAAC;AAZD,gCAYC;AAED;;GAEG;AACH,SAAgB,eAAe,CAC7B,OAA4D;IAE5D,OAAO,KAAK,EAAE,IAAI,EAAE,EAAE;QACpB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAErD,iEAAiE;QACjE,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;QAEzB,gDAAgD;QAChD,MAAM,iBAAU,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC;AAZD,0CAYC"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../../../../../libs/components/packages/src/schematics/utility/workspace.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,2DAA6E;AAE7E,iCAA0C;AAE1C;;;GAGG;AACH,SAAS,UAAU,CAAC,IAAU;IAC5B,OAAO;QACL,0BAA0B;QAC1B,KAAK,CAAC,QAAQ,CAAC,IAAY;YACzB,OAAO,IAAA,uBAAgB,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACtC,CAAC;QACD,0BAA0B;QAC1B,KAAK,CAAC,SAAS,CAAC,IAAY,EAAE,IAAY;YACxC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,IAAY;YAC5B,gCAAgC;YAChC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACrE,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,IAAY;YACvB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,YAAY,CAAC,IAAU;IAI3C,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,iBAAU,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAChE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AAC7B,CAAC;AAPD,oCAOC;AAEM,KAAK,UAAU,UAAU,CAC9B,SAAyC,EACzC,WAAmB;IAEnB,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACpD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,gCAAmB,CAC3B,QAAQ,WAAW,yEAAyE,CAC7F,CAAC;KACH;IAED,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AAClC,CAAC;AAZD,gCAYC;AAED;;GAEG;AACH,SAAgB,eAAe,CAC7B,OAA4E;IAE5E,OAAO,KAAK,EAAE,IAAI,EAAE,EAAE;QACpB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAErD,iEAAiE;QACjE,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;QAEzB,gDAAgD;QAChD,MAAM,iBAAU,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC;AAZD,0CAYC"}