@storm-software/workspace-tools 1.202.1 → 1.203.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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## 1.203.0 (2024-12-19)
2
+
3
+ ### Features
4
+
5
+ - **workspace-tools:** Update TypeScript library generators to use `unbuild`
6
+ executor
7
+ ([29468243](https://github.com/storm-software/storm-ops/commit/29468243))
8
+
1
9
  ## 1.202.1 (2024-12-19)
2
10
 
3
11
  ### Bug Fixes
package/declarations.d.ts CHANGED
@@ -194,12 +194,20 @@ declare function typeScriptLibraryGeneratorFn(
194
194
  ): Promise<any>;
195
195
  export { typeScriptLibraryGeneratorFn };
196
196
 
197
- export type ProjectTagVariant = "language" | "type" | "dist-style" | "provider";
197
+ export type ProjectTagVariant =
198
+ | "language"
199
+ | "type"
200
+ | "dist-style"
201
+ | "provider"
202
+ | "platform"
203
+ | "registry";
198
204
  export const ProjectTagVariant = {
199
205
  LANGUAGE: "language" as ProjectTagVariant,
200
206
  TYPE: "type" as ProjectTagVariant,
201
207
  DIST_STYLE: "dist-style" as ProjectTagVariant,
202
- PROVIDER: "provider" as ProjectTagVariant
208
+ PROVIDER: "provider" as ProjectTagVariant,
209
+ PLATFORM: "platform" as ProjectTagVariant,
210
+ REGISTRY: "registry" as ProjectTagVariant
203
211
  };
204
212
 
205
213
  export type ProjectTagLanguageValue = "typescript" | "rust";
@@ -220,6 +228,14 @@ export const ProjectTagDistStyleValue = {
220
228
  CLEAN: "clean" as ProjectTagDistStyleValue
221
229
  };
222
230
 
231
+ export type ProjectTagPlatformValue = "node" | "browser" | "neutral" | "worker";
232
+ export const ProjectTagPlatformValue = {
233
+ NODE: "node" as ProjectTagPlatformValue,
234
+ BROWSER: "browser" as ProjectTagPlatformValue,
235
+ NEUTRAL: "neutral" as ProjectTagPlatformValue,
236
+ WORKER: "worker" as ProjectTagPlatformValue
237
+ };
238
+
223
239
  export type ProjectTagRegistryValue = "cargo" | "npm" | "container" | "cyclone";
224
240
  export const ProjectTagRegistryValue = {
225
241
  CARGO: "cargo" as ProjectTagRegistryValue,
package/index.js CHANGED
@@ -221087,6 +221087,91 @@ var import_js = require("@nx/js");
221087
221087
  var import_init = __toESM(require("@nx/js/src/generators/init/init"));
221088
221088
  var import_generator = __toESM(require("@nx/js/src/generators/setup-verdaccio/generator"));
221089
221089
 
221090
+ // packages/workspace-tools/src/utils/project-tags.ts
221091
+ var ProjectTagConstants = {
221092
+ Language: {
221093
+ TAG_ID: "language",
221094
+ TYPESCRIPT: "typescript",
221095
+ RUST: "rust"
221096
+ },
221097
+ ProjectType: {
221098
+ TAG_ID: "type",
221099
+ LIBRARY: "library",
221100
+ APPLICATION: "application"
221101
+ },
221102
+ DistStyle: {
221103
+ TAG_ID: "dist-style",
221104
+ NORMAL: "normal",
221105
+ CLEAN: "clean"
221106
+ },
221107
+ Provider: {
221108
+ TAG_ID: "provider"
221109
+ },
221110
+ Platform: {
221111
+ TAG_ID: "platform",
221112
+ NODE: "node",
221113
+ BROWSER: "browser",
221114
+ NEUTRAL: "neutral",
221115
+ WORKER: "worker"
221116
+ },
221117
+ Registry: {
221118
+ TAG_ID: "registry",
221119
+ CARGO: "cargo",
221120
+ NPM: "npm",
221121
+ CONTAINER: "container",
221122
+ CYCLONE: "cyclone"
221123
+ }
221124
+ };
221125
+ var formatProjectTag = (variant, value2) => {
221126
+ return `${variant}:${value2}`;
221127
+ };
221128
+ var hasProjectTag = (project, variant) => {
221129
+ project.tags = project.tags ?? [];
221130
+ const prefix = formatProjectTag(variant, "");
221131
+ return project.tags.some(
221132
+ (tag) => tag.startsWith(prefix) && tag.length > prefix.length
221133
+ );
221134
+ };
221135
+ var getProjectTag = (project, variant) => {
221136
+ if (!hasProjectTag(project, variant)) {
221137
+ return void 0;
221138
+ }
221139
+ project.tags = project.tags ?? [];
221140
+ const prefix = formatProjectTag(variant, "");
221141
+ const tag = project.tags.find((tag2) => tag2.startsWith(prefix));
221142
+ return tag?.replace(prefix, "");
221143
+ };
221144
+ var isEqualProjectTag = (project, variant, value2) => {
221145
+ const tag = getProjectTag(project, variant);
221146
+ return !!(tag && tag?.toUpperCase() === value2.toUpperCase());
221147
+ };
221148
+ var addProjectTag = (project, variant, value2, options = {
221149
+ overwrite: false
221150
+ }) => {
221151
+ project.tags = project.tags ?? [];
221152
+ if (options.overwrite || !hasProjectTag(project, variant)) {
221153
+ project.tags = project.tags.filter(
221154
+ (tag) => !tag.startsWith(formatProjectTag(variant, ""))
221155
+ );
221156
+ project.tags.push(formatProjectTag(variant, value2));
221157
+ }
221158
+ };
221159
+ var setDefaultProjectTags = (project) => {
221160
+ project.tags = project.tags ?? [];
221161
+ addProjectTag(
221162
+ project,
221163
+ ProjectTagConstants.ProjectType.TAG_ID,
221164
+ project.projectType === "application" ? ProjectTagConstants.ProjectType.APPLICATION : ProjectTagConstants.ProjectType.LIBRARY,
221165
+ { overwrite: true }
221166
+ );
221167
+ addProjectTag(
221168
+ project,
221169
+ ProjectTagConstants.DistStyle.TAG_ID,
221170
+ project.targets && Object.keys(project.targets).includes("clean-package") ? ProjectTagConstants.DistStyle.CLEAN : ProjectTagConstants.DistStyle.NORMAL,
221171
+ { overwrite: true }
221172
+ );
221173
+ };
221174
+
221090
221175
  // packages/workspace-tools/src/utils/versions.ts
221091
221176
  var tsupVersion = "^7.2.0";
221092
221177
  var prettierPackageJsonVersion = "2.4.6";
@@ -221145,6 +221230,7 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
221145
221230
  tsConfig: (0, import_devkit.joinPathFragments)(options.projectRoot, "tsconfig.json"),
221146
221231
  project: (0, import_devkit.joinPathFragments)(options.projectRoot, "package.json"),
221147
221232
  defaultConfiguration: "production",
221233
+ platform: "neutral",
221148
221234
  assets: [
221149
221235
  {
221150
221236
  input: options.projectRoot,
@@ -221168,14 +221254,18 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
221168
221254
  verbose: true
221169
221255
  }
221170
221256
  }
221171
- },
221172
- lint: {},
221173
- test: {}
221257
+ }
221174
221258
  }
