@zentto/studio 0.3.2 → 0.4.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.
@@ -40,6 +40,11 @@ export declare class ZsPageDesigner extends LitElement {
40
40
  private getPreviewContent;
41
41
  private renderRightPanel;
42
42
  private renderFormProperties;
43
+ private apiSources;
44
+ private apiLoading;
45
+ private renderApiPanel;
46
+ private fetchApiFields;
47
+ private extractFieldNames;
43
48
  private renderToggle;
44
49
  private toggleSection;
45
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"zs-page-designer.d.ts","sourceRoot":"","sources":["../../src/designer/zs-page-designer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAiC,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAGrF,OAAO,KAAK,EAAE,YAAY,EAAmC,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGzG,OAAO,8BAA8B,CAAC;AAkDtC,qBACa,cAAe,SAAQ,UAAU;IAC5C,MAAM,CAAC,MAAM,0BAyVX;IAI0B,MAAM,EAAE,YAAY,GAAG,IAAI,CAAQ;IACnC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IACnC,QAAQ,EAAE,cAAc,CAAM;IACH,UAAU,SAAQ;IACrB,QAAQ,SAAK;IAIxD,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,OAAO,CAAC,IAAI,CAAK;IAG1B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,SAAS,CAA8C;IAI/D,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAQrC,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,IAAI;IAQZ,OAAO,CAAC,IAAI;IAQZ,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,UAAU;IAqBlB,OAAO,KAAK,aAAa,GAOxB;IAED,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,QAAQ;IAqBhB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,cAAc;IAatB,MAAM;IAeN,OAAO,CAAC,aAAa;IA+CrB,OAAO,CAAC,eAAe;IAwDvB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,iBAAiB;IAyCzB,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,gBAAgB;IA6FxB,OAAO,CAAC,oBAAoB;IAY5B,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,aAAa;CAKtB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,kBAAkB,EAAE,cAAc,CAAC;KACpC;CACF"}
1
+ {"version":3,"file":"zs-page-designer.d.ts","sourceRoot":"","sources":["../../src/designer/zs-page-designer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAiC,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAGrF,OAAO,KAAK,EAAE,YAAY,EAAmC,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGzG,OAAO,8BAA8B,CAAC;AAkDtC,qBACa,cAAe,SAAQ,UAAU;IAC5C,MAAM,CAAC,MAAM,0BAicX;IAI0B,MAAM,EAAE,YAAY,GAAG,IAAI,CAAQ;IACnC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IACnC,QAAQ,EAAE,cAAc,CAAM;IACH,UAAU,SAAQ;IACrB,QAAQ,SAAK;IAIxD,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,OAAO,CAA2C;IAC1D,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,OAAO,CAAC,IAAI,CAAK;IAG1B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,SAAS,CAA8C;IAI/D,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAQrC,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,IAAI;IAQZ,OAAO,CAAC,IAAI;IAQZ,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,UAAU;IAqBlB,OAAO,KAAK,aAAa,GAOxB;IAED,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,QAAQ;IAqBhB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,cAAc;IAatB,MAAM;IAeN,OAAO,CAAC,aAAa;IA+CrB,OAAO,CAAC,eAAe;IA4DvB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,iBAAiB;IAyCzB,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,gBAAgB;IAuIxB,OAAO,CAAC,oBAAoB;IA6BnB,OAAO,CAAC,UAAU,CAA0F;IAC5G,OAAO,CAAC,UAAU,CAAS;IAEpC,OAAO,CAAC,cAAc;YAiGR,cAAc;IA4C5B,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,aAAa;CAKtB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,kBAAkB,EAAE,cAAc,CAAC;KACpC;CACF"}
@@ -78,6 +78,9 @@ let ZsPageDesigner = class ZsPageDesigner extends LitElement {
78
78
  this.undoStack = [];
79
79
  this.redoStack = [];
80
80
  this.saveTimer = null;
81
+ // ─── API Panel (Data Sources) ──────────────────────
82
+ this.apiSources = [];
83
+ this.apiLoading = false;
81
84
  }
82
85
  static { this.styles = css `
83
86
  :host {
@@ -319,110 +322,214 @@ let ZsPageDesigner = class ZsPageDesigner extends LitElement {
319
322
  }
320
323
  .drop-zone--active { border-color: var(--zrd-accent); background: var(--zrd-accent-light); color: var(--zrd-accent); }
321
324
 
322
- /* ─── Right Panel (Properties) ────────────── */
325
+ /* ─── Right Panel (Properties — Figma-quality) ──── */
323
326
  .right-panel {
324
327
  background: var(--zrd-panel-bg);
325
328
  border-left: 1px solid var(--zrd-border);
326
- overflow-y: auto;
329
+ overflow-y: auto; font-size: 11px;
327
330
  }
328
- .right-panel::-webkit-scrollbar { width: 6px; }
329
- .right-panel::-webkit-scrollbar-thumb { background: #ccc; border-radius: 3px; }
331
+ .right-panel::-webkit-scrollbar { width: 5px; }
332
+ .right-panel::-webkit-scrollbar-thumb { background: #d4d4d4; border-radius: 3px; }
333
+ .right-panel::-webkit-scrollbar-thumb:hover { background: #bbb; }
330
334
 
331
- /* Property sections (Figma-style) */
332
- .prop-section { border-bottom: 1px solid var(--zrd-border); padding: 10px 12px; }
335
+ /* Prop Section */
336
+ .prop-section { border-bottom: 1px solid #eee; padding: 8px 10px 10px; }
333
337
  .prop-section:last-child { border-bottom: none; }
334
338
  .prop-section-header {
335
- display: flex; align-items: center; justify-content: space-between;
336
- cursor: pointer; user-select: none; margin-bottom: 8px;
339
+ display: flex; align-items: center; gap: 6px;
340
+ cursor: pointer; user-select: none; margin-bottom: 6px; padding: 2px 0;
337
341
  }
338
342
  .prop-section-header h4 {
339
- font-size: 11px; font-weight: 600; text-transform: uppercase;
340
- letter-spacing: 0.5px; margin: 0;
343
+ font-size: 10px; font-weight: 700; text-transform: uppercase;
344
+ letter-spacing: 0.6px; margin: 0; flex: 1;
341
345
  }
342
- .prop-section-header[data-section="general"] h4 { color: var(--zrd-accent); }
346
+ .prop-section-header[data-section="general"] h4 { color: #1976d2; }
343
347
  .prop-section-header[data-section="layout"] h4 { color: #7c3aed; }
344
348
  .prop-section-header[data-section="behavior"] h4 { color: #0d9488; }
345
349
  .prop-section-header[data-section="rules"] h4 { color: #ea580c; }
346
- .prop-section-header[data-section="form"] h4 { color: var(--zrd-accent); }
347
- .collapse-icon { font-size: 10px; color: var(--zrd-text-muted); transition: transform 0.15s; }
350
+ .prop-section-header[data-section="style"] h4 { color: #c2185b; }
351
+ .prop-section-header[data-section="form"] h4 { color: #1976d2; }
352
+ .collapse-icon {
353
+ font-size: 8px; color: #bbb; transition: transform 0.15s;
354
+ width: 14px; height: 14px; display: flex; align-items: center;
355
+ justify-content: center; border-radius: 3px;
356
+ }
357
+ .collapse-icon:hover { background: #f0f0f0; color: #666; }
348
358
  .collapse-icon--collapsed { transform: rotate(-90deg); }
349
359
 
350
- /* Property rows (Figma-style) */
360
+ /* Prop Rows */
351
361
  .prop-row {
352
- display: grid; grid-template-columns: 68px 1fr;
353
- align-items: center; gap: 6px; min-height: 28px;
362
+ display: grid; grid-template-columns: 62px 1fr;
363
+ align-items: center; gap: 4px; min-height: 26px; margin-bottom: 1px;
354
364
  }
355
- .prop-row-full { grid-template-columns: 1fr; }
365
+ .prop-row-full { grid-template-columns: 1fr; margin-bottom: 3px; }
356
366
  .prop-label {
357
- font-size: 11px; color: var(--zrd-text-muted);
358
- white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-left: 2px;
367
+ font-size: 11px; color: #999; font-weight: 400;
368
+ white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
369
+ padding-left: 1px; line-height: 1;
359
370
  }
371
+
372
+ /* ─ Figma-style input ─ */
360
373
  .prop-input {
361
374
  width: 100%; border: 1px solid transparent; border-radius: 4px;
362
- padding: 4px 8px; font-size: 12px; background: var(--zrd-bg);
363
- color: var(--zrd-text); transition: border-color 0.15s, background 0.15s;
364
- outline: none; min-width: 0; font-family: inherit; box-sizing: border-box;
375
+ padding: 5px 7px; font-size: 11px; background: #f5f5f5;
376
+ color: var(--zrd-text); outline: none; min-width: 0;
377
+ font-family: inherit; box-sizing: border-box;
378
+ transition: border-color 0.12s, background 0.12s, box-shadow 0.12s;
365
379
  }
366
- .prop-input:hover { border-color: var(--zrd-border); }
367
- .prop-input:focus { border-color: var(--zrd-accent); background: white; }
380
+ .prop-input:hover { background: #efefef; border-color: #ddd; }
381
+ .prop-input:focus { border-color: #1976d2; background: white; box-shadow: 0 0 0 2px rgba(25,118,210,0.08); }
368
382
  select.prop-input {
369
- padding: 3px 6px; cursor: pointer; appearance: none;
370
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23888'/%3E%3C/svg%3E");
371
- background-repeat: no-repeat; background-position: right 6px center; padding-right: 20px;
372
- }
373
- textarea.prop-input { min-height: 52px; resize: vertical; font-family: 'Consolas',monospace; font-size: 11px; line-height: 1.5; }
374
-
375
- /* Position grid (2x2 like report-designer) */
376
- .prop-grid-2x2 { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; }
377
- .prop-grid-item {
378
- display: flex; align-items: center; background: var(--zrd-bg);
379
- border: 1px solid transparent; border-radius: 4px; padding: 2px 6px; gap: 4px;
380
- transition: border-color 0.15s;
381
- }
382
- .prop-grid-item:hover { border-color: var(--zrd-border); }
383
- .prop-grid-item:focus-within { border-color: var(--zrd-accent); }
384
- .prop-grid-label {
385
- font-size: 10px; color: var(--zrd-accent); font-weight: 600;
386
- width: 12px; text-align: center; flex-shrink: 0;
387
- }
388
- .prop-grid-item input {
383
+ padding: 4px 20px 4px 7px; cursor: pointer; appearance: none;
384
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5'%3E%3Cpath d='M0 0l4 5 4-5z' fill='%23999'/%3E%3C/svg%3E");
385
+ background-repeat: no-repeat; background-position: right 6px center;
386
+ }
387
+ textarea.prop-input {
388
+ min-height: 44px; resize: vertical; font-family: 'SF Mono','Consolas','Monaco',monospace;
389
+ font-size: 10px; line-height: 1.5; padding: 6px 7px;
390
+ }
391
+
392
+ /* Numeric stepper (Figma-style) ─ */
393
+ .prop-stepper {
394
+ display: flex; align-items: center; background: #f5f5f5;
395
+ border: 1px solid transparent; border-radius: 4px; overflow: hidden;
396
+ transition: border-color 0.12s;
397
+ }
398
+ .prop-stepper:hover { border-color: #ddd; }
399
+ .prop-stepper:focus-within { border-color: #1976d2; background: white; }
400
+ .prop-stepper input {
389
401
  border: none; background: transparent; width: 100%;
390
- font-size: 12px; color: var(--zrd-text); outline: none; padding: 2px 0; min-width: 0;
391
- font-family: inherit;
402
+ font-size: 11px; color: var(--zrd-text); outline: none;
403
+ padding: 4px 2px 4px 7px; min-width: 0; font-family: inherit;
404
+ -moz-appearance: textfield;
405
+ }
406
+ .prop-stepper input::-webkit-inner-spin-button { -webkit-appearance: none; }
407
+ .prop-stepper-btns {
408
+ display: flex; flex-direction: column; border-left: 1px solid #eee;
392
409
  }
410
+ .prop-stepper-btn {
411
+ border: none; background: none; cursor: pointer; padding: 0;
412
+ width: 18px; height: 12px; display: flex; align-items: center;
413
+ justify-content: center; font-size: 7px; color: #999;
414
+ transition: all 0.1s;
415
+ }
416
+ .prop-stepper-btn:hover { background: #e8e8e8; color: #333; }
393
417
 
394
- /* Toggle switches (report-designer style) */
395
- .prop-toggle { display: flex; align-items: center; gap: 8px; min-height: 28px; }
418
+ /* Position grid (4-cell Figma layout) */
419
+ .prop-pos-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3px; }
420
+ .prop-pos-cell {
421
+ display: flex; align-items: center; background: #f5f5f5;
422
+ border: 1px solid transparent; border-radius: 4px; padding: 0 6px;
423
+ height: 26px; gap: 3px; transition: border-color 0.12s;
424
+ }
425
+ .prop-pos-cell:hover { border-color: #ddd; }
426
+ .prop-pos-cell:focus-within { border-color: #1976d2; background: white; }
427
+ .prop-pos-label {
428
+ font-size: 9px; font-weight: 700; width: 10px; text-align: center;
429
+ flex-shrink: 0; user-select: none;
430
+ }
431
+ .prop-pos-label--x { color: #ef4444; }
432
+ .prop-pos-label--y { color: #3b82f6; }
433
+ .prop-pos-label--w { color: #8b5cf6; }
434
+ .prop-pos-label--h { color: #10b981; }
435
+ .prop-pos-cell input {
436
+ border: none; background: transparent; width: 100%;
437
+ font-size: 11px; color: var(--zrd-text); outline: none;
438
+ padding: 0; min-width: 0; font-family: inherit;
439
+ }
440
+
441
+ /* ─ Toggle switches (Figma compact) ─ */
442
+ .prop-toggle {
443
+ display: flex; align-items: center; gap: 8px;
444
+ min-height: 24px; padding: 1px 0;
445
+ }
396
446
  .prop-switch {
397
- position: relative; width: 32px; height: 18px; border-radius: 9px;
398
- background: #ccc; cursor: pointer; transition: background 0.2s; flex-shrink: 0;
399
- border: none; padding: 0;
447
+ position: relative; width: 28px; height: 16px; border-radius: 8px;
448
+ background: #d4d4d4; cursor: pointer; transition: background 0.2s;
449
+ flex-shrink: 0; border: none; padding: 0;
400
450
  }
401
- .prop-switch--active { background: var(--zrd-accent); }
451
+ .prop-switch--active { background: #1976d2; }
402
452
  .prop-switch::after {
403
453
  content: ''; position: absolute; top: 2px; left: 2px;
404
- width: 14px; height: 14px; border-radius: 50%;
405
- background: white; box-shadow: 0 1px 3px rgba(0,0,0,0.2);
454
+ width: 12px; height: 12px; border-radius: 50%;
455
+ background: white; box-shadow: 0 1px 2px rgba(0,0,0,0.15);
406
456
  transition: transform 0.2s;
407
457
  }
408
- .prop-switch--active::after { transform: translateX(14px); }
409
- .prop-toggle-label { font-size: 11px; color: var(--zrd-text-muted); }
458
+ .prop-switch--active::after { transform: translateX(12px); }
459
+ .prop-toggle-label { font-size: 11px; color: #888; }
460
+ .prop-toggle:hover .prop-toggle-label { color: #555; }
461
+
462
+ /* ─ Segmented control (alignment, format) ─ */
463
+ .prop-segmented {
464
+ display: flex; border: 1px solid #e0e0e0; border-radius: 5px;
465
+ overflow: hidden; background: #f5f5f5;
466
+ }
467
+ .prop-seg-btn {
468
+ flex: 1; padding: 4px 0; background: transparent; border: none;
469
+ border-right: 1px solid #e0e0e0; cursor: pointer;
470
+ font-size: 11px; color: #999; transition: all 0.12s; text-align: center;
471
+ font-family: inherit;
472
+ }
473
+ .prop-seg-btn:last-child { border-right: none; }
474
+ .prop-seg-btn:hover { background: #eee; color: #555; }
475
+ .prop-seg-btn--active { background: #1976d2; color: white; }
410
476
 
411
- /* Empty state */
412
- .props-empty { text-align: center; padding: 40px 16px; color: var(--zrd-text-muted); font-size: 12px; }
413
- .props-empty-icon { font-size: 32px; margin-bottom: 8px; opacity: 0.3; }
477
+ /* Color picker (swatch + hex inline) ─ */
478
+ .prop-color-row { display: flex; align-items: center; gap: 6px; }
479
+ .prop-color-swatch {
480
+ width: 22px; height: 22px; border-radius: 5px;
481
+ border: 1px solid #ddd; cursor: pointer; flex-shrink: 0;
482
+ position: relative; overflow: hidden;
483
+ }
484
+ .prop-color-swatch input[type="color"] {
485
+ position: absolute; inset: -4px; width: calc(100% + 8px);
486
+ height: calc(100% + 8px); cursor: pointer; border: none; padding: 0;
487
+ }
488
+ .prop-color-hex {
489
+ border: 1px solid transparent; border-radius: 4px;
490
+ padding: 4px 6px; font-size: 10px;
491
+ font-family: 'SF Mono','Consolas',monospace;
492
+ background: #f5f5f5; color: var(--zrd-text); width: 70px; outline: none;
493
+ box-sizing: border-box;
494
+ }
495
+ .prop-color-hex:hover { border-color: #ddd; }
496
+ .prop-color-hex:focus { border-color: #1976d2; background: white; }
414
497
 
415
- /* Type badge in properties */
498
+ /* Info badge */
499
+ .prop-info {
500
+ display: flex; align-items: center; gap: 4px;
501
+ padding: 5px 8px; border-radius: 4px; background: #f0f7ff;
502
+ font-size: 10px; color: #1976d2; margin-bottom: 4px;
503
+ }
504
+
505
+ /* ─ Divider line ─ */
506
+ .prop-divider { height: 1px; background: #f0f0f0; margin: 4px 0; }
507
+
508
+ /* ─ Empty state ─ */
509
+ .props-empty {
510
+ text-align: center; padding: 32px 16px; color: #ccc;
511
+ }
512
+ .props-empty-icon { font-size: 28px; margin-bottom: 6px; opacity: 0.4; }
513
+ .props-empty-text { font-size: 11px; line-height: 1.5; }
514
+
515
+ /* ─ Type badge ─ */
416
516
  .props-type-badge {
417
- display: inline-block; padding: 3px 10px; border-radius: 4px;
418
- font-size: 11px; font-weight: 600; margin-bottom: 12px;
517
+ display: inline-flex; align-items: center; gap: 4px;
518
+ padding: 3px 8px; border-radius: 4px;
519
+ font-size: 10px; font-weight: 700; letter-spacing: 0.3px;
520
+ text-transform: uppercase;
521
+ }
522
+ .props-field-id {
523
+ font-size: 10px; color: #bbb; font-family: 'SF Mono','Consolas',monospace;
524
+ margin-top: 2px;
419
525
  }
420
526
 
421
- /* JSON view */
527
+ /* JSON view */
422
528
  .json-panel {
423
- font-family: 'Consolas','Monaco',monospace; font-size: 11px; line-height: 1.5;
424
- background: #1e1e2d; color: #a2a3b7; padding: 16px; border-radius: 4px;
425
- overflow: auto; white-space: pre; tab-size: 2;
529
+ font-family: 'SF Mono','Consolas','Monaco',monospace; font-size: 11px;
530
+ line-height: 1.5; background: #1e1e2d; color: #a2a3b7;
531
+ padding: 16px; border-radius: 4px; overflow: auto;
532
+ white-space: pre; tab-size: 2;
426
533
  }
427
534
  `; }
428
535
  // ─── Lifecycle ────────────────────────────────────
@@ -621,6 +728,7 @@ let ZsPageDesigner = class ZsPageDesigner extends LitElement {
621
728
  <div class="panel-tabs">
622
729
  <button class="panel-tab ${this.leftTab === 'fields' ? 'panel-tab--active' : ''}" @click="${() => { this.leftTab = 'fields'; }}">Campos</button>
623
730
  <button class="panel-tab ${this.leftTab === 'sections' ? 'panel-tab--active' : ''}" @click="${() => { this.leftTab = 'sections'; }}">Secciones</button>
731
+ <button class="panel-tab ${this.leftTab === 'api' ? 'panel-tab--active' : ''}" @click="${() => { this.leftTab = 'api'; }}" style="${this.leftTab === 'api' ? 'color:#ea580c;border-bottom-color:#ea580c;' : ''}">API</button>
624
732
  </div>
625
733
  <div class="panel-content">
626
734
  ${this.leftTab === 'fields' ? html `
@@ -646,17 +754,23 @@ let ZsPageDesigner = class ZsPageDesigner extends LitElement {
646
754
  </div>
647
755
  `;
648
756
  })}
649
- ` : html `
757
+ ` : this.leftTab === 'sections' ? html `
650
758
  ${this.schema?.sections.map((s, i) => html `
651
- <div style="padding:6px;margin:2px 0;background:${i % 2 === 0 ? '#f8f8f8' : 'white'};border-radius:4px;font-size:12px;cursor:pointer;display:flex;align-items:center;gap:6px;"
759
+ <div style="padding:8px 10px;margin:2px 4px;background:${i % 2 === 0 ? '#f8f9fa' : 'white'};border-radius:6px;font-size:12px;cursor:pointer;display:flex;align-items:center;gap:8px;border:1px solid #eee;transition:all 0.15s;"
652
760
  @click="${() => { }}"
653
761
  >
654
- <span style="color:var(--zrd-accent);font-weight:600;">${i + 1}</span>
655
- <span style="flex:1;">${s.title ?? 'Sin titulo'}</span>
656
- <span style="color:var(--zrd-text-muted);font-size:11px;">${s.fields.length} campos</span>
762
+ <span style="background:#e3f2fd;color:#1976d2;font-weight:700;font-size:10px;padding:2px 6px;border-radius:4px;">§${i + 1}</span>
763
+ <span style="flex:1;font-weight:500;">${s.title ?? 'Sin titulo'}</span>
764
+ <span style="color:#aaa;font-size:10px;">${s.fields.length}</span>
657
765
  </div>
658
766
  `) ?? nothing}
659
- `}
767
+ <button style="margin:8px 4px;padding:8px;width:calc(100% - 8px);border:1px dashed #ccc;border-radius:6px;background:none;cursor:pointer;font-size:11px;color:#888;font-family:inherit;transition:all 0.15s;"
768
+ @click="${() => { if (this.schema) {
769
+ this.schema.sections.push({ id: 'section_' + Date.now(), title: 'Nueva Seccion', fields: [] });
770
+ this.commitChange();
771
+ } }}"
772
+ >+ Agregar Seccion</button>
773
+ ` : this.renderApiPanel()}
660
774
  </div>
