@contractspec/module.examples 1.45.0 → 1.45.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (222) hide show
  1. package/dist/index.js +1 -2
  2. package/dist/registry.d.ts +2 -2
  3. package/dist/registry.js +2 -3
  4. package/dist/registry.js.map +1 -1
  5. package/package.json +38 -37
  6. package/dist/libs/contracts/dist/_virtual/rolldown_runtime.js +0 -6
  7. package/dist/libs/contracts/dist/_virtual/rolldown_runtime.js.map +0 -1
  8. package/dist/libs/contracts/dist/app-config/spec.js +0 -1
  9. package/dist/libs/contracts/dist/capabilities/capabilities.js +0 -1
  10. package/dist/libs/contracts/dist/capabilities/index.js +0 -2
  11. package/dist/libs/contracts/dist/capabilities/openbanking.js +0 -89
  12. package/dist/libs/contracts/dist/capabilities/openbanking.js.map +0 -1
  13. package/dist/libs/contracts/dist/client/index.js +0 -5
  14. package/dist/libs/contracts/dist/client/react/feature-render.js +0 -3
  15. package/dist/libs/contracts/dist/client/react/form-render.js +0 -6
  16. package/dist/libs/contracts/dist/client/react/index.js +0 -4
  17. package/dist/libs/contracts/dist/contract-registry/index.js +0 -1
  18. package/dist/libs/contracts/dist/contract-registry/schemas.js +0 -61
  19. package/dist/libs/contracts/dist/contract-registry/schemas.js.map +0 -1
  20. package/dist/libs/contracts/dist/data-views/index.js +0 -1
  21. package/dist/libs/contracts/dist/data-views/registry.js +0 -1
  22. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +0 -17
  23. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js.map +0 -1
  24. package/dist/libs/contracts/dist/docs/index.js +0 -27
  25. package/dist/libs/contracts/dist/docs/meta.docs.js +0 -30
  26. package/dist/libs/contracts/dist/docs/meta.docs.js.map +0 -1
  27. package/dist/libs/contracts/dist/docs/presentations.js +0 -57
  28. package/dist/libs/contracts/dist/docs/presentations.js.map +0 -1
  29. package/dist/libs/contracts/dist/docs/registry.js +0 -45
  30. package/dist/libs/contracts/dist/docs/registry.js.map +0 -1
  31. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +0 -81
  32. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js.map +0 -1
  33. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +0 -58
  34. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js.map +0 -1
  35. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-import.docblock.js +0 -65
  36. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-import.docblock.js.map +0 -1
  37. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +0 -17
  38. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js.map +0 -1
  39. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +0 -358
  40. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js.map +0 -1
  41. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +0 -38
  42. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js.map +0 -1
  43. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +0 -17
  44. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js.map +0 -1
  45. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +0 -21
  46. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js.map +0 -1
  47. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +0 -49
  48. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js.map +0 -1
  49. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +0 -80
  50. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js.map +0 -1
  51. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +0 -85
  52. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js.map +0 -1
  53. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +0 -46
  54. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js.map +0 -1
  55. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +0 -68
  56. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js.map +0 -1
  57. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +0 -41
  58. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js.map +0 -1
  59. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +0 -70
  60. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js.map +0 -1
  61. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +0 -48
  62. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js.map +0 -1
  63. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +0 -63
  64. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js.map +0 -1
  65. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +0 -156
  66. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js.map +0 -1
  67. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +0 -21
  68. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js.map +0 -1
  69. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +0 -102
  70. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js.map +0 -1
  71. package/dist/libs/contracts/dist/docs/tech-contracts.docs.js +0 -97
  72. package/dist/libs/contracts/dist/docs/tech-contracts.docs.js.map +0 -1
  73. package/dist/libs/contracts/dist/events.js +0 -2
  74. package/dist/libs/contracts/dist/examples/index.js +0 -3
  75. package/dist/libs/contracts/dist/examples/registry.js +0 -145
  76. package/dist/libs/contracts/dist/examples/registry.js.map +0 -1
  77. package/dist/libs/contracts/dist/examples/schema.js +0 -102
  78. package/dist/libs/contracts/dist/examples/schema.js.map +0 -1
  79. package/dist/libs/contracts/dist/examples/validation.js +0 -1
  80. package/dist/libs/contracts/dist/experiments/evaluator.js +0 -1
  81. package/dist/libs/contracts/dist/experiments/spec.js +0 -1
  82. package/dist/libs/contracts/dist/features/index.js +0 -1
  83. package/dist/libs/contracts/dist/features/registry.js +0 -7
  84. package/dist/libs/contracts/dist/features/registry.js.map +0 -1
  85. package/dist/libs/contracts/dist/forms/forms.js +0 -2
  86. package/dist/libs/contracts/dist/forms/index.js +0 -1
  87. package/dist/libs/contracts/dist/index.js +0 -109
  88. package/dist/libs/contracts/dist/index.js.map +0 -1
  89. package/dist/libs/contracts/dist/install.js +0 -2
  90. package/dist/libs/contracts/dist/integrations/index.js +0 -19
  91. package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js +0 -230
  92. package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js.map +0 -1
  93. package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js +0 -161
  94. package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js.map +0 -1
  95. package/dist/libs/contracts/dist/integrations/openbanking/contracts/index.js +0 -3
  96. package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js +0 -212
  97. package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js.map +0 -1
  98. package/dist/libs/contracts/dist/integrations/openbanking/models.js +0 -243
  99. package/dist/libs/contracts/dist/integrations/openbanking/models.js.map +0 -1
  100. package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js +0 -14
  101. package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js.map +0 -1
  102. package/dist/libs/contracts/dist/integrations/operations.js +0 -384
  103. package/dist/libs/contracts/dist/integrations/operations.js.map +0 -1
  104. package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js +0 -52
  105. package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js.map +0 -1
  106. package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js +0 -75
  107. package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js.map +0 -1
  108. package/dist/libs/contracts/dist/integrations/providers/gmail.js +0 -87
  109. package/dist/libs/contracts/dist/integrations/providers/gmail.js.map +0 -1
  110. package/dist/libs/contracts/dist/integrations/providers/google-calendar.js +0 -66
  111. package/dist/libs/contracts/dist/integrations/providers/google-calendar.js.map +0 -1
  112. package/dist/libs/contracts/dist/integrations/providers/index.js +0 -11
  113. package/dist/libs/contracts/dist/integrations/providers/mistral.js +0 -68
  114. package/dist/libs/contracts/dist/integrations/providers/mistral.js.map +0 -1
  115. package/dist/libs/contracts/dist/integrations/providers/postmark.js +0 -68
  116. package/dist/libs/contracts/dist/integrations/providers/postmark.js.map +0 -1
  117. package/dist/libs/contracts/dist/integrations/providers/powens.js +0 -116
  118. package/dist/libs/contracts/dist/integrations/providers/powens.js.map +0 -1
  119. package/dist/libs/contracts/dist/integrations/providers/qdrant.js +0 -73
  120. package/dist/libs/contracts/dist/integrations/providers/qdrant.js.map +0 -1
  121. package/dist/libs/contracts/dist/integrations/providers/registry.js +0 -11
  122. package/dist/libs/contracts/dist/integrations/providers/stripe.js +0 -83
  123. package/dist/libs/contracts/dist/integrations/providers/stripe.js.map +0 -1
  124. package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js +0 -61
  125. package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js.map +0 -1
  126. package/dist/libs/contracts/dist/integrations/spec.js +0 -1
  127. package/dist/libs/contracts/dist/jsonschema.js +0 -1
  128. package/dist/libs/contracts/dist/knowledge/index.js +0 -8
  129. package/dist/libs/contracts/dist/knowledge/operations.js +0 -313
  130. package/dist/libs/contracts/dist/knowledge/operations.js.map +0 -1
  131. package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js +0 -34
  132. package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js.map +0 -1
  133. package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js +0 -34
  134. package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js.map +0 -1
  135. package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js +0 -38
  136. package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js.map +0 -1
  137. package/dist/libs/contracts/dist/knowledge/spaces/index.js +0 -6
  138. package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js +0 -34
  139. package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js.map +0 -1
  140. package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js +0 -37
  141. package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js.map +0 -1
  142. package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js +0 -34
  143. package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js.map +0 -1
  144. package/dist/libs/contracts/dist/knowledge/spec.js +0 -1
  145. package/dist/libs/contracts/dist/llm/exporters.js +0 -21
  146. package/dist/libs/contracts/dist/llm/exporters.js.map +0 -1
  147. package/dist/libs/contracts/dist/llm/index.js +0 -2
  148. package/dist/libs/contracts/dist/llm/prompts.js +0 -1
  149. package/dist/libs/contracts/dist/migrations.js +0 -1
  150. package/dist/libs/contracts/dist/model-registry.js +0 -1
  151. package/dist/libs/contracts/dist/onboarding-base.js +0 -198
  152. package/dist/libs/contracts/dist/onboarding-base.js.map +0 -1
  153. package/dist/libs/contracts/dist/openapi.js +0 -2
  154. package/dist/libs/contracts/dist/operations/index.js +0 -2
  155. package/dist/libs/contracts/dist/operations/operation.js +0 -35
  156. package/dist/libs/contracts/dist/operations/operation.js.map +0 -1
  157. package/dist/libs/contracts/dist/operations/registry.js +0 -2
  158. package/dist/libs/contracts/dist/ownership.js +0 -22
  159. package/dist/libs/contracts/dist/ownership.js.map +0 -1
  160. package/dist/libs/contracts/dist/policy/engine.js +0 -1
  161. package/dist/libs/contracts/dist/policy/index.js +0 -2
  162. package/dist/libs/contracts/dist/policy/registry.js +0 -1
  163. package/dist/libs/contracts/dist/presentations/index.js +0 -2
  164. package/dist/libs/contracts/dist/presentations/registry.js +0 -1
  165. package/dist/libs/contracts/dist/presentations/transform-engine.js +0 -13
  166. package/dist/libs/contracts/dist/presentations/transform-engine.js.map +0 -1
  167. package/dist/libs/contracts/dist/prompt.js +0 -1
  168. package/dist/libs/contracts/dist/promptRegistry.js +0 -2
  169. package/dist/libs/contracts/dist/regenerator/index.js +0 -1
  170. package/dist/libs/contracts/dist/regenerator/service.js +0 -5
  171. package/dist/libs/contracts/dist/regenerator/service.js.map +0 -1
  172. package/dist/libs/contracts/dist/registry-utils.js +0 -71
  173. package/dist/libs/contracts/dist/registry-utils.js.map +0 -1
  174. package/dist/libs/contracts/dist/registry.js +0 -8
  175. package/dist/libs/contracts/dist/registry.js.map +0 -1
  176. package/dist/libs/contracts/dist/resources.js +0 -1
  177. package/dist/libs/contracts/dist/schema-to-markdown.js +0 -1
  178. package/dist/libs/contracts/dist/server/contracts-adapter-input.js +0 -1
  179. package/dist/libs/contracts/dist/server/graphql-pothos.js +0 -8
  180. package/dist/libs/contracts/dist/server/index.js +0 -8
  181. package/dist/libs/contracts/dist/server/mcp/createMcpServer.js +0 -4
  182. package/dist/libs/contracts/dist/server/mcp/registerPresentations.js +0 -2
  183. package/dist/libs/contracts/dist/server/mcp/registerPrompts.js +0 -1
  184. package/dist/libs/contracts/dist/server/mcp/registerResources.js +0 -2
  185. package/dist/libs/contracts/dist/server/mcp/registerTools.js +0 -1
  186. package/dist/libs/contracts/dist/server/provider-mcp.js +0 -1
  187. package/dist/libs/contracts/dist/server/rest-elysia.js +0 -1
  188. package/dist/libs/contracts/dist/server/rest-express.js +0 -1
  189. package/dist/libs/contracts/dist/server/rest-generic.js +0 -1
  190. package/dist/libs/contracts/dist/server/rest-next-app.js +0 -1
  191. package/dist/libs/contracts/dist/server/rest-next-pages.js +0 -1
  192. package/dist/libs/contracts/dist/telemetry/index.js +0 -2
  193. package/dist/libs/contracts/dist/telemetry/spec.js +0 -2
  194. package/dist/libs/contracts/dist/telemetry/tracker.js +0 -1
  195. package/dist/libs/contracts/dist/tests/index.js +0 -2
  196. package/dist/libs/contracts/dist/tests/runner.js +0 -2
  197. package/dist/libs/contracts/dist/tests/spec.js +0 -1
  198. package/dist/libs/contracts/dist/themes.js +0 -1
  199. package/dist/libs/contracts/dist/workflow/index.js +0 -2
  200. package/dist/libs/contracts/dist/workflow/overview.docblock.js +0 -21
  201. package/dist/libs/contracts/dist/workflow/overview.docblock.js.map +0 -1
  202. package/dist/libs/contracts/dist/workflow/runner.js +0 -1
  203. package/dist/libs/contracts/dist/workflow/spec.js +0 -1
  204. package/dist/libs/contracts/dist/workspace-config/contractsrc-schema.js +0 -263
  205. package/dist/libs/contracts/dist/workspace-config/contractsrc-schema.js.map +0 -1
  206. package/dist/libs/contracts/dist/workspace-config/index.js +0 -1
  207. package/dist/libs/contracts/dist/workspace-config/workspace-config.docblock.js +0 -45
  208. package/dist/libs/contracts/dist/workspace-config/workspace-config.docblock.js.map +0 -1
  209. package/dist/libs/schema/dist/EnumType.js +0 -2
  210. package/dist/libs/schema/dist/FieldType.js +0 -50
  211. package/dist/libs/schema/dist/FieldType.js.map +0 -1
  212. package/dist/libs/schema/dist/GraphQLSchemaType.js +0 -1
  213. package/dist/libs/schema/dist/JsonSchemaType.js +0 -1
  214. package/dist/libs/schema/dist/ScalarTypeEnum.js +0 -237
  215. package/dist/libs/schema/dist/ScalarTypeEnum.js.map +0 -1
  216. package/dist/libs/schema/dist/SchemaModel.js +0 -35
  217. package/dist/libs/schema/dist/SchemaModel.js.map +0 -1
  218. package/dist/libs/schema/dist/ZodSchemaType.js +0 -1
  219. package/dist/libs/schema/dist/entity/defineEntity.js +0 -1
  220. package/dist/libs/schema/dist/entity/index.js +0 -2
  221. package/dist/libs/schema/dist/entity/types.js +0 -1
  222. package/dist/libs/schema/dist/index.js +0 -9
