@servicetitan/startup 27.0.0 → 27.1.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.
@@ -14,7 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.Init = void 0;
16
16
  const fs_1 = __importDefault(require("fs"));
17
- const cpx_1 = __importDefault(require("cpx"));
17
+ const cpx2_1 = __importDefault(require("cpx2"));
18
18
  const util_1 = __importDefault(require("util"));
19
19
  const path_1 = __importDefault(require("path"));
20
20
  const utils_1 = require("../../utils");
@@ -54,6 +54,6 @@ __decorate([
54
54
  __metadata("design:returntype", Promise)
55
55
  ], Init.prototype, "execute", null);
56
56
  async function copyFiles(from, to) {
57
- await util_1.default.promisify(cpx_1.default.copy)(path_1.default.resolve(__dirname, `../../../${from}/**/{.*,*,.*/*}`), to);
57
+ await util_1.default.promisify(cpx2_1.default.copy)(path_1.default.resolve(__dirname, `../../../${from}/**/{.*,*,.*/*}`), to);
58
58
  }
59
59
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,8CAAsB;AACtB,gDAAwB;AACxB,gDAAwB;AAExB,uCAA6C;AAQ7C,MAAa,IAAI;IACb,YAAoB,IAAU;QAAlB;;;;mBAAQ,IAAI;WAAM;IAAG,CAAC;IAElC,WAAW;QACP,OAAO,wBAAwB,CAAC;IACpC,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO;;QACT,MAAM,WAAW,GAAG,cAAI,CAAC,OAAO,CAAC,MAAA,IAAI,CAAC,IAAI,CAAC,MAAM,mCAAI,GAAG,CAAC,CAAC;QAC1D,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9B,YAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;aAAM,IAAI,CAAC,YAAE,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,GAAG,WAAW,qBAAqB,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAEzC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,SAAS,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;QACrD,CAAC;QAED,WAAG,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,gBAAgB,WAAW,EAAE,CAAC,CAAC;IACzF,CAAC;CACJ;AAxBD,oBAwBC;AAhBS;IADL,iBAAS;;;;mCAgBT;AAGL,KAAK,UAAU,SAAS,CAAC,IAAY,EAAE,EAAU;IAC7C,MAAM,cAAI,CAAC,SAAS,CAAC,aAAG,CAAC,IAAI,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,IAAI,iBAAiB,CAAC,EAAE,EAAE,CAAC,CAAC;AACnG,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,gDAAuB;AACvB,gDAAwB;AACxB,gDAAwB;AAExB,uCAA6C;AAQ7C,MAAa,IAAI;IACb,YAAoB,IAAU;QAAlB;;;;mBAAQ,IAAI;WAAM;IAAG,CAAC;IAElC,WAAW;QACP,OAAO,wBAAwB,CAAC;IACpC,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO;;QACT,MAAM,WAAW,GAAG,cAAI,CAAC,OAAO,CAAC,MAAA,IAAI,CAAC,IAAI,CAAC,MAAM,mCAAI,GAAG,CAAC,CAAC;QAC1D,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9B,YAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;aAAM,IAAI,CAAC,YAAE,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,GAAG,WAAW,qBAAqB,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAEzC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,SAAS,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;QACrD,CAAC;QAED,WAAG,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,gBAAgB,WAAW,EAAE,CAAC,CAAC;IACzF,CAAC;CACJ;AAxBD,oBAwBC;AAhBS;IADL,iBAAS;;;;mCAgBT;AAGL,KAAK,UAAU,SAAS,CAAC,IAAY,EAAE,EAAU;IAC7C,MAAM,cAAI,CAAC,SAAS,CAAC,cAAG,CAAC,IAAI,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,IAAI,iBAAiB,CAAC,EAAE,EAAE,CAAC,CAAC;AACnG,CAAC"}
@@ -5,19 +5,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.assetsCopy = assetsCopy;
7
7
  exports.assetsCopyWatch = assetsCopyWatch;
8
- const cpx_1 = __importDefault(require("cpx"));
8
+ const cpx2_1 = __importDefault(require("cpx2"));
9
9
  const util_1 = __importDefault(require("util"));
10
10
  const utils_1 = require("../../utils");
11
11
  const _1 = require(".");
12
12
  async function assetsCopy() {
13
13
  const { source, destination } = (0, utils_1.getFolders)();
14
14
  utils_1.log.info('Copying asset files...');
15
- await util_1.default.promisify(cpx_1.default.copy)(`${source}/**/*.{${_1.assetExtensions.join()}}`, destination);
15
+ await util_1.default.promisify(cpx2_1.default.copy)(`${source}/**/*.{${_1.assetExtensions.join()}}`, destination);
16
16
  }