221175
221259
  };
221176
- if (schema.platform && projectConfig?.targets?.build) {
221260
+ if (schema.platform) {
221177
221261
  projectConfig.targets.build.options.platform = schema.platform;
221178
221262
  }
221263
+ addProjectTag(
221264
+ projectConfig,
221265
+ ProjectTagConstants.Platform.TAG_ID,
221266
+ projectConfig.targets.build.options.platform === "node" ? ProjectTagConstants.Platform.NODE : projectConfig.targets.build.options.platform === "worker" ? ProjectTagConstants.Platform.WORKER : projectConfig.targets.build.options.platform === "browser" ? ProjectTagConstants.Platform.BROWSER : ProjectTagConstants.Platform.NEUTRAL,
221267
+ { overwrite: true }
221268
+ );
221179
221269
  createProjectTsConfigJson(tree, options);
221180
221270
  (0, import_devkit.addProjectConfiguration)(tree, options.name, projectConfig);
221181
221271
  let repository = {
@@ -236872,86 +236962,6 @@ function isPostInstallProcess() {
236872
236962
  // packages/workspace-tools/src/utils/package-helpers.ts
236873
236963
  var import_devkit16 = require("@nx/devkit");
236874
236964
  var import_node_fs20 = require("node:fs");
236875
-
236876
- // packages/workspace-tools/src/utils/project-tags.ts
236877
- var ProjectTagConstants = {
236878
- Language: {
236879
- TAG_ID: "language",
236880
- TYPESCRIPT: "typescript",
236881
- RUST: "rust"
236882
- },
236883
- ProjectType: {
236884
- TAG_ID: "type",
236885
- LIBRARY: "library",
236886
- APPLICATION: "application"
236887
- },
236888
- DistStyle: {
236889
- TAG_ID: "dist-style",
236890
- NORMAL: "normal",
236891
- CLEAN: "clean"
236892
- },
236893
- Provider: {
236894
- TAG_ID: "provider"
236895
- },
236896
- Registry: {
236897
- TAG_ID: "registry",
236898
- CARGO: "cargo",
236899
- NPM: "npm",
236900
- CONTAINER: "container",
236901
- CYCLONE: "cyclone"
236902
- }
236903
- };
236904
- var formatProjectTag = (variant, value2) => {
236905
- return `${variant}:${value2}`;
236906
- };
236907
- var hasProjectTag = (project, variant) => {
236908
- project.tags = project.tags ?? [];
236909
- const prefix = formatProjectTag(variant, "");
236910
- return project.tags.some(
236911
- (tag) => tag.startsWith(prefix) && tag.length > prefix.length
236912
- );
236913
- };
236914
- var getProjectTag = (project, variant) => {
236915
- if (!hasProjectTag(project, variant)) {
236916
- return void 0;
236917
- }
236918
- project.tags = project.tags ?? [];
236919
- const prefix = formatProjectTag(variant, "");
236920
- const tag = project.tags.find((tag2) => tag2.startsWith(prefix));
236921
- return tag?.replace(prefix, "");
236922
- };
236923
- var isEqualProjectTag = (project, variant, value2) => {
236924
- const tag = getProjectTag(project, variant);
236925
- return !!(tag && tag?.toUpperCase() === value2.toUpperCase());
236926
- };
236927
- var addProjectTag = (project, variant, value2, options = {
236928
- overwrite: false
236929
- }) => {
236930
- project.tags = project.tags ?? [];
236931
- if (options.overwrite || !hasProjectTag(project, variant)) {
236932
- project.tags = project.tags.filter(
236933
- (tag) => !tag.startsWith(formatProjectTag(variant, ""))
236934
- );
236935
- project.tags.push(formatProjectTag(variant, value2));
236936
- }
236937
- };
236938
- var setDefaultProjectTags = (project) => {
236939
- project.tags = project.tags ?? [];
236940
- addProjectTag(
236941
- project,
236942
- ProjectTagConstants.ProjectType.TAG_ID,
236943
- project.projectType === "application" ? ProjectTagConstants.ProjectType.APPLICATION : ProjectTagConstants.ProjectType.LIBRARY,
236944
- { overwrite: true }
236945
- );
236946
- addProjectTag(
236947
- project,
236948
- ProjectTagConstants.DistStyle.TAG_ID,
236949
- project.targets && Object.keys(project.targets).includes("clean-package") ? ProjectTagConstants.DistStyle.CLEAN : ProjectTagConstants.DistStyle.NORMAL,
236950
- { overwrite: true }
236951
- );
236952
- };
236953
-
236954
- // packages/workspace-tools/src/utils/package-helpers.ts
236955
236965
  var PackageManagerTypes = {
236956
236966
  PackageJson: "package.json",
236957
236967
  CargoToml: "Cargo.toml"
package/meta.json CHANGED
@@ -3761,13 +3761,29 @@
3761
3761
  ],
3762
3762
  "format": "esm"
3763
3763
  },
3764
+ "packages/workspace-tools/src/utils/project-tags.ts": {
3765
+ "bytes": 3491,
3766
+ "imports": [
3767
+ {
3768
+ "path": "@nx/devkit",
3769
+ "kind": "import-statement",
3770
+ "external": true
3771
+ },
3772
+ {
3773
+ "path": "../../declarations.d",
3774
+ "kind": "import-statement",
3775
+ "external": true
3776
+ }
3777
+ ],
3778
+ "format": "esm"
3779
+ },
3764
3780
  "packages/workspace-tools/src/utils/versions.ts": {
3765
3781
  "bytes": 745,
3766
3782
  "imports": [],
3767
3783
  "format": "esm"
3768
3784
  },
3769
3785
  "packages/workspace-tools/src/base/typescript-library-generator.ts": {
3770
- "bytes": 13220,
3786
+ "bytes": 13895,
3771
3787
  "imports": [
3772
3788
  {
3773
3789
  "path": "@nx/devkit",
@@ -3794,6 +3810,16 @@
3794
3810
  "kind": "import-statement",
3795
3811
  "external": true
3796
3812
  },
3813
+ {
3814
+ "path": "../executors/unbuild/schema",
3815
+ "kind": "import-statement",
3816
+ "external": true
3817
+ },
3818
+ {
3819
+ "path": "packages/workspace-tools/src/utils/project-tags.ts",
3820
+ "kind": "import-statement",
3821
+ "original": "../utils/project-tags"
3822
+ },
3797
3823
  {
3798
3824
  "path": "packages/workspace-tools/src/utils/versions.ts",
3799
3825
  "kind": "import-statement",
@@ -23203,7 +23229,7 @@
23203
23229
  "format": "esm"
23204
23230
  },
23205
23231
  "packages/workspace-tools/src/executors/unbuild/schema.json": {
23206
- "bytes": 3823,
23232
+ "bytes": 4020,
23207
23233
  "imports": []
23208
23234
  },
23209
23235
  "node_modules/.pnpm/zod-to-json-schema@3.23.1_zod@3.23.8/node_modules/zod-to-json-schema/dist/esm/Options.js": {
@@ -24195,22 +24221,6 @@
24195
24221
  ],
24196
24222
  "format": "esm"
24197
24223
  },
24198
- "packages/workspace-tools/src/utils/project-tags.ts": {
24199
- "bytes": 3204,
24200
- "imports": [
24201
- {
24202
- "path": "@nx/devkit",
24203
- "kind": "import-statement",
24204
- "external": true
24205
- },
24206
- {
24207
- "path": "../../declarations.d",
24208
- "kind": "import-statement",
24209
- "external": true
24210
- }
24211
- ],
24212
- "format": "esm"
24213
- },
24214
24224
  "packages/workspace-tools/src/utils/package-helpers.ts": {
24215
24225
  "bytes": 1439,
24216
24226
  "imports": [
@@ -30993,7 +31003,10 @@
30993
31003
  "bytesInOutput": 3251
30994
31004
  },
30995
31005
  "packages/workspace-tools/src/base/typescript-library-generator.ts": {
30996
- "bytesInOutput": 8912
31006
+ "bytesInOutput": 9318
31007
+ },
31008
+ "packages/workspace-tools/src/utils/project-tags.ts": {
31009
+ "bytesInOutput": 2324
30997
31010
  },
30998
31011
  "packages/workspace-tools/src/utils/versions.ts": {
30999
31012
  "bytesInOutput": 582
@@ -31328,14 +31341,11 @@
31328
31341
  "packages/workspace-tools/src/utils/package-helpers.ts": {
31329
31342
  "bytesInOutput": 1033
31330
31343
  },
31331
- "packages/workspace-tools/src/utils/project-tags.ts": {
31332
- "bytesInOutput": 2194
31333
- },
31334
31344
  "packages/workspace-tools/src/utils/typia-transform.ts": {
31335
31345
  "bytesInOutput": 205
31336
31346
  }
31337
31347
  },
31338
- "bytes": 10955287
31348
+ "bytes": 10955765
31339
31349
  },
31340
31350
  "dist/packages/workspace-tools/src/executors/unbuild/executor.js": {
31341
31351
  "imports": [
@@ -60533,13 +60543,16 @@
60533
60543
  "bytesInOutput": 3245
60534
60544
  },
60535
60545
  "packages/workspace-tools/src/base/typescript-library-generator.ts": {
60536
- "bytesInOutput": 8898
60546
+ "bytesInOutput": 9304
60547
+ },
60548
+ "packages/workspace-tools/src/utils/project-tags.ts": {
60549
+ "bytesInOutput": 1279
60537
60550
  },
60538
60551
  "packages/workspace-tools/src/utils/versions.ts": {
60539
60552
  "bytesInOutput": 60
60540
60553
  }
60541
60554
  },
60542
- "bytes": 4204905
60555
+ "bytes": 4206645
60543
60556
  },
60544
60557
  "dist/packages/workspace-tools/src/generators/neutral-library/generator.js": {
60545
60558
  "imports": [
@@ -62050,13 +62063,16 @@
62050
62063
  "bytesInOutput": 3245
62051
62064
  },
62052
62065
  "packages/workspace-tools/src/base/typescript-library-generator.ts": {
62053
- "bytesInOutput": 8898
62066
+ "bytesInOutput": 9304
62067
+ },
62068
+ "packages/workspace-tools/src/utils/project-tags.ts": {
62069
+ "bytesInOutput": 1279
62054
62070
  },
62055
62071
  "packages/workspace-tools/src/utils/versions.ts": {
62056
62072
  "bytesInOutput": 27
62057
62073
  }
62058
62074
  },
62059
- "bytes": 4204854
62075
+ "bytes": 4206594
62060
62076
  },
62061
62077
  "dist/packages/workspace-tools/src/generators/browser-library/generator.js": {
62062
62078
  "imports": [
@@ -63567,13 +63583,16 @@
63567
63583
  "bytesInOutput": 3245
63568
63584
  },
63569
63585
  "packages/workspace-tools/src/base/typescript-library-generator.ts": {
63570
- "bytesInOutput": 8898
63586
+ "bytesInOutput": 9304
63587
+ },
63588
+ "packages/workspace-tools/src/utils/project-tags.ts": {
63589
+ "bytesInOutput": 1279
63571
63590
  },
63572
63591
  "packages/workspace-tools/src/utils/versions.ts": {
63573
63592
  "bytesInOutput": 27
63574
63593
  }
63575
63594
  },
63576
- "bytes": 4205399
63595
+ "bytes": 4207139
63577
63596
  },
