@servicetitan/startup 22.8.1 → 22.9.0

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.
Files changed (34) hide show
  1. package/dist/cli/commands/build.d.ts.map +1 -1
  2. package/dist/cli/commands/build.js +2 -0
  3. package/dist/cli/commands/build.js.map +1 -1
  4. package/dist/cli/commands/index.d.ts +1 -0
  5. package/dist/cli/commands/index.d.ts.map +1 -1
  6. package/dist/cli/commands/index.js +1 -0
  7. package/dist/cli/commands/index.js.map +1 -1
  8. package/dist/cli/commands/kendo-ui-license.d.ts +7 -0
  9. package/dist/cli/commands/kendo-ui-license.d.ts.map +1 -0
  10. package/dist/cli/commands/kendo-ui-license.js +93 -0
  11. package/dist/cli/commands/kendo-ui-license.js.map +1 -0
  12. package/dist/cli/index.js +2 -0
  13. package/dist/cli/index.js.map +1 -1
  14. package/dist/cli/utils/index.d.ts +1 -0
  15. package/dist/cli/utils/index.d.ts.map +1 -1
  16. package/dist/cli/utils/index.js +1 -0
  17. package/dist/cli/utils/index.js.map +1 -1
  18. package/dist/cli/utils/is-module-installed.d.ts +2 -0
  19. package/dist/cli/utils/is-module-installed.d.ts.map +1 -0
  20. package/dist/cli/utils/is-module-installed.js +14 -0
  21. package/dist/cli/utils/is-module-installed.js.map +1 -0
  22. package/dist/utils/get-jest-config.js +1 -1
  23. package/dist/utils/get-jest-config.js.map +1 -1
  24. package/package.json +14 -12
  25. package/src/cli/commands/__tests__/kendo-ui-license.test.ts +83 -0
  26. package/src/cli/commands/build.ts +2 -1
  27. package/src/cli/commands/index.ts +1 -0
  28. package/src/cli/commands/kendo-ui-license.ts +65 -0
  29. package/src/cli/index.ts +4 -0
  30. package/src/cli/utils/index.ts +1 -0
  31. package/src/cli/utils/is-module-installed.ts +8 -0
  32. package/src/utils/get-jest-config.ts +1 -1
  33. package/template/.gitignore +14 -0
  34. package/template/.npmrc +3 -0
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/build.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;AAE5B,UAAU,IAAI;IACV,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,qBAAa,KAAM,YAAW,OAAO;IACrB,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI;IAGxB,OAAO;CAqChB"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/build.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAkB,MAAM,GAAG,CAAC;AAE5C,UAAU,IAAI;IACV,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,qBAAa,KAAM,YAAW,OAAO;IACrB,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI;IAGxB,OAAO;CAsChB"}
@@ -22,6 +22,7 @@ exports.Build = void 0;
22
22
  const exec = require('@lerna/exec');
23
23
  const utils_1 = require("../../utils");
24
24
  const utils_2 = require("../utils");
