@slicemachine/init 2.9.10-alpha.dev-new-release-process.1 → 2.9.10-alpha.dev-new-release-process.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/dist/SliceMachineInitProcess.cjs +4 -1
  2. package/dist/SliceMachineInitProcess.cjs.map +1 -1
  3. package/dist/SliceMachineInitProcess.js +4 -1
  4. package/dist/SliceMachineInitProcess.js.map +1 -1
  5. package/dist/_node_modules/@babel/code-frame/lib/index.cjs +1 -1
  6. package/dist/_node_modules/@babel/code-frame/lib/index.js +1 -1
  7. package/dist/_node_modules/@babel/helper-validator-identifier/lib/index.cjs +1 -1
  8. package/dist/_node_modules/@babel/helper-validator-identifier/lib/index.js +1 -1
  9. package/dist/_node_modules/@babel/highlight/lib/index.cjs +2 -2
  10. package/dist/_node_modules/@babel/highlight/lib/index.js +2 -2
  11. package/dist/_node_modules/cross-spawn/index.cjs +1 -1
  12. package/dist/_node_modules/cross-spawn/index.js +1 -1
  13. package/dist/_node_modules/dir-glob/index.cjs +2 -2
  14. package/dist/_node_modules/dir-glob/index.js +2 -2
  15. package/dist/_node_modules/fast-glob/out/index.cjs +1 -1
  16. package/dist/_node_modules/fast-glob/out/index.js +1 -1
  17. package/dist/_node_modules/fast-glob/out/managers/tasks.cjs +1 -1
  18. package/dist/_node_modules/fast-glob/out/managers/tasks.js +1 -1
  19. package/dist/_node_modules/fast-glob/out/providers/filters/deep.cjs +1 -1
  20. package/dist/_node_modules/fast-glob/out/providers/filters/deep.js +1 -1
  21. package/dist/_node_modules/fast-glob/out/providers/filters/entry.cjs +1 -1
  22. package/dist/_node_modules/fast-glob/out/providers/filters/entry.js +1 -1
  23. package/dist/_node_modules/fast-glob/out/providers/filters/error.cjs +1 -1
  24. package/dist/_node_modules/fast-glob/out/providers/filters/error.js +1 -1
  25. package/dist/_node_modules/fast-glob/out/providers/matchers/matcher.cjs +1 -1
  26. package/dist/_node_modules/fast-glob/out/providers/matchers/matcher.js +1 -1
  27. package/dist/_node_modules/fast-glob/out/providers/transformers/entry.cjs +1 -1
  28. package/dist/_node_modules/fast-glob/out/providers/transformers/entry.js +1 -1
  29. package/dist/_node_modules/fast-glob/out/readers/reader.cjs +1 -1
  30. package/dist/_node_modules/fast-glob/out/readers/reader.js +1 -1
  31. package/dist/_node_modules/fast-glob/out/utils/index.cjs +1 -1
  32. package/dist/_node_modules/fast-glob/out/utils/index.js +1 -1
  33. package/dist/_node_modules/js-tokens/index.cjs +1 -1
  34. package/dist/_node_modules/js-tokens/index.js +1 -1
  35. package/dist/_node_modules/lines-and-columns/build/index.cjs +1 -1
  36. package/dist/_node_modules/lines-and-columns/build/index.js +1 -1
  37. package/dist/_node_modules/meow/_node_modules/hosted-git-info/lib/index.cjs +1 -1
  38. package/dist/_node_modules/meow/_node_modules/hosted-git-info/lib/index.js +1 -1
  39. package/dist/_node_modules/meow/_node_modules/read-pkg/_node_modules/hosted-git-info/index.cjs +1 -1
  40. package/dist/_node_modules/meow/_node_modules/read-pkg/_node_modules/hosted-git-info/index.js +1 -1
  41. package/dist/_node_modules/parse-json/index.cjs +2 -2
  42. package/dist/_node_modules/parse-json/index.js +2 -2
  43. package/dist/_node_modules/path-type/index.cjs +1 -1
  44. package/dist/_node_modules/path-type/index.js +1 -1
  45. package/dist/_virtual/index10.cjs +2 -2
  46. package/dist/_virtual/index10.js +2 -2
  47. package/dist/_virtual/index11.cjs +2 -2
  48. package/dist/_virtual/index11.js +2 -2
  49. package/dist/_virtual/index12.cjs +2 -2
  50. package/dist/_virtual/index12.js +2 -2
  51. package/dist/_virtual/index13.cjs +2 -2
  52. package/dist/_virtual/index13.js +2 -2
  53. package/dist/_virtual/index14.cjs +2 -2
  54. package/dist/_virtual/index14.js +2 -2
  55. package/dist/_virtual/index4.cjs +2 -2
  56. package/dist/_virtual/index4.js +2 -2
  57. package/dist/_virtual/index5.cjs +2 -2
  58. package/dist/_virtual/index5.js +2 -2
  59. package/dist/_virtual/index6.cjs +2 -2
  60. package/dist/_virtual/index6.js +2 -2
  61. package/dist/_virtual/index8.cjs +2 -2
  62. package/dist/_virtual/index8.js +2 -2
  63. package/dist/_virtual/index9.cjs +2 -2
  64. package/dist/_virtual/index9.js +2 -2
  65. package/dist/lib/framework.cjs +15 -8
  66. package/dist/lib/framework.cjs.map +1 -1
  67. package/dist/lib/framework.js +15 -8
  68. package/dist/lib/framework.js.map +1 -1
  69. package/dist/lib/setupSentry.cjs +4 -4
  70. package/dist/lib/setupSentry.cjs.map +1 -1
  71. package/dist/lib/setupSentry.js +5 -5
  72. package/dist/lib/setupSentry.js.map +1 -1
  73. package/dist/packages/init/package.json.cjs +1 -1
  74. package/dist/packages/init/package.json.js +1 -1
  75. package/package.json +3 -3
  76. package/src/SliceMachineInitProcess.ts +7 -1
  77. package/src/lib/framework.ts +19 -9
  78. package/src/lib/setupSentry.ts +5 -8
@@ -1,4 +1,4 @@
1
- import { __exports as utils } from "../../../../_virtual/index9.js";
1
+ import { __exports as utils } from "../../../../_virtual/index12.js";
2
2
  import "./array.js";
3
3
  import "./errno.js";
4
4
  import "./fs.js";
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const index = require("../../_virtual/index12.cjs");
2
+ const index = require("../../_virtual/index8.cjs");
3
3
  Object.defineProperty(index.__exports, "__esModule", {
4
4
  value: true
5
5
  });
