@mochabug/adaptkit 1.0.0-rc.5 → 1.0.0-rc.51

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 (93) hide show
  1. package/README.md +50 -45
  2. package/assets/build.js +1 -1
  3. package/assets/configurator.main.tsx +8 -0
  4. package/assets/configurator_browser_none.main.ts +30 -0
  5. package/assets/configurator_browser_none.ssg.ts +64 -0
  6. package/assets/configurator_none.ts +14 -103
  7. package/assets/configurator_react.tsx +8 -8
  8. package/assets/executor.html +1 -1
  9. package/assets/executor.main.tsx +8 -0
  10. package/assets/executor_action.ts +4 -8
  11. package/assets/{executor_cron_trigger.ts → executor_action_cron.ts} +4 -8
  12. package/assets/executor_browser_none.main.ts +25 -0
  13. package/assets/executor_browser_none.ssg.ts +42 -0
  14. package/assets/executor_browser_none.ts +15 -83
  15. package/assets/executor_browser_none_cron.ts +55 -0
  16. package/assets/executor_browser_react.tsx +9 -13
  17. package/assets/executor_browser_react_cron.tsx +55 -0
  18. package/assets/{executor_external_trigger.ts → executor_external.ts} +8 -12
  19. package/assets/executor_external_cron.ts +45 -0
  20. package/assets/tsconf.json +1 -2
  21. package/bin/add.d.ts.map +1 -1
  22. package/bin/genproto/buf/validate/validate_pb.d.ts +1245 -547
  23. package/bin/genproto/buf/validate/validate_pb.d.ts.map +1 -1
  24. package/bin/genproto/google/api/annotations_pb.d.ts +1 -1
  25. package/bin/genproto/google/api/client_pb.d.ts +46 -16
  26. package/bin/genproto/google/api/client_pb.d.ts.map +1 -1
  27. package/bin/genproto/google/api/http_pb.d.ts +10 -4
  28. package/bin/genproto/google/api/http_pb.d.ts.map +1 -1
  29. package/bin/genproto/google/api/launch_stage_pb.d.ts +1 -1
  30. package/bin/genproto/mochabugapis/adapt/graph/exchange_pb.d.ts +4 -2
  31. package/bin/genproto/mochabugapis/adapt/graph/exchange_pb.d.ts.map +1 -1
  32. package/bin/genproto/mochabugapis/adapt/graph/jtd_schema_pb.d.ts +192 -16
  33. package/bin/genproto/mochabugapis/adapt/graph/jtd_schema_pb.d.ts.map +1 -1
  34. package/bin/genproto/mochabugapis/adapt/graph/receiver_pb.d.ts +4 -2
  35. package/bin/genproto/mochabugapis/adapt/graph/receiver_pb.d.ts.map +1 -1
  36. package/bin/genproto/mochabugapis/adapt/graph/signal_binding_pb.d.ts +309 -53
  37. package/bin/genproto/mochabugapis/adapt/graph/signal_binding_pb.d.ts.map +1 -1
  38. package/bin/genproto/mochabugapis/adapt/graph/signal_data_pb.d.ts +198 -0
  39. package/bin/genproto/mochabugapis/adapt/graph/signal_data_pb.d.ts.map +1 -0
  40. package/bin/genproto/mochabugapis/adapt/graph/signal_descriptor_pb.d.ts +101 -27
  41. package/bin/genproto/mochabugapis/adapt/graph/signal_descriptor_pb.d.ts.map +1 -1
  42. package/bin/genproto/mochabugapis/adapt/graph/signal_format_pb.d.ts +305 -0
  43. package/bin/genproto/mochabugapis/adapt/graph/signal_format_pb.d.ts.map +1 -0
  44. package/bin/genproto/mochabugapis/adapt/graph/transceiver_pb.d.ts +16 -2
  45. package/bin/genproto/mochabugapis/adapt/graph/transceiver_pb.d.ts.map +1 -1
  46. package/bin/genproto/mochabugapis/adapt/graph/transmitter_pb.d.ts +53 -8
  47. package/bin/genproto/mochabugapis/adapt/graph/transmitter_pb.d.ts.map +1 -1
  48. package/bin/genproto/mochabugapis/adapt/graph/user_defined_exchange_options_pb.d.ts +353 -0
  49. package/bin/genproto/mochabugapis/adapt/graph/user_defined_exchange_options_pb.d.ts.map +1 -0
  50. package/bin/genproto/mochabugapis/adapt/graph/{vertex_config_pb.d.ts → vertex_metadata_pb.d.ts} +28 -23
  51. package/bin/genproto/mochabugapis/adapt/graph/vertex_metadata_pb.d.ts.map +1 -0
  52. package/bin/genproto/mochabugapis/adapt/plugins/v1/compound_services_pb.d.ts +347 -0
  53. package/bin/genproto/mochabugapis/adapt/plugins/v1/compound_services_pb.d.ts.map +1 -0
  54. package/bin/genproto/mochabugapis/adapt/plugins/v1/file_pb.d.ts +4 -2
  55. package/bin/genproto/mochabugapis/adapt/plugins/v1/file_pb.d.ts.map +1 -1
  56. package/bin/genproto/mochabugapis/adapt/plugins/v1/http_proxy_service_pb.d.ts +1282 -0
  57. package/bin/genproto/mochabugapis/adapt/plugins/v1/http_proxy_service_pb.d.ts.map +1 -0
  58. package/bin/genproto/mochabugapis/adapt/plugins/v1/manifest_pb.d.ts +188 -23
  59. package/bin/genproto/mochabugapis/adapt/plugins/v1/manifest_pb.d.ts.map +1 -1
  60. package/bin/genproto/mochabugapis/adapt/plugins/v1/oauth2_service_pb.d.ts +129 -39
  61. package/bin/genproto/mochabugapis/adapt/plugins/v1/oauth2_service_pb.d.ts.map +1 -1
  62. package/bin/genproto/mochabugapis/adapt/plugins/v1/plugins_pb.d.ts +50 -6
  63. package/bin/genproto/mochabugapis/adapt/plugins/v1/plugins_pb.d.ts.map +1 -1
  64. package/bin/genproto/mochabugapis/adapt/plugins/v1/service_definition_pb.d.ts +145 -20
  65. package/bin/genproto/mochabugapis/adapt/plugins/v1/service_definition_pb.d.ts.map +1 -1
  66. package/bin/genproto/mochabugapis/adapt/plugins/v1/service_settings_pb.d.ts +539 -0
  67. package/bin/genproto/mochabugapis/adapt/plugins/v1/service_settings_pb.d.ts.map +1 -0
  68. package/bin/genproto/mochabugapis/adapt/plugins/v1/variable_service_pb.d.ts +134 -4
  69. package/bin/genproto/mochabugapis/adapt/plugins/v1/variable_service_pb.d.ts.map +1 -1
  70. package/bin/genproto/mochabugapis/adapt/plugins/v1/vertex_pb.d.ts +92 -55
  71. package/bin/genproto/mochabugapis/adapt/plugins/v1/vertex_pb.d.ts.map +1 -1
  72. package/bin/index.d.ts +5 -0
  73. package/bin/index.d.ts.map +1 -1
  74. package/bin/index.js +709 -652
  75. package/bin/index.js.map +4 -4
  76. package/bin/init.d.ts.map +1 -1
  77. package/bin/oauth2.d.ts +1 -1
  78. package/bin/oauth2.d.ts.map +1 -1
  79. package/bin/publish.d.ts +4 -0
  80. package/bin/publish.d.ts.map +1 -1
  81. package/bin/utils.d.ts +4 -4
  82. package/bin/utils.d.ts.map +1 -1
  83. package/bin/vertices.d.ts +2 -2
  84. package/bin/vertices.d.ts.map +1 -1
  85. package/package.json +23 -18
  86. package/assets/license.md +0 -15
  87. package/bin/genproto/mochabugapis/adapt/graph/vertex_config_pb.d.ts.map +0 -1
  88. package/bin/genproto/mochabugapis/adapt/plugins/v1/oneof_service_pb.d.ts +0 -92
  89. package/bin/genproto/mochabugapis/adapt/plugins/v1/oneof_service_pb.d.ts.map +0 -1
  90. package/bin/genproto/mochabugapis/adapt/plugins/v1/service_binding_pb.d.ts +0 -134
  91. package/bin/genproto/mochabugapis/adapt/plugins/v1/service_binding_pb.d.ts.map +0 -1
  92. package/bin/genproto/mochabugapis/adapt/plugins/v1/tls_service_pb.d.ts +0 -159
  93. package/bin/genproto/mochabugapis/adapt/plugins/v1/tls_service_pb.d.ts.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http_proxy_service_pb.d.ts","sourceRoot":"","sources":["../../../../../../src/genproto/mochabugapis/adapt/plugins/v1/http_proxy_service_pb.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
