@membranehq/sdk 0.19.0 → 0.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/bundle.d.ts +15 -10
  2. package/dist/bundle.js +14 -2
  3. package/dist/bundle.js.map +1 -1
  4. package/dist/config.d.mts +38 -0
  5. package/dist/config.d.ts +38 -0
  6. package/dist/config.js +215 -0
  7. package/dist/config.js.map +1 -0
  8. package/dist/config.mjs +187 -0
  9. package/dist/config.mjs.map +1 -0
  10. package/dist/dts/accessors/connections-accessors.d.ts +1 -1
  11. package/dist/dts/accessors/integrations-accessors.d.ts +1 -1
  12. package/dist/dts/agent/session.d.ts +9 -0
  13. package/dist/dts/functions/base.d.ts +1 -0
  14. package/dist/dts/functions/function-types/index.d.ts +2 -2
  15. package/dist/dts/functions/function-types/rest-api-mapping.d.ts +6 -6
  16. package/dist/dts/index.node.d.ts +0 -1
  17. package/dist/dts/orgs/types.d.ts +1 -0
  18. package/dist/dts/ui.d.ts +5 -0
  19. package/dist/dts/workspace-elements/api/action-run-log-records-api.d.ts +2 -2
  20. package/dist/dts/workspace-elements/api/connections-api.d.ts +3 -3
  21. package/dist/dts/workspace-elements/api/data-link-table-instances-api.d.ts +1 -1
  22. package/dist/dts/workspace-elements/api/data-sources-api.d.ts +2 -2
  23. package/dist/dts/workspace-elements/api/external-api-logs-api.d.ts +1 -1
  24. package/dist/dts/workspace-elements/api/external-event-log-records-api.d.ts +1 -1
  25. package/dist/dts/workspace-elements/api/external-event-pulls-api.d.ts +1 -1
  26. package/dist/dts/workspace-elements/api/external-event-subscriptions-api.d.ts +1 -1
  27. package/dist/dts/workspace-elements/api/field-mappings-api.d.ts +2 -2
  28. package/dist/dts/workspace-elements/api/flow-runs-api.d.ts +2 -2
  29. package/dist/dts/workspace-elements/api/flows-api.d.ts +2 -2
  30. package/dist/dts/workspace-elements/api/incoming-webhooks-api.d.ts +1 -1
  31. package/dist/dts/workspace-elements/api/integrations-api.d.ts +1 -1
  32. package/dist/dts/workspace-elements/base/connection-requests/index.d.ts +8 -1
  33. package/dist/dts/workspace-elements/base/connections/index.d.ts +1 -1
  34. package/dist/dts/workspaces/types.d.ts +2 -0
  35. package/dist/index.browser.d.mts +58 -33
  36. package/dist/index.browser.d.ts +58 -33
  37. package/dist/index.browser.js +62 -6
  38. package/dist/index.browser.js.map +1 -1
  39. package/dist/index.browser.mjs +59 -7
  40. package/dist/index.browser.mjs.map +1 -1
  41. package/dist/index.node.d.mts +59 -68
  42. package/dist/index.node.d.ts +59 -68
  43. package/dist/index.node.js +62 -196
  44. package/dist/index.node.js.map +1 -1
  45. package/dist/index.node.mjs +59 -189
  46. package/dist/index.node.mjs.map +1 -1
  47. package/package.json +12 -1
@@ -14,8 +14,6 @@ var qs = require('qs');
14
14
  var penpal = require('penpal');
15
15
  var axiosOriginal = require('axios');
16
16
  var zodValidationError = require('zod-validation-error');
17
- var fs = require('fs');
18
- var path = require('path');
19
17
 