63578
63597
  "dist/packages/workspace-tools/src/generators/release-version/generator.js": {
63579
63598
  "imports": [
@@ -68393,10 +68412,10 @@
68393
68412
  "bytesInOutput": 1351
68394
68413
  },
68395
68414
  "packages/workspace-tools/src/utils/project-tags.ts": {
68396
- "bytesInOutput": 1719
68415
+ "bytesInOutput": 1849
68397
68416
  }
68398
68417
  },
68399
- "bytes": 15488
68418
+ "bytes": 15618
68400
68419
  },
68401
68420
  "dist/packages/workspace-tools/src/plugins/typescript/index.js": {
68402
68421
  "imports": [
@@ -68436,10 +68455,10 @@
68436
68455
  "bytesInOutput": 7257
68437
68456
  },
68438
68457
  "packages/workspace-tools/src/utils/project-tags.ts": {
68439
- "bytesInOutput": 2188
68458
+ "bytesInOutput": 2318
68440
68459
  }
68441
68460
  },
68442
- "bytes": 10770
68461
+ "bytes": 10900
68443
68462
  },
68444
68463
  "dist/packages/workspace-tools/src/utils/index.js": {
68445
68464
  "imports": [
@@ -71398,7 +71417,7 @@
71398
71417
  "bytesInOutput": 1026
71399
71418
  },
71400
71419
  "packages/workspace-tools/src/utils/project-tags.ts": {
71401
- "bytesInOutput": 2194
71420
+ "bytesInOutput": 2324
71402
71421
  },
71403
71422
  "node_modules/.pnpm/@ltd+j-toml@1.38.0/node_modules/@ltd/j-toml/index.mjs": {
71404
71423
  "bytesInOutput": 105840
@@ -71413,7 +71432,7 @@
71413
71432
  "bytesInOutput": 582
71414
71433
  }
71415
71434
  },
