@oh-just-another/react-ui 0.59.0 → 0.61.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.
Files changed (51) hide show
  1. package/CHANGELOG.md +89 -0
  2. package/README.md +4 -4
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/color-palette.d.ts +5 -0
  5. package/dist/color-palette.d.ts.map +1 -1
  6. package/dist/color-palette.js +5 -0
  7. package/dist/color-palette.js.map +1 -1
  8. package/dist/color-swatch-picker.d.ts.map +1 -1
  9. package/dist/color-swatch-picker.js +4 -14
  10. package/dist/color-swatch-picker.js.map +1 -1
  11. package/dist/command-palette.js +1 -1
  12. package/dist/command-palette.js.map +1 -1
  13. package/dist/comments-panel.js +1 -1
  14. package/dist/constants.d.ts +4 -7
  15. package/dist/constants.d.ts.map +1 -1
  16. package/dist/constants.js +5 -2
  17. package/dist/constants.js.map +1 -1
  18. package/dist/context.d.ts +1 -1
  19. package/dist/context.js +1 -1
  20. package/dist/diagram-canvas.d.ts +2 -2
  21. package/dist/diagram-canvas.js +1 -1
  22. package/dist/diagram-root.d.ts +2 -2
  23. package/dist/diagram-root.js +2 -2
  24. package/dist/drawing-panel.js +2 -2
  25. package/dist/drawing-panel.js.map +1 -1
  26. package/dist/help-dialog.js +2 -2
  27. package/dist/hooks.d.ts +6 -3
  28. package/dist/hooks.d.ts.map +1 -1
  29. package/dist/hooks.js +7 -2
  30. package/dist/hooks.js.map +1 -1
  31. package/dist/index.d.ts +1 -1
  32. package/dist/index.d.ts.map +1 -1
  33. package/dist/index.js +1 -1
  34. package/dist/index.js.map +1 -1
  35. package/dist/layer-panel.js +2 -2
  36. package/dist/link-caption-editor.d.ts +3 -3
  37. package/dist/link-caption-editor.d.ts.map +1 -1
  38. package/dist/link-caption-editor.js +8 -5
  39. package/dist/link-caption-editor.js.map +1 -1
  40. package/dist/main-menu.js +1 -1
  41. package/dist/property-panel.d.ts.map +1 -1
  42. package/dist/property-panel.js +28 -3
  43. package/dist/property-panel.js.map +1 -1
  44. package/dist/sidebar.js +2 -2
  45. package/dist/toast.js +1 -1
  46. package/dist/toolbar.d.ts +2 -2
  47. package/dist/toolbar.js +6 -6
  48. package/dist/toolbar.js.map +1 -1
  49. package/dist/versioning.js +1 -1
  50. package/package.json +9 -9
  51. package/src/styles.css +35 -29