17
17
  async function assetsCopyWatch() {
18
18
  const { source, destination } = (0, utils_1.getFolders)();
19
19
  await new Promise((_0, reject) => {
20
- cpx_1.default.watch(`${source}/**/*.{${_1.assetExtensions.join()}}`, destination, {
20
+ cpx2_1.default.watch(`${source}/**/*.{${_1.assetExtensions.join()}}`, destination, {
21
21
  initialCopy: false,
22
22
  }).on('watch-error', reject);
23
23
  });
@@ -1 +1 @@
1
- {"version":3,"file":"assets-copy.js","sourceRoot":"","sources":["../../../src/cli/utils/assets-copy.ts"],"names":[],"mappings":";;;;;AAMA,gCAMC;AAED,0CAQC;AAtBD,8CAAsB;AACtB,gDAAwB;AAExB,uCAA8C;AAC9C,wBAAoC;AAE7B,KAAK,UAAU,UAAU;IAC5B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,kBAAU,GAAE,CAAC;IAE7C,WAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAEnC,MAAM,cAAI,CAAC,SAAS,CAAC,aAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,UAAU,kBAAe,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;AAC9F,CAAC;AAEM,KAAK,UAAU,eAAe;IACjC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,kBAAU,GAAE,CAAC;IAE7C,MAAM,IAAI,OAAO,CAAO,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE;QACnC,aAAG,CAAC,KAAK,CAAC,GAAG,MAAM,UAAU,kBAAe,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE;YACjE,WAAW,EAAE,KAAK;SACrB,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"assets-copy.js","sourceRoot":"","sources":["../../../src/cli/utils/assets-copy.ts"],"names":[],"mappings":";;;;;AAMA,gCAMC;AAED,0CAQC;AAtBD,gDAAuB;AACvB,gDAAwB;AAExB,uCAA8C;AAC9C,wBAAoC;AAE7B,KAAK,UAAU,UAAU;IAC5B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,kBAAU,GAAE,CAAC;IAE7C,WAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAEnC,MAAM,cAAI,CAAC,SAAS,CAAC,cAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,UAAU,kBAAe,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;AAC9F,CAAC;AAEM,KAAK,UAAU,eAAe;IACjC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,kBAAU,GAAE,CAAC;IAE7C,MAAM,IAAI,OAAO,CAAO,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE;QACnC,cAAG,CAAC,KAAK,CAAC,GAAG,MAAM,UAAU,kBAAe,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE;YACjE,WAAW,EAAE,KAAK;SACrB,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -5,19 +5,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.stylesCopy = stylesCopy;
7
7
  exports.stylesCopyWatch = stylesCopyWatch;
8
- const cpx_1 = __importDefault(require("cpx"));
8
+ const cpx2_1 = __importDefault(require("cpx2"));
9
9
  const util_1 = __importDefault(require("util"));
10
10
  const utils_1 = require("../../utils");
11
11
  const _1 = require(".");
12
12
  async function stylesCopy() {
13
13
  const { source, destination } = (0, utils_1.getFolders)();
14
14
  utils_1.log.info('Copying style files...');
15
- await util_1.default.promisify(cpx_1.default.copy)(`${source}/**/*.{${_1.styleExtensions.join()}}`, destination);
15
+ await util_1.default.promisify(cpx2_1.default.copy)(`${source}/**/*.{${_1.styleExtensions.join()}}`, destination);
16
16
  }
17
17
  async function stylesCopyWatch() {
18
18
  const { source, destination } = (0, utils_1.getFolders)();
19
19
  await new Promise((_0, reject) => {
20
- cpx_1.default.watch(`${source}/**/*.{${_1.styleExtensions.join()}}`, destination, {
20
+ cpx2_1.default.watch(`${source}/**/*.{${_1.styleExtensions.join()}}`, destination, {
21
21
  initialCopy: false,
22
22
  }).on('watch-error', reject);
23
23
  });
@@ -1 +1 @@
1
- {"version":3,"file":"styles-copy.js","sourceRoot":"","sources":["../../../src/cli/utils/styles-copy.ts"],"names":[],"mappings":";;;;;AAMA,gCAMC;AAED,0CAQC;AAtBD,8CAAsB;AACtB,gDAAwB;AAExB,uCAA8C;AAC9C,wBAAoC;AAE7B,KAAK,UAAU,UAAU;IAC5B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,kBAAU,GAAE,CAAC;IAE7C,WAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAEnC,MAAM,cAAI,CAAC,SAAS,CAAC,aAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,UAAU,kBAAe,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;AAC9F,CAAC;AAEM,KAAK,UAAU,eAAe;IACjC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,kBAAU,GAAE,CAAC;IAE7C,MAAM,IAAI,OAAO,CAAO,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE;QACnC,aAAG,CAAC,KAAK,CAAC,GAAG,MAAM,UAAU,kBAAe,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE;YACjE,WAAW,EAAE,KAAK;SACrB,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"styles-copy.js","sourceRoot":"","sources":["../../../src/cli/utils/styles-copy.ts"],"names":[],"mappings":";;;;;AAMA,gCAMC;AAED,0CAQC;AAtBD,gDAAuB;AACvB,gDAAwB;AAExB,uCAA8C;AAC9C,wBAAoC;AAE7B,KAAK,UAAU,UAAU;IAC5B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,kBAAU,GAAE,CAAC;IAE7C,WAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAEnC,MAAM,cAAI,CAAC,SAAS,CAAC,cAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,UAAU,kBAAe,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;AAC9F,CAAC;AAEM,KAAK,UAAU,eAAe;IACjC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,kBAAU,GAAE,CAAC;IAE7C,MAAM,IAAI,OAAO,CAAO,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE;QACnC,cAAG,CAAC,KAAK,CAAC,GAAG,MAAM,UAAU,kBAAe,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE;YACjE,WAAW,EAAE,KAAK;SACrB,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -8,7 +8,10 @@ export interface MinifyJSOptions {
8
8
  compress?: boolean;
9
9
  mangle?: boolean;
10
10
  }
11
+ export interface MinifyCssOptions {
12
+ }
11
13
  export interface MinifyOptions {
14
+ css?: boolean | MinifyCssOptions;
12
15
  js?: boolean | MinifyJSOptions;
13
16
  }
14
17
  export interface WebpackConfiguration extends Omit<Pick<WebpackDevServerConfiguration, ElementType<typeof allowedWebpackDevServerOptions>>, 'proxy'> {
@@ -1 +1 @@
1
- {"version":3,"file":"get-configuration.d.ts","sourceRoot":"","sources":["../../src/utils/get-configuration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-configuration.d.ts","sourceRoot":"","sources":["../../src/utils/get-configuration.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,IAAI,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC,eAAO,MAAM,8BAA8B,iDAAkD,CAAC;AAE9F,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,WAAW,CAAC,EAAE,GAAG,WAAW,GAAG,KAAK,CAAC;AAErF,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;CAAG;AAEpC,MAAM,WAAW,aAAa;IAC1B,GAAG,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAC;IACjC,EAAE,CAAC,EAAE,OAAO,GAAG,eAAe,CAAC;CAClC;AAED,MAAM,WAAW,oBACb,SAAQ,IAAI,CACR,IAAI,CAAC,6BAA6B,EAAE,WAAW,CAAC,OAAO,8BAA8B,CAAC,CAAC,EACvF,OAAO,CACV;IACD,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;IACrD,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,WAAW,CAAC,EAAE,6BAA6B,CAAC;IAC5C,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,OAAO,CAAC,EAAE,6BAA6B,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC;CAC7D;AAED,MAAM,WAAW,mBAAoB,SAAQ,MAAM,CAAC,OAAO;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,sBAAuB,SAAQ,OAAO,CAAC,aAAa,CAAC;IAClE,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC;AAE9D,MAAM,WAAW,iBAAiB;IAE9B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAGD,oBAAY,WAAW;IACnB,OAAO,UAAU;IACjB,gBAAgB,mBAAmB;IACnC,QAAQ,WAAW;IACnB,MAAM,SAAS;IACf,SAAS,YAAY;IACrB,kBAAkB,qBAAqB;IACvC,MAAM,SAAS;IACf,mBAAmB,sBAAsB;IACzC,qBAAqB,wBAAwB;IAC7C,aAAa,gBAAgB;IAC7B,iBAAiB,oBAAoB;IACrC,OAAO,UAAU;IACjB,cAAc,iBAAiB;IAC/B,MAAM,SAAS;CAClB;AAGD,UAAU,mBAAmB;IACzB,UAAU,EAAE,OAAO,CAAC;CACvB;AAED,KAAK,aAAa,GAAG;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE;QAAE,MAAM,EAAE,mBAAmB,CAAC;QAAC,SAAS,EAAE,sBAAsB,CAAA;KAAE,CAAC;IAC5E,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,eAAe,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAChD,SAAS,CAAC,EAAE,KAAK,GAAG,oBAAoB,CAAC;CAC5C,GAAG;KACC,GAAG,IAAI,WAAW,GAAG,iBAAiB;CAC1C,GAAG,iBAAiB,CAAC;AAEtB,KAAK,cAAc,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEnD,wBAAgB,gBAAgB,CAAC,cAAc,GAAE,cAAqB,GAAG,aAAa,CAMrF;AAED,wBAAgB,oBAAoB,CAAC,cAAc,GAAE,cAAqB,GAAG,aAAa,CAMzF;AAED,wBAAgB,sBAAsB,wBAErC;AAED,wBAAgB,oBAAoB,0CAEnC;AAED,wBAAgB,yBAAyB,2BAExC;AAED,wBAAgB,uBAAuB,CAAC,cAAc,CAAC,EAAE,cAAc,wBAGtE;AAED,wBAAgB,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,WAEvD;AAED,wBAAgB,kBAAkB,YAEjC;AAED,wBAAgB,0BAA0B,YAEzC;AAED,wBAAgB,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,WAEvD;AAED,wBAAgB,YAAY,YAG3B;AAED,wBAAgB,oBAAoB,YAEnC;AAED,wBAAgB,cAAc,YAG7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-configuration.js","sourceRoot":"","sources":["../../src/utils/get-configuration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-configuration.js","sourceRoot":"","sources":["../../src/utils/get-configuration.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"optimization-config.d.ts","sourceRoot":"","sources":["../../../src/webpack/configs/optimization-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAI7C,KAAK,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;AAElD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,GAAG,MAAM,CAmBzE"}
1
+ {"version":3,"file":"optimization-config.d.ts","sourceRoot":"","sources":["../../../src/webpack/configs/optimization-config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAI7C,KAAK,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;AAElD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,GAAG,MAAM,CAmBzE"}
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.optimizationConfig = optimizationConfig;
7
+ const css_minimizer_webpack_plugin_1 = __importDefault(require("css-minimizer-webpack-plugin"));
7
8
  const terser_webpack_plugin_1 = __importDefault(require("terser-webpack-plugin"));
8
9
  function optimizationConfig(context, _) {
9
10
  const { isProduction } = context;
@@ -20,22 +21,29 @@ function optimizationConfig(context, _) {
20
21
  return { optimization };
21
22
  }
22
23
  function minimizeConfig(optimization, context) {
23
- var _a, _b;
24
+ var _a, _b, _c, _d;
24
25
  const { isProduction } = context;
25
26
  if (!isProduction) {
26
27
  return;
27
28
  }
28
- const minify = (_b = (_a = context.minify) === null || _a === void 0 ? void 0 : _a.js) !== null && _b !== void 0 ? _b : true;
29
- optimization.minimize = !!minify;
29
+ const minifyJs = (_b = (_a = context.minify) === null || _a === void 0 ? void 0 : _a.js) !== null && _b !== void 0 ? _b : true;
30
+ const minifyCss = (_d = (_c = context.minify) === null || _c === void 0 ? void 0 : _c.css) !== null && _d !== void 0 ? _d : true;
31
+ optimization.minimize = !!minifyJs || !!minifyCss;
30
32
  if (!optimization.minimize) {
31
33
  return;
32
34
  }
33
35
  const terserOptions = {
34
36
  compress: false,
35
37
  mangle: false,
36
- ...(typeof minify === 'object' ? minify : {}),
38
+ ...(typeof minifyJs === 'object' ? minifyJs : {}),
37
39
  };
38
- optimization.minimizer = [new terser_webpack_plugin_1.default({ terserOptions })];
40
+ const cssMinimizerPluginOptions = {
41
+ ...(typeof minifyCss === 'object' ? minifyCss : {}),
42
+ };
43
+ optimization.minimizer = [
44
+ ...(minifyJs ? [new terser_webpack_plugin_1.default({ terserOptions })] : []),
45
+ ...(minifyCss ? [new css_minimizer_webpack_plugin_1.default(cssMinimizerPluginOptions)] : []),
46
+ ];
39
47
  }
40
48
  function sharedDependenciesConfig(optimization, context) {
41
49
  const { isExposeSharedDependencies } = context;
@@ -50,7 +58,7 @@ function sharedDependenciesConfig(optimization, context) {
50
58
  enforce: true,
51
59
  },
52
60
  'anvil2': {
53
- test: /@servicetitan\/anvil2\/.*\.css$/,
61
+ test: /@servicetitan[\\/]anvil2[\\/].*\.css$/,
54
62
  name: 'anvil2',
55
63
  chunks: 'all',
56
64
  enforce: true,
@@ -1 +1 @@
1
- {"version":3,"file":"optimization-config.js","sourceRoot":"","sources":["../../../src/webpack/configs/optimization-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"optimization-config.js","sourceRoot":"","sources":["../../../src/webpack/configs/optimization-config.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.cssRules = cssRules;
7
7
  const mini_css_extract_plugin_1 = __importDefault(require("mini-css-extract-plugin"));
8
8
  const loaders_1 = require("../loaders");
9
- const sharedCssDependencies = [/design-system\.css$/, /@servicetitan\/anvil2\/.*\.css$/];
9
+ const sharedCssDependencies = [/design-system\.css$/, /@servicetitan[\\/]anvil2[\\/].*\.css$/];
10
10
  function cssRules(context) {
11
11
  const { isExposeSharedDependencies, isProduction } = context;
12
12
  const excludeCallback = (path) => {
@@ -1 +1 @@
1
- {"version":3,"file":"css-rules.js","sourceRoot":"","sources":["../../../../src/webpack/configs/rules/css-rules.ts"],"names":[],"mappings":";;;;;AAOA,4BAgCC;AAvCD,sFAA2D;AAE3D,wCAAoD;AAGpD,MAAM,qBAAqB,GAAG,CAAC,qBAAqB,EAAE,iCAAiC,CAAC,CAAC;AAEzF,SAAgB,QAAQ,CAAC,OAAgB;IACrC,MAAM,EAAE,0BAA0B,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IAE7D,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE;QACrC,OAAO,CACH,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;YAC5B,CAAC,0BAA0B,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACxF,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,MAAM,GAAkB;QAC1B;YACI,IAAI,EAAE,eAAe;YACrB,GAAG,EAAE,CAAC,IAAA,qBAAW,EAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,IAAA,mBAAS,EAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;SAC1F;QACD;YACI,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe;YACzD,GAAG,EAAE,CAAC,IAAA,qBAAW,EAAC,OAAO,CAAC,EAAE,IAAA,mBAAS,EAAC,OAAO,CAAC,CAAC;SAClD;KACJ,CAAC;IAEF,IAAI,0BAA0B,IAAI,CAAC,YAAY,EAAE,CAAC;QAC9C,MAAM,CAAC,IAAI,CACP,GAAG,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClC,IAAI;YACJ,GAAG,EAAE,CAAC,iCAAoB,CAAC,MAAM,EAAE,IAAA,mBAAS,EAAC,OAAO,CAAC,CAAC;SACzD,CAAC,CAAC,CACN,CAAC;IACN,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"css-rules.js","sourceRoot":"","sources":["../../../../src/webpack/configs/rules/css-rules.ts"],"names":[],"mappings":";;;;;AAOA,4BAgCC;AAvCD,sFAA2D;AAE3D,wCAAoD;AAGpD,MAAM,qBAAqB,GAAG,CAAC,qBAAqB,EAAE,uCAAuC,CAAC,CAAC;AAE/F,SAAgB,QAAQ,CAAC,OAAgB;IACrC,MAAM,EAAE,0BAA0B,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IAE7D,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE;QACrC,OAAO,CACH,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;YAC5B,CAAC,0BAA0B,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACxF,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,MAAM,GAAkB;QAC1B;YACI,IAAI,EAAE,eAAe;YACrB,GAAG,EAAE,CAAC,IAAA,qBAAW,EAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,IAAA,mBAAS,EAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;SAC1F;QACD;YACI,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe;YACzD,GAAG,EAAE,CAAC,IAAA,qBAAW,EAAC,OAAO,CAAC,EAAE,IAAA,mBAAS,EAAC,OAAO,CAAC,CAAC;SAClD;KACJ,CAAC;IAEF,IAAI,0BAA0B,IAAI,CAAC,YAAY,EAAE,CAAC;QAC9C,MAAM,CAAC,IAAI,CACP,GAAG,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClC,IAAI;YACJ,GAAG,EAAE,CAAC,iCAAoB,CAAC,MAAM,EAAE,IAAA,mBAAS,EAAC,OAAO,CAAC,CAAC;SACzD,CAAC,CAAC,CACN,CAAC;IACN,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@servicetitan/startup",
3
- "version": "27.0.0",
3
+ "version": "27.1.0",
4
4
  "description": "",
5
5
  "homepage": "https://docs.st.dev/docs/frontend/startup",
6
6
  "repository": {
@@ -24,7 +24,7 @@
24
24
  ],
25
25
  "bin": "./bin/index.js",
26
26
  "devDependencies": {
27
- "@types/cpx": "~1.5.2",
27
+ "@types/cpx": "~1.5.5",
28
28
  "@types/eslint": "~8.56.3",
29
29
  "@types/less": "~3.0.3",
30
30
  "@types/moment-locales-webpack-plugin": "~1.2.2",
@@ -35,16 +35,17 @@
35
35
  "@babel/preset-env": "~7.25.4",
36
36
  "@jest/core": "~29.7.0",
37
37
  "@jest/types": "~29.6.3",
38
- "@servicetitan/eslint-config": "27.0.0",
39
- "@servicetitan/stylelint-config": "27.0.0",
38
+ "@servicetitan/eslint-config": "27.1.0",
39
+ "@servicetitan/stylelint-config": "27.1.0",
40
40
  "@svgr/webpack": "^8.1.0",
41
41
  "@swc/core": "1.6.13",
42
42
  "@types/debug": "^4.1.12",
43
43
  "@types/jest": "~29.5.12",
44
44
  "chalk": "~4.1.2",
45
45
  "chokidar": "~3.6.0",
46
- "cpx": "~1.5.0",
46
+ "cpx2": "^7.0.1",
47
47
  "css-loader": "~7.1.2",
48
+ "css-minimizer-webpack-plugin": "^7.0.0",
48
49
  "debug": "^4.3.6",
49
50
  "deepmerge": "~4.3.1",
50
51
  "esbuild-loader": "~4.2.2",
@@ -75,10 +76,10 @@
75
76
  "source-map-loader": "~5.0.0",
76
77
  "string-width": "<5.0.0",
77
78
  "style-loader": "~4.0.0",
78
- "stylelint": "~16.8.1",
79
+ "stylelint": "~16.9.0",
79
80
  "swc-loader": "0.2.6",
80
81
  "terser-webpack-plugin": "^5.3.10",
81
- "ts-jest": "~29.2.4",
82
+ "ts-jest": "~29.2.5",
82
83
  "ts-loader": "~9.5.1",
83
84
  "ts-node": "~10.9.2",
84
85
  "typed-css-modules": "~0.9.1",
@@ -104,5 +105,5 @@
104
105
  "cli": {
105
106
  "webpack": false
106
107
  },
107
- "gitHead": "7076608156b454b875fedf0fcb1fa07ff573c899"
108
+ "gitHead": "6eca03725ca72a85b405412c0b8cb934eb341366"
108
109
  }
@@ -1,4 +1,4 @@
1
- import cpx from 'cpx';
1
+ import cpx from 'cpx2';
2
2
  import path from 'path';
3
3
  import { fs, vol } from 'memfs';
4
4
 
@@ -6,7 +6,7 @@ import { Init } from '../init';
6
6
 
7
7
  jest.mock('fs', () => fs);
8
8
 
9
- jest.mock('cpx', () => ({
9
+ jest.mock('cpx2', () => ({
10
10
  copy: jest.fn().mockImplementation((...args: any[]) => {
11
11
  const callback = args[args.length - 1];
12
12
  callback(null);
@@ -1,5 +1,5 @@
1
1
  import fs from 'fs';
2
- import cpx from 'cpx';
2
+ import cpx from 'cpx2';
3
3
  import util from 'util';
4
4
  import path from 'path';
5
5
 
@@ -0,0 +1,3 @@
1
+ declare module 'cpx2' {
2
+ export * from '@types/cpx';
3
+ }
@@ -1,10 +1,10 @@
1
- import cpx from 'cpx';
1
+ import cpx from 'cpx2';
2
2
  import { getFolders } from '../../../utils';
3
3
 
4
4
  import { assetsCopy, assetsCopyWatch } from '../assets-copy';
5
5
  import { assetExtensions } from '../index';
6
6
 
7
- jest.mock('cpx', () => ({
7
+ jest.mock('cpx2', () => ({
8
8
  copy: jest.fn().mockImplementation((...args: any[]) => {
9
9
  const callback = args[args.length - 1];
10
10
  callback(null);
@@ -1,10 +1,10 @@
1
- import cpx from 'cpx';
1
+ import cpx from 'cpx2';
2
2
  import { getFolders } from '../../../utils';
3
3
 
4
4
  import { stylesCopy, stylesCopyWatch } from '../styles-copy';
5
5
  import { styleExtensions } from '../index';
6
6
 
7
- jest.mock('cpx', () => ({
7
+ jest.mock('cpx2', () => ({
8
8
  copy: jest.fn().mockImplementation((...args: any[]) => {
9
9
  const callback = args[args.length - 1];
10
10
  callback(null);
@@ -1,4 +1,4 @@
1
- import cpx from 'cpx';
1
+ import cpx from 'cpx2';
2
2
  import util from 'util';
3
3
 
4
4
  import { getFolders, log } from '../../utils';
@@ -1,4 +1,4 @@
1
- import cpx from 'cpx';
1
+ import cpx from 'cpx2';
2
2
  import util from 'util';
3
3
 
4
4
  import { getFolders, log } from '../../utils';
@@ -15,7 +15,10 @@ export interface MinifyJSOptions {
15
15
  mangle?: boolean;
16
16
  }
17
17
 
18
+ export interface MinifyCssOptions {}
19
+
18
20
  export interface MinifyOptions {
21
+ css?: boolean | MinifyCssOptions;
19
22
  js?: boolean | MinifyJSOptions;
20
23
  }
21
24
 
@@ -145,7 +145,7 @@ describe(`[startup] ${createWebpackConfig.name}`, () => {
145
145
 
146
146
  test('configures anvil2 css" rules', () => {
147
147
  expect(subject().module?.rules).toContainEqual({
148
- test: /@servicetitan\/anvil2\/.*\.css$/,
148
+ test: /@servicetitan[\\/]anvil2[\\/].*\.css$/,
149
149
  use: [MiniCssExtractPlugin.loader, 'css-loader'],
150
150
  });
151
151
  });
@@ -1,3 +1,4 @@
1
+ import CssMinimizerWebpackPlugin from 'css-minimizer-webpack-plugin';
1
2
  import ForkTsCheckerWebpackPlugin from 'fork-ts-checker-webpack-plugin';
2
3
  import HtmlWebpackPlugin from 'html-webpack-plugin';
3
4
  import MiniCssExtractPlugin from 'mini-css-extract-plugin';
@@ -5,7 +6,7 @@ import { fs, vol } from 'memfs';
5
6
  import MomentLocalesPlugin from 'moment-locales-webpack-plugin';
6
7
  import os from 'os';
7
8
  import path from 'path';
8
- const TerserPlugin = require('terser-webpack-plugin');
9
+ import TerserPlugin from 'terser-webpack-plugin';
9
10
  import { IgnorePlugin, ProvidePlugin } from 'webpack';
10
11
  import WebpackDevServer from 'webpack-dev-server';
11
12
  const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
@@ -35,6 +36,7 @@ import { featureCohort, splitByEntry } from '../utils';
35
36
  import { createWebpackConfig } from '../index';
36
37
 
37
38
  jest.mock('fs', () => fs);
39
+ jest.mock('css-minimizer-webpack-plugin', () => jest.fn());
38
40
  jest.mock('fork-ts-checker-webpack-plugin', () => jest.fn());
39
41
  jest.mock('html-webpack-plugin', () => jest.fn());
40
42
  jest.mock('mini-css-extract-plugin', () =>
@@ -92,7 +94,7 @@ describe(`[startup] ${createWebpackConfig.name}`, () => {
92
94
  let options: Parameters<typeof createWebpackConfig>[1];
93
95
  let configuration: { webpack?: WebpackConfiguration };
94
96
 
95
- function mockPlugIn(name: string) {
97
+ function mockPlugIn(name: string): any {
96
98
  return (options: Record<string, any>): any => ({ [name]: options });
97
99
  }
98
100
 
@@ -114,6 +116,9 @@ describe(`[startup] ${createWebpackConfig.name}`, () => {
114
116
  configuration = {};
115
117
 
116
118
  jest.resetAllMocks();
119
+ jest.mocked(CssMinimizerWebpackPlugin).mockImplementation(
120
+ mockPlugIn('CssMinimizerWebpackPlugin')
121
+ );
117
122
  jest.mocked(MiniCssExtractPlugin).mockImplementation(mockPlugIn('MiniCssExtractPlugin'));
118
123
  jest.mocked(BundleAnalyzerPlugin).mockImplementation(mockPlugIn('BundleAnalyzerPlugin'));
119
124
  jest.mocked(FilterWarningsPlugin).mockImplementation(mockPlugIn('FilterWarningsPlugin'));
@@ -597,6 +602,9 @@ describe(`[startup] ${createWebpackConfig.name}`, () => {
597
602
  });
598
603
 
599
604
  describe('when mode is "production"', () => {
605
+ const defaultTerserPluginOptions = { terserOptions: { compress: false, mangle: false } };
606
+ const defaultCssMinimizerOptions = {};
607
+
600
608
  beforeEach(() => {
601
609
  overrides.configuration ??= {};
602
610
  Object.assign(overrides.configuration, { mode: 'production' });
@@ -637,12 +645,13 @@ describe(`[startup] ${createWebpackConfig.name}`, () => {
637
645
 
638
646
  test('configures "optimization.minimizer"', () => {
639
647
  expect(subject().optimization?.minimizer).toEqual([
640
- new TerserPlugin({ terserOptions: { compress: false, mangle: false } }),
648
+ new TerserPlugin(defaultTerserPluginOptions),
649
+ new CssMinimizerWebpackPlugin(defaultCssMinimizerOptions),
641
650
  ]);
642
651
  });
643
652
 
644
- describe('when JS minification is turned off', () => {
645
- beforeEach(() => (configuration = { webpack: { minify: { js: false } } }));
653
+ describe('when minification is turned off', () => {
654
+ beforeEach(() => (configuration = { webpack: { minify: { css: false, js: false } } }));
646
655
 
647
656
  test('changes "optimization.minimize" to false', () => {
648
657
  expect(subject().optimization?.minimize).toBe(false);
@@ -653,14 +662,30 @@ describe(`[startup] ${createWebpackConfig.name}`, () => {
653
662
  });
654
663
  });
655
664
 
665
+ describe('with CSS minification options', () => {
666
+ beforeEach(() => {
667
+ configuration = {
668
+ webpack: { minify: { css: { exclude: 'foo.css' }, js: false } },
669
+ };
670
+ });
671
+
672
+ test('applies the options', () => {
673
+ expect(subject().optimization?.minimizer).toEqual([
674
+ new CssMinimizerWebpackPlugin(configuration.webpack?.minify?.css as any),
675
+ ]);
676
+ });
677
+ });
678
+
656
679
  describe('with JS minification options', () => {
657
680
  beforeEach(() => {
658
- configuration = { webpack: { minify: { js: { compress: true, mangle: true } } } };
681
+ configuration = {
682
+ webpack: { minify: { js: { compress: true, mangle: true }, css: false } },
683
+ };
659
684
  });
660
685
 
661
686
  test('applies the options', () => {
662
687
  expect(subject().optimization?.minimizer).toEqual([
663
- new TerserPlugin({ terserOptions: configuration.webpack?.minify?.js }),
688
+ new TerserPlugin({ terserOptions: configuration.webpack?.minify?.js as any }),
664
689
  ]);
665
690
  });
666
691
  });
@@ -1,3 +1,4 @@
1
+ import CssMinimizerWebpackPlugin from 'css-minimizer-webpack-plugin';
1
2
  import TerserPlugin from 'terser-webpack-plugin';
2
3
  import { Configuration } from 'webpack';
3
4
  import { Context, Overrides } from './types';
@@ -33,8 +34,9 @@ function minimizeConfig(optimization: ConfigWithCacheGroups, context: Context) {
33
34
  return;
34
35
  }
35
36
 
36
- const minify = context.minify?.js ?? true;
37
- optimization.minimize = !!minify;
37
+ const minifyJs = context.minify?.js ?? true;
38
+ const minifyCss = context.minify?.css ?? true;
39
+ optimization.minimize = !!minifyJs || !!minifyCss;
38
40
  if (!optimization.minimize) {
39
41
  return;
40
42
  }
@@ -42,10 +44,17 @@ function minimizeConfig(optimization: ConfigWithCacheGroups, context: Context) {
42
44
  const terserOptions = {
43
45
  compress: false,
44
46
  mangle: false,
45
- ...(typeof minify === 'object' ? minify : {}),
47
+ ...(typeof minifyJs === 'object' ? minifyJs : {}),
46
48
  };
47
49
 
48
- optimization.minimizer = [new TerserPlugin({ terserOptions })];
50
+ const cssMinimizerPluginOptions = {
51
+ ...(typeof minifyCss === 'object' ? minifyCss : {}),
52
+ };
53
+
54
+ optimization.minimizer = [
55
+ ...(minifyJs ? [new TerserPlugin({ terserOptions })] : []),
56
+ ...(minifyCss ? [new CssMinimizerWebpackPlugin(cssMinimizerPluginOptions)] : []),
57
+ ];
49
58
  }
50
59
 
51
60
  function sharedDependenciesConfig(optimization: ConfigWithCacheGroups, context: Context) {
@@ -62,7 +71,7 @@ function sharedDependenciesConfig(optimization: ConfigWithCacheGroups, context:
62
71
  enforce: true,
63
72
  },
64
73
  'anvil2': {
65
- test: /@servicetitan\/anvil2\/.*\.css$/,
74
+ test: /@servicetitan[\\/]anvil2[\\/].*\.css$/,
66
75
  name: 'anvil2',
67
76
  chunks: 'all',
68
77
  enforce: true,
@@ -3,7 +3,7 @@ import { RuleSetRule } from 'webpack';
3
3
  import { cssLoader, styleLoader } from '../loaders';
4
4
  import { Context } from '../types';
5
5
 
6
- const sharedCssDependencies = [/design-system\.css$/, /@servicetitan\/anvil2\/.*\.css$/];
6
+ const sharedCssDependencies = [/design-system\.css$/, /@servicetitan[\\/]anvil2[\\/].*\.css$/];
7
7
 
8
8
  export function cssRules(context: Context): RuleSetRule[] {
9
9
  const { isExposeSharedDependencies, isProduction } = context;