attio 0.0.1-experimental.20240523.4 → 0.0.1-experimental.20240606

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 (74) hide show
  1. package/lib/build/client/create-client-build-config.d.ts +6 -0
  2. package/lib/build/client/create-client-build-config.d.ts.map +1 -0
  3. package/lib/build/client/create-client-build-config.js +26 -0
  4. package/lib/build/client/create-client-build-config.js.map +1 -0
  5. package/lib/build/client/generate-client-entry.d.ts +6 -0
  6. package/lib/build/client/generate-client-entry.d.ts.map +1 -0
  7. package/lib/build/client/generate-client-entry.js +30 -0
  8. package/lib/build/client/generate-client-entry.js.map +1 -0
  9. package/lib/build/get-module-hash.d.ts +2 -0
  10. package/lib/build/get-module-hash.d.ts.map +1 -0
  11. package/lib/build/get-module-hash.js +5 -0
  12. package/lib/build/get-module-hash.js.map +1 -0
  13. package/lib/build/proxy-server-modules-plugin.d.ts +5 -0
  14. package/lib/build/proxy-server-modules-plugin.d.ts.map +1 -0
  15. package/lib/build/proxy-server-modules-plugin.js +35 -0
  16. package/lib/build/proxy-server-modules-plugin.js.map +1 -0
  17. package/lib/build/server/create-server-build-config.d.ts +3 -0
  18. package/lib/build/server/create-server-build-config.d.ts.map +1 -0
  19. package/lib/build/server/create-server-build-config.js +22 -0
  20. package/lib/build/server/create-server-build-config.js.map +1 -0
  21. package/lib/build/server/generate-server-entry.d.ts +5 -0
  22. package/lib/build/server/generate-server-entry.d.ts.map +1 -0
  23. package/lib/build/server/generate-server-entry.js +46 -0
  24. package/lib/build/server/generate-server-entry.js.map +1 -0
  25. package/lib/build.d.ts +2 -3
  26. package/lib/build.d.ts.map +1 -1
  27. package/lib/build.js +10 -51
  28. package/lib/build.js.map +1 -1
  29. package/lib/commands/dev.d.ts +3 -0
  30. package/lib/commands/dev.d.ts.map +1 -0
  31. package/lib/commands/{watch.js → dev.js} +9 -5
  32. package/lib/commands/dev.js.map +1 -0
  33. package/lib/commands/scaffold.d.ts.map +1 -1
  34. package/lib/commands/scaffold.js +16 -12
  35. package/lib/commands/scaffold.js.map +1 -1
  36. package/lib/machines/build-machine.d.ts.map +1 -1
  37. package/lib/machines/build-machine.js +15 -3
  38. package/lib/machines/build-machine.js.map +1 -1
  39. package/lib/machines/{watch-machine.d.ts → dev-machine.d.ts} +18 -11
  40. package/lib/machines/dev-machine.d.ts.map +1 -0
  41. package/lib/machines/{watch-machine.js → dev-machine.js} +31 -9
  42. package/lib/machines/dev-machine.js.map +1 -0
  43. package/lib/machines/scaffold-machine.d.ts +4 -1
  44. package/lib/machines/scaffold-machine.d.ts.map +1 -1
  45. package/lib/machines/scaffold-machine.js +122 -106
  46. package/lib/machines/scaffold-machine.js.map +1 -1
  47. package/lib/templates/common/README.md +6 -0
  48. package/lib/templates/javascript/.eslintignore +0 -1
  49. package/lib/templates/javascript/eslint.config.js +43 -0
  50. package/lib/templates/javascript/package.json +8 -6
  51. package/lib/templates/javascript/{counter-action.jsx → src/app/record/counter-action.jsx} +1 -1
  52. package/lib/templates/typescript/.eslintignore +0 -1
  53. package/lib/templates/typescript/eslint.config.js +50 -0
  54. package/lib/templates/typescript/package.json +11 -6
  55. package/lib/templates/typescript/{counter-action.tsx → src/app/record/counter-action.tsx} +1 -1
  56. package/lib/templates/typescript/tsconfig.json +2 -6
  57. package/lib/util/typescript.d.ts +1 -1
  58. package/lib/util/typescript.d.ts.map +1 -1
  59. package/lib/util/typescript.js +5 -1
  60. package/lib/util/typescript.js.map +1 -1
  61. package/lib/util/upload-bundle.d.ts +2 -0
  62. package/lib/util/upload-bundle.d.ts.map +1 -0
  63. package/lib/util/upload-bundle.js +152 -0
  64. package/lib/util/upload-bundle.js.map +1 -0
  65. package/package.json +4 -1
  66. package/lib/commands/watch.d.ts +0 -3
  67. package/lib/commands/watch.d.ts.map +0 -1
  68. package/lib/commands/watch.js.map +0 -1
  69. package/lib/machines/watch-machine.d.ts.map +0 -1
  70. package/lib/machines/watch-machine.js.map +0 -1
  71. package/lib/templates/javascript/eslint.cjs +0 -1
  72. package/lib/templates/typescript/eslint.cjs +0 -6
  73. /package/lib/templates/javascript/{actions.jsx → src/app/record/actions.jsx} +0 -0
  74. /package/lib/templates/typescript/{actions.tsx → src/app/record/actions.tsx} +0 -0