71416
- "bytes": 5493704
71435
+ "bytes": 5493834
71417
71436
  },
71418
71437
  "dist/packages/workspace-tools/src/utils/project-tags.js": {
71419
71438
  "imports": [],
@@ -71421,10 +71440,10 @@
71421
71440
  "entryPoint": "packages/workspace-tools/src/utils/project-tags.ts",
71422
71441
  "inputs": {
71423
71442
  "packages/workspace-tools/src/utils/project-tags.ts": {
71424
- "bytesInOutput": 2616
71443
+ "bytesInOutput": 2746
71425
71444
  }
71426
71445
  },
71427
- "bytes": 3686
71446
+ "bytes": 3816
71428
71447
  },
71429
71448
  "dist/packages/workspace-tools/src/utils/toml.js": {
71430
71449
  "imports": [
@@ -73015,13 +73034,16 @@
73015
73034
  "bytesInOutput": 3245
73016
73035
  },
73017
73036
  "packages/workspace-tools/src/base/typescript-library-generator.ts": {
73018
- "bytesInOutput": 8898
73037
+ "bytesInOutput": 9304
73038
+ },
73039
+ "packages/workspace-tools/src/utils/project-tags.ts": {
73040
+ "bytesInOutput": 1279
73019
73041
  },
73020
73042
  "packages/workspace-tools/src/utils/versions.ts": {
73021
73043
  "bytesInOutput": 27
73022
73044
  }
73023
73045
  },
73024
- "bytes": 4210151
73046
+ "bytes": 4211891
73025
73047
  },
73026
73048
  "dist/packages/workspace-tools/src/base/base-executor.js": {
73027
73049
  "imports": [
@@ -76014,13 +76036,16 @@
76014
76036
  "entryPoint": "packages/workspace-tools/src/base/typescript-library-generator.ts",
76015
76037
  "inputs": {
76016
76038
  "packages/workspace-tools/src/base/typescript-library-generator.ts": {
76017
- "bytesInOutput": 9276
76039
+ "bytesInOutput": 9682
76040
+ },
76041
+ "packages/workspace-tools/src/utils/project-tags.ts": {
76042
+ "bytesInOutput": 1275
76018
76043
  },
76019
76044
  "packages/workspace-tools/src/utils/versions.ts": {
76020
76045
  "bytesInOutput": 27
76021
76046
  }
76022
76047
  },
76023
- "bytes": 11064
76048
+ "bytes": 12800
76024
76049
  }
76025
76050
  }
76026
76051
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storm-software/workspace-tools",
3
- "version": "1.202.1",
3
+ "version": "1.203.0",
4
4
  "type": "commonjs",
5
5
  "description": "Tools for managing a Storm workspace, including various Nx generators and executors for common development tasks.",
