@lokalise/tm-sdk 6.0.0 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,3 @@
1
- export * from './sdk/TranslationMemoryClient.js';
2
- export * from './sdk/errors/TranslationMemoryClientError.js';
3
- export * from './sdk/types/requests.js';
4
- export * from './sdk/types/models.js';
5
- export * from './sdk/types/apiResponses.js';
1
+ export * from './sdk/errors/TranslationMemoryClientError.ts';
2
+ export * from './sdk/TranslationMemoryClient.ts';
3
+ export * from './sdk/types/requests.ts';
package/dist/index.js CHANGED
@@ -1,6 +1,4 @@
1
- export * from './sdk/TranslationMemoryClient.js';
2
- export * from './sdk/errors/TranslationMemoryClientError.js';
3
- export * from './sdk/types/requests.js';
4
- export * from './sdk/types/models.js';
5
- export * from './sdk/types/apiResponses.js';
1
+ export * from "./sdk/errors/TranslationMemoryClientError.js";
2
+ export * from "./sdk/TranslationMemoryClient.js";
3
+ export * from "./sdk/types/requests.js";
6
4
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAA;AAChD,cAAc,8CAA8C,CAAA;AAC5D,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA;AACrC,cAAc,6BAA6B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8CAA8C,CAAA;AAC5D,cAAc,kCAAkC,CAAA;AAChD,cAAc,yBAAyB,CAAA"}
@@ -1,9 +1,9 @@
1
1
  import type { MandatoryPaginationParams } from '@lokalise/api-common';
2
2
  import type { RequestContext } from '@lokalise/fastify-extras';
3
3
  import { type ErrorReporter } from '@lokalise/node-core';
4
+ import { type BulkTranslationMemoryMatches, type TranslationMemoryRecord, type TranslationMemoryRecordsResponse, type UpsertTranslationMemoryRecordDto } from '@lokalise/tm-api-schemas';
4
5
  import type { RetryConfig } from 'undici-retry';
