@slicemachine/init 2.1.1-dev-page-types-m2.0 → 2.1.1-dev-hotfixes.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 (32) hide show
  1. package/dist/SliceMachineInitProcess.cjs +21 -3
  2. package/dist/SliceMachineInitProcess.cjs.map +1 -1
  3. package/dist/SliceMachineInitProcess.js +21 -3
  4. package/dist/SliceMachineInitProcess.js.map +1 -1
  5. package/dist/_node_modules/@nodelib/fs.stat/out/index.cjs +3 -3
  6. package/dist/_node_modules/@nodelib/fs.stat/out/index.js +3 -3
  7. package/dist/_node_modules/@nodelib/fs.stat/out/providers/async.cjs +1 -1
  8. package/dist/_node_modules/@nodelib/fs.stat/out/providers/async.js +1 -1
  9. package/dist/_node_modules/@nodelib/fs.stat/out/providers/sync.cjs +1 -1
  10. package/dist/_node_modules/@nodelib/fs.stat/out/providers/sync.js +1 -1
  11. package/dist/_node_modules/@nodelib/fs.stat/out/settings.cjs +1 -1
  12. package/dist/_node_modules/@nodelib/fs.stat/out/settings.js +1 -1
  13. package/dist/_node_modules/@nodelib/fs.walk/out/index.cjs +3 -3
  14. package/dist/_node_modules/@nodelib/fs.walk/out/index.js +3 -3
  15. package/dist/_node_modules/@nodelib/fs.walk/out/providers/async.cjs +1 -1
  16. package/dist/_node_modules/@nodelib/fs.walk/out/providers/async.js +1 -1
  17. package/dist/_node_modules/@nodelib/fs.walk/out/providers/sync.cjs +1 -1
  18. package/dist/_node_modules/@nodelib/fs.walk/out/providers/sync.js +1 -1
  19. package/dist/_node_modules/@nodelib/fs.walk/out/settings.cjs +1 -1
  20. package/dist/_node_modules/@nodelib/fs.walk/out/settings.js +1 -1
  21. package/dist/lib/framework.cjs +8 -4
  22. package/dist/lib/framework.cjs.map +1 -1
  23. package/dist/lib/framework.d.ts +7 -2
  24. package/dist/lib/framework.js +8 -4
  25. package/dist/lib/framework.js.map +1 -1
  26. package/dist/lib/starters.d.ts +2 -0
  27. package/dist/packages/init/package.json.cjs +4 -4
  28. package/dist/packages/init/package.json.js +4 -4
  29. package/package.json +4 -4
  30. package/src/SliceMachineInitProcess.ts +24 -3
  31. package/src/lib/framework.ts +17 -7
  32. package/src/lib/starters.ts +30 -0
@@ -0,0 +1,2 @@
1
+ import { StarterID } from "@slicemachine/manager";
2
+ export declare const detectStarterId: (cwd: string) => Promise<StarterID | undefined>;
@@ -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.1.1-dev-page-types-m2.0";
4
+ const version = "2.1.1-dev-hotfixes.2";
5
5
  const description = "Init Prismic Slice Machine in your project";