6
6
  "repository": {
package/src/base/index.js CHANGED
@@ -67914,6 +67914,63 @@ var import_js = require("@nx/js");
67914
67914
  var import_init = __toESM(require("@nx/js/src/generators/init/init"));
67915
67915
  var import_generator = __toESM(require("@nx/js/src/generators/setup-verdaccio/generator"));
67916
67916
 
67917
+ // packages/workspace-tools/src/utils/project-tags.ts
67918
+ var ProjectTagConstants = {
67919
+ Language: {
67920
+ TAG_ID: "language",
67921
+ TYPESCRIPT: "typescript",
67922
+ RUST: "rust"
67923
+ },
67924
+ ProjectType: {
67925
+ TAG_ID: "type",
67926
+ LIBRARY: "library",
67927
+ APPLICATION: "application"
67928
+ },
67929
+ DistStyle: {
67930
+ TAG_ID: "dist-style",
67931
+ NORMAL: "normal",
67932
+ CLEAN: "clean"
67933
+ },
67934
+ Provider: {
67935
+ TAG_ID: "provider"
67936
+ },
67937
+ Platform: {
67938
+ TAG_ID: "platform",
67939
+ NODE: "node",
67940
+ BROWSER: "browser",
67941
+ NEUTRAL: "neutral",
67942
+ WORKER: "worker"
67943
+ },
67944
+ Registry: {
67945
+ TAG_ID: "registry",
67946
+ CARGO: "cargo",
67947
+ NPM: "npm",
67948
+ CONTAINER: "container",
67949
+ CYCLONE: "cyclone"
67950
+ }
67951
+ };
67952
+ var formatProjectTag = (variant, value2) => {
67953
+ return `${variant}:${value2}`;
67954
+ };
67955
+ var hasProjectTag = (project, variant) => {
67956
+ project.tags = project.tags ?? [];
67957
+ const prefix = formatProjectTag(variant, "");
67958
+ return project.tags.some(
67959
+ (tag) => tag.startsWith(prefix) && tag.length > prefix.length
67960
+ );
67961
+ };
67962
+ var addProjectTag = (project, variant, value2, options = {
67963
+ overwrite: false
67964
+ }) => {
67965
+ project.tags = project.tags ?? [];
67966
+ if (options.overwrite || !hasProjectTag(project, variant)) {
67967
+ project.tags = project.tags.filter(
67968
+ (tag) => !tag.startsWith(formatProjectTag(variant, ""))
67969
+ );
67970
+ project.tags.push(formatProjectTag(variant, value2));
67971
+ }
67972
+ };
67973
+
67917
67974
  // packages/workspace-tools/src/utils/versions.ts
67918
67975
  var nxVersion = "^18.0.4";
67919
67976
 
@@ -67955,6 +68012,7 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
67955
68012
  tsConfig: (0, import_devkit.joinPathFragments)(options.projectRoot, "tsconfig.json"),
67956
68013
  project: (0, import_devkit.joinPathFragments)(options.projectRoot, "package.json"),
67957
68014
  defaultConfiguration: "production",
68015
+ platform: "neutral",
67958
68016
  assets: [
67959
68017
  {
67960
68018
  input: options.projectRoot,
@@ -67978,14 +68036,18 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
67978
68036
  verbose: true
67979
68037
  }
67980
68038
  }
67981
- },
67982
- lint: {},
67983
- test: {}
68039
+ }
67984
68040
  }
67985
68041
  };
67986
- if (schema.platform && projectConfig?.targets?.build) {
68042
+ if (schema.platform) {
67987
68043
  projectConfig.targets.build.options.platform = schema.platform;
67988
68044
  }
68045
+ addProjectTag(
68046
+ projectConfig,
68047
+ ProjectTagConstants.Platform.TAG_ID,
68048
+ projectConfig.targets.build.options.platform === "node" ? ProjectTagConstants.Platform.NODE : projectConfig.targets.build.options.platform === "worker" ? ProjectTagConstants.Platform.WORKER : projectConfig.targets.build.options.platform === "browser" ? ProjectTagConstants.Platform.BROWSER : ProjectTagConstants.Platform.NEUTRAL,
68049
+ { overwrite: true }
68050
+ );
67989
68051
  createProjectTsConfigJson(tree, options);
67990
68052
  (0, import_devkit.addProjectConfiguration)(tree, options.name, projectConfig);
67991
68053
  let repository = {
@@ -41,6 +41,63 @@ var import_js = require("@nx/js");
41
41
  var import_init = __toESM(require("@nx/js/src/generators/init/init"));
42
42
  var import_generator = __toESM(require("@nx/js/src/generators/setup-verdaccio/generator"));
43
43
 
44
+ // packages/workspace-tools/src/utils/project-tags.ts
45
+ var ProjectTagConstants = {
46
+ Language: {
47
+ TAG_ID: "language",
48
+ TYPESCRIPT: "typescript",
49
+ RUST: "rust"
50
+ },
51
+ ProjectType: {
52
+ TAG_ID: "type",
53
+ LIBRARY: "library",
54
+ APPLICATION: "application"
55
+ },
56
+ DistStyle: {
57
+ TAG_ID: "dist-style",
58
+ NORMAL: "normal",
59
+ CLEAN: "clean"
60
+ },
61
+ Provider: {
62
+ TAG_ID: "provider"
63
+ },
64
+ Platform: {
65
+ TAG_ID: "platform",
66
+ NODE: "node",
67
+ BROWSER: "browser",
68
+ NEUTRAL: "neutral",
69
+ WORKER: "worker"
70
+ },
71
+ Registry: {
72
+ TAG_ID: "registry",
73
+ CARGO: "cargo",
74
+ NPM: "npm",
75
+ CONTAINER: "container",
76
+ CYCLONE: "cyclone"
77
+ }
78
+ };
79
+ var formatProjectTag = (variant, value) => {
80
+ return `${variant}:${value}`;
81
+ };
82
+ var hasProjectTag = (project, variant) => {
83
+ project.tags = project.tags ?? [];
84
+ const prefix = formatProjectTag(variant, "");
85
+ return project.tags.some(
86
+ (tag) => tag.startsWith(prefix) && tag.length > prefix.length
87
+ );
88
+ };
89
+ var addProjectTag = (project, variant, value, options = {
90
+ overwrite: false
91
+ }) => {
92
+ project.tags = project.tags ?? [];
93
+ if (options.overwrite || !hasProjectTag(project, variant)) {
94
+ project.tags = project.tags.filter(
95
+ (tag) => !tag.startsWith(formatProjectTag(variant, ""))
96
+ );
97
+ project.tags.push(formatProjectTag(variant, value));
98
+ }
99
+ };
100
+
44
101
  // packages/workspace-tools/src/utils/versions.ts
45
102
  var nxVersion = "^18.0.4";
46
103
 
@@ -82,6 +139,7 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
82
139
  tsConfig: (0, import_devkit.joinPathFragments)(options.projectRoot, "tsconfig.json"),
83
140
  project: (0, import_devkit.joinPathFragments)(options.projectRoot, "package.json"),
84
141
  defaultConfiguration: "production",
142
+ platform: "neutral",
85
143
  assets: [
86
144
  {
87
145
  input: options.projectRoot,
@@ -105,14 +163,18 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
105
163
  verbose: true
106
164
  }
107
165
  }
108
- },
109
- lint: {},
110
- test: {}
166
+ }
111
167
  }
