aiex-cli 0.0.7-beta.1 → 0.0.7-beta.2

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/cli.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { C as PLACEHOLDER_TEXT, D as name, E as description, O as package_default, S as PLACEHOLDER_SCHEMA, T as seedConfig, _ as doctorDiagnosticsTableRows, a as recognizeImageText, b as DEFAULT_MINERU_CONFIG, c as t, d as writeAIConfig, f as AIConfigSchema, h as toSnakeCase, k as version, l as getDefaultAIConfig, m as parseJsonSchema, n as collectDoctorDiagnostics, o as shouldUseImageOcrFallback, p as JsonSchemaDefinitionSchema, r as createMigrationConfig, s as initI18n, t as generateDrizzleSchema, u as readAIConfig, v as formatDoctorDiagnosticsJson, w as createConfig, x as DEFAULT_PROMPT_CONFIG, y as DEFAULT_MINERU_API_CONFIG } from "./generate-drizzle-schema-D0o_j12G.mjs";
1
+ import { C as PLACEHOLDER_TEXT, D as name, E as description, O as package_default, S as PLACEHOLDER_SCHEMA, T as seedConfig, _ as doctorDiagnosticsTableRows, a as recognizeImageText, b as DEFAULT_MINERU_CONFIG, c as t, d as writeAIConfig, f as AIConfigSchema, h as toSnakeCase, k as version, l as getDefaultAIConfig, m as parseJsonSchema, n as collectDoctorDiagnostics, o as shouldUseImageOcrFallback, p as JsonSchemaDefinitionSchema, r as createMigrationConfig, s as initI18n, t as generateDrizzleSchema, u as readAIConfig, v as formatDoctorDiagnosticsJson, w as createConfig, x as DEFAULT_PROMPT_CONFIG, y as DEFAULT_MINERU_API_CONFIG } from "./generate-drizzle-schema-D_oDmf4J.mjs";
2
2
  import { createRequire } from "node:module";
3
3
  import fs from "node:fs/promises";
4
4
  import os from "node:os";
@@ -1500,11 +1500,23 @@ function propertyToDescription(name$1, prop, indent = "") {
1500
1500
  const lines = [];
1501
1501
  let typeStr = prop.type;
1502
1502
  if (prop.type === "array" && prop.items) typeStr = `array of ${prop.items.type}`;
1503
- lines.push(`${indent}- ${name$1}: ${typeStr}`);
1503
+ const tags = [];
1504
+ if (prop.primary) tags.push("primary key");
1505
+ const tagStr = tags.length > 0 ? ` (${tags.join(", ")})` : "";
1506
+ lines.push(`${indent}- ${name$1}: ${typeStr}${tagStr}`);
1507
+ if (prop.description) lines.push(`${indent} description: ${prop.description}`);
1508
+ if (prop.enum && prop.enum.length > 0) lines.push(`${indent} allowed values: ${prop.enum.map((v) => JSON.stringify(v)).join(", ")}`);
1509
+ if (prop.pattern) lines.push(`${indent} pattern: ${prop.pattern}`);
1504
1510
  if (prop.minLength !== void 0 || prop.maxLength !== void 0) lines.push(`${indent} length: ${prop.minLength ?? 0} - ${prop.maxLength ?? "unlimited"}`);
1511
+ if (prop.minimum !== void 0 || prop.maximum !== void 0) lines.push(`${indent} range: ${prop.minimum ?? "-∞"} - ${prop.maximum ?? "∞"}`);
1505
1512
  if (prop.format) lines.push(`${indent} format: ${prop.format}`);
1506
1513
  if (prop.unique) lines.push(`${indent} unique: true`);
1507
1514
  if (prop.default !== void 0) lines.push(`${indent} default: ${JSON.stringify(prop.default)}`);
1515
+ if (prop.examples && prop.examples.length > 0) {
1516
+ const rendered = prop.examples.map((v) => JSON.stringify(v)).join(", ");
1517
+ lines.push(`${indent} examples: ${rendered}`);
1518
+ }
1519
+ if (prop.xPrompt) lines.push(`${indent} extraction hint: ${prop.xPrompt}`);
1508
1520
  return lines.join("\n");
1509
1521
  }
