@trackunit/iris-app-build-utilities 0.0.428 → 0.0.429

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/CHANGELOG.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [0.0.429](https://github.com/Trackunit/manager/compare/iris-app-build-utilities/0.0.428...iris-app-build-utilities/0.0.429) (2024-08-12)
6
+
5
7
  ## [0.0.428](https://github.com/Trackunit/manager/compare/iris-app-build-utilities/0.0.427...iris-app-build-utilities/0.0.428) (2024-08-09)
6
8
 
7
9
  ### Dependency Updates
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trackunit/iris-app-build-utilities",
3
- "version": "0.0.428",
3
+ "version": "0.0.429",
4
4
  "license": "SEE LICENSE IN LICENSE.txt",
5
5
  "repository": "https://github.com/Trackunit/manager",
6
6
  "engines": {
@@ -8,16 +8,17 @@
8
8
  },
9
9
  "dependencies": {
10
10
  "tsconfig-paths": "^4.2.0",
11
- "typescript": "5.4.4",
11
+ "typescript": "5.5.4",
12
12
  "@trackunit/iris-app-api": "*",
13
13
  "@graphql-codegen/cli": "^5.0.0",
14
- "@nx/react": "18.3.3",
15
- "tailwindcss": "3.4.1",
14
+ "@nx/react": "19.5.6",
15
+ "tailwindcss": "3.4.3",
16
16
  "@tailwindcss/container-queries": "^0.1.1",
17
17
  "node-fetch": "2.6.8",
18
18
  "webpack-dev-server": "4.13.3",
19
19
  "tslib": "^2.6.2"
20
20
  },
21
21
  "main": "./src/index.js",
22
- "type": "commonjs"
23
- }
22
+ "type": "commonjs",
23
+ "types": "./src/index.d.ts"
24
+ }
@@ -21,7 +21,7 @@ const fromTsPath = (tsPath) => {
21
21
  *
22
22
  * @returns { Promise<Record<string, string>> } aliases Exposes object for module federation.
23
23
  */
24
- const getAliasesFromTsConfig = (options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
24
+ const getAliasesFromTsConfig = async (options) => {
25
25
  var _a, _b;
26
26
  const tsConfig = ts.readConfigFile(path.join(options.nxRootDir, options.tsConfigFilePath || "tsconfig.base.json"), ts.sys.readFile);
27
27
  if (!((_a = tsConfig.config.compilerOptions) === null || _a === void 0 ? void 0 : _a.paths)) {
@@ -34,6 +34,6 @@ const getAliasesFromTsConfig = (options) => tslib_1.__awaiter(void 0, void 0, vo
34
34
  acc[fromTsAlias(key)] = path.join(options.nxRootDir, fromTsPath(value[0] || ""));
35
35
  return acc;
36
36
  }, {});
37
- });
37
+ };
38
38
  exports.getAliasesFromTsConfig = getAliasesFromTsConfig;
