@pellux/goodvibes-sdk 0.25.8 → 0.25.10

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 (55) hide show
  1. package/README.md +4 -0
  2. package/dist/_internal/contracts/artifacts/operator-contract.json +1 -1
  3. package/dist/_internal/contracts/generated/foundation-metadata.d.ts +1 -1
  4. package/dist/_internal/contracts/generated/foundation-metadata.js +1 -1
  5. package/dist/_internal/contracts/generated/operator-contract.js +1 -1
  6. package/dist/_internal/platform/batch/manager.d.ts.map +1 -1
  7. package/dist/_internal/platform/batch/manager.js +4 -0
  8. package/dist/_internal/platform/batch/types.d.ts +4 -0
  9. package/dist/_internal/platform/batch/types.d.ts.map +1 -1
  10. package/dist/_internal/platform/cloudflare/client.d.ts +3 -0
  11. package/dist/_internal/platform/cloudflare/client.d.ts.map +1 -0
  12. package/dist/_internal/platform/cloudflare/client.js +9 -0
  13. package/dist/_internal/platform/cloudflare/config.d.ts +8 -0
  14. package/dist/_internal/platform/cloudflare/config.d.ts.map +1 -0
  15. package/dist/_internal/platform/cloudflare/config.js +48 -0
  16. package/dist/_internal/platform/cloudflare/constants.d.ts +18 -0
  17. package/dist/_internal/platform/cloudflare/constants.d.ts.map +1 -0
  18. package/dist/_internal/platform/cloudflare/constants.js +36 -0
  19. package/dist/_internal/platform/cloudflare/discovery.d.ts +23 -0
  20. package/dist/_internal/platform/cloudflare/discovery.d.ts.map +1 -0
  21. package/dist/_internal/platform/cloudflare/discovery.js +57 -0
  22. package/dist/_internal/platform/cloudflare/index.d.ts +6 -0
  23. package/dist/_internal/platform/cloudflare/index.d.ts.map +1 -0
  24. package/dist/_internal/platform/cloudflare/index.js +4 -0
  25. package/dist/_internal/platform/cloudflare/manager.d.ts +30 -0
  26. package/dist/_internal/platform/cloudflare/manager.d.ts.map +1 -0
  27. package/dist/_internal/platform/cloudflare/manager.js +671 -0
  28. package/dist/_internal/platform/cloudflare/resources.d.ts +79 -0
  29. package/dist/_internal/platform/cloudflare/resources.d.ts.map +1 -0
  30. package/dist/_internal/platform/cloudflare/resources.js +353 -0
  31. package/dist/_internal/platform/cloudflare/types.d.ts +689 -0
  32. package/dist/_internal/platform/cloudflare/types.d.ts.map +1 -0
  33. package/dist/_internal/platform/cloudflare/types.js +10 -0
  34. package/dist/_internal/platform/cloudflare/utils.d.ts +14 -0
  35. package/dist/_internal/platform/cloudflare/utils.d.ts.map +1 -0
  36. package/dist/_internal/platform/cloudflare/utils.js +222 -0
  37. package/dist/_internal/platform/cloudflare/worker-source.d.ts +2 -0
  38. package/dist/_internal/platform/cloudflare/worker-source.d.ts.map +1 -0
  39. package/dist/_internal/platform/cloudflare/worker-source.js +165 -0
  40. package/dist/_internal/platform/config/schema-domain-runtime.d.ts +24 -0
  41. package/dist/_internal/platform/config/schema-domain-runtime.d.ts.map +1 -1
  42. package/dist/_internal/platform/config/schema-domain-runtime.js +169 -0
  43. package/dist/_internal/platform/config/schema-types.d.ts +26 -2
  44. package/dist/_internal/platform/config/schema-types.d.ts.map +1 -1
  45. package/dist/_internal/platform/daemon/http/cloudflare-routes.d.ts +7 -0
  46. package/dist/_internal/platform/daemon/http/cloudflare-routes.d.ts.map +1 -0
  47. package/dist/_internal/platform/daemon/http/cloudflare-routes.js +201 -0
  48. package/dist/_internal/platform/daemon/http/router.d.ts +1 -1
  49. package/dist/_internal/platform/daemon/http/router.d.ts.map +1 -1
  50. package/dist/_internal/platform/daemon/http/router.js +15 -0
  51. package/dist/_internal/platform/version.js +1 -1
  52. package/dist/workers.d.ts +3 -0
  53. package/dist/workers.d.ts.map +1 -1
  54. package/dist/workers.js +13 -1
  55. package/package.json +2 -1