@@ -1 +0,0 @@
1
- {"version":3,"file":"telemetry.js","names":[],"sources":["../../../../../../../../libs/contracts/dist/integrations/openbanking/telemetry.js"],"sourcesContent":["//#region src/integrations/openbanking/telemetry.ts\nconst OPENBANKING_PII_FIELDS = [\n\t\"iban\",\n\t\"bic\",\n\t\"accountNumberMasked\",\n\t\"accountNumber\",\n\t\"counterpartyName\",\n\t\"counterpartyAccount\",\n\t\"description\",\n\t\"merchantName\",\n\t\"merchantCategoryCode\",\n\t\"reference\"\n];\nconst OPENBANKING_TELEMETRY_EVENTS = {\n\taccountsSynced: \"openbanking.accounts.synced\",\n\taccountsSyncFailed: \"openbanking.accounts.sync_failed\",\n\ttransactionsSynced: \"openbanking.transactions.synced\",\n\ttransactionsSyncFailed: \"openbanking.transactions.sync_failed\",\n\tbalancesRefreshed: \"openbanking.balances.refreshed\",\n\tbalancesRefreshFailed: \"openbanking.balances.refresh_failed\",\n\toverviewGenerated: \"openbanking.overview.generated\"\n};\nfunction redactOpenBankingTelemetryPayload(payload) {\n\tconst redacted = {};\n\tfor (const [key, value] of Object.entries(payload)) if (OPENBANKING_PII_FIELDS.includes(key)) redacted[key] = maskValue(value);\n\telse if (Array.isArray(value)) redacted[key] = value.map((item) => typeof item === \"object\" && item !== null ? redactOpenBankingTelemetryPayload(item) : item);\n\telse if (typeof value === \"object\" && value !== null) redacted[key] = redactOpenBankingTelemetryPayload(value);\n\telse redacted[key] = value;\n\treturn redacted;\n}\nfunction maskValue(value) {\n\tif (value == null) return \"\";\n\tconst str = String(value);\n\tif (str.length <= 4) return \"*\".repeat(str.length);\n\treturn `${\"*\".repeat(Math.max(str.length - 4, 0))}${str.slice(-4)}`;\n}\n\n//#endregion\nexport { OPENBANKING_PII_FIELDS, OPENBANKING_TELEMETRY_EVENTS, redactOpenBankingTelemetryPayload };"],"mappings":";AAaA,MAAM,+BAA+B;CACpC,gBAAgB;CAChB,oBAAoB;CACpB,oBAAoB;CACpB,wBAAwB;CACxB,mBAAmB;CACnB,uBAAuB;CACvB,mBAAmB;CACnB"}
@@ -1,384 +0,0 @@
1
- import { ScalarTypeEnum } from "../../../schema/dist/ScalarTypeEnum.js";
2
- import { SchemaModel } from "../../../schema/dist/SchemaModel.js";
3
- import "../../../schema/dist/index.js";
4
- import { defineCommand, defineQuery } from "../operations/operation.js";
5
- import "../operations/index.js";
6
-
7
- //#region ../../libs/contracts/dist/integrations/operations.js
8
- const IntegrationConnectionRecord = new SchemaModel({
9
- name: "IntegrationConnectionRecord",
10
- fields: {
11
- id: {
12
- type: ScalarTypeEnum.ID(),
13
- isOptional: false
14
- },
15
- tenantId: {
16
- type: ScalarTypeEnum.ID(),
17
- isOptional: false
18
- },
19
- integrationKey: {
20
- type: ScalarTypeEnum.NonEmptyString(),
21
- isOptional: false
22
- },
23
- integrationVersion: {
24
- type: ScalarTypeEnum.Int_unsecure(),
25
- isOptional: false
26
- },
27
- label: {
28
- type: ScalarTypeEnum.String_unsecure(),
29
- isOptional: false
30
- },
31
- ownershipMode: {
32
- type: ScalarTypeEnum.String_unsecure(),
33
- isOptional: false
34
- },
35
- externalAccountId: {
36
- type: ScalarTypeEnum.String_unsecure(),
37
- isOptional: true
38
- },
39
- secretProvider: {
40
- type: ScalarTypeEnum.String_unsecure(),
41
- isOptional: false
42
- },
43
- secretRef: {
44
- type: ScalarTypeEnum.String_unsecure(),
45
- isOptional: false
46
- },
47
- status: {
48
- type: ScalarTypeEnum.String_unsecure(),
49
- isOptional: false
50
- },
51
- environment: {
52
- type: ScalarTypeEnum.String_unsecure(),
53
- isOptional: true
54
- },
55
- healthStatus: {
56
- type: ScalarTypeEnum.String_unsecure(),
57
- isOptional: true
58
- },
59
- healthCheckedAt: {
60
- type: ScalarTypeEnum.DateTime(),
61
- isOptional: true
62
- },
63
- healthLatencyMs: {
64
- type: ScalarTypeEnum.Float_unsecure(),
65
- isOptional: true
66
- },
67
- healthErrorCode: {
68
- type: ScalarTypeEnum.String_unsecure(),
69
- isOptional: true
70
- },
71
- healthErrorMessage: {
72
- type: ScalarTypeEnum.String_unsecure(),
73
- isOptional: true
74
- },
75
- usageRequestCount: {
76
- type: ScalarTypeEnum.Int_unsecure(),
77
- isOptional: true
78
- },
79
- usageSuccessCount: {
80
- type: ScalarTypeEnum.Int_unsecure(),
81
- isOptional: true
82
- },
83
- usageErrorCount: {
84
- type: ScalarTypeEnum.Int_unsecure(),
85
- isOptional: true
86
- },
87
- usageLastUsedAt: {
88
- type: ScalarTypeEnum.DateTime(),
89
- isOptional: true
90
- },
91
- usageLastErrorAt: {
92
- type: ScalarTypeEnum.DateTime(),
93
- isOptional: true
94
- },
95
- usageLastErrorCode: {
96
- type: ScalarTypeEnum.String_unsecure(),
97
- isOptional: true
98
- },
99
- createdAt: {
100
- type: ScalarTypeEnum.DateTime(),
101
- isOptional: true
102
- },
103
- updatedAt: {
104
- type: ScalarTypeEnum.DateTime(),
105
- isOptional: true
106
- }
107
- }
108
- });
109
- const CreateIntegrationConnectionInput = new SchemaModel({
110
- name: "CreateIntegrationConnectionInput",
111
- fields: {
112
- tenantId: {
113
- type: ScalarTypeEnum.ID(),
114
- isOptional: false
115
- },
116
- integrationKey: {
117
- type: ScalarTypeEnum.NonEmptyString(),
118
- isOptional: false
119
- },
120
- integrationVersion: {
121
- type: ScalarTypeEnum.Int_unsecure(),
122
- isOptional: false
123
- },
124
- label: {
125
- type: ScalarTypeEnum.String_unsecure(),
126
- isOptional: false
127
- },
128
- ownershipMode: {
129
- type: ScalarTypeEnum.String_unsecure(),
130
- isOptional: false
131
- },
132
- externalAccountId: {
133
- type: ScalarTypeEnum.String_unsecure(),
134
- isOptional: true
135
- },
136
- secretProvider: {
137
- type: ScalarTypeEnum.String_unsecure(),
138
- isOptional: false
139
- },
140
- secretRef: {
141
- type: ScalarTypeEnum.String_unsecure(),
142
- isOptional: false
143
- },
144
- environment: {
145
- type: ScalarTypeEnum.String_unsecure(),
146
- isOptional: true
147
- },
148
- config: {
149
- type: ScalarTypeEnum.JSONObject(),
150
- isOptional: false
151
- }
152
- }
153
- });
154
- const UpdateIntegrationConnectionInput = new SchemaModel({
155
- name: "UpdateIntegrationConnectionInput",
156
- fields: {
157
- connectionId: {
158
- type: ScalarTypeEnum.ID(),
159
- isOptional: false
160
- },
161
- label: {
162
- type: ScalarTypeEnum.String_unsecure(),
163
- isOptional: true
164
- },
165
- status: {
166
- type: ScalarTypeEnum.String_unsecure(),
167
- isOptional: true
168
- },
169
- ownershipMode: {
170
- type: ScalarTypeEnum.String_unsecure(),
171
- isOptional: true
172
- },
173
- externalAccountId: {
174
- type: ScalarTypeEnum.String_unsecure(),
175
- isOptional: true
176
- },
177
- secretProvider: {
178
- type: ScalarTypeEnum.String_unsecure(),
179
- isOptional: true
180
- },
181
- secretRef: {
182
- type: ScalarTypeEnum.String_unsecure(),
183
- isOptional: true
184
- },
185
- config: {
186
- type: ScalarTypeEnum.JSONObject(),
187
- isOptional: true
188
- }
189
- }
190
- });
191
- const DeleteIntegrationConnectionInput = new SchemaModel({
192
- name: "DeleteIntegrationConnectionInput",
193
- fields: { connectionId: {
194
- type: ScalarTypeEnum.ID(),
195
- isOptional: false
196
- } }
197
- });
198
- const ListIntegrationConnectionsInput = new SchemaModel({
199
- name: "ListIntegrationConnectionsInput",
200
- fields: {
201
- tenantId: {
202
- type: ScalarTypeEnum.ID(),
203
- isOptional: false
204
- },
205
- category: {
206
- type: ScalarTypeEnum.String_unsecure(),
207
- isOptional: true
208
- },
209
- status: {
210
- type: ScalarTypeEnum.String_unsecure(),
211
- isOptional: true
212
- }
213
- }
214
- });
215
- const ListIntegrationConnectionsOutput = new SchemaModel({
216
- name: "ListIntegrationConnectionsOutput",
217
- fields: { connections: {
218
- type: IntegrationConnectionRecord,
219
- isOptional: false,
220
- isArray: true
221
- } }
222
- });
223
- const TestIntegrationConnectionInput = new SchemaModel({
224
- name: "TestIntegrationConnectionInput",
225
- fields: { connectionId: {
226
- type: ScalarTypeEnum.ID(),
227
- isOptional: false
228
- } }
229
- });
230
- const TestIntegrationConnectionOutput = new SchemaModel({
231
- name: "TestIntegrationConnectionOutput",
232
- fields: {
233
- success: {
234
- type: ScalarTypeEnum.Boolean(),
235
- isOptional: false
236
- },
237
- status: {
238
- type: ScalarTypeEnum.String_unsecure(),
239
- isOptional: true
240
- },
241
- latencyMs: {
242
- type: ScalarTypeEnum.Float_unsecure(),
243
- isOptional: true
244
- },
245
- error: {
246
- type: ScalarTypeEnum.String_unsecure(),
247
- isOptional: true
248
- },
249
- errorCode: {
250
- type: ScalarTypeEnum.String_unsecure(),
251
- isOptional: true
252
- }
253
- }
254
- });
255
- const DeleteIntegrationConnectionOutput = new SchemaModel({
256
- name: "DeleteIntegrationConnectionOutput",
257
- fields: { success: {
258
- type: ScalarTypeEnum.Boolean(),
259
- isOptional: false
260
- } }
261
- });
262
- const CreateIntegrationConnection = defineCommand({
263
- meta: {
264
- key: "integrations.connection.create",
265
- title: "Create Integration Connection",
266
- version: "1.0.0",
267
- description: "Create a new integration connection for a tenant.",
268
- goal: "Provision a tenant-scoped connection to an external provider.",
269
- context: "Used by Ops or the App Studio to configure external integrations such as Stripe or Qdrant.",
270
- owners: ["@platform.integrations"],
271
- tags: ["integration", "connections"],
272
- stability: "experimental"
273
- },
274
- io: {
275
- input: CreateIntegrationConnectionInput,
276
- output: IntegrationConnectionRecord
277
- },
278
- policy: {
279
- auth: "admin",
280
- policies: [{
281
- key: "platform.integration.manage",
282
- version: "1.0.0"
283
- }]
284
- }
285
- });
286
- const UpdateIntegrationConnection = defineCommand({
287
- meta: {
288
- key: "integrations.connection.update",
289
- title: "Update Integration Connection",
290
- version: "1.0.0",
291
- description: "Update metadata or credentials for an integration connection.",
292
- goal: "Allow secure rotation of credentials and metadata adjustments.",
293
- context: "Supports rotating API keys, toggling status, or updating labels for tenant integrations.",
294
- owners: ["@platform.integrations"],
295
- tags: ["integration", "connections"],
296
- stability: "experimental"
297
- },
298
- io: {
299
- input: UpdateIntegrationConnectionInput,
300
- output: IntegrationConnectionRecord
301
- },
302
- policy: {
303
- auth: "admin",
304
- policies: [{
305
- key: "platform.integration.manage",
306
- version: "1.0.0"
307
- }]
308
- }
309
- });
310
- const DeleteIntegrationConnection = defineCommand({
311
- meta: {
312
- key: "integrations.connection.delete",
313
- title: "Delete Integration Connection",
314
- version: "1.0.0",
315
- description: "Delete an integration connection for a tenant.",
316
- goal: "Safely remove credentials and disable connector usage.",
317
- context: "Ensures connections are de-provisioned when no longer needed or breached.",
318
- owners: ["@platform.integrations"],
319
- tags: ["integration", "connections"],
320
- stability: "experimental"
321
- },
322
- io: {
323
- input: DeleteIntegrationConnectionInput,
324
- output: DeleteIntegrationConnectionOutput
325
- },
326
- policy: {
327
- auth: "admin",
328
- policies: [{
329
- key: "platform.integration.manage",
330
- version: "1.0.0"
331
- }]
332
- }
333
- });
334
- const ListIntegrationConnections = defineQuery({
335
- meta: {
336
- key: "integrations.connection.list",
337
- title: "List Integration Connections",
338
- version: "1.0.0",
339
- description: "List integration connections for a tenant.",
340
- goal: "Provide visibility into configured integrations and their status.",
341
- context: "Used by the App Studio and Ops flows to show bindings and health.",
342
- owners: ["@platform.integrations"],
343
- tags: ["integration", "connections"],
344
- stability: "experimental"
345
- },
346
- io: {
347
- input: ListIntegrationConnectionsInput,
348
- output: ListIntegrationConnectionsOutput
349
- },
350
- policy: {
351
- auth: "admin",
352
- policies: [{
353
- key: "platform.integration.read",
354
- version: "1.0.0"
355
- }]
356
- }
357
- });
358
- const TestIntegrationConnection = defineCommand({
359
- meta: {
360
- key: "integrations.connection.test",
361
- title: "Test Integration Connection",
362
- version: "1.0.0",
363
- description: "Run a health check against a configured integration connection.",
364
- goal: "Validate credentials and connectivity for external providers.",
365
- context: "Triggered manually or by background monitors to confirm provider availability.",
366
- owners: ["@platform.integrations"],
367
- tags: ["integration", "connections"],
368
- stability: "experimental"
369
- },
370
- io: {
371
- input: TestIntegrationConnectionInput,
372
- output: TestIntegrationConnectionOutput
373
- },
374
- policy: {
375
- auth: "admin",
376
- policies: [{
377
- key: "platform.integration.manage",
378
- version: "1.0.0"
379
- }]
380
- }
381
- });
382
-
383
- //#endregion
384
- //# sourceMappingURL=operations.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"operations.js","names":[],"sources":["../../../../../../../libs/contracts/dist/integrations/operations.js"],"sourcesContent":["import { defineCommand, defineQuery } from \"../operations/operation.js\";\nimport \"../operations/index.js\";\nimport { ScalarTypeEnum, SchemaModel } from \"@contractspec/lib.schema\";\n\n//#region src/integrations/operations.ts\nconst IntegrationConnectionRecord = new SchemaModel({\n\tname: \"IntegrationConnectionRecord\",\n\tfields: {\n\t\tid: {\n\t\t\ttype: ScalarTypeEnum.ID(),\n\t\t\tisOptional: false\n\t\t},\n\t\ttenantId: {\n\t\t\ttype: ScalarTypeEnum.ID(),\n\t\t\tisOptional: false\n\t\t},\n\t\tintegrationKey: {\n\t\t\ttype: ScalarTypeEnum.NonEmptyString(),\n\t\t\tisOptional: false\n\t\t},\n\t\tintegrationVersion: {\n\t\t\ttype: ScalarTypeEnum.Int_unsecure(),\n\t\t\tisOptional: false\n\t\t},\n\t\tlabel: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: false\n\t\t},\n\t\townershipMode: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: false\n\t\t},\n\t\texternalAccountId: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tsecretProvider: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: false\n\t\t},\n\t\tsecretRef: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: false\n\t\t},\n\t\tstatus: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: false\n\t\t},\n\t\tenvironment: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\thealthStatus: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\thealthCheckedAt: {\n\t\t\ttype: ScalarTypeEnum.DateTime(),\n\t\t\tisOptional: true\n\t\t},\n\t\thealthLatencyMs: {\n\t\t\ttype: ScalarTypeEnum.Float_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\thealthErrorCode: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\thealthErrorMessage: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tusageRequestCount: {\n\t\t\ttype: ScalarTypeEnum.Int_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tusageSuccessCount: {\n\t\t\ttype: ScalarTypeEnum.Int_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tusageErrorCount: {\n\t\t\ttype: ScalarTypeEnum.Int_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tusageLastUsedAt: {\n\t\t\ttype: ScalarTypeEnum.DateTime(),\n\t\t\tisOptional: true\n\t\t},\n\t\tusageLastErrorAt: {\n\t\t\ttype: ScalarTypeEnum.DateTime(),\n\t\t\tisOptional: true\n\t\t},\n\t\tusageLastErrorCode: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tcreatedAt: {\n\t\t\ttype: ScalarTypeEnum.DateTime(),\n\t\t\tisOptional: true\n\t\t},\n\t\tupdatedAt: {\n\t\t\ttype: ScalarTypeEnum.DateTime(),\n\t\t\tisOptional: true\n\t\t}\n\t}\n});\nconst CreateIntegrationConnectionInput = new SchemaModel({\n\tname: \"CreateIntegrationConnectionInput\",\n\tfields: {\n\t\ttenantId: {\n\t\t\ttype: ScalarTypeEnum.ID(),\n\t\t\tisOptional: false\n\t\t},\n\t\tintegrationKey: {\n\t\t\ttype: ScalarTypeEnum.NonEmptyString(),\n\t\t\tisOptional: false\n\t\t},\n\t\tintegrationVersion: {\n\t\t\ttype: ScalarTypeEnum.Int_unsecure(),\n\t\t\tisOptional: false\n\t\t},\n\t\tlabel: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: false\n\t\t},\n\t\townershipMode: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: false\n\t\t},\n\t\texternalAccountId: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tsecretProvider: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: false\n\t\t},\n\t\tsecretRef: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: false\n\t\t},\n\t\tenvironment: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tconfig: {\n\t\t\ttype: ScalarTypeEnum.JSONObject(),\n\t\t\tisOptional: false\n\t\t}\n\t}\n});\nconst UpdateIntegrationConnectionInput = new SchemaModel({\n\tname: \"UpdateIntegrationConnectionInput\",\n\tfields: {\n\t\tconnectionId: {\n\t\t\ttype: ScalarTypeEnum.ID(),\n\t\t\tisOptional: false\n\t\t},\n\t\tlabel: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tstatus: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\townershipMode: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\texternalAccountId: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tsecretProvider: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tsecretRef: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tconfig: {\n\t\t\ttype: ScalarTypeEnum.JSONObject(),\n\t\t\tisOptional: true\n\t\t}\n\t}\n});\nconst DeleteIntegrationConnectionInput = new SchemaModel({\n\tname: \"DeleteIntegrationConnectionInput\",\n\tfields: { connectionId: {\n\t\ttype: ScalarTypeEnum.ID(),\n\t\tisOptional: false\n\t} }\n});\nconst ListIntegrationConnectionsInput = new SchemaModel({\n\tname: \"ListIntegrationConnectionsInput\",\n\tfields: {\n\t\ttenantId: {\n\t\t\ttype: ScalarTypeEnum.ID(),\n\t\t\tisOptional: false\n\t\t},\n\t\tcategory: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tstatus: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t}\n\t}\n});\nconst ListIntegrationConnectionsOutput = new SchemaModel({\n\tname: \"ListIntegrationConnectionsOutput\",\n\tfields: { connections: {\n\t\ttype: IntegrationConnectionRecord,\n\t\tisOptional: false,\n\t\tisArray: true\n\t} }\n});\nconst TestIntegrationConnectionInput = new SchemaModel({\n\tname: \"TestIntegrationConnectionInput\",\n\tfields: { connectionId: {\n\t\ttype: ScalarTypeEnum.ID(),\n\t\tisOptional: false\n\t} }\n});\nconst TestIntegrationConnectionOutput = new SchemaModel({\n\tname: \"TestIntegrationConnectionOutput\",\n\tfields: {\n\t\tsuccess: {\n\t\t\ttype: ScalarTypeEnum.Boolean(),\n\t\t\tisOptional: false\n\t\t},\n\t\tstatus: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\tlatencyMs: {\n\t\t\ttype: ScalarTypeEnum.Float_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\terror: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t},\n\t\terrorCode: {\n\t\t\ttype: ScalarTypeEnum.String_unsecure(),\n\t\t\tisOptional: true\n\t\t}\n\t}\n});\nconst DeleteIntegrationConnectionOutput = new SchemaModel({\n\tname: \"DeleteIntegrationConnectionOutput\",\n\tfields: { success: {\n\t\ttype: ScalarTypeEnum.Boolean(),\n\t\tisOptional: false\n\t} }\n});\nconst CreateIntegrationConnection = defineCommand({\n\tmeta: {\n\t\tkey: \"integrations.connection.create\",\n\t\ttitle: \"Create Integration Connection\",\n\t\tversion: \"1.0.0\",\n\t\tdescription: \"Create a new integration connection for a tenant.\",\n\t\tgoal: \"Provision a tenant-scoped connection to an external provider.\",\n\t\tcontext: \"Used by Ops or the App Studio to configure external integrations such as Stripe or Qdrant.\",\n\t\towners: [\"@platform.integrations\"],\n\t\ttags: [\"integration\", \"connections\"],\n\t\tstability: \"experimental\"\n\t},\n\tio: {\n\t\tinput: CreateIntegrationConnectionInput,\n\t\toutput: IntegrationConnectionRecord\n\t},\n\tpolicy: {\n\t\tauth: \"admin\",\n\t\tpolicies: [{\n\t\t\tkey: \"platform.integration.manage\",\n\t\t\tversion: \"1.0.0\"\n\t\t}]\n\t}\n});\nconst UpdateIntegrationConnection = defineCommand({\n\tmeta: {\n\t\tkey: \"integrations.connection.update\",\n\t\ttitle: \"Update Integration Connection\",\n\t\tversion: \"1.0.0\",\n\t\tdescription: \"Update metadata or credentials for an integration connection.\",\n\t\tgoal: \"Allow secure rotation of credentials and metadata adjustments.\",\n\t\tcontext: \"Supports rotating API keys, toggling status, or updating labels for tenant integrations.\",\n\t\towners: [\"@platform.integrations\"],\n\t\ttags: [\"integration\", \"connections\"],\n\t\tstability: \"experimental\"\n\t},\n\tio: {\n\t\tinput: UpdateIntegrationConnectionInput,\n\t\toutput: IntegrationConnectionRecord\n\t},\n\tpolicy: {\n\t\tauth: \"admin\",\n\t\tpolicies: [{\n\t\t\tkey: \"platform.integration.manage\",\n\t\t\tversion: \"1.0.0\"\n\t\t}]\n\t}\n});\nconst DeleteIntegrationConnection = defineCommand({\n\tmeta: {\n\t\tkey: \"integrations.connection.delete\",\n\t\ttitle: \"Delete Integration Connection\",\n\t\tversion: \"1.0.0\",\n\t\tdescription: \"Delete an integration connection for a tenant.\",\n\t\tgoal: \"Safely remove credentials and disable connector usage.\",\n\t\tcontext: \"Ensures connections are de-provisioned when no longer needed or breached.\",\n\t\towners: [\"@platform.integrations\"],\n\t\ttags: [\"integration\", \"connections\"],\n\t\tstability: \"experimental\"\n\t},\n\tio: {\n\t\tinput: DeleteIntegrationConnectionInput,\n\t\toutput: DeleteIntegrationConnectionOutput\n\t},\n\tpolicy: {\n\t\tauth: \"admin\",\n\t\tpolicies: [{\n\t\t\tkey: \"platform.integration.manage\",\n\t\t\tversion: \"1.0.0\"\n\t\t}]\n\t}\n});\nconst ListIntegrationConnections = defineQuery({\n\tmeta: {\n\t\tkey: \"integrations.connection.list\",\n\t\ttitle: \"List Integration Connections\",\n\t\tversion: \"1.0.0\",\n\t\tdescription: \"List integration connections for a tenant.\",\n\t\tgoal: \"Provide visibility into configured integrations and their status.\",\n\t\tcontext: \"Used by the App Studio and Ops flows to show bindings and health.\",\n\t\towners: [\"@platform.integrations\"],\n\t\ttags: [\"integration\", \"connections\"],\n\t\tstability: \"experimental\"\n\t},\n\tio: {\n\t\tinput: ListIntegrationConnectionsInput,\n\t\toutput: ListIntegrationConnectionsOutput\n\t},\n\tpolicy: {\n\t\tauth: \"admin\",\n\t\tpolicies: [{\n\t\t\tkey: \"platform.integration.read\",\n\t\t\tversion: \"1.0.0\"\n\t\t}]\n\t}\n});\nconst TestIntegrationConnection = defineCommand({\n\tmeta: {\n\t\tkey: \"integrations.connection.test\",\n\t\ttitle: \"Test Integration Connection\",\n\t\tversion: \"1.0.0\",\n\t\tdescription: \"Run a health check against a configured integration connection.\",\n\t\tgoal: \"Validate credentials and connectivity for external providers.\",\n\t\tcontext: \"Triggered manually or by background monitors to confirm provider availability.\",\n\t\towners: [\"@platform.integrations\"],\n\t\ttags: [\"integration\", \"connections\"],\n\t\tstability: \"experimental\"\n\t},\n\tio: {\n\t\tinput: TestIntegrationConnectionInput,\n\t\toutput: TestIntegrationConnectionOutput\n\t},\n\tpolicy: {\n\t\tauth: \"admin\",\n\t\tpolicies: [{\n\t\t\tkey: \"platform.integration.manage\",\n\t\t\tversion: \"1.0.0\"\n\t\t}]\n\t}\n});\nconst integrationContracts = {\n\tCreateIntegrationConnection,\n\tUpdateIntegrationConnection,\n\tDeleteIntegrationConnection,\n\tListIntegrationConnections,\n\tTestIntegrationConnection\n};\nfunction registerIntegrationContracts(registry) {\n\treturn registry.register(CreateIntegrationConnection).register(UpdateIntegrationConnection).register(DeleteIntegrationConnection).register(ListIntegrationConnections).register(TestIntegrationConnection);\n}\n\n//#endregion\nexport { CreateIntegrationConnection, DeleteIntegrationConnection, ListIntegrationConnections, TestIntegrationConnection, UpdateIntegrationConnection, integrationContracts, registerIntegrationContracts };"],"mappings":";;;;;;;AAKA,MAAM,8BAA8B,IAAI,YAAY;CACnD,MAAM;CACN,QAAQ;EACP,IAAI;GACH,MAAM,eAAe,IAAI;GACzB,YAAY;GACZ;EACD,UAAU;GACT,MAAM,eAAe,IAAI;GACzB,YAAY;GACZ;EACD,gBAAgB;GACf,MAAM,eAAe,gBAAgB;GACrC,YAAY;GACZ;EACD,oBAAoB;GACnB,MAAM,eAAe,cAAc;GACnC,YAAY;GACZ;EACD,OAAO;GACN,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,eAAe;GACd,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,mBAAmB;GAClB,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,gBAAgB;GACf,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,WAAW;GACV,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,QAAQ;GACP,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,aAAa;GACZ,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,cAAc;GACb,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,iBAAiB;GAChB,MAAM,eAAe,UAAU;GAC/B,YAAY;GACZ;EACD,iBAAiB;GAChB,MAAM,eAAe,gBAAgB;GACrC,YAAY;GACZ;EACD,iBAAiB;GAChB,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,oBAAoB;GACnB,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,mBAAmB;GAClB,MAAM,eAAe,cAAc;GACnC,YAAY;GACZ;EACD,mBAAmB;GAClB,MAAM,eAAe,cAAc;GACnC,YAAY;GACZ;EACD,iBAAiB;GAChB,MAAM,eAAe,cAAc;GACnC,YAAY;GACZ;EACD,iBAAiB;GAChB,MAAM,eAAe,UAAU;GAC/B,YAAY;GACZ;EACD,kBAAkB;GACjB,MAAM,eAAe,UAAU;GAC/B,YAAY;GACZ;EACD,oBAAoB;GACnB,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,WAAW;GACV,MAAM,eAAe,UAAU;GAC/B,YAAY;GACZ;EACD,WAAW;GACV,MAAM,eAAe,UAAU;GAC/B,YAAY;GACZ;EACD;CACD,CAAC;AACF,MAAM,mCAAmC,IAAI,YAAY;CACxD,MAAM;CACN,QAAQ;EACP,UAAU;GACT,MAAM,eAAe,IAAI;GACzB,YAAY;GACZ;EACD,gBAAgB;GACf,MAAM,eAAe,gBAAgB;GACrC,YAAY;GACZ;EACD,oBAAoB;GACnB,MAAM,eAAe,cAAc;GACnC,YAAY;GACZ;EACD,OAAO;GACN,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,eAAe;GACd,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,mBAAmB;GAClB,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,gBAAgB;GACf,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,WAAW;GACV,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,aAAa;GACZ,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,QAAQ;GACP,MAAM,eAAe,YAAY;GACjC,YAAY;GACZ;EACD;CACD,CAAC;AACF,MAAM,mCAAmC,IAAI,YAAY;CACxD,MAAM;CACN,QAAQ;EACP,cAAc;GACb,MAAM,eAAe,IAAI;GACzB,YAAY;GACZ;EACD,OAAO;GACN,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,QAAQ;GACP,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,eAAe;GACd,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,mBAAmB;GAClB,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,gBAAgB;GACf,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,WAAW;GACV,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,QAAQ;GACP,MAAM,eAAe,YAAY;GACjC,YAAY;GACZ;EACD;CACD,CAAC;AACF,MAAM,mCAAmC,IAAI,YAAY;CACxD,MAAM;CACN,QAAQ,EAAE,cAAc;EACvB,MAAM,eAAe,IAAI;EACzB,YAAY;EACZ,EAAE;CACH,CAAC;AACF,MAAM,kCAAkC,IAAI,YAAY;CACvD,MAAM;CACN,QAAQ;EACP,UAAU;GACT,MAAM,eAAe,IAAI;GACzB,YAAY;GACZ;EACD,UAAU;GACT,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,QAAQ;GACP,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD;CACD,CAAC;AACF,MAAM,mCAAmC,IAAI,YAAY;CACxD,MAAM;CACN,QAAQ,EAAE,aAAa;EACtB,MAAM;EACN,YAAY;EACZ,SAAS;EACT,EAAE;CACH,CAAC;AACF,MAAM,iCAAiC,IAAI,YAAY;CACtD,MAAM;CACN,QAAQ,EAAE,cAAc;EACvB,MAAM,eAAe,IAAI;EACzB,YAAY;EACZ,EAAE;CACH,CAAC;AACF,MAAM,kCAAkC,IAAI,YAAY;CACvD,MAAM;CACN,QAAQ;EACP,SAAS;GACR,MAAM,eAAe,SAAS;GAC9B,YAAY;GACZ;EACD,QAAQ;GACP,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,WAAW;GACV,MAAM,eAAe,gBAAgB;GACrC,YAAY;GACZ;EACD,OAAO;GACN,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD,WAAW;GACV,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACZ;EACD;CACD,CAAC;AACF,MAAM,oCAAoC,IAAI,YAAY;CACzD,MAAM;CACN,QAAQ,EAAE,SAAS;EAClB,MAAM,eAAe,SAAS;EAC9B,YAAY;EACZ,EAAE;CACH,CAAC;AACF,MAAM,8BAA8B,cAAc;CACjD,MAAM;EACL,KAAK;EACL,OAAO;EACP,SAAS;EACT,aAAa;EACb,MAAM;EACN,SAAS;EACT,QAAQ,CAAC,yBAAyB;EAClC,MAAM,CAAC,eAAe,cAAc;EACpC,WAAW;EACX;CACD,IAAI;EACH,OAAO;EACP,QAAQ;EACR;CACD,QAAQ;EACP,MAAM;EACN,UAAU,CAAC;GACV,KAAK;GACL,SAAS;GACT,CAAC;EACF;CACD,CAAC;AACF,MAAM,8BAA8B,cAAc;CACjD,MAAM;EACL,KAAK;EACL,OAAO;EACP,SAAS;EACT,aAAa;EACb,MAAM;EACN,SAAS;EACT,QAAQ,CAAC,yBAAyB;EAClC,MAAM,CAAC,eAAe,cAAc;EACpC,WAAW;EACX;CACD,IAAI;EACH,OAAO;EACP,QAAQ;EACR;CACD,QAAQ;EACP,MAAM;EACN,UAAU,CAAC;GACV,KAAK;GACL,SAAS;GACT,CAAC;EACF;CACD,CAAC;AACF,MAAM,8BAA8B,cAAc;CACjD,MAAM;EACL,KAAK;EACL,OAAO;EACP,SAAS;EACT,aAAa;EACb,MAAM;EACN,SAAS;EACT,QAAQ,CAAC,yBAAyB;EAClC,MAAM,CAAC,eAAe,cAAc;EACpC,WAAW;EACX;CACD,IAAI;EACH,OAAO;EACP,QAAQ;EACR;CACD,QAAQ;EACP,MAAM;EACN,UAAU,CAAC;GACV,KAAK;GACL,SAAS;GACT,CAAC;EACF;CACD,CAAC;AACF,MAAM,6BAA6B,YAAY;CAC9C,MAAM;EACL,KAAK;EACL,OAAO;EACP,SAAS;EACT,aAAa;EACb,MAAM;EACN,SAAS;EACT,QAAQ,CAAC,yBAAyB;EAClC,MAAM,CAAC,eAAe,cAAc;EACpC,WAAW;EACX;CACD,IAAI;EACH,OAAO;EACP,QAAQ;EACR;CACD,QAAQ;EACP,MAAM;EACN,UAAU,CAAC;GACV,KAAK;GACL,SAAS;GACT,CAAC;EACF;CACD,CAAC;AACF,MAAM,4BAA4B,cAAc;CAC/C,MAAM;EACL,KAAK;EACL,OAAO;EACP,SAAS;EACT,aAAa;EACb,MAAM;EACN,SAAS;EACT,QAAQ,CAAC,yBAAyB;EAClC,MAAM,CAAC,eAAe,cAAc;EACpC,WAAW;EACX;CACD,IAAI;EACH,OAAO;EACP,QAAQ;EACR;CACD,QAAQ;EACP,MAAM;EACN,UAAU,CAAC;GACV,KAAK;GACL,SAAS;GACT,CAAC;EACF;CACD,CAAC"}
@@ -1,52 +0,0 @@
1
- import { StabilityEnum } from "../../ownership.js";
2
-
3
- //#region ../../libs/contracts/dist/integrations/providers/elevenlabs.js
4
- const elevenLabsIntegrationSpec = {
5
- meta: {
6
- key: "ai-voice.elevenlabs",
7
- version: "1.0.0",
8
- category: "ai-voice",
9
- title: "ElevenLabs Text-to-Speech",
10
- description: "ElevenLabs integration for neural voice synthesis and voice catalog access.",
11
- domain: "ai",
12
- owners: ["platform.ai"],
13
- tags: ["voice", "tts"],
14
- stability: StabilityEnum.Beta
15
- },
16
- supportedModes: ["managed", "byok"],
17
- capabilities: { provides: [{
18
- key: "ai.voice.synthesis",
19
- version: "1.0.0"
20
- }] },
21
- configSchema: {
22
- schema: {
23
- type: "object",
24
- properties: { defaultVoiceId: {
25
- type: "string",
26
- description: "Optional default voice identifier for synthesis requests."
27
- } }
28
- },
29
- example: { defaultVoiceId: "pNInz6obpgDQGcFmaJgB" }
30
- },
31
- secretSchema: {
32
- schema: {
33
- type: "object",
34
- required: ["apiKey"],
35
- properties: { apiKey: {
36
- type: "string",
37
- description: "ElevenLabs API key with text-to-speech permissions."
38
- } }
39
- },
40
- example: { apiKey: "eleven-***" }
41
- },
42
- healthCheck: {
43
- method: "custom",
44
- timeoutMs: 4e3
45
- },
46
- docsUrl: "https://elevenlabs.io/docs/api-reference/text-to-speech",
47
- constraints: { rateLimit: { rpm: 120 } },
48
- byokSetup: { setupInstructions: "Create an ElevenLabs API key and ensure the desired voices are accessible to the key scope." }
49
- };
50
-
51
- //#endregion
52
- //# sourceMappingURL=elevenlabs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"elevenlabs.js","names":[],"sources":["../../../../../../../../libs/contracts/dist/integrations/providers/elevenlabs.js"],"sourcesContent":["import { StabilityEnum } from \"../../ownership.js\";\n\n//#region src/integrations/providers/elevenlabs.ts\nconst elevenLabsIntegrationSpec = {\n\tmeta: {\n\t\tkey: \"ai-voice.elevenlabs\",\n\t\tversion: \"1.0.0\",\n\t\tcategory: \"ai-voice\",\n\t\ttitle: \"ElevenLabs Text-to-Speech\",\n\t\tdescription: \"ElevenLabs integration for neural voice synthesis and voice catalog access.\",\n\t\tdomain: \"ai\",\n\t\towners: [\"platform.ai\"],\n\t\ttags: [\"voice\", \"tts\"],\n\t\tstability: StabilityEnum.Beta\n\t},\n\tsupportedModes: [\"managed\", \"byok\"],\n\tcapabilities: { provides: [{\n\t\tkey: \"ai.voice.synthesis\",\n\t\tversion: \"1.0.0\"\n\t}] },\n\tconfigSchema: {\n\t\tschema: {\n\t\t\ttype: \"object\",\n\t\t\tproperties: { defaultVoiceId: {\n\t\t\t\ttype: \"string\",\n\t\t\t\tdescription: \"Optional default voice identifier for synthesis requests.\"\n\t\t\t} }\n\t\t},\n\t\texample: { defaultVoiceId: \"pNInz6obpgDQGcFmaJgB\" }\n\t},\n\tsecretSchema: {\n\t\tschema: {\n\t\t\ttype: \"object\",\n\t\t\trequired: [\"apiKey\"],\n\t\t\tproperties: { apiKey: {\n\t\t\t\ttype: \"string\",\n\t\t\t\tdescription: \"ElevenLabs API key with text-to-speech permissions.\"\n\t\t\t} }\n\t\t},\n\t\texample: { apiKey: \"eleven-***\" }\n\t},\n\thealthCheck: {\n\t\tmethod: \"custom\",\n\t\ttimeoutMs: 4e3\n\t},\n\tdocsUrl: \"https://elevenlabs.io/docs/api-reference/text-to-speech\",\n\tconstraints: { rateLimit: { rpm: 120 } },\n\tbyokSetup: { setupInstructions: \"Create an ElevenLabs API key and ensure the desired voices are accessible to the key scope.\" }\n};\nfunction registerElevenLabsIntegration(registry) {\n\treturn registry.register(elevenLabsIntegrationSpec);\n}\n\n//#endregion\nexport { elevenLabsIntegrationSpec, registerElevenLabsIntegration };"],"mappings":";;;AAGA,MAAM,4BAA4B;CACjC,MAAM;EACL,KAAK;EACL,SAAS;EACT,UAAU;EACV,OAAO;EACP,aAAa;EACb,QAAQ;EACR,QAAQ,CAAC,cAAc;EACvB,MAAM,CAAC,SAAS,MAAM;EACtB,WAAW,cAAc;EACzB;CACD,gBAAgB,CAAC,WAAW,OAAO;CACnC,cAAc,EAAE,UAAU,CAAC;EAC1B,KAAK;EACL,SAAS;EACT,CAAC,EAAE;CACJ,cAAc;EACb,QAAQ;GACP,MAAM;GACN,YAAY,EAAE,gBAAgB;IAC7B,MAAM;IACN,aAAa;IACb,EAAE;GACH;EACD,SAAS,EAAE,gBAAgB,wBAAwB;EACnD;CACD,cAAc;EACb,QAAQ;GACP,MAAM;GACN,UAAU,CAAC,SAAS;GACpB,YAAY,EAAE,QAAQ;IACrB,MAAM;IACN,aAAa;IACb,EAAE;GACH;EACD,SAAS,EAAE,QAAQ,cAAc;EACjC;CACD,aAAa;EACZ,QAAQ;EACR,WAAW;EACX;CACD,SAAS;CACT,aAAa,EAAE,WAAW,EAAE,KAAK,KAAK,EAAE;CACxC,WAAW,EAAE,mBAAmB,+FAA+F;CAC/H"}
@@ -1,75 +0,0 @@
1
- import { StabilityEnum } from "../../ownership.js";
2
-
3
- //#region ../../libs/contracts/dist/integrations/providers/gcs-storage.js
4
- const gcsStorageIntegrationSpec = {
5
- meta: {
6
- key: "storage.gcs",
7
- version: "1.0.0",
8
- category: "storage",
9
- title: "Google Cloud Storage Buckets",
10
- description: "Google Cloud Storage integration for object storage and retrieval.",
11
- domain: "infrastructure",
12
- owners: ["platform.infrastructure"],
13
- tags: [
14
- "storage",
15
- "gcs",
16
- "google-cloud"
17
- ],
18
- stability: StabilityEnum.Beta
19
- },
20
- supportedModes: ["managed", "byok"],
21
- capabilities: { provides: [{
22
- key: "storage.objects",
23
- version: "1.0.0"
24
- }] },
25
- configSchema: {
26
- schema: {
27
- type: "object",
28
- required: ["bucket"],
29
- properties: {
30
- bucket: {
31
- type: "string",
32
- description: "Primary bucket name used for storing objects."
33
- },
34
- prefix: {
35
- type: "string",
36
- description: "Optional prefix applied to object keys."
37
- }
38
- }
39
- },
40
- example: {
41
- bucket: "pfo-tenant-assets",
42
- prefix: "documents/"
43
- }
44
- },
45
- secretSchema: {
46
- schema: {
47
- type: "object",
48
- properties: {
49
- type: {
50
- type: "string",
51
- description: "Service account type field from Google credentials JSON (if provided)."
52
- },
53
- client_email: { type: "string" },
54
- private_key: { type: "string" },
55
- project_id: { type: "string" }
56
- }
57
- },
58
- example: {
59
- type: "service_account",
60
- client_email: "svc-account@example.iam.gserviceaccount.com",
61
- private_key: "-----BEGIN PRIVATE KEY-----...",
62
- project_id: "example-project"
63
- }
64
- },
65
- healthCheck: {
66
- method: "ping",
67
- timeoutMs: 4e3
68
- },
69
- docsUrl: "https://cloud.google.com/storage/docs/apis",
70
- constraints: { quotas: { storageGb: 5120 } },
71
- byokSetup: { setupInstructions: "Create a Google Cloud service account with Storage Object Admin role and upload the JSON credentials to the secret store." }
72
- };
73
-
74
- //#endregion
75
- //# sourceMappingURL=gcs-storage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gcs-storage.js","names":[],"sources":["../../../../../../../../libs/contracts/dist/integrations/providers/gcs-storage.js"],"sourcesContent":["import { StabilityEnum } from \"../../ownership.js\";\n\n//#region src/integrations/providers/gcs-storage.ts\nconst gcsStorageIntegrationSpec = {\n\tmeta: {\n\t\tkey: \"storage.gcs\",\n\t\tversion: \"1.0.0\",\n\t\tcategory: \"storage\",\n\t\ttitle: \"Google Cloud Storage Buckets\",\n\t\tdescription: \"Google Cloud Storage integration for object storage and retrieval.\",\n\t\tdomain: \"infrastructure\",\n\t\towners: [\"platform.infrastructure\"],\n\t\ttags: [\n\t\t\t\"storage\",\n\t\t\t\"gcs\",\n\t\t\t\"google-cloud\"\n\t\t],\n\t\tstability: StabilityEnum.Beta\n\t},\n\tsupportedModes: [\"managed\", \"byok\"],\n\tcapabilities: { provides: [{\n\t\tkey: \"storage.objects\",\n\t\tversion: \"1.0.0\"\n\t}] },\n\tconfigSchema: {\n\t\tschema: {\n\t\t\ttype: \"object\",\n\t\t\trequired: [\"bucket\"],\n\t\t\tproperties: {\n\t\t\t\tbucket: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tdescription: \"Primary bucket name used for storing objects.\"\n\t\t\t\t},\n\t\t\t\tprefix: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tdescription: \"Optional prefix applied to object keys.\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\texample: {\n\t\t\tbucket: \"pfo-tenant-assets\",\n\t\t\tprefix: \"documents/\"\n\t\t}\n\t},\n\tsecretSchema: {\n\t\tschema: {\n\t\t\ttype: \"object\",\n\t\t\tproperties: {\n\t\t\t\ttype: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tdescription: \"Service account type field from Google credentials JSON (if provided).\"\n\t\t\t\t},\n\t\t\t\tclient_email: { type: \"string\" },\n\t\t\t\tprivate_key: { type: \"string\" },\n\t\t\t\tproject_id: { type: \"string\" }\n\t\t\t}\n\t\t},\n\t\texample: {\n\t\t\ttype: \"service_account\",\n\t\t\tclient_email: \"svc-account@example.iam.gserviceaccount.com\",\n\t\t\tprivate_key: \"-----BEGIN PRIVATE KEY-----...\",\n\t\t\tproject_id: \"example-project\"\n\t\t}\n\t},\n\thealthCheck: {\n\t\tmethod: \"ping\",\n\t\ttimeoutMs: 4e3\n\t},\n\tdocsUrl: \"https://cloud.google.com/storage/docs/apis\",\n\tconstraints: { quotas: { storageGb: 5120 } },\n\tbyokSetup: { setupInstructions: \"Create a Google Cloud service account with Storage Object Admin role and upload the JSON credentials to the secret store.\" }\n};\nfunction registerGcsStorageIntegration(registry) {\n\treturn registry.register(gcsStorageIntegrationSpec);\n}\n\n//#endregion\nexport { gcsStorageIntegrationSpec, registerGcsStorageIntegration };"],"mappings":";;;AAGA,MAAM,4BAA4B;CACjC,MAAM;EACL,KAAK;EACL,SAAS;EACT,UAAU;EACV,OAAO;EACP,aAAa;EACb,QAAQ;EACR,QAAQ,CAAC,0BAA0B;EACnC,MAAM;GACL;GACA;GACA;GACA;EACD,WAAW,cAAc;EACzB;CACD,gBAAgB,CAAC,WAAW,OAAO;CACnC,cAAc,EAAE,UAAU,CAAC;EAC1B,KAAK;EACL,SAAS;EACT,CAAC,EAAE;CACJ,cAAc;EACb,QAAQ;GACP,MAAM;GACN,UAAU,CAAC,SAAS;GACpB,YAAY;IACX,QAAQ;KACP,MAAM;KACN,aAAa;KACb;IACD,QAAQ;KACP,MAAM;KACN,aAAa;KACb;IACD;GACD;EACD,SAAS;GACR,QAAQ;GACR,QAAQ;GACR;EACD;CACD,cAAc;EACb,QAAQ;GACP,MAAM;GACN,YAAY;IACX,MAAM;KACL,MAAM;KACN,aAAa;KACb;IACD,cAAc,EAAE,MAAM,UAAU;IAChC,aAAa,EAAE,MAAM,UAAU;IAC/B,YAAY,EAAE,MAAM,UAAU;IAC9B;GACD;EACD,SAAS;GACR,MAAM;GACN,cAAc;GACd,aAAa;GACb,YAAY;GACZ;EACD;CACD,aAAa;EACZ,QAAQ;EACR,WAAW;EACX;CACD,SAAS;CACT,aAAa,EAAE,QAAQ,EAAE,WAAW,MAAM,EAAE;CAC5C,WAAW,EAAE,mBAAmB,6HAA6H;CAC7J"}
@@ -1,87 +0,0 @@
1
- import { StabilityEnum } from "../../ownership.js";
2
-
3
- //#region ../../libs/contracts/dist/integrations/providers/gmail.js
4
- const gmailIntegrationSpec = {
5
- meta: {
6
- key: "email.gmail",
7
- version: "1.0.0",
8
- category: "email",
9
- title: "Google Gmail API",
10
- description: "Gmail integration supporting inbound thread ingestion and outbound transactional email.",
11
- domain: "communications",
12
- owners: ["platform.messaging"],
13
- tags: ["email", "gmail"],
14
- stability: StabilityEnum.Beta
15
- },
16
- supportedModes: ["managed", "byok"],
17
- capabilities: { provides: [{
18
- key: "email.inbound",
19
- version: "1.0.0"
20
- }, {
21
- key: "email.outbound",
22
- version: "1.0.0"
23
- }] },
24
- configSchema: {
25
- schema: {
26
- type: "object",
27
- properties: {
28
- labelIds: {
29
- type: "array",
30
- items: { type: "string" },
31
- description: "Optional list of label IDs to scope inbound sync."
32
- },
33
- includeSpamTrash: {
34
- type: "boolean",
35
- description: "Whether to include spam or trash messages during sync."
36
- }
37
- }
38
- },
39
- example: {
40
- labelIds: ["INBOX"],
41
- includeSpamTrash: false
42
- }
43
- },
44
- secretSchema: {
45
- schema: {
46
- type: "object",
47
- required: [
48
- "clientId",
49
- "clientSecret",
50
- "refreshToken"
51
- ],
52
- properties: {
53
- clientId: {
54
- type: "string",
55
- description: "OAuth client ID for the Google Cloud project."
56
- },
57
- clientSecret: {
58
- type: "string",
59
- description: "OAuth client secret for the Google Cloud project."
60
- },
61
- refreshToken: {
62
- type: "string",
63
- description: "OAuth refresh token for delegated Gmail access."
64
- },
65
- redirectUri: {
66
- type: "string",
67
- description: "Optional redirect URI used when issuing the refresh token."
68
- }
69
- }
70
- },
71
- example: {
72
- clientId: "xxx.apps.googleusercontent.com",
73
- clientSecret: "secret",
74
- refreshToken: "refresh-token"
75
- }
76
- },
77
- healthCheck: {
78
- method: "custom",
79
- timeoutMs: 4e3
80
- },
81
- docsUrl: "https://developers.google.com/gmail/api",
82
- constraints: { rateLimit: { rpm: 600 } },
83
- byokSetup: { setupInstructions: "Create an OAuth consent screen and credentials within Google Cloud Console, then authorize the Gmail scopes and store the resulting refresh token." }
84
- };
85
-
86
- //#endregion
87
- //# sourceMappingURL=gmail.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gmail.js","names":[],"sources":["../../../../../../../../libs/contracts/dist/integrations/providers/gmail.js"],"sourcesContent":["import { StabilityEnum } from \"../../ownership.js\";\n\n//#region src/integrations/providers/gmail.ts\nconst gmailIntegrationSpec = {\n\tmeta: {\n\t\tkey: \"email.gmail\",\n\t\tversion: \"1.0.0\",\n\t\tcategory: \"email\",\n\t\ttitle: \"Google Gmail API\",\n\t\tdescription: \"Gmail integration supporting inbound thread ingestion and outbound transactional email.\",\n\t\tdomain: \"communications\",\n\t\towners: [\"platform.messaging\"],\n\t\ttags: [\"email\", \"gmail\"],\n\t\tstability: StabilityEnum.Beta\n\t},\n\tsupportedModes: [\"managed\", \"byok\"],\n\tcapabilities: { provides: [{\n\t\tkey: \"email.inbound\",\n\t\tversion: \"1.0.0\"\n\t}, {\n\t\tkey: \"email.outbound\",\n\t\tversion: \"1.0.0\"\n\t}] },\n\tconfigSchema: {\n\t\tschema: {\n\t\t\ttype: \"object\",\n\t\t\tproperties: {\n\t\t\t\tlabelIds: {\n\t\t\t\t\ttype: \"array\",\n\t\t\t\t\titems: { type: \"string\" },\n\t\t\t\t\tdescription: \"Optional list of label IDs to scope inbound sync.\"\n\t\t\t\t},\n\t\t\t\tincludeSpamTrash: {\n\t\t\t\t\ttype: \"boolean\",\n\t\t\t\t\tdescription: \"Whether to include spam or trash messages during sync.\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\texample: {\n\t\t\tlabelIds: [\"INBOX\"],\n\t\t\tincludeSpamTrash: false\n\t\t}\n\t},\n\tsecretSchema: {\n\t\tschema: {\n\t\t\ttype: \"object\",\n\t\t\trequired: [\n\t\t\t\t\"clientId\",\n\t\t\t\t\"clientSecret\",\n\t\t\t\t\"refreshToken\"\n\t\t\t],\n\t\t\tproperties: {\n\t\t\t\tclientId: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tdescription: \"OAuth client ID for the Google Cloud project.\"\n\t\t\t\t},\n\t\t\t\tclientSecret: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tdescription: \"OAuth client secret for the Google Cloud project.\"\n\t\t\t\t},\n\t\t\t\trefreshToken: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tdescription: \"OAuth refresh token for delegated Gmail access.\"\n\t\t\t\t},\n\t\t\t\tredirectUri: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tdescription: \"Optional redirect URI used when issuing the refresh token.\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\texample: {\n\t\t\tclientId: \"xxx.apps.googleusercontent.com\",\n\t\t\tclientSecret: \"secret\",\n\t\t\trefreshToken: \"refresh-token\"\n\t\t}\n\t},\n\thealthCheck: {\n\t\tmethod: \"custom\",\n\t\ttimeoutMs: 4e3\n\t},\n\tdocsUrl: \"https://developers.google.com/gmail/api\",\n\tconstraints: { rateLimit: { rpm: 600 } },\n\tbyokSetup: { setupInstructions: \"Create an OAuth consent screen and credentials within Google Cloud Console, then authorize the Gmail scopes and store the resulting refresh token.\" }\n};\nfunction registerGmailIntegration(registry) {\n\treturn registry.register(gmailIntegrationSpec);\n}\n\n//#endregion\nexport { gmailIntegrationSpec, registerGmailIntegration };"],"mappings":";;;AAGA,MAAM,uBAAuB;CAC5B,MAAM;EACL,KAAK;EACL,SAAS;EACT,UAAU;EACV,OAAO;EACP,aAAa;EACb,QAAQ;EACR,QAAQ,CAAC,qBAAqB;EAC9B,MAAM,CAAC,SAAS,QAAQ;EACxB,WAAW,cAAc;EACzB;CACD,gBAAgB,CAAC,WAAW,OAAO;CACnC,cAAc,EAAE,UAAU,CAAC;EAC1B,KAAK;EACL,SAAS;EACT,EAAE;EACF,KAAK;EACL,SAAS;EACT,CAAC,EAAE;CACJ,cAAc;EACb,QAAQ;GACP,MAAM;GACN,YAAY;IACX,UAAU;KACT,MAAM;KACN,OAAO,EAAE,MAAM,UAAU;KACzB,aAAa;KACb;IACD,kBAAkB;KACjB,MAAM;KACN,aAAa;KACb;IACD;GACD;EACD,SAAS;GACR,UAAU,CAAC,QAAQ;GACnB,kBAAkB;GAClB;EACD;CACD,cAAc;EACb,QAAQ;GACP,MAAM;GACN,UAAU;IACT;IACA;IACA;IACA;GACD,YAAY;IACX,UAAU;KACT,MAAM;KACN,aAAa;KACb;IACD,cAAc;KACb,MAAM;KACN,aAAa;KACb;IACD,cAAc;KACb,MAAM;KACN,aAAa;KACb;IACD,aAAa;KACZ,MAAM;KACN,aAAa;KACb;IACD;GACD;EACD,SAAS;GACR,UAAU;GACV,cAAc;GACd,cAAc;GACd;EACD;CACD,aAAa;EACZ,QAAQ;EACR,WAAW;EACX;CACD,SAAS;CACT,aAAa,EAAE,WAAW,EAAE,KAAK,KAAK,EAAE;CACxC,WAAW,EAAE,mBAAmB,sJAAsJ;CACtL"}