cliodot 0.1.2 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/README.md +420 -0
  2. package/dist/ConnectorBuilder.js +1 -1
  3. package/dist/Flosync.d.ts +3 -0
  4. package/dist/Flosync.d.ts.map +1 -1
  5. package/dist/Flosync.js +1 -1
  6. package/dist/FlosyncClient.d.ts +9 -0
  7. package/dist/FlosyncClient.d.ts.map +1 -1
  8. package/dist/FlosyncClient.js +1 -1
  9. package/dist/FunctionBuilder.js +1 -1
  10. package/dist/ValidatorBuilder.js +1 -1
  11. package/dist/WorkflowBuilder.js +1 -1
  12. package/dist/__tests__/function.test.js +1 -1
  13. package/dist/__tests__/runner.test.js +1 -1
  14. package/dist/connectors/builtin.js +1 -1
  15. package/dist/connectors/registry.js +1 -1
  16. package/dist/decorators/build.d.ts +3 -0
  17. package/dist/decorators/build.d.ts.map +1 -0
  18. package/dist/decorators/build.js +1 -0
  19. package/dist/decorators/index.d.ts +5 -0
  20. package/dist/decorators/index.d.ts.map +1 -0
  21. package/dist/decorators/index.js +1 -0
  22. package/dist/decorators/metadata.d.ts +73 -0
  23. package/dist/decorators/metadata.d.ts.map +1 -0
  24. package/dist/decorators/metadata.js +1 -0
  25. package/dist/decorators/steps.d.ts +40 -0
  26. package/dist/decorators/steps.d.ts.map +1 -0
  27. package/dist/decorators/steps.js +1 -0
  28. package/dist/decorators/workflow.d.ts +7 -0
  29. package/dist/decorators/workflow.d.ts.map +1 -0
  30. package/dist/decorators/workflow.js +1 -0
  31. package/dist/errors.js +1 -1
  32. package/dist/index.d.ts +1 -0
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +1 -1
  35. package/dist/runner/ProcessorEngine.d.ts.map +1 -1
  36. package/dist/runner/ProcessorEngine.js +1 -1
  37. package/dist/runner/connector.executor.js +1 -1
  38. package/dist/runner/utilities/math.executor.js +1 -1
  39. package/dist/runner/utilities/random.executor.js +1 -1
  40. package/dist/runner/utilities/string.executor.js +1 -1
  41. package/dist/template.js +1 -1
  42. package/dist/transformers/StepsToNodesTransformer.js +1 -1
  43. package/dist/transformers/WorkflowTransformer.js +1 -1
  44. package/dist/types/builtin.js +1 -1
  45. package/dist/types/client.api.js +1 -1
  46. package/dist/types/connector.js +1 -1
  47. package/dist/types/function.js +1 -1
  48. package/dist/types/index.js +1 -1
  49. package/dist/types/validator.js +1 -1
  50. package/dist/types/workflow.js +1 -1
  51. package/dist/validators/validators.js +1 -1
  52. package/dist/variable.js +1 -1
  53. package/package.json +1 -1
package/README.md CHANGED
@@ -184,6 +184,426 @@ Steps that can succeed or fail support `.then()` and `.else()`:
184
184
  .else('invalid'))
185
185
  ```
186
186
 
187
+ ### Decorator Workflows
188
+
189
+ You can define workflows using TypeScript decorators instead of the fluent `.workflow().step()` builder.
190
+
191
+ 1. Enable decorators in your consuming project's `tsconfig.json`:
192
+
193
+ ```json
194
+ {
195
+ "compilerOptions": {
196
+ "experimentalDecorators": true
197
+ }
198
+ }
199
+ ```
200
+
201
+ 2. Define a workflow class and decorate it with `@Workflow()` and `@Http()` (or `@Job()` / `@Schedule()`).
202
+
203
+ 3. Decorate class methods to create steps. By default, the step ID is the method name.
204
+
205
+ 4. Build and register the workflow with `buildWorkflowFromClass()` or `flosync.registerFromClass()`.
206
+
207
+ 5. Optional: add JavaScript inside the decorated method body.
208
+
209
+ If a decorated method contains non-empty code, the SDK uses it based on the step decorator option `stage`:
210
+
211
+ - `stage: "pre"` (default): injects an extra `code` step right before the decorated step. The injected code receives `ctx` with:
212
+
213
+ - `ctx.input` (previous step output, or trigger data for the first step)
214
+ - `ctx.trigger` (trigger payload)
215
+ - `ctx.steps` (all previous `stepResults`)
216
+ - `ctx.vars` (workflow vars, including anything set via `setVars`)
217
+
218
+ To pass values to later steps, return an object with `setVars`:
219
+
220
+ ```typescript
221
+ return { setVars: { limit: 10 } };
222
+ ```
223
+
224
+ Later templates can read them via `v.vars("limit")` (resolves to `{{ vars["limit"] }}`) or `{{ vars.limit }}`.
225
+
226
+ - `stage: "post"`: executes the method body after the decorated step finishes, and allows overriding the decorated step output directly.
227
+
228
+ In this mode, return:
229
+
230
+ ```typescript
231
+ return { out: <newOutput>, setVars?: { ... } };
232
+ ```
233
+
234
+ The overridden output becomes the value of `v.stepResult("<stepId>")` for subsequent steps.
235
+
236
+ In `stage: "post"`, `ctx.input` is the decorated step output produced by the connector/function call.
237
+
238
+ Example: list todos using decorators
239
+
240
+ ```typescript
241
+ import { flosync, v, Workflow, Http, Connector, Condition, Responder, buildWorkflowFromClass, defineCustomConnector } from "cliodot";
242
+
243
+ const CarrierStore = defineCustomConnector("carrier.store", {
244
+ listTodos: "listTodos",
245
+ });
246
+
247
+ @Workflow("todos-list-decorators", "Todos List (Decorators)")
248
+ @Http("GET", "/todos")
249
+ class TodosListDecoratorsWorkflow {
250
+ @Connector(
251
+ CarrierStore.id,
252
+ CarrierStore.actions.listTodos,
253
+ { params: { limit: 10 } },
254
+ { order: 0, stage: "post" }
255
+ )
256
+ list(ctx: any) {
257
+ const todos = Array.isArray(ctx?.input?.todos) ? ctx.input.todos : [];
258
+ const formatted = todos.map((t: any) => {
259
+ const title = String(t?.title ?? "").trim();
260
+ return { ...t, title, title_upper: title.toUpperCase() };
261
+ });
262
+ return { out: { ...(ctx?.input ?? {}), todos: formatted } };
263
+ }
264
+
265
+ @Condition(v.stepResult("list", "valid"), { then: "ok", else: "unauth", order: 1 })
266
+ check() {}
267
+
268
+ @Responder("json", { body: { todos: v.stepResult("list", "todos") } }, { order: 2 })
269
+ ok() {}
270
+
271
+ @Responder("json", { statusCode: 401, body: { error: "Unauthorized" } }, { order: 3 })
272
+ unauth() {}
273
+ }
274
+
275
+ const workflow = buildWorkflowFromClass(TodosListDecoratorsWorkflow);
276
+ flosync.register(workflow);
277
+ ```
278
+
279
+ If you prefer direct registration:
280
+
281
+ ```typescript
282
+ flosync.registerFromClass(TodosListDecoratorsWorkflow);
283
+ ```
284
+
285
+ ### Decorator workflow: validation, MongoDB, string utilities, shaped JSON
286
+
287
+ This pattern matches what many APIs do: validate input, derive a slug with `utility.string`, write to MongoDB, return a single JSON object with nested `note` metadata (not a flat dump of raw step outputs).
288
+
289
+ Configure the database once:
290
+
291
+ ```javascript
292
+ flosync.configure({
293
+ connectors: {
294
+ "mongodb.system": { uri: process.env.MONGO_URI, database: "myapp" },
295
+ },
296
+ });
297
+ ```
298
+
299
+ Workflow (imports: `flosync`, `v`, `Workflow`, `Http`, `Validator`, `Util`, `Db`, `Responder`, `buildWorkflowFromClass`, `ConnectorId`):
300
+
301
+ ```typescript
302
+ import {
303
+ flosync,
304
+ v,
305
+ Workflow,
306
+ Http,
307
+ Validator,
308
+ Util,
309
+ Db,
310
+ Responder,
311
+ buildWorkflowFromClass,
312
+ ConnectorId,
313
+ } from "cliodot";
314
+
315
+ @Workflow("notes-create-decorators", "Notes create (decorators)")
316
+ @Http("POST", "/decorators/notes")
317
+ class NotesCreateDecoratorsWorkflow {
318
+ @Validator(
319
+ { title: v.body("title"), body: v.body("body") },
320
+ { order: 0, then: "slugify", else: "validationError" }
321
+ )
322
+ validate() {}
323
+
324
+ @Util(
325
+ ConnectorId.Utility.String,
326
+ "slugify",
327
+ { string: v.body("title") },
328
+ { order: 1 }
329
+ )
330
+ slugify() {}
331
+
332
+ @Db(
333
+ "mongodb",
334
+ "insertOne",
335
+ {
336
+ collection: "notes",
337
+ document: {
338
+ title: v.body("title"),
339
+ body: v.body("body"),
340
+ slug: v.stepResult("slugify", "value"),
341
+ },
342
+ },
343
+ { order: 2 }
344
+ )
345
+ persist() {}
346
+
347
+ @Responder(
348
+ "json",
349
+ {
350
+ statusCode: 201,
351
+ body: {
352
+ ok: true,
353
+ note: {
354
+ id: v.stepResult("persist", "insertedId"),
355
+ title: v.body("title"),
356
+ slug: v.stepResult("slugify", "value"),
357
+ body: v.body("body"),
358
+ },
359
+ },
360
+ },
361
+ { order: 3 }
362
+ )
363
+ created() {}
364
+
365
+ @Responder(
366
+ "json",
367
+ {
368
+ statusCode: 400,
369
+ body: {
370
+ ok: false,
371
+ error: "validation_failed",
372
+ details: v.stepResult("validate", "errors"),
373
+ },
374
+ },
375
+ { order: 4 }
376
+ )
377
+ validationError() {}
378
+ }
379
+
380
+ const notesDecoratorsWorkflow = buildWorkflowFromClass(NotesCreateDecoratorsWorkflow);
381
+ flosync.register(notesDecoratorsWorkflow);
382
+ ```
383
+
384
+ Example request:
385
+
386
+ ```http
387
+ POST /decorators/notes
388
+ Content-Type: application/json
389
+
390
+ {
391
+ "title": "Ship checklist",
392
+ "body": "Pack boxes, print labels, hand off to carrier."
393
+ }
394
+ ```
395
+
396
+ Example success response body:
397
+
398
+ ```json
399
+ {
400
+ "ok": true,
401
+ "note": {
402
+ "id": "65a1b2c3d4e5f6789012345",
403
+ "title": "Ship checklist",
404
+ "slug": "ship-checklist",
405
+ "body": "Pack boxes, print labels, hand off to carrier."
406
+ }
407
+ }
408
+ ```
409
+
410
+ Example validation failure response body:
411
+
412
+ ```json
413
+ {
414
+ "ok": false,
415
+ "error": "validation_failed",
416
+ "details": {
417
+ "title": "Field is required"
418
+ }
419
+ }
420
+ ```
421
+
422
+ `@Util` is typed the same way as `s.util(ConnectorId.Utility.String, "slugify", { ... })` in the fluent builder. `@Db` supports the `mongodb` and `mysql` engines (see [Database](#database)). Step IDs in `v.stepResult("slugify", "value")` refer to the **method name** you put on each decorated step (after sanitization, dots and hyphens in custom IDs become underscores).
423
+
424
+ ### Custom `execute` connector plus decorators (catalog sample)
425
+
426
+ For behavior that is not a REST template (in-memory demo data, your own SDK, legacy SOAP adapter, etc.), register a connector with an `execute` function, then call it from decorators with `@Connector` exactly like a built-in connector. This mirrors the `carrier.store` pattern: actions such as `listProducts` and `createProduct`, `options.body` / `options.params` / `options.pathParams` passed from the step config.
427
+
428
+ Define typed action names and the connector:
429
+
430
+ ```typescript
431
+ import { flosync, defineCustomConnector } from "cliodot";
432
+
433
+ type CatalogProduct = { id: string; name: string; price: number };
434
+
435
+ const Catalog = defineCustomConnector("acme.catalog", {
436
+ listProducts: "listProducts",
437
+ createProduct: "createProduct",
438
+ });
439
+
440
+ const catalogProducts: CatalogProduct[] = [
441
+ { id: "p_static_1", name: "Starter", price: 0 },
442
+ { id: "p_static_2", name: "Pro", price: 49 },
443
+ ];
444
+
445
+ flosync.registerConnector(Catalog.id, {
446
+ _id: Catalog.id,
447
+ type: "system",
448
+ name: "Acme Catalog",
449
+ meta: { category: "catalog" },
450
+ auth: { type: "none" },
451
+ execute: async (action, options) => {
452
+ const body = (options.body ?? {}) as Record<string, unknown>;
453
+ const params = (options.params ?? {}) as Record<string, unknown>;
454
+ const pathParams = (options.pathParams ?? {}) as Record<string, unknown>;
455
+ const merged = { ...params, ...pathParams };
456
+
457
+ if (action === Catalog.actions.listProducts) {
458
+ const limitRaw = merged.limit;
459
+ const limit =
460
+ limitRaw === undefined || limitRaw === ""
461
+ ? catalogProducts.length
462
+ : Math.max(0, Number(limitRaw));
463
+ const slice = catalogProducts.slice(0, Number.isFinite(limit) ? limit : catalogProducts.length);
464
+ return { ok: true, products: slice, count: slice.length };
465
+ }
466
+
467
+ if (action === Catalog.actions.createProduct) {
468
+ const name = String(body.name ?? "").trim();
469
+ const price = Number(body.price);
470
+ if (!name || Number.isNaN(price)) {
471
+ return { ok: false, error: "name_and_price_required" };
472
+ }
473
+ const id = `p_${Date.now()}`;
474
+ const product: CatalogProduct = { id, name, price };
475
+ catalogProducts.push(product);
476
+ return { ok: true, product };
477
+ }
478
+
479
+ return { ok: false, error: "unknown_action" };
480
+ },
481
+ });
482
+ ```
483
+
484
+ List products with decorator `stage: "post"` to shape the payload (add `price_display`, clamp list) before the responder runs:
485
+
486
+ ```typescript
487
+ import {
488
+ flosync,
489
+ v,
490
+ Workflow,
491
+ Http,
492
+ Connector,
493
+ Responder,
494
+ buildWorkflowFromClass,
495
+ } from "cliodot";
496
+
497
+ @Workflow("acme-catalog-list-decorators", "Catalog list (decorators)")
498
+ @Http("GET", "/decorators/catalog/products")
499
+ class CatalogListDecoratorsWorkflow {
500
+ @Connector(
501
+ Catalog.id,
502
+ Catalog.actions.listProducts,
503
+ { params: { limit: v.query("limit") } },
504
+ { order: 0, stage: "post" }
505
+ )
506
+ list(ctx: any) {
507
+ const input = ctx?.input ?? {};
508
+ const items = Array.isArray(input.products) ? input.products : [];
509
+ const withLabels = items.map((p: CatalogProduct) => ({
510
+ ...p,
511
+ price_display: `$${Number(p.price).toFixed(2)}`,
512
+ }));
513
+ return { out: { ...input, products: withLabels, count: withLabels.length } };
514
+ }
515
+
516
+ @Responder(
517
+ "json",
518
+ {
519
+ body: {
520
+ ok: true,
521
+ count: v.stepResult("list", "count"),
522
+ products: v.stepResult("list", "products"),
523
+ },
524
+ },
525
+ { order: 1 }
526
+ )
527
+ respond() {}
528
+ }
529
+ ```
530
+
531
+ Create product with the same connector; the method body flags bad input and normalizes the successful response:
532
+
533
+ ```typescript
534
+ @Workflow("acme-catalog-create-decorators", "Catalog create (decorators)")
535
+ @Http("POST", "/decorators/catalog/products")
536
+ class CatalogCreateDecoratorsWorkflow {
537
+ @Connector(
538
+ Catalog.id,
539
+ Catalog.actions.createProduct,
540
+ { body: { name: v.body("name"), price: v.body("price") } },
541
+ { order: 0, stage: "post" }
542
+ )
543
+ save(ctx: any) {
544
+ const input = ctx?.input ?? {};
545
+ if (!input.ok) return { out: input };
546
+ const p = input.product as CatalogProduct;
547
+ return {
548
+ out: {
549
+ ...input,
550
+ product: { ...p, price_display: `$${Number(p.price).toFixed(2)}` },
551
+ },
552
+ };
553
+ }
554
+
555
+ @Responder(
556
+ "json",
557
+ {
558
+ statusCode: 201,
559
+ body: {
560
+ ok: true,
561
+ product: v.stepResult("save", "product"),
562
+ },
563
+ },
564
+ { order: 1 }
565
+ )
566
+ respond() {}
567
+ }
568
+ ```
569
+
570
+ Example `POST /decorators/catalog/products` JSON body:
571
+
572
+ ```json
573
+ {
574
+ "name": "Enterprise",
575
+ "price": 199
576
+ }
577
+ ```
578
+
579
+ Example `201` response body:
580
+
581
+ ```json
582
+ {
583
+ "ok": true,
584
+ "product": {
585
+ "id": "p_1711286400000",
586
+ "name": "Enterprise",
587
+ "price": 199,
588
+ "price_display": "$199.00"
589
+ }
590
+ }
591
+ ```
592
+
593
+ Example `GET /decorators/catalog/products?limit=1` response body:
594
+
595
+ ```json
596
+ {
597
+ "ok": true,
598
+ "count": 1,
599
+ "products": [
600
+ { "id": "p_static_1", "name": "Starter", "price": 0, "price_display": "$0.00" }
601
+ ]
602
+ }
603
+ ```
604
+
605
+ Register both workflows with `buildWorkflowFromClass` / `flosync.register` or `flosync.registerFromClass`. Use `flosync.run("<workflow-id>", { body: { ... } })` with the `@Workflow` string ID (the engine also registers the same workflow under `__rawId` when you use kebab-case IDs).
606
+
187
607
  ## Functions
188
608
 
189
609
  ```javascript