@@ -13,7 +13,7 @@ interface Context {
13
13
  };
14
14
  lastSuccess?: Date;
15
15
  }
16
- export declare const watchMachine: import("xstate").StateMachine<Context, {
16
+ export declare const devMachine: import("xstate").StateMachine<Context, {
17
17
  type: "Build Contexts Prepared";
18
18
  buildContexts: Array<esbuild.BuildContext>;
19
19
  } | {
@@ -26,9 +26,6 @@ export declare const watchMachine: import("xstate").StateMachine<Context, {
26
26
  type: "TypeScript Error";
27
27
  errors: Array<TypeScriptError>;
28
28
  time: Date;
29
- } | {
30
- type: "Log";
31
- message: string;
32
29
  } | {
33
30
  type: "JavaScript Success";
34
31
  time: Date;
@@ -36,7 +33,10 @@ export declare const watchMachine: import("xstate").StateMachine<Context, {
36
33
  type: "TypeScript Success";
37
34
  time: Date;
38
35
  }, {
39
- [x: string]: import("xstate").ActorRef<import("xstate").CallbackSnapshot<import("xstate").NonReducibleUnknown>, import("xstate").EventObject, import("xstate").EventObject> | undefined;
36
+ [x: string]: import("xstate").ActorRef<import("xstate").CallbackSnapshot<import("xstate").NonReducibleUnknown>, import("xstate").EventObject, import("xstate").EventObject> | import("xstate").ActorRef<import("xstate").PromiseSnapshot<void, import("xstate").NonReducibleUnknown>, {
37
+ [k: string]: unknown;
38
+ type: string;
39
+ }, import("xstate").EventObject> | undefined;
40
40
  }, import("xstate").Values<{
41
41
  build: {
42
42
  src: "build";
@@ -48,6 +48,11 @@ export declare const watchMachine: import("xstate").StateMachine<Context, {
48
48
  logic: import("xstate").CallbackActorLogic<import("xstate").EventObject, import("xstate").NonReducibleUnknown>;
49
49
  id: string | undefined;
50
50
  };
51
+ upload: {
52
+ src: "upload";
53
+ logic: import("xstate").PromiseActorLogic<void, import("xstate").NonReducibleUnknown>;
54
+ id: string | undefined;
55
+ };
51
56
  validateTypeScript: {
52
57
  src: "validateTypeScript";
53
58
  logic: import("xstate").CallbackActorLogic<import("xstate").EventObject, import("xstate").NonReducibleUnknown>;
@@ -103,10 +108,10 @@ export declare const watchMachine: import("xstate").StateMachine<Context, {
103
108
  params: unknown;
104
109
  };
105
110
  }>, never, Required<{
111
+ TypeScript?: "Validating" | "Errored" | "No TypeScript Errors" | undefined;
106
112
  JavaScript?: "Preparing" | {
107
- Watching?: "Building" | "Errored" | "No JavaScript Errors" | undefined;
113
+ Watching?: "Building" | "Errored" | "No JavaScript Errors" | "Uploading" | undefined;
108
114
  } | undefined;
109
- TypeScript?: "Validating" | "Errored" | "No TypeScript Errors" | undefined;
110
115
  }>, string, import("xstate").NonReducibleUnknown, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, import("xstate").ResolveTypegenMeta<import("xstate").TypegenDisabled, {
111
116
  type: "Build Contexts Prepared";
112
117
  buildContexts: Array<esbuild.BuildContext>;
@@ -120,9 +125,6 @@ export declare const watchMachine: import("xstate").StateMachine<Context, {
120
125
  type: "TypeScript Error";
121
126
  errors: Array<TypeScriptError>;
122
127
  time: Date;
123
- } | {
124
- type: "Log";
125
- message: string;
126
128
  } | {
127
129
  type: "JavaScript Success";
128
130
  time: Date;
@@ -140,6 +142,11 @@ export declare const watchMachine: import("xstate").StateMachine<Context, {
140
142
  logic: import("xstate").CallbackActorLogic<import("xstate").EventObject, import("xstate").NonReducibleUnknown>;
141
143
  id: string | undefined;
142
144
  };
145
+ upload: {
146
+ src: "upload";
147
+ logic: import("xstate").PromiseActorLogic<void, import("xstate").NonReducibleUnknown>;
148
+ id: string | undefined;
149
+ };
143
150
  validateTypeScript: {
144
151
  src: "validateTypeScript";
145
152
  logic: import("xstate").CallbackActorLogic<import("xstate").EventObject, import("xstate").NonReducibleUnknown>;
@@ -196,4 +203,4 @@ export declare const watchMachine: import("xstate").StateMachine<Context, {
196
203
  };
197
204
  }>, never, string, import("xstate").EventObject>>;
198
205
  export {};
199
- //# sourceMappingURL=watch-machine.d.ts.map
206
+ //# sourceMappingURL=dev-machine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-machine.d.ts","sourceRoot":"","sources":["../../src/machines/dev-machine.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAA;AAIlC,OAAO,EACH,UAAU,EAMb,MAAM,aAAa,CAAA;AAKpB,OAAO,EACH,eAAe,EAIlB,MAAM,uBAAuB,CAAA;AAG9B,UAAU,OAAO;IACb,aAAa,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;IAC3C,mBAAmB,CAAC,EAAE;QAAC,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,UAAU,CAAA;KAAC,CAAA;IACrD,mBAAmB,CAAC,EAAE;QAAC,IAAI,EAAE,IAAI,CAAC;QAAC,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,CAAA;KAAC,CAAA;IAClE,WAAW,CAAC,EAAE,IAAI,CAAA;CACrB;AAUD,eAAO,MAAM,UAAU;UAPV,yBAAyB;mBAAiB,MAAM,QAAQ,YAAY,CAAC;;UACrE,QAAQ;;UACR,kBAAkB;WAAS,UAAU;UAAQ,IAAI;;UACjD,kBAAkB;YAAU,MAAM,eAAe,CAAC;UAAQ,IAAI;;UAC9D,oBAAoB;UAAQ,IAAI;;UAChC,oBAAoB;UAAQ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAoHU,MAAM,QAAQ,YAAY,CAAC;;;;;;mBAI7B,UAAU;kBAAQ,IAAI;;;;;;oBAMrB,MAAM,eAAe,CAAC;kBAAQ,IAAI;;;;;;kBAM5C,IAAI;;;;;;;;;;;;;;;;;;UAzInC,yBAAyB;mBAAiB,MAAM,QAAQ,YAAY,CAAC;;UACrE,QAAQ;;UACR,kBAAkB;WAAS,UAAU;UAAQ,IAAI;;UACjD,kBAAkB;YAAU,MAAM,eAAe,CAAC;UAAQ,IAAI;;UAC9D,oBAAoB;UAAQ,IAAI;;UAChC,oBAAoB;UAAQ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAoHU,MAAM,QAAQ,YAAY,CAAC;;;;;;mBAI7B,UAAU;kBAAQ,IAAI;;;;;;oBAMrB,MAAM,eAAe,CAAC;kBAAQ,IAAI;;;;;;kBAM5C,IAAI;;;;;;;;;;;;iDAqI9C,CAAA"}
@@ -1,10 +1,15 @@
1
1
  import chokidar from "chokidar";
2
2
  import * as esbuild from "esbuild";
3
3
  import path from "path";
4
- import { assign, setup, fromCallback } from "xstate";
5
- import { HARDCODED_OUTPUT_FILES, createBuildConfig, errorSchema, generateEntry, getAppDir, } from "../build.js";
4
+ import { assign, setup, fromCallback, fromPromise } from "xstate";
5
+ import { HARDCODED_OUTPUT_FILES, HARDCODED_SERVER_OUTPUT_FILES, ROUTES, errorSchema, getAppDir, } from "../build.js";
6
+ import { createClientBuildConfig } from "../build/client/create-client-build-config.js";
7
+ import { generateClientEntry } from "../build/client/generate-client-entry.js";
8
+ import { createServerBuildConfig } from "../build/server/create-server-build-config.js";
9
+ import { generateServerEntry } from "../build/server/generate-server-entry.js";
6
10
  import { getDiagnostics, readConfig, typeScriptErrorSchema, } from "../util/typescript.js";
7
- export const watchMachine = setup({
11
+ import { uploadBundle } from "../util/upload-bundle.js";
12
+ export const devMachine = setup({
8
13
  types: {
9
14
  context: {},
10
15
  events: {},
@@ -17,8 +22,13 @@ export const watchMachine = setup({
17
22
  prepareBuildContext: fromCallback(({ sendBack }) => {
18
23
  let buildContexts;
19
24
  const prepare = async () => {
20
- const contents = await generateEntry();
21
- buildContexts = await Promise.all(HARDCODED_OUTPUT_FILES.map(async (outfile) => esbuild.context({ ...createBuildConfig(contents), outfile })));
25
+ const appDir = getAppDir();
26
+ const clientPromise = generateClientEntry({ appDir, routes: ROUTES }).then(async (contents) => Promise.all(HARDCODED_OUTPUT_FILES.map(async (outfile) => esbuild.context({
27
+ ...createClientBuildConfig({ contents, appDir }),
28
+ outfile,
29
+ }))));
30
+ const serverPromise = generateServerEntry({ appDir }).then(async (contents) => Promise.all(HARDCODED_SERVER_OUTPUT_FILES.map(async (outfile) => esbuild.context({ ...createServerBuildConfig(contents), outfile }))));
31
+ buildContexts = (await Promise.all([clientPromise, serverPromise])).flat();
22
32
  sendBack({ type: "Build Contexts Prepared", buildContexts });
23
33
  };
24
34
  prepare();
@@ -45,11 +55,17 @@ export const watchMachine = setup({
45
55
  };
46
56
  build();
47
57
  }),
58
+ upload: fromPromise(async () => {
59
+ await uploadBundle(HARDCODED_OUTPUT_FILES[0]);
60
+ }),
48
61
  validateTypeScript: fromCallback(({ sendBack }) => {
49
62
  const validate = async () => {
50
63
  var _a;
51
64
  try {
52
65
  const program = await readConfig(path.resolve("tsconfig.json"));
66
+ if (program === "Not a TypeScript project") {
67
+ return;
68
+ }
53
69
  const errors = await getDiagnostics(program);
54
70
  if (errors.length) {
55
71
  sendBack({ type: "TypeScript Error", errors, time: new Date() });
@@ -109,7 +125,7 @@ export const watchMachine = setup({
109
125
  },
110
126
  }).createMachine({
111
127
  context: {},
112
- id: "Watch Machine",
128
+ id: "Dev Machine",
113
129
  type: "parallel",
114
130
  states: {
115
131
  TypeScript: {
@@ -178,7 +194,7 @@ export const watchMachine = setup({
178
194
  },
179
195
  "JavaScript Success": [
180
196
  {
181
- target: "No JavaScript Errors",
197
+ target: "Uploading",
182
198
  actions: [
183
199
  { type: "clearLastJavaScriptError" },
184
200
  { type: "setLastSuccess", params: ({ event }) => event },
@@ -187,7 +203,7 @@ export const watchMachine = setup({
187
203
  guard: "no TypeScript error",
188
204
  },
189
205
  {
190
- target: "No JavaScript Errors",
206
+ target: "Uploading",
191
207
  actions: "clearLastJavaScriptError",
192
208
  reenter: true,
193
209
  },
@@ -199,6 +215,12 @@ export const watchMachine = setup({
199
215
  },
200
216
  },
201
217
  "Errored": {},
218
+ "Uploading": {
219
+ invoke: {
220
+ src: "upload",
221
+ onDone: "No JavaScript Errors",
222
+ },
223
+ },
202
224
  },
203
225
  initial: "Building",
204
226
  on: {
@@ -215,4 +237,4 @@ export const watchMachine = setup({
215
237
  src: "watch",
216
238
  },
217
239
  });
218
- //# sourceMappingURL=watch-machine.js.map
240
+ //# sourceMappingURL=dev-machine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-machine.js","sourceRoot":"","sources":["../../src/machines/dev-machine.ts"],"names":[],"mappings":"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"}
@@ -189,7 +189,10 @@ export declare const scaffoldMachine: import("xstate").StateMachine<Context, {
189
189
  params: {
190
190
  name: string;
191
191
  };
192
- }, never, "Error" | "Success" | "Building" | "Check For Name Argument" | "Validating Name" | "Ask For Language" | "Ask For Name" | "Detecting Package Managers" | "Ask For Package Manager" | "Ask For Outlets" | "Creating Project", string, Pick<Context, "name">, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, import("xstate").ResolveTypegenMeta<import("xstate").TypegenDisabled, {
192
+ }, never, Required<{
193
+ Scaffold?: "Error" | "Success" | "Building" | "Validating Name" | "Ask For Language" | "Ask For Name" | "Check For Name Argument" | "Detecting Package Managers" | "Ask For Package Manager" | "Ask For Outlets" | "Creating Project" | undefined;
194
+ Logger?: {} | undefined;
195
+ }>, string, Pick<Context, "name">, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, import("xstate").ResolveTypegenMeta<import("xstate").TypegenDisabled, {
193
196
  type: "Choose Language";
194
197
  language: Language;
195
198
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold-machine.d.ts","sourceRoot":"","sources":["../../src/machines/scaffold-machine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffold-machine.d.ts","sourceRoot":"","sources":["../../src/machines/scaffold-machine.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,SAAS;;;;;;EAGZ,CAAA;AACV,eAAO,MAAM,eAAe;;;;;;;;;;;;EAKlB,CAAA;AACV,eAAO,MAAM,OAAO;;;;;;EAGV,CAAA;AACV,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAC1D,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AACtE,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEtD,UAAU,OAAO;IACb,wBAAwB,EAAE,KAAK,CAAC,cAAc,CAAC,CAAA;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IACtB,cAAc,CAAC,EAAE,cAAc,CAAA;CAClC;AAED,KAAK,KAAK,GACJ;IAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAA;CAAC,GAC7C;IAAC,IAAI,EAAE,gBAAgB,CAAC;IAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;CAAC,GAChD;IAAC,IAAI,EAAE,wBAAwB,CAAC;IAAC,cAAc,EAAE,cAAc,CAAA;CAAC,GAChE;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,GAC9B;IAAC,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,GACrC;IAAC,IAAI,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,GAC9B;IAAC,IAAI,EAAE,gCAAgC,CAAC;IAAC,eAAe,EAAE,KAAK,CAAC,cAAc,CAAC,CAAA;CAAC,GAChF;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAC,GAChB;IAAC,IAAI,EAAE,SAAS,CAAA;CAAC,GACjB;IAAC,IAAI,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,GACnC;IAAC,IAAI,EAAE,YAAY,CAAA;CAAC,CAAA;AAE1B,eAAO,MAAM,eAAe;UAZf,iBAAiB;cAAY,QAAQ;;UACrC,gBAAgB;aAAW,MAAM,MAAM,CAAC;;UACxC,wBAAwB;oBAAkB,cAAc;;UACxD,OAAO;WAAS,MAAM;;UACtB,cAAc;WAAS,MAAM;;UAC7B,KAAK;aAAW,MAAM;;UACtB,gCAAgC;qBAAmB,MAAM,cAAc,CAAC;;UACxE,QAAQ;;UACR,SAAS;;UACT,aAAa;UAAQ,MAAM;;UAC3B,YAAY;;;cA+DwB,MAAM;;;;;;;;;;;;;;;;;;;;;kBAAN,MAAM;;;;;;;;mBAsBhB,MAAM;;;;;;qBAkBE,MAAM;;;;;;;;;;sCA1Bc,MAAM,cAAc,CAAC;;;;;;6BAIpB,MAAM,cAAc,CAAC;;;;;;sBAO5C,QAAQ;;;;;;4BAGI,cAAc;;;;;;kBAGlC,MAAM;;;;;;qBAGA,MAAM,MAAM,CAAC;;;;;;kBAGnB,MAAM;;;;;;cAOH,MAAM;;;;;;UArHjC,iBAAiB;cAAY,QAAQ;;UACrC,gBAAgB;aAAW,MAAM,MAAM,CAAC;;UACxC,wBAAwB;oBAAkB,cAAc;;UACxD,OAAO;WAAS,MAAM;;UACtB,cAAc;WAAS,MAAM;;UAC7B,KAAK;aAAW,MAAM;;UACtB,gCAAgC;qBAAmB,MAAM,cAAc,CAAC;;UACxE,QAAQ;;UACR,SAAS;;UACT,aAAa;UAAQ,MAAM;;UAC3B,YAAY;;;;;;;;;;;;;;;;;;;;kBA+DwB,MAAM;;;;;;;;mBAsBhB,MAAM;;;;;;qBAkBE,MAAM;;;;;;;;;;sCA1Bc,MAAM,cAAc,CAAC;;;;;;6BAIpB,MAAM,cAAc,CAAC;;;;;;sBAO5C,QAAQ;;;;;;4BAGI,cAAc;;;;;;kBAGlC,MAAM;;;;;;qBAGA,MAAM,MAAM,CAAC;;;;;;kBAGnB,MAAM;;;;;;cAOH,MAAM;;gDA0K5C,CAAA"}
@@ -131,129 +131,145 @@ export const scaffoldMachine = setup({
131
131
  ...input,
132
132
  }),
133
133
  id: "Scaffold Machine",
134
- initial: "Check For Name Argument",
134
+ type: "parallel",
135
135
  states: {
136
- "Validating Name": {
137
- on: {
138
- "Valid Name": {
139
- target: "Ask For Language",
140
- reenter: true,
136
+ Scaffold: {
137
+ states: {
138
+ "Validating Name": {
139
+ on: {
140
+ "Valid Name": {
141
+ target: "Ask For Language",
142
+ reenter: true,
143
+ },
144
+ "Invalid Name": {
145
+ target: "Ask For Name",
146
+ actions: { type: "setError", params: ({ event }) => event },
147
+ },
148
+ },
149
+ invoke: {
150
+ input: ({ context }) => ({ name: context.name }),
151
+ src: "validateName",
152
+ },
141
153
  },
142
- "Invalid Name": {
143
- target: "Ask For Name",
144
- actions: { type: "setError", params: ({ event }) => event },
154
+ "Check For Name Argument": {
155
+ always: [
156
+ {
157
+ target: "Validating Name",
158
+ guard: { type: "have name", params: ({ context }) => context },
159
+ description: `Name may have been provided via CLI arg`,
160
+ },
161
+ {
162
+ target: "Ask For Name",
163
+ reenter: true,
164
+ },
165
+ ],
145
166
  },
146
- },
147
- invoke: {
148
- input: ({ context }) => ({ name: context.name }),
149
- src: "validateName",
150
- },
151
- },
152
- "Check For Name Argument": {
153
- always: [
154
- {
155
- target: "Validating Name",
156
- guard: { type: "have name", params: ({ context }) => context },
157
- description: `Name may have been provided via CLI arg`,
167
+ "Ask For Name": {
168
+ on: {
169
+ "Update Name": {
170
+ target: "Ask For Name",
171
+ actions: [
172
+ { type: "setName", params: ({ event }) => event },
173
+ { type: "clearError" },
174
+ ],
175
+ },
176
+ "Submit": [
177
+ {
178
+ target: "Validating Name",
179
+ guard: { type: "have name", params: ({ context }) => context },
180
+ actions: { type: "slugifyName", params: ({ context }) => context },
181
+ },
182
+ "Ask For Name",
183
+ ],
184
+ },
158
185
  },
159
- {
160
- target: "Ask For Name",
161
- reenter: true,
186
+ "Ask For Language": {
187
+ on: {
188
+ "Choose Language": {
189
+ target: "Detecting Package Managers",
190
+ actions: { type: "setLanguage", params: ({ event }) => event },
191
+ },
192
+ },
162
193
  },
163
- ],
164
- },
165
- "Ask For Name": {
166
- on: {
167
- "Update Name": {
168
- target: "Ask For Name",
169
- actions: [{ type: "setName", params: ({ event }) => event }, { type: "clearError" }],
194
+ "Detecting Package Managers": {
195
+ invoke: {
196
+ src: "detectPackageManagers",
197
+ },
198
+ on: {
199
+ "Set Available Package Managers": {
200
+ target: "Ask For Package Manager",
201
+ actions: [
202
+ { type: "setAvailablePackageManagers", params: ({ event }) => event },
203
+ { type: "selectFirstPackageManager", params: ({ context }) => context },
204
+ ],
205
+ },
206
+ },
170
207
  },
171
- "Submit": [
172
- {
173
- target: "Validating Name",
174
- guard: { type: "have name", params: ({ context }) => context },
175
- actions: { type: "slugifyName", params: ({ context }) => context },
208
+ "Ask For Package Manager": {
209
+ on: {
210
+ "Choose Package Manager": {
211
+ target: "Ask For Outlets",
212
+ actions: { type: "setPackageManager", params: ({ event }) => event },
213
+ },
176
214
  },
177
- "Ask For Name",
178
- ],
179
- },
180
- },
181
- "Ask For Language": {
182
- on: {
183
- "Choose Language": {
184
- target: "Detecting Package Managers",
185
- actions: { type: "setLanguage", params: ({ event }) => event },
186
215
  },
187
- },
188
- },
189
- "Detecting Package Managers": {
190
- invoke: {
191
- src: "detectPackageManagers",
192
- },
193
- on: {
194
- "Set Available Package Managers": {
195
- target: "Ask For Package Manager",
196
- actions: [
197
- { type: "setAvailablePackageManagers", params: ({ event }) => event },
198
- { type: "selectFirstPackageManager", params: ({ context }) => context },
199
- ],
216
+ "Ask For Outlets": {
217
+ on: {
218
+ "Choose Outlets": {
219
+ target: "Creating Project",
220
+ actions: { type: "setOutlets", params: ({ event }) => event },
221
+ },
222
+ },
200
223
  },
201
- },
202
- },
203
- "Ask For Package Manager": {
204
- on: {
205
- "Choose Package Manager": {
206
- target: "Ask For Outlets",
207
- actions: { type: "setPackageManager", params: ({ event }) => event },
224
+ "Creating Project": {
225
+ on: {
226
+ Error: {
227
+ target: "Error",
228
+ actions: { type: "setError", params: ({ event }) => event },
229
+ },
230
+ Success: "Building",
231
+ },
232
+ invoke: {
233
+ src: "createProject",
234
+ input: ({ context }) => ({
235
+ name: context.name,
236
+ language: context.language,
237
+ packageManager: context.packageManager,
238
+ }),
239
+ },
208
240
  },
209
- },
210
- },
211
- "Ask For Outlets": {
212
- on: {
213
- "Choose Outlets": {
214
- target: "Creating Project",
215
- actions: { type: "setOutlets", params: ({ event }) => event },
241
+ "Error": {
242
+ type: "final",
216
243
  },
217
- },
218
- },
219
- "Creating Project": {
220
- on: {
221
- Error: {
222
- target: "Error",
223
- actions: { type: "setError", params: ({ event }) => event },
244
+ "Building": {
245
+ on: {
246
+ Success: "Success",
247
+ Error: {
248
+ target: "Error",
249
+ actions: { type: "setError", params: ({ event }) => event },
250
+ },
251
+ },
252
+ invoke: {
253
+ src: "build",
254
+ input: ({ context }) => ({
255
+ name: context.name,
256
+ packageManager: context.packageManager,
257
+ }),
258
+ },
259
+ },
260
+ "Success": {
261
+ type: "final",
224
262
  },
225
- Success: "Building",
226
- },
227
- invoke: {
228
- src: "createProject",
229
- input: ({ context }) => ({
230
- name: context.name,
231
- language: context.language,
232
- packageManager: context.packageManager,
233
- }),
234
263
  },
264
+ initial: "Check For Name Argument",
235
265
  },
236
- "Error": {
237
- type: "final",
238
- },
239
- "Building": {
266
+ Logger: {
240
267
  on: {
241
- Success: "Success",
242
- Error: {
243
- target: "Error",
244
- actions: { type: "setError", params: ({ event }) => event },
268
+ Log: {
269
+ target: "Logger",
270
+ actions: { type: "appendToLog", params: ({ event }) => event },
245
271
  },
246
272
  },
247
- invoke: {
248
- src: "build",
249
- input: ({ context }) => ({
250
- name: context.name,
251
- packageManager: context.packageManager,
252
- }),
253
- },
254
- },
255
- "Success": {
256
- type: "final",
257
273
  },
258
274
  },
259
275
  });
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold-machine.js","sourceRoot":"","sources":["../../src/machines/scaffold-machine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffold-machine.js","sourceRoot":"","sources":["../../src/machines/scaffold-machine.ts"],"names":[],"mappings":"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"}
@@ -17,3 +17,9 @@ npx attio dev
17
17
  ```bash
18
18
  npx attio publish
19
19
  ```
20
+
21
+ ## Linting
22
+
23
+ ```bash
24
+ package-manager-to-be-replaced run lint
25
+ ```
@@ -1,4 +1,3 @@
1
1
  package.json
2
- lib/**
3
2
  dist/**
4
3
  node_modules/**
@@ -0,0 +1,43 @@
1
+ const {FlatCompat} = require("@eslint/eslintrc")
2
+ const js = require("@eslint/js")
3
+ const reactPlugin = require("eslint-plugin-react")
4
+ const reactHooksPlugin = require("eslint-plugin-react-hooks")
5
+
6
+ const compat = new FlatCompat({
7
+ baseDirectory: __dirname,
8
+ recommendedConfig: js.configs.recommended,
9
+ })
10
+
11
+ module.exports = [
12
+ ...compat.extends("eslint:recommended"),
13
+ ...compat.extends("plugin:react/recommended"),
14
+ {
15
+ files: ["src/**/*.{js,jsx}"],
16
+ languageOptions: {
17
+ parserOptions: {
18
+ ecmaFeatures: {
19
+ jsx: true,
20
+ },
21
+ ecmaVersion: 12,
22
+ sourceType: "module",
23
+ },
24
+ },
25
+ plugins: {
26
+ "react": reactPlugin,
27
+ "react-hooks": reactHooksPlugin,
28
+ },
29
+ rules: {
30
+ "react/jsx-key": "error",
31
+ "react-hooks/rules-of-hooks": "error",
32
+ "react-hooks/exhaustive-deps": "error",
33
+ },
34
+ settings: {
35
+ react: {
36
+ version: "detect",
37
+ },
38
+ },
39
+ },
40
+ {
41
+ ignores: ["node_modules/", "dist/", "lib/"],
42
+ },
43
+ ]
@@ -8,17 +8,19 @@
8
8
  "scripts": {
9
9
  "dev": "attio dev",
10
10
  "build": "attio build",
11
- "build-watch": "attio watch",
12
- "clean": "rm -rf lib && rm -rf dist && rm -rf tsconfig.tsbuildinfo",
13
- "lint": "eslint 'src/**/*.{js,ts,tsx}'"
11
+ "clean": "rm -rf dist",
12
+ "lint": "eslint 'src/**/*.{js,jsx}'"
14
13
  },
15
- "prettier": "@attio/eslint-plugin/prettier",
16
14
  "devDependencies": {
17
- "eslint": "^9.2.0"
15
+ "eslint": "^8.57.0",
16
+ "eslint-plugin-react": "^7.34.2",
17
+ "eslint-plugin-react-hooks": "^4.6.2"
18
18
  },
19
19
  "dependencies": {
20
+ "@attio/extension-sdk": "0.0.1-experimental.20240605.3",
21
+ "@eslint/eslintrc": "^3.1.0",
22
+ "@eslint/js": "^9.4.0",
20
23
  "attio": "latest",
21
- "@attio/client-extension-sdk": "workspace:^",
22
24
  "react": "18.3.1"
23
25
  }
24
26
  }
@@ -1,6 +1,6 @@
1
1
  import React from "react"
2
2
 
3
- import {Action} from "@attio/client-extension-sdk"
3
+ import {Action} from "@attio/extension-sdk"
4
4
 
5
5
  export function Counter() {
6
6
  const [count, setCount] = React.useState(0)
@@ -1,4 +1,3 @@
1
1
  package.json
2
- lib/**
3
2
  dist/**
4
3
  node_modules/**