39
39
  //# sourceMappingURL=getAliasesFromTsConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getAliasesFromTsConfig.js","sourceRoot":"","sources":["../../../../../libs/iris-app-sdk/iris-app-build-utilities/src/getAliasesFromTsConfig.ts"],"names":[],"mappings":";;;;AAAA,mDAA6B;AAC7B,uDAAiC;AAMjC;;;;;GAKG;AACH,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,EAAE;IACtC,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,CAAC;AACjH,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,EAAE;IACpC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AACtG,CAAC,CAAC;AAEF;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,CAAO,OAAmC,EAAE,EAAE;;IAClF,MAAM,QAAQ,GAAG,EAAE,CAAC,cAAc,CAChC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,gBAAgB,IAAI,oBAAoB,CAAC,EAC9E,EAAE,CAAC,GAAG,CAAC,QAAQ,CAChB,CAAC;IAEF,IAAI,CAAC,CAAA,MAAA,QAAQ,CAAC,MAAM,CAAC,eAAe,0CAAE,KAAK,CAAA,EAAE,CAAC;QAC5C,MAAM,KAAK,CAAC,oFAAoF,CAAC,CAAC;IACpG,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,MAAA,QAAQ,CAAC,MAAM,CAAC,eAAe,0CAAE,KAAiC,CAAC,CAAC,MAAM,CAE9F,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACtB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,SAAS,CAAC,wBAAwB,GAAG,eAAe,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACjF,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC,CAAA,CAAC;AAlBW,QAAA,sBAAsB,0BAkBjC","sourcesContent":["import * as path from \"path\";\nimport * as ts from \"typescript\";\ninterface AliasesFromTsConfigOptions {\n nxRootDir: string;\n tsConfigFilePath?: string;\n}\n\n/**\n * Removes the /* from the end of the alias if it exists.\n *\n * @param tsAlias the alias from the tsconfig.json\n * @returns { string } substring of the alias if it ends with /*\n */\nconst fromTsAlias = (tsAlias: string) => {\n return tsAlias.indexOf(\"/*\") === tsAlias.length - 2 ? tsAlias.substring(0, tsAlias.length - 2) : `${tsAlias}$`;\n};\n\nconst fromTsPath = (tsPath: string) => {\n return tsPath.indexOf(\"/*\") === tsPath.length - 2 ? tsPath.substring(0, tsPath.length - 2) : tsPath;\n};\n\n/**\n * Generates a list of aliases from the options.tsConfigFilePath defaults to tsconfig.base.json.\n *\n * @returns { Promise<Record<string, string>> } aliases Exposes object for module federation.\n */\nexport const getAliasesFromTsConfig = async (options: AliasesFromTsConfigOptions) => {\n const tsConfig = ts.readConfigFile(\n path.join(options.nxRootDir, options.tsConfigFilePath || \"tsconfig.base.json\"),\n ts.sys.readFile\n );\n\n if (!tsConfig.config.compilerOptions?.paths) {\n throw Error(`option tsconfigFilePath missing paths property in (tsConfig.compilerOptions.paths)`);\n }\n return Object.entries(tsConfig.config.compilerOptions?.paths as Record<string, string[]>).reduce<\n Record<string, string>\n >((acc, [key, value]) => {\n if (value.length !== 1) {\n throw new TypeError(`Unsupported TS alias ${key} has length ${value.length}`);\n }\n acc[fromTsAlias(key)] = path.join(options.nxRootDir, fromTsPath(value[0] || \"\"));\n return acc;\n }, {});\n};\n"]}