- import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
2
- import type { ServiceBinding, ServiceBindingJson } from "./service_binding_pb";
1
+ import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
3
2
  import type { ServiceDefinition, ServiceDefinitionJson } from "./service_definition_pb";
4
3
  import type { Vertex, VertexJson } from "./vertex_pb";
5
4
  import type { Message } from "@bufbuild/protobuf";
@@ -10,8 +9,63 @@ export declare const file_mochabugapis_adapt_plugins_v1_manifest: GenFile;
10
9
  /**
11
10
  * Manifest describes a plugin and its properties.
12
11
  *
13
- * Security considerations: The platform ensures that secrets and certificates
14
- * are stored and transmitted securely.
12
+ * ## Architecture Overview
13
+ *
14
+ * A plugin consists of:
15
+ * 1. **Vertices**: The actual workflow nodes that users add to automation graphs
16
+ * 2. **Service Definitions**: Flat declarations of services (OAuth2, HTTP Proxy, Variables, Groups, OneOf)
17
+ * 3. **System Services**: String array referencing service definitions used at the plugin level
18
+ *
19
+ * ## Service Architecture
20
+ *
21
+ * **Service definitions are ALWAYS flat** - they exist at the top level of the manifest
22
+ * and are never nested within each other. This includes:
23
+ * - Oauth2Definition
24
+ * - HttpProxyDefinition
25
+ * - VariableDefinition
26
+ * - GroupedDefinition (references other flat definitions)
27
+ * - OneOfDefinition (references other flat definitions)
28
+ *
29
+ * **Services are referenced by name as strings**. Service lists are string arrays where each
30
+ * string must match a ServiceDefinition's `name`. Services exist at two levels:
31
+ * - `system_services`: Plugin-level services configured once for the entire plugin
32
+ * - `user_services` (in Vertex): Vertex-level services configured per vertex instance
33
+ *
34
+ * The `optional` field in ServiceDefinition controls whether a service must be configured:
35
+ * - `optional: false` (default): User MUST configure this service
36
+ * - `optional: true`: User MAY skip configuring this service
37
+ *
38
+ * ## Example Structure
39
+ *
40
+ * ```protobuf
41
+ * Manifest {
42
+ * name: "stripe_plugin"
43
+ * version: "1.0.0"
44
+ *
45
+ * // Flat service definitions at manifest level
46
+ * service_definitions: [
47
+ * { name: "stripe_oauth", oauth2: {...} },
48
+ * { name: "stripe_api", http_proxy: {...} },
49
+ * { name: "webhook_secret", variable: {...} }
50
+ * ]
51
+ *
52
+ * // System-level services (plugin-wide)
53
+ * // Each string references a service definition name
54
+ * system_services: ["stripe_oauth"]
55
+ *
56
+ * // Vertices with their own service references
57
+ * vertices: [
58
+ * {
59
+ * name: "CreatePayment",
60
+ * user_services: ["stripe_api", "webhook_secret"]
61
+ * }
62
+ * ]
63
+ * }
64
+ * ```
65
+ *
66
+ * ## Security Considerations
67
+ *
68
+ * The platform ensures that secrets and certificates are stored and transmitted securely.
15
69
  *
16
70
  * *** Plugin authors must also ensure that their implementations
17
71
  * handle sensitive data appropriately! ***
@@ -95,27 +149,109 @@ export type Manifest = Message<"mochabugapis.adapt.plugins.v1.Manifest"> & {
95
149
  */