package/src/styles.css CHANGED
@@ -79,7 +79,9 @@
79
79
  :root {
80
80
  /* All values mirror UI_SURFACE.dark + UI_ACCENT.dark from
81
81
  `@oh-just-another/tokens`. */
82
- --du-canvas-bg: #121212; /* UI_SURFACE.dark.canvas */
82
+ /* The canvas is NOT themed (user content is authored against light
83
+ paper); dark mode darkens the chrome only. UI_SURFACE.dark.canvas. */
84
+ --du-canvas-bg: #f5f5f5;
83
85
  --du-ui-bg: rgba(35, 35, 35, 0.95); /* UI_SURFACE.dark.bg */
84
86
  --du-ui-bg-solid: #252525; /* UI_SURFACE.dark.bgSolid */
85
87
  --du-ui-border: rgba(255, 255, 255, 0.08); /* UI_SURFACE.dark.border */
@@ -162,7 +164,8 @@
162
164
 
163
165
  [data-theme="dark"] {
164
166
  /* Mirrors UI_SURFACE.dark + UI_ACCENT.dark from `@oh-just-another/tokens`. */
165
- --du-canvas-bg: #121212;
167
+ /* Canvas stays light — see the note in the media-query block above. */
168
+ --du-canvas-bg: #f5f5f5;
166
169
  --du-ui-bg: rgba(35, 35, 35, 0.95);
167
170
  --du-ui-bg-solid: #252525;
168
171
  --du-ui-border: rgba(255, 255, 255, 0.08);
@@ -1291,8 +1294,8 @@
1291
1294
  `is-active` class had no visual, so toggles never reflected the
1292
1295
  selection's current style. */
1293
1296
  .du-sel-icon-button.is-active {
1294
- background: var(--du-accent-soft, rgba(80, 130, 255, 0.22));
1295
- color: var(--du-accent, #5082ff);
1297
+ background: var(--du-selected-bg);
1298
+ color: var(--du-selected-fg);
1296
1299
  }
1297
1300
 
1298
1301
  .du-sel-icon-button:focus-visible {
@@ -1378,16 +1381,16 @@
1378
1381
  padding: 6px 10px;
1379
1382
  border-radius: 4px;
1380
1383
  font-size: 13px;
1381
- color: var(--du-text, #ddd);
1384
+ color: var(--du-text);
1382
1385
  cursor: pointer;
1383
1386
  }
1384
1387
 
1385
1388
  .du-sel-menu-row:hover {
1386
- background: var(--du-ui-hover, #2a2a2a);
1389
+ background: var(--du-hover-overlay);
1387
1390
  }
1388
1391
 
1389
1392
  .du-sel-menu-row.is-active {
1390
- background: var(--du-accent-soft, rgba(80, 130, 255, 0.2));
1393
+ background: var(--du-selected-bg);
1391
1394
  }
1392
1395
 
1393
1396
  /* URL field inside the element-link popover. */
@@ -1397,15 +1400,15 @@
1397
1400
  box-sizing: border-box;
1398
1401
  padding: 6px 8px;
1399
1402
  font-size: 13px;
1400
- color: var(--du-text, #ddd);
1401
- background: var(--du-ui-bg, #1a1a1a);
1402
- border: 1px solid var(--du-ui-border, #333);
1403
+ color: var(--du-text);
1404
+ background: var(--du-ui-bg);
1405
+ border: 1px solid var(--du-ui-border);
1403
1406
  border-radius: 4px;
1404
1407
  outline: none;
1405
1408
  }
1406
1409
 
1407
1410
  .du-sel-link-input:focus-visible {
1408
- outline: 2px solid var(--du-accent, #5082ff);
1411
+ outline: 2px solid var(--du-accent);
1409
1412
  outline-offset: -1px;
1410
1413
  }
1411
1414
 
@@ -1428,17 +1431,17 @@
1428
1431
  Segoe UI,
1429
1432
  Roboto,
1430
1433
  sans-serif;
1431
- color: var(--du-accent, #5082ff);
1434
+ color: var(--du-accent);
1432
1435
  text-decoration: none;
1433
- background: var(--menu-bg, #1a1a1a);
1434
- border: 1px solid var(--menu-border, #333);
1436
+ background: var(--menu-bg);
1437
+ border: 1px solid var(--menu-border);
1435
1438
  border-radius: 6px;
1436
1439
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
1437
1440
  cursor: pointer;
1438
1441
  }
1439
1442
 
1440
1443
  .du-link-popup-url:hover {
1441
- background: var(--du-ui-hover, #2a2a2a);
1444
+ background: var(--du-hover-overlay);
1442
1445
  }
1443
1446
 
1444
1447
  .du-link-popup-text {
@@ -1466,13 +1469,13 @@
1466
1469
  border-radius: 6px;
1467
1470
  background: transparent;
1468
1471
  cursor: pointer;
1469
- color: var(--du-fg, #1c1c1e);
1472
+ color: var(--du-text);
1470
1473
  }
1471
1474
  .du-arrowhead-option:hover {
1472
- background: var(--du-hover, #f0f0f3);
1475
+ background: var(--du-hover-overlay);
1473
1476
  }
1474
1477
  .du-arrowhead-option--active {
1475
- border-color: var(--du-accent, #5082ff);
1478
+ border-color: var(--du-accent);
1476
1479
  }
1477
1480
  .du-arrowhead-none {
1478
1481
  font-size: 13px;
@@ -1491,14 +1494,14 @@
1491
1494
  background: transparent;
1492
1495
  cursor: pointer;
1493
1496
  font-size: 11px;
1494
- color: var(--du-muted, #6b6b70);
1497
+ color: var(--du-text-muted);
1495
1498
  padding: 2px 0;
1496
1499
  }
1497
1500
  .du-arrowhead-erd-toggle:hover {
1498
- color: var(--du-fg, #1c1c1e);
1501
+ color: var(--du-text);
1499
1502
  }
1500
1503
 
1501
- /* Inline link caption editor. */
1504
+ /* Inline link caption editor (multiline textarea). */
1502
1505
  .du-link-caption-input {
1503
1506
  min-width: 60px;
1504
1507
  max-width: 220px;
@@ -1506,13 +1509,16 @@
1506
1509
  font:
1507
1510
  12px system-ui,
1508
1511
  sans-serif;
1512
+ line-height: 1.25;
1509
1513
  text-align: center;
1510
- color: var(--du-fg, #222);
1511
- background: var(--du-panel-bg, #fff);
1512
- border: 1px solid var(--du-accent, #5082ff);
1514
+ color: var(--du-text);
1515
+ background: var(--du-ui-bg-solid);
1516
+ border: 1px solid var(--du-accent);
1513
1517
  border-radius: 4px;
1514
1518
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
1515
1519
  outline: none;
1520
+ resize: none;
1521
+ overflow: hidden;
1516
1522
  }
1517
1523
 
1518
1524
  /* Mini shape-picker shown after a link is dropped on empty canvas. */
@@ -1520,8 +1526,8 @@
1520
1526
  display: flex;
1521
1527
  gap: 2px;
1522
1528
  padding: 4px;
1523
- background: var(--du-panel-bg, #fff);
1524
- border: 1px solid var(--du-border, #e3e3e6);
1529
+ background: var(--du-ui-bg-solid);
1530
+ border: 1px solid var(--du-ui-border);
1525
1531
  border-radius: 8px;
1526
1532
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.18);
1527
1533
  }
@@ -1536,10 +1542,10 @@
1536
1542
  border-radius: 6px;
1537
1543
  background: transparent;
1538
1544
  cursor: pointer;
1539
- color: var(--du-fg, #1c1c1e);
1545
+ color: var(--du-text);
1540
1546
  }
1541
1547
  .du-link-drop-item:hover {
1542
- background: var(--du-hover, #f0f0f3);
1548
+ background: var(--du-hover-overlay);
1543
1549
  }
1544
1550
  .du-link-drop-item svg {
1545
1551
  width: 100%;
@@ -1547,6 +1553,6 @@
1547
1553
  }
1548
1554
 
1549
1555
  .du-sel-menu-row:focus-visible {
1550
- outline: 2px solid var(--du-accent, #5082ff);
1556
+ outline: 2px solid var(--du-accent);
1551
1557
  outline-offset: -2px;
1552
1558
  }