1
+ {"version":3,"file":"getAliasesFromTsConfig.js","sourceRoot":"","sources":["../../../../../libs/iris-app-sdk/iris-app-build-utilities/src/getAliasesFromTsConfig.ts"],"names":[],"mappings":";;;;AAAA,mDAA6B;AAC7B,uDAAiC;AAMjC;;;;;GAKG;AACH,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,EAAE;IACtC,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,CAAC;AACjH,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,EAAE;IACpC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AACtG,CAAC,CAAC;AAEF;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,KAAK,EAAE,OAAmC,EAAE,EAAE;;IAClF,MAAM,QAAQ,GAAG,EAAE,CAAC,cAAc,CAChC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,gBAAgB,IAAI,oBAAoB,CAAC,EAC9E,EAAE,CAAC,GAAG,CAAC,QAAQ,CAChB,CAAC;IAEF,IAAI,CAAC,CAAA,MAAA,QAAQ,CAAC,MAAM,CAAC,eAAe,0CAAE,KAAK,CAAA,EAAE,CAAC;QAC5C,MAAM,KAAK,CAAC,oFAAoF,CAAC,CAAC;IACpG,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,MAAA,QAAQ,CAAC,MAAM,CAAC,eAAe,0CAAE,KAAiC,CAAC,CAAC,MAAM,CAE9F,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACtB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,SAAS,CAAC,wBAAwB,GAAG,eAAe,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACjF,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC,CAAC;AAlBW,QAAA,sBAAsB,0BAkBjC","sourcesContent":["import * as path from \"path\";\nimport * as ts from \"typescript\";\ninterface AliasesFromTsConfigOptions {\n nxRootDir: string;\n tsConfigFilePath?: string;\n}\n\n/**\n * Removes the /* from the end of the alias if it exists.\n *\n * @param tsAlias the alias from the tsconfig.json\n * @returns { string } substring of the alias if it ends with /*\n */\nconst fromTsAlias = (tsAlias: string) => {\n return tsAlias.indexOf(\"/*\") === tsAlias.length - 2 ? tsAlias.substring(0, tsAlias.length - 2) : `${tsAlias}$`;\n};\n\nconst fromTsPath = (tsPath: string) => {\n return tsPath.indexOf(\"/*\") === tsPath.length - 2 ? tsPath.substring(0, tsPath.length - 2) : tsPath;\n};\n\n/**\n * Generates a list of aliases from the options.tsConfigFilePath defaults to tsconfig.base.json.\n *\n * @returns { Promise<Record<string, string>> } aliases Exposes object for module federation.\n */\nexport const getAliasesFromTsConfig = async (options: AliasesFromTsConfigOptions) => {\n const tsConfig = ts.readConfigFile(\n path.join(options.nxRootDir, options.tsConfigFilePath || \"tsconfig.base.json\"),\n ts.sys.readFile\n );\n\n if (!tsConfig.config.compilerOptions?.paths) {\n throw Error(`option tsconfigFilePath missing paths property in (tsConfig.compilerOptions.paths)`);\n }\n return Object.entries(tsConfig.config.compilerOptions?.paths as Record<string, string[]>).reduce<\n Record<string, string>\n >((acc, [key, value]) => {\n if (value.length !== 1) {\n throw new TypeError(`Unsupported TS alias ${key} has length ${value.length}`);\n }\n acc[fromTsAlias(key)] = path.join(options.nxRootDir, fromTsPath(value[0] || \"\"));\n return acc;\n }, {});\n};\n"]}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getAvailablePort = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const net = tslib_1.__importStar(require("net"));
6
- const findPort = (port) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
6
+ const findPort = async (port) => {
7
7
  return new Promise(resolve => {
8
8
  const server = net.createServer();
9
9
  server.once("error", (err) => {
@@ -21,7 +21,7 @@ const findPort = (port) => tslib_1.__awaiter(void 0, void 0, void 0, function* (
21
21
  });
22
22
  server.listen(port);
23
23
  });
24
- });
24
+ };
25
25
  /**
26
26
  * Gets the first available port in the specified range.
27
27
  *
@@ -29,17 +29,17 @@ const findPort = (port) => tslib_1.__awaiter(void 0, void 0, void 0, function* (
29
29
  * @param maxPort max port number inclusive
30
30
  * @returns {number} the first available port in the range
31
31
  */
32
- const getAvailablePort = (minPort, maxPort) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
32
+ const getAvailablePort = async (minPort, maxPort) => {
33
33
  if (minPort < 1 || maxPort > 65535 || minPort > maxPort) {
34
34
  throw new Error("Invalid port range.");
35
35
  }
36
36
  for (let port = minPort; port <= maxPort; port++) {
37
- const isAvailable = yield findPort(port);
37
+ const isAvailable = await findPort(port);
38
38
  if (isAvailable) {
39
39
  return port;
40
40
  }
41
41
  }
42
42
  throw new Error("No available ports in the specified range.");
43
- });
43
+ };
44
44
  exports.getAvailablePort = getAvailablePort;