661
775
  </div>
662
776
  `;
@@ -794,15 +908,15 @@ let ZsPageDesigner = class ZsPageDesigner extends LitElement {
794
908
  return '▸ Nodo 1\n ▸ Nodo 2';
795
909
  return field.placeholder ?? field.type;
796
910
  }
797
- // ─── Right Panel (Properties) ─────────────────────
911
+ // ─── Right Panel (Properties — Figma-quality) ──────
798
912
  renderRightPanel() {
799
913
  const field = this.selectedField;
800
914
  if (!field) {
801
915
  return html `
802
916
  <div class="right-panel">
803
917
  <div class="props-empty">
804
- <div class="props-empty-icon">👆</div>
805
- <div>Selecciona un campo<br/>para editar propiedades</div>
918
+ <div class="props-empty-icon">⬚</div>
919
+ <div class="props-empty-text">Selecciona un campo<br/>para editar propiedades</div>
806
920
  </div>
807
921
  ${this.schema ? this.renderFormProperties() : ''}
808
922
  </div>
@@ -811,53 +925,75 @@ let ZsPageDesigner = class ZsPageDesigner extends LitElement {
811
925
  const typeColor = FIELD_TYPE_COLORS[field.type] ?? 'background:#eceff1;color:#546e7a;';
812
926
  return html `
813
927
  <div class="right-panel">
814
- <div style="padding:10px 12px;border-bottom:1px solid var(--zrd-border);">
928
+ <!-- Header with type badge -->
929
+ <div style="padding:8px 10px;border-bottom:1px solid #eee;">
815
930
  <span class="props-type-badge" style="${typeColor}">${field.type.toUpperCase()}</span>
931
+ <div class="props-field-id">#${field.id}</div>
816
932
  </div>
817
933
 
818
934
  <!-- General -->
819
935
  <div class="prop-section">
820
936
  <div class="prop-section-header" data-section="general" @click="${() => this.toggleSection('general')}">
821
- <h4>General</h4>
822
937
  <span class="collapse-icon ${this.collapsedSections.has('general') ? 'collapse-icon--collapsed' : ''}">▾</span>
938
+ <h4>General</h4>
823
939
  </div>
824
940
  ${!this.collapsedSections.has('general') ? html `
825
- <div class="prop-row"><span class="prop-label">ID</span><input class="prop-input" .value="${field.id}" @change="${(e) => { field.id = e.target.value; this.commitChange(); }}" /></div>
826
941
  <div class="prop-row"><span class="prop-label">Label</span><input class="prop-input" .value="${field.label ?? ''}" @input="${(e) => { field.label = e.target.value; this.emitChange(); }}" /></div>
827
- <div class="prop-row"><span class="prop-label">Field</span><input class="prop-input" .value="${field.field}" @change="${(e) => { field.field = e.target.value; this.commitChange(); }}" /></div>
942
+ <div class="prop-row"><span class="prop-label">Field</span><input class="prop-input" style="font-family:'SF Mono','Consolas',monospace;font-size:10px;" .value="${field.field}" @change="${(e) => { field.field = e.target.value; this.commitChange(); }}" /></div>
828
943
  <div class="prop-row"><span class="prop-label">Placeholder</span><input class="prop-input" .value="${field.placeholder ?? ''}" @input="${(e) => { field.placeholder = e.target.value; this.emitChange(); }}" /></div>
829
- <div class="prop-row"><span class="prop-label">Help</span><input class="prop-input" .value="${field.helpText ?? ''}" @input="${(e) => { field.helpText = e.target.value; this.emitChange(); }}" /></div>
944
+ <div class="prop-row"><span class="prop-label">Ayuda</span><input class="prop-input" .value="${field.helpText ?? ''}" @input="${(e) => { field.helpText = e.target.value; this.emitChange(); }}" /></div>
830
945
  ` : ''}
831
946
  </div>
832
947
 
833
- <!-- Layout -->
948
+ <!-- Layout (Figma position grid) -->
834
949
  <div class="prop-section">
835
950
  <div class="prop-section-header" data-section="layout" @click="${() => this.toggleSection('layout')}">
836
- <h4>Layout</h4>
837
951
  <span class="collapse-icon ${this.collapsedSections.has('layout') ? 'collapse-icon--collapsed' : ''}">▾</span>
952
+ <h4>Layout</h4>
838
953
  </div>
839
954
  ${!this.collapsedSections.has('layout') ? html `
840
- <div class="prop-grid-2x2">
841
- <div class="prop-grid-item">
842
- <span class="prop-grid-label">W</span>
955
+ <div class="prop-pos-grid">
956
+ <div class="prop-pos-cell">
957
+ <span class="prop-pos-label prop-pos-label--w">W</span>
843
958
  <input type="number" min="1" max="6" .value="${String(field.colSpan ?? 1)}" @change="${(e) => { field.colSpan = parseInt(e.target.value) || 1; this.commitChange(); }}" />
844
959
  </div>
845
- <div class="prop-grid-item">
846
- <span class="prop-grid-label" style="color:#7c3aed;">T</span>
847
- <select .value="${field.type}" @change="${(e) => { field.type = e.target.value; this.commitChange(); }}" style="border:none;background:transparent;font-size:12px;width:100%;outline:none;">
960
+ <div class="prop-pos-cell">
961
+ <span class="prop-pos-label prop-pos-label--h">T</span>
962
+ <select .value="${field.type}" @change="${(e) => { field.type = e.target.value; this.commitChange(); }}" style="border:none;background:transparent;font-size:11px;width:100%;outline:none;color:var(--zrd-text);font-family:inherit;">
848
963
  ${getAllFields().map(f => html `<option value="${f.type}" ?selected="${f.type === field.type}">${f.label}</option>`)}
849
964
  </select>
850
965
  </div>
851
966
  </div>
852
- <div class="prop-row"><span class="prop-label">CSS Class</span><input class="prop-input" .value="${field.cssClass ?? ''}" @input="${(e) => { field.cssClass = e.target.value; this.emitChange(); }}" /></div>
967
+ <div class="prop-divider"></div>
968
+ <div class="prop-row"><span class="prop-label">CSS Class</span><input class="prop-input" .value="${field.cssClass ?? ''}" placeholder="mi-clase" @input="${(e) => { field.cssClass = e.target.value; this.emitChange(); }}" /></div>
853
969
  ` : ''}
854
970
  </div>
855
971
 
856
- <!-- Behavior -->
972
+ <!-- Style -->
973
+ <div class="prop-section">
974
+ <div class="prop-section-header" data-section="style" @click="${() => this.toggleSection('style')}">
975
+ <span class="collapse-icon ${this.collapsedSections.has('style') ? 'collapse-icon--collapsed' : ''}">▾</span>
976
+ <h4>Estilo</h4>
977
+ </div>
978
+ ${!this.collapsedSections.has('style') ? html `
979
+ <div class="prop-row">
980
+ <span class="prop-label">Ancho</span>
981
+ <div class="prop-segmented">
982
+ ${['auto', '100%', '50%'].map(w => html `
983
+ <button class="prop-seg-btn ${(field.width ?? 'auto') === w ? 'prop-seg-btn--active' : ''}"
984
+ @click="${() => { field.width = w === 'auto' ? undefined : w; this.commitChange(); }}"
985
+ >${w}</button>
986
+ `)}
987
+ </div>
988
+ </div>
989
+ ` : ''}
990
+ </div>
991
+
992
+ <!-- Behavior (toggles) -->
857
993
  <div class="prop-section">
858
994
  <div class="prop-section-header" data-section="behavior" @click="${() => this.toggleSection('behavior')}">
859
- <h4>Comportamiento</h4>
860
995
  <span class="collapse-icon ${this.collapsedSections.has('behavior') ? 'collapse-icon--collapsed' : ''}">▾</span>
996
+ <h4>Comportamiento</h4>
861
997
  </div>
862
998
  ${!this.collapsedSections.has('behavior') ? html `
863
999
  ${this.renderToggle('Requerido', field.required ?? false, (v) => { field.required = v; this.commitChange(); })}
@@ -867,20 +1003,44 @@ let ZsPageDesigner = class ZsPageDesigner extends LitElement {
867
1003
  ` : ''}
868
1004
  </div>
869
1005
 
870
- <!-- Rules -->
1006
+ <!-- Rules (expressions) -->
871
1007
  <div class="prop-section">
872
1008
  <div class="prop-section-header" data-section="rules" @click="${() => this.toggleSection('rules')}">
873
- <h4>Reglas</h4>
874
1009
  <span class="collapse-icon ${this.collapsedSections.has('rules') ? 'collapse-icon--collapsed' : ''}">▾</span>
1010
+ <h4>Reglas</h4>
875
1011
  </div>
876
1012
  ${!this.collapsedSections.has('rules') ? html `
877
- <div class="prop-row prop-row-full"><span class="prop-label">Visibilidad</span></div>
878
- <div class="prop-row prop-row-full"><textarea class="prop-input" rows="2" .value="${field.visibilityRule ?? ''}" placeholder='{role} == "admin"' @change="${(e) => { field.visibilityRule = e.target.value || undefined; this.commitChange(); }}"></textarea></div>
879
- <div class="prop-row prop-row-full"><span class="prop-label">Valor computado</span></div>
880
- <div class="prop-row prop-row-full"><textarea class="prop-input" rows="2" .value="${field.computedValue ?? ''}" placeholder='{precio} * {cantidad}' @change="${(e) => { field.computedValue = e.target.value || undefined; this.commitChange(); }}"></textarea></div>
1013
+ <div class="prop-info">💡 Usa {campo} para referencias y expresiones</div>
1014
+ <div class="prop-row prop-row-full"><span class="prop-label" style="margin-bottom:2px;">Condicion de visibilidad</span></div>
1015
+ <div class="prop-row prop-row-full"><textarea class="prop-input" rows="2" .value="${field.visibilityRule ?? ''}" placeholder='{tipo} == "empresa" AND {activo} == true' @change="${(e) => { field.visibilityRule = e.target.value || undefined; this.commitChange(); }}"></textarea></div>
1016
+ <div class="prop-row prop-row-full"><span class="prop-label" style="margin-bottom:2px;">Valor computado</span></div>
1017
+ <div class="prop-row prop-row-full"><textarea class="prop-input" rows="2" .value="${field.computedValue ?? ''}" placeholder='{precio} * {cantidad} * (1 + {iva}/100)' @change="${(e) => { field.computedValue = e.target.value || undefined; this.commitChange(); }}"></textarea></div>
1018
+ <div class="prop-divider"></div>
881
1019
  <div class="prop-row"><span class="prop-label">Default</span><input class="prop-input" .value="${String(field.defaultValue ?? '')}" @change="${(e) => { field.defaultValue = e.target.value || undefined; this.commitChange(); }}" /></div>
882
1020
  ` : ''}
883
1021
  </div>
1022
+
1023
+ <!-- Data Source (API connection like report-designer) -->
1024
+ <div class="prop-section">
1025
+ <div class="prop-section-header" data-section="datasource" @click="${() => this.toggleSection('datasource')}">
1026
+ <span class="collapse-icon ${this.collapsedSections.has('datasource') ? 'collapse-icon--collapsed' : ''}">▾</span>
1027
+ <h4>Origen de Datos</h4>
1028
+ </div>
1029
+ ${!this.collapsedSections.has('datasource') ? html `
1030
+ <div class="prop-info">🔌 Conecta campos a APIs y endpoints</div>
1031
+ <div class="prop-row"><span class="prop-label">Endpoint</span><input class="prop-input" style="font-family:'SF Mono','Consolas',monospace;font-size:10px;" .value="${field.props?.endpoint ?? ''}" placeholder="/v1/clientes" @change="${(e) => { if (!field.props)
1032
+ field.props = {}; field.props.endpoint = e.target.value || undefined; this.commitChange(); }}" /></div>
1033
+ <div class="prop-row"><span class="prop-label">Campo valor</span><input class="prop-input" .value="${field.props?.valueField ?? ''}" placeholder="id" @change="${(e) => { if (!field.props)
1034
+ field.props = {}; field.props.valueField = e.target.value || undefined; this.commitChange(); }}" /></div>
1035
+ <div class="prop-row"><span class="prop-label">Campo label</span><input class="prop-input" .value="${field.props?.displayField ?? ''}" placeholder="nombre" @change="${(e) => { if (!field.props)
1036
+ field.props = {}; field.props.displayField = e.target.value || undefined; this.commitChange(); }}" /></div>
1037
+ ${field.type === 'datagrid' || field.type === 'select' || field.type === 'lookup' ? html `
1038
+ <div class="prop-divider"></div>
1039
+ <div class="prop-row"><span class="prop-label">Data Source</span><input class="prop-input" .value="${field.props?.dataSourceId ?? ''}" placeholder="clientesList" @change="${(e) => { if (!field.props)
1040
+ field.props = {}; field.props.dataSourceId = e.target.value || undefined; this.commitChange(); }}" /></div>
1041
+ ` : ''}
1042
+ ` : ''}
1043
+ </div>
884
1044
  </div>
885
1045
  `;
