attio 0.0.1-experimental.20240809 → 0.0.1-experimental.20240821

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 (49) hide show
  1. package/lib/api/add-connection-definition.d.ts +6 -1
  2. package/lib/api/add-connection-definition.d.ts.map +1 -1
  3. package/lib/api/add-connection-definition.js +14 -6
  4. package/lib/api/add-connection-definition.js.map +1 -1
  5. package/lib/api/{create-integration.d.ts → create-app.d.ts} +1 -1
  6. package/lib/api/create-app.d.ts.map +1 -0
  7. package/lib/api/{create-integration.js → create-app.js} +1 -1
  8. package/lib/api/create-app.js.map +1 -0
  9. package/lib/api/create-dev-version.d.ts +1 -1
  10. package/lib/api/create-dev-version.d.ts.map +1 -1
  11. package/lib/api/{is-integration-slug-valid.d.ts → is-app-slug-valid.d.ts} +1 -1
  12. package/lib/api/is-app-slug-valid.d.ts.map +1 -0
  13. package/lib/api/{is-integration-slug-valid.js → is-app-slug-valid.js} +1 -1
  14. package/lib/api/is-app-slug-valid.js.map +1 -0
  15. package/lib/api/remove-connection-definition.d.ts +2 -12
  16. package/lib/api/remove-connection-definition.d.ts.map +1 -1
  17. package/lib/api/remove-connection-definition.js +10 -6
  18. package/lib/api/remove-connection-definition.js.map +1 -1
  19. package/lib/commands/connection/add.d.ts +19 -4
  20. package/lib/commands/connection/add.d.ts.map +1 -1
  21. package/lib/commands/connection/add.js +77 -27
  22. package/lib/commands/connection/add.js.map +1 -1
  23. package/lib/commands/create.d.ts.map +1 -1
  24. package/lib/commands/create.js +3 -3
  25. package/lib/commands/create.js.map +1 -1
  26. package/lib/machines/add-connection-machine.d.ts +137 -4
  27. package/lib/machines/add-connection-machine.d.ts.map +1 -1
  28. package/lib/machines/add-connection-machine.js +244 -37
  29. package/lib/machines/add-connection-machine.js.map +1 -1
  30. package/lib/machines/create-machine.d.ts +24 -24
  31. package/lib/machines/create-machine.d.ts.map +1 -1
  32. package/lib/machines/create-machine.js +28 -28
  33. package/lib/machines/create-machine.js.map +1 -1
  34. package/lib/machines/dev-machine.js +8 -8
  35. package/lib/machines/dev-machine.js.map +1 -1
  36. package/lib/machines/remove-connection-machine.d.ts +1 -1
  37. package/lib/machines/remove-connection-machine.d.ts.map +1 -1
  38. package/lib/machines/remove-connection-machine.js +12 -1
  39. package/lib/machines/remove-connection-machine.js.map +1 -1
  40. package/lib/schema.d.ts +5 -5
  41. package/lib/schema.d.ts.map +1 -1
  42. package/lib/schema.js +1 -3
  43. package/lib/schema.js.map +1 -1
  44. package/lib/schema.json +2 -1
  45. package/package.json +1 -1
  46. package/lib/api/create-integration.d.ts.map +0 -1
  47. package/lib/api/create-integration.js.map +0 -1
  48. package/lib/api/is-integration-slug-valid.d.ts.map +0 -1
  49. package/lib/api/is-integration-slug-valid.js.map +0 -1
@@ -2,6 +2,9 @@ import { InitialConfigError } from "../util/load-config.js";
2
2
  export declare const connectionTypes: readonly [{
3
3
  readonly value: "secret";
4
4
  readonly label: "Secret";
5
+ }, {
6
+ readonly value: "oauth2_code";
7
+ readonly label: "OAuth2";
5
8
  }];