@@ -1,4 +1,4 @@
1
- import { __exports as jsTokens } from "../../_virtual/index12.js";
1
+ import { __exports as jsTokens } from "../../_virtual/index8.js";
2
2
  Object.defineProperty(jsTokens, "__esModule", {
3
3
  value: true
4
4
  });
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const index = require("../../../_virtual/index5.cjs");
2
+ const index = require("../../../_virtual/index4.cjs");
3
3
  (function(exports2) {
4
4
  exports2.__esModule = true;
5
5
  exports2.LinesAndColumns = void 0;
@@ -1,4 +1,4 @@
1
- import { __exports as build } from "../../../_virtual/index5.js";
1
+ import { __exports as build } from "../../../_virtual/index4.js";
2
2
  (function(exports) {
3
3
  exports.__esModule = true;
4
4
  exports.LinesAndColumns = void 0;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const index = require("../../../../../_virtual/index4.cjs");
3
+ const index = require("../../../../../_virtual/index6.cjs");
4
4
  const gitHostInfo = require("./git-host-info.cjs");
5
5
  const gitHost = require("./git-host.cjs");
6
6
  const index$1 = require('./../_node_modules/lru-cache/index.cjs');
@@ -1,4 +1,4 @@
1
- import { __module as lib } from "../../../../../_virtual/index4.js";
1
+ import { __module as lib } from "../../../../../_virtual/index6.js";
2
2
  import { g as gitHostInfo } from "./git-host-info.js";
3
3
  import { g as gitHost } from "./git-host.js";
4
4
  import { l as lruCache } from './../_node_modules/lru-cache/index.js';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const index = require("../../../../../../_virtual/index14.cjs");
3
+ const index = require("../../../../../../_virtual/index10.cjs");
4
4
  const require$$0 = require("url");
5
5
  const gitHostInfo = require("./git-host-info.cjs");
6
6
  const gitHost = require("./git-host.cjs");
@@ -1,4 +1,4 @@
1
- import { __module as hostedGitInfo } from "../../../../../../_virtual/index14.js";
1
+ import { __module as hostedGitInfo } from "../../../../../../_virtual/index10.js";
2
2
  import require$$0 from "url";
3
3
  import { g as gitHostInfo } from "./git-host-info.js";
4
4
  import { g as gitHost } from "./git-host.js";
@@ -4,8 +4,8 @@ const index = require("../error-ex/index.cjs");
4
4
  const index$1 = require("../json-parse-even-better-errors/index.cjs");
5
5
  require("../lines-and-columns/build/index.cjs");
6
6
  require("../@babel/code-frame/lib/index.cjs");
7
- const index$2 = require("../../_virtual/index5.cjs");
8
- const index$3 = require("../../_virtual/index6.cjs");
7
+ const index$2 = require("../../_virtual/index4.cjs");
8
+ const index$3 = require("../../_virtual/index5.cjs");
9
9
  const errorEx = index.errorEx_1;
10
10
  const fallback = index$1.jsonParseEvenBetterErrors;
11
11
  const { default: LinesAndColumns } = index$2.__exports;
@@ -3,8 +3,8 @@ import { e as errorEx_1 } from "../error-ex/index.js";
3
3
  import { j as jsonParseEvenBetterErrors } from "../json-parse-even-better-errors/index.js";
4
4
  import "../lines-and-columns/build/index.js";
5
5
  import "../@babel/code-frame/lib/index.js";
6
- import { __exports as build } from "../../_virtual/index5.js";
7
- import { __exports as lib } from "../../_virtual/index6.js";
6
+ import { __exports as build } from "../../_virtual/index4.js";
7
+ import { __exports as lib } from "../../_virtual/index5.js";
8
8
  const errorEx = errorEx_1;
9
9
  const fallback = jsonParseEvenBetterErrors;
10
10
  const { default: LinesAndColumns } = build;
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const index = require("../../_virtual/index11.cjs");
2
+ const index = require("../../_virtual/index14.cjs");
3
3
  const require$$0 = require("util");
4
4
  const require$$0$1 = require("fs");
5
5
  const { promisify } = require$$0;
@@ -1,4 +1,4 @@
1
- import { __exports as pathType } from "../../_virtual/index11.js";
1
+ import { __exports as pathType } from "../../_virtual/index14.js";
2
2
  import require$$0 from "util";
3
3
  import require$$0$1 from "fs";
4
4
  const { promisify } = require$$0;
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- var dirGlob = { exports: {} };
4
- exports.__module = dirGlob;
3
+ var hostedGitInfo = { exports: {} };
4
+ exports.__module = hostedGitInfo;
5
5
  //# sourceMappingURL=index10.cjs.map
@@ -1,5 +1,5 @@
1
- var dirGlob = { exports: {} };
1
+ var hostedGitInfo = { exports: {} };
2
2
  export {
3
- dirGlob as __module
3
+ hostedGitInfo as __module
4
4
  };
5
5
  //# sourceMappingURL=index10.js.map
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- var pathType = {};
4
- exports.__exports = pathType;
3
+ var crossSpawn = { exports: {} };
4
+ exports.__module = crossSpawn;
5
5
  //# sourceMappingURL=index11.cjs.map
@@ -1,5 +1,5 @@
1
- var pathType = {};
1
+ var crossSpawn = { exports: {} };
2
2
  export {
3
- pathType as __exports
3
+ crossSpawn as __module
4
4
  };
5
5
  //# sourceMappingURL=index11.js.map
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- var jsTokens = {};
4
- exports.__exports = jsTokens;
3
+ var utils = {};
4
+ exports.__exports = utils;
5
5
  //# sourceMappingURL=index12.cjs.map
@@ -1,5 +1,5 @@
1
- var jsTokens = {};
1
+ var utils = {};
2
2
  export {
3
- jsTokens as __exports
3
+ utils as __exports
4
4
  };
5
5
  //# sourceMappingURL=index12.js.map
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- var lib = {};
4
- exports.__exports = lib;
3
+ var dirGlob = { exports: {} };
4
+ exports.__module = dirGlob;
5
5
  //# sourceMappingURL=index13.cjs.map
@@ -1,5 +1,5 @@
1
- var lib = {};
1
+ var dirGlob = { exports: {} };
2
2
  export {
3
- lib as __exports
3
+ dirGlob as __module
4
4
  };
5
5
  //# sourceMappingURL=index13.js.map
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- var hostedGitInfo = { exports: {} };
4
- exports.__module = hostedGitInfo;
3
+ var pathType = {};
4
+ exports.__exports = pathType;
5
5
  //# sourceMappingURL=index14.cjs.map
@@ -1,5 +1,5 @@
1
- var hostedGitInfo = { exports: {} };
1
+ var pathType = {};
2
2
  export {
3
- hostedGitInfo as __module
3
+ pathType as __exports
4
4
  };
5
5
  //# sourceMappingURL=index14.js.map
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- var lib = { exports: {} };
4
- exports.__module = lib;
3
+ var build = {};
4
+ exports.__exports = build;
5
5
  //# sourceMappingURL=index4.cjs.map
@@ -1,5 +1,5 @@
1
- var lib = { exports: {} };
1
+ var build = {};
2
2
  export {
3
- lib as __module
3
+ build as __exports
4
4
  };
5
5
  //# sourceMappingURL=index4.js.map
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- var build = {};
4
- exports.__exports = build;
3
+ var lib = {};
4
+ exports.__exports = lib;
5
5
  //# sourceMappingURL=index5.cjs.map
@@ -1,5 +1,5 @@
1
- var build = {};
1
+ var lib = {};
2
2
  export {
3
- build as __exports
3
+ lib as __exports
4
4
  };
5
5
  //# sourceMappingURL=index5.js.map
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- var lib = {};
4
- exports.__exports = lib;
3
+ var lib = { exports: {} };
4
+ exports.__module = lib;
5
5
  //# sourceMappingURL=index6.cjs.map
@@ -1,5 +1,5 @@
1
- var lib = {};
1
+ var lib = { exports: {} };
2
2
  export {
3
- lib as __exports
3
+ lib as __module
4
4
  };
5
5
  //# sourceMappingURL=index6.js.map
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- var crossSpawn = { exports: {} };
4
- exports.__module = crossSpawn;
3
+ var jsTokens = {};
4
+ exports.__exports = jsTokens;
5
5
  //# sourceMappingURL=index8.cjs.map
@@ -1,5 +1,5 @@
1
- var crossSpawn = { exports: {} };
1
+ var jsTokens = {};
2
2
  export {
3
- crossSpawn as __module
3
+ jsTokens as __exports
4
4
  };
5
5
  //# sourceMappingURL=index8.js.map
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- var utils = {};
4
- exports.__exports = utils;
3
+ var lib = {};
4
+ exports.__exports = lib;
5
5
  //# sourceMappingURL=index9.cjs.map
@@ -1,5 +1,5 @@
1
- var utils = {};
1
+ var lib = {};
2
2
  export {
3
- utils as __exports
3
+ lib as __exports
4
4
  };
5
5
  //# sourceMappingURL=index9.js.map
@@ -4,9 +4,16 @@ const fs = require("node:fs/promises");
4
4
  const path = require("node:path");
5
5
  const semver = require("semver");
6
6
  const _package = require("../packages/init/package.json.cjs");
7
- const isPrerelease = semver.prerelease(_package.version) !== null && process.env.NODE_ENV !== "test";
7
+ const prereleaseComponents = semver.prerelease(_package.version);
8
+ let npmDistributionTag;
9
+ if (prereleaseComponents !== null && prereleaseComponents.length >= 2 && process.env.NODE_ENV !== "test") {
10
+ const prereleaseIdentifier = prereleaseComponents.slice(0, -1).join(".");
11
+ npmDistributionTag = prereleaseIdentifier;
12
+ } else {
13
+ npmDistributionTag = "latest";
14
+ }
8
15
  const DEFAULT_DEV_DEPENDENCIES = {
9
- "slice-machine-ui": isPrerelease ? "alpha" : "latest"
16
+ "slice-machine-ui": npmDistributionTag
10
17
  };
11
18
  const FRAMEWORKS = {
12
19
  "nuxt-2": {
@@ -20,7 +27,7 @@ const FRAMEWORKS = {
20
27
  },
21
28
  devDependencies: {
22
29
  ...DEFAULT_DEV_DEPENDENCIES,
23
- "@slicemachine/adapter-nuxt2": isPrerelease ? "alpha" : "latest"
30
+ "@slicemachine/adapter-nuxt2": npmDistributionTag
24
31
  }
25
32
  },
26
33
  "nuxt-3": {
@@ -34,7 +41,7 @@ const FRAMEWORKS = {
34
41
  },
35
42
  devDependencies: {
36
43
  ...DEFAULT_DEV_DEPENDENCIES,
37
- "@slicemachine/adapter-nuxt": isPrerelease ? "alpha" : "latest"
44
+ "@slicemachine/adapter-nuxt": npmDistributionTag
38
45
  }
39
46
  },
40
47
  next: {
@@ -48,7 +55,7 @@ const FRAMEWORKS = {
48
55
  },
49
56
  devDependencies: {
50
57
  ...DEFAULT_DEV_DEPENDENCIES,
51
- "@slicemachine/adapter-next": isPrerelease ? "alpha" : "latest"
58
+ "@slicemachine/adapter-next": npmDistributionTag
52
59
  }
53
60
  },
54
61
  "sveltekit-1": {
@@ -62,7 +69,7 @@ const FRAMEWORKS = {
62
69
  },
63
70
  devDependencies: {
64
71
  ...DEFAULT_DEV_DEPENDENCIES,
65
- "@slicemachine/adapter-sveltekit": isPrerelease ? "alpha" : "latest"
72
+ "@slicemachine/adapter-sveltekit": npmDistributionTag
66
73
  }
67
74
  },
68
75
  "sveltekit-2": {
@@ -76,7 +83,7 @@ const FRAMEWORKS = {
76
83
  },
77
84
  devDependencies: {
78
85
  ...DEFAULT_DEV_DEPENDENCIES,
79
- "@slicemachine/adapter-sveltekit": isPrerelease ? "alpha" : "latest"
86
+ "@slicemachine/adapter-sveltekit": npmDistributionTag
80
87
  }
81
88
  }
82
89
  };
@@ -89,7 +96,7 @@ const UNIVERSAL = {
89
96
  compatibility: {},
90
97
  devDependencies: {
91
98
  ...DEFAULT_DEV_DEPENDENCIES,
92
- "@slicemachine/adapter-universal": isPrerelease ? "alpha" : "latest"
99
+ "@slicemachine/adapter-universal": npmDistributionTag
93
100
  }
94
101
  };
95
102
  const detectFramework = async (cwd) => {
@@ -1 +1 @@
1
- {"version":3,"file":"framework.cjs","sources":["../../../src/lib/framework.ts"],"sourcesContent":["import { readFile } from \"node:fs/promises\";\nimport { join } from \"node:path\";\nimport semver from \"semver\";\n\nimport { FrameworkWroomTelemetryID } from \"@slicemachine/manager\";\n\nimport { version as pkgVersion } from \"../../package.json\";\n\nexport type Framework = {\n\t/**\n\t * Framework's human readable name.\n\t */\n\tname: string;\n\n\t/**\n\t * Framework 's id sent to Segment from Slice Machine\n\t */\n\tsliceMachineTelemetryID:\n\t\t| \"next\"\n\t\t| \"nuxt-2\"\n\t\t| \"nuxt-3\"\n\t\t| \"sveltekit-1\"\n\t\t| \"sveltekit-2\"\n\t\t| \"universal\";\n\n\t/**\n\t * Framework's id sent to Segment from wroom.\n\t */\n\twroomTelemetryID: FrameworkWroomTelemetryID;\n\n\t/**\n\t * A link to the Prismic documentation for the framework\n\t */\n\tprismicDocumentation: string;\n\n\t/**\n\t * Package name of the adapter responsible for this framework\n\t */\n\tadapterName: string;\n\n\t/**\n\t * A package name/semver range map defining framework compatibility\n\t * requirements.\n\t *\n\t * Project should match all entries to be considered compatible.\n\t */\n\tcompatibility: Record<string, string>;\n\n\t/**\n\t * A package name/semver range map defining development dependencies to be\n\t * installed. Typically Slice Machine and the framework's adapter.\n\t *\n\t * @remarks\n\t * Dependencies required to work with the framework (e.g. `@prismicio/next`\n\t * for Next.js) should not be defined here. Those are to be defined by the\n\t * adapter.\n\t */\n\tdevDependencies: Record<string, string>;\n};\n\nconst isPrerelease =\n\tsemver.prerelease(pkgVersion) !== null && process.env.NODE_ENV !== \"test\";\n\nconst DEFAULT_DEV_DEPENDENCIES: Record<string, string> = {\n\t\"slice-machine-ui\": isPrerelease ? \"alpha\" : \"latest\",\n};\n\n/**\n * Frameworks we support, orders shouldn't matter much but is respected (the\n * higher it is the more priority it has in case multiple matches)\n */\nexport const FRAMEWORKS: Record<string, Framework> = {\n\t\"nuxt-2\": {\n\t\tname: \"Nuxt 2\",\n\t\tsliceMachineTelemetryID: \"nuxt-2\",\n\t\twroomTelemetryID: \"nuxt\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/nuxt-2\",\n\t\tadapterName: \"@slicemachine/adapter-nuxt2\",\n\t\tcompatibility: {\n\t\t\tnuxt: \"^2.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-nuxt2\": isPrerelease ? \"alpha\" : \"latest\",\n\t\t},\n\t},\n\t\"nuxt-3\": {\n\t\tname: \"Nuxt 3\",\n\t\tsliceMachineTelemetryID: \"nuxt-3\",\n\t\twroomTelemetryID: \"nuxt\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/nuxt-3\",\n\t\tadapterName: \"@slicemachine/adapter-nuxt\",\n\t\tcompatibility: {\n\t\t\tnuxt: \"^3.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-nuxt\": isPrerelease ? \"alpha\" : \"latest\",\n\t\t},\n\t},\n\tnext: {\n\t\tname: \"Next.js\",\n\t\tsliceMachineTelemetryID: \"next\",\n\t\twroomTelemetryID: \"next\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/next\",\n\t\tadapterName: \"@slicemachine/adapter-next\",\n\t\tcompatibility: {\n\t\t\tnext: \">=11.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-next\": isPrerelease ? \"alpha\" : \"latest\",\n\t\t},\n\t},\n\t\"sveltekit-1\": {\n\t\tname: \"SvelteKit\",\n\t\tsliceMachineTelemetryID: \"sveltekit-1\",\n\t\twroomTelemetryID: \"sveltekit\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/sveltekit-1\",\n\t\tadapterName: \"@slicemachine/adapter-sveltekit\",\n\t\tcompatibility: {\n\t\t\t\"@sveltejs/kit\": \"^1.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-sveltekit\": isPrerelease ? \"alpha\" : \"latest\",\n\t\t},\n\t},\n\t\"sveltekit-2\": {\n\t\tname: \"SvelteKit\",\n\t\tsliceMachineTelemetryID: \"sveltekit-2\",\n\t\twroomTelemetryID: \"sveltekit\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/sveltekit-2\",\n\t\tadapterName: \"@slicemachine/adapter-sveltekit\",\n\t\tcompatibility: {\n\t\t\t\"@sveltejs/kit\": \"^2.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-sveltekit\": isPrerelease ? \"alpha\" : \"latest\",\n\t\t},\n\t},\n} as const;\n\n/**\n * Universal package used when framework is not supported.\n */\nexport const UNIVERSAL: Framework = {\n\tname: \"universal (no framework)\",\n\tsliceMachineTelemetryID: \"universal\",\n\twroomTelemetryID: \"other\",\n\tprismicDocumentation: \"https://prismic.dev/init/universal\",\n\tadapterName: \"@slicemachine/adapter-universal\",\n\tcompatibility: {},\n\tdevDependencies: {\n\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\"@slicemachine/adapter-universal\": isPrerelease ? \"alpha\" : \"latest\",\n\t},\n};\n\nexport const detectFramework = async (cwd: string): Promise<Framework> => {\n\tconst path = join(cwd, \"package.json\");\n\n\tlet allDependencies: Record<string, string>;\n\ttry {\n\t\tconst pkg = JSON.parse(await readFile(path, \"utf-8\"));\n\n\t\tallDependencies = {\n\t\t\t...pkg.dependencies,\n\t\t\t...pkg.devDependencies,\n\t\t};\n\t} catch (error) {\n\t\tthrow new Error(\n\t\t\t`Failed to read project's \\`package.json\\` at \\`${path}\\``,\n\t\t\t{ cause: error },\n\t\t);\n\t}\n\n\treturn (\n\t\tObject.values(FRAMEWORKS).find((framework) => {\n\t\t\treturn Object.entries(framework.compatibility).every(([pkg, range]) => {\n\t\t\t\tif (pkg in allDependencies) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\t// Determine lowest version possibly in use\n\t\t\t\t\t\tconst minimumVersion = semver.minVersion(allDependencies[pkg]);\n\n\t\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n\t\t\t\t\t\treturn semver.satisfies(minimumVersion!, range);\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t// We assume unconventional tags, `latest`, `beta`, `dev` matches the framework\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn false;\n\t\t\t});\n\t\t}) || UNIVERSAL\n\t);\n};\n"],"names":["pkgVersion","path","join","readFile"],"mappings":"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"}
1
+ {"version":3,"file":"framework.cjs","sources":["../../../src/lib/framework.ts"],"sourcesContent":["import { readFile } from \"node:fs/promises\";\nimport { join } from \"node:path\";\nimport semver from \"semver\";\n\nimport { FrameworkWroomTelemetryID } from \"@slicemachine/manager\";\n\nimport { version as pkgVersion } from \"../../package.json\";\n\nexport type Framework = {\n\t/**\n\t * Framework's human readable name.\n\t */\n\tname: string;\n\n\t/**\n\t * Framework 's id sent to Segment from Slice Machine\n\t */\n\tsliceMachineTelemetryID:\n\t\t| \"next\"\n\t\t| \"nuxt-2\"\n\t\t| \"nuxt-3\"\n\t\t| \"sveltekit-1\"\n\t\t| \"sveltekit-2\"\n\t\t| \"universal\";\n\n\t/**\n\t * Framework's id sent to Segment from wroom.\n\t */\n\twroomTelemetryID: FrameworkWroomTelemetryID;\n\n\t/**\n\t * A link to the Prismic documentation for the framework\n\t */\n\tprismicDocumentation: string;\n\n\t/**\n\t * Package name of the adapter responsible for this framework\n\t */\n\tadapterName: string;\n\n\t/**\n\t * A package name/semver range map defining framework compatibility\n\t * requirements.\n\t *\n\t * Project should match all entries to be considered compatible.\n\t */\n\tcompatibility: Record<string, string>;\n\n\t/**\n\t * A package name/semver range map defining development dependencies to be\n\t * installed. Typically Slice Machine and the framework's adapter.\n\t *\n\t * @remarks\n\t * Dependencies required to work with the framework (e.g. `@prismicio/next`\n\t * for Next.js) should not be defined here. Those are to be defined by the\n\t * adapter.\n\t */\n\tdevDependencies: Record<string, string>;\n};\n\nconst prereleaseComponents = semver.prerelease(pkgVersion);\nlet npmDistributionTag;\nif (\n\tprereleaseComponents !== null &&\n\tprereleaseComponents.length >= 2 &&\n\tprocess.env.NODE_ENV !== \"test\"\n) {\n\tconst prereleaseIdentifier = prereleaseComponents.slice(0, -1).join(\".\");\n\tnpmDistributionTag = prereleaseIdentifier;\n} else {\n\tnpmDistributionTag = \"latest\";\n}\n\nconst DEFAULT_DEV_DEPENDENCIES: Record<string, string> = {\n\t\"slice-machine-ui\": npmDistributionTag,\n};\n\n/**\n * Frameworks we support, orders shouldn't matter much but is respected (the\n * higher it is the more priority it has in case multiple matches)\n */\nexport const FRAMEWORKS: Record<string, Framework> = {\n\t\"nuxt-2\": {\n\t\tname: \"Nuxt 2\",\n\t\tsliceMachineTelemetryID: \"nuxt-2\",\n\t\twroomTelemetryID: \"nuxt\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/nuxt-2\",\n\t\tadapterName: \"@slicemachine/adapter-nuxt2\",\n\t\tcompatibility: {\n\t\t\tnuxt: \"^2.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-nuxt2\": npmDistributionTag,\n\t\t},\n\t},\n\t\"nuxt-3\": {\n\t\tname: \"Nuxt 3\",\n\t\tsliceMachineTelemetryID: \"nuxt-3\",\n\t\twroomTelemetryID: \"nuxt\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/nuxt-3\",\n\t\tadapterName: \"@slicemachine/adapter-nuxt\",\n\t\tcompatibility: {\n\t\t\tnuxt: \"^3.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-nuxt\": npmDistributionTag,\n\t\t},\n\t},\n\tnext: {\n\t\tname: \"Next.js\",\n\t\tsliceMachineTelemetryID: \"next\",\n\t\twroomTelemetryID: \"next\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/next\",\n\t\tadapterName: \"@slicemachine/adapter-next\",\n\t\tcompatibility: {\n\t\t\tnext: \">=11.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-next\": npmDistributionTag,\n\t\t},\n\t},\n\t\"sveltekit-1\": {\n\t\tname: \"SvelteKit\",\n\t\tsliceMachineTelemetryID: \"sveltekit-1\",\n\t\twroomTelemetryID: \"sveltekit\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/sveltekit-1\",\n\t\tadapterName: \"@slicemachine/adapter-sveltekit\",\n\t\tcompatibility: {\n\t\t\t\"@sveltejs/kit\": \"^1.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-sveltekit\": npmDistributionTag,\n\t\t},\n\t},\n\t\"sveltekit-2\": {\n\t\tname: \"SvelteKit\",\n\t\tsliceMachineTelemetryID: \"sveltekit-2\",\n\t\twroomTelemetryID: \"sveltekit\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/sveltekit-2\",\n\t\tadapterName: \"@slicemachine/adapter-sveltekit\",\n\t\tcompatibility: {\n\t\t\t\"@sveltejs/kit\": \"^2.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-sveltekit\": npmDistributionTag,\n\t\t},\n\t},\n} as const;\n\n/**\n * Universal package used when framework is not supported.\n */\nexport const UNIVERSAL: Framework = {\n\tname: \"universal (no framework)\",\n\tsliceMachineTelemetryID: \"universal\",\n\twroomTelemetryID: \"other\",\n\tprismicDocumentation: \"https://prismic.dev/init/universal\",\n\tadapterName: \"@slicemachine/adapter-universal\",\n\tcompatibility: {},\n\tdevDependencies: {\n\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\"@slicemachine/adapter-universal\": npmDistributionTag,\n\t},\n};\n\nexport const detectFramework = async (cwd: string): Promise<Framework> => {\n\tconst path = join(cwd, \"package.json\");\n\n\tlet allDependencies: Record<string, string>;\n\ttry {\n\t\tconst pkg = JSON.parse(await readFile(path, \"utf-8\"));\n\n\t\tallDependencies = {\n\t\t\t...pkg.dependencies,\n\t\t\t...pkg.devDependencies,\n\t\t};\n\t} catch (error) {\n\t\tthrow new Error(\n\t\t\t`Failed to read project's \\`package.json\\` at \\`${path}\\``,\n\t\t\t{ cause: error },\n\t\t);\n\t}\n\n\treturn (\n\t\tObject.values(FRAMEWORKS).find((framework) => {\n\t\t\treturn Object.entries(framework.compatibility).every(([pkg, range]) => {\n\t\t\t\tif (pkg in allDependencies) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\t// Determine lowest version possibly in use\n\t\t\t\t\t\tconst minimumVersion = semver.minVersion(allDependencies[pkg]);\n\n\t\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n\t\t\t\t\t\treturn semver.satisfies(minimumVersion!, range);\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t// We assume unconventional tags, `latest`, `beta`, `dev` matches the framework\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn false;\n\t\t\t});\n\t\t}) || UNIVERSAL\n\t);\n};\n"],"names":["pkgVersion","path","join","readFile"],"mappings":";;;;;;AA4DA,MAAM,uBAAuB,OAAO,WAAWA,SAAAA,OAAU;AACzD,IAAI;AACJ,IACC,yBAAyB,QACzB,qBAAqB,UAAU,KAC/B,QAAQ,IAAI,aAAa,QACxB;AACD,QAAM,uBAAuB,qBAAqB,MAAM,GAAG,EAAE,EAAE,KAAK,GAAG;AAClD,uBAAA;AACrB,OAAM;AACe,uBAAA;AACrB;AAED,MAAM,2BAAmD;AAAA,EACxD,oBAAoB;;AAOd,MAAM,aAAwC;AAAA,EACpD,UAAU;AAAA,IACT,MAAM;AAAA,IACN,yBAAyB;AAAA,IACzB,kBAAkB;AAAA,IAClB,sBAAsB;AAAA,IACtB,aAAa;AAAA,IACb,eAAe;AAAA,MACd,MAAM;AAAA,IACN;AAAA,IACD,iBAAiB;AAAA,MAChB,GAAG;AAAA,MACH,+BAA+B;AAAA,IAC/B;AAAA,EACD;AAAA,EACD,UAAU;AAAA,IACT,MAAM;AAAA,IACN,yBAAyB;AAAA,IACzB,kBAAkB;AAAA,IAClB,sBAAsB;AAAA,IACtB,aAAa;AAAA,IACb,eAAe;AAAA,MACd,MAAM;AAAA,IACN;AAAA,IACD,iBAAiB;AAAA,MAChB,GAAG;AAAA,MACH,8BAA8B;AAAA,IAC9B;AAAA,EACD;AAAA,EACD,MAAM;AAAA,IACL,MAAM;AAAA,IACN,yBAAyB;AAAA,IACzB,kBAAkB;AAAA,IAClB,sBAAsB;AAAA,IACtB,aAAa;AAAA,IACb,eAAe;AAAA,MACd,MAAM;AAAA,IACN;AAAA,IACD,iBAAiB;AAAA,MAChB,GAAG;AAAA,MACH,8BAA8B;AAAA,IAC9B;AAAA,EACD;AAAA,EACD,eAAe;AAAA,IACd,MAAM;AAAA,IACN,yBAAyB;AAAA,IACzB,kBAAkB;AAAA,IAClB,sBAAsB;AAAA,IACtB,aAAa;AAAA,IACb,eAAe;AAAA,MACd,iBAAiB;AAAA,IACjB;AAAA,IACD,iBAAiB;AAAA,MAChB,GAAG;AAAA,MACH,mCAAmC;AAAA,IACnC;AAAA,EACD;AAAA,EACD,eAAe;AAAA,IACd,MAAM;AAAA,IACN,yBAAyB;AAAA,IACzB,kBAAkB;AAAA,IAClB,sBAAsB;AAAA,IACtB,aAAa;AAAA,IACb,eAAe;AAAA,MACd,iBAAiB;AAAA,IACjB;AAAA,IACD,iBAAiB;AAAA,MAChB,GAAG;AAAA,MACH,mCAAmC;AAAA,IACnC;AAAA,EACD;;AAMK,MAAM,YAAuB;AAAA,EACnC,MAAM;AAAA,EACN,yBAAyB;AAAA,EACzB,kBAAkB;AAAA,EAClB,sBAAsB;AAAA,EACtB,aAAa;AAAA,EACb,eAAe,CAAE;AAAA,EACjB,iBAAiB;AAAA,IAChB,GAAG;AAAA,IACH,mCAAmC;AAAA,EACnC;;AAGW,MAAA,kBAAkB,OAAO,QAAmC;AAClE,QAAAC,SAAOC,KAAAA,KAAK,KAAK,cAAc;AAEjC,MAAA;AACA,MAAA;AACH,UAAM,MAAM,KAAK,MAAM,MAAMC,GAAAA,SAASF,QAAM,OAAO,CAAC;AAElC,sBAAA;AAAA,MACjB,GAAG,IAAI;AAAA,MACP,GAAG,IAAI;AAAA,IAAA;AAAA,WAEA;AACR,UAAM,IAAI,MACT,kDAAkDA,YAClD,EAAE,OAAO,OAAO;AAAA,EAEjB;AAED,SACC,OAAO,OAAO,UAAU,EAAE,KAAK,CAAC,cAAa;AACrC,WAAA,OAAO,QAAQ,UAAU,aAAa,EAAE,MAAM,CAAC,CAAC,KAAK,KAAK,MAAK;AACrE,UAAI,OAAO,iBAAiB;AACvB,YAAA;AAEH,gBAAM,iBAAiB,OAAO,WAAW,gBAAgB,GAAG,CAAC;AAGtD,iBAAA,OAAO,UAAU,gBAAiB,KAAK;AAAA,iBACtC;AAED,iBAAA;AAAA,QACP;AAAA,MACD;AAEM,aAAA;AAAA,IAAA,CACP;AAAA,EACD,CAAA,KAAK;AAER;;;;"}
@@ -2,9 +2,16 @@ import { readFile } from "node:fs/promises";
2
2
  import { join } from "node:path";
3
3
  import semver from "semver";
4
4
  import { version } from "../packages/init/package.json.js";
5
- const isPrerelease = semver.prerelease(version) !== null && process.env.NODE_ENV !== "test";
5
+ const prereleaseComponents = semver.prerelease(version);
6
+ let npmDistributionTag;
7
+ if (prereleaseComponents !== null && prereleaseComponents.length >= 2 && process.env.NODE_ENV !== "test") {
8
+ const prereleaseIdentifier = prereleaseComponents.slice(0, -1).join(".");
9
+ npmDistributionTag = prereleaseIdentifier;
10
+ } else {
11
+ npmDistributionTag = "latest";
12
+ }
6
13
  const DEFAULT_DEV_DEPENDENCIES = {
7
- "slice-machine-ui": isPrerelease ? "alpha" : "latest"
14
+ "slice-machine-ui": npmDistributionTag
8
15
  };
9
16
  const FRAMEWORKS = {
10
17
  "nuxt-2": {
@@ -18,7 +25,7 @@ const FRAMEWORKS = {
18
25
  },
19
26
  devDependencies: {
20
27
  ...DEFAULT_DEV_DEPENDENCIES,
21
- "@slicemachine/adapter-nuxt2": isPrerelease ? "alpha" : "latest"
28
+ "@slicemachine/adapter-nuxt2": npmDistributionTag
22
29
  }
23
30
  },
24
31
  "nuxt-3": {
@@ -32,7 +39,7 @@ const FRAMEWORKS = {
32
39
  },
33
40
  devDependencies: {
34
41
  ...DEFAULT_DEV_DEPENDENCIES,
35
- "@slicemachine/adapter-nuxt": isPrerelease ? "alpha" : "latest"
42
+ "@slicemachine/adapter-nuxt": npmDistributionTag
36
43
  }
37
44
  },
38
45
  next: {
@@ -46,7 +53,7 @@ const FRAMEWORKS = {
46
53
  },
47
54
  devDependencies: {
48
55
  ...DEFAULT_DEV_DEPENDENCIES,
49
- "@slicemachine/adapter-next": isPrerelease ? "alpha" : "latest"
56
+ "@slicemachine/adapter-next": npmDistributionTag
50
57
  }
51
58
  },
52
59
  "sveltekit-1": {
@@ -60,7 +67,7 @@ const FRAMEWORKS = {
60
67
  },
61
68
  devDependencies: {
62
69
  ...DEFAULT_DEV_DEPENDENCIES,
63
- "@slicemachine/adapter-sveltekit": isPrerelease ? "alpha" : "latest"
70
+ "@slicemachine/adapter-sveltekit": npmDistributionTag
64
71
  }
65
72
  },
66
73
  "sveltekit-2": {
@@ -74,7 +81,7 @@ const FRAMEWORKS = {
74
81
  },
75
82
  devDependencies: {
76
83
  ...DEFAULT_DEV_DEPENDENCIES,
77
- "@slicemachine/adapter-sveltekit": isPrerelease ? "alpha" : "latest"
84
+ "@slicemachine/adapter-sveltekit": npmDistributionTag
78
85
  }
79
86
  }
80
87
  };
@@ -87,7 +94,7 @@ const UNIVERSAL = {
87
94
  compatibility: {},
88
95
  devDependencies: {
89
96
  ...DEFAULT_DEV_DEPENDENCIES,
90
- "@slicemachine/adapter-universal": isPrerelease ? "alpha" : "latest"
97
+ "@slicemachine/adapter-universal": npmDistributionTag
91
98
  }
92
99
  };
93
100
  const detectFramework = async (cwd) => {
@@ -1 +1 @@
1
- {"version":3,"file":"framework.js","sources":["../../../src/lib/framework.ts"],"sourcesContent":["import { readFile } from \"node:fs/promises\";\nimport { join } from \"node:path\";\nimport semver from \"semver\";\n\nimport { FrameworkWroomTelemetryID } from \"@slicemachine/manager\";\n\nimport { version as pkgVersion } from \"../../package.json\";\n\nexport type Framework = {\n\t/**\n\t * Framework's human readable name.\n\t */\n\tname: string;\n\n\t/**\n\t * Framework 's id sent to Segment from Slice Machine\n\t */\n\tsliceMachineTelemetryID:\n\t\t| \"next\"\n\t\t| \"nuxt-2\"\n\t\t| \"nuxt-3\"\n\t\t| \"sveltekit-1\"\n\t\t| \"sveltekit-2\"\n\t\t| \"universal\";\n\n\t/**\n\t * Framework's id sent to Segment from wroom.\n\t */\n\twroomTelemetryID: FrameworkWroomTelemetryID;\n\n\t/**\n\t * A link to the Prismic documentation for the framework\n\t */\n\tprismicDocumentation: string;\n\n\t/**\n\t * Package name of the adapter responsible for this framework\n\t */\n\tadapterName: string;\n\n\t/**\n\t * A package name/semver range map defining framework compatibility\n\t * requirements.\n\t *\n\t * Project should match all entries to be considered compatible.\n\t */\n\tcompatibility: Record<string, string>;\n\n\t/**\n\t * A package name/semver range map defining development dependencies to be\n\t * installed. Typically Slice Machine and the framework's adapter.\n\t *\n\t * @remarks\n\t * Dependencies required to work with the framework (e.g. `@prismicio/next`\n\t * for Next.js) should not be defined here. Those are to be defined by the\n\t * adapter.\n\t */\n\tdevDependencies: Record<string, string>;\n};\n\nconst isPrerelease =\n\tsemver.prerelease(pkgVersion) !== null && process.env.NODE_ENV !== \"test\";\n\nconst DEFAULT_DEV_DEPENDENCIES: Record<string, string> = {\n\t\"slice-machine-ui\": isPrerelease ? \"alpha\" : \"latest\",\n};\n\n/**\n * Frameworks we support, orders shouldn't matter much but is respected (the\n * higher it is the more priority it has in case multiple matches)\n */\nexport const FRAMEWORKS: Record<string, Framework> = {\n\t\"nuxt-2\": {\n\t\tname: \"Nuxt 2\",\n\t\tsliceMachineTelemetryID: \"nuxt-2\",\n\t\twroomTelemetryID: \"nuxt\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/nuxt-2\",\n\t\tadapterName: \"@slicemachine/adapter-nuxt2\",\n\t\tcompatibility: {\n\t\t\tnuxt: \"^2.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-nuxt2\": isPrerelease ? \"alpha\" : \"latest\",\n\t\t},\n\t},\n\t\"nuxt-3\": {\n\t\tname: \"Nuxt 3\",\n\t\tsliceMachineTelemetryID: \"nuxt-3\",\n\t\twroomTelemetryID: \"nuxt\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/nuxt-3\",\n\t\tadapterName: \"@slicemachine/adapter-nuxt\",\n\t\tcompatibility: {\n\t\t\tnuxt: \"^3.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-nuxt\": isPrerelease ? \"alpha\" : \"latest\",\n\t\t},\n\t},\n\tnext: {\n\t\tname: \"Next.js\",\n\t\tsliceMachineTelemetryID: \"next\",\n\t\twroomTelemetryID: \"next\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/next\",\n\t\tadapterName: \"@slicemachine/adapter-next\",\n\t\tcompatibility: {\n\t\t\tnext: \">=11.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-next\": isPrerelease ? \"alpha\" : \"latest\",\n\t\t},\n\t},\n\t\"sveltekit-1\": {\n\t\tname: \"SvelteKit\",\n\t\tsliceMachineTelemetryID: \"sveltekit-1\",\n\t\twroomTelemetryID: \"sveltekit\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/sveltekit-1\",\n\t\tadapterName: \"@slicemachine/adapter-sveltekit\",\n\t\tcompatibility: {\n\t\t\t\"@sveltejs/kit\": \"^1.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-sveltekit\": isPrerelease ? \"alpha\" : \"latest\",\n\t\t},\n\t},\n\t\"sveltekit-2\": {\n\t\tname: \"SvelteKit\",\n\t\tsliceMachineTelemetryID: \"sveltekit-2\",\n\t\twroomTelemetryID: \"sveltekit\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/sveltekit-2\",\n\t\tadapterName: \"@slicemachine/adapter-sveltekit\",\n\t\tcompatibility: {\n\t\t\t\"@sveltejs/kit\": \"^2.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-sveltekit\": isPrerelease ? \"alpha\" : \"latest\",\n\t\t},\n\t},\n} as const;\n\n/**\n * Universal package used when framework is not supported.\n */\nexport const UNIVERSAL: Framework = {\n\tname: \"universal (no framework)\",\n\tsliceMachineTelemetryID: \"universal\",\n\twroomTelemetryID: \"other\",\n\tprismicDocumentation: \"https://prismic.dev/init/universal\",\n\tadapterName: \"@slicemachine/adapter-universal\",\n\tcompatibility: {},\n\tdevDependencies: {\n\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\"@slicemachine/adapter-universal\": isPrerelease ? \"alpha\" : \"latest\",\n\t},\n};\n\nexport const detectFramework = async (cwd: string): Promise<Framework> => {\n\tconst path = join(cwd, \"package.json\");\n\n\tlet allDependencies: Record<string, string>;\n\ttry {\n\t\tconst pkg = JSON.parse(await readFile(path, \"utf-8\"));\n\n\t\tallDependencies = {\n\t\t\t...pkg.dependencies,\n\t\t\t...pkg.devDependencies,\n\t\t};\n\t} catch (error) {\n\t\tthrow new Error(\n\t\t\t`Failed to read project's \\`package.json\\` at \\`${path}\\``,\n\t\t\t{ cause: error },\n\t\t);\n\t}\n\n\treturn (\n\t\tObject.values(FRAMEWORKS).find((framework) => {\n\t\t\treturn Object.entries(framework.compatibility).every(([pkg, range]) => {\n\t\t\t\tif (pkg in allDependencies) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\t// Determine lowest version possibly in use\n\t\t\t\t\t\tconst minimumVersion = semver.minVersion(allDependencies[pkg]);\n\n\t\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n\t\t\t\t\t\treturn semver.satisfies(minimumVersion!, range);\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t// We assume unconventional tags, `latest`, `beta`, `dev` matches the framework\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn false;\n\t\t\t});\n\t\t}) || UNIVERSAL\n\t);\n};\n"],"names":["pkgVersion"],"mappings":";;;;AA4DA,MAAM,eACL,OAAO,WAAWA,OAAU,MAAM,QAAQ,QAAQ,IAAI,aAAa;AAEpE,MAAM,2BAAmD;AAAA,EACxD,oBAAoB,eAAe,UAAU;;AAOvC,MAAM,aAAwC;AAAA,EACpD,UAAU;AAAA,IACT,MAAM;AAAA,IACN,yBAAyB;AAAA,IACzB,kBAAkB;AAAA,IAClB,sBAAsB;AAAA,IACtB,aAAa;AAAA,IACb,eAAe;AAAA,MACd,MAAM;AAAA,IACN;AAAA,IACD,iBAAiB;AAAA,MAChB,GAAG;AAAA,MACH,+BAA+B,eAAe,UAAU;AAAA,IACxD;AAAA,EACD;AAAA,EACD,UAAU;AAAA,IACT,MAAM;AAAA,IACN,yBAAyB;AAAA,IACzB,kBAAkB;AAAA,IAClB,sBAAsB;AAAA,IACtB,aAAa;AAAA,IACb,eAAe;AAAA,MACd,MAAM;AAAA,IACN;AAAA,IACD,iBAAiB;AAAA,MAChB,GAAG;AAAA,MACH,8BAA8B,eAAe,UAAU;AAAA,IACvD;AAAA,EACD;AAAA,EACD,MAAM;AAAA,IACL,MAAM;AAAA,IACN,yBAAyB;AAAA,IACzB,kBAAkB;AAAA,IAClB,sBAAsB;AAAA,IACtB,aAAa;AAAA,IACb,eAAe;AAAA,MACd,MAAM;AAAA,IACN;AAAA,IACD,iBAAiB;AAAA,MAChB,GAAG;AAAA,MACH,8BAA8B,eAAe,UAAU;AAAA,IACvD;AAAA,EACD;AAAA,EACD,eAAe;AAAA,IACd,MAAM;AAAA,IACN,yBAAyB;AAAA,IACzB,kBAAkB;AAAA,IAClB,sBAAsB;AAAA,IACtB,aAAa;AAAA,IACb,eAAe;AAAA,MACd,iBAAiB;AAAA,IACjB;AAAA,IACD,iBAAiB;AAAA,MAChB,GAAG;AAAA,MACH,mCAAmC,eAAe,UAAU;AAAA,IAC5D;AAAA,EACD;AAAA,EACD,eAAe;AAAA,IACd,MAAM;AAAA,IACN,yBAAyB;AAAA,IACzB,kBAAkB;AAAA,IAClB,sBAAsB;AAAA,IACtB,aAAa;AAAA,IACb,eAAe;AAAA,MACd,iBAAiB;AAAA,IACjB;AAAA,IACD,iBAAiB;AAAA,MAChB,GAAG;AAAA,MACH,mCAAmC,eAAe,UAAU;AAAA,IAC5D;AAAA,EACD;;AAMK,MAAM,YAAuB;AAAA,EACnC,MAAM;AAAA,EACN,yBAAyB;AAAA,EACzB,kBAAkB;AAAA,EAClB,sBAAsB;AAAA,EACtB,aAAa;AAAA,EACb,eAAe,CAAE;AAAA,EACjB,iBAAiB;AAAA,IAChB,GAAG;AAAA,IACH,mCAAmC,eAAe,UAAU;AAAA,EAC5D;;AAGW,MAAA,kBAAkB,OAAO,QAAmC;AAClE,QAAA,OAAO,KAAK,KAAK,cAAc;AAEjC,MAAA;AACA,MAAA;AACH,UAAM,MAAM,KAAK,MAAM,MAAM,SAAS,MAAM,OAAO,CAAC;AAElC,sBAAA;AAAA,MACjB,GAAG,IAAI;AAAA,MACP,GAAG,IAAI;AAAA,IAAA;AAAA,WAEA;AACR,UAAM,IAAI,MACT,kDAAkD,UAClD,EAAE,OAAO,OAAO;AAAA,EAEjB;AAED,SACC,OAAO,OAAO,UAAU,EAAE,KAAK,CAAC,cAAa;AACrC,WAAA,OAAO,QAAQ,UAAU,aAAa,EAAE,MAAM,CAAC,CAAC,KAAK,KAAK,MAAK;AACrE,UAAI,OAAO,iBAAiB;AACvB,YAAA;AAEH,gBAAM,iBAAiB,OAAO,WAAW,gBAAgB,GAAG,CAAC;AAGtD,iBAAA,OAAO,UAAU,gBAAiB,KAAK;AAAA,iBACtC;AAED,iBAAA;AAAA,QACP;AAAA,MACD;AAEM,aAAA;AAAA,IAAA,CACP;AAAA,EACD,CAAA,KAAK;AAER;"}
1
+ {"version":3,"file":"framework.js","sources":["../../../src/lib/framework.ts"],"sourcesContent":["import { readFile } from \"node:fs/promises\";\nimport { join } from \"node:path\";\nimport semver from \"semver\";\n\nimport { FrameworkWroomTelemetryID } from \"@slicemachine/manager\";\n\nimport { version as pkgVersion } from \"../../package.json\";\n\nexport type Framework = {\n\t/**\n\t * Framework's human readable name.\n\t */\n\tname: string;\n\n\t/**\n\t * Framework 's id sent to Segment from Slice Machine\n\t */\n\tsliceMachineTelemetryID:\n\t\t| \"next\"\n\t\t| \"nuxt-2\"\n\t\t| \"nuxt-3\"\n\t\t| \"sveltekit-1\"\n\t\t| \"sveltekit-2\"\n\t\t| \"universal\";\n\n\t/**\n\t * Framework's id sent to Segment from wroom.\n\t */\n\twroomTelemetryID: FrameworkWroomTelemetryID;\n\n\t/**\n\t * A link to the Prismic documentation for the framework\n\t */\n\tprismicDocumentation: string;\n\n\t/**\n\t * Package name of the adapter responsible for this framework\n\t */\n\tadapterName: string;\n\n\t/**\n\t * A package name/semver range map defining framework compatibility\n\t * requirements.\n\t *\n\t * Project should match all entries to be considered compatible.\n\t */\n\tcompatibility: Record<string, string>;\n\n\t/**\n\t * A package name/semver range map defining development dependencies to be\n\t * installed. Typically Slice Machine and the framework's adapter.\n\t *\n\t * @remarks\n\t * Dependencies required to work with the framework (e.g. `@prismicio/next`\n\t * for Next.js) should not be defined here. Those are to be defined by the\n\t * adapter.\n\t */\n\tdevDependencies: Record<string, string>;\n};\n\nconst prereleaseComponents = semver.prerelease(pkgVersion);\nlet npmDistributionTag;\nif (\n\tprereleaseComponents !== null &&\n\tprereleaseComponents.length >= 2 &&\n\tprocess.env.NODE_ENV !== \"test\"\n) {\n\tconst prereleaseIdentifier = prereleaseComponents.slice(0, -1).join(\".\");\n\tnpmDistributionTag = prereleaseIdentifier;\n} else {\n\tnpmDistributionTag = \"latest\";\n}\n\nconst DEFAULT_DEV_DEPENDENCIES: Record<string, string> = {\n\t\"slice-machine-ui\": npmDistributionTag,\n};\n\n/**\n * Frameworks we support, orders shouldn't matter much but is respected (the\n * higher it is the more priority it has in case multiple matches)\n */\nexport const FRAMEWORKS: Record<string, Framework> = {\n\t\"nuxt-2\": {\n\t\tname: \"Nuxt 2\",\n\t\tsliceMachineTelemetryID: \"nuxt-2\",\n\t\twroomTelemetryID: \"nuxt\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/nuxt-2\",\n\t\tadapterName: \"@slicemachine/adapter-nuxt2\",\n\t\tcompatibility: {\n\t\t\tnuxt: \"^2.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-nuxt2\": npmDistributionTag,\n\t\t},\n\t},\n\t\"nuxt-3\": {\n\t\tname: \"Nuxt 3\",\n\t\tsliceMachineTelemetryID: \"nuxt-3\",\n\t\twroomTelemetryID: \"nuxt\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/nuxt-3\",\n\t\tadapterName: \"@slicemachine/adapter-nuxt\",\n\t\tcompatibility: {\n\t\t\tnuxt: \"^3.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-nuxt\": npmDistributionTag,\n\t\t},\n\t},\n\tnext: {\n\t\tname: \"Next.js\",\n\t\tsliceMachineTelemetryID: \"next\",\n\t\twroomTelemetryID: \"next\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/next\",\n\t\tadapterName: \"@slicemachine/adapter-next\",\n\t\tcompatibility: {\n\t\t\tnext: \">=11.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-next\": npmDistributionTag,\n\t\t},\n\t},\n\t\"sveltekit-1\": {\n\t\tname: \"SvelteKit\",\n\t\tsliceMachineTelemetryID: \"sveltekit-1\",\n\t\twroomTelemetryID: \"sveltekit\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/sveltekit-1\",\n\t\tadapterName: \"@slicemachine/adapter-sveltekit\",\n\t\tcompatibility: {\n\t\t\t\"@sveltejs/kit\": \"^1.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-sveltekit\": npmDistributionTag,\n\t\t},\n\t},\n\t\"sveltekit-2\": {\n\t\tname: \"SvelteKit\",\n\t\tsliceMachineTelemetryID: \"sveltekit-2\",\n\t\twroomTelemetryID: \"sveltekit\",\n\t\tprismicDocumentation: \"https://prismic.dev/init/sveltekit-2\",\n\t\tadapterName: \"@slicemachine/adapter-sveltekit\",\n\t\tcompatibility: {\n\t\t\t\"@sveltejs/kit\": \"^2.0.0\",\n\t\t},\n\t\tdevDependencies: {\n\t\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\t\"@slicemachine/adapter-sveltekit\": npmDistributionTag,\n\t\t},\n\t},\n} as const;\n\n/**\n * Universal package used when framework is not supported.\n */\nexport const UNIVERSAL: Framework = {\n\tname: \"universal (no framework)\",\n\tsliceMachineTelemetryID: \"universal\",\n\twroomTelemetryID: \"other\",\n\tprismicDocumentation: \"https://prismic.dev/init/universal\",\n\tadapterName: \"@slicemachine/adapter-universal\",\n\tcompatibility: {},\n\tdevDependencies: {\n\t\t...DEFAULT_DEV_DEPENDENCIES,\n\t\t\"@slicemachine/adapter-universal\": npmDistributionTag,\n\t},\n};\n\nexport const detectFramework = async (cwd: string): Promise<Framework> => {\n\tconst path = join(cwd, \"package.json\");\n\n\tlet allDependencies: Record<string, string>;\n\ttry {\n\t\tconst pkg = JSON.parse(await readFile(path, \"utf-8\"));\n\n\t\tallDependencies = {\n\t\t\t...pkg.dependencies,\n\t\t\t...pkg.devDependencies,\n\t\t};\n\t} catch (error) {\n\t\tthrow new Error(\n\t\t\t`Failed to read project's \\`package.json\\` at \\`${path}\\``,\n\t\t\t{ cause: error },\n\t\t);\n\t}\n\n\treturn (\n\t\tObject.values(FRAMEWORKS).find((framework) => {\n\t\t\treturn Object.entries(framework.compatibility).every(([pkg, range]) => {\n\t\t\t\tif (pkg in allDependencies) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\t// Determine lowest version possibly in use\n\t\t\t\t\t\tconst minimumVersion = semver.minVersion(allDependencies[pkg]);\n\n\t\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n\t\t\t\t\t\treturn semver.satisfies(minimumVersion!, range);\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t// We assume unconventional tags, `latest`, `beta`, `dev` matches the framework\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn false;\n\t\t\t});\n\t\t}) || UNIVERSAL\n\t);\n};\n"],"names":["pkgVersion"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const Sentry = require("@sentry/node");
4
- const semver = require("semver");
4
+ const manager = require("@slicemachine/manager");
5
5
  const constants = require("../constants.cjs");
6
6
  const checkIsSentryEnabled = require("./checkIsSentryEnabled.cjs");
7
7
  const _package = require("../packages/init/package.json.cjs");
@@ -26,11 +26,11 @@ function setupSentry() {
26
26
  if (!checkIsSentryEnabled.checkIsSentryEnabled()) {
27
27
  return;
28
28
  }
29
- const isStableVersion = semver.prerelease(_package.version) === null && semver.lte("0.1.0", _package.version);
29
+ const { environment, release } = manager.getEnvironmentInfo(_package);
30
30
  Sentry__namespace.init({
31
31
  dsn: constants.SENTRY_EXPRESS_DSN,
32
- release: _package.version,
33
- environment: isStableVersion ? "production" : "alpha",
32
+ release,
33
+ environment,
34
34
  // Increase the default truncation length of 250 to 2500 (x10)
35
35
  // to have enough details in Sentry
36
36
  maxValueLength: 2500
@@ -1 +1 @@
1
- {"version":3,"file":"setupSentry.cjs","sources":["../../../src/lib/setupSentry.ts"],"sourcesContent":["import * as Sentry from \"@sentry/node\";\nimport semver from \"semver\";\n\nimport { SENTRY_EXPRESS_DSN } from \"../constants\";\nimport { checkIsSentryEnabled } from \"./checkIsSentryEnabled\";\nimport { version } from \"../../package.json\";\n\nexport function setupSentry(): void {\n\tif (!checkIsSentryEnabled()) {\n\t\treturn;\n\t}\n\n\tconst isStableVersion =\n\t\tsemver.prerelease(version) === null && semver.lte(\"0.1.0\", version);\n\n\tSentry.init({\n\t\tdsn: SENTRY_EXPRESS_DSN,\n\t\trelease: version,\n\t\tenvironment: isStableVersion\n\t\t\t? import.meta.env.MODE || \"production\"\n\t\t\t: \"alpha\",\n\t\t// Increase the default truncation length of 250 to 2500 (x10)\n\t\t// to have enough details in Sentry\n\t\tmaxValueLength: 2_500,\n\t});\n}\n"],"names":["checkIsSentryEnabled","version","Sentry","SENTRY_EXPRESS_DSN"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;SAOgB,cAAW;AACtB,MAAA,CAACA,6CAAwB;AAC5B;AAAA,EACA;AAEK,QAAA,kBACL,OAAO,WAAWC,gBAAO,MAAM,QAAQ,OAAO,IAAI,SAASA,SAAAA,OAAO;AAEnEC,oBAAO,KAAK;AAAA,IACX,KAAKC,UAAA;AAAA,IACL,SAASF,SAAA;AAAA,IACT,aAAa,kBACV,eACA;AAAA;AAAA;AAAA,IAGH,gBAAgB;AAAA,EAAA,CAChB;AACF;;"}
1
+ {"version":3,"file":"setupSentry.cjs","sources":["../../../src/lib/setupSentry.ts"],"sourcesContent":["import * as Sentry from \"@sentry/node\";\nimport { getEnvironmentInfo } from \"@slicemachine/manager\";\n\nimport { SENTRY_EXPRESS_DSN } from \"../constants\";\nimport { checkIsSentryEnabled } from \"./checkIsSentryEnabled\";\nimport * as pkg from \"../../package.json\";\n\nexport function setupSentry(): void {\n\tif (!checkIsSentryEnabled()) {\n\t\treturn;\n\t}\n\n\tconst { environment, release } = getEnvironmentInfo(pkg);\n\n\tSentry.init({\n\t\tdsn: SENTRY_EXPRESS_DSN,\n\t\trelease,\n\t\tenvironment,\n\t\t// Increase the default truncation length of 250 to 2500 (x10)\n\t\t// to have enough details in Sentry\n\t\tmaxValueLength: 2_500,\n\t});\n}\n"],"names":["checkIsSentryEnabled","getEnvironmentInfo","pkg","Sentry","SENTRY_EXPRESS_DSN"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;SAOgB,cAAW;AACtB,MAAA,CAACA,6CAAwB;AAC5B;AAAA,EACA;AAED,QAAM,EAAE,aAAa,QAAO,IAAKC,2BAAmBC,QAAG;AAEvDC,oBAAO,KAAK;AAAA,IACX,KAAKC,UAAA;AAAA,IACL;AAAA,IACA;AAAA;AAAA;AAAA,IAGA,gBAAgB;AAAA,EAAA,CAChB;AACF;;"}
@@ -1,17 +1,17 @@
1
1
  import * as Sentry from "@sentry/node";
2
- import semver from "semver";
2
+ import { getEnvironmentInfo } from "@slicemachine/manager";
3
3
  import { SENTRY_EXPRESS_DSN } from "../constants.js";
4
4
  import { checkIsSentryEnabled } from "./checkIsSentryEnabled.js";
5
- import { version } from "../packages/init/package.json.js";
5
+ import * as _package from "../packages/init/package.json.js";
6
6
  function setupSentry() {
7
7
  if (!checkIsSentryEnabled()) {
8
8
  return;
9
9
  }
10
- const isStableVersion = semver.prerelease(version) === null && semver.lte("0.1.0", version);
10
+ const { environment, release } = getEnvironmentInfo(_package);
11
11
  Sentry.init({
12
12
  dsn: SENTRY_EXPRESS_DSN,
13
- release: version,
14
- environment: isStableVersion ? "production" : "alpha",
13
+ release,
14
+ environment,
15
15
  // Increase the default truncation length of 250 to 2500 (x10)
16
16
  // to have enough details in Sentry
17
17
  maxValueLength: 2500
@@ -1 +1 @@
1
- {"version":3,"file":"setupSentry.js","sources":["../../../src/lib/setupSentry.ts"],"sourcesContent":["import * as Sentry from \"@sentry/node\";\nimport semver from \"semver\";\n\nimport { SENTRY_EXPRESS_DSN } from \"../constants\";\nimport { checkIsSentryEnabled } from \"./checkIsSentryEnabled\";\nimport { version } from \"../../package.json\";\n\nexport function setupSentry(): void {\n\tif (!checkIsSentryEnabled()) {\n\t\treturn;\n\t}\n\n\tconst isStableVersion =\n\t\tsemver.prerelease(version) === null && semver.lte(\"0.1.0\", version);\n\n\tSentry.init({\n\t\tdsn: SENTRY_EXPRESS_DSN,\n\t\trelease: version,\n\t\tenvironment: isStableVersion\n\t\t\t? import.meta.env.MODE || \"production\"\n\t\t\t: \"alpha\",\n\t\t// Increase the default truncation length of 250 to 2500 (x10)\n\t\t// to have enough details in Sentry\n\t\tmaxValueLength: 2_500,\n\t});\n}\n"],"names":[],"mappings":";;;;;SAOgB,cAAW;AACtB,MAAA,CAAC,wBAAwB;AAC5B;AAAA,EACA;AAEK,QAAA,kBACL,OAAO,WAAW,OAAO,MAAM,QAAQ,OAAO,IAAI,SAAS,OAAO;AAEnE,SAAO,KAAK;AAAA,IACX,KAAK;AAAA,IACL,SAAS;AAAA,IACT,aAAa,kBACV,eACA;AAAA;AAAA;AAAA,IAGH,gBAAgB;AAAA,EAAA,CAChB;AACF;"}
1
+ {"version":3,"file":"setupSentry.js","sources":["../../../src/lib/setupSentry.ts"],"sourcesContent":["import * as Sentry from \"@sentry/node\";\nimport { getEnvironmentInfo } from \"@slicemachine/manager\";\n\nimport { SENTRY_EXPRESS_DSN } from \"../constants\";\nimport { checkIsSentryEnabled } from \"./checkIsSentryEnabled\";\nimport * as pkg from \"../../package.json\";\n\nexport function setupSentry(): void {\n\tif (!checkIsSentryEnabled()) {\n\t\treturn;\n\t}\n\n\tconst { environment, release } = getEnvironmentInfo(pkg);\n\n\tSentry.init({\n\t\tdsn: SENTRY_EXPRESS_DSN,\n\t\trelease,\n\t\tenvironment,\n\t\t// Increase the default truncation length of 250 to 2500 (x10)\n\t\t// to have enough details in Sentry\n\t\tmaxValueLength: 2_500,\n\t});\n}\n"],"names":["pkg"],"mappings":";;;;;SAOgB,cAAW;AACtB,MAAA,CAAC,wBAAwB;AAC5B;AAAA,EACA;AAED,QAAM,EAAE,aAAa,QAAO,IAAK,mBAAmBA,QAAG;AAEvD,SAAO,KAAK;AAAA,IACX,KAAK;AAAA,IACL;AAAA,IACA;AAAA;AAAA;AAAA,IAGA,gBAAgB;AAAA,EAAA,CAChB;AACF;"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const name = "@slicemachine/init";
4
- const version = "2.9.10-alpha.dev-new-release-process.1";
4
+ const version = "2.9.10-alpha.dev-new-release-process.2";
5
5
  const description = "Init Prismic Slice Machine in your project";
6
6
  const keywords = [
7
7
  "typescript",
@@ -1,5 +1,5 @@
1
1
  const name = "@slicemachine/init";
2
- const version = "2.9.10-alpha.dev-new-release-process.1";
2
+ const version = "2.9.10-alpha.dev-new-release-process.2";
3
3
  const description = "Init Prismic Slice Machine in your project";
4
4
  const keywords = [
5
5
  "typescript",