6
6
  const keywords = [
7
7
  "typescript",
@@ -54,7 +54,7 @@ const scripts = {
54
54
  const dependencies = {
55
55
  "@antfu/ni": "^0.20.0",
56
56
  "@lihbr/listr-update-renderer": "^0.5.3",
57
- "@slicemachine/manager": "0.3.1-dev-page-types-m2.0",
57
+ "@slicemachine/manager": "0.3.1-dev-hotfixes.2",
58
58
  chalk: "^4.1.2",
59
59
  globby: "^13.1.3",
60
60
  listr: "^0.14.3",
@@ -66,7 +66,7 @@ const dependencies = {
66
66
  };
67
67
  const devDependencies = {
68
68
  "@size-limit/preset-small-lib": "^8.2.4",
69
- "@slicemachine/plugin-kit": "0.3.1-dev-page-types-m2.0",
69
+ "@slicemachine/plugin-kit": "0.3.1-dev-hotfixes.2",
70
70
  "@types/listr": "^0.14.4",
71
71
  "@types/prompts": "^2.4.3",
72
72
  "@types/semver": "^7.3.13",
@@ -92,7 +92,7 @@ const devDependencies = {
92
92
  "vite-plugin-sdk": "^0.1.1",
93
93
  vitest: "^0.27.3"
94
94
  };
95
- const gitHead = "f2b7d4e6e5171c208968a12ce8ac011aa052653a";
95
+ const gitHead = "7728667e91790de6be5e8341607b1f70b3f55546";
96
96
  const pkg = {
97
97
  name,
98
98
  version,
@@ -1,5 +1,5 @@
1
1
  const name = "@slicemachine/init";
2
- const version = "2.1.1-dev-page-types-m2.0";
2
+ const version = "2.1.1-dev-hotfixes.2";
3
3
  const description = "Init Prismic Slice Machine in your project";
4
4
  const keywords = [
5
5
  "typescript",
@@ -52,7 +52,7 @@ const scripts = {
52
52
  const dependencies = {
53
53
  "@antfu/ni": "^0.20.0",
54
54
  "@lihbr/listr-update-renderer": "^0.5.3",
55
- "@slicemachine/manager": "0.3.1-dev-page-types-m2.0",
55
+ "@slicemachine/manager": "0.3.1-dev-hotfixes.2",
56
56
  chalk: "^4.1.2",
57
57
  globby: "^13.1.3",
58
58
  listr: "^0.14.3",
@@ -64,7 +64,7 @@ const dependencies = {
64
64
  };
65
65
  const devDependencies = {
66
66
  "@size-limit/preset-small-lib": "^8.2.4",
67
- "@slicemachine/plugin-kit": "0.3.1-dev-page-types-m2.0",
67
+ "@slicemachine/plugin-kit": "0.3.1-dev-hotfixes.2",
68
68
  "@types/listr": "^0.14.4",
69
69
  "@types/prompts": "^2.4.3",
70
70
  "@types/semver": "^7.3.13",
@@ -90,7 +90,7 @@ const devDependencies = {
90
90
  "vite-plugin-sdk": "^0.1.1",
91
91
  vitest: "^0.27.3"
92
92
  };
93
- const gitHead = "f2b7d4e6e5171c208968a12ce8ac011aa052653a";
93
+ const gitHead = "7728667e91790de6be5e8341607b1f70b3f55546";
94
94
  const pkg = {
95
95
  name,
96
96
  version,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@slicemachine/init",
3
- "version": "2.1.1-dev-page-types-m2.0",
3
+ "version": "2.1.1-dev-hotfixes.2",
4
4
  "description": "Init Prismic Slice Machine in your project",
5
5
  "keywords": [
6
6
  "typescript",
@@ -53,7 +53,7 @@
53
53
  "dependencies": {
54
54
  "@antfu/ni": "^0.20.0",
55
55
  "@lihbr/listr-update-renderer": "^0.5.3",
56
- "@slicemachine/manager": "0.3.1-dev-page-types-m2.0",
56
+ "@slicemachine/manager": "0.3.1-dev-hotfixes.2",
57
57
  "chalk": "^4.1.2",
58
58
  "globby": "^13.1.3",
59
59
  "listr": "^0.14.3",
@@ -65,7 +65,7 @@
65
65
  },
66
66
  "devDependencies": {
67
67
  "@size-limit/preset-small-lib": "^8.2.4",
68
- "@slicemachine/plugin-kit": "0.3.1-dev-page-types-m2.0",
68
+ "@slicemachine/plugin-kit": "0.3.1-dev-hotfixes.2",
69
69
  "@types/listr": "^0.14.4",
70
70
  "@types/prompts": "^2.4.3",
71
71
  "@types/semver": "^7.3.13",
@@ -91,5 +91,5 @@
91
91
  "vite-plugin-sdk": "^0.1.1",
92
92
  "vitest": "^0.27.3"
93
93
  },
94
- "gitHead": "f2b7d4e6e5171c208968a12ce8ac011aa052653a"
94
+ "gitHead": "7728667e91790de6be5e8341607b1f70b3f55546"
95
95
  }
@@ -66,6 +66,8 @@ type SliceMachineInitProcessContext = {
66
66
  projectInitialization?: {
67
67
  patchedScript?: boolean;
68
68
  };
69
+ // TODO(DT-1386): Handle starter detection for Segment
70
+ // starterID?: StarterID;
69
71
  };
70
72
 
71
73
  export class SliceMachineInitProcess {
@@ -149,7 +151,7 @@ export class SliceMachineInitProcess {
149
151
 
150
152
  await this.manager.telemetry.track({
151
153
  event: "command:init:end",
152
- framework: this.context.framework.prismicName,
154
+ framework: this.context.framework.sliceMachineTelemetryID,
153
155
  repository: this.context.repository.domain,
154
156
  success: true,
155
157
  });
@@ -220,7 +222,7 @@ export class SliceMachineInitProcess {
220
222
 
221
223
  return this.manager.telemetry.track({
222
224
  event: "command:init:end",
223
- framework: this.context.framework?.prismicName ?? "unknown",
225
+ framework: this.context.framework?.sliceMachineTelemetryID ?? "unknown",
224
226
  repository: this.context.repository?.domain,
225
227
  success: false,
226
228
  error: safeError,
@@ -268,6 +270,23 @@ export class SliceMachineInitProcess {
268
270
  )}`;
269
271
  },
270
272
  },
273
+ // TODO(DT-1386): Handle starter detection for Segment
274
+ // {
275
+ // title: "Detecting starter...",
276
+ // task: async (_, task) => {
277
+ // this.context.starterID = await detectStarterId(
278
+ // this.manager.cwd,
279
+ // );
280
+
281
+ // if (this.context.starterID) {
282
+ // task.title = `Detected starter ${chalk.cyan(
283
+ // this.context.starterID,
284
+ // )}`;
285
+ // } else {
286
+ // task.title = "No starter detected";
287
+ // }
288
+ // },
289
+ // },
271
290
  ]),
272
291
  },
273
292
  ]);
@@ -683,7 +702,9 @@ ${chalk.cyan("?")} Your Prismic repository name`.replace("\n", ""),
683
702
 
684
703
  await this.manager.prismicRepository.create({
685
704
  domain: this.context.repository.domain,
686
- framework: this.context.framework.prismicName,
705
+ framework: this.context.framework.wroomTelemetryID,
706
+ // TODO(DT-1386): Handle starter detection for Segment
707
+ // starterID: this.context.starterID,
687
708
  });
688
709
 
689
710
  this.context.repository.exists = true;
@@ -1,8 +1,9 @@
1
1
  import { readFile } from "node:fs/promises";
2
2
  import { join } from "node:path";
3
-
4
3
  import semver from "semver";
5
4
 
5
+ import { FrameworkWroomTelemetryID } from "@slicemachine/manager";
6
+
6
7
  import { version as pkgVersion } from "../../package.json";
7
8
 
8
9
  export type Framework = {
@@ -12,9 +13,14 @@ export type Framework = {
12
13
  name: string;
13
14
 
14
15
  /**
15
- * Framework's name sent to Prismic
16
+ * Framework 's id sent to Segment from Slice Machine
17
+ */
18
+ sliceMachineTelemetryID: "next-11-13" | "nuxt-2" | "nuxt-3" | "universal";
19
+
20
+ /**
21
+ * Framework's id sent to Segment from wroom.
16
22
  */
17
- prismicName: string;
23
+ wroomTelemetryID: FrameworkWroomTelemetryID;
18
24
 
19
25
  /**
20
26
  * A link to the Prismic documentation for the framework
@@ -60,7 +66,8 @@ const DEFAULT_DEV_DEPENDENCIES: Record<string, string> = {
60
66
  export const FRAMEWORKS: Record<string, Framework> = {
61
67
  "nuxt-2": {
62
68
  name: "Nuxt 2",
63
- prismicName: "nuxt-2",
69
+ sliceMachineTelemetryID: "nuxt-2",
70
+ wroomTelemetryID: "nuxt",
64
71
  prismicDocumentation: "https://prismic.dev/init/nuxt-2",
65
72
  adapterName: "@slicemachine/adapter-nuxt2",
66
73
  compatibility: {
@@ -73,7 +80,8 @@ export const FRAMEWORKS: Record<string, Framework> = {
73
80
  },
74
81
  "nuxt-3": {
75
82
  name: "Nuxt 3",
76
- prismicName: "nuxt-3",
83
+ sliceMachineTelemetryID: "nuxt-3",
84
+ wroomTelemetryID: "nuxt",
77
85
  prismicDocumentation: "https://prismic.dev/init/nuxt-3",
78
86
  adapterName: "@slicemachine/adapter-nuxt",
79
87
  compatibility: {
@@ -86,7 +94,8 @@ export const FRAMEWORKS: Record<string, Framework> = {
86
94
  },
87
95
  "next-11-13": {
88
96
  name: "Next.js 11-13",
89
- prismicName: "next-11-13",
97
+ sliceMachineTelemetryID: "next-11-13",
98
+ wroomTelemetryID: "next",
90
99
  prismicDocumentation: "https://prismic.dev/init/next-11-13",
91
100
  adapterName: "@slicemachine/adapter-next",
92
101
  compatibility: {
@@ -104,7 +113,8 @@ export const FRAMEWORKS: Record<string, Framework> = {
104
113
  */
105
114
  export const UNIVERSAL: Framework = {
106
115
  name: "universal (no framework)",
107
- prismicName: "universal",
116
+ sliceMachineTelemetryID: "universal",
117
+ wroomTelemetryID: "other",
108
118
  prismicDocumentation: "https://prismic.dev/init/universal",
109
119
  adapterName: "@slicemachine/adapter-universal",
110
120
  compatibility: {},
@@ -0,0 +1,30 @@
1
+ import { readFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+
4
+ import { StarterID } from "@slicemachine/manager";
5
+
6
+ const STARTERS_REPOSITORY_NAME_TO_ID: Record<string, StarterID> = {
7
+ "nextjs-starter-prismic-multi-page": "next_multi_page",
8
+ "nextjs-starter-prismic-blog": "next_blog",
9
+ "nextjs-starter-prismic-multi-language": "next_multi_lang",
10
+ "nuxt-starter-prismic-multi-page": "nuxt_multi_page",
11
+ "nuxt-starter-prismic-blog": "nuxt_blog",
12
+ "nuxt-starter-prismic-multi-language": "nuxt_multi_lang",
13
+ };
14
+
15
+ export const detectStarterId = async (
16
+ cwd: string,
17
+ ): Promise<StarterID | undefined> => {
18
+ const path = join(cwd, "package.json");
19
+
20
+ try {
21
+ const pkg = JSON.parse(await readFile(path, "utf-8"));
22
+
23
+ return STARTERS_REPOSITORY_NAME_TO_ID[pkg.name];
24
+ } catch (error) {
25
+ throw new Error(
26
+ `Failed to read project's \`package.json\` at \`${path}\``,
27
+ { cause: error },
28
+ );
29
+ }
30
+ };