1510
1522
  function nestedPropertyToDescription(name$1, prop, indent = "") {
@@ -2084,13 +2096,9 @@ Please output the corrected JSON object now:`;
2084
2096
 
2085
2097
  //#endregion
2086
2098
  //#region src/infrastructure/extraction/insert-extracted-data.ts
2087
- const DRIZZLE_MODE_RE = /mode:\s*'(\w+)'/;
2088
- function extractDrizzleMode(column) {
2089
- return column.drizzleType.match(DRIZZLE_MODE_RE)?.[1];
2090
- }
2091
2099
  function convertValue(value, column) {
2092
2100
  if (value === null || value === void 0) return null;
2093
- const mode = extractDrizzleMode(column);
2101
+ const mode = column.columnType.class !== "real" ? column.columnType.mode : void 0;
2094
2102
  if (mode === "json") return typeof value === "string" ? value : JSON.stringify(value);
2095
2103
  if (mode === "boolean") return value ? 1 : 0;
2096
2104
  if (mode === "timestamp" || mode === "timestamp_ms") {
@@ -2110,9 +2118,9 @@ function buildInsertSql(table, data) {
2110
2118
  if (col.isAutoIncrement) continue;
2111
2119
  const value = data[col.name];
2112
2120
  if (value === void 0) {
2113
- if (col.defaultValue !== void 0) {
2121
+ if (col.default !== void 0) {
2114
2122
  columns.push(col.name);
2115
- values.push(convertValue(JSON.parse(col.defaultValue), col));
2123
+ values.push(convertValue(col.default, col));
2116
2124
  }
2117
2125
  continue;
2118
2126
  }
@@ -11,7 +11,7 @@ import { z } from "zod";
11
11
 
12
12
  //#region package.json
13
13
  var name = "aiex-cli";
14
- var version = "0.0.7-beta.1";
14
+ var version = "0.0.7-beta.2";
15
15
  var description = "JSON Schema → SQLite with AI-powered data extraction";
16
16
  var package_default = {
17
17
  name,
@@ -296,57 +296,91 @@ function doctorDiagnosticsTableRows(d) {
296
296
  function toSnakeCase(str) {
297
297
  return str.replace(/[A-Z]/g, (letter) => `_${letter.toLowerCase()}`);
298
298
  }
299
- function mapPropertyToColumn(name$1, property, isRequired) {
300
- const snakeName = toSnakeCase(name$1);
301
- let drizzleType;
302
- const isPrimary = property.primary ?? false;
303
- const isAutoIncrement = property.autoIncrement ?? false;
299
+ function mapColumnType(property) {
304
300
  switch (property.type) {
305
301
  case "string": {
306
302
  const format = property.format;
307
- if (format === "date-time" || property.drizzle?.mode === "timestamp") drizzleType = `integer({ mode: 'timestamp' })`;
308
- else if (format === "json" || property.drizzle?.mode === "json") drizzleType = `text({ mode: 'json' })`;
309
- else drizzleType = "text()";
310
- break;
303
+ if (format === "date-time" || property.drizzle?.mode === "timestamp") return {
304
+ class: "integer",
305
+ mode: "timestamp"
306
+ };
307
+ if (format === "json" || property.drizzle?.mode === "json") return {
308
+ class: "text",
309
+ mode: "json"
310
+ };
311
+ return { class: "text" };
311
312
  }
312
313
  case "integer": {
313
314
  const mode = property.drizzle?.mode;
314
- if (mode === "boolean") drizzleType = `integer({ mode: 'boolean' })`;
315
- else if (mode === "timestamp" || mode === "timestamp_ms") drizzleType = `integer({ mode: '${mode}' })`;
316
- else if (mode === "bigint") drizzleType = `integer({ mode: 'bigint' })`;
317
- else drizzleType = "integer()";
318
- break;
315
+ if (mode === "boolean" || mode === "timestamp" || mode === "timestamp_ms" || mode === "bigint") return {
316
+ class: "integer",
317
+ mode
318
+ };
319
+ return { class: "integer" };
319
320
  }
320
- case "number":
321
- drizzleType = "real()";
322
- break;
323
- case "boolean":
324
- drizzleType = `integer({ mode: 'boolean' })`;
325
- break;
321
+ case "number": return { class: "real" };
322
+ case "boolean": return {
323
+ class: "integer",
324
+ mode: "boolean"
325
+ };
326
326
  case "object":
327
- case "array":
328
- drizzleType = `text({ mode: 'json' })`;
329
- break;
327
+ case "array": return {
328
+ class: "text",
329
+ mode: "json"
330
+ };
330
331
  case "null":
331
- drizzleType = "text()";
332
- break;
333
- default: drizzleType = "text()";
332
+ default: return { class: "text" };
334
333
  }
334
+ }
335
+ function mapPropertyToColumn(name$1, property, isRequired) {
335
336
  return {
336
- name: snakeName,
337
- drizzleType,
338
- isPrimary,
339
- isAutoIncrement,
340
- isNullable: !isRequired && !isPrimary,
337
+ name: toSnakeCase(name$1),
338
+ columnType: mapColumnType(property),
339
+ isPrimary: property.primary ?? false,
340
+ isAutoIncrement: property.autoIncrement ?? false,
341
+ isNullable: !isRequired && !property.primary,
341
342
  isUnique: property.unique ?? false,
342
- defaultValue: property.default !== void 0 ? JSON.stringify(property.default) : void 0,
343
+ default: property.default,
343
344
  isForeignKey: property.foreignKey !== void 0,
344
345
  foreignKeyRef: property.foreignKey ?? void 0
345
346
  };
346
347
  }
348
+ function getColumnChecks(prop, colName) {
349
+ const checks = [];
350
+ if (prop.type === "string") {
351
+ if (prop.minLength !== void 0 && prop.minLength > 0) checks.push({
352
+ name: `${colName}_min_length`,
353
+ column: colName,
354
+ kind: "min_length",
355
+ value: prop.minLength
356
+ });
357
+ if (prop.maxLength !== void 0) checks.push({
358
+ name: `${colName}_max_length`,
359
+ column: colName,
360
+ kind: "max_length",
361
+ value: prop.maxLength
362
+ });
363
+ }
364
+ if (prop.type === "integer" || prop.type === "number") {
365
+ if (prop.minimum !== void 0) checks.push({
366
+ name: `${colName}_min`,
367
+ column: colName,
368
+ kind: "min_value",
369
+ value: prop.minimum
370
+ });
371
+ if (prop.maximum !== void 0) checks.push({
372
+ name: `${colName}_max`,
373
+ column: colName,
374
+ kind: "max_value",
375
+ value: prop.maximum
376
+ });
377
+ }
378
+ return checks;
379
+ }
347
380
  function parseObjectToTable(schema, _warnings) {
348
381
  const tableName = schema.table.name;
349
382
  const columns = [];
383
+ const checks = [];
350
384
  const requiredFields = new Set(schema.required ?? []);
351
385
  const autoColumns = /* @__PURE__ */ new Set();
352
386
  if (schema.table.timestamps) {
@@ -361,37 +395,42 @@ function parseObjectToTable(schema, _warnings) {
361
395
  if (autoColumns.has(snakeName)) continue;
362
396
  const column = mapPropertyToColumn(propName, prop, requiredFields.has(propName));
363
397
  columns.push(column);
398
+ checks.push(...getColumnChecks(prop, column.name));
364
399
  }
365
400
  if (schema.table.timestamps) {
366
- columns.push({
401
+ const tsCol = {
367
402
  name: "created_at",
368
- drizzleType: `integer({ mode: 'timestamp' })`,
403
+ columnType: {
404
+ class: "integer",
405
+ mode: "timestamp"
406
+ },
369
407
  isPrimary: false,
370
408
  isAutoIncrement: false,
371
409
  isNullable: false,
372
- isUnique: false,
373
- defaultValue: void 0
374
- });
410
+ isUnique: false
411
+ };
412
+ columns.push(tsCol);
375
413
  columns.push({
376
- name: "updated_at",
377
- drizzleType: `integer({ mode: 'timestamp' })`,
378
- isPrimary: false,
379
- isAutoIncrement: false,
380
- isNullable: false,
381
- isUnique: false,
382
- defaultValue: void 0
414
+ ...tsCol,
415
+ name: "updated_at"
383
416
  });
384
417
  }
385
418
  if (schema.table.softDelete) columns.push({
386
419
  name: "deleted_at",
387
- drizzleType: `integer({ mode: 'timestamp' })`,
420
+ columnType: {
421
+ class: "integer",
422
+ mode: "timestamp"
423
+ },
388
424
  isPrimary: false,
389
425
  isAutoIncrement: false,
390
426
  isNullable: true,
391
- isUnique: false,
392
- defaultValue: void 0
427
+ isUnique: false
393
428
  });
394
- return {
429
+ return checks.length > 0 ? {
430
+ name: tableName,
431
+ columns,
432
+ checks
433
+ } : {
395
434
  name: tableName,
396
435
  columns
397
436
  };
@@ -399,24 +438,23 @@ function parseObjectToTable(schema, _warnings) {
399
438
  function parseNestedObject(propName, property, parentTableName, warnings) {
400
439
  const nestedTableName = `${parentTableName}_${toSnakeCase(propName)}`;
401
440
  const columns = [];
441
+ const checks = [];
402
442
  const relationType = property.nested?.relation === "has-many" ? "has-many" : "has-one";
403
443
  columns.push({
404
444
  name: "id",
405
- drizzleType: "integer()",
445
+ columnType: { class: "integer" },
406
446
  isPrimary: true,
407
447
  isAutoIncrement: true,
408
448
  isNullable: false,
409
- isUnique: false,
410
- defaultValue: void 0
449
+ isUnique: false
411
450
  });
412
451
  columns.push({
413
452
  name: `${parentTableName}_id`,
414
- drizzleType: "integer()",
453
+ columnType: { class: "integer" },
415
454
  isPrimary: false,
416
455
  isAutoIncrement: false,
417
456
  isNullable: false,
418
457
  isUnique: false,
419
- defaultValue: void 0,
420
458
  isForeignKey: true,
421
459
  foreignKeyRef: {
422
460
  table: parentTableName,
@@ -430,6 +468,7 @@ function parseNestedObject(propName, property, parentTableName, warnings) {
430
468
  }
431
469
  const column = mapPropertyToColumn(childName, childProp, false);
432
470
  columns.push(column);
471
+ checks.push(...getColumnChecks(childProp, column.name));
433
472
  }
434
473
  const relation = {
435
474
  fromTable: nestedTableName,
@@ -445,7 +484,11 @@ function parseNestedObject(propName, property, parentTableName, warnings) {
445
484
  name: toSnakeCase(propName)
446
485
  };
447
486
  return {
448
- table: {
487
+ table: checks.length > 0 ? {
488
+ name: nestedTableName,
489
+ columns,
490
+ checks
491
+ } : {
449
492
  name: nestedTableName,
450
493
  columns
451
494
  },
@@ -512,6 +555,8 @@ const JsonSchemaPropertySchema = z.lazy(() => z.object({
512
555
  "null"
513
556
  ]),
514
557
  format: z.string().optional(),
558
+ pattern: z.string().optional(),
559
+ enum: z.array(z.union([z.string(), z.number()])).optional(),
515
560
  primary: z.boolean().optional(),
516
561
  autoIncrement: z.boolean().optional(),
517
562
  unique: z.boolean().optional(),
@@ -520,6 +565,8 @@ const JsonSchemaPropertySchema = z.lazy(() => z.object({
520
565
  minLength: z.number().int().nonnegative().optional(),
521
566
  minimum: z.number().optional(),
522
567
  maximum: z.number().optional(),
568
+ examples: z.array(z.unknown()).optional(),
569
+ xPrompt: z.string().optional(),
523
570
  drizzle: DrizzleExtensionSchema,
524
571
  nested: NestedConfigSchema.optional(),
525
572
  foreignKey: ForeignKeyRefSchema.optional(),
@@ -1531,19 +1578,50 @@ async function collectDoctorDiagnostics(options = {}) {
1531
1578
 
1532
1579
  //#endregion
1533
1580
  //#region src/infrastructure/schema/generate-drizzle-schema.ts
1581
+ function renderColumnType(ct) {
1582
+ switch (ct.class) {
1583
+ case "text": return ct.mode === "json" ? `text({ mode: 'json' })` : "text()";
1584
+ case "integer": return ct.mode ? `integer({ mode: '${ct.mode}' })` : "integer()";
1585
+ case "real": return "real()";
1586
+ }
1587
+ }
1588
+ function renderDefaultValue(value) {
1589
+ return JSON.stringify(value);
1590
+ }
1534
1591
  function generateColumnDefinition(column) {
1535
1592
  if (column.isPrimary && column.isAutoIncrement) return ` ${column.name}: integer().primaryKey({ autoIncrement: true })`;
1536
- let def = ` ${column.name}: ${column.drizzleType}`;
1593
+ let def = ` ${column.name}: ${renderColumnType(column.columnType)}`;
1537
1594
  if (column.isPrimary) def += ".primaryKey()";
1538
1595
  if (!column.isNullable && !column.isPrimary) def += ".notNull()";
1539
1596
  if (column.isUnique && !column.isPrimary) def += ".unique()";
1540
- if (column.defaultValue !== void 0) def += `.default(${column.defaultValue})`;
1597
+ if (column.default !== void 0) def += `.default(${renderDefaultValue(column.default)})`;
1541
1598
  if (column.isForeignKey && column.foreignKeyRef) def += `.references(() => ${column.foreignKeyRef.table}.${column.foreignKeyRef.column})`;
1542
1599
  return def;
1543
1600
  }
1601
+ function renderCheckToDrizzle(check, tableVar) {
1602
+ const colRef = `\${${tableVar}.${check.column}}`;
1603
+ let expr;
1604
+ switch (check.kind) {
1605
+ case "min_length":
1606
+ expr = `length(${colRef}) >= ${check.value}`;
1607
+ break;
1608
+ case "max_length":
1609
+ expr = `length(${colRef}) <= ${check.value}`;
1610
+ break;
1611
+ case "min_value":
1612
+ expr = `${colRef} >= ${check.value}`;
1613
+ break;
1614
+ case "max_value":
1615
+ expr = `${colRef} <= ${check.value}`;
1616
+ break;
1617
+ }
1618
+ return ` ${check.name}: check('${check.name}', sql\`${expr}\`)`;
1619
+ }
1544
1620
  function generateTableDefinition(table) {
1545
1621
  const columns = table.columns.map(generateColumnDefinition);
1546
- return `export const ${table.name} = sqliteTable('${table.name}', {\n${columns.join(",\n")}\n})`;
1622
+ if (!table.checks?.length) return `export const ${table.name} = sqliteTable('${table.name}', {\n${columns.join(",\n")}\n})`;
1623
+ const checkLines = table.checks.map((c) => renderCheckToDrizzle(c, "table"));
1624
+ return `export const ${table.name} = sqliteTable('${table.name}', {\n${columns.join(",\n")}\n}, (table) => ({\n${checkLines.join(",\n")}\n}))`;
1547
1625
  }
1548
1626
  function generateRelationDefinitions(relations, reverseRelations) {
1549
1627
  if (relations.length === 0 && reverseRelations.length === 0) return "";
@@ -1579,7 +1657,7 @@ function generateRelationDefinitions(relations, reverseRelations) {
1579
1657
  return definitions.join("\n\n");
1580
1658
  }
1581
1659
  function generateDrizzleSchema(result) {
1582
- const imports = `import { sqliteTable, text, integer, real } from 'drizzle-orm/sqlite-core'\nimport { relations } from 'drizzle-orm'`;
1660
+ const imports = `import { ${`sqliteTable, text, integer, real${result.tables.some((t$1) => t$1.checks?.length) ? ", check, sql" : ""}`} } from 'drizzle-orm/sqlite-core'\nimport { relations } from 'drizzle-orm'`;
1583
1661
  const tableDefs = result.tables.map(generateTableDefinition).join("\n\n");
1584
1662
  const relationDefs = generateRelationDefinitions(result.relations, result.reverseRelations);
1585
1663
  const parts = [
package/dist/index.d.mts CHANGED
@@ -264,6 +264,8 @@ interface JsonSchemaProperty {
264
264
  description?: string;
265
265
  type: 'string' | 'integer' | 'number' | 'boolean' | 'object' | 'array' | 'null';
266
266
  format?: string;
267
+ pattern?: string;
268
+ enum?: (string | number)[];
267
269
  primary?: boolean;
268
270
  autoIncrement?: boolean;
269
271
  unique?: boolean;
@@ -272,6 +274,8 @@ interface JsonSchemaProperty {
272
274
  minLength?: number;
273
275
  minimum?: number;
274
276
  maximum?: number;
277
+ examples?: unknown[];
278
+ xPrompt?: string;
275
279
  drizzle?: {
276
280
  mode?: 'json' | 'timestamp' | 'timestamp_ms' | 'boolean' | 'bigint';
277
281
  customType?: string;
@@ -288,14 +292,29 @@ interface JsonSchemaProperty {
288
292
  type JsonSchemaDefinition = z.infer<typeof JsonSchemaDefinitionSchema>;
289
293
  //#endregion
290
294
  //#region src/domain/schema/types.d.ts
295
+ type ColumnType = {
296
+ class: 'text';
297
+ mode?: 'json';
298
+ } | {
299
+ class: 'integer';
300
+ mode?: 'boolean' | 'timestamp' | 'timestamp_ms' | 'bigint';
301
+ } | {
302
+ class: 'real';
303
+ };
304
+ interface CheckConstraint {
305
+ name: string;
306
+ column: string;
307
+ kind: 'min_length' | 'max_length' | 'min_value' | 'max_value';
308
+ value: number;
309
+ }
291
310
  interface ParsedColumn {
292
311
  name: string;
293
- drizzleType: string;
312
+ columnType: ColumnType;
294
313
  isPrimary: boolean;
295
314
  isAutoIncrement: boolean;
296
315
  isNullable: boolean;
297
316
  isUnique: boolean;
298
- defaultValue?: string;
317
+ default?: unknown;
299
318
  isForeignKey?: boolean;
300
319
  foreignKeyRef?: {
301
320
  table: string;
@@ -305,6 +324,7 @@ interface ParsedColumn {
305
324
  interface ParsedTable {
306
325
  name: string;
307
326
  columns: ParsedColumn[];
327
+ checks?: CheckConstraint[];
308
328
  }
309
329
  interface ParsedRelation {
310
330
  fromTable: string;
package/dist/index.mjs CHANGED
@@ -1,3 +1,3 @@
1
- import { _ as doctorDiagnosticsTableRows, g as buildDoctorDiagnostics, i as generateDrizzleConfig, m as parseJsonSchema, n as collectDoctorDiagnostics, p as JsonSchemaDefinitionSchema, r as createMigrationConfig, t as generateDrizzleSchema, v as formatDoctorDiagnosticsJson } from "./generate-drizzle-schema-D0o_j12G.mjs";
1
+ import { _ as doctorDiagnosticsTableRows, g as buildDoctorDiagnostics, i as generateDrizzleConfig, m as parseJsonSchema, n as collectDoctorDiagnostics, p as JsonSchemaDefinitionSchema, r as createMigrationConfig, t as generateDrizzleSchema, v as formatDoctorDiagnosticsJson } from "./generate-drizzle-schema-D_oDmf4J.mjs";
2
2
 
3
3
  export { JsonSchemaDefinitionSchema, buildDoctorDiagnostics, collectDoctorDiagnostics, createMigrationConfig, doctorDiagnosticsTableRows, formatDoctorDiagnosticsJson, generateDrizzleConfig, generateDrizzleSchema, parseJsonSchema };
@@ -111,6 +111,24 @@
111
111
  "default": {
112
112
  "description": "Default value for the column. Type should match the column type."
113
113
  },
114
+ "pattern": {
115
+ "type": "string",
116
+ "description": "Regular expression constraint for string values."
117
+ },
118
+ "enum": {
119
+ "type": "array",
120
+ "items": { "type": "string" },
121
+ "description": "Enumeration of allowed values for this field."
122
+ },
123
+ "examples": {
124
+ "type": "array",
125
+ "description": "Example values for this field (injected into AI prompt).",
126
+ "items": {}
127
+ },
128
+ "xPrompt": {
129
+ "type": "string",
130
+ "description": "Custom extraction instruction for this field, overrides the default AI prompt (prefixed with 'x-' to stay valid JSON Schema)."
131
+ },
114
132
  "minLength": {
115
133
  "type": "integer",
116
134
  "minimum": 0,
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/editor.main-DQ658ZNP.js","assets/preload-helper-DWTEM3RW.js","assets/editor.api-C8BHpRhn.js","assets/chunk-DtRyYLXJ.js","assets/editor-BR-TvLsg.css","assets/monaco.contribution-BJhODGkt.js","assets/editor-DPKWm9GW.css"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./chunk-DtRyYLXJ.js";import{$ as t,A as n,C as r,D as i,E as a,G as o,H as s,I as c,It as l,J as u,Jt as d,K as f,L as p,M as m,Mt as h,O as g,Ot as _,P as v,Pt as y,Rt as b,S as x,T as S,U as C,Ut as w,Vt as T,W as E,X as D,Y as ee,Z as te,an as ne,dt as re,en as O,et as ie,fn as ae,g as oe,gn as k,gt as A,ht as j,i as se,it as ce,lt as M,m as le,n as ue,o as de,on as N,pn as fe,q as P,r as pe,rn as me,rt as F,s as he,tt as ge,u as _e,vt as ve,w as I,x as L,y as R,yt as z}from"./vue-i18n-Du42D0vb.js";import{r as ye,t as be}from"./dialog-CnZ7jH1l.js";import{r as xe,t as Se}from"./object-utils-C6FkG7fw.js";import{r as Ce}from"./dist-CElVIpns.js";import{t as we}from"./preload-helper-DWTEM3RW.js";import{a as Te,i as Ee,n as De,o as Oe,t as ke}from"./textarea-DMpqBhjw.js";var Ae=_e.extend({name:`tabpanel`,classes:{root:function(e){return[`p-tabpanel`,{"p-tabpanel-active":e.instance.active}]}}}),je={name:`TabPanel`,extends:{name:`BaseTabPanel`,extends:he,props:{value:{type:[String,Number],default:void 0},as:{type:[String,Object],default:`DIV`},asChild:{type:Boolean,default:!1},header:null,headerStyle:null,headerClass:null,headerProps:null,headerActionProps:null,contentStyle:null,contentClass:null,contentProps:null,disabled:Boolean},style:Ae,provide:function(){return{$pcTabPanel:this,$parentInstance:this}}},inheritAttrs:!1,inject:[`$pcTabs`],computed:{active:function(){return ae(this.$pcTabs?.d_value,this.value)},id:function(){return`${this.$pcTabs?.$id}_tabpanel_${this.value}`},ariaLabelledby:function(){return`${this.$pcTabs?.$id}_tab_${this.value}`},attrs:function(){return p(this.a11yAttrs,this.ptmi(`root`,this.ptParams))},a11yAttrs:function(){return{id:this.id,tabindex:this.$pcTabs?.tabindex,role:`tabpanel`,"aria-labelledby":this.ariaLabelledby,"data-pc-name":`tabpanel`,"data-p-active":this.active}},ptParams:function(){return{context:{active:this.active}}}}};function Me(e,t,n,i,a,o){var s,c;return o.$pcTabs?(E(),S(R,{key:1},[e.asChild?P(e.$slots,`default`,{key:1,class:A(e.cx(`root`)),active:o.active,a11yAttrs:o.a11yAttrs}):(E(),S(R,{key:0},[!((s=o.$pcTabs)!=null&&s.lazy)||o.active?ce((E(),r(D(e.as),p({key:0,class:e.cx(`root`)},o.attrs),{default:F(function(){return[P(e.$slots,`default`)]}),_:3},16,[`class`])),[[oe,(c=o.$pcTabs)!=null&&c.lazy?!0:o.active]]):I(``,!0)],64))],64)):P(e.$slots,`default`,{key:0})}je.render=Me;var Ne=_e.extend({name:`tab`,classes:{root:function(e){var t=e.instance,n=e.props;return[`p-tab`,{"p-tab-active":t.active,"p-disabled":n.disabled}]}}}),Pe={name:`Tab`,extends:{name:`BaseTab`,extends:he,props:{value:{type:[String,Number],default:void 0},disabled:{type:Boolean,default:!1},as:{type:[String,Object],default:`BUTTON`},asChild:{type:Boolean,default:!1}},style:Ne,provide:function(){return{$pcTab:this,$parentInstance:this}}},inheritAttrs:!1,inject:[`$pcTabs`,`$pcTabList`],methods:{onFocus:function(){this.$pcTabs.selectOnFocus&&this.changeActiveValue()},onClick:function(){this.changeActiveValue()},onKeydown:function(e){switch(e.code){case`ArrowRight`:this.onArrowRightKey(e);break;case`ArrowLeft`:this.onArrowLeftKey(e);break;case`Home`:this.onHomeKey(e);break;case`End`:this.onEndKey(e);break;case`PageDown`:this.onPageDownKey(e);break;case`PageUp`:this.onPageUpKey(e);break;case`Enter`:case`NumpadEnter`:case`Space`:this.onEnterKey(e);break}},onArrowRightKey:function(e){var t=this.findNextTab(e.currentTarget);t?this.changeFocusedTab(e,t):this.onHomeKey(e),e.preventDefault()},onArrowLeftKey:function(e){var t=this.findPrevTab(e.currentTarget);t?this.changeFocusedTab(e,t):this.onEndKey(e),e.preventDefault()},onHomeKey:function(e){var t=this.findFirstTab();this.changeFocusedTab(e,t),e.preventDefault()},onEndKey:function(e){var t=this.findLastTab();this.changeFocusedTab(e,t),e.preventDefault()},onPageDownKey:function(e){this.scrollInView(this.findLastTab()),e.preventDefault()},onPageUpKey:function(e){this.scrollInView(this.findFirstTab()),e.preventDefault()},onEnterKey:function(e){this.changeActiveValue()},findNextTab:function(e){var t=arguments.length>1&&arguments[1]!==void 0&&arguments[1]?e:e.nextElementSibling;return t?l(t,`data-p-disabled`)||l(t,`data-pc-section`)===`activebar`?this.findNextTab(t):ne(t,`[data-pc-name="tab"]`):null},findPrevTab:function(e){var t=arguments.length>1&&arguments[1]!==void 0&&arguments[1]?e:e.previousElementSibling;return t?l(t,`data-p-disabled`)||l(t,`data-pc-section`)===`activebar`?this.findPrevTab(t):ne(t,`[data-pc-name="tab"]`):null},findFirstTab:function(){return this.findNextTab(this.$pcTabList.$refs.tabs.firstElementChild,!0)},findLastTab:function(){return this.findPrevTab(this.$pcTabList.$refs.tabs.lastElementChild,!0)},changeActiveValue:function(){this.$pcTabs.updateValue(this.value)},changeFocusedTab:function(e,t){d(t),this.scrollInView(t)},scrollInView:function(e){var t;e==null||(t=e.scrollIntoView)==null||t.call(e,{block:`nearest`})}},computed:{active:function(){return ae(this.$pcTabs?.d_value,this.value)},id:function(){return`${this.$pcTabs?.$id}_tab_${this.value}`},ariaControls:function(){return`${this.$pcTabs?.$id}_tabpanel_${this.value}`},attrs:function(){return p(this.asAttrs,this.a11yAttrs,this.ptmi(`root`,this.ptParams))},asAttrs:function(){return this.as===`BUTTON`?{type:`button`,disabled:this.disabled}:void 0},a11yAttrs:function(){return{id:this.id,tabindex:this.active?this.$pcTabs.tabindex:-1,role:`tab`,"aria-selected":this.active,"aria-controls":this.ariaControls,"data-pc-name":`tab`,"data-p-disabled":this.disabled,"data-p-active":this.active,onFocus:this.onFocus,onKeydown:this.onKeydown}},ptParams:function(){return{context:{active:this.active}}},dataP:function(){return N({active:this.active})}},directives:{ripple:se}};function Fe(e,t,n,i,a,o){var s=ee(`ripple`);return e.asChild?P(e.$slots,`default`,{key:1,dataP:o.dataP,class:A(e.cx(`root`)),active:o.active,a11yAttrs:o.a11yAttrs,onClick:o.onClick}):ce((E(),r(D(e.as),p({key:0,class:e.cx(`root`),"data-p":o.dataP,onClick:o.onClick},o.attrs),{default:F(function(){return[P(e.$slots,`default`)]}),_:3},16,[`class`,`data-p`,`onClick`])),[[s]])}Pe.render=Fe;var Ie={name:`ChevronLeftIcon`,extends:de};function Le(e){return Ve(e)||Be(e)||ze(e)||Re()}function Re(){throw TypeError(`Invalid attempt to spread non-iterable instance.
2
+ import{t as e}from"./chunk-DtRyYLXJ.js";import{$ as t,A as n,C as r,D as i,E as a,G as o,H as s,I as c,It as l,J as u,Jt as d,K as f,L as p,M as m,Mt as h,O as g,Ot as _,P as v,Pt as y,Rt as b,S as x,T as S,U as C,Ut as w,Vt as T,W as E,X as D,Y as ee,Z as te,an as ne,dt as re,en as O,et as ie,fn as ae,g as oe,gn as k,gt as A,ht as j,i as se,it as ce,lt as M,m as le,n as ue,o as de,on as N,pn as fe,q as P,r as pe,rn as me,rt as F,s as he,tt as ge,u as _e,vt as ve,w as I,x as L,y as R,yt as z}from"./vue-i18n-Du42D0vb.js";import{r as ye,t as be}from"./dialog-CnZ7jH1l.js";import{r as xe,t as Se}from"./object-utils-CqCiBqJ4.js";import{r as Ce}from"./dist-CElVIpns.js";import{t as we}from"./preload-helper-DWTEM3RW.js";import{a as Te,i as Ee,n as De,o as Oe,t as ke}from"./textarea-DMpqBhjw.js";var Ae=_e.extend({name:`tabpanel`,classes:{root:function(e){return[`p-tabpanel`,{"p-tabpanel-active":e.instance.active}]}}}),je={name:`TabPanel`,extends:{name:`BaseTabPanel`,extends:he,props:{value:{type:[String,Number],default:void 0},as:{type:[String,Object],default:`DIV`},asChild:{type:Boolean,default:!1},header:null,headerStyle:null,headerClass:null,headerProps:null,headerActionProps:null,contentStyle:null,contentClass:null,contentProps:null,disabled:Boolean},style:Ae,provide:function(){return{$pcTabPanel:this,$parentInstance:this}}},inheritAttrs:!1,inject:[`$pcTabs`],computed:{active:function(){return ae(this.$pcTabs?.d_value,this.value)},id:function(){return`${this.$pcTabs?.$id}_tabpanel_${this.value}`},ariaLabelledby:function(){return`${this.$pcTabs?.$id}_tab_${this.value}`},attrs:function(){return p(this.a11yAttrs,this.ptmi(`root`,this.ptParams))},a11yAttrs:function(){return{id:this.id,tabindex:this.$pcTabs?.tabindex,role:`tabpanel`,"aria-labelledby":this.ariaLabelledby,"data-pc-name":`tabpanel`,"data-p-active":this.active}},ptParams:function(){return{context:{active:this.active}}}}};function Me(e,t,n,i,a,o){var s,c;return o.$pcTabs?(E(),S(R,{key:1},[e.asChild?P(e.$slots,`default`,{key:1,class:A(e.cx(`root`)),active:o.active,a11yAttrs:o.a11yAttrs}):(E(),S(R,{key:0},[!((s=o.$pcTabs)!=null&&s.lazy)||o.active?ce((E(),r(D(e.as),p({key:0,class:e.cx(`root`)},o.attrs),{default:F(function(){return[P(e.$slots,`default`)]}),_:3},16,[`class`])),[[oe,(c=o.$pcTabs)!=null&&c.lazy?!0:o.active]]):I(``,!0)],64))],64)):P(e.$slots,`default`,{key:0})}je.render=Me;var Ne=_e.extend({name:`tab`,classes:{root:function(e){var t=e.instance,n=e.props;return[`p-tab`,{"p-tab-active":t.active,"p-disabled":n.disabled}]}}}),Pe={name:`Tab`,extends:{name:`BaseTab`,extends:he,props:{value:{type:[String,Number],default:void 0},disabled:{type:Boolean,default:!1},as:{type:[String,Object],default:`BUTTON`},asChild:{type:Boolean,default:!1}},style:Ne,provide:function(){return{$pcTab:this,$parentInstance:this}}},inheritAttrs:!1,inject:[`$pcTabs`,`$pcTabList`],methods:{onFocus:function(){this.$pcTabs.selectOnFocus&&this.changeActiveValue()},onClick:function(){this.changeActiveValue()},onKeydown:function(e){switch(e.code){case`ArrowRight`:this.onArrowRightKey(e);break;case`ArrowLeft`:this.onArrowLeftKey(e);break;case`Home`:this.onHomeKey(e);break;case`End`:this.onEndKey(e);break;case`PageDown`:this.onPageDownKey(e);break;case`PageUp`:this.onPageUpKey(e);break;case`Enter`:case`NumpadEnter`:case`Space`:this.onEnterKey(e);break}},onArrowRightKey:function(e){var t=this.findNextTab(e.currentTarget);t?this.changeFocusedTab(e,t):this.onHomeKey(e),e.preventDefault()},onArrowLeftKey:function(e){var t=this.findPrevTab(e.currentTarget);t?this.changeFocusedTab(e,t):this.onEndKey(e),e.preventDefault()},onHomeKey:function(e){var t=this.findFirstTab();this.changeFocusedTab(e,t),e.preventDefault()},onEndKey:function(e){var t=this.findLastTab();this.changeFocusedTab(e,t),e.preventDefault()},onPageDownKey:function(e){this.scrollInView(this.findLastTab()),e.preventDefault()},onPageUpKey:function(e){this.scrollInView(this.findFirstTab()),e.preventDefault()},onEnterKey:function(e){this.changeActiveValue()},findNextTab:function(e){var t=arguments.length>1&&arguments[1]!==void 0&&arguments[1]?e:e.nextElementSibling;return t?l(t,`data-p-disabled`)||l(t,`data-pc-section`)===`activebar`?this.findNextTab(t):ne(t,`[data-pc-name="tab"]`):null},findPrevTab:function(e){var t=arguments.length>1&&arguments[1]!==void 0&&arguments[1]?e:e.previousElementSibling;return t?l(t,`data-p-disabled`)||l(t,`data-pc-section`)===`activebar`?this.findPrevTab(t):ne(t,`[data-pc-name="tab"]`):null},findFirstTab:function(){return this.findNextTab(this.$pcTabList.$refs.tabs.firstElementChild,!0)},findLastTab:function(){return this.findPrevTab(this.$pcTabList.$refs.tabs.lastElementChild,!0)},changeActiveValue:function(){this.$pcTabs.updateValue(this.value)},changeFocusedTab:function(e,t){d(t),this.scrollInView(t)},scrollInView:function(e){var t;e==null||(t=e.scrollIntoView)==null||t.call(e,{block:`nearest`})}},computed:{active:function(){return ae(this.$pcTabs?.d_value,this.value)},id:function(){return`${this.$pcTabs?.$id}_tab_${this.value}`},ariaControls:function(){return`${this.$pcTabs?.$id}_tabpanel_${this.value}`},attrs:function(){return p(this.asAttrs,this.a11yAttrs,this.ptmi(`root`,this.ptParams))},asAttrs:function(){return this.as===`BUTTON`?{type:`button`,disabled:this.disabled}:void 0},a11yAttrs:function(){return{id:this.id,tabindex:this.active?this.$pcTabs.tabindex:-1,role:`tab`,"aria-selected":this.active,"aria-controls":this.ariaControls,"data-pc-name":`tab`,"data-p-disabled":this.disabled,"data-p-active":this.active,onFocus:this.onFocus,onKeydown:this.onKeydown}},ptParams:function(){return{context:{active:this.active}}},dataP:function(){return N({active:this.active})}},directives:{ripple:se}};function Fe(e,t,n,i,a,o){var s=ee(`ripple`);return e.asChild?P(e.$slots,`default`,{key:1,dataP:o.dataP,class:A(e.cx(`root`)),active:o.active,a11yAttrs:o.a11yAttrs,onClick:o.onClick}):ce((E(),r(D(e.as),p({key:0,class:e.cx(`root`),"data-p":o.dataP,onClick:o.onClick},o.attrs),{default:F(function(){return[P(e.$slots,`default`)]}),_:3},16,[`class`,`data-p`,`onClick`])),[[s]])}Pe.render=Fe;var Ie={name:`ChevronLeftIcon`,extends:de};function Le(e){return Ve(e)||Be(e)||ze(e)||Re()}function Re(){throw TypeError(`Invalid attempt to spread non-iterable instance.
3
3
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ze(e,t){if(e){if(typeof e==`string`)return He(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?He(e,t):void 0}}function Be(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}function Ve(e){if(Array.isArray(e))return He(e)}function He(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Ue(e,t,n,r,i,a){return E(),S(`svg`,p({width:`14`,height:`14`,viewBox:`0 0 14 14`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`},e.pti()),Le(t[0]||=[x(`path`,{d:`M9.61296 13C9.50997 13.0005 9.40792 12.9804 9.3128 12.9409C9.21767 12.9014 9.13139 12.8433 9.05902 12.7701L3.83313 7.54416C3.68634 7.39718 3.60388 7.19795 3.60388 6.99022C3.60388 6.78249 3.68634 6.58325 3.83313 6.43628L9.05902 1.21039C9.20762 1.07192 9.40416 0.996539 9.60724 1.00012C9.81032 1.00371 10.0041 1.08597 10.1477 1.22959C10.2913 1.37322 10.3736 1.56698 10.3772 1.77005C10.3808 1.97313 10.3054 2.16968 10.1669 2.31827L5.49496 6.99022L10.1669 11.6622C10.3137 11.8091 10.3962 12.0084 10.3962 12.2161C10.3962 12.4238 10.3137 12.6231 10.1669 12.7701C10.0945 12.8433 10.0083 12.9014 9.91313 12.9409C9.81801 12.9804 9.71596 13.0005 9.61296 13Z`,fill:`currentColor`},null,-1)]),16)}Ie.render=Ue;var We={name:`ChevronRightIcon`,extends:de};function Ge(e){return Ye(e)||Je(e)||qe(e)||Ke()}function Ke(){throw TypeError(`Invalid attempt to spread non-iterable instance.
4
4
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function qe(e,t){if(e){if(typeof e==`string`)return Xe(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Xe(e,t):void 0}}function Je(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}function Ye(e){if(Array.isArray(e))return Xe(e)}function Xe(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Ze(e,t,n,r,i,a){return E(),S(`svg`,p({width:`14`,height:`14`,viewBox:`0 0 14 14`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`},e.pti()),Ge(t[0]||=[x(`path`,{d:`M4.38708 13C4.28408 13.0005 4.18203 12.9804 4.08691 12.9409C3.99178 12.9014 3.9055 12.8433 3.83313 12.7701C3.68634 12.6231 3.60388 12.4238 3.60388 12.2161C3.60388 12.0084 3.68634 11.8091 3.83313 11.6622L8.50507 6.99022L3.83313 2.31827C3.69467 2.16968 3.61928 1.97313 3.62287 1.77005C3.62645 1.56698 3.70872 1.37322 3.85234 1.22959C3.99596 1.08597 4.18972 1.00371 4.3928 1.00012C4.59588 0.996539 4.79242 1.07192 4.94102 1.21039L10.1669 6.43628C10.3137 6.58325 10.3962 6.78249 10.3962 6.99022C10.3962 7.19795 10.3137 7.39718 10.1669 7.54416L4.94102 12.7701C4.86865 12.8433 4.78237 12.9014 4.68724 12.9409C4.59212 12.9804 4.49007 13.0005 4.38708 13Z`,fill:`currentColor`},null,-1)]),16)}We.render=Ze;var Qe={name:`TabList`,extends:{name:`BaseTabList`,extends:he,props:{},style:_e.extend({name:`tablist`,classes:{root:`p-tablist`,content:`p-tablist-content p-tablist-viewport`,tabList:`p-tablist-tab-list`,activeBar:`p-tablist-active-bar`,prevButton:`p-tablist-prev-button p-tablist-nav-button`,nextButton:`p-tablist-next-button p-tablist-nav-button`}}),provide:function(){return{$pcTabList:this,$parentInstance:this}}},inheritAttrs:!1,inject:[`$pcTabs`],data:function(){return{isPrevButtonEnabled:!1,isNextButtonEnabled:!0}},resizeObserver:void 0,inkBarObserver:void 0,watch:{showNavigators:function(e){e?this.bindResizeObserver():this.unbindResizeObserver()},activeValue:{flush:`post`,handler:function(){this.updateInkBar(),this.bindInkBarObserver()}}},mounted:function(){var e=this;setTimeout(function(){e.updateInkBar(),e.bindInkBarObserver()},150),this.showNavigators&&(this.updateButtonState(),this.bindResizeObserver())},updated:function(){this.showNavigators&&this.updateButtonState()},beforeUnmount:function(){this.unbindResizeObserver(),this.unbindInkBarObserver()},methods:{onScroll:function(e){this.showNavigators&&this.updateButtonState(),e.preventDefault()},onPrevButtonClick:function(){var e=this.$refs.content,t=this.getVisibleButtonWidths(),n=b(e)-t,r=Math.abs(e.scrollLeft)-n*.8,i=Math.max(r,0);e.scrollLeft=w(e)?-1*i:i},onNextButtonClick:function(){var e=this.$refs.content,t=this.getVisibleButtonWidths(),n=b(e)-t,r=Math.abs(e.scrollLeft)+n*.8,i=e.scrollWidth-n,a=Math.min(r,i);e.scrollLeft=w(e)?-1*a:a},bindResizeObserver:function(){var e=this;this.resizeObserver=new ResizeObserver(function(){return e.updateButtonState()}),this.resizeObserver.observe(this.$refs.list)},unbindResizeObserver:function(){var e;(e=this.resizeObserver)==null||e.unobserve(this.$refs.list),this.resizeObserver=void 0},bindInkBarObserver:function(){var e=this;this.unbindInkBarObserver();var t=this.$refs.content,n=ne(t,`[data-pc-name="tab"][data-p-active="true"]`);n&&(this.inkBarObserver=new ResizeObserver(function(){return e.updateInkBar()}),this.inkBarObserver.observe(n))},unbindInkBarObserver:function(){var e;(e=this.inkBarObserver)==null||e.disconnect(),this.inkBarObserver=void 0},updateInkBar:function(){var e=this.$refs,t=e.content,n=e.inkbar,r=e.tabs;if(n){var i=ne(t,`[data-pc-name="tab"][data-p-active="true"]`);this.$pcTabs.isVertical()?(n.style.height=_(i)+`px`,n.style.top=h(i).top-h(r).top+`px`):(n.style.width=me(i)+`px`,n.style.left=h(i).left-h(r).left+`px`)}},updateButtonState:function(){var e=this.$refs,t=e.list,n=e.content,r=n.scrollTop,i=n.scrollWidth,a=n.scrollHeight,o=n.offsetWidth,s=n.offsetHeight,c=Math.abs(n.scrollLeft),l=[b(n),T(n)],u=l[0],d=l[1];this.$pcTabs.isVertical()?(this.isPrevButtonEnabled=r!==0,this.isNextButtonEnabled=t.offsetHeight>=s&&parseInt(r)!==a-d):(this.isPrevButtonEnabled=c!==0,this.isNextButtonEnabled=t.offsetWidth>=o&&parseInt(c)!==i-u)},getVisibleButtonWidths:function(){var e=this.$refs,t=e.prevButton,n=e.nextButton,r=0;return this.showNavigators&&(r=(t?.offsetWidth||0)+(n?.offsetWidth||0)),r}},computed:{templates:function(){return this.$pcTabs.$slots},activeValue:function(){return this.$pcTabs.d_value},showNavigators:function(){return this.$pcTabs.showNavigators},prevButtonAriaLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.previous:void 0},nextButtonAriaLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.next:void 0},dataP:function(){return N({scrollable:this.$pcTabs.scrollable})}},components:{ChevronLeftIcon:Ie,ChevronRightIcon:We},directives:{ripple:se}},$e=[`data-p`],et=[`aria-label`,`tabindex`],tt=[`data-p`],nt=[`aria-orientation`],rt=[`aria-label`,`tabindex`];function it(e,t,n,i,a,o){var s=ee(`ripple`);return E(),S(`div`,p({ref:`list`,class:e.cx(`root`),"data-p":o.dataP},e.ptmi(`root`)),[o.showNavigators&&a.isPrevButtonEnabled?ce((E(),S(`button`,p({key:0,ref:`prevButton`,type:`button`,class:e.cx(`prevButton`),"aria-label":o.prevButtonAriaLabel,tabindex:o.$pcTabs.tabindex,onClick:t[0]||=function(){return o.onPrevButtonClick&&o.onPrevButtonClick.apply(o,arguments)}},e.ptm(`prevButton`),{"data-pc-group-section":`navigator`}),[(E(),r(D(o.templates.previcon||`ChevronLeftIcon`),p({"aria-hidden":`true`},e.ptm(`prevIcon`)),null,16))],16,et)),[[s]]):I(``,!0),x(`div`,p({ref:`content`,class:e.cx(`content`),onScroll:t[1]||=function(){return o.onScroll&&o.onScroll.apply(o,arguments)},"data-p":o.dataP},e.ptm(`content`)),[x(`div`,p({ref:`tabs`,class:e.cx(`tabList`),role:`tablist`,"aria-orientation":o.$pcTabs.orientation||`horizontal`},e.ptm(`tabList`)),[P(e.$slots,`default`),x(`span`,p({ref:`inkbar`,class:e.cx(`activeBar`),role:`presentation`,"aria-hidden":`true`},e.ptm(`activeBar`)),null,16)],16,nt)],16,tt),o.showNavigators&&a.isNextButtonEnabled?ce((E(),S(`button`,p({key:1,ref:`nextButton`,type:`button`,class:e.cx(`nextButton`),"aria-label":o.nextButtonAriaLabel,tabindex:o.$pcTabs.tabindex,onClick:t[2]||=function(){return o.onNextButtonClick&&o.onNextButtonClick.apply(o,arguments)}},e.ptm(`nextButton`),{"data-pc-group-section":`navigator`}),[(E(),r(D(o.templates.nexticon||`ChevronRightIcon`),p({"aria-hidden":`true`},e.ptm(`nextIcon`)),null,16))],16,rt)),[[s]]):I(``,!0)],16,$e)}Qe.render=it;var at={name:`TabPanels`,extends:{name:`BaseTabPanels`,extends:he,props:{},style:_e.extend({name:`tabpanels`,classes:{root:`p-tabpanels`}}),provide:function(){return{$pcTabPanels:this,$parentInstance:this}}},inheritAttrs:!1};function ot(e,t,n,r,i,a){return E(),S(`div`,p({class:e.cx(`root`),role:`presentation`},e.ptmi(`root`)),[P(e.$slots,`default`)],16)}at.render=ot;var st=_e.extend({name:`tabs`,style:`
5
5
  .p-tabs {