25
+ const _1 = require(".");
25
26
  class Build {
26
27
  constructor(args) {
27
28
  Object.defineProperty(this, "args", {
@@ -52,6 +53,7 @@ class Build {
52
53
  yield (0, utils_2.tsc)(packages[utils_1.PackageType.TSC]);
53
54
  }
54
55
  if (packages[utils_1.PackageType.Webpack].length) {
56
+ yield (0, _1.kendoUILicense)();
55
57
  yield exec({
56
58
  'cmd': 'startup bundle-package',
57
59
  'scope': packages[utils_1.PackageType.Webpack].map(({ name }) => name),
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/cli/commands/build.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAEpC,uCAAuF;AACvF,oCAA+B;AAW/B,MAAa,KAAK;IACd,YAAoB,IAAU;;;;;mBAAV;;IAAa,CAAC;IAG5B,OAAO;;YACT,MAAM,QAAQ,GAAG,IAAA,2BAAmB,EAChC,IAAA,mBAAW,EAAC,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CACpE,CAAC;YACF,MAAM,uBAAuB,GAAG;gBAC5B,GAAG,QAAQ,CAAC,mBAAW,CAAC,GAAG,CAAC;gBAC5B,GAAG,QAAQ,CAAC,mBAAW,CAAC,OAAO,CAAC;aACnC,CAAC;YAEF,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;gBACvB,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aACvD;YAED,IAAI,uBAAuB,CAAC,MAAM,EAAE;gBAChC,MAAM,IAAI,CAAC;oBACP,GAAG,EAAE,yBAAyB;oBAC9B,KAAK,EAAE,uBAAuB,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;oBACtD,MAAM,EAAE,IAAI;iBACf,CAAC,CAAC;aACN;YAED,IAAI,QAAQ,CAAC,mBAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE;gBAClC,MAAM,IAAA,WAAG,EAAC,QAAQ,CAAC,mBAAW,CAAC,GAAG,CAAC,CAAC,CAAC;aACxC;YAED,IAAI,QAAQ,CAAC,mBAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE;gBACtC,MAAM,IAAI,CAAC;oBACP,KAAK,EAAE,wBAAwB;oBAC/B,OAAO,EAAE,QAAQ,CAAC,mBAAW,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;oBAC9D,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE;wBACF,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;wBAChD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;qBAC7C,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;iBACzB,CAAC,CAAC;aACN;QACL,CAAC;KAAA;CACJ;AArCG;IADC,iBAAS;;;;oCAqCT;AAxCL,sBAyCC"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/cli/commands/build.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAEpC,uCAAuF;AACvF,oCAA+B;AAC/B,wBAA4C;AAU5C,MAAa,KAAK;IACd,YAAoB,IAAU;;;;;mBAAV;;IAAa,CAAC;IAG5B,OAAO;;YACT,MAAM,QAAQ,GAAG,IAAA,2BAAmB,EAChC,IAAA,mBAAW,EAAC,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CACpE,CAAC;YACF,MAAM,uBAAuB,GAAG;gBAC5B,GAAG,QAAQ,CAAC,mBAAW,CAAC,GAAG,CAAC;gBAC5B,GAAG,QAAQ,CAAC,mBAAW,CAAC,OAAO,CAAC;aACnC,CAAC;YAEF,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;gBACvB,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aACvD;YAED,IAAI,uBAAuB,CAAC,MAAM,EAAE;gBAChC,MAAM,IAAI,CAAC;oBACP,GAAG,EAAE,yBAAyB;oBAC9B,KAAK,EAAE,uBAAuB,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;oBACtD,MAAM,EAAE,IAAI;iBACf,CAAC,CAAC;aACN;YAED,IAAI,QAAQ,CAAC,mBAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE;gBAClC,MAAM,IAAA,WAAG,EAAC,QAAQ,CAAC,mBAAW,CAAC,GAAG,CAAC,CAAC,CAAC;aACxC;YAED,IAAI,QAAQ,CAAC,mBAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE;gBACtC,MAAM,IAAA,iBAAc,GAAE,CAAC;gBACvB,MAAM,IAAI,CAAC;oBACP,KAAK,EAAE,wBAAwB;oBAC/B,OAAO,EAAE,QAAQ,CAAC,mBAAW,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;oBAC9D,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE;wBACF,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;wBAChD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;qBAC7C,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;iBACzB,CAAC,CAAC;aACN;QACL,CAAC;KAAA;CACJ;AAtCG;IADC,iBAAS;;;;oCAsCT;AAzCL,sBA0CC"}
@@ -1,6 +1,7 @@
1
1
  export * from './build';
2
2
  export * from './bundle-package';
3
3
  export * from './init';
4
+ export * from './kendo-ui-license';
4
5
  export * from './lint';
5
6
  export * from './prepare-package';
6
7
  export * from './start';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAE9B,MAAM,WAAW,OAAO;IACpB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,QAAQ,CAAC;AACvB,cAAc,oBAAoB,CAAC;AACnC,cAAc,QAAQ,CAAC;AACvB,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAE9B,MAAM,WAAW,OAAO;IACpB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B"}
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./build"), exports);
18
18
  __exportStar(require("./bundle-package"), exports);
19
19
  __exportStar(require("./init"), exports);
20
+ __exportStar(require("./kendo-ui-license"), exports);
20
21
  __exportStar(require("./lint"), exports);
21
22
  __exportStar(require("./prepare-package"), exports);
22
23
  __exportStar(require("./start"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,mDAAiC;AACjC,yCAAuB;AACvB,yCAAuB;AACvB,oDAAkC;AAClC,0CAAwB;AACxB,0CAAwB;AACxB,iDAA+B;AAC/B,gDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,mDAAiC;AACjC,yCAAuB;AACvB,qDAAmC;AACnC,yCAAuB;AACvB,oDAAkC;AAClC,0CAAwB;AACxB,0CAAwB;AACxB,iDAA+B;AAC/B,gDAA8B"}
@@ -0,0 +1,7 @@
1
+ import { Command } from '.';
2
+ export declare class KendoUILicense implements Command {
3
+ execute(): Promise<void>;
4
+ private activateLicense;
5
+ }
6
+ export declare function kendoUILicense(): Promise<void>;
7
+ //# sourceMappingURL=kendo-ui-license.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kendo-ui-license.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/kendo-ui-license.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;AA0B5B,qBAAa,cAAe,YAAW,OAAO;IACpC,OAAO;YASC,eAAe;CAoBhC;AAED,wBAAsB,cAAc,kBAEnC"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ var __importDefault = (this && this.__importDefault) || function (mod) {
21
+ return (mod && mod.__esModule) ? mod : { "default": mod };
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.kendoUILicense = exports.KendoUILicense = void 0;
25
+ const execa_1 = __importDefault(require("execa"));
26
+ const utils_1 = require("../../utils");
27
+ const utils_2 = require("../utils");
28
+ const ENCODED_LICENSE = `
29
+ ZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNklreEpReUo5LmV5SndjbTlrZFdOMGN5STZXM3N
30
+ pZEhKcFlXd2lPbVpoYkhObExDSmpiMlJsSWpvaVMwVk9SRTlWU1ZKRlFVTlVJaXdpYkdsalpXNX
31
+ paVVY0Y0dseVlYUnBiMjVFWVhSbElqb3hOalV3TWpnM056SXdmU3g3SW5SeWFXRnNJanBtWVd4e
32
+ lpTd2lZMjlrWlNJNklrdEZUa1JQVlVsRFQwMVFURVZVUlNJc0lteHBZMlZ1YzJWRmVIQnBjbUYw
33
+ YVc5dVJHRjBaU0k2TVRZMU1ESTROemN5TUgwc2V5SjBjbWxoYkNJNlptRnNjMlVzSW1OdlpHVWl
34
+ PaUpMUlU1RVQxVkpWbFZGSWl3aWJHbGpaVzV6WlVWNGNHbHlZWFJwYjI1RVlYUmxJam94TmpVd0
35
+ 1qZzNOekl3ZlN4N0luUnlhV0ZzSWpwbVlXeHpaU3dpWTI5a1pTSTZJa3RGVGtSUFZVbEJUa2RWV
36
+ EVGU0lpd2liR2xqWlc1elpVVjRjR2x5WVhScGIyNUVZWFJsSWpveE5qVXdNamczTnpJd2ZWMHNJ
37
+ bWx1ZEdWbmNtbDBlU0k2SW5wSGJHRlRRWGRUU1c1b1VqaHlRVEU1YVRSMFpYUjVhMmx4WnowaUx
38
+ DSnNhV05sYm5ObFNHOXNaR1Z5SWpvaVlXTm9hWFpwWTJoNVlXNUFjMlZ5ZG1salpYUnBkR0Z1TG
39
+ 1OdmJTSXNJbWxoZENJNk1UWXlOelk0TWpnMU5Dd2lZWFZrSWpvaVlXTm9hWFpwWTJoNVlXNUFjM
40
+ lZ5ZG1salpYUnBkR0Z1TG1OdmJTSjkuazI3dzJlNFV5cnA0a0xJVFVjSmk1Ql9waGlxU1NJWEU4
41
+ SktSdkh0bk1fUktqVnh5b3RwZUFUaW1wR1M2dUIwdEdDRU1xbmxkQUZTSkJreklINExFSzFfa0d
42
+ uS0VKZ0JDcEJSQWl2VU9sQWJ2bTFfVGlmVXhyNkd1SmpJS1BNeGh3Um5rRG1CNW1lNlRoQzJxR0
43
+ 9YWUxmX1ZuTDVlT3NOVEVneEx1cnVkaC1EZHZyTDJ5Vk9nMnRNQjg2aFotTXZ2Yk9JdWFrNGEtW
44
+ GdkVmRFM2pDdHNsNlRVb0p2eWJSRnlha0h2WUJOWTlHa2l2N190MDZUbmZEYWN6elRsTjdyWEQt
45
+ YlZNYmJ6Rm1XT2R3MGUtbUNxV2w2VS1XUlZGcXB1UHhQaDFodkFrOFBsWFFpVTZwbEZhMDhMaWh
46
+ pZXpOVkEwOE9JSXVxSjRZOEZnbDB5bnBFNDZn
47
+ `.replace(/\s/g, '');
48
+ const ENVIRONMENT_VARIABLE = 'KENDO_UI_LICENSE';
49
+ const LICENSE = Buffer.from(ENCODED_LICENSE, 'base64').toString('ascii');
50
+ const LICENSING_PACKAGE = '@progress/kendo-licensing';
51
+ class KendoUILicense {
52
+ execute() {
53
+ return __awaiter(this, void 0, void 0, function* () {
54
+ if (!(0, utils_2.isModuleInstalled)(LICENSING_PACKAGE)) {
55
+ return;
56
+ }
57
+ yield this.activateLicense();
58
+ });
59
+ }
60
+ activateLicense() {
61
+ return __awaiter(this, void 0, void 0, function* () {
62
+ const env = !process.env[ENVIRONMENT_VARIABLE]
63
+ ? { [ENVIRONMENT_VARIABLE]: LICENSE }
64
+ : undefined;
65
+ utils_1.log.info(env
66
+ ? 'Activating Kendo UI with embedded license...'
67
+ : `Activating Kendo UI with license from environment...`);
68
+ try {
69
+ yield (0, execa_1.default)('npx', ['kendo-ui-license', 'activate', '--no-install'], {
70
+ env,
71
+ stdio: 'inherit',
72
+ });
73
+ }
74
+ catch (error) {
75
+ throw new Error(`command failed with exit code ${error.exitCode}`);
76
+ }
77
+ });
78
+ }
79
+ }
80
+ __decorate([
81
+ utils_1.logErrors,
82
+ __metadata("design:type", Function),
83
+ __metadata("design:paramtypes", []),
84
+ __metadata("design:returntype", Promise)
85
+ ], KendoUILicense.prototype, "activateLicense", null);
86
+ exports.KendoUILicense = KendoUILicense;
87
+ function kendoUILicense() {
88
+ return __awaiter(this, void 0, void 0, function* () {
89
+ return new KendoUILicense().execute();
90
+ });
91
+ }
92
+ exports.kendoUILicense = kendoUILicense;
93
+ //# sourceMappingURL=kendo-ui-license.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kendo-ui-license.js","sourceRoot":"","sources":["../../../src/cli/commands/kendo-ui-license.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAE1B,uCAA6C;AAC7C,oCAA6C;AAG7C,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;CAmBvB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACrB,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAChD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AACzE,MAAM,iBAAiB,GAAG,2BAA2B,CAAC;AAEtD,MAAa,cAAc;IACjB,OAAO;;YACT,IAAI,CAAC,IAAA,yBAAiB,EAAC,iBAAiB,CAAC,EAAE;gBACvC,OAAO;aACV;YAED,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QACjC,CAAC;KAAA;IAGa,eAAe;;YACzB,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;gBAC1C,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,EAAE,OAAO,EAAE;gBACrC,CAAC,CAAC,SAAS,CAAC;YAEhB,WAAG,CAAC,IAAI,CACJ,GAAG;gBACC,CAAC,CAAC,8CAA8C;gBAChD,CAAC,CAAC,sDAAsD,CAC/D,CAAC;YAEF,IAAI;gBACA,MAAM,IAAA,eAAK,EAAC,KAAK,EAAE,CAAC,kBAAkB,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE;oBACjE,GAAG;oBACH,KAAK,EAAE,SAAS;iBACnB,CAAC,CAAC;aACN;YAAC,OAAO,KAAU,EAAE;gBACjB,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;aACtE;QACL,CAAC;KAAA;CACJ;AApBG;IADC,iBAAS;;;;qDAoBT;AA7BL,wCA8BC;AAED,SAAsB,cAAc;;QAChC,OAAO,IAAI,cAAc,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1C,CAAC;CAAA;AAFD,wCAEC"}
package/dist/cli/index.js CHANGED
@@ -27,6 +27,8 @@ function getCommand(name) {
27
27
  return commands_1.MFEPackagePublish;
28
28
  case 'mfe-package-clean':
29
29
  return commands_1.MFEPackageClean;
30
+ case 'kendo-ui-license':
31
+ return commands_1.KendoUILicense;
30
32
  default:
31
33
  utils_1.log.error(`${name}: command not found!`);
32
34
  process.exit(127);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;AAAA,iCAAwC;AAExC,oCAA+B;AAC/B,yCAaoB;AAMpB,SAAS,UAAU,CAAC,IAAY;IAC5B,QAAQ,IAAI,EAAE;QACV,KAAK,MAAM;YACP,OAAO,eAAI,CAAC;QAEhB,KAAK,iBAAiB;YAClB,OAAO,yBAAc,CAAC;QAE1B,KAAK,OAAO;YACR,OAAO,gBAAK,CAAC;QAEjB,KAAK,OAAO;YACR,OAAO,gBAAK,CAAC;QAEjB,KAAK,gBAAgB;YACjB,OAAO,wBAAa,CAAC;QAEzB,KAAK,MAAM;YACP,OAAO,eAAI,CAAC;QAEhB,KAAK,MAAM;YACP,OAAO,gBAAK,CAAC;QAEjB,KAAK,cAAc;YACf,OAAO,sBAAW,CAAC;QAEvB,KAAK,aAAa;YACd,OAAO,qBAAU,CAAC;QAEtB,KAAK,qBAAqB;YACtB,OAAO,4BAAiB,CAAC;QAE7B,KAAK,mBAAmB;YACpB,OAAO,0BAAe,CAAC;QAE3B;YACI,WAAG,CAAC,KAAK,CAAC,GAAG,IAAI,sBAAsB,CAAC,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACzB;AACL,CAAC;AAED,MAAM,QAAQ,GAAG,YAAiB,CAAC;AAEnC,gEAAgE;AAChE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,iCAAM,QAAQ,KAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAG;KAC9E,OAAO,EAAE;KACT,KAAK,CAAC,GAAG,EAAE;IACR,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;AAAA,iCAAwC;AAExC,oCAA+B;AAC/B,yCAcoB;AAMpB,SAAS,UAAU,CAAC,IAAY;IAC5B,QAAQ,IAAI,EAAE;QACV,KAAK,MAAM;YACP,OAAO,eAAI,CAAC;QAEhB,KAAK,iBAAiB;YAClB,OAAO,yBAAc,CAAC;QAE1B,KAAK,OAAO;YACR,OAAO,gBAAK,CAAC;QAEjB,KAAK,OAAO;YACR,OAAO,gBAAK,CAAC;QAEjB,KAAK,gBAAgB;YACjB,OAAO,wBAAa,CAAC;QAEzB,KAAK,MAAM;YACP,OAAO,eAAI,CAAC;QAEhB,KAAK,MAAM;YACP,OAAO,gBAAK,CAAC;QAEjB,KAAK,cAAc;YACf,OAAO,sBAAW,CAAC;QAEvB,KAAK,aAAa;YACd,OAAO,qBAAU,CAAC;QAEtB,KAAK,qBAAqB;YACtB,OAAO,4BAAiB,CAAC;QAE7B,KAAK,mBAAmB;YACpB,OAAO,0BAAe,CAAC;QAE3B,KAAK,kBAAkB;YACnB,OAAO,yBAAc,CAAC;QAE1B;YACI,WAAG,CAAC,KAAK,CAAC,GAAG,IAAI,sBAAsB,CAAC,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACzB;AACL,CAAC;AAED,MAAM,QAAQ,GAAG,YAAiB,CAAC;AAEnC,gEAAgE;AAChE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,iCAAM,QAAQ,KAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAG;KAC9E,OAAO,EAAE;KACT,KAAK,CAAC,GAAG,EAAE;IACR,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC,CAAC,CAAC"}
@@ -5,6 +5,7 @@ export * from './bundle';
5
5
  export * from './compile-less';
6
6
  export * from './compile-sass';
7
7
  export * from './get-module-type';
8
+ export * from './is-module-installed';
8
9
  export * from './styles-copy';
9
10
  export * from './tcm';
10
11
  export * from './tsc';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,UAAqE,CAAC;AAClG,eAAO,MAAM,eAAe,UAA0B,CAAC;AAEvD,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,UAAqE,CAAC;AAClG,eAAO,MAAM,eAAe,UAA0B,CAAC;AAEvD,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC"}
@@ -22,6 +22,7 @@ __exportStar(require("./bundle"), exports);
22
22
  __exportStar(require("./compile-less"), exports);
23
23
  __exportStar(require("./compile-sass"), exports);
24
24
  __exportStar(require("./get-module-type"), exports);
25
+ __exportStar(require("./is-module-installed"), exports);
25
26
  __exportStar(require("./styles-copy"), exports);
26
27
  __exportStar(require("./tcm"), exports);
27
28
  __exportStar(require("./tsc"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAa,QAAA,eAAe,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AACrF,QAAA,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAEvD,gDAA8B;AAC9B,2CAAyB;AACzB,iDAA+B;AAC/B,iDAA+B;AAC/B,oDAAkC;AAClC,gDAA8B;AAC9B,wCAAsB;AACtB,wCAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAa,QAAA,eAAe,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AACrF,QAAA,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAEvD,gDAA8B;AAC9B,2CAAyB;AACzB,iDAA+B;AAC/B,iDAA+B;AAC/B,oDAAkC;AAClC,wDAAsC;AACtC,gDAA8B;AAC9B,wCAAsB;AACtB,wCAAsB"}
@@ -0,0 +1,2 @@
1
+ export declare function isModuleInstalled(name: string): boolean;
2
+ //# sourceMappingURL=is-module-installed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-module-installed.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/is-module-installed.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAOvD"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isModuleInstalled = void 0;
4
+ function isModuleInstalled(name) {
5
+ try {
6
+ require.resolve(name);
7
+ return true;
8
+ }
9
+ catch (e) {
10
+ return false;
11
+ }
12
+ }
13
+ exports.isModuleInstalled = isModuleInstalled;
14
+ //# sourceMappingURL=is-module-installed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-module-installed.js","sourceRoot":"","sources":["../../../src/cli/utils/is-module-installed.ts"],"names":[],"mappings":";;;AAAA,SAAgB,iBAAiB,CAAC,IAAY;IAC1C,IAAI;QACA,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;KACf;IAAC,OAAO,CAAC,EAAE;QACR,OAAO,KAAK,CAAC;KAChB;AACL,CAAC;AAPD,8CAOC"}
@@ -49,7 +49,7 @@ const getJestConfigBase = (stringify, testPathIgnorePatterns = [], setupFiles =
49
49
  ],
50
50
  setupFiles: [path_1.default.join(__dirname, '../../jest/setup.js'), ...(0, _1.toArray)(setupFiles)],
51
51
  coveragePathIgnorePatterns: ['^.+\\.d\\.ts$', ...coveragePathIgnorePatterns],
52
- coverageReporters: ['html-spa', 'text', 'json'],
52
+ coverageReporters: ['html-spa', 'text', 'json', 'cobertura'],
53
53
  collectCoverageFrom: ['**/*.{ts,tsx}'],
54
54
  };
55
55
  };
@@ -1 +1 @@
1
- {"version":3,"file":"get-jest-config.js","sourceRoot":"","sources":["../../src/utils/get-jest-config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,gDAAwB;AAExB,wBAA4F;AAE5F,MAAM,iBAAiB,GAAG,CACtB,SAAkB,EAClB,yBAAmC,EAAE,EACrC,aAAuB,EAAE,EACzB,6BAAuC,EAAE,EACf,EAAE;IAC5B,MAAM,SAAS,GAAG;QACd,aAAa,EAAE;YACX,YAAY;YACZ,EAAE,OAAO,EAAE,CAAC,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE;SACzE;QACD,aAAa,EAAE,SAAS;KAC3B,CAAC;IACF,MAAM,gBAAgB,GAAG;QACrB,iEAAiE,EAAE,oBAAoB;KAC1F,CAAC;IACF,MAAM,OAAO,GAAG;QACZ,SAAS,EAAE;YACP,QAAQ,EAAE,sBAAsB;SACnC;KACJ,CAAC;IAEF,OAAO;QACH,OAAO,EAAE,IAAI;QACb,eAAe,EAAE,OAAO;QACxB,UAAU,EAAE,oBAAoB;QAChC,uBAAuB,EAAE,CAAC,iCAAiC,CAAC;QAC5D,wBAAwB,EAAE,CAAC,wBAAwB,CAAC;QACpD,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;QAC5D,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB;QACjF,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;QACtD,sBAAsB,EAAE;YACpB,SAAS;YACT,GAAG,IAAA,wBAAqB,GAAE;YAC1B,GAAG,IAAA,UAAO,EAAC,sBAAsB,CAAC;SACrC;QACD,UAAU,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,EAAE,GAAG,IAAA,UAAO,EAAC,UAAU,CAAC,CAAC;QACjF,0BAA0B,EAAE,CAAC,eAAe,EAAE,GAAG,0BAA0B,CAAC;QAC5E,iBAAiB,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC;QAC/C,mBAAmB,EAAE,CAAC,eAAe,CAAC;KACzC,CAAC;AACN,CAAC,CAAC;AAEF;;;GAGG;AACI,MAAM,aAAa,GAAG,GAAsB,EAAE;IACjD,MAAM,uBAKG,IAAA,uBAAoB,GAAE,CAAE,EAL3B,EACF,sBAAsB,GAAG,EAAE,EAC3B,UAAU,GAAG,EAAE,EACf,0BAA0B,GAAG,EAAE,OAEF,EAD1B,MAAM,cAJP,sEAKL,CAAgC,CAAC;IAClC,uCACO,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,EAAE,UAAU,EAAE,0BAA0B,CAAC,GACxF,MAAM,EACX;AACN,CAAC,CAAC;AAXW,QAAA,aAAa,iBAWxB;AAEF;;GAEG;AACI,MAAM,gBAAgB,GAAG,CAAC,IAAiB,EAAe,EAAE;IAC/D,MAAM,qCAMC,IAAA,uBAAoB,GAAE,GACtB,IAAI,CACV,EARK,EACF,sBAAsB,GAAG,EAAE,EAC3B,UAAU,GAAG,EAAE,EACf,0BAA0B,GAAG,EAAE,OAKlC,EAJM,MAAM,cAJP,sEAKL,CAGA,CAAC;IACF,uCACO,iBAAiB,CAAC,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,0BAA0B,CAAC,GACvF,MAAM,EACX;AACN,CAAC,CAAC;AAdW,QAAA,gBAAgB,oBAc3B"}
1
+ {"version":3,"file":"get-jest-config.js","sourceRoot":"","sources":["../../src/utils/get-jest-config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,gDAAwB;AAExB,wBAA4F;AAE5F,MAAM,iBAAiB,GAAG,CACtB,SAAkB,EAClB,yBAAmC,EAAE,EACrC,aAAuB,EAAE,EACzB,6BAAuC,EAAE,EACf,EAAE;IAC5B,MAAM,SAAS,GAAG;QACd,aAAa,EAAE;YACX,YAAY;YACZ,EAAE,OAAO,EAAE,CAAC,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE;SACzE;QACD,aAAa,EAAE,SAAS;KAC3B,CAAC;IACF,MAAM,gBAAgB,GAAG;QACrB,iEAAiE,EAAE,oBAAoB;KAC1F,CAAC;IACF,MAAM,OAAO,GAAG;QACZ,SAAS,EAAE;YACP,QAAQ,EAAE,sBAAsB;SACnC;KACJ,CAAC;IAEF,OAAO;QACH,OAAO,EAAE,IAAI;QACb,eAAe,EAAE,OAAO;QACxB,UAAU,EAAE,oBAAoB;QAChC,uBAAuB,EAAE,CAAC,iCAAiC,CAAC;QAC5D,wBAAwB,EAAE,CAAC,wBAAwB,CAAC;QACpD,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;QAC5D,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB;QACjF,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;QACtD,sBAAsB,EAAE;YACpB,SAAS;YACT,GAAG,IAAA,wBAAqB,GAAE;YAC1B,GAAG,IAAA,UAAO,EAAC,sBAAsB,CAAC;SACrC;QACD,UAAU,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,EAAE,GAAG,IAAA,UAAO,EAAC,UAAU,CAAC,CAAC;QACjF,0BAA0B,EAAE,CAAC,eAAe,EAAE,GAAG,0BAA0B,CAAC;QAC5E,iBAAiB,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC;QAC5D,mBAAmB,EAAE,CAAC,eAAe,CAAC;KACzC,CAAC;AACN,CAAC,CAAC;AAEF;;;GAGG;AACI,MAAM,aAAa,GAAG,GAAsB,EAAE;IACjD,MAAM,uBAKG,IAAA,uBAAoB,GAAE,CAAE,EAL3B,EACF,sBAAsB,GAAG,EAAE,EAC3B,UAAU,GAAG,EAAE,EACf,0BAA0B,GAAG,EAAE,OAEF,EAD1B,MAAM,cAJP,sEAKL,CAAgC,CAAC;IAClC,uCACO,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,EAAE,UAAU,EAAE,0BAA0B,CAAC,GACxF,MAAM,EACX;AACN,CAAC,CAAC;AAXW,QAAA,aAAa,iBAWxB;AAEF;;GAEG;AACI,MAAM,gBAAgB,GAAG,CAAC,IAAiB,EAAe,EAAE;IAC/D,MAAM,qCAMC,IAAA,uBAAoB,GAAE,GACtB,IAAI,CACV,EARK,EACF,sBAAsB,GAAG,EAAE,EAC3B,UAAU,GAAG,EAAE,EACf,0BAA0B,GAAG,EAAE,OAKlC,EAJM,MAAM,cAJP,sEAKL,CAGA,CAAC;IACF,uCACO,iBAAiB,CAAC,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,0BAA0B,CAAC,GACvF,MAAM,EACX;AACN,CAAC,CAAC;AAdW,QAAA,gBAAgB,oBAc3B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@servicetitan/startup",
3
- "version": "22.8.1",
3
+ "version": "22.9.0",
4
4
  "description": "",
5
5
  "homepage": "https://docs.st.dev/docs/frontend/startup",
6
6
  "repository": {
@@ -16,13 +16,15 @@
16
16
  "jest",
17
17
  "src",
18
18
  "template",
19
+ "template/.gitignore",
20
+ "template/.npmrc",
19
21
  "tsconfig",
20
22
  "tsconfig.json"
21
23
  ],
22
24
  "bin": "./bin/index.js",
23
25
  "devDependencies": {
24
26
  "@types/cpx": "~1.5.2",
25
- "@types/eslint": "~8.21.2",
27
+ "@types/eslint": "~8.44.2",
26
28
  "@types/less": "~3.0.3",
27
29
  "@types/mini-css-extract-plugin": "~2.4.0",
28
30
  "@types/moment-locales-webpack-plugin": "~1.2.2",
@@ -32,12 +34,12 @@
32
34
  "@types/yargs": "~17.0.24"
33
35
  },
34
36
  "dependencies": {
35
- "@babel/preset-env": "~7.22.5",
37
+ "@babel/preset-env": "~7.22.10",
36
38
  "@jest/core": "~27.5.1",
37
39
  "@jest/types": "~27.5.1",
38
40
  "@lerna/exec": "~5.6.2",
39
- "@servicetitan/eslint-config": "22.8.1",
40
- "@servicetitan/stylelint-config": "22.8.1",
41
+ "@servicetitan/eslint-config": "22.9.0",
42
+ "@servicetitan/stylelint-config": "22.9.0",
41
43
  "@types/jest": "~27.4.0",
42
44
  "chalk": "~4.1.2",
43
45
  "chokidar": "~3.5.3",
@@ -45,7 +47,7 @@
45
47
  "css-loader": "~6.8.1",
46
48
  "deepmerge": "~4.3.1",
47
49
  "esbuild-loader": "~2.21.0",
48
- "eslint": "~8.36.0",
50
+ "eslint": "~8.47.0",
49
51
  "execa": "~5.1.1",
50
52
  "fork-ts-checker-webpack-plugin": "~7.3.0",
51
53
  "glob": "~7.2.0",
@@ -55,21 +57,21 @@
55
57
  "jest-circus": "~27.5.1",
56
58
  "jest-fetch-mock": "~3.0.3",
57
59
  "lerna": "~5.6.2",
58
- "less": "~4.1.3",
60
+ "less": "~4.2.0",
59
61
  "less-loader": "~10.2.0",
60
62
  "less-plugin-npm-import": "~2.1.0",
61
63
  "memfs": "~3.4.13",
62
- "mini-css-extract-plugin": "~2.7.1",
64
+ "mini-css-extract-plugin": "~2.7.6",
63
65
  "moment-locales-webpack-plugin": "~1.2.0",
64
- "portfinder": "~1.0.28",
66
+ "portfinder": "~1.0.32",
65
67
  "prettier": "~2.7.1",
66
- "sass": "~1.63.4",
68
+ "sass": "~1.65.1",
67
69
  "sass-loader": "~12.6.0",
68
70
  "source-map-loader": "~3.0.1",
69
71
  "style-loader": "~3.3.3",
70
72
  "stylelint": "~14.16.1",
71
73
  "ts-jest": "~27.1.4",
72
- "ts-loader": "~9.3.1",
74
+ "ts-loader": "~9.4.4",
73
75
  "ts-node": "~10.9.1",
74
76
  "typed-css-modules": "~0.7.2",
75
77
  "typescript": "~4.7.4",
@@ -91,5 +93,5 @@
91
93
  "cli": {
92
94
  "webpack": false
93
95
  },
94
- "gitHead": "d29ce497b9f6c2d55ff640c37257421f62eef425"
96
+ "gitHead": "dd3998da00a372c76f087e6f4472951555f29b3b"
95
97
  }
@@ -0,0 +1,83 @@
1
+ import execa from 'execa';
2
+
3
+ import { log } from '../../../utils/log';
4
+ import { isModuleInstalled } from '../../utils';
5
+ import { kendoUILicense } from '../kendo-ui-license';
6
+
7
+ jest.mock('execa', () => jest.fn());
8
+
9
+ jest.mock('../../../utils/log', () => ({
10
+ log: {
11
+ info: jest.fn(),
12
+ },
13
+ }));
14
+
15
+ jest.mock('../../utils/is-module-installed', () => ({
16
+ isModuleInstalled: jest.fn(),
17
+ }));
18
+
19
+ describe(`${kendoUILicense.name}`, () => {
20
+ beforeEach(() => jest.resetAllMocks());
21
+
22
+ beforeEach(() => {
23
+ (isModuleInstalled as jest.Mock).mockReturnValue(true);
24
+ });
25
+
26
+ const subject = async () => kendoUILicense();
27
+
28
+ test('activates license', async () => {
29
+ await subject();
30
+
31
+ expect(log.info).toHaveBeenCalledWith('Activating Kendo UI with embedded license...');
32
+ expect(execa).toHaveBeenCalledWith(
33
+ 'npx',
34
+ ['kendo-ui-license', 'activate', '--no-install'],
35
+ expect.objectContaining({
36
+ // eslint-disable-next-line @typescript-eslint/naming-convention
37
+ env: { KENDO_UI_LICENSE: expect.anything() },
38
+ })
39
+ );
40
+ });
41
+
42
+ describe('when KENDO_UI_LICENSE is already defined', () => {
43
+ beforeEach(() => {
44
+ process.env.KENDO_UI_LICENSE = 'foo';
45
+ });
46
+
47
+ test('uses license from environment', async () => {
48
+ await subject();
49
+
50
+ expect(log.info).toHaveBeenCalledWith(
51
+ 'Activating Kendo UI with license from environment...'
52
+ );
53
+ expect(execa).toHaveBeenCalledWith(
54
+ 'npx',
55
+ ['kendo-ui-license', 'activate', '--no-install'],
56
+ expect.objectContaining({ env: undefined })
57
+ );
58
+ });
59
+ });
60
+
61
+ describe('when Kendo licensing package is not installed', () => {
62
+ beforeEach(() => (isModuleInstalled as jest.Mock).mockReturnValue(false));
63
+
64
+ test('does nothing', async () => {
65
+ await subject();
66
+
67
+ expect(isModuleInstalled).toHaveBeenCalledWith('@progress/kendo-licensing');
68
+ expect(execa).not.toHaveBeenCalled();
69
+ });
70
+ });
71
+
72
+ describe('when activate fails', () => {
73
+ const exitCode = 2;
74
+
75
+ beforeEach(() => (execa as any).mockRejectedValue({ exitCode }));
76
+
77
+ test('throws error', async () => {
78
+ await expect(subject()).rejects.toThrowError(
79
+ `command failed with exit code ${exitCode}`
80
+ );
81
+ });
82
+ });
83
+ });
@@ -2,7 +2,7 @@ const exec = require('@lerna/exec');
2
2
 
3
3
  import { getPackages, logErrors, PackageType, splitPackagesByType } from '../../utils';
4
4
  import { tsc } from '../utils';
5
- import { Command } from '.';
5
+ import { Command, kendoUILicense } from '.';
6
6
 
7
7
  interface Args {
8
8
  'scope'?: string | string[];
@@ -42,6 +42,7 @@ export class Build implements Command {
42
42
  }
43
43
 
44
44
  if (packages[PackageType.Webpack].length) {
45
+ await kendoUILicense();
45
46
  await exec({
46
47
  'cmd': 'startup bundle-package',
47
48
  'scope': packages[PackageType.Webpack].map(({ name }) => name),
@@ -1,6 +1,7 @@
1
1
  export * from './build';
2
2
  export * from './bundle-package';
3
3
  export * from './init';
4
+ export * from './kendo-ui-license';
4
5
  export * from './lint';
5
6
  export * from './prepare-package';
6
7
  export * from './start';
@@ -0,0 +1,65 @@
1
+ import execa from 'execa';
2
+
3
+ import { log, logErrors } from '../../utils';
4
+ import { isModuleInstalled } from '../utils';
5
+ import { Command } from '.';
6
+
7
+ const ENCODED_LICENSE = `
8
+ ZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNklreEpReUo5LmV5SndjbTlrZFdOMGN5STZXM3N
9
+ pZEhKcFlXd2lPbVpoYkhObExDSmpiMlJsSWpvaVMwVk9SRTlWU1ZKRlFVTlVJaXdpYkdsalpXNX
10
+ paVVY0Y0dseVlYUnBiMjVFWVhSbElqb3hOalV3TWpnM056SXdmU3g3SW5SeWFXRnNJanBtWVd4e
11
+ lpTd2lZMjlrWlNJNklrdEZUa1JQVlVsRFQwMVFURVZVUlNJc0lteHBZMlZ1YzJWRmVIQnBjbUYw
12
+ YVc5dVJHRjBaU0k2TVRZMU1ESTROemN5TUgwc2V5SjBjbWxoYkNJNlptRnNjMlVzSW1OdlpHVWl
13
+ PaUpMUlU1RVQxVkpWbFZGSWl3aWJHbGpaVzV6WlVWNGNHbHlZWFJwYjI1RVlYUmxJam94TmpVd0
14
+ 1qZzNOekl3ZlN4N0luUnlhV0ZzSWpwbVlXeHpaU3dpWTI5a1pTSTZJa3RGVGtSUFZVbEJUa2RWV
15
+ EVGU0lpd2liR2xqWlc1elpVVjRjR2x5WVhScGIyNUVZWFJsSWpveE5qVXdNamczTnpJd2ZWMHNJ
16
+ bWx1ZEdWbmNtbDBlU0k2SW5wSGJHRlRRWGRUU1c1b1VqaHlRVEU1YVRSMFpYUjVhMmx4WnowaUx
17
+ DSnNhV05sYm5ObFNHOXNaR1Z5SWpvaVlXTm9hWFpwWTJoNVlXNUFjMlZ5ZG1salpYUnBkR0Z1TG
18
+ 1OdmJTSXNJbWxoZENJNk1UWXlOelk0TWpnMU5Dd2lZWFZrSWpvaVlXTm9hWFpwWTJoNVlXNUFjM
19
+ lZ5ZG1salpYUnBkR0Z1TG1OdmJTSjkuazI3dzJlNFV5cnA0a0xJVFVjSmk1Ql9waGlxU1NJWEU4
20
+ SktSdkh0bk1fUktqVnh5b3RwZUFUaW1wR1M2dUIwdEdDRU1xbmxkQUZTSkJreklINExFSzFfa0d
21
+ uS0VKZ0JDcEJSQWl2VU9sQWJ2bTFfVGlmVXhyNkd1SmpJS1BNeGh3Um5rRG1CNW1lNlRoQzJxR0
22
+ 9YWUxmX1ZuTDVlT3NOVEVneEx1cnVkaC1EZHZyTDJ5Vk9nMnRNQjg2aFotTXZ2Yk9JdWFrNGEtW
23
+ GdkVmRFM2pDdHNsNlRVb0p2eWJSRnlha0h2WUJOWTlHa2l2N190MDZUbmZEYWN6elRsTjdyWEQt
24
+ YlZNYmJ6Rm1XT2R3MGUtbUNxV2w2VS1XUlZGcXB1UHhQaDFodkFrOFBsWFFpVTZwbEZhMDhMaWh
25
+ pZXpOVkEwOE9JSXVxSjRZOEZnbDB5bnBFNDZn
26
+ `.replace(/\s/g, '');
27
+ const ENVIRONMENT_VARIABLE = 'KENDO_UI_LICENSE';
28
+ const LICENSE = Buffer.from(ENCODED_LICENSE, 'base64').toString('ascii');
29
+ const LICENSING_PACKAGE = '@progress/kendo-licensing';
30
+
31
+ export class KendoUILicense implements Command {
32
+ async execute() {
33
+ if (!isModuleInstalled(LICENSING_PACKAGE)) {
34
+ return;
35
+ }
36
+
37
+ await this.activateLicense();
38
+ }
39
+
40
+ @logErrors
41
+ private async activateLicense() {
42
+ const env = !process.env[ENVIRONMENT_VARIABLE]
43
+ ? { [ENVIRONMENT_VARIABLE]: LICENSE }
44
+ : undefined;
45
+
46
+ log.info(
47
+ env
48
+ ? 'Activating Kendo UI with embedded license...'
49
+ : `Activating Kendo UI with license from environment...`
50
+ );
51
+
52
+ try {
53
+ await execa('npx', ['kendo-ui-license', 'activate', '--no-install'], {
54
+ env,
55
+ stdio: 'inherit',
56
+ });
57
+ } catch (error: any) {
58
+ throw new Error(`command failed with exit code ${error.exitCode}`);
59
+ }
60
+ }
61
+ }
62
+
63
+ export async function kendoUILicense() {
64
+ return new KendoUILicense().execute();
65
+ }
package/src/cli/index.ts CHANGED
@@ -14,6 +14,7 @@ import {
14
14
  MFEPackageClean,
15
15
  MFEPackagePublish,
16
16
  MFEPublish,
17
+ KendoUILicense,
17
18
  } from './commands';
18
19
 
19
20
  interface Newable<T> {
@@ -55,6 +56,9 @@ function getCommand(name: string): Newable<Command> {
55
56
  case 'mfe-package-clean':
56
57
  return MFEPackageClean;
57
58
 
59
+ case 'kendo-ui-license':
60
+ return KendoUILicense;
61
+
58
62
  default:
59
63
  log.error(`${name}: command not found!`);
60
64
  process.exit(127);
@@ -6,6 +6,7 @@ export * from './bundle';
6
6
  export * from './compile-less';
7
7
  export * from './compile-sass';
8
8
  export * from './get-module-type';
9
+ export * from './is-module-installed';
9
10
  export * from './styles-copy';
10
11
  export * from './tcm';
11
12
  export * from './tsc';
@@ -0,0 +1,8 @@
1
+ export function isModuleInstalled(name: string): boolean {
2
+ try {
3
+ require.resolve(name);
4
+ return true;
5
+ } catch (e) {
6
+ return false;
7
+ }
8
+ }
@@ -40,7 +40,7 @@ const getJestConfigBase = (
40
40
  ],
41
41
  setupFiles: [path.join(__dirname, '../../jest/setup.js'), ...toArray(setupFiles)],
42
42
  coveragePathIgnorePatterns: ['^.+\\.d\\.ts$', ...coveragePathIgnorePatterns],
43
- coverageReporters: ['html-spa', 'text', 'json'],
43
+ coverageReporters: ['html-spa', 'text', 'json', 'cobertura'],
44
44
  collectCoverageFrom: ['**/*.{ts,tsx}'],
45
45
  };
46
46
  };
@@ -0,0 +1,14 @@
1
+ # Mac-related stuff
2
+ ._.DS_Store/
3
+ .DS_Store/
4
+ *.DS_Store
5
+
6
+ # Node.js
7
+ node_modules/
8
+
9
+ *.css.d.ts
10
+ *.less.d.ts
11
+ *.scss.d.ts
12
+ /coverage/
13
+ dist/
14
+ *.tsbuildinfo
@@ -0,0 +1,3 @@
1
+ engine-strict=true
2
+ legacy-peer-deps=true
3
+ no-audit=true