96
150
  vertices: Vertex[];
97
151
  /**
98
- * 'service_definitions' are the actual definition of services that may be referenced
99
- * on either a system level, or user level at the vertices
152
+ * 'service_definitions' are flat service definitions that can be referenced by bindings.
153
+ *
154
+ * All service definitions exist at this top level - they are NEVER nested.
155
+ * Definitions can be referenced by:
156
+ * - system_services (plugin-level bindings)
157
+ * - user_services in vertices (vertex-level bindings)
158
+ *
159
+ * Each definition has a unique name used for referencing in bindings.
160
+ * Service types: OAuth2, HTTP Proxy, Variable, Group, OneOf.
100
161
  *
101
162
  * @generated from field: repeated mochabugapis.adapt.plugins.v1.ServiceDefinition service_definitions = 12;
102
163
  */
103
164
  serviceDefinitions: ServiceDefinition[];
104
165
  /**
105
- * 'system_services' are the services that are available on a system level
106
- * that is, configured and used by the plugin for exclusive purposes
107
- * IMPORTANT: any binding referring to a grant-type CODE will be required
108
- * to have the same name as the system_definition and be required to be of service type
166
+ * 'system_services' are plugin-level services configured once for the entire plugin.
167
+ *
168
+ * System services are:
169
+ * - Configured by plugin administrators (via PostPluginSettings API)
170
+ * - Shared across all vertices in the plugin
171
+ * - Required to be configured before the plugin can be used (status = ACTIVE), unless marked optional
172
+ *
173
+ * This is a string array where each string directly references a ServiceDefinition by its name.
174
+ * Plugin code accesses these services using the referenced service name.
175
+ *
176
+ * The `optional` field in the ServiceDefinition controls whether configuration is required:
177
+ * - If ServiceDefinition.optional = false (default): MUST be configured
178
+ * - If ServiceDefinition.optional = true: MAY be skipped
179
+ *
180
+ * Example:
181
+ * service_definitions: [
182
+ * { name: "github_oauth", oauth2: {...} },
183
+ * { name: "analytics", oauth2: {...}, optional: true }
184
+ * ]
185
+ * system_services: ["github_oauth", "analytics"]
186
+ * Plugin code references: "github_oauth", "analytics"
187
+ *
188
+ * IMPORTANT: For OAuth2 CODE grant type services, the service definition name is used
189
+ * for callback URL generation.
109
190
  *
110
- * @generated from field: repeated mochabugapis.adapt.plugins.v1.ServiceBinding system_services = 13;
191
+ * @generated from field: repeated string system_services = 13;
111
192
  */