45
45
  //# sourceMappingURL=getAvailablePort.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getAvailablePort.js","sourceRoot":"","sources":["../../../../../libs/iris-app-sdk/iris-app-build-utilities/src/getAvailablePort.ts"],"names":[],"mappings":";;;;AAAA,iDAA2B;AAE3B,MAAM,QAAQ,GAAG,CAAO,IAAY,EAAoB,EAAE;IACxD,OAAO,IAAI,OAAO,CAAU,OAAO,CAAC,EAAE;QACpC,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAqB,EAAE,EAAE;YAC7C,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC9B,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;YAC5B,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;gBAChB,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAEF;;;;;;GAMG;AACI,MAAM,gBAAgB,GAAG,CAAO,OAAe,EAAE,OAAe,EAAmB,EAAE;IAC1F,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,KAAK,IAAI,OAAO,GAAG,OAAO,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,IAAI,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;QACjD,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;AAChE,CAAC,CAAA,CAAC;AAbW,QAAA,gBAAgB,oBAa3B","sourcesContent":["import * as net from \"net\";\n\nconst findPort = async (port: number): Promise<boolean> => {\n return new Promise<boolean>(resolve => {\n const server = net.createServer();\n server.once(\"error\", (err: { code: string }) => {\n if (err.code === \"EADDRINUSE\") {\n resolve(false);\n } else {\n resolve(true);\n }\n });\n\n server.once(\"listening\", () => {\n server.close(() => {\n resolve(true);\n });\n });\n\n server.listen(port);\n });\n};\n\n/**\n * Gets the first available port in the specified range.\n *\n * @param minPort min port number inclusive\n * @param maxPort max port number inclusive\n * @returns {number} the first available port in the range\n */\nexport const getAvailablePort = async (minPort: number, maxPort: number): Promise<number> => {\n if (minPort < 1 || maxPort > 65535 || minPort > maxPort) {\n throw new Error(\"Invalid port range.\");\n }\n\n for (let port = minPort; port <= maxPort; port++) {\n const isAvailable = await findPort(port);\n if (isAvailable) {\n return port;\n }\n }\n\n throw new Error(\"No available ports in the specified range.\");\n};\n"]}
1
+ {"version":3,"file":"getAvailablePort.js","sourceRoot":"","sources":["../../../../../libs/iris-app-sdk/iris-app-build-utilities/src/getAvailablePort.ts"],"names":[],"mappings":";;;;AAAA,iDAA2B;AAE3B,MAAM,QAAQ,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;IACxD,OAAO,IAAI,OAAO,CAAU,OAAO,CAAC,EAAE;QACpC,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAqB,EAAE,EAAE;YAC7C,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC9B,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;YAC5B,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;gBAChB,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF;;;;;;GAMG;AACI,MAAM,gBAAgB,GAAG,KAAK,EAAE,OAAe,EAAE,OAAe,EAAmB,EAAE;IAC1F,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,KAAK,IAAI,OAAO,GAAG,OAAO,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,IAAI,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;QACjD,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;AAChE,CAAC,CAAC;AAbW,QAAA,gBAAgB,oBAa3B","sourcesContent":["import * as net from \"net\";\n\nconst findPort = async (port: number): Promise<boolean> => {\n return new Promise<boolean>(resolve => {\n const server = net.createServer();\n server.once(\"error\", (err: { code: string }) => {\n if (err.code === \"EADDRINUSE\") {\n resolve(false);\n } else {\n resolve(true);\n }\n });\n\n server.once(\"listening\", () => {\n server.close(() => {\n resolve(true);\n });\n });\n\n server.listen(port);\n });\n};\n\n/**\n * Gets the first available port in the specified range.\n *\n * @param minPort min port number inclusive\n * @param maxPort max port number inclusive\n * @returns {number} the first available port in the range\n */\nexport const getAvailablePort = async (minPort: number, maxPort: number): Promise<number> => {\n if (minPort < 1 || maxPort > 65535 || minPort > maxPort) {\n throw new Error(\"Invalid port range.\");\n }\n\n for (let port = minPort; port <= maxPort; port++) {\n const isAvailable = await findPort(port);\n if (isAvailable) {\n return port;\n }\n }\n\n throw new Error(\"No available ports in the specified range.\");\n};\n"]}
@@ -9,7 +9,7 @@ const path = tslib_1.__importStar(require("path"));
9
9
  * @param options {ExposedExtensionsOptions} The manifest to get the exposed extensions from.
10
10
  * @returns {Exposes} Exposes object for module federation.
11
11
  */