6
9
  export declare const audiences: readonly [{
7
10
  readonly value: "workspace";
@@ -22,6 +25,11 @@ interface Context {
22
25
  slug: string;
23
26
  token: string;
24
27
  };
28
+ authorizeUrl?: string;
29
+ accessTokenUrl?: string;
30
+ scopes?: string;
31
+ clientId?: string;
32
+ clientSecret?: string;
25
33
  connectionDefinitionId?: string;
26
34
  appId: string;
27
35
  }
@@ -35,6 +43,21 @@ type Event = {
35
43
  } | {
36
44
  type: "Choose Connection Type";
37
45
  connectionType: ConnectionType;
46
+ } | {
47
+ type: "Update Authorize URL";
48
+ authorizeUrl: string;
49
+ } | {
50
+ type: "Update Access Token URL";
51
+ accessTokenUrl: string;
52
+ } | {
53
+ type: "Update Scopes";
54
+ scopes: string;
55
+ } | {
56
+ type: "Update Client ID";
57
+ clientId: string;
58
+ } | {
59
+ type: "Update Client Secret";
60
+ clientSecret: string;
38
61
  } | {
39
62
  type: "Developer Config Loaded";
40
63
  token: string;
@@ -60,6 +83,21 @@ export declare const addConnectionMachine: import("xstate").StateMachine<Context
60
83
  } | {
61
84
  type: "Choose Connection Type";
62
85
  connectionType: ConnectionType;
86
+ } | {
87
+ type: "Update Authorize URL";
88
+ authorizeUrl: string;
89
+ } | {
90
+ type: "Update Access Token URL";
91
+ accessTokenUrl: string;
92
+ } | {
93
+ type: "Update Scopes";
94
+ scopes: string;
95
+ } | {
96
+ type: "Update Client ID";
97
+ clientId: string;
98
+ } | {
99
+ type: "Update Client Secret";
100
+ clientSecret: string;
63
101
  } | {
64
102
  type: "Developer Config Loaded";
65
103
  token: string;
@@ -75,11 +113,11 @@ export declare const addConnectionMachine: import("xstate").StateMachine<Context
75
113
  } | {
76
114
  type: "Success";
77
115
  }, {
78
- [x: string]: import("xstate").ActorRef<import("xstate").CallbackSnapshot<import("xstate").NonReducibleUnknown>, import("xstate").EventObject, import("xstate").EventObject> | import("xstate").ActorRef<import("xstate").CallbackSnapshot<Required<Pick<Context, "audience" | "appId" | "connectionType" | "developer">>>, Event, import("xstate").EventObject> | undefined;
116
+ [x: string]: import("xstate").ActorRef<import("xstate").CallbackSnapshot<import("xstate").NonReducibleUnknown>, import("xstate").EventObject, import("xstate").EventObject> | import("xstate").ActorRef<import("xstate").CallbackSnapshot<Required<Pick<Context, "audience" | "appId" | "clientId" | "clientSecret" | "authorizeUrl" | "accessTokenUrl" | "scopes" | "connectionType" | "developer">>>, Event, import("xstate").EventObject> | undefined;
79
117
  }, import("xstate").Values<{
80
118
  createConnectionDefinition: {
81
119
  src: "createConnectionDefinition";
82
- logic: import("xstate").CallbackActorLogic<Event, Required<Pick<Context, "audience" | "appId" | "connectionType" | "developer">>, import("xstate").EventObject>;
120
+ logic: import("xstate").CallbackActorLogic<Event, Required<Pick<Context, "audience" | "appId" | "clientId" | "clientSecret" | "authorizeUrl" | "accessTokenUrl" | "scopes" | "connectionType" | "developer">>, import("xstate").EventObject>;
83
121
  id: string | undefined;
84
122
  };
85
123
  loadDeveloperConfig: {
@@ -121,6 +159,36 @@ export declare const addConnectionMachine: import("xstate").StateMachine<Context
121
159
  connectionType: ConnectionType;
122
160
  };
123
161
  };
162
+ setAuthorizeUrl: {
163
+ type: "setAuthorizeUrl";
164
+ params: {
165
+ authorizeUrl: string;
166
+ };
167
+ };
168
+ setAccessTokenUrl: {
169
+ type: "setAccessTokenUrl";
170
+ params: {
171
+ accessTokenUrl: string;
172
+ };
173
+ };
174
+ setScopes: {
175
+ type: "setScopes";
176
+ params: {
177
+ scopes: string;
178
+ };
179
+ };
180
+ setClientId: {
181
+ type: "setClientId";
182
+ params: {
183
+ clientId: string;
184
+ };
185
+ };
186
+ setClientSecret: {
187
+ type: "setClientSecret";
188
+ params: {
189
+ clientSecret: string;
190
+ };
191
+ };
124
192
  setDeveloperConfig: {
125
193
  type: "setDeveloperConfig";
126
194
  params: {
@@ -128,6 +196,36 @@ export declare const addConnectionMachine: import("xstate").StateMachine<Context
128
196
  slug: string;
129
197
  };
130
198
  };
199
+ setInvalidAuthorizeUrl: {
200
+ type: "setInvalidAuthorizeUrl";
201
+ params: {
202
+ authorizeUrl?: string | undefined;
203
+ };
204
+ };
205
+ setInvalidAccessTokenUrl: {
206
+ type: "setInvalidAccessTokenUrl";
207
+ params: {
208
+ accessTokenUrl?: string | undefined;
209
+ };
210
+ };
211
+ setInvalidScopes: {
212
+ type: "setInvalidScopes";
213
+ params: {
214
+ scopes?: string | undefined;
215
+ };
216
+ };
217
+ setInvalidClientId: {
218
+ type: "setInvalidClientId";
219
+ params: {
220
+ clientId?: string | undefined;
221
+ };
222
+ };
223
+ setInvalidClientSecret: {
224
+ type: "setInvalidClientSecret";
225
+ params: {
226
+ clientSecret?: string | undefined;
227
+ };
228
+ };
131
229
  setAppConfig: {
132
230
  type: "setAppConfig";
133
231
  params: {
@@ -151,9 +249,44 @@ export declare const addConnectionMachine: import("xstate").StateMachine<Context
151
249
  "have connection type": {
152
250
  type: "have connection type";
153
251
  params: {
154
- connectionType?: "secret" | undefined;
252
+ connectionType?: "secret" | "oauth2_code" | undefined;
253
+ };
254
+ };
255
+ "have authorize url": {
256
+ type: "have authorize url";
257
+ params: {
258
+ authorizeUrl?: string | undefined;
259
+ connectionType?: "secret" | "oauth2_code" | undefined;
260
+ };
261
+ };
262
+ "have access token url": {
263
+ type: "have access token url";
264
+ params: {
265
+ accessTokenUrl?: string | undefined;
266
+ connectionType?: "secret" | "oauth2_code" | undefined;
267
+ };
268
+ };
269
+ "have scopes": {
270
+ type: "have scopes";
271
+ params: {
272
+ scopes?: string | undefined;
273
+ connectionType?: "secret" | "oauth2_code" | undefined;
274
+ };
275
+ };
276
+ "have client id": {
277
+ type: "have client id";
278
+ params: {
279
+ clientId?: string | undefined;
280
+ connectionType?: "secret" | "oauth2_code" | undefined;
281
+ };
282
+ };
283
+ "have client secret": {
284
+ type: "have client secret";
285
+ params: {
286
+ clientSecret?: string | undefined;
287
+ connectionType?: "secret" | "oauth2_code" | undefined;
155
288
  };
156
289
  };
157
- }>, never, "Success" | "Error" | "Show config instructions" | "Loading Developer Config" | "Loading App Config" | "Do we already have a connection?" | "Do we need a connection type?" | "Do we need audience?" | "Ask for connection type" | "Creating connection definition" | "Ask for audience" | "Already have a connection", string, Pick<Context, "audience" | "connectionType">, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject>;
290
+ }>, never, "Success" | "Error" | "Show config instructions" | "Loading Developer Config" | "Loading App Config" | "Do we already have a connection?" | "Ask for connection type" | "Do we have an audience?" | "Ask for audience" | "Do we have an authorize url?" | "Creating connection definition" | "Already have a connection" | "Do we have a connection type?" | "Ask for Authorize URL" | "Do we have an access token url?" | "Ask for Access Token URL" | "Do we have scopes?" | "Ask for Scopes" | "Do we have a client id?" | "Ask for Client ID" | "Do we have a client secret?" | "Ask for Client Secret", string, Pick<Context, "audience" | "clientId" | "clientSecret" | "authorizeUrl" | "accessTokenUrl" | "scopes" | "connectionType">, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject>;
158
291
  export {};
159
292
  //# sourceMappingURL=add-connection-machine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"add-connection-machine.d.ts","sourceRoot":"","sources":["../../src/machines/add-connection-machine.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,kBAAkB,EAAa,MAAM,wBAAwB,CAAA;AAErE,eAAO,MAAM,eAAe;;;EAGlB,CAAA;AACV,eAAO,MAAM,SAAS;;;;;;EAGZ,CAAA;AACV,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AACtE,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAE1D,UAAU,OAAO;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,cAAc,EAAE,OAAO,CAAA;IACvB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,SAAS,EAAE;QACP,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,KAAK,KAAK,GACJ;IAAC,IAAI,EAAE,mBAAmB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,OAAO,CAAA;CAAC,GACnE;IAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAA;CAAC,GAC7C;IAAC,IAAI,EAAE,wBAAwB,CAAC;IAAC,cAAc,EAAE,cAAc,CAAA;CAAC,GAChE;IAAC,IAAI,EAAE,yBAAyB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,GAC9D;IAAC,IAAI,EAAE,qBAAqB,CAAC;IAAC,WAAW,EAAE,kBAAkB,CAAA;CAAC,GAC9D;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,GAC9B;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAC,GAChB;IAAC,IAAI,EAAE,SAAS,CAAA;CAAC,CAAA;AAEvB,eAAO,MAAM,oBAAoB;UATpB,mBAAmB;WAAS,MAAM;oBAAkB,OAAO;;UAC3D,iBAAiB;cAAY,QAAQ;;UACrC,wBAAwB;oBAAkB,cAAc;;UACxD,yBAAyB;WAAS,MAAM;UAAQ,MAAM;;UACtD,qBAAqB;iBAAe,kBAAkB;;UACtD,OAAO;WAAS,MAAM;;UACtB,QAAQ;;UACR,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;mBA0EiB,MAAM;;;;;;yBAYM,kBAAkB;;;;;;sBATxB,QAAQ;;;;;;4BAGI,cAAc;;;;;;mBAG5B,MAAM;kBAAQ,MAAM;;;;;;mBAOf,MAAM;4BAAkB,OAAO;;;;;;;4BAKb,OAAO;;;;;;;;;;;;;;;ydAmJvE,CAAA"}
1
+ {"version":3,"file":"add-connection-machine.d.ts","sourceRoot":"","sources":["../../src/machines/add-connection-machine.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,kBAAkB,EAAa,MAAM,wBAAwB,CAAA;AAErE,eAAO,MAAM,eAAe;;;;;;EAGlB,CAAA;AACV,eAAO,MAAM,SAAS;;;;;;EAGZ,CAAA;AACV,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AACtE,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAE1D,UAAU,OAAO;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,cAAc,EAAE,OAAO,CAAA;IACvB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,SAAS,EAAE;QACP,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,KAAK,KAAK,GACJ;IAAC,IAAI,EAAE,mBAAmB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,OAAO,CAAA;CAAC,GACnE;IAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAA;CAAC,GAC7C;IAAC,IAAI,EAAE,wBAAwB,CAAC;IAAC,cAAc,EAAE,cAAc,CAAA;CAAC,GAChE;IAAC,IAAI,EAAE,sBAAsB,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAC,GACpD;IAAC,IAAI,EAAE,yBAAyB,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAC,GACzD;IAAC,IAAI,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,GACvC;IAAC,IAAI,EAAE,kBAAkB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAC,GAC5C;IAAC,IAAI,EAAE,sBAAsB,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAC,GACpD;IAAC,IAAI,EAAE,yBAAyB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,GAC9D;IAAC,IAAI,EAAE,qBAAqB,CAAC;IAAC,WAAW,EAAE,kBAAkB,CAAA;CAAC,GAC9D;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,GAC9B;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAC,GAChB;IAAC,IAAI,EAAE,SAAS,CAAA;CAAC,CAAA;AAEvB,eAAO,MAAM,oBAAoB;UAdpB,mBAAmB;WAAS,MAAM;oBAAkB,OAAO;;UAC3D,iBAAiB;cAAY,QAAQ;;UACrC,wBAAwB;oBAAkB,cAAc;;UACxD,sBAAsB;kBAAgB,MAAM;;UAC5C,yBAAyB;oBAAkB,MAAM;;UACjD,eAAe;YAAU,MAAM;;UAC/B,kBAAkB;cAAY,MAAM;;UACpC,sBAAsB;kBAAgB,MAAM;;UAC5C,yBAAyB;WAAS,MAAM;UAAQ,MAAM;;UACtD,qBAAqB;iBAAe,kBAAkB;;UACtD,OAAO;WAAS,MAAM;;UACtB,QAAQ;;UACR,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;mBA8GiB,MAAM;;;;;;yBAoEM,kBAAkB;;;;;;sBAjExB,QAAQ;;;;;;4BAGI,cAAc;;;;;;0BAGlB,MAAM;;;;;;4BAGF,MAAM;;;;;;oBAGtB,MAAM;;;;;;sBAGF,MAAM;;;;;;0BAGE,MAAM;;;;;;mBAGhB,MAAM;kBAAQ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAgDf,MAAM;4BAAkB,OAAO;;;;;;;4BAKb,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2zBA2UvE,CAAA"}
@@ -1,9 +1,11 @@
1
1
  import { assign, setup, fromCallback } from "xstate";
2
2
  import { addConnectionDefinition } from "../api/add-connection-definition.js";
3
+ import { options } from "../commands/connection/add.js";
3
4
  import { loadAppConfig, updateAppConfig } from "../util/app-config.js";
4
5
  import { loadConfig } from "../util/load-config.js";
5
6
  export const connectionTypes = [
6
7
  { value: "secret", label: "Secret" },
8
+ { value: "oauth2_code", label: "OAuth2" },
7
9
  ];
8
10
  export const audiences = [
9
11
  { value: "workspace", label: "Workspace" },
@@ -16,24 +18,23 @@ export const addConnectionMachine = setup({
16
18
  input: {},
17
19
  },
18
20
  actors: {
19
- createConnectionDefinition: fromCallback(({ sendBack, input }) => {
21
+ createConnectionDefinition: fromCallback(({ sendBack, input: { developer: { token, slug: devSlug }, appId, connectionType: connection_type, audience, authorizeUrl, accessTokenUrl, clientId, clientSecret, scopes, }, }) => {
20
22
  const add = async () => {
21
23
  try {
22
24
  await addConnectionDefinition({
23
- token: input.developer.token,
24
- devSlug: input.developer.slug,
25
- appId: input.appId,
26
- connection: {
27
- connection_type: input.connectionType,
28
- audience: input.audience,
29
- },
25
+ token,
26
+ devSlug,
27
+ appId,
28
+ connection: { connection_type, audience },
29
+ accessTokenUrl,
30
+ authorizeUrl,
31
+ clientId,
32
+ clientSecret,
33
+ scopes,
30
34
  });
31
35
  updateAppConfig((config) => ({
32
36
  ...config,
33
- connection: {
34
- connection_type: input.connectionType,
35
- audience: input.audience,
36
- },
37
+ connection: { connection_type, audience },
37
38
  }));
38
39
  sendBack({ type: "Success" });
39
40
  }
@@ -84,9 +85,60 @@ export const addConnectionMachine = setup({
84
85
  setConnectionType: assign({
85
86
  connectionType: (_, params) => params.connectionType,
86
87
  }),
88
+ setAuthorizeUrl: assign({
89
+ authorizeUrl: (_, params) => params.authorizeUrl,
90
+ }),
91
+ setAccessTokenUrl: assign({
92
+ accessTokenUrl: (_, params) => params.accessTokenUrl,
93
+ }),
94
+ setScopes: assign({
95
+ scopes: (_, params) => params.scopes,
96
+ }),
97
+ setClientId: assign({
98
+ clientId: (_, params) => params.clientId,
99
+ }),
100
+ setClientSecret: assign({
101
+ clientSecret: (_, params) => params.clientSecret,
102
+ }),
87
103
  setDeveloperConfig: assign({
88
104
  developer: (_, params) => params,
89
105
  }),
106
+ setInvalidAuthorizeUrl: assign({
107
+ error: (_, params) => {
108
+ const result = options.shape.authorizeUrl
109
+ .unwrap()
110
+ .safeParse(params.authorizeUrl?.trim());
111
+ return result.success ? undefined : result.error.errors[0].message;
112
+ },
113
+ }),
114
+ setInvalidAccessTokenUrl: assign({
115
+ error: (_, params) => {
116
+ const result = options.shape.accessTokenUrl
117
+ .unwrap()
118
+ .safeParse(params.accessTokenUrl?.trim());
119
+ return result.success ? undefined : result.error.errors[0].message;
120
+ },
121
+ }),
122
+ setInvalidScopes: assign({
123
+ error: (_, params) => {
124
+ const result = options.shape.scopes.unwrap().safeParse(params.scopes?.trim());
125
+ return result.success ? undefined : result.error.errors[0].message;
126
+ },
127
+ }),
128
+ setInvalidClientId: assign({
129
+ error: (_, params) => {
130
+ const result = options.shape.clientId.unwrap().safeParse(params.clientId?.trim());
131
+ return result.success ? undefined : result.error.errors[0].message;
132
+ },
133
+ }),
134
+ setInvalidClientSecret: assign({
135
+ error: (_, params) => {
136
+ const result = options.shape.clientSecret
137
+ .unwrap()
138
+ .safeParse(params.clientSecret?.trim());
139
+ return result.success ? undefined : result.error.errors[0].message;
140
+ },
141
+ }),
90
142
  setConfigError: assign({
91
143
  configError: (_, params) => params.configError,
92
144
  }),
@@ -99,6 +151,16 @@ export const addConnectionMachine = setup({
99
151
  "already have a connection": (_, params) => params.haveConnection,
100
152
  "have audience": (_, params) => Boolean(params.audience),
101
153
  "have connection type": (_, params) => Boolean(params.connectionType),
154
+ "have authorize url": (_, params) => params.connectionType === "secret" ||
155
+ options.shape.authorizeUrl.unwrap().safeParse(params.authorizeUrl?.trim()).success,
156
+ "have access token url": (_, params) => params.connectionType === "secret" ||
157
+ options.shape.accessTokenUrl.unwrap().safeParse(params.accessTokenUrl?.trim()).success,
158
+ "have scopes": (_, params) => params.connectionType === "secret" ||
159
+ options.shape.scopes.unwrap().safeParse(params.scopes?.trim()).success,
160
+ "have client id": (_, params) => params.connectionType === "secret" ||
161
+ options.shape.clientId.unwrap().safeParse(params.clientId?.trim()).success,
162
+ "have client secret": (_, params) => params.connectionType === "secret" ||
163
+ options.shape.clientSecret.unwrap().safeParse(params.clientSecret?.trim()).success,
102
164
  },
103
165
  }).createMachine({
104
166
  context: ({ input }) => ({
@@ -139,45 +201,24 @@ export const addConnectionMachine = setup({
139
201
  "App Config Loaded": {
140
202
  target: "Do we already have a connection?",
141
203
  actions: { type: "setAppConfig", params: ({ event }) => event },
142
- reenter: true,
143
204
  },
144
205
  },
145
206
  },
146
207
  "Error": {
147
208
  type: "final",
148
209
  },
149
- "Do we need a connection type?": {
150
- always: [
151
- {
152
- target: "Do we need audience?",
153
- guard: { type: "have connection type", params: ({ context }) => context },
154
- reenter: true,
155
- },
156
- "Ask for connection type",
157
- ],
158
- },
159
210
  "Ask for connection type": {
160
211
  on: {
161
212
  "Choose Connection Type": {
162
- target: "Do we need audience?",
213
+ target: "Do we have an audience?",
163
214
  actions: { type: "setConnectionType", params: ({ event }) => event },
164
215
  },
165
216
  },
166
217
  },
167
- "Do we need audience?": {
168
- always: [
169
- {
170
- target: "Creating connection definition",
171
- guard: { type: "have audience", params: ({ context }) => context },
172
- reenter: true,
173
- },
174
- "Ask for audience",
175
- ],
176
- },
177
218
  "Ask for audience": {
178
219
  on: {
179
220
  "Choose Audience": {
180
- target: "Creating connection definition",
221
+ target: "Do we have an authorize url?",
181
222
  actions: { type: "setAudience", params: ({ event }) => event },
182
223
  },
183
224
  },
@@ -190,6 +231,11 @@ export const addConnectionMachine = setup({
190
231
  appId: context.appId,
191
232
  connectionType: context.connectionType,
192
233
  audience: context.audience,
234
+ authorizeUrl: context.authorizeUrl,
235
+ accessTokenUrl: context.accessTokenUrl,
236
+ scopes: context.scopes,
237
+ clientId: context.clientId,
238
+ clientSecret: context.clientSecret,
193
239
  }),
194
240
  },
195
241
  on: {
@@ -210,14 +256,175 @@ export const addConnectionMachine = setup({
210
256
  guard: { type: "already have a connection", params: ({ context }) => context },
211
257
  },
212
258
  {
213
- target: "Do we need a connection type?",
214
- reenter: true,
259
+ target: "Do we have a connection type?",
215
260
  },
216
261
  ],
217
262
  },
218
263
  "Already have a connection": {
219
264
  type: "final",
220
265
  },
266
+ "Ask for Authorize URL": {
267
+ on: {
268
+ "Update Authorize URL": {
269
+ actions: { type: "setAuthorizeUrl", params: ({ event }) => event },
270
+ },
271
+ "Submit": [
272
+ {
273
+ target: "Do we have an access token url?",
274
+ guard: { type: "have authorize url", params: ({ context }) => context },
275
+ },
276
+ {
277
+ target: "Ask for Authorize URL",
278
+ actions: { type: "setInvalidAuthorizeUrl", params: ({ context }) => context },
279
+ },
280
+ ],
281
+ },
282
+ },
283
+ "Ask for Access Token URL": {
284
+ on: {
285
+ "Submit": [
286
+ {
287
+ target: "Do we have scopes?",
288
+ guard: { type: "have access token url", params: ({ context }) => context },
289
+ },
290
+ {
291
+ target: "Ask for Access Token URL",
292
+ actions: { type: "setInvalidAccessTokenUrl", params: ({ context }) => context },
293
+ },
294
+ ],
295
+ "Update Access Token URL": {
296
+ actions: { type: "setAccessTokenUrl", params: ({ event }) => event },
297
+ },
298
+ },
299
+ },
300
+ "Ask for Scopes": {
301
+ on: {
302
+ "Update Scopes": {
303
+ actions: { type: "setScopes", params: ({ event }) => event },
304
+ },
305
+ "Submit": [
306
+ {
307
+ target: "Do we have a client id?",
308
+ guard: { type: "have scopes", params: ({ context }) => context },
309
+ },
310
+ {
311
+ target: "Ask for Scopes",
312
+ actions: { type: "setInvalidScopes", params: ({ context }) => context },
313
+ },
314
+ ],
315
+ },
316
+ },
317
+ "Ask for Client ID": {
318
+ on: {
319
+ "Update Client ID": {
320
+ actions: { type: "setClientId", params: ({ event }) => event },
321
+ },
322
+ "Submit": [
323
+ {
324
+ target: "Do we have a client secret?",
325
+ guard: { type: "have client id", params: ({ context }) => context },
326
+ },
327
+ {
328
+ target: "Ask for Client ID",
329
+ actions: { type: "setInvalidClientId", params: ({ context }) => context },
330
+ },
331
+ ],
332
+ },
333
+ },
334
+ "Ask for Client Secret": {
335
+ on: {
336
+ "Update Client Secret": {
337
+ actions: { type: "setClientSecret", params: ({ event }) => event },
338
+ },
339
+ "Submit": [
340
+ {
341
+ target: "Creating connection definition",
342
+ guard: { type: "have client secret", params: ({ context }) => context },
343
+ },
344
+ {
345
+ target: "Ask for Client Secret",
346
+ actions: { type: "setInvalidClientSecret", params: ({ context }) => context },
347
+ },
348
+ ],
349
+ },
350
+ },
351
+ "Do we have a connection type?": {
352
+ always: [
353
+ {
354
+ target: "Do we have an audience?",
355
+ guard: { type: "have connection type", params: ({ context }) => context },
356
+ },
357
+ {
358
+ target: "Ask for connection type",
359
+ },
360
+ ],
361
+ },
362
+ "Do we have an audience?": {
363
+ always: [
364
+ {
365
+ target: "Do we have an authorize url?",
366
+ guard: { type: "have audience", params: ({ context }) => context },
367
+ },
368
+ {
369
+ target: "Ask for audience",
370
+ },
371
+ ],
372
+ },
373
+ "Do we have an authorize url?": {
374
+ always: [
375
+ {
376
+ target: "Do we have an access token url?",
377
+ guard: { type: "have authorize url", params: ({ context }) => context },
378
+ },
379
+ {
380
+ target: "Ask for Authorize URL",
381
+ },
382
+ ],
383
+ },
384
+ "Do we have an access token url?": {
385
+ always: [
386
+ {
387
+ target: "Do we have scopes?",
388
+ guard: { type: "have access token url", params: ({ context }) => context },
389
+ },
390
+ {
391
+ target: "Ask for Access Token URL",
392
+ },
393
+ ],
394
+ },
395
+ "Do we have scopes?": {
396
+ always: [
397
+ {
398
+ target: "Do we have a client id?",
399
+ guard: { type: "have scopes", params: ({ context }) => context },
400
+ },
401
+ {
402
+ target: "Ask for Scopes",
403
+ },
404
+ ],
405
+ },
406
+ "Do we have a client id?": {
407
+ always: [
408
+ {
409
+ target: "Do we have a client secret?",
410
+ guard: { type: "have client id", params: ({ context }) => context },
411
+ },
412
+ {
413
+ target: "Ask for Client ID",
414
+ },
415
+ ],
416
+ },
417
+ "Do we have a client secret?": {
418
+ always: [
419
+ {
420
+ target: "Creating connection definition",
421
+ guard: { type: "have client secret", params: ({ context }) => context },
422
+ },
423
+ {
424
+ target: "Ask for Client Secret",
425
+ },
426
+ ],
427
+ },
221
428
  },
222
429
  initial: "Loading Developer Config",
223
430
  });
@@ -1 +1 @@
1
- {"version":3,"file":"add-connection-machine.js","sourceRoot":"","sources":["../../src/machines/add-connection-machine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-connection-machine.js","sourceRoot":"","sources":["../../src/machines/add-connection-machine.ts"],"names":[],"mappings":"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"}