886
1046
  }
@@ -889,13 +1049,199 @@ let ZsPageDesigner = class ZsPageDesigner extends LitElement {
889
1049
  return nothing;
890
1050
  return html `
891
1051
  <div class="prop-section">
892
- <div class="prop-section-header" data-section="form"><h4>Formulario</h4></div>
1052
+ <div class="prop-section-header" data-section="form">
1053
+ <span class="collapse-icon">▾</span>
1054
+ <h4>Formulario</h4>
1055
+ </div>
893
1056
  <div class="prop-row"><span class="prop-label">Titulo</span><input class="prop-input" .value="${this.schema.title}" @input="${(e) => { this.schema.title = e.target.value; this.emitChange(); }}" /></div>
894
- <div class="prop-row"><span class="prop-label">Columnas</span><input class="prop-input" type="number" min="1" max="6" .value="${String(this.schema.layout.columns ?? 1)}" @change="${(e) => { this.schema.layout.columns = parseInt(e.target.value) || 1; this.commitChange(); }}" /></div>
895
- <div class="prop-row"><span class="prop-label">Gap (px)</span><input class="prop-input" type="number" min="0" .value="${String(this.schema.layout.gap ?? 16)}" @change="${(e) => { this.schema.layout.gap = parseInt(e.target.value) || 16; this.commitChange(); }}" /></div>
1057
+ <div class="prop-divider"></div>
1058
+ <div class="prop-pos-grid">
1059
+ <div class="prop-pos-cell">
1060
+ <span class="prop-pos-label prop-pos-label--w">C</span>
1061
+ <input type="number" min="1" max="6" .value="${String(this.schema.layout.columns ?? 1)}" @change="${(e) => { this.schema.layout.columns = parseInt(e.target.value) || 1; this.commitChange(); }}" />
1062
+ </div>
1063
+ <div class="prop-pos-cell">
1064
+ <span class="prop-pos-label prop-pos-label--y">G</span>
1065
+ <input type="number" min="0" .value="${String(this.schema.layout.gap ?? 16)}" @change="${(e) => { this.schema.layout.gap = parseInt(e.target.value) || 16; this.commitChange(); }}" />
1066
+ </div>
1067
+ </div>
1068
+ <div style="font-size:9px;color:#bbb;margin-top:4px;display:flex;gap:12px;">
1069
+ <span>C = Columnas</span><span>G = Gap (px)</span>
1070
+ </div>
896
1071
  </div>
897
1072
  `;
898
1073
  }