12
- const getExposedExtensions = (options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
12
+ const getExposedExtensions = async (options) => {
13
13
  const output = {};
14
14
  for (const extension of options.manifest.extensions) {
15
15
  if (extension.type !== "REPORT_EXTENSION") {
@@ -17,6 +17,6 @@ const getExposedExtensions = (options) => tslib_1.__awaiter(void 0, void 0, void
17
17
  }
18
18
  }
19
19
  return output;
20
- });
20
+ };
21
21
  exports.getExposedExtensions = getExposedExtensions;
22
22
  //# sourceMappingURL=getExposedExtensions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getExposedExtensions.js","sourceRoot":"","sources":["../../../../../libs/iris-app-sdk/iris-app-build-utilities/src/getExposedExtensions.ts"],"names":[],"mappings":";;;;AACA,mDAA6B;AAM7B;;;;;GAKG;AACI,MAAM,oBAAoB,GAAG,CAAO,OAAiC,EAAoB,EAAE;IAChG,MAAM,MAAM,GAAY,EAAE,CAAC;IAC3B,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACpD,IAAI,SAAS,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YAC1C,MAAM,CAAC,KAAK,SAAS,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CACrC,OAAO,CAAC,SAAS,EACjB,SAAS,CAAC,UAAU,EACpB,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAC9C,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAA,CAAC;AAZW,QAAA,oBAAoB,wBAY/B","sourcesContent":["import { Exposes, IrisAppManifest } from \"@trackunit/iris-app-api\";\nimport * as path from \"path\";\n\ninterface ExposedExtensionsOptions {\n nxRootDir: string;\n manifest: IrisAppManifest;\n}\n/**\n * Generates a list of exposed extensions from a manifest.\n *\n * @param options {ExposedExtensionsOptions} The manifest to get the exposed extensions from.\n * @returns {Exposes} Exposes object for module federation.\n */\nexport const getExposedExtensions = async (options: ExposedExtensionsOptions): Promise<Exposes> => {\n const output: Exposes = {};\n for (const extension of options.manifest.extensions) {\n if (extension.type !== \"REPORT_EXTENSION\") {\n output[`./${extension.id}`] = path.join(\n options.nxRootDir,\n extension.sourceRoot,\n extension.main ? extension.main : \"index.tsx\"\n );\n }\n }\n return output;\n};\n"]}
1
+ {"version":3,"file":"getExposedExtensions.js","sourceRoot":"","sources":["../../../../../libs/iris-app-sdk/iris-app-build-utilities/src/getExposedExtensions.ts"],"names":[],"mappings":";;;;AACA,mDAA6B;AAM7B;;;;;GAKG;AACI,MAAM,oBAAoB,GAAG,KAAK,EAAE,OAAiC,EAAoB,EAAE;IAChG,MAAM,MAAM,GAAY,EAAE,CAAC;IAC3B,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACpD,IAAI,SAAS,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YAC1C,MAAM,CAAC,KAAK,SAAS,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CACrC,OAAO,CAAC,SAAS,EACjB,SAAS,CAAC,UAAU,EACpB,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAC9C,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAZW,QAAA,oBAAoB,wBAY/B","sourcesContent":["import { Exposes, IrisAppManifest } from \"@trackunit/iris-app-api\";\nimport * as path from \"path\";\n\ninterface ExposedExtensionsOptions {\n nxRootDir: string;\n manifest: IrisAppManifest;\n}\n/**\n * Generates a list of exposed extensions from a manifest.\n *\n * @param options {ExposedExtensionsOptions} The manifest to get the exposed extensions from.\n * @returns {Exposes} Exposes object for module federation.\n */\nexport const getExposedExtensions = async (options: ExposedExtensionsOptions): Promise<Exposes> => {\n const output: Exposes = {};\n for (const extension of options.manifest.extensions) {\n if (extension.type !== \"REPORT_EXTENSION\") {\n output[`./${extension.id}`] = path.join(\n options.nxRootDir,\n extension.sourceRoot,\n extension.main ? extension.main : \"index.tsx\"\n );\n }\n }\n return output;\n};\n"]}
@@ -10,14 +10,19 @@ const getAvailablePort_1 = require("./getAvailablePort");
10
10
  * @param webpackDevServerConfiguration The configuration to extend.
