@oktis-works/core 0.14.1 → 0.15.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.
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/content/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/content/service.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import { HOOK_POINTS } from '../hooks/points.js';
8
8
  import { getTaggedCacheIndex } from '../cache/tags.js';
9
9
  import { postTypeRegistry } from './post-types.js';
10
10
  import { fieldGroupService } from '../fields/service.js';
11
+ import { logicalValuesToBody, logicalValuesToNative, normalizeLogicalValues, } from '@oktis-works/validation';
11
12
  const FIELD_SUPPORT_REQUIREMENT = {
12
13
  title: 'title',
13
14
  body: 'editor',
@@ -30,13 +31,20 @@ async function typeSupports(type, support) {
30
31
  const definition = await postTypeRegistry.getBySlug(type);
31
32
  return definition?.supports?.includes(support) ?? false;
32
33
  }
33
- /** Valida os campos customizados do body contra os field groups ativos. */
34
+ /** Validates the logical content values against the active field groups. */
34
35
  async function validateCustomFields(context, body) {
35
36
  const issues = await fieldGroupService.validateValues(context, body);
36
37
  if (issues.length > 0) {
37
- throw new Error(`Validação de campos falhou: ${issues.join('; ')}`);
38
+ throw new Error(`Field validation failed: ${issues.join('; ')}`);
38
39
  }
39
40
  }
41
+ function readString(record, ...keys) {
42
+ for (const key of keys) {
43
+ if (typeof record[key] === 'string')
44
+ return record[key];
45
+ }
46
+ return undefined;
47
+ }
40
48
  function generateSlug(title) {
41
49
  return title
42
50
  .toLowerCase()
@@ -156,23 +164,24 @@ export class ContentService {
156
164
  }
157
165
  }
158
166
  const filteredInput = (await registry.applyFiltersAsync(HOOK_POINTS.BEFORE_SAVE_CONTENT(input.type), input.body ?? {}, { operation: 'create', title: input.title, slug: input.slug }));
159
- // Validação server-side dos campos customizados (bugs: nunca rodava).
160
- // Só quando o caller envia body (o editor sempre envia): criações parciais
161
- // via API/seeds não são bloqueadas. Roda depois dos hooks, antes do insert.
162
- if (input.body !== undefined) {
163
- await validateCustomFields({
164
- contentType: input.type,
165
- contentSlug: input.slug,
166
- postStatus: input.status ?? 'DRAFT',
167
- }, filteredInput);
168
- }
169
- const id = randomUUID();
170
167
  const slug = input.slug ?? generateSlug(input.title);
168
+ const logical = normalizeLogicalValues({
169
+ body: filteredInput,
170
+ native: { ...input, slug, status: input.status ?? 'DRAFT', author: input.authorId },
171
+ });
172
+ await validateCustomFields({
173
+ contentType: input.type,
174
+ contentSlug: slug,
175
+ postStatus: input.status ?? 'DRAFT',
176
+ }, logical);
177
+ const canonicalBody = logicalValuesToBody(logical);
178
+ const native = logicalValuesToNative(logical);
179
+ const id = randomUUID();
171
180
  const status = input.status ?? 'DRAFT';
172
181
  const metadata = input.metadata ?? {};
173
182
  const result = await sql.unsafe(`INSERT INTO content (id, tenant_id, type, title, slug, body, excerpt, status, author_id, featured_image_id, seo_title, seo_description, metadata, layout)
174
183
  VALUES ($1, $2, $3, $4, $5, $6::jsonb, $7, $8, $9, $10, $11, $12, $13::jsonb, $14)
175
- RETURNING *`, [id, input.tenantId, input.type, input.title, slug, filteredInput, input.excerpt ?? null, status, input.authorId, input.featuredImageId ?? null, input.seoTitle ?? null, input.seoDescription ?? null, metadata, input.layout ?? null]);
184
+ RETURNING *`, [id, input.tenantId, input.type, String(logical['title'] ?? input.title), String(logical['slug'] ?? slug), canonicalBody, native['excerpt'] ?? null, String(logical['status'] ?? status), String(native['authorId'] ?? input.authorId), native['featuredImageId'] ?? null, native['seoTitle'] ?? null, native['seoDescription'] ?? null, metadata, input.layout ?? null]);
176
185
  const content = result[0];
177
186
  if (await typeSupports(content.type, 'revisions')) {
178
187
  await this.recordSnapshot(content);
@@ -200,53 +209,84 @@ export class ContentService {
200
209
  if (!existing)
201
210
  return null;
202
211
  input = (await stripUnsupportedFields(existing.type, input));
212
+ let logical = normalizeLogicalValues({
213
+ body: existing.body,
214
+ data: existing['data'],
215
+ native: existing,
216
+ });
203
217
  if (input.body !== undefined) {
204
218
  input.body = (await registry.applyFiltersAsync(HOOK_POINTS.BEFORE_SAVE_CONTENT(existing.type), input.body, { operation: 'update', title: input.title, slug: input.slug, id }));
205
- // Validação server-side antes do snapshot e do UPDATE: uma falha não
206
- // deve nem mesmo criar revisão. Contexto espelha o do editor.
207
- await validateCustomFields({
208
- contentType: existing.type,
209
- contentSlug: input.slug ?? existing.slug,
210
- postStatus: input.status ?? existing.status,
211
- }, input.body);
212
219
  }
220
+ const providedLogical = input.body !== undefined
221
+ ? normalizeLogicalValues({ body: input.body })
222
+ : {};
223
+ const updateBody = {
224
+ ...logical,
225
+ ...providedLogical,
226
+ ...(input.title !== undefined ? { title: input.title } : {}),
227
+ ...(input.slug !== undefined ? { slug: input.slug } : {}),
228
+ ...(input.excerpt !== undefined ? { excerpt: input.excerpt } : {}),
229
+ ...(input.status !== undefined ? { status: input.status } : {}),
230
+ ...(input.featuredImageId !== undefined ? { featured_image: input.featuredImageId } : {}),
231
+ ...(input.seoTitle !== undefined ? { seo_title: input.seoTitle } : {}),
232
+ ...(input.seoDescription !== undefined ? { seo_description: input.seoDescription } : {}),
233
+ };
234
+ logical = normalizeLogicalValues({
235
+ body: updateBody,
236
+ native: {
237
+ ...existing,
238
+ ...input,
239
+ title: input.title ?? existing.title,
240
+ slug: input.slug ?? existing.slug,
241
+ status: input.status ?? existing.status,
242
+ author: readString(existing, 'authorId', 'author_id'),
243
+ },
244
+ });
245
+ await validateCustomFields({
246
+ contentType: existing.type,
247
+ contentSlug: String(logical['slug'] ?? existing.slug),
248
+ postStatus: String(logical['status'] ?? existing.status),
249
+ }, logical);
250
+ const canonicalBody = logicalValuesToBody(logical);
251
+ const native = logicalValuesToNative(logical);
213
252
  if (await typeSupports(existing.type, 'revisions')) {
214
253
  await this.recordSnapshot(existing);
215
254
  }
216
255
  const newVersion = existing.version + 1;
217
256
  const setClauses = [];
218
257
  const setParams = [];
219
- if (input.title !== undefined) {
258
+ if (input.title !== undefined || Object.prototype.hasOwnProperty.call(providedLogical, 'title')) {
220
259
  setClauses.push(`title = $${setParams.length + 1}`);
221
- setParams.push(input.title);
260
+ setParams.push(native['title']);
222
261
  }
223
- if (input.slug !== undefined) {
262
+ if (input.slug !== undefined || Object.prototype.hasOwnProperty.call(providedLogical, 'slug')) {
224
263
  setClauses.push(`slug = $${setParams.length + 1}`);
225
- setParams.push(input.slug);
264
+ setParams.push(native['slug']);
226
265
  }
227
- if (input.body !== undefined) {
266
+ {
228
267
  setClauses.push(`body = $${setParams.length + 1}::jsonb`);
229
- setParams.push(input.body);
268
+ setParams.push(canonicalBody);
269
+ setClauses.push(`data = '{}'::jsonb`);
230
270
  }
231
- if (input.excerpt !== undefined) {
271
+ if (input.excerpt !== undefined || Object.prototype.hasOwnProperty.call(providedLogical, 'excerpt')) {
232
272
  setClauses.push(`excerpt = $${setParams.length + 1}`);
233
- setParams.push(input.excerpt);
273
+ setParams.push(native['excerpt'] ?? null);
234
274
  }
235
- if (input.status !== undefined) {
275
+ if (input.status !== undefined || Object.prototype.hasOwnProperty.call(providedLogical, 'status')) {
236
276
  setClauses.push(`status = $${setParams.length + 1}`);
237
- setParams.push(input.status);
277
+ setParams.push(native['status']);
238
278
  }
239
- if (input.featuredImageId !== undefined) {
279
+ if (input.featuredImageId !== undefined || Object.prototype.hasOwnProperty.call(providedLogical, 'featured_image')) {
240
280
  setClauses.push(`featured_image_id = $${setParams.length + 1}`);
241
- setParams.push(input.featuredImageId);
281
+ setParams.push(native['featuredImageId'] ?? null);
242
282
  }
243
- if (input.seoTitle !== undefined) {
283
+ if (input.seoTitle !== undefined || Object.prototype.hasOwnProperty.call(providedLogical, 'seo_title')) {
244
284
  setClauses.push(`seo_title = $${setParams.length + 1}`);
245
- setParams.push(input.seoTitle);
285
+ setParams.push(native['seoTitle'] ?? null);
246
286
  }
247
- if (input.seoDescription !== undefined) {
287
+ if (input.seoDescription !== undefined || Object.prototype.hasOwnProperty.call(providedLogical, 'seo_description')) {
248
288
  setClauses.push(`seo_description = $${setParams.length + 1}`);
249
- setParams.push(input.seoDescription);
289
+ setParams.push(native['seoDescription'] ?? null);
250
290
  }
251
291
  if (input.metadata !== undefined) {
252
292
  setClauses.push(`metadata = $${setParams.length + 1}::jsonb`);
@@ -326,10 +366,16 @@ export class ContentService {
326
366
  if (!revision)
327
367
  return null;
328
368
  await this.recordSnapshot(current);
369
+ const restoredLogical = normalizeLogicalValues({
370
+ body: revision['body'],
371
+ native: revision,
372
+ });
373
+ const restoredNative = logicalValuesToNative(restoredLogical);
329
374
  const result = await sql.unsafe(`UPDATE content SET
330
375
  title = $1,
331
376
  slug = $2,
332
377
  body = $3::jsonb,
378
+ data = '{}'::jsonb,
333
379
  excerpt = $4,
334
380
  featured_image_id = $5,
335
381
  seo_title = $6,
@@ -337,13 +383,13 @@ export class ContentService {
337
383
  metadata = $8::jsonb,
338
384
  updated_at = NOW()
339
385
  WHERE id = $9 RETURNING *`, [
340
- String(revision['title']),
341
- revision['slug'] != null ? String(revision['slug']) : current.slug,
342
- revision['body'] ?? null,
343
- revision['excerpt'] != null ? String(revision['excerpt']) : null,
344
- revision['featured_image_id'] != null ? String(revision['featured_image_id']) : null,
345
- revision['seo_title'] != null ? String(revision['seo_title']) : null,
346
- revision['seo_description'] != null ? String(revision['seo_description']) : null,
386
+ String(restoredLogical['title'] ?? current.title),
387
+ restoredLogical['slug'] != null ? String(restoredLogical['slug']) : current.slug,
388
+ logicalValuesToBody(restoredLogical),
389
+ restoredNative['excerpt'] != null ? String(restoredNative['excerpt']) : null,
390
+ restoredNative['featuredImageId'] != null ? String(restoredNative['featuredImageId']) : null,
391
+ restoredNative['seoTitle'] != null ? String(restoredNative['seoTitle']) : null,
392
+ restoredNative['seoDescription'] != null ? String(restoredNative['seoDescription']) : null,
347
393
  revision['metadata'] ?? {},
348
394
  contentId,
349
395
  ]);
@@ -364,19 +410,25 @@ export class ContentService {
364
410
  async recordSnapshot(content) {
365
411
  const sql = getConnection();
366
412
  const raw = content;
413
+ const logical = normalizeLogicalValues({
414
+ body: content.body,
415
+ data: raw['data'],
416
+ native: raw,
417
+ });
418
+ const native = logicalValuesToNative(logical);
367
419
  const values = [
368
420
  randomUUID(),
369
421
  content.id,
370
422
  Number(content.version),
371
- content.title,
372
- typeof raw['slug'] === 'string' ? raw['slug'] : null,
373
- content.body ?? null,
374
- typeof raw['excerpt'] === 'string' ? raw['excerpt'] : null,
375
- typeof raw['featured_image_id'] === 'string' ? raw['featured_image_id'] : null,
376
- typeof raw['seo_title'] === 'string' ? raw['seo_title'] : null,
377
- typeof raw['seo_description'] === 'string' ? raw['seo_description'] : null,
423
+ String(logical['title'] ?? content.title),
424
+ logical['slug'] != null ? String(logical['slug']) : null,
425
+ logicalValuesToBody(logical),
426
+ native['excerpt'] ?? null,
427
+ native['featuredImageId'] ?? null,
428
+ native['seoTitle'] ?? null,
429
+ native['seoDescription'] ?? null,
378
430
  content.metadata ?? {},
379
- content.authorId ?? null,
431
+ native['authorId'] ?? content.authorId ?? null,
380
432
  ];
381
433
  await sql.unsafe(`INSERT INTO content_versions (id, content_id, version, title, slug, body, excerpt, featured_image_id, seo_title, seo_description, metadata, author_id)
382
434
  VALUES ($1, $2, $3, $4, $5, $6::jsonb, $7, $8, $9, $10, $11::jsonb, $12)`, values);
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/content/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/content/service.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AAkCjC,MAAM,yBAAyB,GAA2B;IACxD,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,SAAS;IAClB,eAAe,EAAE,WAAW;CAC7B,CAAC;AAEF,KAAK,UAAU,sBAAsB,CACnC,IAAY,EACZ,KAAQ;IAER,MAAM,MAAM,GAA4B,EAAE,GAAI,KAAiC,EAAE,CAAC;IAClF,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,UAAU,EAAE,QAAQ,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IACtE,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,EAAE,CAAC;QACzE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,MAAW,CAAC;AACrB,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,IAA+B,EAAE,OAAe;IAC1E,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1D,OAAO,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAgB,CAAC,IAAI,KAAK,CAAC;AACnE,CAAC;AAED,4EAA4E;AAC5E,KAAK,UAAU,oBAAoB,CACjC,OAA2E,EAC3E,IAA6B;IAE7B,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACrE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,4BAA4B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,MAA+B,EAAE,GAAG,IAAc;IACpE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ;YAAE,OAAO,MAAM,CAAC,GAAG,CAAW,CAAC;IACpE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK;SACT,WAAW,EAAE;SACb,SAAS,CAAC,KAAK,CAAC;SAChB,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;SAC/B,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,sBAAsB,CAAC,EAAU,EAAE,IAAoB,EAAE,IAAa;IACnF,MAAM,KAAK,GAAG,mBAAmB,EAAE,CAAC;IACpC,MAAM,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC3C,IAAI,IAAI;QAAE,MAAM,KAAK,CAAC,aAAa,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;IAC5D,IAAI,IAAI;QAAE,MAAM,KAAK,CAAC,aAAa,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,OAAO,cAAc;IACzB,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,QAAgB;QAC/C,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,EAAE,SAAS;YAAE,OAAO,IAAI,CAAC;QAExC,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAC7B,0FAA0F,EAC1F,CAAC,QAAQ,EAAE,IAAI,CAAC,CACjB,CAAC;QACF,OAAQ,MAAM,CAAC,CAAC,CAAwB,IAAI,IAAI,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAMV;QACC,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,IAAI,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAC/D,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;QAElC,IAAI,WAAW,GAAG,WAAW,CAAC;QAC9B,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,IAAI,EAAE,CAAC;YACT,WAAW,IAAI,gBAAgB,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACX,WAAW,IAAI,kBAAkB,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACX,WAAW,IAAI,sBAAsB,MAAM,CAAC,MAAM,GAAG,CAAC,mBAAmB,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC;YAC9F,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC;QAC7B,CAAC;QAED,kGAAkG;QAClG,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,MAAM,CACjC,6BAA6B,WAAW,qCAAqC,KAAK,WAAW,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,EACvI,MAAM,CACP,CAAC;QACF,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,MAAM,CAClC,8CAA8C,WAAW,EAAE,EAC3D,MAAM,CACP,CAAC;QAEF,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,CAAC,MAAM,QAAQ,CAAC,iBAAiB,CAAC,WAAW,CAAC,aAAa,EAAE,UAAkC,CAAC,CAAc,CAAC;QAEpI,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,MAAM,CAAE,WAAW,CAAC,CAAC,CAA6B,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SAC3E,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU;QACtB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,WAAW,EAAE,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,MAAM;YAAE,OAAO,MAAiB,CAAC;QAErC,sFAAsF;QACtF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAC7B;;;;;;uBAMiB,EACjB,CAAC,EAAE,CAAC,CACL,CAAC;QACF,MAAM,OAAO,GAAI,MAAM,CAAC,CAAC,CAAwB,IAAI,IAAI,CAAC;QAC1D,IAAI,OAAO,EAAE,CAAC;YACZ,yEAAyE;YACzE,0DAA0D;YAC1D,MAAM,mBAAmB,EAAE,CAAC,WAAW,CACrC,QAAQ,EACR,OAAO,EACP,CAAC,WAAW,EAAE,EAAE,EAAE,gBAAgB,OAAO,CAAC,IAAI,EAAE,CAAC,EACjD,EAAE,CACH,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,GAAa;QAC9B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,GAAG,EAAE,CAAC;QACvC,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAC7B;;;oCAG8B,EAC9B,CAAC,GAAG,CAAC,CACN,CAAC;QACF,MAAM,GAAG,GAAG,IAAI,GAAG,EAAmB,CAAC;QACvC,KAAK,MAAM,GAAG,IAAI,MAA8B,EAAE,CAAC;YACjD,MAAM,CAAC,GAAG,GAAyC,CAAC;YACpD,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY,EAAE,IAAa;QACzC,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAC5B,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,qDAAqD,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YACrG,OAAQ,MAAM,CAAC,CAAC,CAAwB,IAAI,IAAI,CAAC;QACnD,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,uCAAuC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACjF,OAAQ,MAAM,CAAC,CAAC,CAAwB,IAAI,IAAI,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAA4B;QACvC,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;QAEnC,MAAM,KAAK,GAAG,CAAC,MAAM,sBAAsB,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAuB,CAAC;QAE5F,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChE,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,KAAK,CAAC,IAAI,kBAAkB,CAAC,CAAC;QAChF,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YACrE,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,IAAI,aAAa,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAG,CAAC,MAAM,QAAQ,CAAC,iBAAiB,CACrD,WAAW,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,EAC3C,KAAK,CAAC,IAAI,IAAI,EAAE,EAChB,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAC9D,CAA4B,CAAC;QAE9B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAErD,MAAM,OAAO,GAAG,sBAAsB,CAAC;YACrC,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE;SACpF,CAAC,CAAC;QACH,MAAM,oBAAoB,CACxB;YACE,WAAW,EAAE,KAAK,CAAC,IAAI;YACvB,WAAW,EAAE,IAAI;YACjB,UAAU,EAAE,KAAK,CAAC,MAAM,IAAI,OAAO;SACpC,EACD,OAAO,CACR,CAAC;QACF,MAAM,aAAa,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAE9C,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC;QACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;QAEtC,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAC7B;;mBAEa,EACb,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,iBAAiB,CAAC,IAAI,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,MAAM,CAAC,gBAAgB,CAAC,IAAI,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,CACzW,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAuB,CAAC;QAEhD,IAAI,MAAM,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC;YAClD,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEtG,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;QAC/B,MAAM,QAAQ,CAAC,IAAI,CAAC;YAClB,EAAE,EAAE,UAAU,EAAE;YAChB,IAAI,EAAE,iBAAiB;YACvB,aAAa,EAAE,SAAS;YACxB,WAAW,EAAE,OAAO,CAAC,EAAE;YACvB,OAAO,EAAE,EAAE,OAAO,EAAE;YACpB,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,yEAAyE;QACzE,gEAAgE;QAChE,MAAM,sBAAsB,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAErE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,KAAyB;QAChD,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;QAEnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE3B,KAAK,GAAG,CAAC,MAAM,sBAAsB,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAuB,CAAC;QAEnF,IAAI,OAAO,GAAG,sBAAsB,CAAC;YACnC,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,IAAI,EAAG,QAA+C,CAAC,MAAM,CAAC;YAC9D,MAAM,EAAE,QAA8C;SACvD,CAAC,CAAC;QAEH,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,iBAAiB,CAC5C,WAAW,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAC9C,KAAK,CAAC,IAAI,EACV,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,CAClE,CAA4B,CAAC;QAChC,CAAC;QAED,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,KAAK,SAAS;YAC9C,CAAC,CAAC,sBAAsB,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YAC9C,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,UAAU,GAAG;YACjB,GAAG,OAAO;YACV,GAAG,eAAe;YAClB,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,GAAG,CAAC,KAAK,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzF,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzF,CAAC;QACF,OAAO,GAAG,sBAAsB,CAAC;YAC/B,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE;gBACN,GAAI,QAA+C;gBACnD,GAAG,KAAK;gBACR,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK;gBACpC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI;gBACjC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM;gBACvC,MAAM,EAAE,UAAU,CAAC,QAA8C,EAAE,UAAU,EAAE,WAAW,CAAC;aAC5F;SACF,CAAC,CAAC;QACH,MAAM,oBAAoB,CACxB;YACE,WAAW,EAAE,QAAQ,CAAC,IAAI;YAC1B,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC;YACrD,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC;SACzD,EACD,OAAO,CACR,CAAC;QACF,MAAM,aAAa,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAE9C,IAAI,MAAM,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC;QACxC,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,MAAM,SAAS,GAAc,EAAE,CAAC;QAEhC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,EAAE,CAAC;YAChG,UAAU,CAAC,IAAI,CAAC,YAAY,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;YACpD,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,EAAE,CAAC;YAC9F,UAAU,CAAC,IAAI,CAAC,WAAW,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;YACnD,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,CAAC;YACC,UAAU,CAAC,IAAI,CAAC,WAAW,SAAS,CAAC,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC;YAC1D,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC9B,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,EAAE,CAAC;YACpG,UAAU,CAAC,IAAI,CAAC,cAAc,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;YACtD,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,EAAE,CAAC;YAClG,UAAU,CAAC,IAAI,CAAC,aAAa,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;YACrD,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,KAAK,CAAC,eAAe,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,gBAAgB,CAAC,EAAE,CAAC;YACnH,UAAU,CAAC,IAAI,CAAC,wBAAwB,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;YAChE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,EAAE,CAAC;YACvG,UAAU,CAAC,IAAI,CAAC,gBAAgB,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;YACxD,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,KAAK,CAAC,cAAc,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,iBAAiB,CAAC,EAAE,CAAC;YACnH,UAAU,CAAC,IAAI,CAAC,sBAAsB,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9D,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjC,UAAU,CAAC,IAAI,CAAC,eAAe,SAAS,CAAC,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC;YAC9D,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC/B,UAAU,CAAC,IAAI,CAAC,aAAa,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;YACrD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC;QAED,UAAU,CAAC,IAAI,CAAC,cAAc,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;QACtD,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QAEnC,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACjC,UAAU,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAC;QACrG,CAAC;QAED,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnB,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC;QAEpC,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAC7B,sBAAsB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,UAAU,cAAc,EACnF,SAAS,CACV,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAuB,CAAC;QAEhD,MAAM,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QAE3I,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;QAC/B,MAAM,QAAQ,CAAC,IAAI,CAAC;YAClB,EAAE,EAAE,UAAU,EAAE;YAChB,IAAI,EAAE,iBAAiB;YACvB,aAAa,EAAE,SAAS;YACxB,WAAW,EAAE,OAAO,CAAC,EAAE;YACvB,OAAO,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,CAAC,OAAO,EAAE;YACvD,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,MAAM,sBAAsB,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAErE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;QAEnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAE5B,MAAM,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEpF,MAAM,GAAG,CAAC,MAAM,CAAC,8CAA8C,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;QAElF,MAAM,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEnF,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;QAC/B,MAAM,QAAQ,CAAC,IAAI,CAAC;YAClB,EAAE,EAAE,UAAU,EAAE;YAChB,IAAI,EAAE,iBAAiB;YACvB,aAAa,EAAE,SAAS;YACxB,WAAW,EAAE,EAAE;YACf,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;YAC9B,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE/D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAiB;QACjC,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAC7B;;;yEAGmE,EACnE,CAAC,SAAS,CAAC,CACZ,CAAC;QACF,OAAO,MAAqC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,SAAiB,EAAE,mBAA2B;QAClE,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAE5B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAE1B,MAAM,cAAc,GAAG,MAAM,GAAG,CAAC,MAAM,CACrC,gFAAgF,EAChF,CAAC,mBAAmB,EAAE,SAAS,CAAC,CACjC,CAAC;QACF,IAAI,QAAQ,GAAI,cAAc,CAAC,CAAC,CAAwC,IAAI,IAAI,CAAC;QAEjF,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACnD,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,MAAM,CAChC,wGAAwG,EACxG,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,SAAS,CAAC,CACzC,CAAC;YACF,QAAQ,GAAI,SAAS,CAAC,CAAC,CAAwC,IAAI,IAAI,CAAC;QAC1E,CAAC;QACD,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE3B,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAEnC,MAAM,eAAe,GAAG,sBAAsB,CAAC;YAC7C,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;YACtB,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;QACH,MAAM,cAAc,GAAG,qBAAqB,CAAC,eAAe,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAC7B;;;;;;;;;;;iCAW2B,EAC3B;YACE,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC;YACjD,eAAe,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI;YAChF,mBAAmB,CAAC,eAAe,CAAC;YACpC,cAAc,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YAC5E,cAAc,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YAC5F,cAAc,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YAC9E,cAAc,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YAC1F,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE;YAC1B,SAAS;SACG,CACf,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAuB,CAAC;QAEjD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;QAC/B,MAAM,QAAQ,CAAC,IAAI,CAAC;YAClB,EAAE,EAAE,UAAU,EAAE;YAChB,IAAI,EAAE,2BAA2B;YACjC,aAAa,EAAE,SAAS;YACxB,WAAW,EAAE,SAAS;YACtB,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,OAAO,EAAE;YACxF,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,MAAM,sBAAsB,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEtE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,OAAgB;QAC3C,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAE5B,MAAM,GAAG,GAAG,OAA6C,CAAC;QAC1D,MAAM,OAAO,GAAG,sBAAsB,CAAC;YACrC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC;YACjB,MAAM,EAAE,GAAG;SACZ,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAc;YACxB,UAAU,EAAE;YACZ,OAAO,CAAC,EAAE;YACV,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;YACvB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC;YACzC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YACxD,mBAAmB,CAAC,OAAO,CAAC;YAC5B,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI;YACzB,MAAM,CAAC,iBAAiB,CAAC,IAAI,IAAI;YACjC,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI;YAC1B,MAAM,CAAC,gBAAgB,CAAC,IAAI,IAAI;YAChC,OAAO,CAAC,QAAQ,IAAI,EAAE;YACtB,MAAM,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI;SAC/C,CAAC;QAEF,MAAM,GAAG,CAAC,MAAM,CACd;gFAC0E,EAC1E,MAAM,CACP,CAAC;IACJ,CAAC;CACF;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC"}
@@ -24,6 +24,7 @@ export interface FieldDefinitionInput {
24
24
  layouts?: FlexibleLayoutInput[];
25
25
  }
26
26
  export interface FieldGroupInput {
27
+ tenantId?: string | null;
27
28
  title: string;
28
29
  key?: string;
29
30
  locationRules?: LocationRule[][];
@@ -37,6 +38,8 @@ export interface FieldGroup extends Omit<FieldGroupInput, 'fields'> {
37
38
  id: string;
38
39
  fields: ResolvedFieldDefinition[];
39
40
  }
41
+ /** A location-resolved group; its field tree has already been filtered. */
42
+ export type ResolvedFieldGroup = FieldGroup;
40
43
  export interface ResolvedFieldDefinition {
41
44
  id: string;
42
45
  type: string;
@@ -69,23 +72,21 @@ export declare class FieldGroupService {
69
72
  getByKey(key: string): Promise<FieldGroup | null>;
70
73
  create(input: FieldGroupInput): Promise<FieldGroup>;
71
74
  update(id: string, patch: Partial<FieldGroupInput>): Promise<FieldGroup | null>;
72
- delete(id: string): Promise<boolean>;
73
- resolveGroupsByLocation(context: LocationContext): Promise<FieldGroup[]>;
75
+ delete(id: string, tenantId?: string): Promise<boolean>;
76
+ /** Removes only the field groups owned by a plugin in one runtime scope. */
77
+ removePluginFields(pluginName: string, tenantId: string | null): Promise<number>;
78
+ resolveGroupsByLocation(context: LocationContext): Promise<ResolvedFieldGroup[]>;
74
79
  toValidatableFields(groups: FieldGroup[]): Promise<ValidatableField[]>;
75
80
  /**
76
- * Valida os valores de campos customizados contra as definições ativas para
77
- * o contexto (usado pelo content service no create/update). Retorna as
78
- * mensagens de erro (vazio = válido). Delega ao motor `validateContentData`,
79
- * que já trata visibilidade condicional, tipos layout-only, required,
80
- * repeaters, layouts, grupos e expansão de clone. Campos core (title/slug/…)
81
- * são removidos antes: seus valores vivem em colunas próprias, não no body.
81
+ * Validates the complete logical value map against the active definitions
82
+ * for a context. Physical storage remains compatible with native columns,
83
+ * but core and custom fields share the same validation pipeline.
82
84
  */
83
85
  validateValues(context: LocationContext, values: Record<string, unknown>): Promise<string[]>;
84
- /** Remove campos core (recursivamente) — não são valores do body. */
85
- private stripCoreFields;
86
86
  private toValidatable;
87
87
  private flattenForValidation;
88
88
  private validateFields;
89
+ private validateResolvedValueNamespace;
89
90
  private getEnabledCoreFields;
90
91
  private filterCoreFields;
91
92
  /**
@@ -105,6 +106,8 @@ export declare class FieldGroupService {
105
106
  /** Insere uma linha de field_definitions (sem recursão) com key única global. */
106
107
  private insertRow;
107
108
  private getDefinitionTree;
109
+ /** Loads all definitions and flexible layouts for a set of groups in two queries. */
110
+ private getDefinitionTrees;
108
111
  private rowToDefinition;
109
112
  private rowToGroup;
110
113
  }
@@ -117,6 +120,8 @@ export declare class FieldTypeExtensionService {
117
120
  * Register a new field type from a plugin.
118
121
  */
119
122
  register(definition: PluginFieldTypeDefinition): Promise<void>;
123
+ /** Reconciles stale declarations after a plugin update. */
124
+ reconcilePlugin(pluginName: string, definitions: PluginFieldTypeDefinition[]): Promise<void>;
120
125
  /**
121
126
  * Unregister a field type by plugin name and type.
122
127
  */
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/fields/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/fields/service.ts"],"names":[],"mappings":"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"}