112
168
  };
113
- if (schema.platform && projectConfig?.targets?.build) {
169
+ if (schema.platform) {
114
170
  projectConfig.targets.build.options.platform = schema.platform;
115
171
  }
172
+ addProjectTag(
173
+ projectConfig,
174
+ ProjectTagConstants.Platform.TAG_ID,
175
+ projectConfig.targets.build.options.platform === "node" ? ProjectTagConstants.Platform.NODE : projectConfig.targets.build.options.platform === "worker" ? ProjectTagConstants.Platform.WORKER : projectConfig.targets.build.options.platform === "browser" ? ProjectTagConstants.Platform.BROWSER : ProjectTagConstants.Platform.NEUTRAL,
176
+ { overwrite: true }
177
+ );
116
178
  createProjectTsConfigJson(tree, options);
117
179
  (0, import_devkit.addProjectConfiguration)(tree, options.name, projectConfig);
118
180
  let repository = {
@@ -27,6 +27,12 @@
27
27
  "x-priority": "important",
28
28
  "default": "{projectRoot}/tsconfig.json"
29
29
  },
30
+ "platform": {
31
+ "type": "string",
32
+ "description": "Platform target for outputs.",
33
+ "enum": ["neutral", "browser", "node", "worker"],
34
+ "default": "neutral"
35
+ },
30
36
  "additionalEntryPoints": {
31
37
  "type": "array",
32
38
  "description": "List of additional entry points.",
@@ -96,7 +102,7 @@
96
102
  }
97
103
  }
98
104
  },
99
- "required": ["tsConfig"],
105
+ "required": ["tsConfig", "platform"],
100
106
  "definitions": {
101
107
  "assetPattern": {
102
108
  "oneOf": [
@@ -67720,6 +67720,63 @@ var import_js = require("@nx/js");
67720
67720
  var import_init = __toESM(require("@nx/js/src/generators/init/init"));
67721
67721
  var import_generator = __toESM(require("@nx/js/src/generators/setup-verdaccio/generator"));
67722
67722
 
67723
+ // packages/workspace-tools/src/utils/project-tags.ts
67724
+ var ProjectTagConstants = {
67725
+ Language: {
67726
+ TAG_ID: "language",
67727
+ TYPESCRIPT: "typescript",
67728
+ RUST: "rust"
67729
+ },
67730
+ ProjectType: {
67731
+ TAG_ID: "type",
67732
+ LIBRARY: "library",
67733
+ APPLICATION: "application"
67734
+ },
67735
+ DistStyle: {
67736
+ TAG_ID: "dist-style",
67737
+ NORMAL: "normal",
67738
+ CLEAN: "clean"
67739
+ },
67740
+ Provider: {
67741
+ TAG_ID: "provider"
67742
+ },
67743
+ Platform: {
67744
+ TAG_ID: "platform",
67745
+ NODE: "node",
67746
+ BROWSER: "browser",
67747
+ NEUTRAL: "neutral",
67748
+ WORKER: "worker"
67749
+ },
67750
+ Registry: {
67751
+ TAG_ID: "registry",
67752
+ CARGO: "cargo",
67753
+ NPM: "npm",
67754
+ CONTAINER: "container",
67755
+ CYCLONE: "cyclone"
67756
+ }
67757
+ };
67758
+ var formatProjectTag = (variant, value2) => {
67759
+ return `${variant}:${value2}`;
67760
+ };
67761
+ var hasProjectTag = (project, variant) => {
67762
+ project.tags = project.tags ?? [];
67763
+ const prefix = formatProjectTag(variant, "");
67764
+ return project.tags.some(
67765
+ (tag) => tag.startsWith(prefix) && tag.length > prefix.length
67766
+ );
67767
+ };
67768
+ var addProjectTag = (project, variant, value2, options = {
67769
+ overwrite: false
67770
+ }) => {
67771
+ project.tags = project.tags ?? [];
67772
+ if (options.overwrite || !hasProjectTag(project, variant)) {
67773
+ project.tags = project.tags.filter(
67774
+ (tag) => !tag.startsWith(formatProjectTag(variant, ""))
67775
+ );
67776
+ project.tags.push(formatProjectTag(variant, value2));
67777
+ }
67778
+ };
67779
+
67723
67780
  // packages/workspace-tools/src/utils/versions.ts
67724
67781
  var nxVersion = "^18.0.4";
67725
67782
 
@@ -67761,6 +67818,7 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
67761
67818
  tsConfig: (0, import_devkit.joinPathFragments)(options.projectRoot, "tsconfig.json"),
67762
67819
  project: (0, import_devkit.joinPathFragments)(options.projectRoot, "package.json"),
67763
67820
  defaultConfiguration: "production",
67821
+ platform: "neutral",
67764
67822
  assets: [
67765
67823
  {
67766
67824
  input: options.projectRoot,
@@ -67784,14 +67842,18 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
67784
67842
  verbose: true
67785
67843
  }
67786
67844
  }
67787
- },
67788
- lint: {},
67789
- test: {}
67845
+ }
67790
67846
  }
67791
67847
  };