112
- systemServices: ServiceBinding[];
193
+ systemServices: string[];
113
194
  };
114
195
  /**
115
196
  * Manifest describes a plugin and its properties.
116
197
  *
117
- * Security considerations: The platform ensures that secrets and certificates
118
- * are stored and transmitted securely.
198
+ * ## Architecture Overview
199
+ *
200
+ * A plugin consists of:
201
+ * 1. **Vertices**: The actual workflow nodes that users add to automation graphs
202
+ * 2. **Service Definitions**: Flat declarations of services (OAuth2, HTTP Proxy, Variables, Groups, OneOf)
203
+ * 3. **System Services**: String array referencing service definitions used at the plugin level
204
+ *
205
+ * ## Service Architecture
206
+ *
207
+ * **Service definitions are ALWAYS flat** - they exist at the top level of the manifest
208
+ * and are never nested within each other. This includes:
209
+ * - Oauth2Definition
210
+ * - HttpProxyDefinition
211
+ * - VariableDefinition
212
+ * - GroupedDefinition (references other flat definitions)
213
+ * - OneOfDefinition (references other flat definitions)
214
+ *
215
+ * **Services are referenced by name as strings**. Service lists are string arrays where each
216
+ * string must match a ServiceDefinition's `name`. Services exist at two levels:
217
+ * - `system_services`: Plugin-level services configured once for the entire plugin
218
+ * - `user_services` (in Vertex): Vertex-level services configured per vertex instance
219
+ *
220
+ * The `optional` field in ServiceDefinition controls whether a service must be configured:
221
+ * - `optional: false` (default): User MUST configure this service
222
+ * - `optional: true`: User MAY skip configuring this service
223
+ *
224
+ * ## Example Structure
225
+ *
226
+ * ```protobuf
227
+ * Manifest {
228
+ * name: "stripe_plugin"
229
+ * version: "1.0.0"
230
+ *
231
+ * // Flat service definitions at manifest level
232
+ * service_definitions: [
233
+ * { name: "stripe_oauth", oauth2: {...} },
234
+ * { name: "stripe_api", http_proxy: {...} },
235
+ * { name: "webhook_secret", variable: {...} }
236
+ * ]
237
+ *
238
+ * // System-level services (plugin-wide)
239
+ * // Each string references a service definition name
240
+ * system_services: ["stripe_oauth"]
241
+ *
242
+ * // Vertices with their own service references
243
+ * vertices: [
244
+ * {
245
+ * name: "CreatePayment",
246
+ * user_services: ["stripe_api", "webhook_secret"]
247
+ * }
248
+ * ]
249
+ * }
250
+ * ```
251
+ *
252
+ * ## Security Considerations
253
+ *
254
+ * The platform ensures that secrets and certificates are stored and transmitted securely.
119
255
  *
120
256
  * *** Plugin authors must also ensure that their implementations
121
257
  * handle sensitive data appropriately! ***
@@ -199,25 +335,54 @@ export type ManifestJson = {
199
335
  */
200
336
  vertices?: VertexJson[];
201
337
  /**
202
- * 'service_definitions' are the actual definition of services that may be referenced
203
- * on either a system level, or user level at the vertices
338
+ * 'service_definitions' are flat service definitions that can be referenced by bindings.
339
+ *
340
+ * All service definitions exist at this top level - they are NEVER nested.
341
+ * Definitions can be referenced by:
342
+ * - system_services (plugin-level bindings)
343
+ * - user_services in vertices (vertex-level bindings)
344
+ *
345
+ * Each definition has a unique name used for referencing in bindings.
346
+ * Service types: OAuth2, HTTP Proxy, Variable, Group, OneOf.
204
347
  *
205
348
  * @generated from field: repeated mochabugapis.adapt.plugins.v1.ServiceDefinition service_definitions = 12;
206
349
  */
