@api-client/core 0.19.16 → 0.19.18
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.
- package/build/src/browser.d.ts +12 -12
- package/build/src/browser.d.ts.map +1 -1
- package/build/src/browser.js +3 -3
- package/build/src/browser.js.map +1 -1
- package/build/src/exceptions/exception.d.ts +56 -0
- package/build/src/exceptions/exception.d.ts.map +1 -1
- package/build/src/exceptions/exception.js +111 -14
- package/build/src/exceptions/exception.js.map +1 -1
- package/build/src/index.d.ts +12 -12
- package/build/src/index.d.ts.map +1 -1
- package/build/src/index.js +3 -3
- package/build/src/index.js.map +1 -1
- package/build/src/mocking/ProjectMock.d.ts +1 -1
- package/build/src/mocking/ProjectMock.d.ts.map +1 -1
- package/build/src/mocking/ProjectMock.js.map +1 -1
- package/build/src/mocking/lib/File.d.ts +5 -5
- package/build/src/mocking/lib/File.d.ts.map +1 -1
- package/build/src/mocking/lib/File.js.map +1 -1
- package/build/src/mocking/lib/Organization.d.ts +3 -3
- package/build/src/mocking/lib/Organization.d.ts.map +1 -1
- package/build/src/mocking/lib/Organization.js +2 -1
- package/build/src/mocking/lib/Organization.js.map +1 -1
- package/build/src/mocking/lib/Permission.d.ts +6 -6
- package/build/src/mocking/lib/Permission.d.ts.map +1 -1
- package/build/src/mocking/lib/Permission.js.map +1 -1
- package/build/src/mocking/lib/User.d.ts +8 -4
- package/build/src/mocking/lib/User.d.ts.map +1 -1
- package/build/src/mocking/lib/User.js.map +1 -1
- package/build/src/modeling/ApiFile.d.ts +8 -4
- package/build/src/modeling/ApiFile.d.ts.map +1 -1
- package/build/src/modeling/ApiFile.js.map +1 -1
- package/build/src/modeling/ApiModel.d.ts +2 -2
- package/build/src/modeling/ApiModel.d.ts.map +1 -1
- package/build/src/modeling/ApiModel.js.map +1 -1
- package/build/src/modeling/DataDomain.d.ts +2 -2
- package/build/src/modeling/DataDomain.d.ts.map +1 -1
- package/build/src/modeling/DataDomain.js.map +1 -1
- package/build/src/modeling/DomainAssociation.d.ts +2 -2
- package/build/src/modeling/DomainAssociation.d.ts.map +1 -1
- package/build/src/modeling/DomainAssociation.js.map +1 -1
- package/build/src/modeling/DomainEntity.d.ts +2 -2
- package/build/src/modeling/DomainEntity.d.ts.map +1 -1
- package/build/src/modeling/DomainEntity.js.map +1 -1
- package/build/src/modeling/DomainFile.d.ts +8 -4
- package/build/src/modeling/DomainFile.d.ts.map +1 -1
- package/build/src/modeling/DomainFile.js.map +1 -1
- package/build/src/modeling/DomainModel.d.ts +2 -2
- package/build/src/modeling/DomainModel.d.ts.map +1 -1
- package/build/src/modeling/DomainModel.js.map +1 -1
- package/build/src/modeling/DomainNamespace.d.ts +2 -2
- package/build/src/modeling/DomainNamespace.d.ts.map +1 -1
- package/build/src/modeling/DomainNamespace.js.map +1 -1
- package/build/src/modeling/DomainProperty.d.ts +2 -2
- package/build/src/modeling/DomainProperty.d.ts.map +1 -1
- package/build/src/modeling/DomainProperty.js.map +1 -1
- package/build/src/modeling/helpers/Intelisense.d.ts +38 -38
- package/build/src/modeling/helpers/Intelisense.d.ts.map +1 -1
- package/build/src/modeling/helpers/Intelisense.js.map +1 -1
- package/build/src/models/AiMessage.d.ts +3 -3
- package/build/src/models/AiMessage.d.ts.map +1 -1
- package/build/src/models/AiMessage.js.map +1 -1
- package/build/src/models/AiSession.d.ts +3 -3
- package/build/src/models/AiSession.d.ts.map +1 -1
- package/build/src/models/AiSession.js.map +1 -1
- package/build/src/models/CertificateFile.d.ts +2 -2
- package/build/src/models/CertificateFile.d.ts.map +1 -1
- package/build/src/models/CertificateFile.js.map +1 -1
- package/build/src/models/Environment.d.ts +2 -2
- package/build/src/models/Environment.d.ts.map +1 -1
- package/build/src/models/Environment.js.map +1 -1
- package/build/src/models/Folder.d.ts +9 -5
- package/build/src/models/Folder.d.ts.map +1 -1
- package/build/src/models/Folder.js.map +1 -1
- package/build/src/models/HttpProject.d.ts +2 -2
- package/build/src/models/HttpProject.d.ts.map +1 -1
- package/build/src/models/HttpProject.js.map +1 -1
- package/build/src/models/ProjectFolder.d.ts +2 -2
- package/build/src/models/ProjectFolder.d.ts.map +1 -1
- package/build/src/models/ProjectFolder.js.map +1 -1
- package/build/src/models/Request.d.ts +3 -3
- package/build/src/models/Request.d.ts.map +1 -1
- package/build/src/models/Request.js.map +1 -1
- package/build/src/models/Thing.d.ts +9 -5
- package/build/src/models/Thing.d.ts.map +1 -1
- package/build/src/models/Thing.js.map +1 -1
- package/build/src/models/TrashEntry.d.ts +2 -2
- package/build/src/models/TrashEntry.d.ts.map +1 -1
- package/build/src/models/TrashEntry.js.map +1 -1
- package/build/src/models/store/Capabilities.d.ts +5 -1
- package/build/src/models/store/Capabilities.d.ts.map +1 -1
- package/build/src/models/store/Capabilities.js.map +1 -1
- package/build/src/models/store/Deletion.d.ts +5 -1
- package/build/src/models/store/Deletion.d.ts.map +1 -1
- package/build/src/models/store/Deletion.js.map +1 -1
- package/build/src/models/store/File.d.ts +45 -37
- package/build/src/models/store/File.d.ts.map +1 -1
- package/build/src/models/store/File.js +1 -1
- package/build/src/models/store/File.js.map +1 -1
- package/build/src/models/store/Group.d.ts +3 -3
- package/build/src/models/store/Group.d.ts.map +1 -1
- package/build/src/models/store/Group.js.map +1 -1
- package/build/src/models/store/Invitation.d.ts +3 -3
- package/build/src/models/store/Invitation.d.ts.map +1 -1
- package/build/src/models/store/Invitation.js.map +1 -1
- package/build/src/models/store/Modification.d.ts +5 -1
- package/build/src/models/store/Modification.d.ts.map +1 -1
- package/build/src/models/store/Modification.js.map +1 -1
- package/build/src/models/store/Organization.d.ts +18 -13
- package/build/src/models/store/Organization.d.ts.map +1 -1
- package/build/src/models/store/Organization.js +29 -47
- package/build/src/models/store/Organization.js.map +1 -1
- package/build/src/models/store/Permission.d.ts +9 -5
- package/build/src/models/store/Permission.d.ts.map +1 -1
- package/build/src/models/store/Permission.js.map +1 -1
- package/build/src/models/store/User.d.ts +18 -6
- package/build/src/models/store/User.d.ts.map +1 -1
- package/build/src/models/store/User.js.map +1 -1
- package/build/src/models/store/UserIdentity.d.ts +9 -5
- package/build/src/models/store/UserIdentity.d.ts.map +1 -1
- package/build/src/models/store/UserIdentity.js.map +1 -1
- package/build/src/sdk/FilesSdk.d.ts +15 -15
- package/build/src/sdk/FilesSdk.d.ts.map +1 -1
- package/build/src/sdk/FilesSdk.js +1 -1
- package/build/src/sdk/FilesSdk.js.map +1 -1
- package/build/src/sdk/OrganizationsSdk.d.ts +9 -9
- package/build/src/sdk/OrganizationsSdk.d.ts.map +1 -1
- package/build/src/sdk/OrganizationsSdk.js.map +1 -1
- package/build/src/sdk/SdkMock.js +6 -6
- package/build/src/sdk/SdkMock.js.map +1 -1
- package/build/src/sdk/SharedSdk.d.ts +2 -2
- package/build/src/sdk/SharedSdk.d.ts.map +1 -1
- package/build/src/sdk/SharedSdk.js.map +1 -1
- package/build/src/sdk/StoreSdkNode.d.ts +1 -1
- package/build/src/sdk/StoreSdkNode.d.ts.map +1 -1
- package/build/src/sdk/StoreSdkNode.js.map +1 -1
- package/build/src/sdk/StoreSdkWeb.d.ts +1 -1
- package/build/src/sdk/StoreSdkWeb.d.ts.map +1 -1
- package/build/src/sdk/StoreSdkWeb.js.map +1 -1
- package/build/src/sdk/UsersSdk.d.ts +5 -5
- package/build/src/sdk/UsersSdk.d.ts.map +1 -1
- package/build/src/sdk/UsersSdk.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/exceptions/exception.ts +119 -15
- package/src/mocking/ProjectMock.ts +1 -1
- package/src/mocking/lib/File.ts +5 -5
- package/src/mocking/lib/Organization.ts +5 -3
- package/src/mocking/lib/Permission.ts +8 -8
- package/src/mocking/lib/User.ts +11 -6
- package/src/modeling/ApiFile.ts +11 -6
- package/src/modeling/ApiModel.ts +2 -2
- package/src/modeling/DataDomain.ts +2 -2
- package/src/modeling/DomainAssociation.ts +2 -2
- package/src/modeling/DomainEntity.ts +2 -2
- package/src/modeling/DomainFile.ts +11 -6
- package/src/modeling/DomainModel.ts +2 -2
- package/src/modeling/DomainNamespace.ts +2 -2
- package/src/modeling/DomainProperty.ts +2 -2
- package/src/modeling/helpers/Intelisense.ts +41 -38
- package/src/models/AiMessage.ts +3 -3
- package/src/models/AiSession.ts +3 -3
- package/src/models/CertificateFile.ts +2 -2
- package/src/models/Environment.ts +2 -2
- package/src/models/Folder.ts +13 -8
- package/src/models/HttpProject.ts +2 -2
- package/src/models/ProjectFolder.ts +2 -2
- package/src/models/Request.ts +3 -3
- package/src/models/Thing.ts +14 -9
- package/src/models/TrashEntry.ts +2 -2
- package/src/models/store/Capabilities.ts +6 -1
- package/src/models/store/Deletion.ts +6 -1
- package/src/models/store/File.ts +53 -43
- package/src/models/store/Group.ts +3 -3
- package/src/models/store/Invitation.ts +3 -3
- package/src/models/store/Modification.ts +6 -1
- package/src/models/store/Organization.ts +45 -60
- package/src/models/store/Permission.ts +17 -12
- package/src/models/store/User.ts +21 -6
- package/src/models/store/UserIdentity.ts +13 -8
- package/src/sdk/FilesSdk.ts +29 -25
- package/src/sdk/OrganizationsSdk.ts +20 -16
- package/src/sdk/SdkMock.ts +16 -16
- package/src/sdk/SharedSdk.ts +3 -3
- package/src/sdk/StoreSdkNode.ts +3 -3
- package/src/sdk/StoreSdkWeb.ts +3 -3
- package/src/sdk/UsersSdk.ts +6 -6
- package/tests/unit/exceptions/exception.spec.ts +261 -0
- package/tests/unit/mocking/current/File.spec.ts +5 -5
- package/tests/unit/mocking/current/Organization.spec.ts +4 -3
- package/tests/unit/mocking/current/Permission.spec.ts +2 -2
- package/tests/unit/mocking/current/User.spec.ts +2 -2
- package/tests/unit/modeling/domain_file.spec.ts +3 -3
- package/tests/unit/models/File/createFileCapabilities.spec.ts +3 -3
- package/tests/unit/models/File/new.spec.ts +2 -2
- package/tests/unit/models/File/setDeleted.spec.ts +3 -3
- package/tests/unit/models/File/setLastModified.spec.ts +3 -3
- package/tests/unit/models/File/toJSON.spec.ts +2 -2
- package/tests/unit/models/Folder/create.spec.ts +3 -3
- package/tests/unit/models/Permission/all.spec.ts +3 -3
- package/tests/unit/models/store/Invitation.spec.ts +2 -2
- package/tests/unit/models/store/Organization.spec.ts +100 -0
- package/tests/unit/models/store/Permission.spec.ts +16 -6
- package/tests/unit/models/thing.spec.ts +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkMock.js","sourceRoot":"","sources":["../../../src/sdk/SdkMock.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type ResponseGenerator,\n setupWorker,\n type MockHandler,\n type SetupWorkerOptions,\n type InterceptOptions,\n type SerializedRequest,\n} from '@jarrodek/amw'\nimport type { IOrganization } from '../models/store/Organization.js'\nimport type { GroupSchema } from '../models/store/Group.js'\nimport type { IUser } from '../models/store/User.js'\nimport type { InvitationSchema } from '../models/store/Invitation.js'\nimport { type IFile, type FileBreadcrumb } from '../models/store/File.js'\nimport type { ContextChangeRecord, ContextListResult, IBulkOperationResult } from '../events/BaseEvents.js'\nimport type { TrashEntry } from '../models/TrashEntry.js'\nimport { RouteBuilder } from './RouteBuilder.js'\nimport { ModelingMock } from '../mocking/ModelingMock.js'\nimport type {\n DataCatalogSchema,\n DataCatalogSchemaWithVersion,\n DataCatalogStatus,\n DataCatalogVersionInfo,\n} from '../models/DataCatalog.js'\nimport type { DataCatalogVersionSchema } from '../models/DataCatalogVersion.js'\nimport { DataDomain, type DataDomainSchema } from '../modeling/DataDomain.js'\nimport type { ForeignDomainDependency } from '../modeling/types.js'\nimport { nanoid } from '../nanoid.js'\nimport type { AiSessionSchema, AiSessionApp } from '../models/AiSession.js'\nimport type { AiMessageSchema } from '../models/AiMessage.js'\n\nexport interface MockResult {\n /**\n * Custom response generator for the mock intercept.\n */\n response?: ResponseGenerator\n /**\n * If true, the request body will be generated using the body generator.\n * It is useful when only setting up response headers or status code, but\n * the request body should still be generated, even when missing in the `response` option.\n */\n forceBody?: boolean\n}\n\nexport interface MockListResult extends MockResult {\n /**\n * Number of items to generate in the list response.\n */\n size?: number\n /**\n * If true, the response will include a cursor for pagination.\n * If false, the response will not include a cursor.\n * If not set, a random choice will be made.\n */\n cursor?: boolean\n}\n\n/**\n * SDK mocking utility for testing. Uses Service Workers to intercept HTTP requests\n * and provide mock responses for API calls.\n *\n * This class uses the `@jarrodek/amw` library to set up a Service Worker that intercepts\n * fetch requests matching the configured routes. Each method adds an intercept for a specific\n * API endpoint, returning either random generated data or custom responses.\n *\n * @example\n * ```typescript\n * import { SdkMock } from '@api-client/core/sdk/SdkMock.js';\n * import { StoreSdk } from '@api-client/core/sdk/StoreSdkWeb.js';\n *\n * const sdk = new StoreSdk('http://localhost:8080');\n * const mocker = new SdkMock({\n * swPath: '/mockServiceWorker.js', // Path to the Service Worker script\n * base: 'http://localhost:8080' // Base URL matching the SDK\n * });\n *\n * // Initialize the Service Worker\n * await mocker.setup();\n *\n * // Add intercept - returns random organizations\n * await mocker.organizations.list();\n *\n * // Custom response with specific data\n * await mocker.organizations.create({\n * response: {\n * status: 201,\n * headers: { 'Content-Type': 'application/json', 'X-Custom-Header': 'value' },\n * body: JSON.stringify({ key: 'custom-id', name: 'Custom Org' })\n * }\n * });\n *\n * // Control pagination in list responses\n * await mocker.groups.list({\n * size: 10, // Number of items to generate\n * cursor: true // Include pagination cursor\n * });\n *\n * // Error simulation\n * await mocker.users.me({\n * response: {\n * status: 404,\n * headers: { 'Content-Type': 'application/json' },\n * body: JSON.stringify({ error: 'Not found' })\n * }\n * });\n *\n * // Remove all intercepts (keep Service Worker active)\n * await mocker.reset();\n *\n * // Stop and remove the Service Worker\n * await mocker.teardown();\n * ```\n *\n * @TODO: Add a in-memory state store so that mocks can maintain state across requests.\n * This way, operations like create, update, delete can affect subsequent list/read calls\n * and we can mimic the API behavior more closely.\n */\nexport class SdkMock {\n handler?: MockHandler\n gen = new ModelingMock()\n\n constructor(public options?: SetupWorkerOptions) {}\n\n /**\n * Initializes the mock handler. It uses options provided in the constructor.\n * It has to be called before using any of the mock methods.\n */\n async setup(): Promise<void> {\n this.handler = await setupWorker(this.options)\n }\n\n /**\n * Removes the mock worker and all intercepts.\n */\n async teardown(): Promise<void> {\n await this.mock.stop()\n }\n\n /**\n * Removes all added intercepts.\n */\n async reset(): Promise<void> {\n await this.mock.reset()\n }\n\n get mock(): MockHandler {\n if (!this.handler) {\n throw new Error('Mock handler not initialized. Call setup() first.')\n }\n return this.handler\n }\n\n protected createCursorOption(init: MockListResult = {}): string | undefined {\n if (init.cursor === false) {\n return undefined\n }\n const hasCursor = init.cursor === true ? true : this.gen.faker.datatype.boolean()\n if (!hasCursor) {\n return undefined\n }\n return this.gen.faker.internet.jwt()\n }\n\n protected createDefaultResponse(\n status: number,\n headers?: Record<string, string>,\n body?: (req: SerializedRequest) => string,\n userConfig?: MockResult\n ): ResponseGenerator {\n let respond: ResponseGenerator\n if (userConfig?.response) {\n // user config takes precedence\n respond = userConfig.response\n } else {\n respond = {}\n }\n // Set defaults if not provided in user config\n if (!respond.status) {\n respond.status = status\n }\n // only set headers if the user didn't configure the response only.\n // The user may want to remove default headers.\n if (!userConfig || !userConfig.response) {\n respond.headers = headers\n }\n if (!respond.body && userConfig?.forceBody && body) {\n // when body is missing and forceBody is set, generate the body\n respond.body = (req: SerializedRequest) => body(req)\n } else if (body && (!userConfig || !userConfig.response)) {\n // we set the body by default when the user config is missing\n respond.body = (req: SerializedRequest) => body(req)\n }\n return respond\n }\n\n /**\n * Organization API mocks.\n */\n organizations = {\n /**\n * Adds an intercept to mock the `organizations.list()` method.\n * @param options Optional response configuration\n */\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.organization.organizations(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<IOrganization>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () =>\n JSON.stringify({\n items: this.gen.organization.organizations(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n } as ContextListResult<IOrganization>),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizations(),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Adds an intercept to mock the `organizations.create()` method.\n * @param options Optional response configuration\n */\n create: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.organization.organization()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.organization.organization()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizations(),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n invitations: {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.invitation.invitations(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<InvitationSchema>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<InvitationSchema> = {\n items: this.gen.invitation.invitations(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.invitations(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n create: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.invitations(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n findByToken: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n\n await mock.add(\n {\n match: {\n uri: RouteBuilder.findInvitation(),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n decline: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n\n await mock.add(\n {\n match: {\n uri: RouteBuilder.declineInvitation(':oid', ':id'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n\n await mock.add(\n {\n match: {\n uri: RouteBuilder.invitation(':oid', ':id'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n patch: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.invitation(':oid', ':id'),\n methods: ['PATCH'],\n },\n respond,\n },\n options\n )\n },\n resend: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n\n await mock.add(\n {\n match: {\n uri: RouteBuilder.resendInvitation(':oid', ':id'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n },\n\n users: {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.users.users(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<IUser>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<IUser> = {\n items: this.gen.users.users(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizationUsers(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n read: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.users.user()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.users.user()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizationUser(':oid', ':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n readBatch: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const path = RouteBuilder.organizationUserBatch(':oid')\n const respond = init?.response ?? {\n status: 200,\n headers: { 'content-type': 'application/json' },\n body: JSON.stringify({\n items: this.gen.users.users(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n } as ContextListResult<IUser>),\n }\n await mock.add(\n {\n match: {\n uri: path,\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n activate: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.users.user()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.users.user()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizationUserActivate(':oid', ':id'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n deactivate: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.users.user()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.users.user()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizationUserDeactivate(':oid', ':id'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizationUser(':oid', ':id'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n },\n }\n\n /**\n * Group API mocks.\n */\n groups = {\n /**\n * Mocks the `groups.list()` method.\n * @param options Optional response customization.\n */\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.group.groups(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<GroupSchema>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<GroupSchema> = {\n items: this.gen.group.groups(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.groups(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `groups.create()` method.\n * @param options Optional response customization.\n */\n create: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 201,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.group.group()),\n // }\n const respond = this.createDefaultResponse(\n 201,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.group.group()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.groups(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `groups.update()` method.\n * @param options Optional response customization.\n */\n update: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.group.group()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.group.group()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.group(':oid', ':key'),\n methods: ['PATCH'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `groups.delete()` method.\n * @param options Optional response customization.\n */\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.group(':oid', ':key'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `groups.addUsers()` method.\n */\n addUsers: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.group.group()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.group.group()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.groupUsers(':oid', ':key'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `groups.removeUsers()` method.\n */\n removeUsers: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.group.group()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.group.group()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.groupUsers(':oid', ':key'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n }\n\n ai = {\n sessions: {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<AiSessionSchema> = {\n items: this.gen.ai.sessions('general', init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiSessions(':oid', ':app' as AiSessionApp),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n create: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 201,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.ai.session()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiSessions(':oid', ':app' as AiSessionApp),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n read: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.ai.session()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiSession(':oid', ':app' as AiSessionApp, ':sid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n update: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.ai.session()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiSession(':oid', ':app' as AiSessionApp, ':sid'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiSession(':oid', ':app' as AiSessionApp, ':sid'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n },\n\n messages: {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<AiMessageSchema> = {\n items: this.gen.ai.messages(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiMessages(':oid', ':sid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n update: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.ai.message()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiMessage(':oid', ':sid', ':mid'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiMessage(':oid', ':sid', ':mid'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n },\n\n modifyDomain: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // Return a basic JSON response simulating the stream end state for simplicity if not overriding.\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'text/event-stream' },\n () => 'event: done\\ndata: {}\\n\\n',\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiModifyDomain(':oid', ':fid') as string,\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n }\n\n /**\n * User API mocks.\n */\n users = {\n /**\n * Mocks the `user.me()` method.\n * @param options Optional response customization.\n */\n me: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.users.user()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.users.user()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.usersMe(),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n }\n\n /**\n * Files API mocks.\n */\n files = {\n /**\n * Mocks the `file.list()` method.\n */\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.files.files(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<IFile>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<IFile> = {\n items: this.gen.files.files(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.files(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.createMeta()` method.\n */\n createMeta: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 201,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.files.file()),\n // }\n const respond = this.createDefaultResponse(\n 201,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.files.file()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.files(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.createMedia()` method.\n */\n createMedia: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // }\n const respond = this.createDefaultResponse(200, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.fileMedia(':oid', ':id'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.create()` method.\n */\n create: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n await this.files.createMeta(init, options)\n // When SDK's file.create() is called, it responds with\n // what the result of file.createMeta() would be.\n // Because of that, we don't need to configure the media request.\n await this.files.createMedia(undefined, options)\n },\n\n /**\n * Mocks the `file.createFolder()` method.\n */\n createFolder: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 201,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.files.folder()),\n // }\n const respond = this.createDefaultResponse(\n 201,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.files.folder()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.files(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.read()` method.\n */\n read: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.files.file()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.files.file()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.file(':oid', ':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.readMedia()` method.\n */\n readMedia: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: {\n // 'content-type': 'application/json',\n // 'x-version': `${this.gen.faker.number.int({ min: 1, max: 100 })}`,\n // },\n // body: JSON.stringify({ data: this.gen.faker.lorem.sentences() }),\n // }\n const respond = this.createDefaultResponse(\n 200,\n {\n 'content-type': 'application/json',\n 'x-version': `${this.gen.faker.number.int({ min: 1, max: 100 })}`,\n },\n () => JSON.stringify({ data: this.gen.faker.lorem.sentences() }),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.fileMedia(':oid', ':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.readBulk()` method.\n */\n readBulk: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.files.files(init?.size ?? 5),\n // } as IBulkOperationResult<IFile>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: IBulkOperationResult<IFile> = {\n items: this.gen.files.files(init?.size ?? 5),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.filesBatch(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.patch()` method.\n */\n patch: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.files.file()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.files.file()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.file(':oid', ':id'),\n methods: ['PATCH'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.patchMedia()` method.\n */\n patchMedia: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.patch.mediaPatchRevision()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.patch.mediaPatchRevision()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.fileMedia(':oid', ':id'),\n methods: ['PATCH'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.delete()` method.\n */\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.file(':oid', ':id'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.deleteBulk()` method.\n */\n deleteBulk: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.files(':oid'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.patchUsers()` method.\n */\n patchUsers: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.files.file()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.files.file()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.filesAccess(':oid', ':id'),\n methods: ['PATCH'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.addUser()` method.\n */\n addUser: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n await this.files.patchUsers(init, options)\n },\n\n /**\n * Mocks the `file.removeUser()` method.\n */\n removeUser: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n await this.files.patchUsers(init, options)\n },\n\n /**\n * Mocks the `file.listUsers()` method.\n */\n listUsers: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.users.users(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<IUser>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<IUser> = {\n items: this.gen.users.users(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.fileUsers(':oid', ':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.breadcrumbs()` method.\n */\n breadcrumbs: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.files.fileBreadcrumbs(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<FileBreadcrumb>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<FileBreadcrumb> = {\n items: this.gen.files.fileBreadcrumbs(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.fileBreadcrumbs(':oid', ':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n }\n\n /**\n * @deprecated Use `files` instead.\n */\n file = this.files\n\n /**\n * Shared API mocks.\n */\n shared = {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.files.files(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<IFile>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<IFile> = {\n items: this.gen.files.files(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.shared(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n }\n\n /**\n * Trash API mocks.\n */\n trash = {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.trash.trashEntries(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<TrashEntry>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<TrashEntry> = {\n items: this.gen.trash.trashEntries(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.trash(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.trashBatchDelete(':oid'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n restore: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.trashBatchRestore(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n empty: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.trashEmpty(':oid'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n }\n\n /**\n * Trash Data Catalog mocks.\n */\n dataCatalog = {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<DataCatalogSchemaWithVersion> = {\n items: this.gen.dataCatalog.dataCatalogsWithVersion(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalog(),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n listVersions: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<DataCatalogVersionInfo> = {\n items: this.gen.dataCatalog.versionInfos(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogEntryVersions(':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n publish: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj = this.gen.dataCatalog.dataCatalog()\n const result: ContextChangeRecord<DataCatalogSchema> = {\n key: obj.key,\n item: obj,\n kind: obj.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalog(),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n read: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalog({ key: req.params.id })\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogEntry(':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n deprecate: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalog({ key: req.params.id })\n const result: ContextChangeRecord<DataCatalogSchema> = {\n key: obj.key,\n item: obj,\n kind: obj.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogDeprecate(':id'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n\n unpublish: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalog({ key: req.params.id })\n const result: ContextChangeRecord<DataCatalogSchema> = {\n key: obj.key,\n item: obj,\n kind: obj.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogUnpublish(':id'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n\n publishVersion: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const raw = req.body as string\n const body = JSON.parse(raw) as DataCatalogVersionSchema\n\n const result: ContextChangeRecord<DataCatalogVersionSchema> = {\n key: body.key,\n item: body,\n kind: body.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogEntryVersions(':id'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n readVersion: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalogVersion({ key: req.params.vid, catalogKey: req.params.id })\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogVersion(':id', ':vid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n listDependencies: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const requirements = JSON.parse(req.body as string) as { items: ForeignDomainDependency[] }\n const items: DataDomainSchema[] = []\n for (const item of requirements.items) {\n const domain = new DataDomain({\n key: item.key,\n info: { name: `Domain ${item.key}`, version: item.version },\n })\n items.push(domain.toJSON())\n }\n const obj: ContextListResult<DataDomainSchema> = {\n items: items,\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogDependencies(),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n deprecateVersion: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalogVersion({ key: req.params.vid, catalogKey: req.params.id })\n obj.deprecated = true\n obj.deprecatedAt = this.gen.faker.date.past().getTime()\n obj.deprecatedBy = nanoid()\n const info = JSON.parse(req.body as string) as { reason: string }\n obj.deprecationReason = info.reason\n const result: ContextChangeRecord<DataCatalogVersionSchema> = {\n key: obj.key,\n item: obj,\n kind: obj.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogVersionDeprecate(':id', ':vid'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n\n unpublishVersion: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalogVersion({ key: req.params.vid, catalogKey: req.params.id })\n obj.unpublishedAt = this.gen.faker.date.past().getTime()\n obj.scope = 'private'\n const result: ContextChangeRecord<DataCatalogVersionSchema> = {\n key: obj.key,\n item: obj,\n kind: obj.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogVersionUnpublish(':id', ':vid'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n\n checkPublicationStatus: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj = this.gen.dataCatalog.dataCatalog() as DataCatalogStatus\n obj.versions = this.gen.dataCatalog.versionInfos(1)\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogStatus(':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SdkMock.js","sourceRoot":"","sources":["../../../src/sdk/SdkMock.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,GAKZ,MAAM,eAAe,CAAA;AAQtB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAQzD,OAAO,EAAE,UAAU,EAAyB,MAAM,2BAA2B,CAAA;AAE7E,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AA8BrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,MAAM,OAAO,OAAO;IAIC;IAHnB,OAAO,CAAc;IACrB,GAAG,GAAG,IAAI,YAAY,EAAE,CAAA;IAExB,YAAmB,OAA4B;QAA5B,YAAO,GAAP,OAAO,CAAqB;IAAG,CAAC;IAEnD;;;OAGG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,OAAO,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAChD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;IACxB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;IACzB,CAAC;IAED,IAAI,IAAI;QACN,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAES,kBAAkB,CAAC,OAAuB,EAAE;QACpD,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YAC1B,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;QACjF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;IACtC,CAAC;IAES,qBAAqB,CAC7B,MAAc,EACd,OAAgC,EAChC,IAAyC,EACzC,UAAuB;QAEvB,IAAI,OAA0B,CAAA;QAC9B,IAAI,UAAU,EAAE,QAAQ,EAAE,CAAC;YACzB,+BAA+B;YAC/B,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAA;QAC/B,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,EAAE,CAAA;QACd,CAAC;QACD,8CAA8C;QAC9C,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;QACzB,CAAC;QACD,mEAAmE;QACnE,+CAA+C;QAC/C,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;YACxC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAA;QAC3B,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,UAAU,EAAE,SAAS,IAAI,IAAI,EAAE,CAAC;YACnD,+DAA+D;YAC/D,OAAO,CAAC,IAAI,GAAG,CAAC,GAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACtD,CAAC;aAAM,IAAI,IAAI,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzD,6DAA6D;YAC7D,OAAO,CAAC,IAAI,GAAG,CAAC,GAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACtD,CAAC;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED;;OAEG;IACH,aAAa,GAAG;QACd;;;WAGG;QACH,IAAI,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;YAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,2BAA2B;YAC3B,mEAAmE;YACnE,6CAA6C;YAC7C,iDAAiD;YACjD,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CACH,IAAI,CAAC,SAAS,CAAC;gBACb,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;gBAC3D,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;aACG,CAAC,EAC7C,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,aAAa,EAAE;oBACjC,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;;WAGG;QACH,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,gEAAgE;YAChE,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,EAC1D,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,aAAa,EAAE;oBACjC,OAAO,EAAE,CAAC,MAAM,CAAC;iBAClB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,WAAW,EAAE;YACX,IAAI,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;gBAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,qDAAqD;gBACrD,2BAA2B;gBAC3B,+DAA+D;gBAC/D,6CAA6C;gBAC7C,+CAA+C;gBAC/C,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;oBACH,MAAM,GAAG,GAAwC;wBAC/C,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;wBACvD,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;qBACtC,CAAA;oBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;gBAC5B,CAAC,EACD,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC;wBACrC,OAAO,EAAE,CAAC,KAAK,CAAC;qBACjB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,qDAAqD;gBACrD,4DAA4D;gBAC5D,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,EACtD,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC;wBACrC,OAAO,EAAE,CAAC,MAAM,CAAC;qBAClB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,WAAW,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAClF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,qDAAqD;gBACrD,4DAA4D;gBAC5D,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,EACtD,IAAI,CACL,CAAA;gBAED,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,cAAc,EAAE;wBAClC,OAAO,EAAE,CAAC,KAAK,CAAC;qBACjB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC9E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,qDAAqD;gBACrD,4DAA4D;gBAC5D,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,EACtD,IAAI,CACL,CAAA;gBAED,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAAC;wBAClD,OAAO,EAAE,CAAC,MAAM,CAAC;qBAClB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,qDAAqD;gBACrD,4DAA4D;gBAC5D,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,EACtD,IAAI,CACL,CAAA;gBAED,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC;wBAC3C,OAAO,EAAE,CAAC,QAAQ,CAAC;qBACpB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,KAAK,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC5E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,qDAAqD;gBACrD,4DAA4D;gBAC5D,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,EACtD,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC;wBAC3C,OAAO,EAAE,CAAC,OAAO,CAAC;qBACnB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,qDAAqD;gBACrD,4DAA4D;gBAC5D,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,EACtD,IAAI,CACL,CAAA;gBAED,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC;wBACjD,OAAO,EAAE,CAAC,KAAK,CAAC;qBACjB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;SACF;QAED,KAAK,EAAE;YACL,IAAI,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;gBAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,qDAAqD;gBACrD,2BAA2B;gBAC3B,oDAAoD;gBACpD,6CAA6C;gBAC7C,yCAAyC;gBACzC,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;oBACH,MAAM,GAAG,GAAkC;wBACzC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;wBAC5C,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;qBACtC,CAAA;oBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;gBAC5B,CAAC,EACD,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,iBAAiB,CAAC,MAAM,CAAC;wBAC3C,OAAO,EAAE,CAAC,KAAK,CAAC;qBACjB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,IAAI,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC3E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,qDAAqD;gBACrD,iDAAiD;gBACjD,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC;wBACjD,OAAO,EAAE,CAAC,KAAK,CAAC;qBACjB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,SAAS,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;gBACpF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,MAAM,IAAI,GAAG,YAAY,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;gBACvD,MAAM,OAAO,GAAG,IAAI,EAAE,QAAQ,IAAI;oBAChC,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;wBAC5C,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;qBACL,CAAC;iBACpC,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,IAAI;wBACT,OAAO,EAAE,CAAC,MAAM,CAAC;qBAClB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,QAAQ,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,qDAAqD;gBACrD,iDAAiD;gBACjD,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,wBAAwB,CAAC,MAAM,EAAE,KAAK,CAAC;wBACzD,OAAO,EAAE,CAAC,MAAM,CAAC;qBAClB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,UAAU,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBACjF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,qDAAqD;gBACrD,iDAAiD;gBACjD,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,0BAA0B,CAAC,MAAM,EAAE,KAAK,CAAC;wBAC3D,OAAO,EAAE,CAAC,MAAM,CAAC;qBAClB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,sCAAsC;gBACtC,iBAAiB;gBACjB,IAAI;gBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;gBAC3E,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC;wBACjD,OAAO,EAAE,CAAC,QAAQ,CAAC;qBACpB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;SACF;KACF,CAAA;IAED;;OAEG;IACH,MAAM,GAAG;QACP;;;WAGG;QACH,IAAI,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;YAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,2BAA2B;YAC3B,qDAAqD;YACrD,6CAA6C;YAC7C,0CAA0C;YAC1C,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;gBACH,MAAM,GAAG,GAAmC;oBAC1C,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;oBAC7C,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;iBACtC,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC;oBAChC,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;;WAGG;QACH,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,kDAAkD;YAClD,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,EAC5C,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC;oBAChC,OAAO,EAAE,CAAC,MAAM,CAAC;iBAClB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;;WAGG;QACH,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,kDAAkD;YAClD,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,EAC5C,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC;oBACvC,OAAO,EAAE,CAAC,OAAO,CAAC;iBACnB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;;WAGG;QACH,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;YAC3E,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC;oBACvC,OAAO,EAAE,CAAC,QAAQ,CAAC;iBACpB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,QAAQ,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,kDAAkD;YAClD,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,EAC5C,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC;oBAC5C,OAAO,EAAE,CAAC,MAAM,CAAC;iBAClB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,WAAW,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAClF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,kDAAkD;YAClD,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,EAC5C,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC;oBAC5C,OAAO,EAAE,CAAC,QAAQ,CAAC;iBACpB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;KACF,CAAA;IAED,EAAE,GAAG;QACH,QAAQ,EAAE;YACR,IAAI,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;gBAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;oBACH,MAAM,GAAG,GAAuC;wBAC9C,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;wBACvD,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;qBACtC,CAAA;oBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;gBAC5B,CAAC,EACD,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,MAAsB,CAAC;wBAC5D,OAAO,EAAE,CAAC,KAAK,CAAC;qBACjB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,MAAsB,CAAC;wBAC5D,OAAO,EAAE,CAAC,MAAM,CAAC;qBAClB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,IAAI,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC3E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE,MAAsB,EAAE,MAAM,CAAC;wBACnE,OAAO,EAAE,CAAC,KAAK,CAAC;qBACjB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE,MAAsB,EAAE,MAAM,CAAC;wBACnE,OAAO,EAAE,CAAC,KAAK,CAAC;qBACjB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;gBAC3E,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE,MAAsB,EAAE,MAAM,CAAC;wBACnE,OAAO,EAAE,CAAC,QAAQ,CAAC;qBACpB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;SACF;QAED,QAAQ,EAAE;YACR,IAAI,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;gBAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;oBACH,MAAM,GAAG,GAAuC;wBAC9C,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;wBAC5C,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;qBACtC,CAAA;oBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;gBAC5B,CAAC,EACD,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC;wBAC5C,OAAO,EAAE,CAAC,KAAK,CAAC;qBACjB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;gBACD,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;wBACnD,OAAO,EAAE,CAAC,KAAK,CAAC;qBACjB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;gBAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;gBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;gBAC3E,MAAM,IAAI,CAAC,GAAG,CACZ;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;wBACnD,OAAO,EAAE,CAAC,QAAQ,CAAC;qBACpB;oBACD,OAAO;iBACR,EACD,OAAO,CACR,CAAA;YACH,CAAC;SACF;QAED,YAAY,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YACnF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,iGAAiG;YACjG,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,mBAAmB,EAAE,EACvC,GAAG,EAAE,CAAC,2BAA2B,EACjC,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAW;oBAC1D,OAAO,EAAE,CAAC,MAAM,CAAC;iBAClB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;KACF,CAAA;IAED;;OAEG;IACH,KAAK,GAAG;QACN;;;WAGG;QACH,EAAE,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YACzE,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,iDAAiD;YACjD,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,OAAO,EAAE;oBAC3B,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;KACF,CAAA;IAED;;OAEG;IACH,KAAK,GAAG;QACN;;WAEG;QACH,IAAI,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;YAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,2BAA2B;YAC3B,oDAAoD;YACpD,6CAA6C;YAC7C,yCAAyC;YACzC,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;gBACH,MAAM,GAAG,GAAkC;oBACzC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;oBAC5C,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;iBACtC,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC/B,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,UAAU,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YACjF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,iDAAiD;YACjD,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC/B,OAAO,EAAE,CAAC,MAAM,CAAC;iBAClB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,WAAW,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAClF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;YAC3E,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;oBAC1C,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC7E,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YAC1C,uDAAuD;YACvD,iDAAiD;YACjD,iEAAiE;YACjE,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAClD,CAAC;QAED;;WAEG;QACH,YAAY,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YACnF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,mDAAmD;YACnD,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAC7C,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC/B,OAAO,EAAE,CAAC,MAAM,CAAC;iBAClB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,IAAI,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC3E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,iDAAiD;YACjD,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;oBACrC,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,SAAS,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAChF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,eAAe;YACf,0CAA0C;YAC1C,yEAAyE;YACzE,OAAO;YACP,sEAAsE;YACtE,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH;gBACE,cAAc,EAAE,kBAAkB;gBAClC,WAAW,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE;aAClE,EACD,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,EAChE,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;oBAC1C,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,QAAQ,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;YACnF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,2BAA2B;YAC3B,oDAAoD;YACpD,4CAA4C;YAC5C,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;gBACH,MAAM,GAAG,GAAqC;oBAC5C,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;iBAC7C,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC;oBACpC,OAAO,EAAE,CAAC,MAAM,CAAC;iBAClB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,KAAK,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC5E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,iDAAiD;YACjD,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;oBACrC,OAAO,EAAE,CAAC,OAAO,CAAC;iBACnB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,UAAU,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YACjF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,+DAA+D;YAC/D,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC,EACzD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;oBAC1C,OAAO,EAAE,CAAC,OAAO,CAAC;iBACnB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;YAC3E,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;oBACrC,OAAO,EAAE,CAAC,QAAQ,CAAC;iBACpB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,UAAU,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YACjF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;YAC3E,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC/B,OAAO,EAAE,CAAC,QAAQ,CAAC;iBACpB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,UAAU,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YACjF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,iDAAiD;YACjD,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAC3C,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC;oBAC5C,OAAO,EAAE,CAAC,OAAO,CAAC;iBACnB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,OAAO,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC9E,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC5C,CAAC;QAED;;WAEG;QACH,UAAU,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YACjF,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC5C,CAAC;QAED;;WAEG;QACH,SAAS,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;YACpF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,2BAA2B;YAC3B,oDAAoD;YACpD,6CAA6C;YAC7C,yCAAyC;YACzC,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;gBACH,MAAM,GAAG,GAAkC;oBACzC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;oBAC5C,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;iBACtC,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;oBAC1C,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED;;WAEG;QACH,WAAW,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;YACtF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,2BAA2B;YAC3B,8DAA8D;YAC9D,6CAA6C;YAC7C,6CAA6C;YAC7C,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;gBACH,MAAM,GAAG,GAAsC;oBAC7C,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;oBACtD,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;iBACtC,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC;oBAChD,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;KACF,CAAA;IAED;;OAEG;IACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAA;IAEjB;;OAEG;IACH,MAAM,GAAG;QACP,IAAI,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;YAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,2BAA2B;YAC3B,oDAAoD;YACpD,6CAA6C;YAC7C,yCAAyC;YACzC,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;gBACH,MAAM,GAAG,GAAkC;oBACzC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;oBAC5C,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;iBACtC,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC;oBAChC,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;KACF,CAAA;IAED;;OAEG;IACH,KAAK,GAAG;QACN,IAAI,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;YAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,qDAAqD;YACrD,2BAA2B;YAC3B,2DAA2D;YAC3D,6CAA6C;YAC7C,yCAAyC;YACzC,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;gBACH,MAAM,GAAG,GAAkC;oBACzC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;oBACnD,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;iBACtC,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC/B,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;YAC3E,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,gBAAgB,CAAC,MAAM,CAAC;oBAC1C,OAAO,EAAE,CAAC,QAAQ,CAAC;iBACpB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC9E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;YAC3E,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,iBAAiB,CAAC,MAAM,CAAC;oBAC3C,OAAO,EAAE,CAAC,MAAM,CAAC;iBAClB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QACD,KAAK,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC5E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,sCAAsC;YACtC,iBAAiB;YACjB,IAAI;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;YAC3E,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC;oBACpC,OAAO,EAAE,CAAC,QAAQ,CAAC;iBACpB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;KACF,CAAA;IAED;;OAEG;IACH,WAAW,GAAG;QACZ,IAAI,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;YAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;gBACH,MAAM,GAAG,GAAoD;oBAC3D,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;oBACpE,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;iBACtC,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,WAAW,EAAE;oBAC/B,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,YAAY,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;YACvF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;gBACH,MAAM,GAAG,GAA8C;oBACrD,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;oBACzD,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;iBACtC,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,wBAAwB,CAAC,KAAK,CAAC;oBACjD,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC9E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,EAAE,CAAA;gBAC9C,MAAM,MAAM,GAA2C;oBACrD,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,GAAG,CAAC,IAAI;iBACf,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YAC/B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,WAAW,EAAE;oBAC/B,OAAO,EAAE,CAAC,MAAM,CAAC;iBAClB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,IAAI,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC3E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,CAAC,GAAsB,EAAE,EAAE;gBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;gBACpE,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC;oBACzC,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,SAAS,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAChF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,CAAC,GAAsB,EAAE,EAAE;gBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;gBACpE,MAAM,MAAM,GAA2C;oBACrD,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,GAAG,CAAC,IAAI;iBACf,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YAC/B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,oBAAoB,CAAC,KAAK,CAAC;oBAC7C,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,SAAS,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAChF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,CAAC,GAAsB,EAAE,EAAE;gBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;gBACpE,MAAM,MAAM,GAA2C;oBACrD,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,GAAG,CAAC,IAAI;iBACf,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YAC/B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,oBAAoB,CAAC,KAAK,CAAC;oBAC7C,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,cAAc,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YACrF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,CAAC,GAAsB,EAAE,EAAE;gBACzB,MAAM,GAAG,GAAG,GAAG,CAAC,IAAc,CAAA;gBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA6B,CAAA;gBAExD,MAAM,MAAM,GAAkD;oBAC5D,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YAC/B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,wBAAwB,CAAC,KAAK,CAAC;oBACjD,OAAO,EAAE,CAAC,MAAM,CAAC;iBAClB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,WAAW,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAClF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,CAAC,GAAsB,EAAE,EAAE;gBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,kBAAkB,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;gBACvG,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC;oBACnD,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,gBAAgB,EAAE,KAAK,EAAE,IAAqB,EAAE,OAA0B,EAAiB,EAAE;YAC3F,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,CAAC,GAAsB,EAAE,EAAE;gBACzB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAc,CAAyC,CAAA;gBAC3F,MAAM,KAAK,GAAuB,EAAE,CAAA;gBACpC,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;oBACtC,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC;wBAC5B,GAAG,EAAE,IAAI,CAAC,GAAG;wBACb,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,IAAI,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;qBAC5D,CAAC,CAAA;oBACF,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;gBAC7B,CAAC;gBACD,MAAM,GAAG,GAAwC;oBAC/C,KAAK,EAAE,KAAK;iBACb,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,uBAAuB,EAAE;oBAC3C,OAAO,EAAE,CAAC,MAAM,CAAC;iBAClB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,gBAAgB,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YACvF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,CAAC,GAAsB,EAAE,EAAE;gBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,kBAAkB,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;gBACvG,GAAG,CAAC,UAAU,GAAG,IAAI,CAAA;gBACrB,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;gBACvD,GAAG,CAAC,YAAY,GAAG,MAAM,EAAE,CAAA;gBAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAc,CAAuB,CAAA;gBACjE,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAA;gBACnC,MAAM,MAAM,GAAkD;oBAC5D,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,GAAG,CAAC,IAAI;iBACf,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YAC/B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,2BAA2B,CAAC,KAAK,EAAE,MAAM,CAAC;oBAC5D,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,gBAAgB,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YACvF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,CAAC,GAAsB,EAAE,EAAE;gBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,kBAAkB,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;gBACvG,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;gBACxD,GAAG,CAAC,KAAK,GAAG,SAAS,CAAA;gBACrB,MAAM,MAAM,GAAkD;oBAC5D,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,GAAG,CAAC,IAAI;iBACf,CAAA;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YAC/B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,2BAA2B,CAAC,KAAK,EAAE,MAAM,CAAC;oBAC5D,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;QAED,sBAAsB,EAAE,KAAK,EAAE,IAAiB,EAAE,OAA0B,EAAiB,EAAE;YAC7F,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CACxC,GAAG,EACH,EAAE,cAAc,EAAE,kBAAkB,EAAE,EACtC,GAAG,EAAE;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,EAAuB,CAAA;gBACnE,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;gBACnD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC,EACD,IAAI,CACL,CAAA;YACD,MAAM,IAAI,CAAC,GAAG,CACZ;gBACE,KAAK,EAAE;oBACL,GAAG,EAAE,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC;oBAC1C,OAAO,EAAE,CAAC,KAAK,CAAC;iBACjB;gBACD,OAAO;aACR,EACD,OAAO,CACR,CAAA;QACH,CAAC;KACF,CAAA;CACF","sourcesContent":["import {\n type ResponseGenerator,\n setupWorker,\n type MockHandler,\n type SetupWorkerOptions,\n type InterceptOptions,\n type SerializedRequest,\n} from '@jarrodek/amw'\nimport type { OrganizationSchema } from '../models/store/Organization.js'\nimport type { GroupSchema } from '../models/store/Group.js'\nimport type { UserSchema } from '../models/store/User.js'\nimport type { InvitationSchema } from '../models/store/Invitation.js'\nimport { type FileSchema, type FileBreadcrumb } from '../models/store/File.js'\nimport type { ContextChangeRecord, ContextListResult, IBulkOperationResult } from '../events/BaseEvents.js'\nimport type { TrashEntry } from '../models/TrashEntry.js'\nimport { RouteBuilder } from './RouteBuilder.js'\nimport { ModelingMock } from '../mocking/ModelingMock.js'\nimport type {\n DataCatalogSchema,\n DataCatalogSchemaWithVersion,\n DataCatalogStatus,\n DataCatalogVersionInfo,\n} from '../models/DataCatalog.js'\nimport type { DataCatalogVersionSchema } from '../models/DataCatalogVersion.js'\nimport { DataDomain, type DataDomainSchema } from '../modeling/DataDomain.js'\nimport type { ForeignDomainDependency } from '../modeling/types.js'\nimport { nanoid } from '../nanoid.js'\nimport type { AiSessionSchema, AiSessionApp } from '../models/AiSession.js'\nimport type { AiMessageSchema } from '../models/AiMessage.js'\n\nexport interface MockResult {\n /**\n * Custom response generator for the mock intercept.\n */\n response?: ResponseGenerator\n /**\n * If true, the request body will be generated using the body generator.\n * It is useful when only setting up response headers or status code, but\n * the request body should still be generated, even when missing in the `response` option.\n */\n forceBody?: boolean\n}\n\nexport interface MockListResult extends MockResult {\n /**\n * Number of items to generate in the list response.\n */\n size?: number\n /**\n * If true, the response will include a cursor for pagination.\n * If false, the response will not include a cursor.\n * If not set, a random choice will be made.\n */\n cursor?: boolean\n}\n\n/**\n * SDK mocking utility for testing. Uses Service Workers to intercept HTTP requests\n * and provide mock responses for API calls.\n *\n * This class uses the `@jarrodek/amw` library to set up a Service Worker that intercepts\n * fetch requests matching the configured routes. Each method adds an intercept for a specific\n * API endpoint, returning either random generated data or custom responses.\n *\n * @example\n * ```typescript\n * import { SdkMock } from '@api-client/core/sdk/SdkMock.js';\n * import { StoreSdk } from '@api-client/core/sdk/StoreSdkWeb.js';\n *\n * const sdk = new StoreSdk('http://localhost:8080');\n * const mocker = new SdkMock({\n * swPath: '/mockServiceWorker.js', // Path to the Service Worker script\n * base: 'http://localhost:8080' // Base URL matching the SDK\n * });\n *\n * // Initialize the Service Worker\n * await mocker.setup();\n *\n * // Add intercept - returns random organizations\n * await mocker.organizations.list();\n *\n * // Custom response with specific data\n * await mocker.organizations.create({\n * response: {\n * status: 201,\n * headers: { 'Content-Type': 'application/json', 'X-Custom-Header': 'value' },\n * body: JSON.stringify({ key: 'custom-id', name: 'Custom Org' })\n * }\n * });\n *\n * // Control pagination in list responses\n * await mocker.groups.list({\n * size: 10, // Number of items to generate\n * cursor: true // Include pagination cursor\n * });\n *\n * // Error simulation\n * await mocker.users.me({\n * response: {\n * status: 404,\n * headers: { 'Content-Type': 'application/json' },\n * body: JSON.stringify({ error: 'Not found' })\n * }\n * });\n *\n * // Remove all intercepts (keep Service Worker active)\n * await mocker.reset();\n *\n * // Stop and remove the Service Worker\n * await mocker.teardown();\n * ```\n *\n * @TODO: Add a in-memory state store so that mocks can maintain state across requests.\n * This way, operations like create, update, delete can affect subsequent list/read calls\n * and we can mimic the API behavior more closely.\n */\nexport class SdkMock {\n handler?: MockHandler\n gen = new ModelingMock()\n\n constructor(public options?: SetupWorkerOptions) {}\n\n /**\n * Initializes the mock handler. It uses options provided in the constructor.\n * It has to be called before using any of the mock methods.\n */\n async setup(): Promise<void> {\n this.handler = await setupWorker(this.options)\n }\n\n /**\n * Removes the mock worker and all intercepts.\n */\n async teardown(): Promise<void> {\n await this.mock.stop()\n }\n\n /**\n * Removes all added intercepts.\n */\n async reset(): Promise<void> {\n await this.mock.reset()\n }\n\n get mock(): MockHandler {\n if (!this.handler) {\n throw new Error('Mock handler not initialized. Call setup() first.')\n }\n return this.handler\n }\n\n protected createCursorOption(init: MockListResult = {}): string | undefined {\n if (init.cursor === false) {\n return undefined\n }\n const hasCursor = init.cursor === true ? true : this.gen.faker.datatype.boolean()\n if (!hasCursor) {\n return undefined\n }\n return this.gen.faker.internet.jwt()\n }\n\n protected createDefaultResponse(\n status: number,\n headers?: Record<string, string>,\n body?: (req: SerializedRequest) => string,\n userConfig?: MockResult\n ): ResponseGenerator {\n let respond: ResponseGenerator\n if (userConfig?.response) {\n // user config takes precedence\n respond = userConfig.response\n } else {\n respond = {}\n }\n // Set defaults if not provided in user config\n if (!respond.status) {\n respond.status = status\n }\n // only set headers if the user didn't configure the response only.\n // The user may want to remove default headers.\n if (!userConfig || !userConfig.response) {\n respond.headers = headers\n }\n if (!respond.body && userConfig?.forceBody && body) {\n // when body is missing and forceBody is set, generate the body\n respond.body = (req: SerializedRequest) => body(req)\n } else if (body && (!userConfig || !userConfig.response)) {\n // we set the body by default when the user config is missing\n respond.body = (req: SerializedRequest) => body(req)\n }\n return respond\n }\n\n /**\n * Organization API mocks.\n */\n organizations = {\n /**\n * Adds an intercept to mock the `organizations.list()` method.\n * @param options Optional response configuration\n */\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.organization.organizations(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<OrganizationSchema>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () =>\n JSON.stringify({\n items: this.gen.organization.organizations(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n } as ContextListResult<OrganizationSchema>),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizations(),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Adds an intercept to mock the `organizations.create()` method.\n * @param options Optional response configuration\n */\n create: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.organization.organization()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.organization.organization()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizations(),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n invitations: {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.invitation.invitations(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<InvitationSchema>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<InvitationSchema> = {\n items: this.gen.invitation.invitations(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.invitations(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n create: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.invitations(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n findByToken: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n\n await mock.add(\n {\n match: {\n uri: RouteBuilder.findInvitation(),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n decline: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n\n await mock.add(\n {\n match: {\n uri: RouteBuilder.declineInvitation(':oid', ':id'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n\n await mock.add(\n {\n match: {\n uri: RouteBuilder.invitation(':oid', ':id'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n patch: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.invitation(':oid', ':id'),\n methods: ['PATCH'],\n },\n respond,\n },\n options\n )\n },\n resend: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.invitation.invitation()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.invitation.invitation()),\n init\n )\n\n await mock.add(\n {\n match: {\n uri: RouteBuilder.resendInvitation(':oid', ':id'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n },\n\n users: {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.users.users(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<UserSchema>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<UserSchema> = {\n items: this.gen.users.users(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizationUsers(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n read: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.users.user()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.users.user()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizationUser(':oid', ':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n readBatch: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const path = RouteBuilder.organizationUserBatch(':oid')\n const respond = init?.response ?? {\n status: 200,\n headers: { 'content-type': 'application/json' },\n body: JSON.stringify({\n items: this.gen.users.users(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n } as ContextListResult<UserSchema>),\n }\n await mock.add(\n {\n match: {\n uri: path,\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n activate: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.users.user()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.users.user()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizationUserActivate(':oid', ':id'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n deactivate: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.users.user()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.users.user()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizationUserDeactivate(':oid', ':id'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.organizationUser(':oid', ':id'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n },\n }\n\n /**\n * Group API mocks.\n */\n groups = {\n /**\n * Mocks the `groups.list()` method.\n * @param options Optional response customization.\n */\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.group.groups(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<GroupSchema>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<GroupSchema> = {\n items: this.gen.group.groups(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.groups(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `groups.create()` method.\n * @param options Optional response customization.\n */\n create: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 201,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.group.group()),\n // }\n const respond = this.createDefaultResponse(\n 201,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.group.group()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.groups(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `groups.update()` method.\n * @param options Optional response customization.\n */\n update: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.group.group()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.group.group()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.group(':oid', ':key'),\n methods: ['PATCH'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `groups.delete()` method.\n * @param options Optional response customization.\n */\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.group(':oid', ':key'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `groups.addUsers()` method.\n */\n addUsers: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.group.group()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.group.group()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.groupUsers(':oid', ':key'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `groups.removeUsers()` method.\n */\n removeUsers: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.group.group()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.group.group()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.groupUsers(':oid', ':key'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n }\n\n ai = {\n sessions: {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<AiSessionSchema> = {\n items: this.gen.ai.sessions('general', init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiSessions(':oid', ':app' as AiSessionApp),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n create: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 201,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.ai.session()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiSessions(':oid', ':app' as AiSessionApp),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n read: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.ai.session()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiSession(':oid', ':app' as AiSessionApp, ':sid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n update: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.ai.session()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiSession(':oid', ':app' as AiSessionApp, ':sid'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiSession(':oid', ':app' as AiSessionApp, ':sid'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n },\n\n messages: {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<AiMessageSchema> = {\n items: this.gen.ai.messages(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiMessages(':oid', ':sid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n update: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.ai.message()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiMessage(':oid', ':sid', ':mid'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiMessage(':oid', ':sid', ':mid'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n },\n\n modifyDomain: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // Return a basic JSON response simulating the stream end state for simplicity if not overriding.\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'text/event-stream' },\n () => 'event: done\\ndata: {}\\n\\n',\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.aiModifyDomain(':oid', ':fid') as string,\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n }\n\n /**\n * User API mocks.\n */\n users = {\n /**\n * Mocks the `user.me()` method.\n * @param options Optional response customization.\n */\n me: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.users.user()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.users.user()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.usersMe(),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n }\n\n /**\n * Files API mocks.\n */\n files = {\n /**\n * Mocks the `file.list()` method.\n */\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.files.files(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<FileSchema>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<FileSchema> = {\n items: this.gen.files.files(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.files(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.createMeta()` method.\n */\n createMeta: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 201,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.files.file()),\n // }\n const respond = this.createDefaultResponse(\n 201,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.files.file()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.files(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.createMedia()` method.\n */\n createMedia: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // }\n const respond = this.createDefaultResponse(200, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.fileMedia(':oid', ':id'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.create()` method.\n */\n create: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n await this.files.createMeta(init, options)\n // When SDK's file.create() is called, it responds with\n // what the result of file.createMeta() would be.\n // Because of that, we don't need to configure the media request.\n await this.files.createMedia(undefined, options)\n },\n\n /**\n * Mocks the `file.createFolder()` method.\n */\n createFolder: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 201,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.files.folder()),\n // }\n const respond = this.createDefaultResponse(\n 201,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.files.folder()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.files(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.read()` method.\n */\n read: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.files.file()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.files.file()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.file(':oid', ':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.readMedia()` method.\n */\n readMedia: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: {\n // 'content-type': 'application/json',\n // 'x-version': `${this.gen.faker.number.int({ min: 1, max: 100 })}`,\n // },\n // body: JSON.stringify({ data: this.gen.faker.lorem.sentences() }),\n // }\n const respond = this.createDefaultResponse(\n 200,\n {\n 'content-type': 'application/json',\n 'x-version': `${this.gen.faker.number.int({ min: 1, max: 100 })}`,\n },\n () => JSON.stringify({ data: this.gen.faker.lorem.sentences() }),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.fileMedia(':oid', ':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.readBulk()` method.\n */\n readBulk: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.files.files(init?.size ?? 5),\n // } as IBulkOperationResult<FileSchema>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: IBulkOperationResult<FileSchema> = {\n items: this.gen.files.files(init?.size ?? 5),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.filesBatch(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.patch()` method.\n */\n patch: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.files.file()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.files.file()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.file(':oid', ':id'),\n methods: ['PATCH'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.patchMedia()` method.\n */\n patchMedia: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.patch.mediaPatchRevision()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.patch.mediaPatchRevision()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.fileMedia(':oid', ':id'),\n methods: ['PATCH'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.delete()` method.\n */\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.file(':oid', ':id'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.deleteBulk()` method.\n */\n deleteBulk: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.files(':oid'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.patchUsers()` method.\n */\n patchUsers: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify(this.gen.files.file()),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => JSON.stringify(this.gen.files.file()),\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.filesAccess(':oid', ':id'),\n methods: ['PATCH'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.addUser()` method.\n */\n addUser: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n await this.files.patchUsers(init, options)\n },\n\n /**\n * Mocks the `file.removeUser()` method.\n */\n removeUser: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n await this.files.patchUsers(init, options)\n },\n\n /**\n * Mocks the `file.listUsers()` method.\n */\n listUsers: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.users.users(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<UserSchema>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<UserSchema> = {\n items: this.gen.users.users(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.fileUsers(':oid', ':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n /**\n * Mocks the `file.breadcrumbs()` method.\n */\n breadcrumbs: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.files.fileBreadcrumbs(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<FileBreadcrumb>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<FileBreadcrumb> = {\n items: this.gen.files.fileBreadcrumbs(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.fileBreadcrumbs(':oid', ':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n }\n\n /**\n * @deprecated Use `files` instead.\n */\n file = this.files\n\n /**\n * Shared API mocks.\n */\n shared = {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.files.files(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<FileSchema>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<FileSchema> = {\n items: this.gen.files.files(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.shared(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n }\n\n /**\n * Trash API mocks.\n */\n trash = {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 200,\n // headers: { 'content-type': 'application/json' },\n // body: JSON.stringify({\n // items: this.gen.trash.trashEntries(init?.size ?? 5),\n // cursor: this.createCursorOption(init),\n // } as ContextListResult<TrashEntry>),\n // }\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<TrashEntry> = {\n items: this.gen.trash.trashEntries(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.trash(':oid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n delete: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.trashBatchDelete(':oid'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n restore: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.trashBatchRestore(':oid'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n empty: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n // const respond = init?.response ?? {\n // status: 204,\n // }\n const respond = this.createDefaultResponse(204, undefined, undefined, init)\n await mock.add(\n {\n match: {\n uri: RouteBuilder.trashEmpty(':oid'),\n methods: ['DELETE'],\n },\n respond,\n },\n options\n )\n },\n }\n\n /**\n * Trash Data Catalog mocks.\n */\n dataCatalog = {\n list: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<DataCatalogSchemaWithVersion> = {\n items: this.gen.dataCatalog.dataCatalogsWithVersion(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalog(),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n listVersions: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj: ContextListResult<DataCatalogVersionInfo> = {\n items: this.gen.dataCatalog.versionInfos(init?.size ?? 5),\n cursor: this.createCursorOption(init),\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogEntryVersions(':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n publish: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj = this.gen.dataCatalog.dataCatalog()\n const result: ContextChangeRecord<DataCatalogSchema> = {\n key: obj.key,\n item: obj,\n kind: obj.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalog(),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n read: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalog({ key: req.params.id })\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogEntry(':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n deprecate: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalog({ key: req.params.id })\n const result: ContextChangeRecord<DataCatalogSchema> = {\n key: obj.key,\n item: obj,\n kind: obj.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogDeprecate(':id'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n\n unpublish: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalog({ key: req.params.id })\n const result: ContextChangeRecord<DataCatalogSchema> = {\n key: obj.key,\n item: obj,\n kind: obj.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogUnpublish(':id'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n\n publishVersion: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const raw = req.body as string\n const body = JSON.parse(raw) as DataCatalogVersionSchema\n\n const result: ContextChangeRecord<DataCatalogVersionSchema> = {\n key: body.key,\n item: body,\n kind: body.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogEntryVersions(':id'),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n readVersion: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalogVersion({ key: req.params.vid, catalogKey: req.params.id })\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogVersion(':id', ':vid'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n\n listDependencies: async (init?: MockListResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const requirements = JSON.parse(req.body as string) as { items: ForeignDomainDependency[] }\n const items: DataDomainSchema[] = []\n for (const item of requirements.items) {\n const domain = new DataDomain({\n key: item.key,\n info: { name: `Domain ${item.key}`, version: item.version },\n })\n items.push(domain.toJSON())\n }\n const obj: ContextListResult<DataDomainSchema> = {\n items: items,\n }\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogDependencies(),\n methods: ['POST'],\n },\n respond,\n },\n options\n )\n },\n\n deprecateVersion: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalogVersion({ key: req.params.vid, catalogKey: req.params.id })\n obj.deprecated = true\n obj.deprecatedAt = this.gen.faker.date.past().getTime()\n obj.deprecatedBy = nanoid()\n const info = JSON.parse(req.body as string) as { reason: string }\n obj.deprecationReason = info.reason\n const result: ContextChangeRecord<DataCatalogVersionSchema> = {\n key: obj.key,\n item: obj,\n kind: obj.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogVersionDeprecate(':id', ':vid'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n\n unpublishVersion: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n (req: SerializedRequest) => {\n const obj = this.gen.dataCatalog.dataCatalogVersion({ key: req.params.vid, catalogKey: req.params.id })\n obj.unpublishedAt = this.gen.faker.date.past().getTime()\n obj.scope = 'private'\n const result: ContextChangeRecord<DataCatalogVersionSchema> = {\n key: obj.key,\n item: obj,\n kind: obj.kind,\n }\n return JSON.stringify(result)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogVersionUnpublish(':id', ':vid'),\n methods: ['PUT'],\n },\n respond,\n },\n options\n )\n },\n\n checkPublicationStatus: async (init?: MockResult, options?: InterceptOptions): Promise<void> => {\n const { mock } = this\n const respond = this.createDefaultResponse(\n 200,\n { 'content-type': 'application/json' },\n () => {\n const obj = this.gen.dataCatalog.dataCatalog() as DataCatalogStatus\n obj.versions = this.gen.dataCatalog.versionInfos(1)\n return JSON.stringify(obj)\n },\n init\n )\n await mock.add(\n {\n match: {\n uri: RouteBuilder.dataCatalogStatus(':id'),\n methods: ['GET'],\n },\n respond,\n },\n options\n )\n },\n }\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SdkBase, SdkOptions } from './SdkBase.js';
|
|
2
|
-
import {
|
|
2
|
+
import { FileSchema } from '../models/store/File.js';
|
|
3
3
|
import { ContextListOptions, ContextListResult } from '../events/BaseEvents.js';
|
|
4
4
|
export declare class SharedSdk extends SdkBase {
|
|
5
5
|
/**
|
|
@@ -9,6 +9,6 @@ export declare class SharedSdk extends SdkBase {
|
|
|
9
9
|
* @param options Optional query options.
|
|
10
10
|
* @param request Optional request options.
|
|
11
11
|
*/
|
|
12
|
-
list(organization: string, options?: ContextListOptions, request?: SdkOptions): Promise<ContextListResult<
|
|
12
|
+
list(organization: string, options?: ContextListOptions, request?: SdkOptions): Promise<ContextListResult<FileSchema>>;
|
|
13
13
|
}
|
|
14
14
|
//# sourceMappingURL=SharedSdk.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SharedSdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/SharedSdk.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAKP,UAAU,EACX,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"SharedSdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/SharedSdk.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAKP,UAAU,EACX,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAG/E,qBAAa,SAAU,SAAQ,OAAO;IACpC;;;;;;OAMG;IACG,IAAI,CACR,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,kBAAkB,EAC5B,OAAO,GAAE,UAAe,GACvB,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;CAyB1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SharedSdk.js","sourceRoot":"","sources":["../../../src/sdk/SharedSdk.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACd,kBAAkB,GAEnB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAGhD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEtD,MAAM,OAAO,SAAU,SAAQ,OAAO;IACpC;;;;;;OAMG;IACH,KAAK,CAAC,IAAI,CACR,YAAoB,EACpB,OAA4B,EAC5B,UAAsB,EAAE;QAExB,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAA;QAC9D,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QACjE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;QACrC,MAAM,QAAQ,GAAG,+BAA+B,CAAA;QAChD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAA;YAC/B,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAC3F,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,SAAS,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;QAClH,CAAC;QACD,IAAI,
|
|
1
|
+
{"version":3,"file":"SharedSdk.js","sourceRoot":"","sources":["../../../src/sdk/SharedSdk.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACd,kBAAkB,GAEnB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAGhD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEtD,MAAM,OAAO,SAAU,SAAQ,OAAO;IACpC;;;;;;OAMG;IACH,KAAK,CAAC,IAAI,CACR,YAAoB,EACpB,OAA4B,EAC5B,UAAsB,EAAE;QAExB,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAA;QAC9D,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QACjE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;QACrC,MAAM,QAAQ,GAAG,+BAA+B,CAAA;QAChD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAA;YAC/B,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAC3F,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,SAAS,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;QAClH,CAAC;QACD,IAAI,IAAmC,CAAA;QACvC,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,SAAS,CAAC,GAAG,QAAQ,GAAG,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;QACxG,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,SAAS,CAAC,GAAG,QAAQ,GAAG,kBAAkB,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;QAChH,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;CACF","sourcesContent":["import {\n SdkBase,\n E_RESPONSE_STATUS,\n E_RESPONSE_NO_VALUE,\n E_INVALID_JSON,\n E_RESPONSE_UNKNOWN,\n SdkOptions,\n} from './SdkBase.js'\nimport { RouteBuilder } from './RouteBuilder.js'\nimport { FileSchema } from '../models/store/File.js'\nimport { ContextListOptions, ContextListResult } from '../events/BaseEvents.js'\nimport { Exception } from '../exceptions/exception.js'\n\nexport class SharedSdk extends SdkBase {\n /**\n * Lists shared with the user files.\n *\n * @param kinds the list of kinds to list.\n * @param options Optional query options.\n * @param request Optional request options.\n */\n async list(\n organization: string,\n options?: ContextListOptions,\n request: SdkOptions = {}\n ): Promise<ContextListResult<FileSchema>> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.shared(organization))\n this.sdk.appendListOptions(url, options)\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to list shared files. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: ContextListResult<FileSchema>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n}\n"]}
|
|
@@ -3,7 +3,7 @@ import { Http } from './Http.js';
|
|
|
3
3
|
import { WsClient } from './WsClient.js';
|
|
4
4
|
export type { IStoreResponse, IStoreRequestOptions } from './SdkBase.js';
|
|
5
5
|
export type { IMetaCreateOptions, IMediaCreateOptions, IFileCreateOptions, ListFileKind } from './FilesSdk.js';
|
|
6
|
-
export type { IJwtInfo, IJwtUser,
|
|
6
|
+
export type { IJwtInfo, IJwtUser, RegistrationInfoSchema, OrganizationRegistrationInfoSchema, OrganizationAddUserInfoSchema, } from './UsersSdk.js';
|
|
7
7
|
export type { DataCatalogListOptions } from './DataCatalogSdk.js';
|
|
8
8
|
/**
|
|
9
9
|
* NodeJS API for API Client's net-store module.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreSdkNode.d.ts","sourceRoot":"","sources":["../../../src/sdk/StoreSdkNode.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACxE,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC9G,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,
|
|
1
|
+
{"version":3,"file":"StoreSdkNode.d.ts","sourceRoot":"","sources":["../../../src/sdk/StoreSdkNode.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACxE,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC9G,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,sBAAsB,EACtB,kCAAkC,EAClC,6BAA6B,GAC9B,MAAM,eAAe,CAAA;AACtB,YAAY,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAEjE;;GAEG;AACH,qBAAa,QAAS,SAAQ,GAAG;IAC/B,IAAI,EAAE,IAAI,CAAqB;IAC/B,EAAE,EAAE,QAAQ,CAAyB;CACtC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreSdkNode.js","sourceRoot":"","sources":["../../../src/sdk/StoreSdkNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAe9B;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,GAAG;IAC/B,IAAI,GAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC/B,EAAE,GAAa,IAAI,YAAY,CAAC,IAAI,CAAC,CAAA;CACtC","sourcesContent":["import { HttpNode } from './HttpNode.js'\nimport { WsClientNode } from './WsClientNode.js'\nimport { Sdk } from './Sdk.js'\nimport { Http } from './Http.js'\nimport { WsClient } from './WsClient.js'\n\nexport type { IStoreResponse, IStoreRequestOptions } from './SdkBase.js'\nexport type { IMetaCreateOptions, IMediaCreateOptions, IFileCreateOptions, ListFileKind } from './FilesSdk.js'\nexport type {\n IJwtInfo,\n IJwtUser,\n
|
|
1
|
+
{"version":3,"file":"StoreSdkNode.js","sourceRoot":"","sources":["../../../src/sdk/StoreSdkNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAe9B;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,GAAG;IAC/B,IAAI,GAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC/B,EAAE,GAAa,IAAI,YAAY,CAAC,IAAI,CAAC,CAAA;CACtC","sourcesContent":["import { HttpNode } from './HttpNode.js'\nimport { WsClientNode } from './WsClientNode.js'\nimport { Sdk } from './Sdk.js'\nimport { Http } from './Http.js'\nimport { WsClient } from './WsClient.js'\n\nexport type { IStoreResponse, IStoreRequestOptions } from './SdkBase.js'\nexport type { IMetaCreateOptions, IMediaCreateOptions, IFileCreateOptions, ListFileKind } from './FilesSdk.js'\nexport type {\n IJwtInfo,\n IJwtUser,\n RegistrationInfoSchema,\n OrganizationRegistrationInfoSchema,\n OrganizationAddUserInfoSchema,\n} from './UsersSdk.js'\nexport type { DataCatalogListOptions } from './DataCatalogSdk.js'\n\n/**\n * NodeJS API for API Client's net-store module.\n */\nexport class StoreSdk extends Sdk {\n http: Http = new HttpNode(this)\n ws: WsClient = new WsClientNode(this)\n}\n"]}
|
|
@@ -3,7 +3,7 @@ import { Http } from './Http.js';
|
|
|
3
3
|
import { WsClient } from './WsClient.js';
|
|
4
4
|
export type { IStoreResponse, IStoreRequestOptions } from './SdkBase.js';
|
|
5
5
|
export type { IMetaCreateOptions, IMediaCreateOptions, IFileCreateOptions, ListFileKind } from './FilesSdk.js';
|
|
6
|
-
export type { IJwtInfo, IJwtUser,
|
|
6
|
+
export type { IJwtInfo, IJwtUser, RegistrationInfoSchema, OrganizationRegistrationInfoSchema, OrganizationAddUserInfoSchema, } from './UsersSdk.js';
|
|
7
7
|
export type { DataCatalogListOptions } from './DataCatalogSdk.js';
|
|
8
8
|
/**
|
|
9
9
|
* NodeJS API for API Client's net-store module.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreSdkWeb.d.ts","sourceRoot":"","sources":["../../../src/sdk/StoreSdkWeb.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACxE,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC9G,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,
|
|
1
|
+
{"version":3,"file":"StoreSdkWeb.d.ts","sourceRoot":"","sources":["../../../src/sdk/StoreSdkWeb.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACxE,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC9G,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,sBAAsB,EACtB,kCAAkC,EAClC,6BAA6B,GAC9B,MAAM,eAAe,CAAA;AACtB,YAAY,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAEjE;;GAEG;AACH,qBAAa,QAAS,SAAQ,GAAG;IAC/B,IAAI,EAAE,IAAI,CAAoB;IAC9B,EAAE,EAAE,QAAQ,CAAwB;CACrC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreSdkWeb.js","sourceRoot":"","sources":["../../../src/sdk/StoreSdkWeb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAe9B;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,GAAG;IAC/B,IAAI,GAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9B,EAAE,GAAa,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;CACrC","sourcesContent":["import { HttpWeb } from './HttpWeb.js'\nimport { WsClientWeb } from './WsClientWeb.js'\nimport { Sdk } from './Sdk.js'\nimport { Http } from './Http.js'\nimport { WsClient } from './WsClient.js'\n\nexport type { IStoreResponse, IStoreRequestOptions } from './SdkBase.js'\nexport type { IMetaCreateOptions, IMediaCreateOptions, IFileCreateOptions, ListFileKind } from './FilesSdk.js'\nexport type {\n IJwtInfo,\n IJwtUser,\n
|
|
1
|
+
{"version":3,"file":"StoreSdkWeb.js","sourceRoot":"","sources":["../../../src/sdk/StoreSdkWeb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAe9B;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,GAAG;IAC/B,IAAI,GAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9B,EAAE,GAAa,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;CACrC","sourcesContent":["import { HttpWeb } from './HttpWeb.js'\nimport { WsClientWeb } from './WsClientWeb.js'\nimport { Sdk } from './Sdk.js'\nimport { Http } from './Http.js'\nimport { WsClient } from './WsClient.js'\n\nexport type { IStoreResponse, IStoreRequestOptions } from './SdkBase.js'\nexport type { IMetaCreateOptions, IMediaCreateOptions, IFileCreateOptions, ListFileKind } from './FilesSdk.js'\nexport type {\n IJwtInfo,\n IJwtUser,\n RegistrationInfoSchema,\n OrganizationRegistrationInfoSchema,\n OrganizationAddUserInfoSchema,\n} from './UsersSdk.js'\nexport type { DataCatalogListOptions } from './DataCatalogSdk.js'\n\n/**\n * NodeJS API for API Client's net-store module.\n */\nexport class StoreSdk extends Sdk {\n http: Http = new HttpWeb(this)\n ws: WsClient = new WsClientWeb(this)\n}\n"]}
|