1074
+ renderApiPanel() {
1075
+ return html `
1076
+ <div style="padding:4px;">
1077
+ <!-- Header -->
1078
+ <div style="padding:6px 8px;margin-bottom:6px;">
1079
+ <div style="font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.6px;color:#ea580c;margin-bottom:6px;">Origenes de Datos</div>
1080
+ <div style="font-size:10px;color:#999;line-height:1.4;">Conecta con la API de Zentto o cualquier endpoint REST para obtener datos reales.</div>
1081
+ </div>
1082
+
1083
+ <!-- Quick connect -->
1084
+ <div style="padding:4px 8px;">
1085
+ <div style="font-size:9px;font-weight:600;color:#aaa;text-transform:uppercase;margin-bottom:4px;">Conectar Endpoint</div>
1086
+ <div style="display:flex;gap:4px;margin-bottom:6px;">
1087
+ <select id="api-method" style="width:70px;padding:4px 6px;border:1px solid #ddd;border-radius:4px;font-size:10px;background:white;font-family:inherit;">
1088
+ <option>GET</option><option>POST</option><option>PUT</option><option>DELETE</option>
1089
+ </select>
1090
+ <input id="api-url" style="flex:1;padding:4px 8px;border:1px solid #ddd;border-radius:4px;font-size:10px;font-family:'SF Mono','Consolas',monospace;background:#fafafa;" placeholder="/v1/clientes" />
1091
+ </div>
1092
+ <button style="width:100%;padding:6px;border:1px solid #ea580c;border-radius:5px;background:#fff7ed;color:#ea580c;cursor:pointer;font-size:11px;font-weight:600;font-family:inherit;transition:all 0.15s;"
1093
+ @click="${this.fetchApiFields}"
1094
+ >${this.apiLoading ? 'Cargando...' : '🔌 Probar Conexion'}</button>
1095
+ </div>
1096
+
1097
+ <!-- Fetched sources -->
1098
+ ${this.apiSources.length > 0 ? html `
1099
+ <div style="margin-top:8px;">
1100
+ ${this.apiSources.map(src => html `
1101
+ <div style="margin:4px;border:1px solid #eee;border-radius:6px;overflow:hidden;">
1102
+ <div style="padding:6px 8px;background:#f8f9fa;display:flex;align-items:center;gap:6px;border-bottom:1px solid #eee;">
1103
+ <span style="background:#ea580c;color:white;font-size:8px;font-weight:700;padding:1px 5px;border-radius:3px;">${src.method}</span>
1104
+ <span style="font-size:10px;font-weight:600;color:#333;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;">${src.name}</span>
1105
+ <span style="font-size:9px;color:#aaa;">${src.fields.length} campos</span>
1106
+ </div>
1107
+ <div style="padding:2px 4px;max-height:150px;overflow-y:auto;">
1108
+ ${src.fields.map(field => html `
1109
+ <div style="display:flex;align-items:center;gap:6px;padding:4px 6px;font-size:11px;cursor:grab;border-radius:3px;transition:background 0.1s;"
1110
+ draggable="true"
1111
+ @dragstart="${(e) => { this.dragType = 'text'; e.dataTransfer?.setData('text/plain', 'text'); e.dataTransfer?.setData('field-name', field); e.dataTransfer?.setData('ds-id', src.id); }}"
1112
+ @dblclick="${() => {
1113
+ // Auto-create a field bound to this API field
1114
+ this.addField('text');
1115
+ const lastField = this.schema?.sections[0]?.fields[this.schema.sections[0].fields.length - 1];
1116
+ if (lastField) {
1117
+ lastField.field = field;
1118
+ lastField.label = field.charAt(0).toUpperCase() + field.slice(1).replace(/([A-Z])/g, ' $1');
1119
+ if (!lastField.props)
1120
+ lastField.props = {};
1121
+ lastField.props.dataSourceId = src.id;
1122
+ this.commitChange();
1123
+ }
1124
+ }}"
1125
+ >
1126
+ <span style="color:#1976d2;font-size:10px;">⬡</span>
1127
+ <span style="color:#555;">${field}</span>
1128
+ </div>
1129
+ `)}
1130
+ </div>
1131
+ </div>
1132
+ `)}
1133
+ </div>
1134
+ ` : ''}
1135
+
1136
+ <!-- Zentto API shortcuts -->
1137
+ <div style="margin-top:12px;padding:4px 8px;">
1138
+ <div style="font-size:9px;font-weight:600;color:#aaa;text-transform:uppercase;margin-bottom:6px;">Accesos Rapidos Zentto</div>
1139
+ ${[
1140
+ { label: 'Clientes', endpoint: '/v1/clientes', icon: '👥' },
1141
+ { label: 'Articulos', endpoint: '/v1/articulos', icon: '📦' },
1142
+ { label: 'Facturas', endpoint: '/v1/documentos-venta', icon: '📄' },
1143
+ { label: 'Empleados', endpoint: '/v1/empleados', icon: '👷' },
1144
+ { label: 'Cuentas', endpoint: '/v1/plan-cuentas', icon: '🏛' },
1145
+ { label: 'Proveedores', endpoint: '/v1/proveedores', icon: '🏭' },
1146
+ { label: 'Bancos', endpoint: '/v1/bancos', icon: '🏦' },
1147
+ { label: 'Paises', endpoint: '/v1/config/countries', icon: '🌍' },
1148
+ ].map(api => html `
1149
+ <div style="display:flex;align-items:center;gap:8px;padding:6px 8px;margin:2px 0;border-radius:5px;cursor:pointer;font-size:11px;transition:all 0.15s;border:1px solid transparent;"
1150
+ @click="${() => {
1151
+ const urlInput = this.shadowRoot?.querySelector('#api-url');
1152
+ if (urlInput)
1153
+ urlInput.value = api.endpoint;
1154
+ }}"
1155
+ @mouseenter="${(e) => { e.target.style.background = '#fff7ed'; e.target.style.borderColor = '#fed7aa'; }}"
1156
+ @mouseleave="${(e) => { e.target.style.background = ''; e.target.style.borderColor = 'transparent'; }}"
1157
+ >
1158
+ <span style="font-size:14px;">${api.icon}</span>
1159
+ <span style="flex:1;color:#555;">${api.label}</span>
1160
+ <span style="font-size:9px;color:#bbb;font-family:'SF Mono','Consolas',monospace;">${api.endpoint}</span>
1161
+ </div>
1162
+ `)}
1163
+ </div>
1164
+
1165
+ <!-- Manual data source -->
1166
+ <div style="margin-top:8px;padding:4px 8px;">
1167
+ <div style="font-size:9px;font-weight:600;color:#aaa;text-transform:uppercase;margin-bottom:4px;">Datos Estaticos</div>
1168
+ <button style="width:100%;padding:6px;border:1px dashed #ccc;border-radius:5px;background:none;cursor:pointer;font-size:11px;color:#888;font-family:inherit;"
1169
+ @click="${() => {
1170
+ const src = { id: 'static_' + Date.now(), name: 'Datos Manuales', endpoint: '', method: 'STATIC', fields: ['campo1', 'campo2', 'campo3'] };
1171
+ this.apiSources = [...this.apiSources, src];
1172
+ }}"
1173
+ >+ Agregar Datos Estaticos</button>
1174
+ </div>
1175
+ </div>
1176
+ `;
1177
+ }
1178
+ async fetchApiFields() {
1179
+ const urlInput = this.shadowRoot?.querySelector('#api-url');
1180
+ const methodSelect = this.shadowRoot?.querySelector('#api-method');
1181
+ if (!urlInput?.value)
1182
+ return;
1183
+ const endpoint = urlInput.value;
1184
+ const method = methodSelect?.value ?? 'GET';
1185
+ this.apiLoading = true;
1186
+ try {
1187
+ // Use provider's fetchData if available, otherwise native fetch
1188
+ let data;
1189
+ const fullUrl = endpoint.startsWith('http') ? endpoint : (this.provider.getAuthHeaders ? '' : '') + endpoint;
1190
+ if (this.provider.fetchData) {
1191
+ data = await this.provider.fetchData(fullUrl, { method, headers: this.provider.getAuthHeaders?.() });
1192
+ }
1193
+ else {
1194
+ // Try relative URL (proxied through Next.js)
1195
+ const headers = { 'Content-Type': 'application/json', ...(this.provider.getAuthHeaders?.() ?? {}) };
1196
+ const res = await fetch(fullUrl, { method, headers });
1197
+ data = await res.json();
1198
+ }
1199
+ // Extract fields from response
1200
+ const fields = this.extractFieldNames(data);
1201
+ const name = endpoint.split('/').filter(Boolean).pop() ?? 'API';
1202
+ const src = { id: 'api_' + Date.now(), name: name.charAt(0).toUpperCase() + name.slice(1), endpoint, method, fields };
1203
+ this.apiSources = [...this.apiSources, src];
1204
+ // Emit for host app
1205
+ this.dispatchEvent(new CustomEvent('api-connected', {
1206
+ detail: { source: src, data },
1207
+ bubbles: true, composed: true,
1208
+ }));
1209
+ }
1210
+ catch (err) {
1211
+ // Show error inline
1212
+ const src = { id: 'error_' + Date.now(), name: '⚠ Error: ' + (err instanceof Error ? err.message : 'Fallo la conexion'), endpoint, method, fields: [] };
1213
+ this.apiSources = [...this.apiSources, src];
1214
+ }
1215
+ this.apiLoading = false;
1216
+ }
1217
+ extractFieldNames(data) {
1218
+ if (!data)
1219
+ return [];
1220
+ // If array, take first item
1221
+ let sample;
1222
+ if (Array.isArray(data)) {
1223
+ if (data.length === 0)
1224
+ return [];
1225
+ sample = data[0];
1226
+ }
1227
+ else if (typeof data === 'object') {
1228
+ // Check for common response wrappers
1229
+ const obj = data;
1230
+ if (Array.isArray(obj.data))
1231
+ return this.extractFieldNames(obj.data);
1232
+ if (Array.isArray(obj.rows))
1233
+ return this.extractFieldNames(obj.rows);
1234
+ if (Array.isArray(obj.items))
1235
+ return this.extractFieldNames(obj.items);
1236
+ if (Array.isArray(obj.results))
1237
+ return this.extractFieldNames(obj.results);
1238
+ sample = obj;
1239
+ }
1240
+ else {
1241
+ return [];
1242
+ }
1243
+ return Object.keys(sample).filter(k => !k.startsWith('_'));
1244
+ }
899
1245
  renderToggle(label, value, onChange) {
900
1246
  return html `
901
1247
  <div class="prop-toggle">
@@ -951,6 +1297,12 @@ __decorate([
951
1297
  __decorate([
952
1298
  state()
953
1299
  ], ZsPageDesigner.prototype, "zoom", void 0);
1300
+ __decorate([
1301
+ state()
1302
+ ], ZsPageDesigner.prototype, "apiSources", void 0);
1303
+ __decorate([
1304
+ state()
1305
+ ], ZsPageDesigner.prototype, "apiLoading", void 0);
954
1306
  ZsPageDesigner = __decorate([
955
1307
  customElement('zs-page-designer')
956
1308
  ], ZsPageDesigner);
@@ -1 +1 @@
1
- {"version":3,"file":"zs-page-designer.js","sourceRoot":"","sources":["../../src/designer/zs-page-designer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zs-page-designer.js","sourceRoot":"","sources":["../../src/designer/zs-page-designer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zentto/studio",
3
- "version": "0.3.2",
3
+ "version": "0.4.1",
4
4
  "description": "Zentto Studio — runtime UI builder web components. Renders dynamic forms, dashboards, and wizards from JSON schemas.",
5
5
  "type": "module",
6
6
  "main": "dist/zentto-studio-renderer.js",