207
350
  serviceDefinitions?: ServiceDefinitionJson[];
208
351
  /**
209
- * 'system_services' are the services that are available on a system level
210
- * that is, configured and used by the plugin for exclusive purposes
211
- * IMPORTANT: any binding referring to a grant-type CODE will be required
212
- * to have the same name as the system_definition and be required to be of service type
352
+ * 'system_services' are plugin-level services configured once for the entire plugin.
353
+ *
354
+ * System services are:
355
+ * - Configured by plugin administrators (via PostPluginSettings API)
356
+ * - Shared across all vertices in the plugin
357
+ * - Required to be configured before the plugin can be used (status = ACTIVE), unless marked optional
358
+ *
359
+ * This is a string array where each string directly references a ServiceDefinition by its name.
360
+ * Plugin code accesses these services using the referenced service name.
361
+ *
362
+ * The `optional` field in the ServiceDefinition controls whether configuration is required:
363
+ * - If ServiceDefinition.optional = false (default): MUST be configured
364
+ * - If ServiceDefinition.optional = true: MAY be skipped
365
+ *
366
+ * Example:
367
+ * service_definitions: [
368
+ * { name: "github_oauth", oauth2: {...} },
369
+ * { name: "analytics", oauth2: {...}, optional: true }
370
+ * ]
371
+ * system_services: ["github_oauth", "analytics"]
372
+ * Plugin code references: "github_oauth", "analytics"
373
+ *
374
+ * IMPORTANT: For OAuth2 CODE grant type services, the service definition name is used
375
+ * for callback URL generation.
213
376
  *
214
- * @generated from field: repeated mochabugapis.adapt.plugins.v1.ServiceBinding system_services = 13;
377
+ * @generated from field: repeated string system_services = 13;
215
378
  */
216
- systemServices?: ServiceBindingJson[];
379
+ systemServices?: string[];
217
380
  };
218
381
  /**
219
382
  * Describes the message mochabugapis.adapt.plugins.v1.Manifest.
220
383
  * Use `create(ManifestSchema)` to create a new message.
221
384
  */
222
- export declare const ManifestSchema: GenMessage<Manifest, ManifestJson>;
385
+ export declare const ManifestSchema: GenMessage<Manifest, {
386
+ jsonType: ManifestJson;
387
+ }>;
223
388
  //# sourceMappingURL=manifest_pb.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifest_pb.d.ts","sourceRoot":"","sources":["../../../../../../src/genproto/mochabugapis/adapt/plugins/v1/manifest_pb.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAGxE,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAExF,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,2CAA2C,EAAE,OAC+uE,CAAC;AAE1yE;;;;;;;;;;GAUG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,CAAC,wCAAwC,CAAC,GAAG;IACzE;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;;;;;;;OAYG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB;;;;;OAKG;IACH,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;IAExC;;;;;;;OAOG;IACH,cAAc,EAAE,cAAc,EAAE,CAAC;CAClC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;;;;;;;OAYG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;IAExB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAE7C;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACvC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,UAAU,CAAC,QAAQ,EAAE,YAAY,CACD,CAAC"}