67792
- if (schema.platform && projectConfig?.targets?.build) {
67848
+ if (schema.platform) {
67793
67849
  projectConfig.targets.build.options.platform = schema.platform;
67794
67850
  }
67851
+ addProjectTag(
67852
+ projectConfig,
67853
+ ProjectTagConstants.Platform.TAG_ID,
67854
+ projectConfig.targets.build.options.platform === "node" ? ProjectTagConstants.Platform.NODE : projectConfig.targets.build.options.platform === "worker" ? ProjectTagConstants.Platform.WORKER : projectConfig.targets.build.options.platform === "browser" ? ProjectTagConstants.Platform.BROWSER : ProjectTagConstants.Platform.NEUTRAL,
67855
+ { overwrite: true }
67856
+ );
67795
67857
  createProjectTsConfigJson(tree, options);
67796
67858
  (0, import_devkit.addProjectConfiguration)(tree, options.name, projectConfig);
67797
67859
  let repository = {
@@ -67720,6 +67720,63 @@ var import_js = require("@nx/js");
67720
67720
  var import_init = __toESM(require("@nx/js/src/generators/init/init"));
67721
67721
  var import_generator = __toESM(require("@nx/js/src/generators/setup-verdaccio/generator"));
67722
67722
 
67723
+ // packages/workspace-tools/src/utils/project-tags.ts
67724
+ var ProjectTagConstants = {
67725
+ Language: {
67726
+ TAG_ID: "language",
67727
+ TYPESCRIPT: "typescript",
67728
+ RUST: "rust"
67729
+ },
67730
+ ProjectType: {
67731
+ TAG_ID: "type",
67732
+ LIBRARY: "library",
67733
+ APPLICATION: "application"
67734
+ },
67735
+ DistStyle: {
67736
+ TAG_ID: "dist-style",
67737
+ NORMAL: "normal",
67738
+ CLEAN: "clean"
67739
+ },
67740
+ Provider: {
67741
+ TAG_ID: "provider"
67742
+ },
67743
+ Platform: {
67744
+ TAG_ID: "platform",
67745
+ NODE: "node",
67746
+ BROWSER: "browser",
67747
+ NEUTRAL: "neutral",
67748
+ WORKER: "worker"
67749
+ },
67750
+ Registry: {
67751
+ TAG_ID: "registry",
67752
+ CARGO: "cargo",
67753
+ NPM: "npm",
67754
+ CONTAINER: "container",
67755
+ CYCLONE: "cyclone"
67756
+ }
67757
+ };
67758
+ var formatProjectTag = (variant, value2) => {
67759
+ return `${variant}:${value2}`;
67760
+ };
67761
+ var hasProjectTag = (project, variant) => {
67762
+ project.tags = project.tags ?? [];
67763
+ const prefix = formatProjectTag(variant, "");
67764
+ return project.tags.some(
67765
+ (tag) => tag.startsWith(prefix) && tag.length > prefix.length
67766
+ );
67767
+ };
67768
+ var addProjectTag = (project, variant, value2, options = {
67769
+ overwrite: false
67770
+ }) => {
67771
+ project.tags = project.tags ?? [];
67772
+ if (options.overwrite || !hasProjectTag(project, variant)) {
67773
+ project.tags = project.tags.filter(
67774
+ (tag) => !tag.startsWith(formatProjectTag(variant, ""))
67775
+ );
67776
+ project.tags.push(formatProjectTag(variant, value2));
67777
+ }
67778
+ };
67779
+
67723
67780
  // packages/workspace-tools/src/utils/versions.ts
67724
67781
  var nxVersion = "^18.0.4";
67725
67782
 
@@ -67761,6 +67818,7 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
67761
67818
  tsConfig: (0, import_devkit.joinPathFragments)(options.projectRoot, "tsconfig.json"),
67762
67819
  project: (0, import_devkit.joinPathFragments)(options.projectRoot, "package.json"),
67763
67820
  defaultConfiguration: "production",
67821
+ platform: "neutral",
67764
67822
  assets: [
67765
67823
  {
67766
67824
  input: options.projectRoot,
@@ -67784,14 +67842,18 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
67784
67842
  verbose: true
67785
67843
  }
67786
67844
  }
67787
- },
67788
- lint: {},
67789
- test: {}
67845
+ }
67790
67846
  }
67791
67847
  };
67792
- if (schema.platform && projectConfig?.targets?.build) {
67848
+ if (schema.platform) {
67793
67849
  projectConfig.targets.build.options.platform = schema.platform;
67794
67850
  }
67851
+ addProjectTag(
67852
+ projectConfig,
67853
+ ProjectTagConstants.Platform.TAG_ID,
67854
+ projectConfig.targets.build.options.platform === "node" ? ProjectTagConstants.Platform.NODE : projectConfig.targets.build.options.platform === "worker" ? ProjectTagConstants.Platform.WORKER : projectConfig.targets.build.options.platform === "browser" ? ProjectTagConstants.Platform.BROWSER : ProjectTagConstants.Platform.NEUTRAL,
67855
+ { overwrite: true }
67856
+ );
67795
67857
  createProjectTsConfigJson(tree, options);
67796
67858
  (0, import_devkit.addProjectConfiguration)(tree, options.name, projectConfig);
67797
67859
  let repository = {
@@ -67720,6 +67720,63 @@ var import_js = require("@nx/js");
67720
67720
  var import_init = __toESM(require("@nx/js/src/generators/init/init"));
67721
67721
  var import_generator = __toESM(require("@nx/js/src/generators/setup-verdaccio/generator"));
67722
67722
 
67723
+ // packages/workspace-tools/src/utils/project-tags.ts
67724
+ var ProjectTagConstants = {
67725
+ Language: {
67726
+ TAG_ID: "language",
67727
+ TYPESCRIPT: "typescript",
67728
+ RUST: "rust"
67729
+ },
67730
+ ProjectType: {
67731
+ TAG_ID: "type",
67732
+ LIBRARY: "library",
67733
+ APPLICATION: "application"
67734
+ },
67735
+ DistStyle: {
67736
+ TAG_ID: "dist-style",
67737
+ NORMAL: "normal",
67738
+ CLEAN: "clean"
67739
+ },
67740
+ Provider: {
67741
+ TAG_ID: "provider"
67742
+ },
67743
+ Platform: {
67744
+ TAG_ID: "platform",
67745
+ NODE: "node",
67746
+ BROWSER: "browser",
67747
+ NEUTRAL: "neutral",
67748
+ WORKER: "worker"
67749
+ },
67750
+ Registry: {
67751
+ TAG_ID: "registry",
67752
+ CARGO: "cargo",
67753
+ NPM: "npm",
67754
+ CONTAINER: "container",
67755
+ CYCLONE: "cyclone"
67756
+ }
67757
+ };
67758
+ var formatProjectTag = (variant, value2) => {
67759
+ return `${variant}:${value2}`;
67760
+ };
67761
+ var hasProjectTag = (project, variant) => {
67762
+ project.tags = project.tags ?? [];
67763
+ const prefix = formatProjectTag(variant, "");
67764
+ return project.tags.some(
67765
+ (tag) => tag.startsWith(prefix) && tag.length > prefix.length
67766
+ );
67767
+ };
67768
+ var addProjectTag = (project, variant, value2, options = {
67769
+ overwrite: false
67770
+ }) => {
67771
+ project.tags = project.tags ?? [];
67772
+ if (options.overwrite || !hasProjectTag(project, variant)) {
67773
+ project.tags = project.tags.filter(
67774
+ (tag) => !tag.startsWith(formatProjectTag(variant, ""))
67775
+ );
67776
+ project.tags.push(formatProjectTag(variant, value2));
67777
+ }
67778
+ };
67779
+
67723
67780
  // packages/workspace-tools/src/utils/versions.ts
67724
67781
  var typesNodeVersion = "20.9.0";
67725
67782
  var nxVersion = "^18.0.4";
@@ -67762,6 +67819,7 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
67762
67819
  tsConfig: (0, import_devkit.joinPathFragments)(options.projectRoot, "tsconfig.json"),
67763
67820
  project: (0, import_devkit.joinPathFragments)(options.projectRoot, "package.json"),
67764
67821
  defaultConfiguration: "production",
67822
+ platform: "neutral",
67765
67823
  assets: [
67766
67824
  {
67767
67825
  input: options.projectRoot,
@@ -67785,14 +67843,18 @@ async function typeScriptLibraryGeneratorFn(tree, schema) {
67785
67843
  verbose: true
67786
67844
  }
67787
67845
  }
67788
- },
67789
- lint: {},
67790
- test: {}
67846
+ }
67791
67847
  }