11
11
  * @returns {Configuration} The dev server for tiles.
12
12
  */
13
- const getTileWebpackDevServer = (...args_1) => tslib_1.__awaiter(void 0, [...args_1], void 0, function* (webpackDevServerConfiguration = {}) {
14
- const port = yield (0, getAvailablePort_1.getAvailablePort)(22220, 22229);
15
- return Object.assign({ port, historyApiFallback: true, headers: {
13
+ const getTileWebpackDevServer = async (webpackDevServerConfiguration = {}) => {
14
+ const port = await (0, getAvailablePort_1.getAvailablePort)(22220, 22229);
15
+ return {
16
+ port,
17
+ historyApiFallback: true,
18
+ headers: {
16
19
  "Access-Control-Allow-Credentials": "true",
17
20
  "Access-Control-Max-Age": "3600",
18
21
  "Access-Control-Allow-Methods": "GET, POST, PUT, DELETE, OPTIONS",
19
22
  "Access-Control-Allow-Headers": "X-Requested-With, baggage, content-type, Authorization, sentry-trace, session-id, commit-number, x-trackunitappversion",
20
- }, onListening: (server) => { }, setupMiddlewares: (middlewares, devServer) => {
23
+ },
24
+ onListening: (server) => { },
25
+ setupMiddlewares: (middlewares, devServer) => {
21
26
  var _a, _b, _c;
22
27
  middlewares.push({
23
28
  name: "cors-preflight",
@@ -35,12 +40,12 @@ const getTileWebpackDevServer = (...args_1) => tslib_1.__awaiter(void 0, [...arg
35
40
  response.header("Access-Control-Allow-Origin", request.headers.origin || "https://dev.manager.trackunit.com");
36
41
  next();
37
42
  });
38
- (_b = devServer.app) === null || _b === void 0 ? void 0 : _b.use("/manifestAndToken", (request, response, next) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
43
+ (_b = devServer.app) === null || _b === void 0 ? void 0 : _b.use("/manifestAndToken", async (request, response, next) => {
39
44
  response.header("Access-Control-Allow-Origin", request.headers.origin || "https://dev.manager.trackunit.com");
40
45
  response.header("Access-Control-Allow-Headers", "X-Requested-With, baggage, content-type, Authorization, sentry-trace, session-id, commit-number, x-trackunitappversion");
41
46
  try {
42
- const resp = yield (0, node_fetch_1.default)(`http://localhost:${port}/manifest.json`);
43
- const body = yield resp.json();
47
+ const resp = await (0, node_fetch_1.default)(`http://localhost:${port}/manifest.json`);
48
+ const body = await resp.json();
44
49
  response.send({ manifest: body });
45
50
  }
46
51
  catch (e) {
@@ -49,15 +54,15 @@ const getTileWebpackDevServer = (...args_1) => tslib_1.__awaiter(void 0, [...arg
49
54
  response.status(500);
50
55
  response.send(e);
51
56
  }
52
- }));
53
- (_c = devServer.app) === null || _c === void 0 ? void 0 : _c.use("/tileloader.js", (request, response, next) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
57
+ });
58
+ (_c = devServer.app) === null || _c === void 0 ? void 0 : _c.use("/tileloader.js", async (request, response, next) => {
54
59
  response.header("Access-Control-Allow-Origin", request.headers.origin || "https://dev.manager.trackunit.com");
55
60
  response.header("Access-Control-Allow-Headers", "X-Requested-With, baggage, content-type, Authorization, sentry-trace, session-id, commit-number, x-trackunitappversion");
56
61
  try {
57
62
  // To test tileloader locally build the iris-app-loader and flip these 2 lines.
58
63
  // const resp = await fetch("http://localhost:3000/tileloader.js");
59
- const resp = yield (0, node_fetch_1.default)("https://iris.trackunit.app/tileloader.js");
60
- const body = yield resp.text();
64
+ const resp = await (0, node_fetch_1.default)("https://iris.trackunit.app/tileloader.js");
65
+ const body = await resp.text();
61
66
  response.send(body);
62
67
  }
63
68
  catch (e) {
@@ -66,9 +71,11 @@ const getTileWebpackDevServer = (...args_1) => tslib_1.__awaiter(void 0, [...arg
66
71
  response.status(500);
67
72
  response.send(e);
68
73
  }
69
- }));
74
+ });
70
75
  return middlewares;
71
- } }, webpackDevServerConfiguration);
72
- });
76
+ },
77
+ ...webpackDevServerConfiguration,
78
+ };
79
+ };
73
80
  exports.getTileWebpackDevServer = getTileWebpackDevServer;
74
81
  //# sourceMappingURL=getTileWebpackDevServer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getTileWebpackDevServer.js","sourceRoot":"","sources":["../../../../../libs/iris-app-sdk/iris-app-build-utilities/src/getTileWebpackDevServer.ts"],"names":[],"mappings":"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","sourcesContent":["import fetch from \"node-fetch\";\nimport Server, { Configuration, Middleware, Request, Response } from \"webpack-dev-server\";\nimport { getAvailablePort } from \"./getAvailablePort\";\n\n/**\n * Generates a dev server configuration for webpack configuration.\n *\n * @param webpackDevServerConfiguration The configuration to extend.\n * @returns {Configuration} The dev server for tiles.\n */\nexport const getTileWebpackDevServer = async (\n webpackDevServerConfiguration: Configuration = {}\n): Promise<Configuration> => {\n const port = await getAvailablePort(22220, 22229);\n return {\n port,\n historyApiFallback: true,\n headers: {\n \"Access-Control-Allow-Credentials\": \"true\",\n \"Access-Control-Max-Age\": \"3600\",\n \"Access-Control-Allow-Methods\": \"GET, POST, PUT, DELETE, OPTIONS\",\n \"Access-Control-Allow-Headers\":\n \"X-Requested-With, baggage, content-type, Authorization, sentry-trace, session-id, commit-number, x-trackunitappversion\",\n },\n onListening: (server: Server) => {},\n setupMiddlewares: (middlewares: Middleware[], devServer: Server) => {\n middlewares.push({\n name: \"cors-preflight\",\n path: \"/\",\n middleware: (req: Request, res: Response, next: () => void) => {\n if (req.method === \"GET\") {\n next();\n } else {\n res.send(\"GET, HEAD\");\n }\n },\n });\n devServer.app?.use(\"/\", (request, response, next) => {\n response.header(\"Access-Control-Allow-Origin\", request.headers.origin || \"https://dev.manager.trackunit.com\");\n next();\n });\n devServer.app?.use(\"/manifestAndToken\", async (request, response, next) => {\n response.header(\"Access-Control-Allow-Origin\", request.headers.origin || \"https://dev.manager.trackunit.com\");\n response.header(\n \"Access-Control-Allow-Headers\",\n \"X-Requested-With, baggage, content-type, Authorization, sentry-trace, session-id, commit-number, x-trackunitappversion\"\n );\n try {\n const resp = await fetch(`http://localhost:${port}/manifest.json`);\n const body = await resp.json();\n response.send({ manifest: body });\n } catch (e) {\n // eslint-disable-next-line no-console\n console.error(\"ERROR: \", e);\n response.status(500);\n response.send(e);\n }\n });\n devServer.app?.use(\"/tileloader.js\", async (request, response, next) => {\n response.header(\"Access-Control-Allow-Origin\", request.headers.origin || \"https://dev.manager.trackunit.com\");\n response.header(\n \"Access-Control-Allow-Headers\",\n \"X-Requested-With, baggage, content-type, Authorization, sentry-trace, session-id, commit-number, x-trackunitappversion\"\n );\n try {\n // To test tileloader locally build the iris-app-loader and flip these 2 lines.\n // const resp = await fetch(\"http://localhost:3000/tileloader.js\");\n const resp = await fetch(\"https://iris.trackunit.app/tileloader.js\");\n const body = await resp.text();\n response.send(body);\n } catch (e) {\n // eslint-disable-next-line no-console\n console.error(\"ERROR: \", e);\n response.status(500);\n response.send(e);\n }\n });\n return middlewares;\n },\n ...webpackDevServerConfiguration,\n };\n};\n"]}
1
+ {"version":3,"file":"getTileWebpackDevServer.js","sourceRoot":"","sources":["../../../../../libs/iris-app-sdk/iris-app-build-utilities/src/getTileWebpackDevServer.ts"],"names":[],"mappings":"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","sourcesContent":["import fetch from \"node-fetch\";\nimport Server, { Configuration, Middleware, Request, Response } from \"webpack-dev-server\";\nimport { getAvailablePort } from \"./getAvailablePort\";\n\n/**\n * Generates a dev server configuration for webpack configuration.\n *\n * @param webpackDevServerConfiguration The configuration to extend.\n * @returns {Configuration} The dev server for tiles.\n */\nexport const getTileWebpackDevServer = async (\n webpackDevServerConfiguration: Configuration = {}\n): Promise<Configuration> => {\n const port = await getAvailablePort(22220, 22229);\n return {\n port,\n historyApiFallback: true,\n headers: {\n \"Access-Control-Allow-Credentials\": \"true\",\n \"Access-Control-Max-Age\": \"3600\",\n \"Access-Control-Allow-Methods\": \"GET, POST, PUT, DELETE, OPTIONS\",\n \"Access-Control-Allow-Headers\":\n \"X-Requested-With, baggage, content-type, Authorization, sentry-trace, session-id, commit-number, x-trackunitappversion\",\n },\n onListening: (server: Server) => {},\n setupMiddlewares: (middlewares: Middleware[], devServer: Server) => {\n middlewares.push({\n name: \"cors-preflight\",\n path: \"/\",\n middleware: (req: Request, res: Response, next: () => void) => {\n if (req.method === \"GET\") {\n next();\n } else {\n res.send(\"GET, HEAD\");\n }\n },\n });\n devServer.app?.use(\"/\", (request, response, next) => {\n response.header(\"Access-Control-Allow-Origin\", request.headers.origin || \"https://dev.manager.trackunit.com\");\n next();\n });\n devServer.app?.use(\"/manifestAndToken\", async (request, response, next) => {\n response.header(\"Access-Control-Allow-Origin\", request.headers.origin || \"https://dev.manager.trackunit.com\");\n response.header(\n \"Access-Control-Allow-Headers\",\n \"X-Requested-With, baggage, content-type, Authorization, sentry-trace, session-id, commit-number, x-trackunitappversion\"\n );\n try {\n const resp = await fetch(`http://localhost:${port}/manifest.json`);\n const body = await resp.json();\n response.send({ manifest: body });\n } catch (e) {\n // eslint-disable-next-line no-console\n console.error(\"ERROR: \", e);\n response.status(500);\n response.send(e);\n }\n });\n devServer.app?.use(\"/tileloader.js\", async (request, response, next) => {\n response.header(\"Access-Control-Allow-Origin\", request.headers.origin || \"https://dev.manager.trackunit.com\");\n response.header(\n \"Access-Control-Allow-Headers\",\n \"X-Requested-With, baggage, content-type, Authorization, sentry-trace, session-id, commit-number, x-trackunitappversion\"\n );\n try {\n // To test tileloader locally build the iris-app-loader and flip these 2 lines.\n // const resp = await fetch(\"http://localhost:3000/tileloader.js\");\n const resp = await fetch(\"https://iris.trackunit.app/tileloader.js\");\n const body = await resp.text();\n response.send(body);\n } catch (e) {\n // eslint-disable-next-line no-console\n console.error(\"ERROR: \", e);\n response.status(500);\n response.send(e);\n }\n });\n return middlewares;\n },\n ...webpackDevServerConfiguration,\n };\n};\n"]}