20
18
  function _interopNamespaceDefault(e) {
21
19
  var n = Object.create(null);
@@ -35,8 +33,6 @@ function _interopNamespaceDefault(e) {
35
33
  }
36
34
 
37
35
  var yaml__namespace = /*#__PURE__*/_interopNamespaceDefault(yaml);
38
- var fs__namespace = /*#__PURE__*/_interopNamespaceDefault(fs);
39
- var path__namespace = /*#__PURE__*/_interopNamespaceDefault(path);
40
36
 
41
37
  exports.ErrorType = void 0;
42
38
  (function (ErrorType) {
@@ -3989,9 +3985,11 @@ const BaseAction = BaseMembraneInterface.merge(ActionEditableProperties).merge(A
3989
3985
  const BaseActionInstance = BaseAction;
3990
3986
 
3991
3987
  const CONNECTION_REQUEST_SCREEN_PATH = 'screens/connect';
3988
+ const AGENTIC_CONNECTION_REQUEST_SCREEN_PATH = 'screens/connections';
3992
3989
  const CONNECTION_REQUEST_ID_PARAM = 'connectionRequestId';
3993
- function getConnectionRequestUrl(baseUri, requestId) {
3994
- return `${baseUri}/${CONNECTION_REQUEST_SCREEN_PATH}?${CONNECTION_REQUEST_ID_PARAM}=${requestId}`;
3990
+ function getConnectionRequestUrl(baseUri, requestId, options) {
3991
+ const screenPath = (options === null || options === void 0 ? void 0 : options.prompt) ? AGENTIC_CONNECTION_REQUEST_SCREEN_PATH : CONNECTION_REQUEST_SCREEN_PATH;
3992
+ return `${baseUri}/${screenPath}?${CONNECTION_REQUEST_ID_PARAM}=${requestId}`;
3995
3993
  }
3996
3994
  const CreateConnectionRequestPayload = z.z.object({
3997
3995
  integrationId: z.z.string().optional(),
@@ -4004,7 +4002,9 @@ const CreateConnectionRequestPayload = z.z.object({
4004
4002
  allowMultipleConnections: z.z.boolean().optional(),
4005
4003
  connectorParameters: z.z.record(z.z.string(), z.z.unknown()).optional(),
4006
4004
  redirectUri: z.z.string().url().optional(),
4005
+ prompt: z.z.string().optional(),
4007
4006
  });
4007
+ const PatchConnectionRequestPayload = z.z.object({});
4008
4008
  const ConnectionRequest = z.z.object({
4009
4009
  requestId: z.z.string(),
4010
4010
  tenantId: z.z.string(),
@@ -4018,6 +4018,7 @@ const ConnectionRequest = z.z.object({
4018
4018
  allowMultipleConnections: z.z.boolean().optional(),
4019
4019
  connectorParameters: z.z.record(z.z.string(), z.z.unknown()).optional(),
4020
4020
  redirectUri: z.z.string().url().optional(),
4021
+ prompt: z.z.string().optional(),
4021
4022
  status: z.z.enum(['pending', 'success', 'cancelled', 'error']),
4022
4023
  resultConnectionId: z.z.string().optional(),
4023
4024
  resultError: ErrorDataSchema.optional(),
@@ -4072,10 +4073,10 @@ const BaseConnection = BaseWorkspaceElement.extend({
4072
4073
  archivedAt: z.z.string().optional(),
4073
4074
  isDeactivated: z.z.boolean().optional(),
4074
4075
  meta: z.z.record(z.z.string(), z.z.any()).optional(),
4075
- agentSessionId: z.z
4076
+ buildingAgentSessionId: z.z
4076
4077
  .string()
4077
4078
  .optional()
4078
- .describe('ID of the active agent session building this connection. Present when state is BUILDING.'),
4079
+ .describe('Session ID for building the element via intent-based endpoints (create/update with intent). Present when state is BUILDING.'),
4079
4080
  clientAction: ConnectionClientAction.optional().describe('Action the client must perform to advance this connection. Present if and only if state is CLIENT_ACTION_REQUIRED.'),
4080
4081
  });
4081
4082
  class ConnectionSpec {
@@ -4106,6 +4107,35 @@ const GenericFunctionDefinition = z.z
4106
4107
  type: z.z.enum(['mapping', 'operation-mapping', 'rest-api-mapping', 'graphql-api-mapping', 'javascript']).optional(),
4107
4108
  })
4108
4109
  .loose();
4110
+ function validateFunctionDefinitions(functions, schema) {
4111
+ const errors = [];
4112
+ for (const [name, funcDef] of Object.entries(functions)) {
4113
+ const result = schema.safeParse(funcDef);
4114
+ if (!result.success) {
4115
+ errors.push(`"${name}": ${formatZodUnionError(result.error, funcDef)}`);
4116
+ }
4117
+ }
4118
+ if (errors.length > 0) {
4119
+ throw new BadRequestError(`Invalid function definition(s): ${errors.join('; ')}`);
4120
+ }
4121
+ }
4122
+ function formatZodUnionError(error, funcDef) {
4123
+ for (const issue of error.issues) {
4124
+ const branchErrors = issue.errors;
4125
+ if (issue.code === 'invalid_union' && branchErrors) {
4126
+ const type = funcDef.type;
4127
+ if (type) {
4128
+ for (const branchIssues of branchErrors) {
4129
+ const hasTypeError = branchIssues.some((i) => i.path.includes('type') && i.code === 'invalid_type');
4130
+ if (!hasTypeError) {
4131
+ return branchIssues.map((i) => `${i.path.join('.') || 'root'}: ${i.message}`).join('; ');
4132
+ }
4133
+ }
4134
+ }
4135
+ }
4136
+ }
4137
+ return error.issues.map((i) => `${i.path.join('.') || 'root'}: ${i.message}`).join('; ');
4138
+ }
4109
4139
 
4110
4140
  const GraphQLFieldMappingSchema = z.z.lazy(() => z.z.object({
4111
4141
  field: z.z.string(),
@@ -4153,13 +4183,13 @@ const RequestMappingSchema = z.z.object({
4153
4183
  const RestApiMappingSchema = z.z.object({
4154
4184
  path: z.z.string(),
4155
4185
  method: z.z.string(),
4156
- requestMapping: RequestMappingSchema,
4186
+ requestMapping: RequestMappingSchema.optional(),
4157
4187
  responseMapping: z.z.any().optional(),
4158
4188
  });
4159
4189
  const OpenapiMappingSchema = z.z.object({
4160
4190
  path: z.z.string(),
4161
4191
  method: z.z.string(),
4162
- requestMapping: RequestMappingSchema,
4192
+ requestMapping: RequestMappingSchema.optional(),
4163
4193
  responseMapping: z.z.any().optional(),
4164
4194
  });
4165
4195
  const RestApiMappingFunction = z.z.object({
@@ -11830,9 +11860,14 @@ const CreateAgentSession = z.z.object({
11830
11860
  modelId: z.z.string().optional(),
11831
11861
  agentName: z.z.enum(exports.AgentName).optional(),
11832
11862
  });
11863
+ const AgentSessionAttachment = z.z.object({
11864
+ title: z.z.string(),
11865
+ data: z.z.unknown(),
11866
+ });
11833
11867
  const AgentSessionInputSchema = z.z.object({
11834
11868
  input: z.z.string().min(1),
11835
11869
  synthetic: z.z.boolean().optional(),
11870
+ attachments: z.z.array(AgentSessionAttachment).optional(),
11836
11871
  });
11837
11872
  const PatchAgentSessionSchema = z.z.object({
11838
11873
  state: z.z.enum(exports.AgentSessionState).optional(),
@@ -13250,6 +13285,7 @@ const Workspace = z.object({
13250
13285
  isThrottled: z.boolean().optional(),
13251
13286
  isDisabled: z.boolean().optional(),
13252
13287
  isBackgroundJobsDisabled: z.boolean().optional(),
13288
+ isReadOnly: z.boolean().optional(),
13253
13289
  lastExternalApiRequestDate: z.string().nullable().optional(),
13254
13290
  });
13255
13291
  const AppSchema = Workspace;
@@ -16025,6 +16061,18 @@ class UI {
16025
16061
  });
16026
16062
  });
16027
16063
  }
16064
+ async connection(options) {
16065
+ const { url, postData } = await this.client.getScreensPostData('connection', {
16066
+ connectionId: options.connectionId,
16067
+ theme: options.theme,
16068
+ });
16069
+ return new Promise((resolve) => {
16070
+ return openIframeWithPost(url, postData, {
16071
+ onClose: () => resolve(null),
16072
+ onSuccess: (connection) => resolve(connection),
16073
+ });
16074
+ });
16075
+ }
16028
16076
  async UNSAFE_agentSession(options) {
16029
16077
  const { url, postData } = await this.client.getScreensPostData('agent-session', {
16030
16078
  sessionId: options.sessionId,
@@ -16202,187 +16250,8 @@ class MembraneClient extends MembraneApiClient {
16202
16250
 
16203
16251
  injectFormulaCatalog(getFormula, isFormula, hasFormulas);
16204
16252
 
16205
- const CONFIG_FILE_NAME = 'membrane.config.yml';
16206
- const membraneConfigSchema = z.z.object({
16207
- workspaceKey: z.z.string(),
16208
- workspaceSecret: z.z.string(),
16209
- apiUri: z.z.string().optional(),
16210
- consoleUri: z.z.string().optional(),
16211
- testCustomerId: z.z.string().optional(),
16212
- accessToken: z.z.string().optional(),
16213
- });
16214
- class MembraneConfigLoader {
16215
- constructor(cwd = process.cwd()) {
16216
- this.cachedConfig = null;
16217
- this.cwd = cwd;
16218
- }
16219
- loadConfig(options = {}) {
16220
- const { validate = false, useCache = true } = options;
16221
- if (useCache && this.cachedConfig !== null) {
16222
- if (validate) {
16223
- const validation = membraneConfigSchema.safeParse(this.cachedConfig);
16224
- if (!validation.success) {
16225
- throw new Error(`Invalid configuration: ${validation.error.message}`);
16226
- }
16227
- }
16228
- return this.cachedConfig;
16229
- }
16230
- const fileConfig = this.loadFromFile();
16231
- const envConfig = this.loadFromEnv();
16232
- const mergedConfig = {
16233
- ...fileConfig,
16234
- ...envConfig,
16235
- };
16236
- this.cachedConfig = mergedConfig;
16237
- if (validate) {
16238
- const validation = membraneConfigSchema.safeParse(mergedConfig);
16239
- if (!validation.success) {
16240
- throw new Error(`Invalid configuration: ${validation.error.message}`);
16241
- }
16242
- return validation.data;
16243
- }
16244
- return mergedConfig;
16245
- }
16246
- hasValidConfig() {
16247
- try {
16248
- const config = this.loadConfig({ validate: true });
16249
- return Boolean(config.workspaceKey && config.workspaceSecret);
16250
- }
16251
- catch (_a) {
16252
- return false;
16253
- }
16254
- }
16255
- hasWorkspaceCredentials() {
16256
- const config = this.loadConfig();
16257
- return Boolean(config.workspaceKey && config.workspaceSecret);
16258
- }
16259
- clearCache() {
16260
- this.cachedConfig = null;
16261
- }
16262
- updateConfig(newConfig) {
16263
- const currentConfig = this.loadConfig({ useCache: false });
16264
- const mergedConfig = {
16265
- ...currentConfig,
16266
- ...newConfig,
16267
- };
16268
- this.saveToFile(newConfig);
16269
- this.cachedConfig = mergedConfig;
16270
- return mergedConfig;
16271
- }
16272
- saveToFile(config) {
16273
- const configPath = path__namespace.join(this.cwd, CONFIG_FILE_NAME);
16274
- const fileConfig = this.loadFromFile();
16275
- const newFileConfig = {
16276
- ...fileConfig,
16277
- ...config,
16278
- };
16279
- const envConfig = this.loadFromEnv();
16280
- for (const key of Object.keys(envConfig)) {
16281
- if (envConfig[key] === newFileConfig[key]) {
16282
- delete newFileConfig[key];
16283
- }
16284
- }
16285
- try {
16286
- const yamlStr = yaml__namespace.dump(newFileConfig);
16287
- fs__namespace.writeFileSync(configPath, yamlStr, 'utf8');
16288
- return true;
16289
- }
16290
- catch (_error) {
16291
- return false;
16292
- }
16293
- }
16294
- getCwd() {
16295
- return this.cwd;
16296
- }
16297
- setCwd(newCwd) {
16298
- if (this.cwd !== newCwd) {
16299
- this.cwd = newCwd;
16300
- this.clearCache();
16301
- }
16302
- }
16303
- loadFromFile() {
16304
- const configPath = path__namespace.join(this.cwd, CONFIG_FILE_NAME);
16305
- let configFile;
16306
- try {
16307
- configFile = fs__namespace.readFileSync(configPath, 'utf8');
16308
- }
16309
- catch (_a) {
16310
- return {};
16311
- }
16312
- let parsedConfig;
16313
- try {
16314
- parsedConfig = yaml__namespace.load(configFile);
16315
- }
16316
- catch (yamlError) {
16317
- throw new Error(`Failed to parse ${CONFIG_FILE_NAME}: ${yamlError.message}`);
16318
- }
16319
- const config = {};
16320
- if (parsedConfig === null || parsedConfig === void 0 ? void 0 : parsedConfig.accessToken) {
16321
- config.accessToken = String(parsedConfig.accessToken);
16322
- }
16323
- if (parsedConfig === null || parsedConfig === void 0 ? void 0 : parsedConfig.workspaceKey) {
16324
- config.workspaceKey = String(parsedConfig.workspaceKey);
16325
- }
16326
- if (parsedConfig === null || parsedConfig === void 0 ? void 0 : parsedConfig.workspaceSecret) {
16327
- config.workspaceSecret = String(parsedConfig.workspaceSecret);
16328
- }
16329
- if (parsedConfig === null || parsedConfig === void 0 ? void 0 : parsedConfig.apiUri) {
16330
- config.apiUri = String(parsedConfig.apiUri);
16331
- }
16332
- if (parsedConfig === null || parsedConfig === void 0 ? void 0 : parsedConfig.consoleUri) {
16333
- config.consoleUri = String(parsedConfig.consoleUri);
16334
- }
16335
- if (parsedConfig === null || parsedConfig === void 0 ? void 0 : parsedConfig.testCustomerId) {
16336
- config.testCustomerId = String(parsedConfig.testCustomerId);
16337
- }
16338
- return config;
16339
- }
16340
- loadFromEnv() {
16341
- const config = {};
16342
- if (process.env.MEMBRANE_ACCESS_TOKEN) {
16343
- config.accessToken = process.env.MEMBRANE_ACCESS_TOKEN;
16344
- }
16345
- if (process.env.MEMBRANE_WORKSPACE_KEY) {
16346
- config.workspaceKey = process.env.MEMBRANE_WORKSPACE_KEY;
16347
- }
16348
- if (process.env.MEMBRANE_WORKSPACE_SECRET) {
16349
- config.workspaceSecret = process.env.MEMBRANE_WORKSPACE_SECRET;
16350
- }
16351
- if (process.env.MEMBRANE_API_URI) {
16352
- config.apiUri = process.env.MEMBRANE_API_URI;
16353
- }
16354
- if (process.env.MEMBRANE_CONSOLE_URI) {
16355
- config.consoleUri = process.env.MEMBRANE_CONSOLE_URI;
16356
- }
16357
- if (process.env.MEMBRANE_TEST_CUSTOMER_ID) {
16358
- config.testCustomerId = process.env.MEMBRANE_TEST_CUSTOMER_ID;
16359
- }
16360
- return config;
16361
- }
16362
- }
16363
- let defaultLoader = null;
16364
- function getDefaultMembraneConfigLoader() {
16365
- if (!defaultLoader) {
16366
- defaultLoader = new MembraneConfigLoader();
16367
- }
16368
- return defaultLoader;
16369
- }
16370
- function loadMembraneConfig(cwd, options) {
16371
- if (cwd) {
16372
- const loader = new MembraneConfigLoader(cwd);
16373
- return loader.loadConfig(options);
16374
- }
16375
- return getDefaultMembraneConfigLoader().loadConfig(options);
16376
- }
16377
- function hasMembraneCredentials(cwd) {
16378
- if (cwd) {
16379
- const loader = new MembraneConfigLoader(cwd);
16380
- return loader.hasWorkspaceCredentials();
16381
- }
16382
- return getDefaultMembraneConfigLoader().hasWorkspaceCredentials();
16383
- }
16384
-
16385
16253
  exports.ACTIONS = ACTIONS;
16254
+ exports.AGENTIC_CONNECTION_REQUEST_SCREEN_PATH = AGENTIC_CONNECTION_REQUEST_SCREEN_PATH;
16386
16255
  exports.ALERT_DELIVERY_METHODS = ALERT_DELIVERY_METHODS;
16387
16256
  exports.ALERT_TYPE_CATEGORIES = ALERT_TYPE_CATEGORIES;
16388
16257
  exports.AccessDeniedError = AccessDeniedError;
@@ -16404,6 +16273,7 @@ exports.ActionsAccessor = ActionsAccessor;
16404
16273
  exports.ActivityLogRecord = ActivityLogRecord;
16405
16274
  exports.ActivityStatsQuery = ActivityStatsQuery;
16406
16275
  exports.AgentSession = AgentSession;
16276
+ exports.AgentSessionAttachment = AgentSessionAttachment;
16407
16277
  exports.AgentSessionInputSchema = AgentSessionInputSchema;
16408
16278
  exports.AiAgentAudience = AiAgentAudience;
16409
16279
  exports.AiAgentParameters = AiAgentParameters;
@@ -16475,7 +16345,6 @@ exports.BasePackage = BasePackage;
16475
16345
  exports.BaseScreen = BaseScreen;
16476
16346
  exports.BaseWorkspaceElement = BaseWorkspaceElement;
16477
16347
  exports.CLIENT_TOKEN_GRANT_TYPES = CLIENT_TOKEN_GRANT_TYPES;
16478
- exports.CONFIG_FILE_NAME = CONFIG_FILE_NAME;
16479
16348
  exports.CONNECTION_REQUEST_ID_PARAM = CONNECTION_REQUEST_ID_PARAM;
16480
16349
  exports.CONNECTION_REQUEST_SCREEN_PATH = CONNECTION_REQUEST_SCREEN_PATH;
16481
16350
  exports.CONNECTOR_AUTH_TYPES = CONNECTOR_AUTH_TYPES;
@@ -16858,7 +16727,6 @@ exports.MappingSchema = MappingSchema;
16858
16727
  exports.MembraneAgentKey = MembraneAgentKey;
16859
16728
  exports.MembraneAxiosInstance = axios;
16860
16729
  exports.MembraneClient = MembraneClient;
16861
- exports.MembraneConfigLoader = MembraneConfigLoader;
16862
16730
  exports.MembraneElementLayer = MembraneElementLayer;
16863
16731
  exports.MembraneError = MembraneError;
16864
16732
  exports.MergeObjects = MergeObjects;
@@ -16898,6 +16766,7 @@ exports.PackagesAccessor = PackagesAccessor;
16898
16766
  exports.PaginationQuery = PaginationQuery;
16899
16767
  exports.PaginationResponse = PaginationResponse;
16900
16768
  exports.PatchAgentSessionSchema = PatchAgentSessionSchema;
16769
+ exports.PatchConnectionRequestPayload = PatchConnectionRequestPayload;
16901
16770
  exports.PendingQueueCountSchema = PendingQueueCountSchema;
16902
16771
  exports.PendingTasksSummarySchema = PendingTasksSummarySchema;
16903
16772
  exports.PlatformUser = PlatformUser;
@@ -17016,7 +16885,6 @@ exports.getConnectorVersionPath = getConnectorVersionPath;
17016
16885
  exports.getDataCollectionCreateFields = getDataCollectionCreateFields;
17017
16886
  exports.getDataCollectionUpdateFields = getDataCollectionUpdateFields;
17018
16887
  exports.getDataLocationMethodPath = getDataLocationMethodPath;
17019
- exports.getDefaultMembraneConfigLoader = getDefaultMembraneConfigLoader;
17020
16888
  exports.getDownstreamNodeKeys = getDownstreamNodeKeys;
17021
16889
  exports.getEditablePathsForElementType = getEditablePathsForElementType;
17022
16890
  exports.getEditablePathsFromSchema = getEditablePathsFromSchema;
@@ -17061,7 +16929,6 @@ exports.getVariableLocators = getVariableLocators;
17061
16929
  exports.getWritableFieldsSchema = getWritableFieldsSchema;
17062
16930
  exports.hasCycles = hasCycles;
17063
16931
  exports.hasFormulas_internalDoNotUse = hasFormulas;
17064
- exports.hasMembraneCredentials = hasMembraneCredentials;
17065
16932
  exports.injectFormulaCatalog = injectFormulaCatalog;
17066
16933
  exports.isBlob = isBlob;
17067
16934
  exports.isBusinessDay = isBusinessDay;
@@ -17079,7 +16946,6 @@ exports.isValidAlertType = isValidAlertType;
17079
16946
  exports.isValidLocator = isValidLocator;
17080
16947
  exports.jsonPointerToDotPath = jsonPointerToDotPath;
17081
16948
  exports.lenientParseWithSchema = lenientParseWithSchema;
17082
- exports.loadMembraneConfig = loadMembraneConfig;
17083
16949
  exports.locatorToField = locatorToField;
17084
16950
  exports.locatorToSteps = locatorToSteps;
17085
16951
  exports.locatorToString = locatorToString;
@@ -17088,7 +16954,6 @@ exports.makeDataLocationPath = makeDataLocationPath;
17088
16954
  exports.makeDataRecordSchema = makeDataRecordSchema;
17089
16955
  exports.makeObjectPropertyLocator = makeObjectPropertyLocator;
17090
16956
  exports.makeSchemaForLocator = makeSchemaForLocator;
17091
- exports.membraneConfigSchema = membraneConfigSchema;
17092
16957
  exports.mergeSchemas = mergeSchemas;
17093
16958
  exports.mergeWithFormulas = mergeWithFormulas;
17094
16959
  exports.nonEmptyObjectProperties = nonEmptyObjectProperties;
@@ -17123,6 +16988,7 @@ exports.unwrapSchema = unwrapSchema;
17123
16988
  exports.unwrapSchemas = unwrapSchemas;
17124
16989
  exports.updateFlowInstanceSchema = updateFlowInstanceSchema;
17125
16990
  exports.updateImpliedSchema = updateImpliedSchema;
16991
+ exports.validateFunctionDefinitions = validateFunctionDefinitions;
17126
16992
  exports.valueToSchema = valueToSchema;
17127
16993
  exports.valueToString = valueToString;
17128
16994
  exports.walkSchema = walkSchema;