67792
67848
  };
67793
- if (schema.platform && projectConfig?.targets?.build) {
67849
+ if (schema.platform) {
67794
67850
  projectConfig.targets.build.options.platform = schema.platform;
67795
67851
  }
67852
+ addProjectTag(
67853
+ projectConfig,
67854
+ ProjectTagConstants.Platform.TAG_ID,
67855
+ projectConfig.targets.build.options.platform === "node" ? ProjectTagConstants.Platform.NODE : projectConfig.targets.build.options.platform === "worker" ? ProjectTagConstants.Platform.WORKER : projectConfig.targets.build.options.platform === "browser" ? ProjectTagConstants.Platform.BROWSER : ProjectTagConstants.Platform.NEUTRAL,
67856
+ { overwrite: true }
67857
+ );
67796
67858
  createProjectTsConfigJson(tree, options);
67797
67859
  (0, import_devkit.addProjectConfiguration)(tree, options.name, projectConfig);
67798
67860
  let repository = {
@@ -101,6 +101,13 @@ var ProjectTagConstants = {
101
101
  Provider: {
102
102
  TAG_ID: "provider"
103
103
  },
104
+ Platform: {
105
+ TAG_ID: "platform",
106
+ NODE: "node",
107
+ BROWSER: "browser",
108
+ NEUTRAL: "neutral",
109
+ WORKER: "worker"
110
+ },
104
111
  Registry: {
105
112
  TAG_ID: "registry",
106
113
  CARGO: "cargo",
@@ -51,6 +51,13 @@ var ProjectTagConstants = {
51
51
  Provider: {
52
52
  TAG_ID: "provider"
53
53
  },
54
+ Platform: {
55
+ TAG_ID: "platform",
56
+ NODE: "node",
57
+ BROWSER: "browser",
58
+ NEUTRAL: "neutral",
59
+ WORKER: "worker"
60
+ },
54
61
  Registry: {
55
62
  TAG_ID: "registry",
56
63
  CARGO: "cargo",
@@ -91244,6 +91244,13 @@ var ProjectTagConstants = {
91244
91244
  Provider: {
91245
91245
  TAG_ID: "provider"
91246
91246
  },
91247
+ Platform: {
91248
+ TAG_ID: "platform",
91249
+ NODE: "node",
91250
+ BROWSER: "browser",
91251
+ NEUTRAL: "neutral",
91252
+ WORKER: "worker"
91253
+ },
91247
91254
  Registry: {
91248
91255
  TAG_ID: "registry",
91249
91256
  CARGO: "cargo",
@@ -1,5 +1,5 @@
1
1
  import { ProjectConfiguration } from "@nx/devkit";
2
- import { ProjectTagDistStyleValue, ProjectTagLanguageValue, ProjectTagRegistryValue, ProjectTagTypeValue, ProjectTagVariant } from "../../declarations.d";
2
+ import { ProjectTagDistStyleValue, ProjectTagLanguageValue, ProjectTagPlatformValue, ProjectTagRegistryValue, ProjectTagTypeValue, ProjectTagVariant } from "../../declarations.d";
3
3
  export declare const ProjectTagConstants: {
4
4
  readonly Language: {
5
5
  readonly TAG_ID: ProjectTagVariant;
@@ -19,6 +19,13 @@ export declare const ProjectTagConstants: {
19
19
  readonly Provider: {
20
20
  readonly TAG_ID: ProjectTagVariant;
21
21
  };
22
+ readonly Platform: {
23
+ readonly TAG_ID: ProjectTagVariant;
24
+ readonly NODE: ProjectTagPlatformValue;
25
+ readonly BROWSER: ProjectTagPlatformValue;
26
+ readonly NEUTRAL: ProjectTagPlatformValue;
27
+ readonly WORKER: ProjectTagPlatformValue;
28
+ };
22
29
  readonly Registry: {
23
30
  readonly TAG_ID: ProjectTagVariant;
24
31
  readonly CARGO: ProjectTagRegistryValue;
@@ -47,6 +47,13 @@ var ProjectTagConstants = {
47
47
  Provider: {
48
48
  TAG_ID: "provider"
49
49
  },
50
+ Platform: {
51
+ TAG_ID: "platform",
52
+ NODE: "node",
53
+ BROWSER: "browser",
54
+ NEUTRAL: "neutral",
55
+ WORKER: "worker"
56
+ },
50
57
  Registry: {
51
58
  TAG_ID: "registry",
52
59
  CARGO: "cargo",