@@ -1 +1 @@
1
- 'use strict';const _0x17b8b2=_0x4610;function _0x1612(){const _0x19d40d=['yxbPx2TLEq','nZDyD3LUA1u','zgvZy3jPChrPB24','x2jHC2vvCMW','x25HBwu','uefuq0G','mtrUwgzMyum','qxv0Ag9YAxPHDgLVBG','y29UBMvJDg9Y','x3r5Cgu','ntu4mJK2ngzJtujNyq','CMvZDa','nZHRwxrNrK0','x19LC01VzhvSzq','x2rLC2nYAxb0Aw9U','Chv0','mta1oda4ALvKBw9o','mtm4wfDNv2vP','revmrvrf','ChvZAa','zgvSzxrL','C2X1zW','zgvMAw5LuhjVCgvYDhK','uKvtva','Bwv0yq','y3vZDg9TrMXVDW','q29UBMvJDg9YqNvPBgrLCG','yMfZzvvYBa','Dg9ju09tDhjPBMC','ndKYnJy5mhLHDuXZza','x21LDge','x3nSDwC','mty2ntu1AKrbtgjq','mtK1ntuYofnJq0PQta','r0vu','mZK3ngvOBuTUyq','x2f1DgG','x2vUzhbVAw50CW','ufvu','mtaYnJK2nJbfAhrvwKi','yNvPBgq','zw5KCg9PBNq','z2v0','ndi5wfD4rKnl','x2LK','qM90ia','y3vZDg9T','yMvHCMvY','BgfZDf91CgrHDgvK'];_0x1612=function(){return _0x19d40d;};return _0x1612();}(function(_0x5b447d,_0x5770bc){const _0x5c0dc0=_0x4610,_0x460849=_0x5b447d();while(!![]){try{const _0x5f3146=parseInt(_0x5c0dc0(0x116))/0x1*(-parseInt(_0x5c0dc0(0x13f))/0x2)+-parseInt(_0x5c0dc0(0x12d))/0x3*(parseInt(_0x5c0dc0(0x12c))/0x4)+parseInt(_0x5c0dc0(0x13c))/0x5*(parseInt(_0x5c0dc0(0x128))/0x6)+-parseInt(_0x5c0dc0(0x122))/0x7*(parseInt(_0x5c0dc0(0x13d))/0x8)+parseInt(_0x5c0dc0(0x139))/0x9+-parseInt(_0x5c0dc0(0x112))/0xa+-parseInt(_0x5c0dc0(0x11d))/0xb*(-parseInt(_0x5c0dc0(0x126))/0xc);if(_0x5f3146===_0x5770bc)break;else _0x460849['push'](_0x460849['shift']());}catch(_0x77de27){_0x460849['push'](_0x460849['shift']());}}}(_0x1612,0x9f357));Object[_0x17b8b2(0x132)](exports,_0x17b8b2(0x129),{'value':!![]}),exports[_0x17b8b2(0x136)]=void 0x0,exports[_0x17b8b2(0x124)]=connector;function _0x4610(_0x50d7cb,_0x20e955){_0x50d7cb=_0x50d7cb-0x111;const _0x161287=_0x1612();let _0x4610cb=_0x161287[_0x50d7cb];if(_0x4610['ZAsJuU']===undefined){var _0x408180=function(_0x191e21){const _0x12ecca='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2b6b36='',_0x72363d='';for(let _0x5bed37=0x0,_0x23c417,_0x2d6da2,_0x4bffc5=0x0;_0x2d6da2=_0x191e21['charAt'](_0x4bffc5++);~_0x2d6da2&&(_0x23c417=_0x5bed37%0x4?_0x23c417*0x40+_0x2d6da2:_0x2d6da2,_0x5bed37++%0x4)?_0x2b6b36+=String['fromCharCode'](0xff&_0x23c417>>(-0x2*_0x5bed37&0x6)):0x0){_0x2d6da2=_0x12ecca['indexOf'](_0x2d6da2);}for(let _0x53e985=0x0,_0x18a51e=_0x2b6b36['length'];_0x53e985<_0x18a51e;_0x53e985++){_0x72363d+='%'+('00'+_0x2b6b36['charCodeAt'](_0x53e985)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x72363d);};_0x4610['QYCTvD']=_0x408180,_0x4610['Nelmjf']={},_0x4610['ZAsJuU']=!![];}const _0x1075d8=_0x161287[0x0],_0x366b79=_0x50d7cb+_0x1075d8,_0x5801df=_0x4610['Nelmjf'][_0x366b79];return!_0x5801df?(_0x4610cb=_0x4610['QYCTvD'](_0x4610cb),_0x4610['Nelmjf'][_0x366b79]=_0x4610cb):_0x4610cb=_0x5801df,_0x4610cb;}class ConnectorBuilder{constructor(_0x2b6b36,_0x72363d){const _0x4fee7c=_0x17b8b2;this[_0x4fee7c(0x125)]=_0x4fee7c(0x133),this[_0x4fee7c(0x11f)]='',this[_0x4fee7c(0x140)]={'type':_0x4fee7c(0x11a)},this[_0x4fee7c(0x141)]=[],this['_id']=_0x2b6b36,this[_0x4fee7c(0x120)]=_0x72363d??_0x2b6b36;}[_0x17b8b2(0x127)](){const _0x5c4180=_0x17b8b2;return this[_0x5c4180(0x125)]='REST',this;}[_0x17b8b2(0x137)](_0x5bed37){const _0x466a36=_0x17b8b2;return this[_0x466a36(0x11f)]=_0x5bed37,this;}[_0x17b8b2(0x11a)](_0x23c417){const _0x3e4b45=_0x17b8b2;return this[_0x3e4b45(0x140)]={'type':_0x3e4b45(0x11a),'token':_0x23c417},this;}['apiKey'](_0x2d6da2,_0x4bffc5){const _0x7d38da=_0x17b8b2;return this[_0x7d38da(0x140)]={'type':_0x7d38da(0x11c),'api_key':_0x2d6da2,'key_name':_0x4bffc5},this;}['botToken'](_0x53e985,_0x18a51e=_0x17b8b2(0x118)){const _0x3d74ef=_0x17b8b2;return this[_0x3d74ef(0x140)]={'type':_0x3d74ef(0x11a),'token':_0x53e985,'header_name':_0x3d74ef(0x123),'prefix':_0x18a51e},this;}[_0x17b8b2(0x135)](_0x46a458){const _0x83a7b9=_0x17b8b2;return this[_0x83a7b9(0x140)]={'type':_0x83a7b9(0x119),'flow':_0x46a458},this;}['authConfig'](_0x12376a){const _0x3dd4ec=_0x17b8b2;return this[_0x3dd4ec(0x140)]=_0x12376a,this;}['description'](_0x301643){const _0x2d716e=_0x17b8b2;return this[_0x2d716e(0x12a)]=_0x301643,this;}[_0x17b8b2(0x131)](_0x4599d3){const _0x3789c2=_0x17b8b2;return this[_0x3789c2(0x13b)]=_0x4599d3,this;}[_0x17b8b2(0x134)](_0x102fb5){const _0xe46cb5=_0x17b8b2;return this[_0xe46cb5(0x13a)]=_0x102fb5,this;}['endpoint'](_0x27a833,_0x21774c,_0x1cc580,_0x2c24fb){const _0x27942f=_0x17b8b2;return this[_0x27942f(0x141)][_0x27942f(0x12f)]({'name':_0x27a833,'method':(_0x21774c||_0x27942f(0x13e))['toUpperCase'](),'path':_0x1cc580,..._0x2c24fb}),this;}[_0x17b8b2(0x115)](_0x18fd84,_0x3c68a1,_0x279078){const _0x339aed=_0x17b8b2;return this[_0x339aed(0x114)](_0x18fd84,_0x339aed(0x13e),_0x3c68a1,_0x279078);}['post'](_0xaed21,_0x4201d9,_0x25a6e1){return this['endpoint'](_0xaed21,'POST',_0x4201d9,_0x25a6e1);}[_0x17b8b2(0x12b)](_0x4ef7fd,_0x82747b,_0x2c9b4a){const _0x1230b5=_0x17b8b2;return this[_0x1230b5(0x114)](_0x4ef7fd,_0x1230b5(0x111),_0x82747b,_0x2c9b4a);}['patch'](_0x1e55ef,_0x154419,_0x53e860){const _0x34c8e9=_0x17b8b2;return this['endpoint'](_0x1e55ef,_0x34c8e9(0x121),_0x154419,_0x53e860);}[_0x17b8b2(0x130)](_0x2231c7,_0x2dbb7a,_0x492357){const _0x1c4b54=_0x17b8b2;return this[_0x1c4b54(0x114)](_0x2231c7,_0x1c4b54(0x12e),_0x2dbb7a,_0x492357);}[_0x17b8b2(0x113)](){const _0x3f06e0=_0x17b8b2,_0x27343c={'_id':this[_0x3f06e0(0x117)],'type':this[_0x3f06e0(0x125)],'name':this[_0x3f06e0(0x120)],'base_url':this[_0x3f06e0(0x11f)],'auth':this[_0x3f06e0(0x140)],'endpoints':this[_0x3f06e0(0x141)]};if(this['_slug'])_0x27343c[_0x3f06e0(0x131)]=this[_0x3f06e0(0x13b)];if(this[_0x3f06e0(0x12a)])_0x27343c[_0x3f06e0(0x11e)]=this[_0x3f06e0(0x12a)];return this[_0x3f06e0(0x13a)]&&(_0x27343c[_0x3f06e0(0x134)]={...this['_meta'],'last_updated':this[_0x3f06e0(0x13a)][_0x3f06e0(0x11b)]??new Date()[_0x3f06e0(0x138)]()}),_0x27343c;}}exports[_0x17b8b2(0x136)]=ConnectorBuilder;function connector(_0x59989b,_0xd2cced){return new ConnectorBuilder(_0x59989b,_0xd2cced);}
1
+ 'use strict';const _0x1bcda6=_0x59e9;(function(_0xbb1e0e,_0x4caa26){const _0x362332=_0x59e9,_0x5d8efd=_0xbb1e0e();while(!![]){try{const _0x5521b1=-parseInt(_0x362332(0x1dd))/0x1+parseInt(_0x362332(0x1da))/0x2*(parseInt(_0x362332(0x1c4))/0x3)+parseInt(_0x362332(0x1e6))/0x4*(parseInt(_0x362332(0x1cd))/0x5)+-parseInt(_0x362332(0x1d1))/0x6*(-parseInt(_0x362332(0x1ca))/0x7)+-parseInt(_0x362332(0x1e3))/0x8+parseInt(_0x362332(0x1de))/0x9*(-parseInt(_0x362332(0x1ea))/0xa)+parseInt(_0x362332(0x1e2))/0xb;if(_0x5521b1===_0x4caa26)break;else _0x5d8efd['push'](_0x5d8efd['shift']());}catch(_0x257461){_0x5d8efd['push'](_0x5d8efd['shift']());}}}(_0x49c0,0x4cf08));Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports[_0x1bcda6(0x1db)]=void 0x0,exports[_0x1bcda6(0x1e0)]=connector;function _0x49c0(){const _0x2ff68d=['zw5KCg9PBNq','yxv0AenVBMzPzW','x25HBwu','CMvZDa','x2vUzhbVAw50CW','nLr5tgrABa','x2rLC2nYAxb0Aw9U','ChvZAa','x2LK','yNvPBgq','yM90vg9Rzw4','n0fxBhbUtW','yMfZzvvYBa','Chv0','mtu3nZv3AMPhCe0','yMvHCMvY','qxv0Ag9YAxPHDgLVBG','qM90ia','mtiZmZa2ENPoBwvc','C2X1zW','Cgf0y2G','yxbPx2TLEq','zgvSzxrL','y3vZDg9TrMXVDW','x3nSDwC','y3vZDg9T','zgvZy3jPChrPB24','ndq5mdC4qw5NEw9i','q29UBMvJDg9YqNvPBgrLCG','uefuq0G','nJiXndmXA2zJEg1y','mJqZu2j4BLbS','x21LDge','y29UBMvJDg9Y','r0vu','nte0ndCZm1DKCLfKvG','mtu5nJqZmKHUAMPYDG','ue9tva','x2jHC2vvCMW','ndm2vxHhDNPx','z2v0','x2f1DgG','x3r5Cgu','ntm3ndbUrfHlwMe','yxbPs2v5','uKvtva','revmrvrf'];_0x49c0=function(){return _0x2ff68d;};return _0x49c0();}class ConnectorBuilder{constructor(_0x26423f,_0x2c0462){const _0x28eaf1=_0x1bcda6;this[_0x28eaf1(0x1e9)]=_0x28eaf1(0x1ec),this['_baseUrl']='',this['_auth']={'type':_0x28eaf1(0x1ce)},this[_0x28eaf1(0x1c3)]=[],this[_0x28eaf1(0x1c7)]=_0x26423f,this['_name']=_0x2c0462??_0x26423f;}[_0x1bcda6(0x1c2)](){const _0x2e42b1=_0x1bcda6;return this[_0x2e42b1(0x1e9)]=_0x2e42b1(0x1ec),this;}[_0x1bcda6(0x1cb)](_0xdd2a11){const _0x438029=_0x1bcda6;return this[_0x438029(0x1e5)]=_0xdd2a11,this;}[_0x1bcda6(0x1ce)](_0xff61df){const _0x3ccf78=_0x1bcda6;return this[_0x3ccf78(0x1e8)]={'type':_0x3ccf78(0x1ce),'token':_0xff61df},this;}[_0x1bcda6(0x1eb)](_0x40e13d,_0x5b7f12){const _0x30fdc0=_0x1bcda6;return this['_auth']={'type':_0x30fdc0(0x1d4),'api_key':_0x40e13d,'key_name':_0x5b7f12},this;}[_0x1bcda6(0x1c9)](_0x585fdd,_0xc5808f=_0x1bcda6(0x1d0)){const _0x45c244=_0x1bcda6;return this[_0x45c244(0x1e8)]={'type':_0x45c244(0x1ce),'token':_0x585fdd,'header_name':_0x45c244(0x1cf),'prefix':_0xc5808f},this;}[_0x1bcda6(0x1d6)](_0xcd22a6){const _0x39d332=_0x1bcda6;return this[_0x39d332(0x1e8)]={'type':_0x39d332(0x1d8),'flow':_0xcd22a6},this;}[_0x1bcda6(0x1c0)](_0x36df53){const _0x5df4e0=_0x1bcda6;return this[_0x5df4e0(0x1e8)]=_0x36df53,this;}[_0x1bcda6(0x1d9)](_0x21f51e){const _0x1c9e35=_0x1bcda6;return this[_0x1c9e35(0x1c5)]=_0x21f51e,this;}[_0x1bcda6(0x1d2)](_0x3e426d){return this['_slug']=_0x3e426d,this;}['meta'](_0x3ffee9){return this['_meta']=_0x3ffee9,this;}['endpoint'](_0x3182a1,_0x160cd,_0x2ba59a,_0x50db82){const _0x33d567=_0x1bcda6;return this[_0x33d567(0x1c3)][_0x33d567(0x1c6)]({'name':_0x3182a1,'method':(_0x160cd||_0x33d567(0x1e1))['toUpperCase'](),'path':_0x2ba59a,..._0x50db82}),this;}[_0x1bcda6(0x1e7)](_0x125dbc,_0x1716f5,_0x8a1a96){const _0x180a62=_0x1bcda6;return this[_0x180a62(0x1ee)](_0x125dbc,_0x180a62(0x1e1),_0x1716f5,_0x8a1a96);}['post'](_0x477677,_0x16df04,_0x436233){const _0x5126a2=_0x1bcda6;return this['endpoint'](_0x477677,_0x5126a2(0x1e4),_0x16df04,_0x436233);}[_0x1bcda6(0x1cc)](_0x579502,_0x55fe20,_0x395ca5){const _0x246b58=_0x1bcda6;return this[_0x246b58(0x1ee)](_0x579502,'PUT',_0x55fe20,_0x395ca5);}[_0x1bcda6(0x1d3)](_0x3d4725,_0x2028a7,_0x3a20d8){const _0x4259a3=_0x1bcda6;return this[_0x4259a3(0x1ee)](_0x3d4725,_0x4259a3(0x1dc),_0x2028a7,_0x3a20d8);}[_0x1bcda6(0x1d5)](_0x20ec78,_0x406ad1,_0x2a0c13){const _0x50ade5=_0x1bcda6;return this[_0x50ade5(0x1ee)](_0x20ec78,_0x50ade5(0x1ed),_0x406ad1,_0x2a0c13);}[_0x1bcda6(0x1c8)](){const _0x17f7cb=_0x1bcda6,_0x5dc74a={'_id':this['_id'],'type':this[_0x17f7cb(0x1e9)],'name':this[_0x17f7cb(0x1c1)],'base_url':this[_0x17f7cb(0x1e5)],'auth':this['_auth'],'endpoints':this[_0x17f7cb(0x1c3)]};if(this[_0x17f7cb(0x1d7)])_0x5dc74a['slug']=this[_0x17f7cb(0x1d7)];if(this[_0x17f7cb(0x1c5)])_0x5dc74a[_0x17f7cb(0x1d9)]=this[_0x17f7cb(0x1c5)];return this[_0x17f7cb(0x1df)]&&(_0x5dc74a['meta']={...this[_0x17f7cb(0x1df)],'last_updated':this['_meta']['last_updated']??new Date()['toISOString']()}),_0x5dc74a;}}exports[_0x1bcda6(0x1db)]=ConnectorBuilder;function _0x59e9(_0x55c469,_0x23f5b3){_0x55c469=_0x55c469-0x1c0;const _0x49c027=_0x49c0();let _0x59e9ca=_0x49c027[_0x55c469];if(_0x59e9['JSgTyf']===undefined){var _0x1e2a06=function(_0x5307a8){const _0x1a8ca0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x26423f='',_0x2c0462='';for(let _0xdd2a11=0x0,_0xff61df,_0x40e13d,_0x5b7f12=0x0;_0x40e13d=_0x5307a8['charAt'](_0x5b7f12++);~_0x40e13d&&(_0xff61df=_0xdd2a11%0x4?_0xff61df*0x40+_0x40e13d:_0x40e13d,_0xdd2a11++%0x4)?_0x26423f+=String['fromCharCode'](0xff&_0xff61df>>(-0x2*_0xdd2a11&0x6)):0x0){_0x40e13d=_0x1a8ca0['indexOf'](_0x40e13d);}for(let _0x585fdd=0x0,_0xc5808f=_0x26423f['length'];_0x585fdd<_0xc5808f;_0x585fdd++){_0x2c0462+='%'+('00'+_0x26423f['charCodeAt'](_0x585fdd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2c0462);};_0x59e9['hsduDW']=_0x1e2a06,_0x59e9['hBFEIA']={},_0x59e9['JSgTyf']=!![];}const _0x33e6ad=_0x49c027[0x0],_0x187d3c=_0x55c469+_0x33e6ad,_0x5a975a=_0x59e9['hBFEIA'][_0x187d3c];return!_0x5a975a?(_0x59e9ca=_0x59e9['hsduDW'](_0x59e9ca),_0x59e9['hBFEIA'][_0x187d3c]=_0x59e9ca):_0x59e9ca=_0x5a975a,_0x59e9ca;}function connector(_0x192170,_0x572454){return new ConnectorBuilder(_0x192170,_0x572454);}
package/dist/Flosync.d.ts CHANGED
@@ -14,6 +14,8 @@ export interface FlosyncConfig {
14
14
  baseUrl: string;
15
15
  apiKey: string;
16
16
  };
17
+ tokenRefreshMarginMs?: number;
18
+ tokenFallbackReuseMs?: number;
17
19
  }
18
20
  export declare class Flosync {
19
21
  private config;
@@ -27,6 +29,7 @@ export declare class Flosync {
27
29
  workflow(id: string, name?: string): WorkflowBuilder;
28
30
  function(id: string, name?: string): FunctionBuilder;
29
31
  register(workflowOrWorkflows: IWorkflow | IWorkflow[]): this;
32
+ registerFromClass(workflowClass: any): this;
30
33
  run(workflowIdOrName: string, payload?: any, options?: {
31
34
  remote?: boolean;
32
35
  }): Promise<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"Flosync.d.ts","sourceRoot":"","sources":["../src/Flosync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Flosync.d.ts","sourceRoot":"","sources":["../src/Flosync.ts"],"names":[],"mappings":"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"}
package/dist/Flosync.js CHANGED
@@ -1 +1 @@
1
- 'use strict';const _0x47badf=_0x4ecd;function _0x4ecd(_0x11a67f,_0x2626c1){_0x11a67f=_0x11a67f-0x157;const _0x480c8b=_0x480c();let _0x4ecd5f=_0x480c8b[_0x11a67f];if(_0x4ecd['LDbayD']===undefined){var _0x4c2c9a=function(_0x4bd418){const _0x3e4a34='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x505680='',_0x220b57='';for(let _0x5818e8=0x0,_0x1ee280,_0x23e256,_0xf3a7b9=0x0;_0x23e256=_0x4bd418['charAt'](_0xf3a7b9++);~_0x23e256&&(_0x1ee280=_0x5818e8%0x4?_0x1ee280*0x40+_0x23e256:_0x23e256,_0x5818e8++%0x4)?_0x505680+=String['fromCharCode'](0xff&_0x1ee280>>(-0x2*_0x5818e8&0x6)):0x0){_0x23e256=_0x3e4a34['indexOf'](_0x23e256);}for(let _0x2f02b6=0x0,_0x3697fd=_0x505680['length'];_0x2f02b6<_0x3697fd;_0x2f02b6++){_0x220b57+='%'+('00'+_0x505680['charCodeAt'](_0x2f02b6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x220b57);};_0x4ecd['mNDHrV']=_0x4c2c9a,_0x4ecd['KQYCUC']={},_0x4ecd['LDbayD']=!![];}const _0x5f2462=_0x480c8b[0x0],_0x5871bf=_0x11a67f+_0x5f2462,_0x1e7f87=_0x4ecd['KQYCUC'][_0x5871bf];return!_0x1e7f87?(_0x4ecd5f=_0x4ecd['mNDHrV'](_0x4ecd5f),_0x4ecd['KQYCUC'][_0x5871bf]=_0x4ecd5f):_0x4ecd5f=_0x1e7f87,_0x4ecd5f;}(function(_0x279a6e,_0x548059){const _0x4aa417=_0x4ecd,_0x33fd7e=_0x279a6e();while(!![]){try{const _0x2815e7=-parseInt(_0x4aa417(0x172))/0x1*(parseInt(_0x4aa417(0x170))/0x2)+-parseInt(_0x4aa417(0x1a2))/0x3*(parseInt(_0x4aa417(0x1b6))/0x4)+parseInt(_0x4aa417(0x18d))/0x5*(parseInt(_0x4aa417(0x1a4))/0x6)+parseInt(_0x4aa417(0x15d))/0x7+-parseInt(_0x4aa417(0x198))/0x8*(parseInt(_0x4aa417(0x1b8))/0x9)+-parseInt(_0x4aa417(0x15a))/0xa+parseInt(_0x4aa417(0x1b9))/0xb*(parseInt(_0x4aa417(0x19a))/0xc);if(_0x2815e7===_0x548059)break;else _0x33fd7e['push'](_0x33fd7e['shift']());}catch(_0x445c37){_0x33fd7e['push'](_0x33fd7e['shift']());}}}(_0x480c,0x713fd));function _0x480c(){const _0x173cb7=['lI9gBg9ZEw5Jq2XPzw50','ChvZAez1BMn0Aw9U','y29UzMLNDxjL','CNvUq29UBMvJDg9Y','zxHLy3v0zq','CMvNAxn0zxjgDw5JDgLVBG','mtzhtuPStwW','zNvUy3rPB24','nJu4otK5mNv2t2vAyG','Cgf0Af9WyxjHBxm','Aw52B2TL','zgf0ywjHC2u','Cgf0AfbHCMfTCW','CgfYyw1Z','D29YA2zSB3DZ','x2LK','ndaYmZb0DMXezfC','rMXVC3LUy0nSAwvUDcbUB3qGy29UzMLNDxjLzc4Gu2v0igfWAuTLEsbHBMqGyxbPu2vJCMv0igLUignVBMzPz3vYzsGPlG','mJrhvwrutui','rNvUy3rPB24GzxHLy3v0Aw9UigzHAwXLza','y29UBMvJDgLVBL9Pza','CxvLCNK','yxv0AgvUDgLJyxrL','CMvTB3rL','y29UBMvJDg9YCW','CNvUrNvUy3rPB24','rMXVC3LUy0nSAwvUDcbUB3qGy29UzMLNDxjLzc4Gu2v0igfWAuTLEsbHBMqGyxbPu2vJCMv0igzVCIbYzw1VDguGAw52B2TLlG','yM9KEq','DMfYCW','yxbPs2v5','tg9JywXsDw5UzxiGBM90igLUAxrPywXPEMvKlIbdywXSigzSB3n5BMmUy29UzMLNDxjLkcKGzMLYC3qU','ChvSBa','BM9YBwfSAxPLuNvUugf5Bg9Hza','zMLSDgvY','x19YyxDjza','zgf0yq','mtGWBwXvvgfk','zNjVBuvUDhjPzxm','mtmZmJeYnM5TzuDWDa','mJjUzM1MuwK','zw52x3zHCNm','zMXVC3LUyW','yxbPu2vJCMv0','zNvUy3rPB25Z','DgLTzw91Da','uhjVy2vZC29Yrw5NAw5L','mta5ntCWvezPzg5A','AgvHzgvYCW','zw50CMLLCW','ntC1odqWm2fPwwDlBq','DhjPz2DLCKLK','zxjYB3i','Aw5JBhvKzxm','rNvUy3rPB24GBM90igzVDw5KoIa','C2v0q2XPzw50','BgvUz3rO','rNvUy3rPB25cDwLSzgvY','DhjPz2DLCG','CNvUrNvUy3rPB25cEuLK','ChvSBez1BMn0Aw9U','C2v0uNvUBMvY','zw52vMfYCW','AxnbCNjHEq','CNvUqNLjza','A2v5CW','yMfZzvvYBa','D29YA2zSB3C','y2XPzw50','nJK4ugj2EK1d','q29UBMvJDg9Yia','mtCWow1LsKz3ta','z2v0','CNvU','zNjVBq','z2v0q2XPzw50','C2v0','BgLZDa','BMfTzq','rMXVC3LUy0nSAwvUDa','C2X1zW','CNvUBMvY','lI9xB3jRzMXVD0j1AwXKzxi','CNvUqNLxzwjOB29R','CNvUv29YA2zSB3C','y2fSBf9ZDgfJAW','y2XPB2rVDa','DMfSDwvZ','rMXVC3LUyW','CMvNAxn0zxi','rNvUy3rPB24GBxvZDcbOyxzLif9PzcWGC2X1zYWGB3iGBMfTzq','CMf3','zw52','zgvMAw5LuhjVCgvYDhK','ChvZAa','BwfWCgvK','rMXVC3LUy0nSAwvUDcbUB3qGy29UzMLNDxjLzc4Gu2v0igfWAuTLEsbHBMqGyxbPu2vJCMv0igzVCIbYzw1VDguGCNvUlG','lI9gDw5JDgLVBKj1AwXKzxi','nJiYmZbrt1DADK8','CMvNAxn0zxjdB25Uzwn0B3i','y29UzMLN','v29YA2zSB3DcDwLSzgvY','D29YA2zSB3DZqNLoyw1L'];_0x480c=function(){return _0x173cb7;};return _0x480c();}Object[_0x47badf(0x188)](exports,'__esModule',{'value':!![]}),exports[_0x47badf(0x1bb)]=exports[_0x47badf(0x183)]=void 0x0;const WorkflowBuilder_1=require(_0x47badf(0x17d)),FunctionBuilder_1=require(_0x47badf(0x18c)),ProcessorEngine_1=require('./runner/ProcessorEngine'),builtin_1=require('./connectors/builtin'),FlosyncClient_1=require(_0x47badf(0x192));class Flosync{constructor(){const _0x5610ba=_0x47badf;this['config']={},this[_0x5610ba(0x1a0)]=new Map(),this['workflowsByName']=new Map(),this['functions']=new Map(),this[_0x5610ba(0x1aa)]=new Map();}[_0x47badf(0x194)](_0x505680){const _0x174253=_0x47badf;this[_0x174253(0x18f)]={...this[_0x174253(0x18f)],..._0x505680};const _0x220b57=_0x505680['connectors']||{},_0x5818e8=_0x505680[_0x174253(0x181)];_0x5818e8?.[_0x174253(0x16d)]&&_0x5818e8?.[_0x174253(0x1af)]&&this['connectors'][_0x174253(0x177)](_0x174253(0x181),(0x0,builtin_1['createCliodotConnector'])({'baseUrl':_0x5818e8[_0x174253(0x16d)],'apiKey':_0x5818e8['apiKey']}));if(_0x505680[_0x174253(0x1af)]&&_0x505680[_0x174253(0x1bc)]){const _0x23e256=this['client'];!_0x23e256&&(this[_0x174253(0x16f)]=new FlosyncClient_1[(_0x174253(0x17a))]({'baseUrl':_0x505680[_0x174253(0x16d)],'apiKey':_0x505680['apiKey'],'apiSecret':_0x505680[_0x174253(0x1bc)]}));}const _0x1ee280=new ProcessorEngine_1[(_0x174253(0x159))]({'workflows':this['workflows'],'functions':this[_0x174253(0x157)],'connectors':this[_0x174253(0x1aa)],'connectorConfig':_0x220b57,'client':this[_0x174253(0x16f)]});return this[_0x174253(0x17c)]=_0x1ee280,this;}async[_0x47badf(0x1a8)](){const _0x3febae=_0x47badf,_0xf3a7b9=this[_0x3febae(0x176)]();_0xf3a7b9&&await _0xf3a7b9[_0x3febae(0x1a8)]();}[_0x47badf(0x18e)](_0x2f02b6,_0x3697fd){const _0x454bdb=_0x47badf;return this[_0x454bdb(0x1aa)][_0x454bdb(0x177)](_0x2f02b6,_0x3697fd),this;}[_0x47badf(0x16e)](_0x123d65,_0x276f27){const _0x1781f4=_0x47badf;return new WorkflowBuilder_1[(_0x1781f4(0x190))](_0x123d65,_0x276f27);}[_0x47badf(0x199)](_0x5e0f12,_0x223e5c){const _0x1c068f=_0x47badf;return new FunctionBuilder_1[(_0x1c068f(0x164))](_0x5e0f12,_0x223e5c);}[_0x47badf(0x184)](_0x1646fd){const _0x460a79=_0x47badf,_0x10081e=Array[_0x460a79(0x16a)](_0x1646fd)?_0x1646fd:[_0x1646fd];for(const _0x200d48 of _0x10081e){this[_0x460a79(0x1a0)]['set'](_0x200d48[_0x460a79(0x1a1)],_0x200d48),this[_0x460a79(0x191)]['set'](_0x200d48[_0x460a79(0x179)],_0x200d48);}return this;}async[_0x47badf(0x174)](_0x248990,_0x26a4eb={},_0x1e1aa5){const _0x8b630d=_0x47badf,_0x233226=this[_0x8b630d(0x1a0)][_0x8b630d(0x173)](_0x248990)??this[_0x8b630d(0x191)][_0x8b630d(0x173)](_0x248990);if(_0x233226){const _0x2d44c9=this['runner'];if(!_0x2d44c9)throw new Error(_0x8b630d(0x1b0));const _0x5eb290=this['normalizeRunPayload'](_0x26a4eb);return _0x2d44c9[_0x8b630d(0x17f)](_0x233226,_0x5eb290);}const _0x1b96db=this[_0x8b630d(0x176)]();if(_0x1b96db&&(_0x1e1aa5?.[_0x8b630d(0x1a9)]??!![]))return this['runById'](_0x248990,_0x26a4eb);throw new Error('Workflow\x20not\x20found:\x20'+_0x248990);}async[_0x47badf(0x16b)](_0x299403,_0x4a2234={},_0x18c179){const _0x1d4887=_0x47badf,_0x228215=this['getClient']();if(!_0x228215)throw new Error(_0x1d4887(0x18b));const _0x217fe6=_0x18c179?.[_0x1d4887(0x15e)]??_0x1d4887(0x165),_0x1b6477=this[_0x1d4887(0x1b2)](_0x4a2234);return _0x228215[_0x1d4887(0x1a0)][_0x1d4887(0x174)](_0x299403,_0x217fe6,{'payload':_0x1b6477});}async[_0x47badf(0x17e)](_0x463578,_0x43b29d,_0x26d5db={}){const _0x34f0d8=_0x47badf,_0x2060f0=this[_0x34f0d8(0x176)]();if(!_0x2060f0)throw new Error(_0x34f0d8(0x18b));return _0x2060f0[_0x34f0d8(0x1a0)][_0x34f0d8(0x17e)](_0x463578,_0x43b29d,_0x26d5db);}async['runFunctionById'](_0x955d1f,_0x4b98a7={}){const _0x4dbced=_0x47badf,_0x37e69e=this[_0x4dbced(0x176)]();if(!_0x37e69e)throw new Error(_0x4dbced(0x1ac));return _0x37e69e[_0x4dbced(0x157)][_0x4dbced(0x19c)](_0x955d1f,_0x4b98a7);}async[_0x47badf(0x195)](_0x357d0b,_0xd6d848,_0x55117d,_0x96203b){const _0x20cf52=_0x47badf,_0x3bb850=this[_0x20cf52(0x1aa)][_0x20cf52(0x173)](_0x357d0b);if(_0x3bb850&&(_0x96203b?.['remote']??![])===![]){const _0x67558b=this['runner'];if(_0x67558b){const _0x30f454={'headers':_0x55117d?.[_0x20cf52(0x15b)]??{},'connectorConfig':this[_0x20cf52(0x18f)]['connectors']??{},'env':{},'trigger':{'body':_0x55117d?.[_0x20cf52(0x1ad)],'data':_0x55117d?.['body']},'stepResults':{},'vars':_0x55117d?.[_0x20cf52(0x1ae)]??{}},{executeConnectorAction:_0x3506f0}=require('./runner/connector.executor'),_0x4e19ba=await _0x3506f0(_0x3bb850,_0xd6d848,{'body':_0x55117d?.['body'],'params':_0x55117d?.[_0x20cf52(0x19f)],'pathParams':_0x55117d?.[_0x20cf52(0x19e)],'headers':_0x55117d?.[_0x20cf52(0x15b)],'database':_0x55117d?.[_0x20cf52(0x19d)],'connection_id':_0x55117d?.[_0x20cf52(0x1a6)],'timeout':_0x55117d?.[_0x20cf52(0x158)]},_0x30f454),_0x478444=_0x4e19ba?.[_0x20cf52(0x18a)]??_0x4e19ba?.[_0x20cf52(0x186)]??_0x4e19ba;return _0x478444;}}const _0x36d631=this[_0x20cf52(0x176)]();if(_0x36d631&&(_0x96203b?.[_0x20cf52(0x1a9)]??!![]))return _0x36d631['connectors'][_0x20cf52(0x196)](_0x357d0b,_0xd6d848,_0x55117d);throw new Error(_0x20cf52(0x171)+_0x357d0b+'\x20not\x20found\x20locally.\x20Configure\x20apiKey\x20and\x20apiSecret\x20to\x20run\x20connectors\x20from\x20your\x20Cliodot\x20account.');}[_0x47badf(0x1b2)](_0x59eae7){const _0x5ba11=_0x47badf;if(!_0x59eae7||typeof _0x59eae7!=='object')return{'trigger':{'data':_0x59eae7,'body':_0x59eae7}};if(Array[_0x5ba11(0x16a)](_0x59eae7))return{'trigger':{'data':_0x59eae7,'body':_0x59eae7}};const _0x129b00=[_0x5ba11(0x15b),'pathParams',_0x5ba11(0x19b),_0x5ba11(0x19f),_0x5ba11(0x1a7),_0x5ba11(0x1ae),_0x5ba11(0x169),_0x5ba11(0x1ba),_0x5ba11(0x187),_0x5ba11(0x165),'callStack',_0x5ba11(0x180)],_0x486231=_0x5ba11(0x1ad)in _0x59eae7||_0x5ba11(0x1b5)in _0x59eae7||_0x59eae7[_0x5ba11(0x165)]&&(_0x5ba11(0x1ad)in _0x59eae7[_0x5ba11(0x165)]||_0x5ba11(0x1b5)in _0x59eae7[_0x5ba11(0x165)]);let _0x8105d4;if(_0x486231)_0x8105d4=_0x59eae7[_0x5ba11(0x1ad)]??_0x59eae7[_0x5ba11(0x1b5)]??_0x59eae7['trigger']?.[_0x5ba11(0x1ad)]??_0x59eae7[_0x5ba11(0x165)]?.[_0x5ba11(0x1b5)];else{const _0x2393a9=Object[_0x5ba11(0x1b7)](Object[_0x5ba11(0x15c)](_0x59eae7)[_0x5ba11(0x1b3)](([_0x3c5f97])=>!_0x129b00[_0x5ba11(0x160)](_0x3c5f97)));_0x8105d4=Object[_0x5ba11(0x16c)](_0x2393a9)[_0x5ba11(0x163)]>0x0?_0x2393a9:_0x59eae7;}const _0x4a909e=_0x59eae7[_0x5ba11(0x165)]??{};return{'body':_0x8105d4,'data':_0x8105d4,'trigger':{..._0x4a909e,'data':_0x4a909e[_0x5ba11(0x1b5)]??_0x8105d4,'body':_0x4a909e['body']??_0x8105d4},'headers':_0x59eae7[_0x5ba11(0x15b)]??_0x4a909e[_0x5ba11(0x15b)]??{},'pathParams':_0x59eae7[_0x5ba11(0x19e)]??_0x59eae7['path_params']??_0x4a909e[_0x5ba11(0x19e)]??{},'params':_0x59eae7[_0x5ba11(0x19f)]??_0x4a909e['params']??{},'query':_0x59eae7[_0x5ba11(0x1a7)]??_0x4a909e[_0x5ba11(0x1a7)]??{},'vars':_0x59eae7[_0x5ba11(0x1ae)]??_0x4a909e[_0x5ba11(0x1ae)]??{},'envVars':_0x59eae7[_0x5ba11(0x169)]??_0x59eae7[_0x5ba11(0x1ba)]??_0x59eae7[_0x5ba11(0x187)]??{},'callStack':_0x59eae7['callStack']??_0x59eae7[_0x5ba11(0x180)]??[]};}[_0x47badf(0x168)](_0x322766){const _0x2288ab=_0x47badf;return this[_0x2288ab(0x17c)]=_0x322766,this;}[_0x47badf(0x176)](){const _0x3fa116=_0x47badf;return this[_0x3fa116(0x16f)]??null;}get['c'](){const _0x140bd1=_0x47badf;return this[_0x140bd1(0x176)]();}[_0x47badf(0x162)](_0x5df5f6){return this['client']=_0x5df5f6,this;}async[_0x47badf(0x189)](_0x321da4){const _0x114bca=_0x47badf,_0x363af8=this[_0x114bca(0x176)]();if(!_0x363af8)throw new Error(_0x114bca(0x1a3));return _0x363af8[_0x114bca(0x1a0)][_0x114bca(0x189)](_0x321da4);}async[_0x47badf(0x1b1)](_0x5ba9dd){const _0x1c484b=_0x47badf,_0x5b552f=this[_0x1c484b(0x176)]();if(!_0x5b552f)throw new Error(_0x1c484b(0x1a3));const _0x260763=await _0x5b552f['workflows'][_0x1c484b(0x1b1)](_0x5ba9dd);return this['register'](_0x260763),_0x260763;}[_0x47badf(0x178)](){const _0x1f7854=_0x47badf;return Array[_0x1f7854(0x175)](this[_0x1f7854(0x1a0)][_0x1f7854(0x182)]());}[_0x47badf(0x197)](_0x104e92){const _0x1eb1b4=_0x47badf,_0x39c641=_0x104e92[_0x1eb1b4(0x1a1)]||_0x104e92[_0x1eb1b4(0x17b)]||_0x104e92[_0x1eb1b4(0x179)];if(!_0x39c641)throw new Error(_0x1eb1b4(0x185));this[_0x1eb1b4(0x157)]['set'](_0x39c641,_0x104e92);if(_0x104e92[_0x1eb1b4(0x17b)]&&_0x104e92[_0x1eb1b4(0x17b)]!==_0x39c641)this['functions']['set'](_0x104e92[_0x1eb1b4(0x17b)],_0x104e92);if(_0x104e92[_0x1eb1b4(0x179)]&&_0x104e92['name']!==_0x39c641)this['functions'][_0x1eb1b4(0x177)](_0x104e92[_0x1eb1b4(0x179)],_0x104e92);const _0x559795=_0x104e92[_0x1eb1b4(0x1b4)];if(_0x559795&&_0x559795!==_0x39c641)this[_0x1eb1b4(0x157)][_0x1eb1b4(0x177)](_0x559795,_0x104e92);return this;}async['runFunction'](_0x591f11,_0x38091c={},_0x31acbe){const _0x5f2c96=_0x47badf,_0x1d9de0=this['functions']['get'](_0x591f11);if(_0x1d9de0){const _0x5d09f1=this[_0x5f2c96(0x17c)];if(!_0x5d09f1)throw new Error(_0x5f2c96(0x1b0));const _0x6e47ab=await _0x5d09f1[_0x5f2c96(0x1ab)](_0x1d9de0,_0x38091c);if(!_0x6e47ab['ok'])throw new Error(_0x6e47ab[_0x5f2c96(0x15f)]||_0x5f2c96(0x1a5));return _0x6e47ab['data'];}const _0x3fd9b4=this['getClient']();if(_0x3fd9b4&&(_0x31acbe?.[_0x5f2c96(0x1a9)]??!![]))return this[_0x5f2c96(0x166)](_0x591f11,_0x38091c);throw new Error(_0x5f2c96(0x161)+_0x591f11);}async[_0x47badf(0x193)](_0xf0c40){const _0x566814=_0x47badf,_0x1563b0=this[_0x566814(0x176)]();if(!_0x1563b0)throw new Error(_0x566814(0x1a3));return _0x1563b0[_0x566814(0x157)]['push'](_0xf0c40);}async[_0x47badf(0x167)](_0x15ec95){const _0x120ecc=_0x47badf,_0x535392=this['getClient']();if(!_0x535392)throw new Error(_0x120ecc(0x1a3));return _0x535392['functions']['pull'](_0x15ec95);}}exports[_0x47badf(0x183)]=Flosync,exports['flosync']=new Flosync();
1
+ 'use strict';function _0x460b(){const _0x74d295=['CNvUqNLxzwjOB29R','CNvU','lI9gBg9ZEw5Jq2XPzw50','ChvSBez1BMn0Aw9U','yMfZzvvYBa','C2v0q2XPzw50','lI9gDw5JDgLVBKj1AwXKzxi','BgvUz3rO','q29UBMvJDg9Yia','CgfYyw1Z','rMXVC3LUy0nSAwvUDcbUB3qGy29UzMLNDxjLzc4Gu2v0igfWAuTLEsbHBMqGyxbPu2vJCMv0igzVCIbYzw1VDguGCNvUlG','y2XPB2rVDa','zxHLy3v0zq','DgLTzw91Da','ig5VDcbMB3vUzcbSB2nHBgX5lIbdB25MAwD1CMuGyxbPs2v5igfUzcbHCgLtzwnYzxqGDg8GCNvUignVBM5Ly3rVCNmGzNjVBsb5B3vYienSAw9KB3qGywnJB3vUDc4','mtiWodH6rKTfzgG','nZe2mJG5zLbJDvfP','lI9YDw5UzxiVuhjVy2vZC29Yrw5NAw5L','Cgf0Af9WyxjHBxm','ChvZAez1BMn0Aw9U','Aw52B2TL','DMfSDwvZ','yM9KEq','lI9KzwnVCMf0B3jZl2j1AwXK','zgf0ywjHC2u','D29YA2zSB3DZqNLoyw1L','y3jLyxrLq2XPB2rVDenVBM5Ly3rVCG','y29UzMLN','otKWntCWmgfhqxr5wa','Dg9Rzw5szwzYzxnOtwfYz2LUtxm','y29UzMLNDxjL','BgLZDa','zgf0yq','DhjPz2DLCG','zxjYB3i','y29UBMvJDgLVBL9Pza','y2fSBfn0ywnR','CMvTB3rL','yNvPBgrxB3jRzMXVD0zYB21dBgfZCW','nwDWuLrJBW','nJbRqw1bAg4','BM9YBwfSAxPLuNvUugf5Bg9Hza','A2v5CW','zw52','mty4mdiXnNLAr01Owa','z2v0','y2fSBf9ZDgfJAW','ntu4mtyWowHgD3zIqq','nfP2se1PsW','x19LC01VzhvSzq','CMvNAxn0zxjdB25Uzwn0B3i','D29YA2zSB3C','AxnbCNjHEq','y29UBMvJDg9YCW','rNvUy3rPB25cDwLSzgvY','rMXVC3LUy0nSAwvUDcbUB3qGy29UzMLNDxjLzc4Gu2v0igfWAuTLEsbHBMqGyxbPu2vJCMv0igLUignVBMzPz3vYzsGPlG','C2v0uNvUBMvY','zMXVC3LUyW','mtuYzNfNrNnY','lI9YDw5UzxiVy29UBMvJDg9YlMv4zwn1Dg9Y','rMXVC3LUyW','CNvUrNvUy3rPB25cEuLK','y2XPzw50','CNvUqNLjza','C2v0','CxvLCNK','zw52x3zHCNm','zNjVBuvUDhjPzxm','Aw5JBhvKzxm','x2LK','BMfTzq','D29YA2zSB3DZ','yxbPs2v5','rMXVC3LUy0nSAwvUDa','ntrou2zkDfq','yxv0AgvUDgLJyxrL','x19YyxDjza','CNvUBMvY','Cgf0AfbHCMfTCW','C2X1zW','CNvUv29YA2zSB3C','lI9xB3jRzMXVD0j1AwXKzxi','zw52vMfYCW','yxbPu2vJCMv0','CMvNAxn0zxi','CNvUrNvUy3rPB24','DhjPz2DLCKLK','rMXVC3LUy0nSAwvUDcbUB3qGy29UzMLNDxjLzc4Gu2v0igfWAuTLEsbHBMqGyxbPu2vJCMv0igzVCIbYzw1VDguGAw52B2TLlG','zNjVBq','AgvHzgvYCW','rNvUy3rPB24GBM90igzVDw5KoIa','oteXotK0ww90ufbu','uhjVy2vZC29Yrw5NAw5L','ChvZAa','ChvSBa','CMf3','DMfYCW','z2v0q2XPzw50','mtiYmZmYmLPHze1rCa','CMvNAxn0zxjgCM9Tq2XHC3m','tg9JywXsDw5UzxiGBM90igLUAxrPywXPEMvKlIbdywXSigzSB3n5BMmUy29UzMLNDxjLkcKGzMLYC3qU','zNvUy3rPB25Z'];_0x460b=function(){return _0x74d295;};return _0x460b();}const _0x499d09=_0x58b1;function _0x58b1(_0x129cf0,_0x293296){_0x129cf0=_0x129cf0-0x1a6;const _0x460bdd=_0x460b();let _0x58b127=_0x460bdd[_0x129cf0];if(_0x58b1['wonXfw']===undefined){var _0xb0b8f7=function(_0x230dbf){const _0x31a4ca='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3b3889='',_0x461665='';for(let _0xe9afb2=0x0,_0x4e50be,_0x4fc080,_0x410107=0x0;_0x4fc080=_0x230dbf['charAt'](_0x410107++);~_0x4fc080&&(_0x4e50be=_0xe9afb2%0x4?_0x4e50be*0x40+_0x4fc080:_0x4fc080,_0xe9afb2++%0x4)?_0x3b3889+=String['fromCharCode'](0xff&_0x4e50be>>(-0x2*_0xe9afb2&0x6)):0x0){_0x4fc080=_0x31a4ca['indexOf'](_0x4fc080);}for(let _0x1a579d=0x0,_0x1fbe9b=_0x3b3889['length'];_0x1a579d<_0x1fbe9b;_0x1a579d++){_0x461665+='%'+('00'+_0x3b3889['charCodeAt'](_0x1a579d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x461665);};_0x58b1['rlUNvQ']=_0xb0b8f7,_0x58b1['sxOaJp']={},_0x58b1['wonXfw']=!![];}const _0x13592b=_0x460bdd[0x0],_0x3a4b53=_0x129cf0+_0x13592b,_0x325db4=_0x58b1['sxOaJp'][_0x3a4b53];return!_0x325db4?(_0x58b127=_0x58b1['rlUNvQ'](_0x58b127),_0x58b1['sxOaJp'][_0x3a4b53]=_0x58b127):_0x58b127=_0x325db4,_0x58b127;}(function(_0x3b2044,_0x5dbed5){const _0x268ef8=_0x58b1,_0x569309=_0x3b2044();while(!![]){try{const _0x4494e0=parseInt(_0x268ef8(0x202))/0x1*(parseInt(_0x268ef8(0x1c7))/0x2)+parseInt(_0x268ef8(0x1e8))/0x3*(-parseInt(_0x268ef8(0x1bd))/0x4)+-parseInt(_0x268ef8(0x1b4))/0x5*(-parseInt(_0x268ef8(0x1ef))/0x6)+parseInt(_0x268ef8(0x203))/0x7+-parseInt(_0x268ef8(0x1b9))/0x8*(-parseInt(_0x268ef8(0x1d7))/0x9)+parseInt(_0x268ef8(0x1a9))/0xa+-parseInt(_0x268ef8(0x1bc))/0xb*(parseInt(_0x268ef8(0x1b5))/0xc);if(_0x4494e0===_0x5dbed5)break;else _0x569309['push'](_0x569309['shift']());}catch(_0x233bb7){_0x569309['push'](_0x569309['shift']());}}}(_0x460b,0x9aead));Object['defineProperty'](exports,_0x499d09(0x1be),{'value':!![]}),exports[_0x499d09(0x1c6)]=exports[_0x499d09(0x1c9)]=void 0x0;const WorkflowBuilder_1=require(_0x499d09(0x1de)),FunctionBuilder_1=require(_0x499d09(0x1f9)),ProcessorEngine_1=require(_0x499d09(0x204)),builtin_1=require('./connectors/builtin'),FlosyncClient_1=require(_0x499d09(0x1f5)),build_1=require(_0x499d09(0x20a));class Flosync{constructor(){const _0x4f2712=_0x499d09;this[_0x4f2712(0x1a8)]={},this['workflows']=new Map(),this[_0x4f2712(0x1a6)]=new Map(),this[_0x4f2712(0x1f2)]=new Map(),this[_0x4f2712(0x1c2)]=new Map();}[_0x499d09(0x1ab)](_0x3b3889){const _0x114fce=_0x499d09;this[_0x114fce(0x1a8)]={...this[_0x114fce(0x1a8)],..._0x3b3889};const _0x461665=_0x3b3889[_0x114fce(0x1c2)]||{},_0xe9afb2=_0x3b3889[_0x114fce(0x1fe)];_0xe9afb2?.[_0x114fce(0x1f7)]&&_0xe9afb2?.[_0x114fce(0x1d5)]&&this[_0x114fce(0x1c2)]['set'](_0x114fce(0x1fe),(0x0,builtin_1[_0x114fce(0x1a7)])({'baseUrl':_0xe9afb2[_0x114fce(0x1f7)],'apiKey':_0xe9afb2['apiKey']}));if(_0x3b3889['apiKey']&&_0x3b3889[_0x114fce(0x1e0)]){const _0x4fc080=this['client'];!_0x4fc080&&(this['client']=new FlosyncClient_1[(_0x114fce(0x1d6))]({'baseUrl':this[_0x114fce(0x1a8)][_0x114fce(0x1f7)],'apiKey':this[_0x114fce(0x1a8)][_0x114fce(0x1d5)],'apiSecret':this[_0x114fce(0x1a8)][_0x114fce(0x1e0)],'tokenRefreshMarginMs':this['config'][_0x114fce(0x1aa)],'tokenFallbackReuseMs':this['config']['tokenFallbackReuseMs']}));}const _0x4e50be=new ProcessorEngine_1[(_0x114fce(0x1e9))]({'workflows':this[_0x114fce(0x1d4)],'functions':this['functions'],'connectors':this['connectors'],'connectorConfig':_0x461665,'client':this['client']});return this['runner']=_0x4e50be,this;}async[_0x499d09(0x1d8)](){const _0x57fce5=_0x499d09,_0x410107=this[_0x57fce5(0x1ee)]();_0x410107&&await _0x410107[_0x57fce5(0x1d8)]();}[_0x499d09(0x1bf)](_0x1a579d,_0x1fbe9b){return this['connectors']['set'](_0x1a579d,_0x1fbe9b),this;}[_0x499d09(0x1c0)](_0x549bcd,_0xb59cbc){return new WorkflowBuilder_1['WorkflowBuilder'](_0x549bcd,_0xb59cbc);}['function'](_0x3dbd17,_0x27d7e3){const _0x57a8c9=_0x499d09;return new FunctionBuilder_1[(_0x57a8c9(0x1c3))](_0x3dbd17,_0x27d7e3);}['register'](_0x968ad){const _0x318a14=_0x499d09,_0x3e31a8=Array['isArray'](_0x968ad)?_0x968ad:[_0x968ad];for(const _0x2921c1 of _0x3e31a8){this[_0x318a14(0x1d4)][_0x318a14(0x1cd)](_0x2921c1['_id'],_0x2921c1),this['workflowsByName'][_0x318a14(0x1cd)](_0x2921c1[_0x318a14(0x1d3)],_0x2921c1);const _0x440b3e=_0x2921c1['__rawId'];if(_0x440b3e&&_0x440b3e!==_0x2921c1[_0x318a14(0x1d2)])this[_0x318a14(0x1d4)]['set'](_0x440b3e,_0x2921c1);}return this;}[_0x499d09(0x1f0)](_0x238fc7){const _0x3396f5=_0x499d09,_0x3caed6=(0x0,build_1[_0x3396f5(0x1b3)])(_0x238fc7);return this[_0x3396f5(0x1e1)](_0x3caed6);}async[_0x499d09(0x1f4)](_0x1fbe61,_0x14bb17={},_0x4968cd){const _0x37aa73=_0x499d09,_0x1fb3b8=this[_0x37aa73(0x1d4)]['get'](_0x1fbe61)??this[_0x37aa73(0x1a6)][_0x37aa73(0x1ba)](_0x1fbe61);if(_0x1fb3b8){const _0x586cee=this[_0x37aa73(0x1da)];if(!_0x586cee)throw new Error('LocalRunner\x20not\x20initialized.\x20Call\x20flosync.configure()\x20first.');const _0x4ca8d3=this['normalizeRunPayload'](_0x14bb17);return _0x586cee[_0x37aa73(0x1dd)](_0x1fb3b8,_0x4ca8d3);}const _0x2563d3=this['getClient']();if(_0x2563d3&&(_0x4968cd?.['remote']??!![]))return this[_0x37aa73(0x1cc)](_0x1fbe61,_0x14bb17);throw new Error('Workflow\x20not\x20found:\x20'+_0x1fbe61);}async[_0x499d09(0x1cc)](_0x168938,_0x14f15c={},_0x18afe5){const _0x5c604d=_0x499d09,_0x3babb6=this['getClient']();if(!_0x3babb6)throw new Error(_0x5c604d(0x1fd));const _0x22e619=_0x18afe5?.[_0x5c604d(0x1e3)]??_0x5c604d(0x1ae),_0xa19237=this[_0x5c604d(0x1b6)](_0x14f15c);return _0x3babb6[_0x5c604d(0x1d4)][_0x5c604d(0x1f4)](_0x168938,_0x22e619,{'payload':_0xa19237});}async[_0x499d09(0x1f3)](_0x26f52e,_0x2fdae7,_0x1a1383={}){const _0x2a02a1=_0x499d09,_0x2e2302=this[_0x2a02a1(0x1ee)]();if(!_0x2e2302)throw new Error(_0x2a02a1(0x1fd));return _0x2e2302[_0x2a02a1(0x1d4)]['runByWebhook'](_0x26f52e,_0x2fdae7,_0x1a1383);}async[_0x499d09(0x1ca)](_0xb59f5f,_0x1bd71d={}){const _0x3acf53=_0x499d09,_0x5eaf0d=this[_0x3acf53(0x1ee)]();if(!_0x5eaf0d)throw new Error(_0x3acf53(0x1e4));return _0x5eaf0d['functions'][_0x3acf53(0x207)](_0xb59f5f,_0x1bd71d);}async['runConnector'](_0x5a5ca8,_0x214c88,_0x33cd3b,_0x38955a){const _0x57b636=_0x499d09,_0x1cad65=this[_0x57b636(0x1c2)][_0x57b636(0x1ba)](_0x5a5ca8);if(_0x1cad65&&(_0x38955a?.[_0x57b636(0x1b2)]??![])===![]){const _0x198352=this[_0x57b636(0x1da)];if(_0x198352){const _0x2071de={'headers':_0x33cd3b?.[_0x57b636(0x1e6)]??{},'connectorConfig':this[_0x57b636(0x1a8)]['connectors']??{},'env':{},'trigger':{'body':_0x33cd3b?.[_0x57b636(0x209)],'data':_0x33cd3b?.[_0x57b636(0x209)]},'stepResults':{},'vars':_0x33cd3b?.[_0x57b636(0x1ed)]??{}},{executeConnectorAction:_0x876c18}=require(_0x57b636(0x1c8)),_0x67d691=await _0x876c18(_0x1cad65,_0x214c88,{'body':_0x33cd3b?.['body'],'params':_0x33cd3b?.[_0x57b636(0x1fc)],'pathParams':_0x33cd3b?.[_0x57b636(0x1db)],'headers':_0x33cd3b?.[_0x57b636(0x1e6)],'database':_0x33cd3b?.[_0x57b636(0x20b)],'connection_id':_0x33cd3b?.[_0x57b636(0x1b0)],'timeout':_0x33cd3b?.[_0x57b636(0x200)]},_0x2071de),_0x10b894=_0x67d691?.['mapped']??_0x67d691?.[_0x57b636(0x1ec)]??_0x67d691;return _0x10b894;}}const _0x594406=this[_0x57b636(0x1ee)]();if(_0x594406&&(_0x38955a?.[_0x57b636(0x1b2)]??!![]))return _0x594406['connectors'][_0x57b636(0x1ff)](_0x5a5ca8,_0x214c88,_0x33cd3b);throw new Error(_0x57b636(0x1fb)+_0x5a5ca8+_0x57b636(0x201));}[_0x499d09(0x1b6)](_0x54da2a){const _0x290012=_0x499d09;if(!_0x54da2a||typeof _0x54da2a!=='object')return{'trigger':{'data':_0x54da2a,'body':_0x54da2a}};if(Array[_0x290012(0x1c1)](_0x54da2a))return{'trigger':{'data':_0x54da2a,'body':_0x54da2a}};const _0x847c96=['headers',_0x290012(0x1db),_0x290012(0x205),_0x290012(0x1fc),'query',_0x290012(0x1ed),'envVars','env_vars','env',_0x290012(0x1ae),_0x290012(0x1b1),_0x290012(0x1bb)],_0x4cd48a=_0x290012(0x209)in _0x54da2a||'data'in _0x54da2a||_0x54da2a['trigger']&&(_0x290012(0x209)in _0x54da2a[_0x290012(0x1ae)]||'data'in _0x54da2a[_0x290012(0x1ae)]);let _0x16550a;if(_0x4cd48a)_0x16550a=_0x54da2a[_0x290012(0x209)]??_0x54da2a[_0x290012(0x1ad)]??_0x54da2a['trigger']?.['body']??_0x54da2a[_0x290012(0x1ae)]?.[_0x290012(0x1ad)];else{const _0x2506df=Object[_0x290012(0x1d0)](Object['entries'](_0x54da2a)['filter'](([_0x477087])=>!_0x847c96[_0x290012(0x1d1)](_0x477087)));_0x16550a=Object[_0x290012(0x1b7)](_0x2506df)[_0x290012(0x1fa)]>0x0?_0x2506df:_0x54da2a;}const _0xfd4476=_0x54da2a[_0x290012(0x1ae)]??{};return{'body':_0x16550a,'data':_0x16550a,'trigger':{..._0xfd4476,'data':_0xfd4476['data']??_0x16550a,'body':_0xfd4476['body']??_0x16550a},'headers':_0x54da2a[_0x290012(0x1e6)]??_0xfd4476[_0x290012(0x1e6)]??{},'pathParams':_0x54da2a['pathParams']??_0x54da2a['path_params']??_0xfd4476[_0x290012(0x1db)]??{},'params':_0x54da2a[_0x290012(0x1fc)]??_0xfd4476[_0x290012(0x1fc)]??{},'query':_0x54da2a[_0x290012(0x1ce)]??_0xfd4476[_0x290012(0x1ce)]??{},'vars':_0x54da2a[_0x290012(0x1ed)]??_0xfd4476[_0x290012(0x1ed)]??{},'envVars':_0x54da2a[_0x290012(0x1df)]??_0x54da2a[_0x290012(0x1cf)]??_0x54da2a[_0x290012(0x1b8)]??{},'callStack':_0x54da2a['callStack']??_0x54da2a[_0x290012(0x1bb)]??[]};}[_0x499d09(0x1c5)](_0xe80f8e){const _0x4b09f4=_0x499d09;return this[_0x4b09f4(0x1da)]=_0xe80f8e,this;}[_0x499d09(0x1ee)](){const _0x194b70=_0x499d09;return this[_0x194b70(0x1cb)]??null;}get['c'](){const _0x22c030=_0x499d09;return this[_0x22c030(0x1ee)]();}[_0x499d09(0x1f8)](_0x17ca58){return this['client']=_0x17ca58,this;}async[_0x499d09(0x1ea)](_0x45e90f){const _0x54627b=_0x499d09,_0x38394b=this['getClient']();if(!_0x38394b)throw new Error('FlosyncClient\x20not\x20configured.\x20Set\x20apiKey\x20and\x20apiSecret\x20in\x20configure().');return _0x38394b[_0x54627b(0x1d4)][_0x54627b(0x1ea)](_0x45e90f);}async['pull'](_0x4f9d4d){const _0x33b02f=_0x499d09,_0x35c6e5=this[_0x33b02f(0x1ee)]();if(!_0x35c6e5)throw new Error('FlosyncClient\x20not\x20configured.\x20Set\x20apiKey\x20and\x20apiSecret\x20in\x20configure().');const _0x4d0261=await _0x35c6e5[_0x33b02f(0x1d4)][_0x33b02f(0x1eb)](_0x4f9d4d);return this[_0x33b02f(0x1e1)](_0x4d0261),_0x4d0261;}[_0x499d09(0x1ac)](){const _0x232006=_0x499d09;return Array[_0x232006(0x1e5)](this[_0x232006(0x1d4)][_0x232006(0x208)]());}['registerFunction'](_0x51574b){const _0xfc561=_0x499d09,_0x16b576=_0x51574b[_0xfc561(0x1d2)]||_0x51574b[_0xfc561(0x1dc)]||_0x51574b[_0xfc561(0x1d3)];if(!_0x16b576)throw new Error('Function\x20must\x20have\x20_id,\x20slug,\x20or\x20name');this[_0xfc561(0x1f2)][_0xfc561(0x1cd)](_0x16b576,_0x51574b);if(_0x51574b[_0xfc561(0x1dc)]&&_0x51574b['slug']!==_0x16b576)this[_0xfc561(0x1f2)][_0xfc561(0x1cd)](_0x51574b[_0xfc561(0x1dc)],_0x51574b);if(_0x51574b[_0xfc561(0x1d3)]&&_0x51574b[_0xfc561(0x1d3)]!==_0x16b576)this['functions'][_0xfc561(0x1cd)](_0x51574b['name'],_0x51574b);const _0x42ae68=_0x51574b[_0xfc561(0x1d9)];if(_0x42ae68&&_0x42ae68!==_0x16b576)this[_0xfc561(0x1f2)][_0xfc561(0x1cd)](_0x42ae68,_0x51574b);return this;}async[_0x499d09(0x1e2)](_0x38fce7,_0xc2072d={},_0xa7cde0){const _0x1635d0=_0x499d09,_0x2dd9b8=this[_0x1635d0(0x1f2)][_0x1635d0(0x1ba)](_0x38fce7);if(_0x2dd9b8){const _0x4b5ee3=this['runner'];if(!_0x4b5ee3)throw new Error(_0x1635d0(0x1f1));const _0x3e47f4=await _0x4b5ee3['runFunction'](_0x2dd9b8,_0xc2072d);if(!_0x3e47f4['ok'])throw new Error(_0x3e47f4[_0x1635d0(0x1af)]||'Function\x20execution\x20failed');return _0x3e47f4[_0x1635d0(0x1ad)];}const _0x13d076=this[_0x1635d0(0x1ee)]();if(_0x13d076&&(_0xa7cde0?.[_0x1635d0(0x1b2)]??!![]))return this[_0x1635d0(0x1ca)](_0x38fce7,_0xc2072d);throw new Error(_0x1635d0(0x1e7)+_0x38fce7);}async[_0x499d09(0x206)](_0x1a37e8){const _0x27088b=_0x499d09,_0x3bd3c6=this[_0x27088b(0x1ee)]();if(!_0x3bd3c6)throw new Error(_0x27088b(0x1c4));return _0x3bd3c6[_0x27088b(0x1f2)][_0x27088b(0x1ea)](_0x1a37e8);}async[_0x499d09(0x1f6)](_0x5707df){const _0xeac679=_0x499d09,_0x304a20=this[_0xeac679(0x1ee)]();if(!_0x304a20)throw new Error(_0xeac679(0x1c4));return _0x304a20[_0xeac679(0x1f2)]['pull'](_0x5707df);}}exports[_0x499d09(0x1c9)]=Flosync,exports[_0x499d09(0x1c6)]=new Flosync();
@@ -4,15 +4,24 @@ export interface FlosyncClientConfig {
4
4
  baseUrl?: string;
5
5
  apiKey: string;
6
6
  apiSecret: string;
7
+ tokenRefreshMarginMs?: number;
8
+ tokenFallbackReuseMs?: number;
7
9
  }
8
10
  export declare class FlosyncClient {
9
11
  private baseUrl;
10
12
  private apiKey;
11
13
  private apiSecret;
12
14
  private jwt;
15
+ private tokenReuseUntilMs;
16
+ private tokenRefreshMarginMs;
17
+ private tokenFallbackReuseMs;
18
+ private loginPromise;
13
19
  private axios;
14
20
  constructor(config: FlosyncClientConfig);
21
+ private invalidateSessionToken;
22
+ private setSessionFromLoginResponse;
15
23
  authenticate(): Promise<void>;
24
+ private sessionTokenIsFresh;
16
25
  private ensureAuth;
17
26
  private request;
18
27
  connectors: ConnectorsApi;
@@ -1 +1 @@
1
- {"version":3,"file":"FlosyncClient.d.ts","sourceRoot":"","sources":["../src/FlosyncClient.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjG,eAAO,MAAM,wBAAwB,4BAA4B,CAAC;AAiBlE,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,GAAG,CAAuB;IAClC,OAAO,CAAC,KAAK,CAAgB;gBAEjB,MAAM,EAAE,mBAAmB;IAWjC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;YAYrB,UAAU;YAMV,OAAO;IA4BrB,UAAU,EAAE,aAAa,CAgGvB;IAEF,SAAS,EAAE,YAAY,CA+DrB;IAEF,SAAS,EAAE,YAAY,CA0CrB;IAEF,QAAQ,EAAE,WAAW,CA6BnB;CACH"}
1
+ {"version":3,"file":"FlosyncClient.d.ts","sourceRoot":"","sources":["../src/FlosyncClient.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjG,eAAO,MAAM,wBAAwB,4BAA4B,CAAC;AA+ClE,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,GAAG,CAAuB;IAClC,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,KAAK,CAAgB;gBAEjB,MAAM,EAAE,mBAAmB;IAavC,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,2BAA2B;IAgB7B,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAQnC,OAAO,CAAC,mBAAmB;YAIb,UAAU;YAkBV,OAAO;IAkCrB,UAAU,EAAE,aAAa,CAgGvB;IAEF,SAAS,EAAE,YAAY,CA+DrB;IAEF,SAAS,EAAE,YAAY,CA0CrB;IAEF,QAAQ,EAAE,WAAW,CA6BnB;CACH"}