@lokalise/polyglot-sdk 22.11.3 → 22.12.1

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.
@@ -20,13 +20,12 @@ const createBBWrapperMatchingRegexp = (tagWithAttributes) => {
20
20
  const tag = tagWithAttributes.trim().split(' ').shift();
21
21
  return new RegExp(String.raw `\[${tagWithAttributes}=(\d+)\]([\s\S]*?)\[/${tag}\]`, 'g');
22
22
  };
23
- const createCleanupRegexp = (tag) => {
24
- return new RegExp(String.raw `[<\[]/?${tag}[\s\S]*?[>\]]`, 'g');
25
- };
26
23
  const defaultWrapper = {
27
24
  wrap: (content, id) => `[nt=${id}]${content}[/nt]`,
28
25
  regexp: createBBWrapperMatchingRegexp('nt'),
29
- cleanupRegexp: createCleanupRegexp('nt'),
26
+ // Matches full [nt=0]...[/nt] wrappers and partial tag fragments like `t=0]`
27
+ // that can remain when the AI mangles the opening tag
28
+ cleanupRegexp: /[<[]\/?nt[\s\S]*?[>\]]|t=\d+]/g,
30
29
  };
31
30
  export const getWrapperByIntegration = (integration) => {
32
31
  if (integration && isEnumValue(MtIntegrationEngineEnum, integration)) {
@@ -1 +1 @@
1
- {"version":3,"file":"nonTranslatableContentWrappers.js","sourceRoot":"","sources":["../../../src/sdk/helpers/nonTranslatableContentWrappers.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,uBAAuB,GACxB,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAQ9C,MAAM,2BAA2B,GAAG,CAAC,iBAAyB,EAAU,EAAE;IACxE,MAAM,GAAG,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;IACvD,OAAO,IAAI,MAAM,CACf,MAAM,CAAC,GAAG,CAAA,IAAI,iBAAiB,uCAAuC,GAAG,GAAG,EAC5E,GAAG,CACJ,CAAA;AACH,CAAC,CAAA;AAED,MAAM,sBAAsB,GAAuD;IACjF,CAAC,uBAAuB,CAAC,KAAK,CAAC,EAAE;QAC/B,IAAI,EAAE,CAAC,OAAe,EAAE,EAAU,EAAU,EAAE,CAC5C,4BAA4B,EAAE,KAAK,OAAO,SAAS;QACrD,MAAM,EAAE,2BAA2B,CAAC,qBAAqB,CAAC;QAC1D,aAAa,EAAE,IAAI;KACpB;IACD,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,EAAE;QAC1C,IAAI,EAAE,CAAC,OAAe,EAAE,EAAU,EAAU,EAAE,CAC5C,4BAA4B,EAAE,KAAK,OAAO,SAAS;QACrD,MAAM,EAAE,2BAA2B,CAAC,qBAAqB,CAAC;QAC1D,aAAa,EAAE,IAAI;KACpB;CACF,CAAA;AAED,MAAM,6BAA6B,GAAG,CAAC,iBAAyB,EAAU,EAAE;IAC1E,MAAM,GAAG,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;IACvD,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,KAAK,iBAAiB,wBAAwB,GAAG,IAAI,EAAE,GAAG,CAAC,CAAA;AACzF,CAAC,CAAA;AAED,MAAM,mBAAmB,GAAG,CAAC,GAAW,EAAU,EAAE;IAClD,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,UAAU,GAAG,eAAe,EAAE,GAAG,CAAC,CAAA;AAChE,CAAC,CAAA;AAED,MAAM,cAAc,GAAsB;IACxC,IAAI,EAAE,CAAC,OAAe,EAAE,EAAU,EAAU,EAAE,CAAC,OAAO,EAAE,IAAI,OAAO,OAAO;IAC1E,MAAM,EAAE,6BAA6B,CAAC,IAAI,CAAC;IAC3C,aAAa,EAAE,mBAAmB,CAAC,IAAI,CAAC;CACzC,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,WAAmC,EAAqB,EAAE;IAChG,IAAI,WAAW,IAAI,WAAW,CAAC,uBAAuB,EAAE,WAAW,CAAC,EAAE,CAAC;QACrE,OAAO,sBAAsB,CAAC,WAAW,CAAC,CAAA;IAC5C,CAAC;IAED,OAAO,cAAc,CAAA;AACvB,CAAC,CAAA"}
1
+ {"version":3,"file":"nonTranslatableContentWrappers.js","sourceRoot":"","sources":["../../../src/sdk/helpers/nonTranslatableContentWrappers.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,uBAAuB,GACxB,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAQ9C,MAAM,2BAA2B,GAAG,CAAC,iBAAyB,EAAU,EAAE;IACxE,MAAM,GAAG,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;IACvD,OAAO,IAAI,MAAM,CACf,MAAM,CAAC,GAAG,CAAA,IAAI,iBAAiB,uCAAuC,GAAG,GAAG,EAC5E,GAAG,CACJ,CAAA;AACH,CAAC,CAAA;AAED,MAAM,sBAAsB,GAAuD;IACjF,CAAC,uBAAuB,CAAC,KAAK,CAAC,EAAE;QAC/B,IAAI,EAAE,CAAC,OAAe,EAAE,EAAU,EAAU,EAAE,CAC5C,4BAA4B,EAAE,KAAK,OAAO,SAAS;QACrD,MAAM,EAAE,2BAA2B,CAAC,qBAAqB,CAAC;QAC1D,aAAa,EAAE,IAAI;KACpB;IACD,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,EAAE;QAC1C,IAAI,EAAE,CAAC,OAAe,EAAE,EAAU,EAAU,EAAE,CAC5C,4BAA4B,EAAE,KAAK,OAAO,SAAS;QACrD,MAAM,EAAE,2BAA2B,CAAC,qBAAqB,CAAC;QAC1D,aAAa,EAAE,IAAI;KACpB;CACF,CAAA;AAED,MAAM,6BAA6B,GAAG,CAAC,iBAAyB,EAAU,EAAE;IAC1E,MAAM,GAAG,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;IACvD,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,KAAK,iBAAiB,wBAAwB,GAAG,IAAI,EAAE,GAAG,CAAC,CAAA;AACzF,CAAC,CAAA;AAED,MAAM,cAAc,GAAsB;IACxC,IAAI,EAAE,CAAC,OAAe,EAAE,EAAU,EAAU,EAAE,CAAC,OAAO,EAAE,IAAI,OAAO,OAAO;IAC1E,MAAM,EAAE,6BAA6B,CAAC,IAAI,CAAC;IAC3C,6EAA6E;IAC7E,sDAAsD;IACtD,aAAa,EAAE,gCAAgC;CAChD,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,WAAmC,EAAqB,EAAE;IAChG,IAAI,WAAW,IAAI,WAAW,CAAC,uBAAuB,EAAE,WAAW,CAAC,EAAE,CAAC;QACrE,OAAO,sBAAsB,CAAC,WAAW,CAAC,CAAA;IAC5C,CAAC;IAED,OAAO,cAAc,CAAA;AACvB,CAAC,CAAA"}
@@ -33,6 +33,7 @@ export declare const LQA_SEGMENT_SCHEMA: z.ZodPipe<z.ZodObject<{
33
33
  translatedValue: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
34
34
  }, z.core.$strip>>>;
35
35
  imageUrl: z.ZodOptional<z.ZodURL>;
36
+ glossaryReferences: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
36
37
  }, z.core.$strip>, z.ZodTransform<{
37
38
  sourceValue: string;
38
39
  translations: {
@@ -50,6 +51,7 @@ export declare const LQA_SEGMENT_SCHEMA: z.ZodPipe<z.ZodObject<{
50
51
  translatedValue: string;
51
52
  }[] | undefined;
52
53
  imageUrl?: string | undefined;
54
+ glossaryReferences?: number[] | undefined;
53
55
  }, {
54
56
  sourceValue: string;
55
57
  translations: {
@@ -67,6 +69,7 @@ export declare const LQA_SEGMENT_SCHEMA: z.ZodPipe<z.ZodObject<{
67
69
  translatedValue: string;
68
70
  }[] | undefined;
69
71
  imageUrl?: string | undefined;
72
+ glossaryReferences?: number[] | undefined;
70
73
  }>>;
71
74
  export declare const LQA_CONTENT_UNIT_SCHEMA: z.ZodPipe<z.ZodObject<{
72
75
  id: z.ZodString;
@@ -101,6 +104,7 @@ export declare const LQA_CONTENT_UNIT_SCHEMA: z.ZodPipe<z.ZodObject<{
101
104
  translatedValue: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
102
105
  }, z.core.$strip>>>;
103
106
  imageUrl: z.ZodOptional<z.ZodURL>;
107
+ glossaryReferences: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
104
108
  }, z.core.$strip>, z.ZodTransform<{
105
109
  sourceValue: string;
106
110
  translations: {
@@ -118,6 +122,7 @@ export declare const LQA_CONTENT_UNIT_SCHEMA: z.ZodPipe<z.ZodObject<{
118
122
  translatedValue: string;
119
123
  }[] | undefined;
120
124
  imageUrl?: string | undefined;
125
+ glossaryReferences?: number[] | undefined;
121
126
  }, {
122
127
  sourceValue: string;
123
128
  translations: {
@@ -135,6 +140,7 @@ export declare const LQA_CONTENT_UNIT_SCHEMA: z.ZodPipe<z.ZodObject<{
135
140
  translatedValue: string;
136
141
  }[] | undefined;
137
142
  imageUrl?: string | undefined;
143
+ glossaryReferences?: number[] | undefined;
138
144
  }>>>;
139
145
  characterLimit: z.ZodOptional<z.ZodNumber>;
140
146
  }, z.core.$strip>, z.ZodTransform<{
@@ -157,6 +163,7 @@ export declare const LQA_CONTENT_UNIT_SCHEMA: z.ZodPipe<z.ZodObject<{
157
163
  translatedValue: string;
158
164
  }[] | undefined;
159
165
  imageUrl?: string | undefined;
166
+ glossaryReferences?: number[] | undefined;
160
167
  }[];
161
168
  context?: {
162
169
  description?: string | undefined;
@@ -182,6 +189,7 @@ export declare const LQA_CONTENT_UNIT_SCHEMA: z.ZodPipe<z.ZodObject<{
182
189
  translatedValue: string;
183
190
  }[] | undefined;
184
191
  imageUrl?: string | undefined;
192
+ glossaryReferences?: number[] | undefined;
185
193
  }[];
186
194
  context?: {
187
195
  description?: string | undefined;
@@ -191,3 +199,14 @@ export declare const LQA_CONTENT_UNIT_SCHEMA: z.ZodPipe<z.ZodObject<{
191
199
  export type LqaAsyncContentUnit = z.output<typeof LQA_CONTENT_UNIT_SCHEMA>;
192
200
  export type LqaAsyncContentUnitInput = z.input<typeof LQA_CONTENT_UNIT_SCHEMA>;
193
201
  export type LqaAsyncSegment = z.output<typeof LQA_SEGMENT_SCHEMA>;
202
+ export declare function validateLqaSegmentGlossaryTermsReferences(contentUnits: Array<{
203
+ id: string;
204
+ segments: Array<{
205
+ glossaryReferences?: number[] | undefined;
206
+ }>;
207
+ }>, context: {
208
+ glossary?: Array<{
209
+ term: string;
210
+ forbidden: boolean;
211
+ }>;
212
+ } | undefined): string | null;
@@ -44,6 +44,10 @@ export const LQA_SEGMENT_SCHEMA = z
44
44
  .optional()
45
45
  .describe('When defined, the translation will attempt to follow the provided translation example'),
46
46
  imageUrl: IMAGE_URL_SCHEMA,
47
+ glossaryReferences: z
48
+ .array(z.number().int().nonnegative())
49
+ .describe('A set of glossary terms used in source text, referencing indexes from the context.glossary array. Forbidden terms always apply to all segments regardless of this field and must not be referenced here.')
50
+ .optional(),
47
51
  })
48
52
  .transform((segment) => {
49
53
  if (segment.tmMatch) {
@@ -96,4 +100,29 @@ export const LQA_CONTENT_UNIT_SCHEMA = z
96
100
  }
97
101
  return unit;
98
102
  });
103
+ // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: Splitting would make this fn less readable.
104
+ export function validateLqaSegmentGlossaryTermsReferences(contentUnits, context) {
105
+ const glossary = context?.glossary;
106
+ for (const contentUnit of contentUnits) {
107
+ for (const segment of contentUnit.segments) {
108
+ const { glossaryReferences } = segment;
109
+ if (!glossaryReferences || glossaryReferences.length === 0) {
110
+ continue;
111
+ }
112
+ if (!glossary) {
113
+ return `segment.glossaryReferences references glossary entries, but no context.glossary is provided (contentUnitId: ${contentUnit.id})`;
114
+ }
115
+ for (const index of glossaryReferences) {
116
+ const term = glossary.at(index);
117
+ if (!term) {
118
+ return `Glossary index ${index} referenced in segment.glossaryReferences is out of bounds (contentUnitId: ${contentUnit.id})`;
119
+ }
120
+ if (term.forbidden) {
121
+ return `Forbidden glossary term at index ${index} cannot be used in segment.glossaryReferences (contentUnitId: ${contentUnit.id})`;
122
+ }
123
+ }
124
+ }
125
+ }
126
+ return null;
127
+ }
99
128
  //# sourceMappingURL=commonSchemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"commonSchemas.js","sourceRoot":"","sources":["../../../../src/sdk/schemas/lqa/commonSchemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commonSchemas.js","sourceRoot":"","sources":["../../../../src/sdk/schemas/lqa/commonSchemas.ts"],"names":[],"mappings":"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"}
@@ -97,6 +97,7 @@ export declare const LQA_ASYNC_BODY_SCHEMA: z.ZodObject<{
97
97
  translatedValue: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
98
98
  }, z.core.$strip>>>;
99
99
  imageUrl: z.ZodOptional<z.ZodURL>;
100
+ glossaryReferences: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
100
101
  }, z.core.$strip>, z.ZodTransform<{
101
102
  sourceValue: string;
102
103
  translations: {
@@ -114,6 +115,7 @@ export declare const LQA_ASYNC_BODY_SCHEMA: z.ZodObject<{
114
115
  translatedValue: string;
115
116
  }[] | undefined;
116
117
  imageUrl?: string | undefined;
118
+ glossaryReferences?: number[] | undefined;
117
119
  }, {
118
120
  sourceValue: string;
119
121
  translations: {
@@ -131,6 +133,7 @@ export declare const LQA_ASYNC_BODY_SCHEMA: z.ZodObject<{
131
133
  translatedValue: string;
132
134
  }[] | undefined;
133
135
  imageUrl?: string | undefined;
136
+ glossaryReferences?: number[] | undefined;
134
137
  }>>>;
135
138
  characterLimit: z.ZodOptional<z.ZodNumber>;
136
139
  }, z.core.$strip>, z.ZodTransform<{
@@ -153,6 +156,7 @@ export declare const LQA_ASYNC_BODY_SCHEMA: z.ZodObject<{
153
156
  translatedValue: string;
154
157
  }[] | undefined;
155
158
  imageUrl?: string | undefined;
159
+ glossaryReferences?: number[] | undefined;
156
160
  }[];
157
161
  context?: {
158
162
  description?: string | undefined;
@@ -178,6 +182,7 @@ export declare const LQA_ASYNC_BODY_SCHEMA: z.ZodObject<{
178
182
  translatedValue: string;
179
183
  }[] | undefined;
180
184
  imageUrl?: string | undefined;
185
+ glossaryReferences?: number[] | undefined;
181
186
  }[];
182
187
  context?: {
183
188
  description?: string | undefined;
@@ -3,7 +3,7 @@ import { ASYNC_REQUEST_SCHEMA, AsyncRequestCallbackStatusEnum, ORIGIN_CORRELATIO
3
3
  import { AI_INTEGRATION_ENGINE_SCHEMA, COMMON_ERROR_RESPONSE_SCHEMA, COMMON_FAILED_OPERATION_CALLBACK_SCHEMA, COMMON_REQUEST_HEADERS_SCHEMA, LOCALE_SCHEMA, } from "../common/commonSchemas.js";
4
4
  import { CLDRPluralForm } from "../common/pluralFormSchemas.js";
5
5
  import { TRANSLATION_CONTEXT_SCHEMA } from "../common/translationContextSchemas.js";
6
- import { LQA_CONTENT_UNIT_ID_SCHEMA, LQA_CONTENT_UNIT_SCHEMA, LQA_TRANSLATION_ID_SCHEMA, LqaIssueSeverityEnum, } from "./commonSchemas.js";
6
+ import { LQA_CONTENT_UNIT_ID_SCHEMA, LQA_CONTENT_UNIT_SCHEMA, LQA_TRANSLATION_ID_SCHEMA, LqaIssueSeverityEnum, validateLqaSegmentGlossaryTermsReferences, } from "./commonSchemas.js";
7
7
  export const LQA_CONTENT_UNITS_MAX_LENGTH = 50;
8
8
  export const LQA_ASYNC_BODY_SCHEMA = ASYNC_REQUEST_SCHEMA.extend({
9
9
  sourceLocale: LOCALE_SCHEMA,
@@ -14,6 +14,11 @@ export const LQA_ASYNC_BODY_SCHEMA = ASYNC_REQUEST_SCHEMA.extend({
14
14
  .nonempty()
15
15
  .max(LQA_CONTENT_UNITS_MAX_LENGTH)
16
16
  .describe('A list of content units to be reviewed. Each unit might have 1 or more segments, but all segments in content unit are considered to be parts of the same piece of content.'),
17
+ }).check((ctx) => {
18
+ const glossaryReferenceError = validateLqaSegmentGlossaryTermsReferences(ctx.value.contentUnits, ctx.value.context);
19
+ if (glossaryReferenceError) {
20
+ ctx.issues.push({ code: 'custom', message: glossaryReferenceError, input: ctx.value });
21
+ }
17
22
  });
18
23
  export const LQA_ASYNC_HEADERS_SCHEMA = COMMON_REQUEST_HEADERS_SCHEMA;
19
24
  export const LQA_ASYNC_RESPONSE_SCHEMA = z
@@ -1 +1 @@
1
- {"version":3,"file":"lqaAsyncSchemas.js","sourceRoot":"","sources":["../../../../src/sdk/schemas/lqa/lqaAsyncSchemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lqaAsyncSchemas.js","sourceRoot":"","sources":["../../../../src/sdk/schemas/lqa/lqaAsyncSchemas.ts"],"names":[],"mappings":"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"}
@@ -92,6 +92,7 @@ export declare const LQA_SYNC_BODY_SCHEMA: z.ZodObject<{
92
92
  translatedValue: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
93
93
  }, z.core.$strip>>>;
94
94
  imageUrl: z.ZodOptional<z.ZodURL>;
95
+ glossaryReferences: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
95
96
  }, z.core.$strip>, z.ZodTransform<{
96
97
  sourceValue: string;
97
98
  translations: {
@@ -109,6 +110,7 @@ export declare const LQA_SYNC_BODY_SCHEMA: z.ZodObject<{
109
110
  translatedValue: string;
110
111
  }[] | undefined;
111
112
  imageUrl?: string | undefined;
113
+ glossaryReferences?: number[] | undefined;
112
114
  }, {
113
115
  sourceValue: string;
114
116
  translations: {
@@ -126,6 +128,7 @@ export declare const LQA_SYNC_BODY_SCHEMA: z.ZodObject<{
126
128
  translatedValue: string;
127
129
  }[] | undefined;
128
130
  imageUrl?: string | undefined;
131
+ glossaryReferences?: number[] | undefined;
129
132
  }>>>;
130
133
  characterLimit: z.ZodOptional<z.ZodNumber>;
131
134
  }, z.core.$strip>, z.ZodTransform<{
@@ -148,6 +151,7 @@ export declare const LQA_SYNC_BODY_SCHEMA: z.ZodObject<{
148
151
  translatedValue: string;
149
152
  }[] | undefined;
150
153
  imageUrl?: string | undefined;
154
+ glossaryReferences?: number[] | undefined;
151
155
  }[];
152
156
  context?: {
153
157
  description?: string | undefined;
@@ -173,6 +177,7 @@ export declare const LQA_SYNC_BODY_SCHEMA: z.ZodObject<{
173
177
  translatedValue: string;
174
178
  }[] | undefined;
175
179
  imageUrl?: string | undefined;
180
+ glossaryReferences?: number[] | undefined;
176
181
  }[];
177
182
  context?: {
178
183
  description?: string | undefined;
@@ -2,9 +2,10 @@ import z from 'zod/v4';
2
2
  import { AI_INTEGRATION_ENGINE_SCHEMA, COMMON_ERROR_RESPONSE_SCHEMA, COMMON_REQUEST_HEADERS_SCHEMA, LOCALE_SCHEMA, } from "../common/commonSchemas.js";
3
3
  import { CLDRPluralForm } from "../common/pluralFormSchemas.js";
4
4
  import { TRANSLATION_CONTEXT_SCHEMA } from "../common/translationContextSchemas.js";
5
- import { LQA_CONTENT_UNIT_ID_SCHEMA, LQA_CONTENT_UNIT_SCHEMA, LQA_TRANSLATION_ID_SCHEMA, LqaIssueSeverityEnum, } from "./commonSchemas.js";
5
+ import { LQA_CONTENT_UNIT_ID_SCHEMA, LQA_CONTENT_UNIT_SCHEMA, LQA_TRANSLATION_ID_SCHEMA, LqaIssueSeverityEnum, validateLqaSegmentGlossaryTermsReferences, } from "./commonSchemas.js";
6
6
  const LQA_CONTENT_UNITS_MAX_LENGTH = 1;
7
- export const LQA_SYNC_BODY_SCHEMA = z.object({
7
+ export const LQA_SYNC_BODY_SCHEMA = z
8
+ .object({
8
9
  sourceLocale: LOCALE_SCHEMA,
9
10
  context: TRANSLATION_CONTEXT_SCHEMA.optional(),
10
11
  integration: AI_INTEGRATION_ENGINE_SCHEMA.optional(),
@@ -13,6 +14,12 @@ export const LQA_SYNC_BODY_SCHEMA = z.object({
13
14
  .nonempty()
14
15
  .max(LQA_CONTENT_UNITS_MAX_LENGTH)
15
16
  .describe('A list of content units to be reviewed. Each unit might have 1 or more segments, but all segments in content unit are considered to be parts of the same piece of content.'),
17
+ })
18
+ .check((ctx) => {
19
+ const glossaryReferenceError = validateLqaSegmentGlossaryTermsReferences(ctx.value.contentUnits, ctx.value.context);
20
+ if (glossaryReferenceError) {
21
+ ctx.issues.push({ code: 'custom', message: glossaryReferenceError, input: ctx.value });
22
+ }
16
23
  });
17
24
  export const LQA_SYNC_HEADERS_SCHEMA = COMMON_REQUEST_HEADERS_SCHEMA;
18
25
  export const LQA_SYNC_RESPONSE_SCHEMA = z
@@ -1 +1 @@
1
- {"version":3,"file":"lqaSyncSchemas.js","sourceRoot":"","sources":["../../../../src/sdk/schemas/lqa/lqaSyncSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAA;AAEtB,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,6BAA6B,EAC7B,aAAa,GACd,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAA;AACnF,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,oBAAoB,CAAA;AAE3B,MAAM,4BAA4B,GAAG,CAAC,CAAA;AAEtC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,YAAY,EAAE,aAAa;IAC3B,OAAO,EAAE,0BAA0B,CAAC,QAAQ,EAAE;IAC9C,WAAW,EAAE,4BAA4B,CAAC,QAAQ,EAAE;IACpD,YAAY,EAAE,CAAC;SACZ,KAAK,CAAC,uBAAuB,CAAC;SAC9B,QAAQ,EAAE;SACV,GAAG,CAAC,4BAA4B,CAAC;SACjC,QAAQ,CACP,4KAA4K,CAC7K;CACJ,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,6BAA6B,CAAA;AAEpE,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,MAAM,CAAC;IACN,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,CACP,yHAAyH,CAC1H;IACH,IAAI,EAAE,CAAC,CAAC,KAAK,CACX,CAAC,CAAC,MAAM,CAAC;QACP,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,aAAa,EAAE,0BAA0B;QACzC,aAAa,EAAE,yBAAyB;QACxC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;QAC7C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QACjC,MAAM,EAAE,CAAC,CAAC,KAAK,CACb,CAAC,CAAC,MAAM,CAAC;YACP,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;YACpB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC;YACtC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC/B,CAAC,CACH;QACD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;KAClB,CAAC,CACH;IACD,MAAM,EAAE,CAAC;SACN,KAAK,CACJ,4BAA4B,CAAC,MAAM,CAAC;QAClC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,aAAa,EAAE,0BAA0B;QACzC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;QAC7C,aAAa,EAAE,yBAAyB;KACzC,CAAC,CACH;SACA,QAAQ,EAAE;CACd,CAAC;KACD,QAAQ,CAAC,mCAAmC,CAAC,CAAA"}
1
+ {"version":3,"file":"lqaSyncSchemas.js","sourceRoot":"","sources":["../../../../src/sdk/schemas/lqa/lqaSyncSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAA;AAEtB,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,6BAA6B,EAC7B,aAAa,GACd,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAA;AACnF,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACpB,yCAAyC,GAC1C,MAAM,oBAAoB,CAAA;AAE3B,MAAM,4BAA4B,GAAG,CAAC,CAAA;AAEtC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,YAAY,EAAE,aAAa;IAC3B,OAAO,EAAE,0BAA0B,CAAC,QAAQ,EAAE;IAC9C,WAAW,EAAE,4BAA4B,CAAC,QAAQ,EAAE;IACpD,YAAY,EAAE,CAAC;SACZ,KAAK,CAAC,uBAAuB,CAAC;SAC9B,QAAQ,EAAE;SACV,GAAG,CAAC,4BAA4B,CAAC;SACjC,QAAQ,CACP,4KAA4K,CAC7K;CACJ,CAAC;KACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACb,MAAM,sBAAsB,GAAG,yCAAyC,CACtE,GAAG,CAAC,KAAK,CAAC,YAAY,EACtB,GAAG,CAAC,KAAK,CAAC,OAAO,CAClB,CAAA;IACD,IAAI,sBAAsB,EAAE,CAAC;QAC3B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,sBAAsB,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAA;IACxF,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,CAAC,MAAM,uBAAuB,GAAG,6BAA6B,CAAA;AAEpE,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,MAAM,CAAC;IACN,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,CACP,yHAAyH,CAC1H;IACH,IAAI,EAAE,CAAC,CAAC,KAAK,CACX,CAAC,CAAC,MAAM,CAAC;QACP,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,aAAa,EAAE,0BAA0B;QACzC,aAAa,EAAE,yBAAyB;QACxC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;QAC7C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QACjC,MAAM,EAAE,CAAC,CAAC,KAAK,CACb,CAAC,CAAC,MAAM,CAAC;YACP,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;YACpB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC;YACtC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC/B,CAAC,CACH;QACD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;KAClB,CAAC,CACH;IACD,MAAM,EAAE,CAAC;SACN,KAAK,CACJ,4BAA4B,CAAC,MAAM,CAAC;QAClC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,aAAa,EAAE,0BAA0B;QACzC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;QAC7C,aAAa,EAAE,yBAAyB;KACzC,CAAC,CACH;SACA,QAAQ,EAAE;CACd,CAAC;KACD,QAAQ,CAAC,mCAAmC,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lokalise/polyglot-sdk",
3
- "version": "22.11.3",
3
+ "version": "22.12.1",
4
4
  "author": {
5
5
  "name": "Lokalise",
6
6
  "url": "https://lokalise.com/"
@@ -44,9 +44,9 @@
44
44
  "@lokalise/id-utils": "^3.0.1",
45
45
  "@lokalise/node-core": "^14.1.0",
46
46
  "@lokalise/non-translatable-markup": "^3.1.0",
47
- "@lokalise/supported-languages": "^3.1.0",
47
+ "@lokalise/supported-languages": "^3.1.1",
48
48
  "html-escaper": "^3.0.3",
49
- "undici": "^7.18.2",
49
+ "undici": "^7.24.0",
50
50
  "undici-retry": "^6.0.0",
51
51
  "zod": "^4.3.6"
52
52
  },
@@ -56,11 +56,11 @@
56
56
  "@lokalise/biome-config": "^3.1.0",
57
57
  "@lokalise/tsconfig": "^3.0.0",
58
58
  "@types/html-escaper": "^3.0.4",
59
- "@types/node": "^25.3.3",
60
- "@vitest/coverage-v8": "^4.0.18",
59
+ "@types/node": "^25.5.0",
60
+ "@vitest/coverage-v8": "^4.1.1",
61
61
  "auto-changelog": "^2.5.0",
62
62
  "mockttp": "^4.2.3",
63
- "rimraf": "^6.0.1",
63
+ "rimraf": "^6.1.3",
64
64
  "ts-deepmerge": "^7.0.3",
65
65
  "typescript": "5.9.3",
66
66
  "vitest": "^4.0.14"