1
+ {"version":3,"file":"manifest_pb.d.ts","sourceRoot":"","sources":["../../../../../../src/genproto/mochabugapis/adapt/plugins/v1/manifest_pb.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAGxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAExF,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,2CAA2C,EAAE,OACg+D,CAAC;AAE3hE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,CAAC,wCAAwC,CAAC,GAAG;IACzE;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;;;;;;;OAYG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB;;;;;;;;;;;;OAYG;IACH,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;IAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;;;;;;;OAYG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;IAExB;;;;;;;;;;;;OAYG;IACH,kBAAkB,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,UAAU,CAAC,QAAQ,EAAE;IAAC,QAAQ,EAAE,YAAY,CAAA;CAAC,CACb,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
1
+ import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
2
2
  import type { File, FileJson } from "./file_pb";
3
3
  import type { Message } from "@bufbuild/protobuf";
4
4
  /**
@@ -18,7 +18,8 @@ export type Oauth2Definition = Message<"mochabugapis.adapt.plugins.v1.Oauth2Defi
18
18
  */
19
19
  grantType: Oauth2GrantType;
20
20
  /**
21
- * The required scopes.
21
+ * The requested scopes (OPTIONAL per RFC 6749 Section 3.3).
22
+ * If omitted, the authorization server will use a pre-defined default or fail.
22
23
  *
23
24
  * @generated from field: repeated string scopes = 2;
24
25
  */
@@ -84,7 +85,8 @@ export type Oauth2DefinitionJson = {
84
85
  */
85
86
  grantType?: Oauth2GrantTypeJson;
86
87
  /**
87
- * The required scopes.
88
+ * The requested scopes (OPTIONAL per RFC 6749 Section 3.3).
89
+ * If omitted, the authorization server will use a pre-defined default or fail.
88
90
  *
89
91
  * @generated from field: repeated string scopes = 2;
90
92
  */
@@ -141,7 +143,9 @@ export type Oauth2DefinitionJson = {
141
143
  * Describes the message mochabugapis.adapt.plugins.v1.Oauth2Definition.
142
144
  * Use `create(Oauth2DefinitionSchema)` to create a new message.
143
145
  */
144
- export declare const Oauth2DefinitionSchema: GenMessage<Oauth2Definition, Oauth2DefinitionJson>;
146
+ export declare const Oauth2DefinitionSchema: GenMessage<Oauth2Definition, {
147
+ jsonType: Oauth2DefinitionJson;
148
+ }>;
145
149
  /**
146
150
  * The code grant type
147
151
  * IMPORTANT: it has to be configured with refresh token in order to work correctly
@@ -157,24 +161,12 @@ export type Oauth2Code = Message<"mochabugapis.adapt.plugins.v1.Oauth2Code"> & {
157
161
  * @generated from field: string auth_endpoint = 1;
158
162
  */
159
163
  authEndpoint: string;
160
- /**
161
- * We need to know the issuer in order to validate the token
162
- *
163
- * @generated from field: string issuer = 2;
164
- */
165
- issuer: string;
166
- /**
167
- * We also need the JWKs endpoint to validate the token
168
- *
169
- * @generated from field: string jwks_uri = 3;
170
- */
171
- jwksUri: string;
172
164
  /**
173
165
  * Additional parameters used for the oauth2 login endpoint
174
166
  * Do not include state or nonce here since we're generating them
175
167
  * in the backend. All params will be encoded in the URL
176
168
  *
177
- * @generated from field: map<string, string> additional_params = 4;
169
+ * @generated from field: map<string, string> additional_params = 2;
178
170
  */
179
171
  additionalParams: {
180
172
  [key: string]: string;
@@ -182,7 +174,7 @@ export type Oauth2Code = Message<"mochabugapis.adapt.plugins.v1.Oauth2Code"> & {
182
174
  /**
183
175
  * Whether or not to use the PKCE extension
184
176
  *
185
- * @generated from field: bool use_pkce = 5;
177
+ * @generated from field: bool use_pkce = 3;
186
178
  */
187
179
  usePkce: boolean;
188
180
  };
@@ -201,24 +193,12 @@ export type Oauth2CodeJson = {
201
193
  * @generated from field: string auth_endpoint = 1;
202
194
  */
203
195
  authEndpoint?: string;
204
- /**
205
- * We need to know the issuer in order to validate the token
206
- *
207
- * @generated from field: string issuer = 2;
208
- */
209
- issuer?: string;
210
- /**
211
- * We also need the JWKs endpoint to validate the token
212
- *
213
- * @generated from field: string jwks_uri = 3;
214
- */
215
- jwksUri?: string;
216
196
  /**
217
197
  * Additional parameters used for the oauth2 login endpoint
218
198
  * Do not include state or nonce here since we're generating them
219
199
  * in the backend. All params will be encoded in the URL
220
200
  *
221
- * @generated from field: map<string, string> additional_params = 4;
201
+ * @generated from field: map<string, string> additional_params = 2;
222
202
  */
223
203
  additionalParams?: {
224
204
  [key: string]: string;
@@ -226,7 +206,7 @@ export type Oauth2CodeJson = {
226
206
  /**
227
207
  * Whether or not to use the PKCE extension
228
208
  *
229
- * @generated from field: bool use_pkce = 5;
209
+ * @generated from field: bool use_pkce = 3;
230
210
  */
231
211
  usePkce?: boolean;
232
212
  };
@@ -234,7 +214,9 @@ export type Oauth2CodeJson = {
234
214
  * Describes the message mochabugapis.adapt.plugins.v1.Oauth2Code.
235
215
  * Use `create(Oauth2CodeSchema)` to create a new message.
236
216
  */
237
- export declare const Oauth2CodeSchema: GenMessage<Oauth2Code, Oauth2CodeJson>;
217
+ export declare const Oauth2CodeSchema: GenMessage<Oauth2Code, {
218
+ jsonType: Oauth2CodeJson;
219
+ }>;
238
220
  /**
239
221
  * The actual oauth2 config
240
222
  *
@@ -358,7 +340,9 @@ export type Oauth2ConfigJson = {
358
340
  * Describes the message mochabugapis.adapt.plugins.v1.Oauth2Config.
359
341
  * Use `create(Oauth2ConfigSchema)` to create a new message.
360
342
  */
361
- export declare const Oauth2ConfigSchema: GenMessage<Oauth2Config, Oauth2ConfigJson>;
343
+ export declare const Oauth2ConfigSchema: GenMessage<Oauth2Config, {
344
+ jsonType: Oauth2ConfigJson;
345
+ }>;
362
346
  /**
363
347
  * Basic auth
364
348
  *
@@ -389,7 +373,9 @@ export type BasicAuthJson = {
389
373
  * Describes the message mochabugapis.adapt.plugins.v1.BasicAuth.
390
374
  * Use `create(BasicAuthSchema)` to create a new message.
391
375
  */
392
- export declare const BasicAuthSchema: GenMessage<BasicAuth, BasicAuthJson>;
376
+ export declare const BasicAuthSchema: GenMessage<BasicAuth, {
377
+ jsonType: BasicAuthJson;
378
+ }>;
393
379
  /**
394
380
  * Form auth
395
381
  *
@@ -420,7 +406,9 @@ export type FormAuthJson = {
420
406
  * Describes the message mochabugapis.adapt.plugins.v1.FormAuth.
421
407
  * Use `create(FormAuthSchema)` to create a new message.
422
408
  */
423
- export declare const FormAuthSchema: GenMessage<FormAuth, FormAuthJson>;
409
+ export declare const FormAuthSchema: GenMessage<FormAuth, {
410
+ jsonType: FormAuthJson;
411
+ }>;
424
412
  /**
425
413
  * Private JWT auth
426
414
  *
@@ -435,6 +423,13 @@ export type PrivateJWTAuth = Message<"mochabugapis.adapt.plugins.v1.PrivateJWTAu
435
423
  * @generated from field: mochabugapis.adapt.plugins.v1.File private_key = 1;
436
424
  */
437
425
  privateKey?: File;
426
+ /**
427
+ * Optional subject for impersonation
428
+ * If not provided, the client_id will be used as the subject
429
+ *
430
+ * @generated from field: optional string subject = 2;
431
+ */
432
+ subject?: string;
438
433
  };
439
434
  /**
440
435
  * Private JWT auth
@@ -450,12 +445,21 @@ export type PrivateJWTAuthJson = {
450
445
  * @generated from field: mochabugapis.adapt.plugins.v1.File private_key = 1;
451
446
  */
452
447
  privateKey?: FileJson;
448
+ /**
449
+ * Optional subject for impersonation
450
+ * If not provided, the client_id will be used as the subject
451
+ *
452
+ * @generated from field: optional string subject = 2;
453
+ */
454
+ subject?: string;
453
455
  };
454
456
  /**
455
457
  * Describes the message mochabugapis.adapt.plugins.v1.PrivateJWTAuth.
456
458
  * Use `create(PrivateJWTAuthSchema)` to create a new message.
457
459
  */
458
- export declare const PrivateJWTAuthSchema: GenMessage<PrivateJWTAuth, PrivateJWTAuthJson>;
460
+ export declare const PrivateJWTAuthSchema: GenMessage<PrivateJWTAuth, {
461
+ jsonType: PrivateJWTAuthJson;
462
+ }>;
459
463
  /**
460
464
  * mTLS auth
461
465
  *
@@ -486,6 +490,47 @@ export type MTLSAuth = Message<"mochabugapis.adapt.plugins.v1.MTLSAuth"> & {
486
490
  * @generated from field: mochabugapis.adapt.plugins.v1.File ca_certificate = 3;
487
491
  */
488
492
  caCertificate?: File;
493
+ /**
494
+ * The expected hostname for certificate verification (SNI - Server Name Indication).
495
+ *
496
+ * If present, the client will:
497
+ * 1. Send this hostname in the TLS SNI extension during the handshake
498
+ * 2. Verify that the server's certificate authenticates this specific hostname
499
+ *
500
+ * If not provided:
501
+ * - The hostname is derived from the target upstream address
502
+ * - For IP addresses, certificate verification may fail unless the cert includes the IP as a SAN
503
+ *
504
+ * ## Use Cases
505
+ *
506
+ * 1. **IP-based connections with hostname certificates:**
507
+ * - Upstream address: 192.168.1.100:443
508
+ * - certificate_host: "api.example.com"
509
+ * - Server presents cert for api.example.com
510
+ *
511
+ * 2. **Load balancers or proxies:**
512
+ * - Upstream address: lb.internal:443
513
+ * - certificate_host: "api.example.com"
514
+ * - Verify against the public hostname, not internal LB name
515
+ *
516
+ * 3. **Shared hosting / Virtual hosting:**
517
+ * - Multiple services on same IP, different certs via SNI
518
+ * - Server selects correct certificate based on SNI hostname
519
+ *
520
+ * ## Certificate Verification
521
+ *
522
+ * The server certificate must contain this hostname in either:
523
+ * - Common Name (CN) field
524
+ * - Subject Alternative Name (SAN) extension
525
+ *
526
+ * ## Format
527
+ *
528
+ * Must be a valid hostname (DNS name), not an IP address.
529
+ * Examples: "api.example.com", "service.internal", "*.example.com" (for wildcard matching)
530
+ *
531
+ * @generated from field: optional string certificate_host = 4;
532
+ */
533
+ certificateHost?: string;
489
534
  };
490
535
  /**
491
536
  * mTLS auth
@@ -517,12 +562,55 @@ export type MTLSAuthJson = {
517
562
  * @generated from field: mochabugapis.adapt.plugins.v1.File ca_certificate = 3;
518
563
  */
519
564
  caCertificate?: FileJson;
565
+ /**
566
+ * The expected hostname for certificate verification (SNI - Server Name Indication).
567
+ *
568
+ * If present, the client will:
569
+ * 1. Send this hostname in the TLS SNI extension during the handshake
570
+ * 2. Verify that the server's certificate authenticates this specific hostname
571
+ *
572
+ * If not provided:
573
+ * - The hostname is derived from the target upstream address
574
+ * - For IP addresses, certificate verification may fail unless the cert includes the IP as a SAN
575
+ *
576
+ * ## Use Cases
577
+ *
578
+ * 1. **IP-based connections with hostname certificates:**
579
+ * - Upstream address: 192.168.1.100:443
580
+ * - certificate_host: "api.example.com"
581
+ * - Server presents cert for api.example.com
582
+ *
583
+ * 2. **Load balancers or proxies:**
584
+ * - Upstream address: lb.internal:443
585
+ * - certificate_host: "api.example.com"
586
+ * - Verify against the public hostname, not internal LB name
587
+ *
588
+ * 3. **Shared hosting / Virtual hosting:**
589
+ * - Multiple services on same IP, different certs via SNI
590
+ * - Server selects correct certificate based on SNI hostname
591
+ *
592
+ * ## Certificate Verification
593
+ *
594
+ * The server certificate must contain this hostname in either:
595
+ * - Common Name (CN) field
596
+ * - Subject Alternative Name (SAN) extension
597
+ *
598
+ * ## Format
599
+ *
600
+ * Must be a valid hostname (DNS name), not an IP address.
601
+ * Examples: "api.example.com", "service.internal", "*.example.com" (for wildcard matching)
602
+ *
603
+ * @generated from field: optional string certificate_host = 4;
604
+ */
605
+ certificateHost?: string;
520
606
  };
521
607
  /**
522
608
  * Describes the message mochabugapis.adapt.plugins.v1.MTLSAuth.
523
609
  * Use `create(MTLSAuthSchema)` to create a new message.
524
610
  */
525
- export declare const MTLSAuthSchema: GenMessage<MTLSAuth, MTLSAuthJson>;
611
+ export declare const MTLSAuthSchema: GenMessage<MTLSAuth, {
612
+ jsonType: MTLSAuthJson;
613
+ }>;
526
614
  /**
527
615
  * SAML bearer auth
528
616
  *
@@ -573,7 +661,9 @@ export type SAMLAuthJson = {
573
661
  * Describes the message mochabugapis.adapt.plugins.v1.SAMLAuth.
574
662
  * Use `create(SAMLAuthSchema)` to create a new message.
575
663
  */
576
- export declare const SAMLAuthSchema: GenMessage<SAMLAuth, SAMLAuthJson>;
664
+ export declare const SAMLAuthSchema: GenMessage<SAMLAuth, {
665
+ jsonType: SAMLAuthJson;
666
+ }>;
577
667
  /**
578
668
  * The algorithm used for signing JWT or SAML assertions
579
669
  *
@@ -1 +1 @@
1
- {"version":3,"file":"oauth2_service_pb.d.ts","sourceRoot":"","sources":["../../../../../../src/genproto/mochabugapis/adapt/plugins/v1/oauth2_service_pb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth2_service_pb.d.ts","sourceRoot":"","sources":["../../../../../../src/genproto/mochabugapis/adapt/plugins/v1/oauth2_service_pb.ts"],"names":[],"mappings":"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"}