5
- import type { BulkTranslationMemoryMatches, TranslationMemoryRecord, TranslationMemoryRecordsResponse, UpsertTranslationMemoryRecordDto } from './types/models.js';
6
- import type { BulkFindMatchesRequest, FindMatchesRequest } from './types/requests.js';
6
+ import type { BulkFindMatchesRequest, FindMatchesRequest } from './types/requests.ts';
7
7
  export type TranslationMemoryClientConfig = {
8
8
  baseUrl: string;
9
9
  jwtToken: string;
@@ -1,9 +1,8 @@
1
- import { buildClient, isResponseStatusError, sendGet, sendPost, sendPut, } from '@lokalise/backend-http-client';
1
+ import { buildClient, isResponseStatusError, sendByGetRoute, sendByPayloadRoute, } from '@lokalise/backend-http-client';
2
2
  import { InternalError } from '@lokalise/node-core';
3
+ import { getTranslationMemoryMatchesContract, getTranslationMemoryRecordsContract, postBulkFindMatchesContract, putTranslationMemoryRecordsContract, } from '@lokalise/tm-api-schemas';
3
4
  import { chunk, transformToKebabCase } from '@lokalise/universal-ts-utils/node';
4
- import { z } from 'zod/v4';
5
- import { TranslationMemoryClientError } from './errors/TranslationMemoryClientError.js';
6
- import { GET_FIND_MATCHES_RESPONSE_SCHEMA, GET_TRANSLATION_MEMORY_RECORDS_RESPONSE_SCHEMA, POST_BULK_FIND_MATCHES_RESPONSE_SCHEMA, } from './types/apiResponses.js';
5
+ import { TranslationMemoryClientError } from "./errors/TranslationMemoryClientError.js";
7
6
  export class TranslationMemoryClient {
8
7
  maxFindMatchesRequestSize = 20;
9
8
  isEnabled;
@@ -38,14 +37,16 @@ export class TranslationMemoryClient {
38
37
  if (!this.isEnabled)
39
38
  return [];
40
39
  try {
41
- const response = await sendGet(this.httpClient, `/v1/groups/${groupId}/actions/find-matches`, {
42
- reqContext: context.reqContext,
40
+ const response = await sendByGetRoute(this.httpClient, getTranslationMemoryMatchesContract, {
41
+ pathParams: { groupId },
43
42
  headers: this.headers,
44
- responseSchema: GET_FIND_MATCHES_RESPONSE_SCHEMA,
45
- validateResponse: true,
46
- retryConfig: this.retryConfig,
43
+ queryParams: transformToKebabCase(request),
44
+ }, {
45
+ reqContext: context.reqContext,
47
46
  requestLabel: '(tm-sdk) Find matches',
48
- query: transformToKebabCase(request),
47
+ retryConfig: this.retryConfig,
48
+ validateResponse: true,
49
+ throwOnError: true,
49
50
  });
50
51
  return response.result.body.data;
51
52
  }
@@ -77,14 +78,16 @@ export class TranslationMemoryClient {
77
78
  };
78
79
  }
79
80
  try {
80
- const response = await sendGet(this.httpClient, `/v1/groups/${groupId}/records`, {
81
- reqContext: context.reqContext,
81
+ const response = await sendByGetRoute(this.httpClient, getTranslationMemoryRecordsContract, {
82
+ pathParams: { groupId },
83
+ queryParams: { ...pagination },
82
84
  headers: this.headers,
83
- validateResponse: true,
84
- responseSchema: GET_TRANSLATION_MEMORY_RECORDS_RESPONSE_SCHEMA,
85
- retryConfig: this.retryConfig,
85
+ }, {
86
+ reqContext: context.reqContext,
86
87
  requestLabel: '(tm-sdk) Get records',
87
- query: pagination,
88
+ retryConfig: this.retryConfig,
89
+ validateResponse: true,
90
+ throwOnError: true,
88
91
  });
89
92
  return { records: response.result.body.data, meta: response.result.body.meta };
90
93
  }
@@ -100,13 +103,16 @@ export class TranslationMemoryClient {
100
103
  if (recordsToInsert.length === 0)
101
104
  return;
102
105
  try {
103
- await sendPut(this.httpClient, `/v1/groups/${groupId}/records`, recordsToInsert, {
104
- reqContext: context.reqContext,
106
+ await sendByPayloadRoute(this.httpClient, putTranslationMemoryRecordsContract, {
107
+ pathParams: { groupId },
108
+ body: recordsToInsert,
105
109
  headers: this.headers,
106
- responseSchema: z.any(),
107
- validateResponse: false,
108
- retryConfig: this.retryConfig,
110
+ }, {
111
+ reqContext: context.reqContext,
109
112
  requestLabel: '(tm-sdk) Create or update records',
113
+ retryConfig: this.retryConfig,
114
+ validateResponse: true,
115
+ throwOnError: true,
110
116
  });
111
117
  }
112
118
  catch (e) {
@@ -133,13 +139,16 @@ export class TranslationMemoryClient {
133
139
  request.filters = nonEmptyFilters;
134
140
  }
135
141
  try {
136
- const response = await sendPost(this.httpClient, `/v1/groups/${groupId}/actions/bulk-find-matches`, request, {
137
- reqContext: context.reqContext,
142
+ const response = await sendByPayloadRoute(this.httpClient, postBulkFindMatchesContract, {
143
+ pathParams: { groupId },
144
+ body: request,
138
145
  headers: this.headers,
139
- responseSchema: POST_BULK_FIND_MATCHES_RESPONSE_SCHEMA,
140
- validateResponse: true,
141
- retryConfig: this.retryConfig,
146
+ }, {
147
+ reqContext: context.reqContext,
142
148
  requestLabel: '(tm-sdk) Bulk find matches',
149
+ retryConfig: this.retryConfig,
150
+ validateResponse: true,
151
+ throwOnError: true,
143
152
  });
144
153
  result.push(...response.result.body.data);
145
154
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"TranslationMemoryClient.js","sourceRoot":"","sources":["../../src/sdk/TranslationMemoryClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TranslationMemoryClient.js","sourceRoot":"","sources":["../../src/sdk/TranslationMemoryClient.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,13 +1,15 @@
1
1
  {
2
2
  "name": "@lokalise/tm-sdk",
3
- "version": "6.0.0",
3
+ "version": "8.0.0",
4
4
  "type": "module",
5
5
  "author": {
6
6
  "name": "Lokalise",
7
7
  "url": "https://lokalise.com/"
8
8
  },
9
9
  "description": "REST API client for the Lokalise Translation Memory service",
10
- "files": ["dist/**"],
10
+ "files": [
11
+ "dist/**"
12
+ ],
11
13
  "license": "Apache-2.0",
12
14
  "repository": {
13
15
  "type": "git",
@@ -37,27 +39,27 @@
37
39
  "@lokalise/api-common": "^6.0.0",
38
40
  "@lokalise/backend-http-client": "^7.0.0",
39
41
  "@lokalise/id-utils": "^3.0.1",
40
- "@lokalise/node-core": "^14.1.0",
41
- "@lokalise/supported-languages": "^3.1.0",
42
- "@lokalise/universal-ts-utils": "^4.5.0",
43
- "undici": "^7.10.0",
44
- "undici-retry": "^6.0.0"
42
+ "@lokalise/node-core": "^14.4.1",
43
+ "@lokalise/tm-api-schemas": "*",
44
+ "@lokalise/universal-ts-utils": "^4.5.1",
45
+ "undici": "^7.15.0",
46
+ "undici-retry": "^6.0.0",
47
+ "zod": "^3.25.76"
45
48
  },
46
49
  "peerDependencies": {
47
50
  "zod": ">=3.25.76 <5.0.0"
48
51
  },
49
52
  "devDependencies": {
50
- "@biomejs/biome": "^1.9.4",
51
- "@lokalise/biome-config": "^2.0.0",
53
+ "@biomejs/biome": "^2.2.0",
54
+ "@lokalise/biome-config": "^3.1.0",
52
55
  "@lokalise/fastify-extras": "^29.0.0",
53
56
  "@lokalise/tsconfig": "^2.0.0",
54
- "@types/node": "24.0.3",
57
+ "@types/node": "24.3.0",
55
58
  "@vitest/coverage-v8": "^3.2.4",
56
59
  "mockttp": "^3.17.1",
57
60
  "rimraf": "^6.0.1",
58
61
  "shx": "^0.4.0",
59
- "typescript": "5.8.3",
60
- "vitest": "^3.0.2",
61
- "zod": "^3.25.76"
62
+ "typescript": "5.9.2",
63
+ "vitest": "^3.0.2"
62
64
  }
63
65
  }
@@ -1,57 +0,0 @@
1
- import { z } from 'zod/v4';
2
- export declare const GET_FIND_MATCHES_RESPONSE_SCHEMA: z.ZodObject<{
3
- data: z.ZodArray<z.ZodObject<{
4
- id: z.ZodString;
5
- groupId: z.ZodString;
6
- ownerId: z.ZodGUID;
7
- sourceLocale: z.ZodString;
8
- targetLocale: z.ZodString;
9
- sourceText: z.ZodString;
10
- targetText: z.ZodString;
11
- sourcePrevContent: z.ZodOptional<z.ZodString>;
12
- sourceNextContent: z.ZodOptional<z.ZodString>;
13
- createdAt: z.ZodISODateTime;
14
- updatedAt: z.ZodISODateTime;
15
- }, z.core.$strip>>;
16
- }, z.core.$strip>;
17
- export type GetFindMatchesResponse = z.infer<typeof GET_FIND_MATCHES_RESPONSE_SCHEMA>;
18
- export declare const GET_TRANSLATION_MEMORY_RECORDS_RESPONSE_SCHEMA: z.ZodObject<{
19
- data: z.ZodArray<z.ZodObject<{
20
- id: z.ZodString;
21
- groupId: z.ZodString;
22
- ownerId: z.ZodGUID;
23
- sourceLocale: z.ZodString;
24
- targetLocale: z.ZodString;
25
- sourceText: z.ZodString;
26
- targetText: z.ZodString;
27
- sourcePrevContent: z.ZodOptional<z.ZodString>;
28
- sourceNextContent: z.ZodOptional<z.ZodString>;
29
- createdAt: z.ZodISODateTime;
30
- updatedAt: z.ZodISODateTime;
31
- }, z.core.$strip>>;
32
- meta: z.ZodObject<{
33
- count: z.ZodNumber;
34
- cursor: z.ZodOptional<z.ZodString>;
35
- hasMore: z.ZodOptional<z.ZodBoolean>;
36
- }, z.core.$strip>;
37
- }, z.core.$strip>;
38
- export type GetTranslationMemoryRecordsResponse = z.infer<typeof GET_TRANSLATION_MEMORY_RECORDS_RESPONSE_SCHEMA>;
39
- export declare const POST_BULK_FIND_MATCHES_RESPONSE_SCHEMA: z.ZodObject<{
40
- data: z.ZodArray<z.ZodObject<{
41
- filterId: z.ZodOptional<z.ZodString>;
42
- matches: z.ZodArray<z.ZodObject<{
43
- id: z.ZodString;
44
- groupId: z.ZodString;
45
- ownerId: z.ZodGUID;
46
- sourceLocale: z.ZodString;
47
- targetLocale: z.ZodString;
48
- sourceText: z.ZodString;
49
- targetText: z.ZodString;
50
- sourcePrevContent: z.ZodOptional<z.ZodString>;
51
- sourceNextContent: z.ZodOptional<z.ZodString>;
52
- createdAt: z.ZodISODateTime;
53
- updatedAt: z.ZodISODateTime;
54
- }, z.core.$strip>>;
55
- }, z.core.$strip>>;
56
- }, z.core.$strip>;
57
- export type PostBulkFindMatchesResponse = z.infer<typeof POST_BULK_FIND_MATCHES_RESPONSE_SCHEMA>;
@@ -1,14 +0,0 @@
1
- import { zMeta } from '@lokalise/api-common';
2
- import { z } from 'zod/v4';
3
- import { BULK_TRANSLATION_MEMORY_MATCHES_SCHEMA, TRANSLATION_MEMORY_RECORD_SCHEMA, } from './models.js';
4
- export const GET_FIND_MATCHES_RESPONSE_SCHEMA = z.object({
5
- data: z.array(TRANSLATION_MEMORY_RECORD_SCHEMA),
6
- });
7
- export const GET_TRANSLATION_MEMORY_RECORDS_RESPONSE_SCHEMA = z.object({
8
- data: z.array(TRANSLATION_MEMORY_RECORD_SCHEMA),
9
- meta: zMeta,
10
- });
11
- export const POST_BULK_FIND_MATCHES_RESPONSE_SCHEMA = z.object({
12
- data: z.array(BULK_TRANSLATION_MEMORY_MATCHES_SCHEMA),
13
- });
14
- //# sourceMappingURL=apiResponses.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"apiResponses.js","sourceRoot":"","sources":["../../../src/sdk/types/apiResponses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC5C,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,EACL,sCAAsC,EACtC,gCAAgC,GACjC,MAAM,aAAa,CAAA;AAEpB,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,gCAAgC,CAAC;CAChD,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,8CAA8C,GAAG,CAAC,CAAC,MAAM,CAAC;IACrE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,gCAAgC,CAAC;IAC/C,IAAI,EAAE,KAAK;CACZ,CAAC,CAAA;AAKF,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7D,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,sCAAsC,CAAC;CACtD,CAAC,CAAA"}
@@ -1,48 +0,0 @@
1
- import type { PaginationMeta } from '@lokalise/api-common';
2
- import { z } from 'zod/v4';
3
- export declare const TRANSLATION_MEMORY_RECORD_SCHEMA: z.ZodObject<{
4
- id: z.ZodString;
5
- groupId: z.ZodString;
6
- ownerId: z.ZodGUID;
7
- sourceLocale: z.ZodString;
8
- targetLocale: z.ZodString;
9
- sourceText: z.ZodString;
10
- targetText: z.ZodString;
11
- sourcePrevContent: z.ZodOptional<z.ZodString>;
12
- sourceNextContent: z.ZodOptional<z.ZodString>;
13
- createdAt: z.ZodISODateTime;
14
- updatedAt: z.ZodISODateTime;
15
- }, z.core.$strip>;
16
- export type TranslationMemoryRecord = z.infer<typeof TRANSLATION_MEMORY_RECORD_SCHEMA>;
17
- export declare const UPSERT_TRANSLATION_MEMORY_RECORD_DTO_SCHEMA: z.ZodObject<{
18
- id: z.ZodOptional<z.ZodString>;
19
- ownerId: z.ZodGUID;
20
- sourceLocale: z.ZodString;
21
- targetLocale: z.ZodString;
22
- sourceText: z.ZodString;
23
- targetText: z.ZodString;
24
- sourcePrevContent: z.ZodOptional<z.ZodString>;
25
- sourceNextContent: z.ZodOptional<z.ZodString>;
26
- }, z.core.$strip>;
27
- export type UpsertTranslationMemoryRecordDto = z.infer<typeof UPSERT_TRANSLATION_MEMORY_RECORD_DTO_SCHEMA>;
28
- export declare const BULK_TRANSLATION_MEMORY_MATCHES_SCHEMA: z.ZodObject<{
29
- filterId: z.ZodOptional<z.ZodString>;
30
- matches: z.ZodArray<z.ZodObject<{
31
- id: z.ZodString;
32
- groupId: z.ZodString;
33
- ownerId: z.ZodGUID;
34
- sourceLocale: z.ZodString;
35
- targetLocale: z.ZodString;
36
- sourceText: z.ZodString;
37
- targetText: z.ZodString;
38
- sourcePrevContent: z.ZodOptional<z.ZodString>;
39
- sourceNextContent: z.ZodOptional<z.ZodString>;
40
- createdAt: z.ZodISODateTime;
41
- updatedAt: z.ZodISODateTime;
42
- }, z.core.$strip>>;
43
- }, z.core.$strip>;
44
- export type BulkTranslationMemoryMatches = z.infer<typeof BULK_TRANSLATION_MEMORY_MATCHES_SCHEMA>;
45
- export type TranslationMemoryRecordsResponse = {
46
- records: TranslationMemoryRecord[];
47
- meta: PaginationMeta;
48
- };
@@ -1,39 +0,0 @@
1
- import { isSupportedLocale } from '@lokalise/supported-languages';
2
- import { z } from 'zod/v4';
3
- const LOCALE_SCHEMA = z.string().min(1).refine(isSupportedLocale, {
4
- message: 'Unsupported locale',
5
- });
6
- export const TRANSLATION_MEMORY_RECORD_SCHEMA = z.object({
7
- id: z.string().nonempty().describe('Unique record ID, generated by TM service'),
8
- groupId: z
9
- .string()
10
- .min(1)
11
- .describe('Identifier of an isolated group of records (e.g. can be used to separate searches per different projects). Can be any non-empty string'),
12
- ownerId: z
13
- .guid()
14
- .describe('Unique identifier of a record owner - only owner can UPDATE or DELETE such record'),
15
- sourceLocale: LOCALE_SCHEMA.describe('Source language tag (locale), e.g. "de" or "en-CA"'),
16
- targetLocale: LOCALE_SCHEMA.describe('Target language tag (locale), e.g. "de" or "en-CA"'),
17
- sourceText: z.string().min(1).describe('Translation text in source language'),
18
- targetText: z.string().min(1).describe('Translation text in target language'),
19
- sourcePrevContent: z
20
- .string()
21
- .min(1)
22
- .optional()
23
- .describe('Text that appears right before the seeked translation'),
24
- sourceNextContent: z
25
- .string()
26
- .min(1)
27
- .optional()
28
- .describe('Text that appears right after the seeked translation'),
29
- createdAt: z.iso.datetime().describe('Timestamp of record creation, generated by TM service'),
30
- updatedAt: z.iso.datetime().describe('Timestamp of record creation, generated by TM service'),
31
- });
32
- export const UPSERT_TRANSLATION_MEMORY_RECORD_DTO_SCHEMA = TRANSLATION_MEMORY_RECORD_SCHEMA.partial({ id: true }).omit({ groupId: true, createdAt: true, updatedAt: true });
33
- export const BULK_TRANSLATION_MEMORY_MATCHES_SCHEMA = z.object({
34
- filterId: z.string().min(1).optional().describe('Individual results ID'),
35
- matches: z
36
- .array(TRANSLATION_MEMORY_RECORD_SCHEMA)
37
- .describe('Array of translation memory records'),
38
- });
39
- //# sourceMappingURL=models.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/sdk/types/models.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,EAAE;IAChE,OAAO,EAAE,oBAAoB;CAC9B,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IAC/E,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CACP,wIAAwI,CACzI;IACH,OAAO,EAAE,CAAC;SACP,IAAI,EAAE;SACN,QAAQ,CAAC,mFAAmF,CAAC;IAChG,YAAY,EAAE,aAAa,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IAC1F,YAAY,EAAE,aAAa,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IAC1F,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IAC7E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IAC7E,iBAAiB,EAAE,CAAC;SACjB,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,uDAAuD,CAAC;IACpE,iBAAiB,EAAE,CAAC;SACjB,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,sDAAsD,CAAC;IACnE,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IAC7F,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;CAC9F,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,2CAA2C,GAAG,gCAAgC,CAAC,OAAO,CACjG,EAAE,EAAE,EAAE,IAAI,EAAE,CACb,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;AAK3D,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IACxE,OAAO,EAAE,CAAC;SACP,KAAK,CAAC,gCAAgC,CAAC;SACvC,QAAQ,CAAC,qCAAqC,CAAC;CACnD,CAAC,CAAA"}