package/README.md CHANGED
@@ -30,7 +30,11 @@ Entry points:
30
30
  - `@pellux/goodvibes-sdk/auth`
31
31
  - `@pellux/goodvibes-sdk/browser`
32
32
  - `@pellux/goodvibes-sdk/web`
33
+ - `@pellux/goodvibes-sdk/workers`
33
34
  - `@pellux/goodvibes-sdk/react-native`
34
35
  - `@pellux/goodvibes-sdk/expo`
35
36
 
37
+ Cloudflare batch provisioning is exposed through daemon `/api/cloudflare/*`
38
+ routes. The `/workers` entry is for manual Worker deployments.
39
+
36
40
  Use this package when you want the main consumer-facing GoodVibes TypeScript SDK rather than lower-level pieces.
@@ -3,7 +3,7 @@
3
3
  "product": {
4
4
  "id": "goodvibes",
5
5
  "surface": "operator",
6
- "version": "0.25.8"
6
+ "version": "0.25.10"
7
7
  },
8
8
  "auth": {
9
9
  "modes": [
@@ -1,6 +1,6 @@
1
1
  export declare const FOUNDATION_METADATA: {
2
2
  readonly productId: "goodvibes";
3
- readonly productVersion: "0.25.8";
3
+ readonly productVersion: "0.25.10";
4
4
  readonly operatorMethodCount: 223;
5
5
  readonly operatorEventCount: 30;
6
6
  readonly peerEndpointCount: 6;
@@ -1,7 +1,7 @@
1
1
  // Synced from packages/contracts/src/generated/foundation-metadata.ts
2
2
  export const FOUNDATION_METADATA = {
3
3
  "productId": "goodvibes",
4
- "productVersion": "0.25.8",
4
+ "productVersion": "0.25.10",
5
5
  "operatorMethodCount": 223,
6
6
  "operatorEventCount": 30,
7
7
  "peerEndpointCount": 6
@@ -3,7 +3,7 @@ export const OPERATOR_CONTRACT = {
3
3
  "product": {
4
4
  "id": "goodvibes",
5
5
  "surface": "operator",
6
- "version": "0.25.8"
6
+ "version": "0.25.10"
7
7
  },
8
8
  "auth": {
9
9
  "modes": [
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/batch/manager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,OAAO,KAAK,EACV,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAE1B,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAuBpB,qBAAa,kBAAkB;IAO3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwC;IAC9D,OAAO,CAAC,IAAI,CAAqC;IACjD,OAAO,CAAC,QAAQ,CAA+C;IAC/D,OAAO,CAAC,OAAO,CAA+C;gBAG3C,OAAO,EAAE;QACxB,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,GAAG,0BAA0B,CAAC,CAAC;QAChF,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,aAAa,GAAG,eAAe,GAAG,eAAe,CAAC,CAAC;QACzH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;KAC7B;IAOH,KAAK,IAAI,IAAI;IAOb,OAAO,IAAI,IAAI;IAOT,eAAe,IAAI,OAAO,CAAC,0BAA0B,CAAC;IA8BtD,SAAS,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,cAAc,CAAC;IAyDpE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAKrD,QAAQ,CAAC,KAAK,SAAM,GAAG,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC;IAOzD,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAkBjD,IAAI,CAAC,OAAO,GAAE;QAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC;YAQ9E,OAAO;YAgBP,gBAAgB;YA2BhB,mBAAmB;YA+DnB,mBAAmB;IA6DjC,OAAO,CAAC,oBAAoB;IAoC5B,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,2BAA2B;YASrB,IAAI;YAOJ,OAAO;IAIrB,OAAO,CAAC,OAAO;IAKf,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,eAAe;CAIxB"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/batch/manager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,OAAO,KAAK,EACV,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAE1B,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAuBpB,qBAAa,kBAAkB;IAO3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwC;IAC9D,OAAO,CAAC,IAAI,CAAqC;IACjD,OAAO,CAAC,QAAQ,CAA+C;IAC/D,OAAO,CAAC,OAAO,CAA+C;gBAG3C,OAAO,EAAE;QACxB,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,GAAG,0BAA0B,CAAC,CAAC;QAChF,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,aAAa,GAAG,eAAe,GAAG,eAAe,CAAC,CAAC;QACzH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;KAC7B;IAOH,KAAK,IAAI,IAAI;IAOb,OAAO,IAAI,IAAI;IAOT,eAAe,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAkCtD,SAAS,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,cAAc,CAAC;IAyDpE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAKrD,QAAQ,CAAC,KAAK,SAAM,GAAG,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC;IAOzD,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAkBjD,IAAI,CAAC,OAAO,GAAE;QAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC;YAQ9E,OAAO;YAgBP,gBAAgB;YA2BhB,mBAAmB;YA+DnB,mBAAmB;IA6DjC,OAAO,CAAC,oBAAoB;IAoC5B,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,2BAA2B;YASrB,IAAI;YAOJ,OAAO;IAIrB,OAAO,CAAC,OAAO;IAKf,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,eAAe;CAIxB"}
@@ -49,6 +49,10 @@ export class DaemonBatchManager {
49
49
  cloudflare: {
50
50
  enabled: this.getBooleanConfig('cloudflare.enabled', false),
51
51
  freeTierMode: this.getBooleanConfig('cloudflare.freeTierMode', true),
52
+ accountId: this.getStringConfig('cloudflare.accountId', ''),
53
+ workerName: this.getStringConfig('cloudflare.workerName', 'goodvibes-batch-worker'),
54
+ workerBaseUrl: this.getStringConfig('cloudflare.workerBaseUrl', ''),
55
+ daemonBaseUrl: this.getStringConfig('cloudflare.daemonBaseUrl', ''),
52
56
  queueName: this.getStringConfig('cloudflare.queueName', 'goodvibes-batch'),
53
57
  deadLetterQueueName: this.getStringConfig('cloudflare.deadLetterQueueName', 'goodvibes-batch-dlq'),
54
58
  maxQueueOpsPerDay: this.getNumberConfig('cloudflare.maxQueueOpsPerDay', 10_000),
@@ -60,6 +60,10 @@ export interface DaemonBatchRuntimeSnapshot {
60
60
  readonly cloudflare: {
61
61
  readonly enabled: boolean;
62
62
  readonly freeTierMode: boolean;
63
+ readonly accountId: string;
64
+ readonly workerName: string;
65
+ readonly workerBaseUrl: string;
66
+ readonly daemonBaseUrl: string;
63
67
  readonly queueName: string;
64
68
  readonly deadLetterQueueName: string;
65
69
  readonly maxQueueOpsPerDay: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/batch/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/batch/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,UAAU,GAAG,qBAAqB,CAAC;AACzE,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,MAAM,CAAC;AAClD,MAAM,MAAM,uBAAuB,GAAG,OAAO,GAAG,YAAY,CAAC;AAE7D,MAAM,MAAM,oBAAoB,GAC5B,QAAQ,GACR,WAAW,GACX,SAAS,GACT,WAAW,GACX,QAAQ,GACR,WAAW,GACX,SAAS,GACT,eAAe,CAAC;AAEpB,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAC;IAC9C,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,eAAe,CAAC,EAAE,WAAW,CAAC,iBAAiB,CAAC,CAAC;IAC1D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE;QAChB,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,YAAY,GAAG,QAAQ,CAAC;QACjG,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IACnD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE;QACf,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB;IACpC,wBAAwB,EAAE,MAAM,CAAC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,uBAAuB,CAAC;IAC/C,QAAQ,CAAC,UAAU,EAAE;QACnB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;QAC1B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;QAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;QACrC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;KACpC,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;QAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;QACzC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;QACtC,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;KACzC,CAAC;IACF,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,oBAAqB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnE,OAAO,EAAE,CAAC,CAAC;IACX,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACtC;AAED,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,SAAM;CAMxD"}
@@ -0,0 +1,3 @@
1
+ import type { CloudflareApiClient } from './types.js';
2
+ export declare function createCloudflareApiClient(apiToken: string): Promise<CloudflareApiClient>;
3
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/cloudflare/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,wBAAsB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAQ9F"}
@@ -0,0 +1,9 @@
1
+ export async function createCloudflareApiClient(apiToken) {
2
+ const mod = await import('cloudflare');
3
+ const Cloudflare = mod.default;
4
+ return new Cloudflare({
5
+ apiToken,
6
+ maxRetries: 2,
7
+ timeout: 30_000,
8
+ });
9
+ }
@@ -0,0 +1,8 @@
1
+ import type { ConfigKey } from '../config/schema.js';
2
+ import type { CloudflareControlPlaneConfig } from './types.js';
3
+ interface CloudflareConfigReader {
4
+ get(key: ConfigKey): unknown;
5
+ }
6
+ export declare function readCloudflareConfig(configManager: CloudflareConfigReader): CloudflareControlPlaneConfig;
7
+ export {};
8
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/cloudflare/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAYrD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAE/D,UAAU,sBAAsB;IAC9B,GAAG,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC;CAC9B;AAED,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,sBAAsB,GAAG,4BAA4B,CAkCxG"}
@@ -0,0 +1,48 @@
1
+ import { DEFAULT_DLQ_NAME, DEFAULT_DO_NAMESPACE_NAME, DEFAULT_KV_NAMESPACE_NAME, DEFAULT_QUEUE_NAME, DEFAULT_R2_BUCKET_NAME, DEFAULT_SECRETS_STORE_NAME, DEFAULT_TUNNEL_NAME, DEFAULT_WORKER_CRON, DEFAULT_WORKER_NAME, } from './constants.js';
2
+ export function readCloudflareConfig(configManager) {
3
+ return {
4
+ enabled: getBooleanConfig(configManager, 'cloudflare.enabled', false),
5
+ freeTierMode: getBooleanConfig(configManager, 'cloudflare.freeTierMode', true),
6
+ accountId: getStringConfig(configManager, 'cloudflare.accountId', ''),
7
+ apiTokenRef: getStringConfig(configManager, 'cloudflare.apiTokenRef', ''),
8
+ zoneId: getStringConfig(configManager, 'cloudflare.zoneId', ''),
9
+ zoneName: getStringConfig(configManager, 'cloudflare.zoneName', ''),
10
+ workerName: getStringConfig(configManager, 'cloudflare.workerName', DEFAULT_WORKER_NAME),
11
+ workerSubdomain: getStringConfig(configManager, 'cloudflare.workerSubdomain', ''),
12
+ workerHostname: getStringConfig(configManager, 'cloudflare.workerHostname', ''),
13
+ workerBaseUrl: getStringConfig(configManager, 'cloudflare.workerBaseUrl', ''),
14
+ daemonBaseUrl: getStringConfig(configManager, 'cloudflare.daemonBaseUrl', ''),
15
+ daemonHostname: getStringConfig(configManager, 'cloudflare.daemonHostname', ''),
16
+ workerTokenRef: getStringConfig(configManager, 'cloudflare.workerTokenRef', ''),
17
+ workerClientTokenRef: getStringConfig(configManager, 'cloudflare.workerClientTokenRef', ''),
18
+ workerCron: getStringConfig(configManager, 'cloudflare.workerCron', DEFAULT_WORKER_CRON),
19
+ queueName: getStringConfig(configManager, 'cloudflare.queueName', DEFAULT_QUEUE_NAME),
20
+ deadLetterQueueName: getStringConfig(configManager, 'cloudflare.deadLetterQueueName', DEFAULT_DLQ_NAME),
21
+ tunnelName: getStringConfig(configManager, 'cloudflare.tunnelName', DEFAULT_TUNNEL_NAME),
22
+ tunnelId: getStringConfig(configManager, 'cloudflare.tunnelId', ''),
23
+ tunnelTokenRef: getStringConfig(configManager, 'cloudflare.tunnelTokenRef', ''),
24
+ accessAppId: getStringConfig(configManager, 'cloudflare.accessAppId', ''),
25
+ accessServiceTokenId: getStringConfig(configManager, 'cloudflare.accessServiceTokenId', ''),
26
+ accessServiceTokenRef: getStringConfig(configManager, 'cloudflare.accessServiceTokenRef', ''),
27
+ kvNamespaceName: getStringConfig(configManager, 'cloudflare.kvNamespaceName', DEFAULT_KV_NAMESPACE_NAME),
28
+ kvNamespaceId: getStringConfig(configManager, 'cloudflare.kvNamespaceId', ''),
29
+ durableObjectNamespaceName: getStringConfig(configManager, 'cloudflare.durableObjectNamespaceName', DEFAULT_DO_NAMESPACE_NAME),
30
+ durableObjectNamespaceId: getStringConfig(configManager, 'cloudflare.durableObjectNamespaceId', ''),
31
+ r2BucketName: getStringConfig(configManager, 'cloudflare.r2BucketName', DEFAULT_R2_BUCKET_NAME),
32
+ secretsStoreName: getStringConfig(configManager, 'cloudflare.secretsStoreName', DEFAULT_SECRETS_STORE_NAME),
33
+ secretsStoreId: getStringConfig(configManager, 'cloudflare.secretsStoreId', ''),
34
+ maxQueueOpsPerDay: getNumberConfig(configManager, 'cloudflare.maxQueueOpsPerDay', 10_000),
35
+ };
36
+ }
37
+ function getStringConfig(configManager, key, fallback) {
38
+ const value = configManager.get(key);
39
+ return typeof value === 'string' ? value : fallback;
40
+ }
41
+ function getBooleanConfig(configManager, key, fallback) {
42
+ const value = configManager.get(key);
43
+ return typeof value === 'boolean' ? value : fallback;
44
+ }
45
+ function getNumberConfig(configManager, key, fallback) {
46
+ const value = configManager.get(key);
47
+ return typeof value === 'number' && Number.isFinite(value) ? value : fallback;
48
+ }
@@ -0,0 +1,18 @@
1
+ import type { CloudflareComponent } from './types.js';
2
+ export declare const DEFAULT_WORKER_NAME = "goodvibes-batch-worker";
3
+ export declare const DEFAULT_QUEUE_NAME = "goodvibes-batch";
4
+ export declare const DEFAULT_DLQ_NAME = "goodvibes-batch-dlq";
5
+ export declare const DEFAULT_WORKER_CRON = "*/5 * * * *";
6
+ export declare const DEFAULT_TUNNEL_NAME = "goodvibes-daemon";
7
+ export declare const DEFAULT_KV_NAMESPACE_NAME = "goodvibes-runtime";
8
+ export declare const DEFAULT_DO_NAMESPACE_NAME = "GoodVibesCoordinator";
9
+ export declare const DEFAULT_R2_BUCKET_NAME = "goodvibes-artifacts";
10
+ export declare const DEFAULT_SECRETS_STORE_NAME = "goodvibes";
11
+ export declare const CLOUDFLARE_API_TOKEN_KEY = "CLOUDFLARE_API_TOKEN";
12
+ export declare const CLOUDFLARE_TUNNEL_TOKEN_KEY = "GOODVIBES_CLOUDFLARE_TUNNEL_TOKEN";
13
+ export declare const CLOUDFLARE_ACCESS_SERVICE_TOKEN_KEY = "GOODVIBES_CLOUDFLARE_ACCESS_SERVICE_TOKEN";
14
+ export declare const CLOUDFLARE_WORKER_CLIENT_TOKEN_KEY = "GOODVIBES_CLOUDFLARE_WORKER_TOKEN";
15
+ export declare const CLOUDFLARE_WORKER_OPERATOR_TOKEN_KEY = "GOODVIBES_CLOUDFLARE_OPERATOR_TOKEN";
16
+ export declare const COMPONENT_ORDER: readonly CloudflareComponent[];
17
+ export declare const DEFAULT_COMPONENTS: Readonly<Record<CloudflareComponent, boolean>>;
18
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/cloudflare/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAC5D,eAAO,MAAM,kBAAkB,oBAAoB,CAAC;AACpD,eAAO,MAAM,gBAAgB,wBAAwB,CAAC;AACtD,eAAO,MAAM,mBAAmB,gBAAgB,CAAC;AACjD,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AACtD,eAAO,MAAM,yBAAyB,sBAAsB,CAAC;AAC7D,eAAO,MAAM,yBAAyB,yBAAyB,CAAC;AAChE,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAC5D,eAAO,MAAM,0BAA0B,cAAc,CAAC;AACtD,eAAO,MAAM,wBAAwB,yBAAyB,CAAC;AAC/D,eAAO,MAAM,2BAA2B,sCAAsC,CAAC;AAC/E,eAAO,MAAM,mCAAmC,8CAA8C,CAAC;AAC/F,eAAO,MAAM,kCAAkC,sCAAsC,CAAC;AACtF,eAAO,MAAM,oCAAoC,wCAAwC,CAAC;AAE1F,eAAO,MAAM,eAAe,EAAE,SAAS,mBAAmB,EAUzD,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAU7E,CAAC"}
@@ -0,0 +1,36 @@
1
+ export const DEFAULT_WORKER_NAME = 'goodvibes-batch-worker';
2
+ export const DEFAULT_QUEUE_NAME = 'goodvibes-batch';
3
+ export const DEFAULT_DLQ_NAME = 'goodvibes-batch-dlq';
4
+ export const DEFAULT_WORKER_CRON = '*/5 * * * *';
5
+ export const DEFAULT_TUNNEL_NAME = 'goodvibes-daemon';
6
+ export const DEFAULT_KV_NAMESPACE_NAME = 'goodvibes-runtime';
7
+ export const DEFAULT_DO_NAMESPACE_NAME = 'GoodVibesCoordinator';
8
+ export const DEFAULT_R2_BUCKET_NAME = 'goodvibes-artifacts';
9
+ export const DEFAULT_SECRETS_STORE_NAME = 'goodvibes';
10
+ export const CLOUDFLARE_API_TOKEN_KEY = 'CLOUDFLARE_API_TOKEN';
11
+ export const CLOUDFLARE_TUNNEL_TOKEN_KEY = 'GOODVIBES_CLOUDFLARE_TUNNEL_TOKEN';
12
+ export const CLOUDFLARE_ACCESS_SERVICE_TOKEN_KEY = 'GOODVIBES_CLOUDFLARE_ACCESS_SERVICE_TOKEN';
13
+ export const CLOUDFLARE_WORKER_CLIENT_TOKEN_KEY = 'GOODVIBES_CLOUDFLARE_WORKER_TOKEN';
14
+ export const CLOUDFLARE_WORKER_OPERATOR_TOKEN_KEY = 'GOODVIBES_CLOUDFLARE_OPERATOR_TOKEN';
15
+ export const COMPONENT_ORDER = [
16
+ 'workers',
17
+ 'queues',
18
+ 'zeroTrustTunnel',
19
+ 'zeroTrustAccess',
20
+ 'dns',
21
+ 'kv',
22
+ 'durableObjects',
23
+ 'secretsStore',
24
+ 'r2',
25
+ ];
26
+ export const DEFAULT_COMPONENTS = {
27
+ workers: true,
28
+ queues: true,
29
+ zeroTrustTunnel: false,
30
+ zeroTrustAccess: false,
31
+ dns: false,
32
+ kv: false,
33
+ durableObjects: false,
34
+ secretsStore: false,
35
+ r2: false,
36
+ };
@@ -0,0 +1,23 @@
1
+ import type { CloudflareApiClient, CloudflareZoneLike } from './types.js';
2
+ export declare function discoverZones(client: CloudflareApiClient, input: {
3
+ readonly accountId: string;
4
+ readonly zoneName?: string;
5
+ readonly warnings: string[];
6
+ }): Promise<readonly CloudflareZoneLike[]>;
7
+ export declare function selectDiscoveredZone(client: CloudflareApiClient, zones: readonly CloudflareZoneLike[], input: {
8
+ readonly zoneId?: string;
9
+ readonly zoneName?: string;
10
+ readonly configuredZoneId: string;
11
+ readonly configuredZoneName: string;
12
+ readonly warnings: string[];
13
+ }): Promise<CloudflareZoneLike | undefined>;
14
+ export declare function resolveZone(client: CloudflareApiClient, input: {
15
+ readonly accountId: string;
16
+ readonly zoneId?: string;
17
+ readonly zoneName?: string;
18
+ readonly configuredZoneId: string;
19
+ readonly configuredZoneName: string;
20
+ readonly required: boolean;
21
+ }): Promise<CloudflareZoneLike | undefined>;
22
+ export declare function tryDiscover<T>(label: string, warnings: string[], run: () => Promise<T>): Promise<T | undefined>;
23
+ //# sourceMappingURL=discovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/cloudflare/discovery.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAIpB,wBAAsB,aAAa,CACjC,MAAM,EAAE,mBAAmB,EAC3B,KAAK,EAAE;IAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,GAC7F,OAAO,CAAC,SAAS,kBAAkB,EAAE,CAAC,CASxC;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,mBAAmB,EAC3B,KAAK,EAAE,SAAS,kBAAkB,EAAE,EACpC,KAAK,EAAE;IACL,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;CAC7B,GACA,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAYzC;AAED,wBAAsB,WAAW,CAC/B,MAAM,EAAE,mBAAmB,EAC3B,KAAK,EAAE;IACL,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B,GACA,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAgBzC;AAED,wBAAsB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAOrH"}
@@ -0,0 +1,57 @@
1
+ import { summarizeError } from '../utils/error-display.js';
2
+ import { CloudflareControlPlaneError } from './types.js';
3
+ import { clean, collectAsync } from './utils.js';
4
+ export async function discoverZones(client, input) {
5
+ if (!client.zones)
6
+ return [];
7
+ return await tryDiscover('zones', input.warnings, async () => {
8
+ const query = {
9
+ ...(input.accountId ? { account: { id: input.accountId } } : {}),
10
+ ...(clean(input.zoneName) ? { name: clean(input.zoneName) } : {}),
11
+ };
12
+ return await collectAsync(client.zones.list(query));
13
+ }) ?? [];
14
+ }
15
+ export async function selectDiscoveredZone(client, zones, input) {
16
+ const zoneId = clean(input.zoneId) || input.configuredZoneId;
17
+ if (zoneId && client.zones) {
18
+ try {
19
+ return await client.zones.get({ zone_id: zoneId });
20
+ }
21
+ catch (error) {
22
+ input.warnings.push(`Could not load Cloudflare zone ${zoneId}: ${summarizeError(error)}`);
23
+ }
24
+ }
25
+ const zoneName = clean(input.zoneName) || input.configuredZoneName;
26
+ if (zoneName)
27
+ return zones.find((zone) => zone.name === zoneName);
28
+ return zones.length === 1 ? zones[0] : undefined;
29
+ }
30
+ export async function resolveZone(client, input) {
31
+ if (!client.zones) {
32
+ if (input.required) {
33
+ throw new CloudflareControlPlaneError('The Cloudflare client does not expose Zones APIs required for the requested operation.', 'CLOUDFLARE_ZONES_API_UNAVAILABLE', 500);
34
+ }
35
+ return undefined;
36
+ }
37
+ const zoneId = clean(input.zoneId) || input.configuredZoneId;
38
+ if (zoneId)
39
+ return await client.zones.get({ zone_id: zoneId });
40
+ const zoneName = clean(input.zoneName) || input.configuredZoneName;
41
+ const zones = await collectAsync(client.zones.list({
42
+ ...(input.accountId ? { account: { id: input.accountId } } : {}),
43
+ ...(zoneName ? { name: zoneName } : {}),
44
+ }));
45
+ if (zoneName)
46
+ return zones.find((zone) => zone.name === zoneName);
47
+ return zones.length === 1 ? zones[0] : undefined;
48
+ }
49
+ export async function tryDiscover(label, warnings, run) {
50
+ try {
51
+ return await run();
52
+ }
53
+ catch (error) {
54
+ warnings.push(`Could not discover Cloudflare ${label}: ${summarizeError(error)}`);
55
+ return undefined;
56
+ }
57
+ }
@@ -0,0 +1,6 @@
1
+ export { CloudflareControlPlaneManager } from './manager.js';
2
+ export { createCloudflareApiClient } from './client.js';
3
+ export { GOODVIBES_CLOUDFLARE_WORKER_MODULE } from './worker-source.js';
4
+ export type { CloudflareApiClient, CloudflareComponent, CloudflareComponentSelection, CloudflareControlPlaneConfig, CloudflareControlPlaneOptions, CloudflareControlPlaneStatus, CloudflareDiscoverInput, CloudflareDiscoverResult, CloudflareDisableInput, CloudflareDisableResult, CloudflareOperationalTokenInput, CloudflareOperationalTokenResult, CloudflareProvisionInput, CloudflareProvisionResult, CloudflareProvisionStep, CloudflareTokenPermissionRequirement, CloudflareTokenRequirementsInput, CloudflareTokenRequirementsResult, CloudflareValidateInput, CloudflareValidateResult, CloudflareVerifyInput, CloudflareVerifyResult, } from './types.js';
5
+ export { CloudflareControlPlaneError } from './types.js';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/cloudflare/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,kCAAkC,EAAE,MAAM,oBAAoB,CAAC;AACxE,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,4BAA4B,EAC5B,4BAA4B,EAC5B,6BAA6B,EAC7B,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,+BAA+B,EAC/B,gCAAgC,EAChC,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACvB,oCAAoC,EACpC,gCAAgC,EAChC,iCAAiC,EACjC,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { CloudflareControlPlaneManager } from './manager.js';
2
+ export { createCloudflareApiClient } from './client.js';
3
+ export { GOODVIBES_CLOUDFLARE_WORKER_MODULE } from './worker-source.js';
4
+ export { CloudflareControlPlaneError } from './types.js';
@@ -0,0 +1,30 @@
1
+ import type { CloudflareControlPlaneOptions, CloudflareControlPlaneStatus, CloudflareDiscoverInput, CloudflareDiscoverResult, CloudflareDisableInput, CloudflareDisableResult, CloudflareOperationalTokenInput, CloudflareOperationalTokenResult, CloudflareProvisionInput, CloudflareProvisionResult, CloudflareTokenRequirementsInput, CloudflareTokenRequirementsResult, CloudflareValidateInput, CloudflareValidateResult, CloudflareVerifyInput, CloudflareVerifyResult } from './types.js';
2
+ export declare class CloudflareControlPlaneManager {
3
+ private readonly options;
4
+ private readonly createClient;
5
+ private readonly fetchImpl;
6
+ constructor(options: CloudflareControlPlaneOptions);
7
+ describeStatus(): Promise<CloudflareControlPlaneStatus>;
8
+ tokenRequirements(input?: CloudflareTokenRequirementsInput): CloudflareTokenRequirementsResult;
9
+ createOperationalToken(input: CloudflareOperationalTokenInput): Promise<CloudflareOperationalTokenResult>;
10
+ discover(input?: CloudflareDiscoverInput): Promise<CloudflareDiscoverResult>;
11
+ validate(input: CloudflareValidateInput): Promise<CloudflareValidateResult>;
12
+ provision(input: CloudflareProvisionInput): Promise<CloudflareProvisionResult>;
13
+ verify(input?: CloudflareVerifyInput): Promise<CloudflareVerifyResult>;
14
+ disable(input?: CloudflareDisableInput): Promise<CloudflareDisableResult>;
15
+ private readConfig;
16
+ private resolveAccountId;
17
+ private resolveWorkerName;
18
+ private resolveApiToken;
19
+ private resolveOperatorToken;
20
+ private resolveWorkerClientToken;
21
+ private resolveSecretRef;
22
+ private storeSecret;
23
+ private requireAccountTokens;
24
+ private collectPermissionGroups;
25
+ private createProvisioningContext;
26
+ private fetchWorker;
27
+ private generateToken;
28
+ private setConfig;
29
+ }
30
+ //# sourceMappingURL=manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/cloudflare/manager.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAIV,6BAA6B,EAC7B,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EAGvB,+BAA+B,EAC/B,gCAAgC,EAEhC,wBAAwB,EACxB,yBAAyB,EAMzB,gCAAgC,EAChC,iCAAiC,EAEjC,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAiBpB,qBAAa,6BAA6B;IAI5B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAHpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqD;IAClF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;gBAEZ,OAAO,EAAE,6BAA6B;IAK7D,cAAc,IAAI,OAAO,CAAC,4BAA4B,CAAC;IA0C7D,iBAAiB,CAAC,KAAK,GAAE,gCAAqC,GAAG,iCAAiC;IAkB5F,sBAAsB,CAAC,KAAK,EAAE,+BAA+B,GAAG,OAAO,CAAC,gCAAgC,CAAC;IAqEzG,QAAQ,CAAC,KAAK,GAAE,uBAA4B,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAuEhF,QAAQ,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAuB3E,SAAS,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,yBAAyB,CAAC;IA2S9E,MAAM,CAAC,KAAK,GAAE,qBAA0B,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAe1E,OAAO,CAAC,KAAK,GAAE,sBAA2B,GAAG,OAAO,CAAC,uBAAuB,CAAC;IA0BnF,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,iBAAiB;YAYX,eAAe;YAaf,oBAAoB;YAapB,wBAAwB;YAaxB,gBAAgB;YAahB,WAAW;IAOzB,OAAO,CAAC,oBAAoB;YAOd,uBAAuB;IAQrC,OAAO,CAAC,yBAAyB;YAQnB,WAAW;IAazB,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,SAAS;CAMlB"}