0pflow 0.1.0-dev.308b61c → 0.1.0-dev.3e8826e

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 (128) hide show
  1. package/dist/__tests__/factory.test.js +13 -0
  2. package/dist/__tests__/factory.test.js.map +1 -1
  3. package/dist/__tests__/integration.e2e.test.js +2 -1
  4. package/dist/__tests__/integration.e2e.test.js.map +1 -1
  5. package/dist/__tests__/integration.test.js +87 -82
  6. package/dist/__tests__/integration.test.js.map +1 -1
  7. package/dist/agent.d.ts +1 -0
  8. package/dist/agent.d.ts.map +1 -1
  9. package/dist/agent.js +17 -2
  10. package/dist/agent.js.map +1 -1
  11. package/dist/cli/app.d.ts +6 -0
  12. package/dist/cli/app.d.ts.map +1 -1
  13. package/dist/cli/app.js +31 -0
  14. package/dist/cli/app.js.map +1 -1
  15. package/dist/cli/cloud-dev.d.ts +7 -0
  16. package/dist/cli/cloud-dev.d.ts.map +1 -0
  17. package/dist/cli/cloud-dev.js +570 -0
  18. package/dist/cli/cloud-dev.js.map +1 -0
  19. package/dist/cli/deploy.d.ts +27 -0
  20. package/dist/cli/deploy.d.ts.map +1 -0
  21. package/dist/cli/deploy.js +332 -0
  22. package/dist/cli/deploy.js.map +1 -0
  23. package/dist/cli/env.d.ts +3 -1
  24. package/dist/cli/env.d.ts.map +1 -1
  25. package/dist/cli/env.js +8 -3
  26. package/dist/cli/env.js.map +1 -1
  27. package/dist/cli/index.js +87 -3
  28. package/dist/cli/index.js.map +1 -1
  29. package/dist/cli/install.d.ts +4 -0
  30. package/dist/cli/install.d.ts.map +1 -1
  31. package/dist/cli/install.js +26 -25
  32. package/dist/cli/install.js.map +1 -1
  33. package/dist/cli/mcp/lib/scaffolding.d.ts.map +1 -1
  34. package/dist/cli/mcp/lib/scaffolding.js +38 -20
  35. package/dist/cli/mcp/lib/scaffolding.js.map +1 -1
  36. package/dist/cli/mcp/tools/getConnectionInfo.d.ts.map +1 -1
  37. package/dist/cli/mcp/tools/getConnectionInfo.js +4 -10
  38. package/dist/cli/mcp/tools/getConnectionInfo.js.map +1 -1
  39. package/dist/cli/run.d.ts.map +1 -1
  40. package/dist/cli/run.js +278 -105
  41. package/dist/cli/run.js.map +1 -1
  42. package/dist/connections/cloud-auth.d.ts.map +1 -1
  43. package/dist/connections/cloud-auth.js +5 -1
  44. package/dist/connections/cloud-auth.js.map +1 -1
  45. package/dist/connections/cloud-client.d.ts.map +1 -1
  46. package/dist/connections/cloud-client.js +10 -3
  47. package/dist/connections/cloud-client.js.map +1 -1
  48. package/dist/connections/cloud-integration-provider.d.ts +2 -1
  49. package/dist/connections/cloud-integration-provider.d.ts.map +1 -1
  50. package/dist/connections/cloud-integration-provider.js +18 -2
  51. package/dist/connections/cloud-integration-provider.js.map +1 -1
  52. package/dist/connections/connection-labels.d.ts +14 -0
  53. package/dist/connections/connection-labels.d.ts.map +1 -0
  54. package/dist/connections/connection-labels.js +46 -0
  55. package/dist/connections/connection-labels.js.map +1 -0
  56. package/dist/connections/index.d.ts +1 -0
  57. package/dist/connections/index.d.ts.map +1 -1
  58. package/dist/connections/index.js +1 -0
  59. package/dist/connections/index.js.map +1 -1
  60. package/dist/connections/integration-provider.d.ts +1 -0
  61. package/dist/connections/integration-provider.d.ts.map +1 -1
  62. package/dist/connections/local-integration-provider.d.ts +2 -1
  63. package/dist/connections/local-integration-provider.d.ts.map +1 -1
  64. package/dist/connections/local-integration-provider.js +20 -3
  65. package/dist/connections/local-integration-provider.js.map +1 -1
  66. package/dist/connections/nango-client.d.ts +1 -1
  67. package/dist/connections/nango-client.d.ts.map +1 -1
  68. package/dist/connections/nango-client.js +3 -2
  69. package/dist/connections/nango-client.js.map +1 -1
  70. package/dist/connections/resolver.d.ts +4 -4
  71. package/dist/connections/resolver.d.ts.map +1 -1
  72. package/dist/connections/resolver.js +12 -8
  73. package/dist/connections/resolver.js.map +1 -1
  74. package/dist/connections/schema.d.ts +3 -1
  75. package/dist/connections/schema.d.ts.map +1 -1
  76. package/dist/connections/schema.js +10 -4
  77. package/dist/connections/schema.js.map +1 -1
  78. package/dist/dev-ui/api.d.ts +5 -0
  79. package/dist/dev-ui/api.d.ts.map +1 -1
  80. package/dist/dev-ui/api.js +39 -3
  81. package/dist/dev-ui/api.js.map +1 -1
  82. package/dist/dev-ui/dag/extractor.d.ts.map +1 -1
  83. package/dist/dev-ui/dag/extractor.js +7 -19
  84. package/dist/dev-ui/dag/extractor.js.map +1 -1
  85. package/dist/dev-ui/deploy-api.d.ts +14 -0
  86. package/dist/dev-ui/deploy-api.d.ts.map +1 -0
  87. package/dist/dev-ui/deploy-api.js +112 -0
  88. package/dist/dev-ui/deploy-api.js.map +1 -0
  89. package/dist/dev-ui/dev-server.d.ts.map +1 -1
  90. package/dist/dev-ui/dev-server.js +62 -8
  91. package/dist/dev-ui/dev-server.js.map +1 -1
  92. package/dist/dev-ui/watcher.d.ts.map +1 -1
  93. package/dist/dev-ui/watcher.js +6 -2
  94. package/dist/dev-ui/watcher.js.map +1 -1
  95. package/dist/dev-ui-client/assets/index-Cc0tmhKa.css +32 -0
  96. package/dist/dev-ui-client/assets/index-Cqhzxumy.js +172 -0
  97. package/dist/dev-ui-client/index.html +2 -2
  98. package/dist/discover.d.ts.map +1 -1
  99. package/dist/discover.js +5 -2
  100. package/dist/discover.js.map +1 -1
  101. package/dist/factory.d.ts.map +1 -1
  102. package/dist/factory.js +15 -4
  103. package/dist/factory.js.map +1 -1
  104. package/dist/index.d.ts +4 -2
  105. package/dist/index.d.ts.map +1 -1
  106. package/dist/index.js +5 -2
  107. package/dist/index.js.map +1 -1
  108. package/dist/registry-gen.d.ts +6 -0
  109. package/dist/registry-gen.d.ts.map +1 -0
  110. package/dist/registry-gen.js +146 -0
  111. package/dist/registry-gen.js.map +1 -0
  112. package/dist/types.d.ts +14 -7
  113. package/dist/types.d.ts.map +1 -1
  114. package/dist/types.js +18 -1
  115. package/dist/types.js.map +1 -1
  116. package/dist/workflow.d.ts +1 -1
  117. package/dist/workflow.d.ts.map +1 -1
  118. package/dist/workflow.js +25 -3
  119. package/dist/workflow.js.map +1 -1
  120. package/package.json +3 -1
  121. package/templates/app/.dockerignore +6 -0
  122. package/templates/app/Dockerfile +34 -0
  123. package/templates/app/generated/registry.ts +8 -0
  124. package/templates/app/next.config.js +4 -1
  125. package/templates/app/package.json +2 -0
  126. package/templates/app/src/lib/pflow.ts +5 -6
  127. package/dist/dev-ui-client/assets/index-C-LxzUII.css +0 -32
  128. package/dist/dev-ui-client/assets/index-aAIwXl4O.js +0 -127
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-client.js","sourceRoot":"","sources":["../../src/connections/cloud-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,OAAO,SAAU,SAAQ,KAAK;IAClC,YAAY,OAAgB;QAC1B,KAAK,CACH,OAAO;YACL,8EAA8E,CACjF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;IAC1B,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjB,MAAM,CAAS;IAE/B,YAAY,MAAc,EAAE,OAAe;QACzC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAAc,EACd,IAAY,EACZ,IAA8B;IAE9B,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACvB,gEAAgE;QAChE,MAAM,YAAY,EAAE,CAAC;QAErB,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;YACvB,MAAM,IAAI,SAAS,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,EAAG,CAAC;IAC1B,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IAEjC,MAAM,OAAO,GAA2B;QACtC,aAAa,EAAE,UAAU,KAAK,EAAE;QAChC,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,SAAS,GAAG,IAAI,EAAE,EAAE;QAClD,MAAM;QACN,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;KAC9C,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;IAExE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,YAAY,GACf,YAAY,CAAC,KAAgB;YAC9B,QAAQ,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;QACpD,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,YAAY,CAAC,IAAI,CAAC;AAC3B,CAAC;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"cloud-client.js","sourceRoot":"","sources":["../../src/connections/cloud-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,OAAO,SAAU,SAAQ,KAAK;IAClC,YAAY,OAAgB;QAC1B,KAAK,CACH,OAAO;YACL,8EAA8E,CACjF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;IAC1B,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjB,MAAM,CAAS;IAE/B,YAAY,MAAc,EAAE,OAAe;QACzC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAAc,EACd,IAAY,EACZ,IAA8B;IAE9B,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACvB,gEAAgE;QAChE,MAAM,YAAY,EAAE,CAAC;QAErB,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;YACvB,MAAM,IAAI,SAAS,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,EAAG,CAAC;IAC1B,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IAEjC,MAAM,OAAO,GAA2B;QACtC,aAAa,EAAE,UAAU,KAAK,EAAE;QAChC,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,SAAS,GAAG,IAAI,EAAE,EAAE;QAClD,MAAM;QACN,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;KAC9C,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,IAAI,YAAY,GAAG,QAAQ,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;QACrE,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAuB,CAAC;YAChE,IAAI,SAAS,CAAC,KAAK;gBAAE,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC;QACtD,CAAC;QAAC,MAAM,CAAC;YACP,oEAAoE;QACtE,CAAC;QACD,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,YAAY,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;IACxE,OAAO,YAAY,CAAC,IAAI,CAAC;AAC3B,CAAC;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { IntegrationProvider } from "./integration-provider.js";
2
- import type { ConnectionCredentials } from "../types.js";
2
+ import { ConnectionCredentials } from "../types.js";
3
3
  /**
4
4
  * IntegrationProvider backed by the 0pflow cloud server (hosted mode).
5
5
  * All Nango operations are proxied through the server — no NANGO_SECRET_KEY needed locally.
@@ -13,6 +13,7 @@ export declare class CloudIntegrationProvider implements IntegrationProvider {
13
13
  listConnections(integrationId: string): Promise<Array<{
14
14
  connection_id: string;
15
15
  provider_config_key: string;
16
+ display_name: string;
16
17
  }>>;
17
18
  createConnectSession(integrationId: string): Promise<{
18
19
  token: string;
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-integration-provider.d.ts","sourceRoot":"","sources":["../../src/connections/cloud-integration-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGzD;;;GAGG;AACH,qBAAa,wBAAyB,YAAW,mBAAmB;IAC5D,gBAAgB,CACpB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,qBAAqB,CAAC;IAS3B,gBAAgB,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAQpE,eAAe,CACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAQnE,oBAAoB,CACxB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAM9B"}
1
+ {"version":3,"file":"cloud-integration-provider.d.ts","sourceRoot":"","sources":["../../src/connections/cloud-integration-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAIpD;;;GAGG;AACH,qBAAa,wBAAyB,YAAW,mBAAmB;IAC5D,gBAAgB,CACpB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,qBAAqB,CAAC;IAS3B,gBAAgB,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAQpE,eAAe,CACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAuBzF,oBAAoB,CACxB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAM9B"}
@@ -1,4 +1,6 @@
1
+ import { ConnectionCredentials } from "../types.js";
1
2
  import { apiCall } from "./cloud-client.js";
3
+ import { getConnectionDisplayName } from "./connection-labels.js";
2
4
  /**
3
5
  * IntegrationProvider backed by the 0pflow cloud server (hosted mode).
4
6
  * All Nango operations are proxied through the server — no NANGO_SECRET_KEY needed locally.
@@ -6,7 +8,7 @@ import { apiCall } from "./cloud-client.js";
6
8
  export class CloudIntegrationProvider {
7
9
  async fetchCredentials(integrationId, connectionId) {
8
10
  const data = (await apiCall("GET", `/api/credentials/${encodeURIComponent(integrationId)}?connection_id=${encodeURIComponent(connectionId)}`));
9
- return data;
11
+ return new ConnectionCredentials(data);
10
12
  }
11
13
  async listIntegrations() {
12
14
  const data = (await apiCall("GET", "/api/integrations"));
@@ -14,7 +16,21 @@ export class CloudIntegrationProvider {
14
16
  }
15
17
  async listConnections(integrationId) {
16
18
  const data = (await apiCall("GET", `/api/integrations/${encodeURIComponent(integrationId)}/connections`));
17
- return data;
19
+ return Promise.all(data.map(async (c) => {
20
+ let displayName = c.connection_id;
21
+ try {
22
+ const creds = await this.fetchCredentials(integrationId, c.connection_id);
23
+ displayName = await getConnectionDisplayName(integrationId, c.connection_id, creds.raw);
24
+ }
25
+ catch {
26
+ // Fall back to connection_id if fetch fails
27
+ }
28
+ return {
29
+ connection_id: c.connection_id,
30
+ provider_config_key: c.provider_config_key,
31
+ display_name: displayName,
32
+ };
33
+ }));
18
34
  }
19
35
  async createConnectSession(integrationId) {
20
36
  const data = (await apiCall("POST", "/api/nango/connect-session", {
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-integration-provider.js","sourceRoot":"","sources":["../../src/connections/cloud-integration-provider.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IACnC,KAAK,CAAC,gBAAgB,CACpB,aAAqB,EACrB,YAAoB;QAEpB,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CACzB,KAAK,EACL,oBAAoB,kBAAkB,CAAC,aAAa,CAAC,kBAAkB,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAC1G,CAA0B,CAAC;QAE5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAGrD,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,aAAqB;QAErB,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CACzB,KAAK,EACL,qBAAqB,kBAAkB,CAAC,aAAa,CAAC,cAAc,CACrE,CAAkE,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,aAAqB;QAErB,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,EAAE,4BAA4B,EAAE;YAChE,cAAc,EAAE,aAAa;SAC9B,CAAC,CAAsB,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
1
+ {"version":3,"file":"cloud-integration-provider.js","sourceRoot":"","sources":["../../src/connections/cloud-integration-provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IACnC,KAAK,CAAC,gBAAgB,CACpB,aAAqB,EACrB,YAAoB;QAEpB,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CACzB,KAAK,EACL,oBAAoB,kBAAkB,CAAC,aAAa,CAAC,kBAAkB,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAC1G,CAAiG,CAAC;QAEnG,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAGrD,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,aAAqB;QAErB,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CACzB,KAAK,EACL,qBAAqB,kBAAkB,CAAC,aAAa,CAAC,cAAc,CACrE,CAAkE,CAAC;QACpE,OAAO,OAAO,CAAC,GAAG,CAChB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACnB,IAAI,WAAW,GAAG,CAAC,CAAC,aAAa,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC;gBAC1E,WAAW,GAAG,MAAM,wBAAwB,CAAC,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YAC1F,CAAC;YAAC,MAAM,CAAC;gBACP,4CAA4C;YAC9C,CAAC;YACD,OAAO;gBACL,aAAa,EAAE,CAAC,CAAC,aAAa;gBAC9B,mBAAmB,EAAE,CAAC,CAAC,mBAAmB;gBAC1C,YAAY,EAAE,WAAW;aAC1B,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,aAAqB;QAErB,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,EAAE,4BAA4B,EAAE;YAChE,cAAc,EAAE,aAAa;SAC9B,CAAC,CAAsB,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Per-integration display name resolvers.
3
+ *
4
+ * Each resolver extracts a human-readable label from the raw OAuth
5
+ * credentials returned by nango.getConnection(). The `raw` object
6
+ * structure varies per provider.
7
+ *
8
+ * Google integrations don't include email in the OAuth token response,
9
+ * so we call the userinfo API with the access token to resolve it.
10
+ */
11
+ type RawCredentials = Record<string, any>;
12
+ export declare function getConnectionDisplayName(integrationId: string, connectionId: string, rawCredentials: RawCredentials | undefined): Promise<string>;
13
+ export {};
14
+ //# sourceMappingURL=connection-labels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-labels.d.ts","sourceRoot":"","sources":["../../src/connections/connection-labels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,KAAK,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AA8B1C,wBAAsB,wBAAwB,CAC5C,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,cAAc,GAAG,SAAS,GACzC,OAAO,CAAC,MAAM,CAAC,CAOjB"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Per-integration display name resolvers.
3
+ *
4
+ * Each resolver extracts a human-readable label from the raw OAuth
5
+ * credentials returned by nango.getConnection(). The `raw` object
6
+ * structure varies per provider.
7
+ *
8
+ * Google integrations don't include email in the OAuth token response,
9
+ * so we call the userinfo API with the access token to resolve it.
10
+ */
11
+ async function resolveGoogleEmail(raw) {
12
+ const accessToken = raw?.access_token;
13
+ if (!accessToken)
14
+ return undefined;
15
+ try {
16
+ const res = await fetch("https://www.googleapis.com/oauth2/v2/userinfo", {
17
+ headers: { Authorization: `Bearer ${accessToken}` },
18
+ });
19
+ if (!res.ok)
20
+ return undefined;
21
+ const data = (await res.json());
22
+ return data.email;
23
+ }
24
+ catch {
25
+ return undefined;
26
+ }
27
+ }
28
+ const resolvers = {
29
+ slack: (r) => r?.raw?.team?.name,
30
+ github: (r) => r?.raw?.login ?? r?.raw?.name,
31
+ "google-calendar": resolveGoogleEmail,
32
+ "google-drive": resolveGoogleEmail,
33
+ "google-mail": resolveGoogleEmail,
34
+ "google-sheet": resolveGoogleEmail,
35
+ salesforce: (r) => r?.raw?.instance_url?.replace(/^https?:\/\//, ""),
36
+ };
37
+ export async function getConnectionDisplayName(integrationId, connectionId, rawCredentials) {
38
+ if (rawCredentials) {
39
+ const resolver = resolvers[integrationId];
40
+ const name = await resolver?.(rawCredentials);
41
+ if (name)
42
+ return name;
43
+ }
44
+ return connectionId;
45
+ }
46
+ //# sourceMappingURL=connection-labels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-labels.js","sourceRoot":"","sources":["../../src/connections/connection-labels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,KAAK,UAAU,kBAAkB,CAAC,GAAmB;IACnD,MAAM,WAAW,GAAG,GAAG,EAAE,YAAY,CAAC;IACtC,IAAI,CAAC,WAAW;QAAE,OAAO,SAAS,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,+CAA+C,EAAE;YACvE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE;SACpD,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,SAAS,CAAC;QAC9B,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAuB,CAAC;QACtD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,SAAS,GAAkC;IAC/C,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI;IAChC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI;IAC5C,iBAAiB,EAAE,kBAAkB;IACrC,cAAc,EAAE,kBAAkB;IAClC,aAAa,EAAE,kBAAkB;IACjC,cAAc,EAAE,kBAAkB;IAClC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAChB,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;CACpD,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,aAAqB,EACrB,YAAoB,EACpB,cAA0C;IAE1C,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,QAAQ,EAAE,CAAC,cAAc,CAAC,CAAC;QAC9C,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;IACxB,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -8,4 +8,5 @@ export { LocalIntegrationProvider, createLocalIntegrationProvider } from "./loca
8
8
  export { CloudIntegrationProvider } from "./cloud-integration-provider.js";
9
9
  export { getToken as getCloudToken, isAuthenticated as isCloudAuthenticated, authenticate as cloudAuthenticate, logout as cloudLogout, } from "./cloud-auth.js";
10
10
  export { apiCall as cloudApiCall } from "./cloud-client.js";
11
+ export { getConnectionDisplayName } from "./connection-labels.js";
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/connections/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,YAAY,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AAC3G,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EACL,QAAQ,IAAI,aAAa,EACzB,eAAe,IAAI,oBAAoB,EACvC,YAAY,IAAI,iBAAiB,EACjC,MAAM,IAAI,WAAW,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/connections/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,YAAY,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AAC3G,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EACL,QAAQ,IAAI,aAAa,EACzB,eAAe,IAAI,oBAAoB,EACvC,YAAY,IAAI,iBAAiB,EACjC,MAAM,IAAI,WAAW,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -6,4 +6,5 @@ export { LocalIntegrationProvider, createLocalIntegrationProvider } from "./loca
6
6
  export { CloudIntegrationProvider } from "./cloud-integration-provider.js";
7
7
  export { getToken as getCloudToken, isAuthenticated as isCloudAuthenticated, authenticate as cloudAuthenticate, logout as cloudLogout, } from "./cloud-auth.js";
8
8
  export { apiCall as cloudApiCall } from "./cloud-client.js";
9
+ export { getConnectionDisplayName } from "./connection-labels.js";
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/connections/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AAC3G,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EACL,QAAQ,IAAI,aAAa,EACzB,eAAe,IAAI,oBAAoB,EACvC,YAAY,IAAI,iBAAiB,EACjC,MAAM,IAAI,WAAW,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/connections/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AAC3G,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EACL,QAAQ,IAAI,aAAa,EACzB,eAAe,IAAI,oBAAoB,EACvC,YAAY,IAAI,iBAAiB,EACjC,MAAM,IAAI,WAAW,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -20,6 +20,7 @@ export interface IntegrationProvider {
20
20
  listConnections(integrationId: string): Promise<Array<{
21
21
  connection_id: string;
22
22
  provider_config_key: string;
23
+ display_name: string;
23
24
  }>>;
24
25
  /** Create a Connect session for OAuth setup */
25
26
  createConnectSession(integrationId: string, endUserId?: string): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"integration-provider.d.ts","sourceRoot":"","sources":["../../src/connections/integration-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEzD;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,gDAAgD;IAChD,gBAAgB,CACd,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAElC,kCAAkC;IAClC,gBAAgB,IAAI,OAAO,CACzB,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CACxC,CAAC;IAEF,0CAA0C;IAC1C,eAAe,CACb,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAE1E,+CAA+C;IAC/C,oBAAoB,CAClB,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,mBAAmB,CAAC,CAU9B"}
1
+ {"version":3,"file":"integration-provider.d.ts","sourceRoot":"","sources":["../../src/connections/integration-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEzD;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,gDAAgD;IAChD,gBAAgB,CACd,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAElC,kCAAkC;IAClC,gBAAgB,IAAI,OAAO,CACzB,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CACxC,CAAC;IAEF,0CAA0C;IAC1C,eAAe,CACb,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAEhG,+CAA+C;IAC/C,oBAAoB,CAClB,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,mBAAmB,CAAC,CAU9B"}
@@ -1,5 +1,5 @@
1
1
  import type { IntegrationProvider } from "./integration-provider.js";
2
- import type { ConnectionCredentials } from "../types.js";
2
+ import { ConnectionCredentials } from "../types.js";
3
3
  /**
4
4
  * IntegrationProvider backed by a direct Nango connection (self-hosted mode).
5
5
  * Requires NANGO_SECRET_KEY.
@@ -15,6 +15,7 @@ export declare class LocalIntegrationProvider implements IntegrationProvider {
15
15
  listConnections(integrationId: string): Promise<Array<{
16
16
  connection_id: string;
17
17
  provider_config_key: string;
18
+ display_name: string;
18
19
  }>>;
19
20
  createConnectSession(integrationId: string, endUserId?: string): Promise<{
20
21
  token: string;
@@ -1 +1 @@
1
- {"version":3,"file":"local-integration-provider.d.ts","sourceRoot":"","sources":["../../src/connections/local-integration-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEzD;;;GAGG;AACH,qBAAa,wBAAyB,YAAW,mBAAmB;IAElE,OAAO,CAAC,KAAK,CAAM;gBAGP,aAAa,EAAE,GAAG;IAIxB,gBAAgB,CACpB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,qBAAqB,CAAC;IAkB3B,gBAAgB,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAUpE,eAAe,CACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAQnE,oBAAoB,CACxB,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAO9B;AAED;;;GAGG;AACH,wBAAsB,8BAA8B,CAClD,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,wBAAwB,CAAC,CAInC"}
1
+ {"version":3,"file":"local-integration-provider.d.ts","sourceRoot":"","sources":["../../src/connections/local-integration-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGpD;;;GAGG;AACH,qBAAa,wBAAyB,YAAW,mBAAmB;IAElE,OAAO,CAAC,KAAK,CAAM;gBAGP,aAAa,EAAE,GAAG;IAIxB,gBAAgB,CACpB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,qBAAqB,CAAC;IAkB3B,gBAAgB,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAUpE,eAAe,CACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAwBzF,oBAAoB,CACxB,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAO9B;AAED;;;GAGG;AACH,wBAAsB,8BAA8B,CAClD,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,wBAAwB,CAAC,CAInC"}
@@ -1,3 +1,5 @@
1
+ import { ConnectionCredentials } from "../types.js";
2
+ import { getConnectionDisplayName } from "./connection-labels.js";
1
3
  /**
2
4
  * IntegrationProvider backed by a direct Nango connection (self-hosted mode).
3
5
  * Requires NANGO_SECRET_KEY.
@@ -17,11 +19,11 @@ export class LocalIntegrationProvider {
17
19
  creds.apiKey ??
18
20
  creds.token ??
19
21
  "";
20
- return {
22
+ return new ConnectionCredentials({
21
23
  token,
22
24
  connectionConfig: connection.connection_config ?? {},
23
25
  raw: creds,
24
- };
26
+ });
25
27
  }
26
28
  async listIntegrations() {
27
29
  const result = await this.nango.listIntegrations();
@@ -32,7 +34,22 @@ export class LocalIntegrationProvider {
32
34
  }
33
35
  async listConnections(integrationId) {
34
36
  const result = await this.nango.listConnections();
35
- return (result.connections ?? []).filter((c) => c.provider_config_key === integrationId);
37
+ const filtered = (result.connections ?? []).filter((c) => c.provider_config_key === integrationId);
38
+ return Promise.all(filtered.map(async (c) => {
39
+ let displayName = c.connection_id;
40
+ try {
41
+ const conn = await this.nango.getConnection(integrationId, c.connection_id);
42
+ displayName = await getConnectionDisplayName(integrationId, c.connection_id, conn.credentials);
43
+ }
44
+ catch {
45
+ // Fall back to connection_id if fetch fails
46
+ }
47
+ return {
48
+ connection_id: c.connection_id,
49
+ provider_config_key: c.provider_config_key,
50
+ display_name: displayName,
51
+ };
52
+ }));
36
53
  }
37
54
  async createConnectSession(integrationId, endUserId) {
38
55
  const session = await this.nango.createConnectSession({
@@ -1 +1 @@
1
- {"version":3,"file":"local-integration-provider.js","sourceRoot":"","sources":["../../src/connections/local-integration-provider.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IACnC,8DAA8D;IACtD,KAAK,CAAM;IAEnB,8DAA8D;IAC9D,YAAY,aAAkB;QAC5B,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,aAAqB,EACrB,YAAoB;QAEpB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;QAE/E,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC;QAC3C,MAAM,KAAK,GACT,KAAK,CAAC,YAAY;YAClB,KAAK,CAAC,OAAO;YACb,KAAK,CAAC,MAAM;YACZ,KAAK,CAAC,KAAK;YACX,EAAE,CAAC;QAEL,OAAO;YACL,KAAK;YACL,gBAAgB,EAAE,UAAU,CAAC,iBAAiB,IAAI,EAAE;YACpD,GAAG,EAAE,KAAK;SACX,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;QACnD,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAC/B,CAAC,CAA2C,EAAE,EAAE,CAAC,CAAC;YAChD,EAAE,EAAE,CAAC,CAAC,UAAU;YAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACrB,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,aAAqB;QAErB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;QAClD,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,MAAM,CACtC,CAAC,CAAkC,EAAE,EAAE,CACrC,CAAC,CAAC,mBAAmB,KAAK,aAAa,CAC1C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,aAAqB,EACrB,SAAkB;QAElB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC;YACpD,QAAQ,EAAE,EAAE,EAAE,EAAE,SAAS,IAAI,aAAa,EAAE;YAC5C,oBAAoB,EAAE,CAAC,aAAa,CAAC;SACtC,CAAC,CAAC;QACH,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACvC,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,SAAiB;IAEjB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IACvC,OAAO,IAAI,wBAAwB,CAAC,KAAK,CAAC,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"local-integration-provider.js","sourceRoot":"","sources":["../../src/connections/local-integration-provider.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ConnectionCredentials } from "../types.js";
1
+ import { ConnectionCredentials } from "../types.js";
2
2
  /**
3
3
  * Initialize the Nango client singleton.
4
4
  */
@@ -1 +1 @@
1
- {"version":3,"file":"nango-client.d.ts","sourceRoot":"","sources":["../../src/connections/nango-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAkBzD;;GAEG;AACH,wBAAsB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhE;AAED;;GAEG;AAEH,wBAAgB,QAAQ,IAAI,GAAG,GAAG,IAAI,CAErC;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,qBAAqB,CAAC,CAwBhC"}
1
+ {"version":3,"file":"nango-client.d.ts","sourceRoot":"","sources":["../../src/connections/nango-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAkBpD;;GAEG;AACH,wBAAsB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhE;AAED;;GAEG;AAEH,wBAAgB,QAAQ,IAAI,GAAG,GAAG,IAAI,CAErC;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,qBAAqB,CAAC,CAwBhC"}
@@ -1,3 +1,4 @@
1
+ import { ConnectionCredentials } from "../types.js";
1
2
  // Use dynamic import to avoid hard dependency when Nango isn't configured.
2
3
  // Stored on globalThis so it's shared across module instances (jiti vs compiled).
3
4
  const NANGO_KEY = Symbol.for("opflow.nangoInstance");
@@ -41,10 +42,10 @@ export async function fetchCredentials(integrationId, connectionId) {
41
42
  creds.apiKey ??
42
43
  creds.token ??
43
44
  "";
44
- return {
45
+ return new ConnectionCredentials({
45
46
  token,
46
47
  connectionConfig: connection.connection_config ?? {},
47
48
  raw: creds,
48
- };
49
+ });
49
50
  }
50
51
  //# sourceMappingURL=nango-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nango-client.js","sourceRoot":"","sources":["../../src/connections/nango-client.ts"],"names":[],"mappings":"AAEA,2EAA2E;AAC3E,kFAAkF;AAClF,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAErD,8DAA8D;AAC9D,SAAS,gBAAgB;IACvB,8DAA8D;IAC9D,OAAQ,UAAkC,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;AAChE,CAAC;AAED,8DAA8D;AAC9D,SAAS,gBAAgB,CAAC,QAAa;IACrC,8DAA8D;IAC7D,UAAkC,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,SAAiB;IAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;IAChD,gBAAgB,CAAC,IAAI,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,8DAA8D;AAC9D,MAAM,UAAU,QAAQ;IACtB,OAAO,gBAAgB,EAAE,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,aAAqB,EACrB,YAAoB;IAEpB,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAC;IACjC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,+FAA+F,CAChG,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAE1E,oDAAoD;IACpD,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC;IAC3C,MAAM,KAAK,GACT,KAAK,CAAC,YAAY;QAClB,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,MAAM;QACZ,KAAK,CAAC,KAAK;QACX,EAAE,CAAC;IAEL,OAAO;QACL,KAAK;QACL,gBAAgB,EAAE,UAAU,CAAC,iBAAiB,IAAI,EAAE;QACpD,GAAG,EAAE,KAAK;KACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"nango-client.js","sourceRoot":"","sources":["../../src/connections/nango-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,2EAA2E;AAC3E,kFAAkF;AAClF,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAErD,8DAA8D;AAC9D,SAAS,gBAAgB;IACvB,8DAA8D;IAC9D,OAAQ,UAAkC,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;AAChE,CAAC;AAED,8DAA8D;AAC9D,SAAS,gBAAgB,CAAC,QAAa;IACrC,8DAA8D;IAC7D,UAAkC,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,SAAiB;IAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;IAChD,gBAAgB,CAAC,IAAI,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,8DAA8D;AAC9D,MAAM,UAAU,QAAQ;IACtB,OAAO,gBAAgB,EAAE,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,aAAqB,EACrB,YAAoB;IAEpB,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAC;IACjC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,+FAA+F,CAChG,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAE1E,oDAAoD;IACpD,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC;IAC3C,MAAM,KAAK,GACT,KAAK,CAAC,YAAY;QAClB,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,MAAM;QACZ,KAAK,CAAC,KAAK;QACX,EAAE,CAAC;IAEL,OAAO,IAAI,qBAAqB,CAAC;QAC/B,KAAK;QACL,gBAAgB,EAAE,UAAU,CAAC,iBAAiB,IAAI,EAAE;QACpD,GAAG,EAAE,KAAK;KACX,CAAC,CAAC;AACL,CAAC"}
@@ -10,17 +10,17 @@ export interface ConnectionMapping {
10
10
  * Resolve a connection ID for a given workflow/node/integration.
11
11
  * Checks for an exact match first, then falls back to global defaults (* / *).
12
12
  */
13
- export declare function resolveConnectionId(pool: pg.Pool, workflowName: string, nodeName: string, integrationId: string): Promise<string | null>;
13
+ export declare function resolveConnectionId(pool: pg.Pool, workflowName: string, nodeName: string, integrationId: string, schema: string): Promise<string | null>;
14
14
  /**
15
15
  * Upsert a connection mapping.
16
16
  */
17
- export declare function upsertConnection(pool: pg.Pool, mapping: Omit<ConnectionMapping, "updated_at">): Promise<void>;
17
+ export declare function upsertConnection(pool: pg.Pool, mapping: Omit<ConnectionMapping, "updated_at">, schema: string): Promise<void>;
18
18
  /**
19
19
  * List all connection mappings.
20
20
  */
21
- export declare function listConnections(pool: pg.Pool): Promise<ConnectionMapping[]>;
21
+ export declare function listConnections(pool: pg.Pool, schema: string): Promise<ConnectionMapping[]>;
22
22
  /**
23
23
  * Delete a connection mapping.
24
24
  */
25
- export declare function deleteConnection(pool: pg.Pool, workflowName: string, nodeName: string, integrationId: string): Promise<void>;
25
+ export declare function deleteConnection(pool: pg.Pool, workflowName: string, nodeName: string, integrationId: string, schema: string): Promise<void>;
26
26
  //# sourceMappingURL=resolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/connections/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,EAAE,CAAC,IAAI,EACb,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAcxB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,EAAE,CAAC,IAAI,EACb,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,GAC7C,OAAO,CAAC,IAAI,CAAC,CAQf;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAOjF;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,EAAE,CAAC,IAAI,EACb,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CAQf"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/connections/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB;AAOD;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,EAAE,CAAC,IAAI,EACb,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAcxB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,EAAE,CAAC,IAAI,EACb,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,EAC9C,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAQf;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAOjG;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,EAAE,CAAC,IAAI,EACb,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAQf"}
@@ -1,9 +1,13 @@
1
+ /** Schema-qualified table reference for opflow_connections */
2
+ function table(schema) {
3
+ return `"${schema}".opflow_connections`;
4
+ }
1
5
  /**
2
6
  * Resolve a connection ID for a given workflow/node/integration.
3
7
  * Checks for an exact match first, then falls back to global defaults (* / *).
4
8
  */
5
- export async function resolveConnectionId(pool, workflowName, nodeName, integrationId) {
6
- const result = await pool.query(`SELECT connection_id FROM opflow_connections
9
+ export async function resolveConnectionId(pool, workflowName, nodeName, integrationId, schema) {
10
+ const result = await pool.query(`SELECT connection_id FROM ${table(schema)}
7
11
  WHERE integration_id = $1
8
12
  AND (
9
13
  (workflow_name = $2 AND node_name = $3)
@@ -17,8 +21,8 @@ export async function resolveConnectionId(pool, workflowName, nodeName, integrat
17
21
  /**
18
22
  * Upsert a connection mapping.
19
23
  */
20
- export async function upsertConnection(pool, mapping) {
21
- await pool.query(`INSERT INTO opflow_connections (workflow_name, node_name, integration_id, connection_id, updated_at)
24
+ export async function upsertConnection(pool, mapping, schema) {
25
+ await pool.query(`INSERT INTO ${table(schema)} (workflow_name, node_name, integration_id, connection_id, updated_at)
22
26
  VALUES ($1, $2, $3, $4, NOW())
23
27
  ON CONFLICT (workflow_name, node_name, integration_id)
24
28
  DO UPDATE SET connection_id = EXCLUDED.connection_id, updated_at = NOW()`, [mapping.workflow_name, mapping.node_name, mapping.integration_id, mapping.connection_id]);
@@ -26,17 +30,17 @@ export async function upsertConnection(pool, mapping) {
26
30
  /**
27
31
  * List all connection mappings.
28
32
  */
29
- export async function listConnections(pool) {
33
+ export async function listConnections(pool, schema) {
30
34
  const result = await pool.query(`SELECT workflow_name, node_name, integration_id, connection_id, updated_at
31
- FROM opflow_connections
35
+ FROM ${table(schema)}
32
36
  ORDER BY workflow_name, node_name, integration_id`);
33
37
  return result.rows;
34
38
  }
35
39
  /**
36
40
  * Delete a connection mapping.
37
41
  */
38
- export async function deleteConnection(pool, workflowName, nodeName, integrationId) {
39
- await pool.query(`DELETE FROM opflow_connections
42
+ export async function deleteConnection(pool, workflowName, nodeName, integrationId, schema) {
43
+ await pool.query(`DELETE FROM ${table(schema)}
40
44
  WHERE workflow_name = $1
41
45
  AND node_name = $2
42
46
  AND integration_id = $3`, [workflowName, nodeName, integrationId]);
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/connections/resolver.ts"],"names":[],"mappings":"AAUA;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAa,EACb,YAAoB,EACpB,QAAgB,EAChB,aAAqB;IAErB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAC7B;;;;;;;;YAQQ,EACR,CAAC,aAAa,EAAE,YAAY,EAAE,QAAQ,CAAC,CACxC,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAwB,CAAC,CAAC,CAAC,IAAI,CAAC;AAClF,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAa,EACb,OAA8C;IAE9C,MAAM,IAAI,CAAC,KAAK,CACd;;;6EAGyE,EACzE,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,aAAa,CAAC,CAC1F,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAa;IACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAC7B;;sDAEkD,CACnD,CAAC;IACF,OAAO,MAAM,CAAC,IAA2B,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAa,EACb,YAAoB,EACpB,QAAgB,EAChB,aAAqB;IAErB,MAAM,IAAI,CAAC,KAAK,CACd;;;8BAG0B,EAC1B,CAAC,YAAY,EAAE,QAAQ,EAAE,aAAa,CAAC,CACxC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/connections/resolver.ts"],"names":[],"mappings":"AAUA,8DAA8D;AAC9D,SAAS,KAAK,CAAC,MAAc;IAC3B,OAAO,IAAI,MAAM,sBAAsB,CAAC;AAC1C,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAa,EACb,YAAoB,EACpB,QAAgB,EAChB,aAAqB,EACrB,MAAc;IAEd,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAC7B,6BAA6B,KAAK,CAAC,MAAM,CAAC;;;;;;;;YAQlC,EACR,CAAC,aAAa,EAAE,YAAY,EAAE,QAAQ,CAAC,CACxC,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAwB,CAAC,CAAC,CAAC,IAAI,CAAC;AAClF,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAa,EACb,OAA8C,EAC9C,MAAc;IAEd,MAAM,IAAI,CAAC,KAAK,CACd,eAAe,KAAK,CAAC,MAAM,CAAC;;;6EAG6C,EACzE,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,aAAa,CAAC,CAC1F,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAa,EAAE,MAAc;IACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAC7B;WACO,KAAK,CAAC,MAAM,CAAC;sDAC8B,CACnD,CAAC;IACF,OAAO,MAAM,CAAC,IAA2B,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAa,EACb,YAAoB,EACpB,QAAgB,EAChB,aAAqB,EACrB,MAAc;IAEd,MAAM,IAAI,CAAC,KAAK,CACd,eAAe,KAAK,CAAC,MAAM,CAAC;;;8BAGF,EAC1B,CAAC,YAAY,EAAE,QAAQ,EAAE,aAAa,CAAC,CACxC,CAAC;AACJ,CAAC"}
@@ -1,6 +1,8 @@
1
1
  /**
2
2
  * Ensure the opflow_connections table exists.
3
3
  * Creates a short-lived connection, runs the DDL, then closes it.
4
+ * When schema is provided, the table is created in that schema explicitly
5
+ * (avoids permission issues when a same-named table exists in public).
4
6
  */
5
- export declare function ensureConnectionsTable(databaseUrl: string): Promise<void>;
7
+ export declare function ensureConnectionsTable(databaseUrl: string, schema: string): Promise<void>;
6
8
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/connections/schema.ts"],"names":[],"mappings":"AAYA;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ/E"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/connections/schema.ts"],"names":[],"mappings":"AAeA;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAS/F"}
@@ -1,6 +1,8 @@
1
1
  import pg from "pg";
2
- const CREATE_TABLE_SQL = `
3
- CREATE TABLE IF NOT EXISTS opflow_connections (
2
+ function createTableSQL(schema) {
3
+ const table = `"${schema}".opflow_connections`;
4
+ return `
5
+ CREATE TABLE IF NOT EXISTS ${table} (
4
6
  workflow_name TEXT NOT NULL,
5
7
  node_name TEXT NOT NULL,
6
8
  integration_id TEXT NOT NULL,
@@ -8,15 +10,19 @@ CREATE TABLE IF NOT EXISTS opflow_connections (
8
10
  updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
9
11
  PRIMARY KEY (workflow_name, node_name, integration_id)
10
12
  )`;
13
+ }
11
14
  /**
12
15
  * Ensure the opflow_connections table exists.
13
16
  * Creates a short-lived connection, runs the DDL, then closes it.
17
+ * When schema is provided, the table is created in that schema explicitly
18
+ * (avoids permission issues when a same-named table exists in public).
14
19
  */
15
- export async function ensureConnectionsTable(databaseUrl) {
20
+ export async function ensureConnectionsTable(databaseUrl, schema) {
16
21
  const client = new pg.Client({ connectionString: databaseUrl });
17
22
  try {
18
23
  await client.connect();
19
- await client.query(CREATE_TABLE_SQL);
24
+ await client.query(`CREATE SCHEMA IF NOT EXISTS "${schema}"`);
25
+ await client.query(createTableSQL(schema));
20
26
  }
21
27
  finally {
22
28
  await client.end();
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/connections/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,gBAAgB,GAAG;;;;;;;;EAQvB,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,WAAmB;IAC9D,MAAM,MAAM,GAAG,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC,CAAC;IAChE,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,MAAM,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACvC,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;IACrB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/connections/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,SAAS,cAAc,CAAC,MAAc;IACpC,MAAM,KAAK,GAAG,IAAI,MAAM,sBAAsB,CAAC;IAC/C,OAAO;6BACoB,KAAK;;;;;;;EAOhC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,WAAmB,EAAE,MAAc;IAC9E,MAAM,MAAM,GAAG,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC,CAAC;IAChE,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,MAAM,MAAM,CAAC,KAAK,CAAC,gCAAgC,MAAM,GAAG,CAAC,CAAC;QAC9D,MAAM,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7C,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;IACrB,CAAC;AACH,CAAC"}
@@ -4,7 +4,12 @@ import type { IntegrationProvider } from "../connections/integration-provider.js
4
4
  export interface ApiContext {
5
5
  pool: pg.Pool;
6
6
  integrationProvider: IntegrationProvider;
7
+ /** DBOS system schema (e.g. my_app_dbos) for workflow_status queries */
7
8
  schema: string;
9
+ /** App schema where opflow_connections lives (e.g. my_app) */
10
+ appSchema: string;
11
+ /** Project root directory for CLI subprocess execution */
12
+ projectRoot: string;
8
13
  }
9
14
  /**
10
15
  * Handle API requests. Returns true if the request was handled, false otherwise.
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/dev-ui/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAMzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAGlF,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC;IACd,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,MAAM,EAAE,MAAM,CAAC;CAChB;AA0BD;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,UAAU,GACd,OAAO,CAAC,OAAO,CAAC,CAmPlB"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/dev-ui/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAGjE,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAMzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAKlF,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC;IACd,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IACf,8DAA8D;IAC9D,SAAS,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;CACrB;AA0BD;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,UAAU,GACd,OAAO,CAAC,OAAO,CAAC,CAsRlB"}
@@ -1,5 +1,8 @@
1
+ import { execFile } from "node:child_process";
2
+ import { promisify } from "node:util";
1
3
  import { listConnections, upsertConnection, deleteConnection, } from "../connections/index.js";
2
4
  import { parseOutput } from "../cli/trace.js";
5
+ const execFileAsync = promisify(execFile);
3
6
  function jsonResponse(res, status, data) {
4
7
  res.writeHead(status, {
5
8
  "Content-Type": "application/json",
@@ -41,7 +44,7 @@ export async function handleApiRequest(req, res, ctx) {
41
44
  }
42
45
  // GET /api/connections
43
46
  if (url === "/api/connections" && method === "GET") {
44
- const connections = await listConnections(ctx.pool);
47
+ const connections = await listConnections(ctx.pool, ctx.appSchema);
45
48
  jsonResponse(res, 200, connections);
46
49
  return true;
47
50
  }
@@ -57,7 +60,7 @@ export async function handleApiRequest(req, res, ctx) {
57
60
  node_name: body.node_name ?? "*",
58
61
  integration_id: body.integration_id,
59
62
  connection_id: body.connection_id,
60
- });
63
+ }, ctx.appSchema);
61
64
  jsonResponse(res, 200, { ok: true });
62
65
  return true;
63
66
  }
@@ -68,7 +71,7 @@ export async function handleApiRequest(req, res, ctx) {
68
71
  jsonResponse(res, 400, { error: "integration_id is required" });
69
72
  return true;
70
73
  }
71
- await deleteConnection(ctx.pool, body.workflow_name ?? "*", body.node_name ?? "*", body.integration_id);
74
+ await deleteConnection(ctx.pool, body.workflow_name ?? "*", body.node_name ?? "*", body.integration_id, ctx.appSchema);
72
75
  jsonResponse(res, 200, { ok: true });
73
76
  return true;
74
77
  }
@@ -232,6 +235,39 @@ export async function handleApiRequest(req, res, ctx) {
232
235
  return true;
233
236
  }
234
237
  }
238
+ // POST /api/workflows/:name/run — execute a workflow via subprocess
239
+ const runMatch = url.match(/^\/api\/workflows\/([^/]+)\/run$/);
240
+ if (runMatch && method === "POST") {
241
+ const workflowName = decodeURIComponent(runMatch[1]);
242
+ const body = (await parseBody(req));
243
+ const input = body.input ?? {};
244
+ const [runtime, script] = process.argv;
245
+ try {
246
+ const { stdout } = await execFileAsync(runtime, [
247
+ ...process.execArgv,
248
+ script,
249
+ "workflow", "run", workflowName,
250
+ "--json",
251
+ "-i", JSON.stringify(input),
252
+ ], { cwd: ctx.projectRoot });
253
+ jsonResponse(res, 200, JSON.parse(stdout));
254
+ }
255
+ catch (err) {
256
+ const execErr = err;
257
+ if (execErr.stdout) {
258
+ try {
259
+ jsonResponse(res, 200, JSON.parse(execErr.stdout));
260
+ return true;
261
+ }
262
+ catch { /* fall through */ }
263
+ }
264
+ jsonResponse(res, 500, {
265
+ status: "ERROR",
266
+ error: execErr.stderr?.trim() || execErr.message || String(err),
267
+ });
268
+ }
269
+ return true;
270
+ }
235
271
  return false;
236
272
  }
237
273
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/dev-ui/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/dev-ui/api.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"extractor.d.ts","sourceRoot":"","sources":["../../../src/dev-ui/dag/extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,WAAW,EAAa,MAAM,YAAY,CAAC;AA8I3E;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAuB3F;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAuBjF;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAwBxF;AAoWD;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,EAAE,CAAC,CAoRxB"}
1
+ {"version":3,"file":"extractor.d.ts","sourceRoot":"","sources":["../../../src/dev-ui/dag/extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,WAAW,EAAa,MAAM,YAAY,CAAC;AAgI3E;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAuB3F;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAuBjF;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAwBxF;AAoWD;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,EAAE,CAAC,CAoRxB"}