drawui-react 0.4.0 → 0.4.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/styles.css CHANGED
@@ -73,6 +73,14 @@
73
73
  inset: 0;
74
74
  overflow: hidden;
75
75
  background-color: var(--dw-canvas-bg);
76
+ user-select: none;
77
+ -webkit-user-select: none;
78
+ }
79
+ .drawui-canvas-board input,
80
+ .drawui-canvas-board textarea,
81
+ .drawui-canvas-board [contenteditable='true'] {
82
+ user-select: text;
83
+ -webkit-user-select: text;
76
84
  }
77
85
  .drawui-canvas {
78
86
  display: block;
@@ -95,7 +103,7 @@
95
103
  border-radius: 14px;
96
104
  box-shadow: var(--dw-shadow-md);
97
105
  border: 1px solid var(--dw-panel-border);
98
- z-index: 100;
106
+ z-index: 900;
99
107
  }
100
108
  .drawui-toolbar-button {
101
109
  position: relative;
@@ -141,7 +149,7 @@
141
149
  top: 5px;
142
150
  left: 50%;
143
151
  transform: translateX(-50%);
144
- z-index: 100;
152
+ z-index: 900;
145
153
  }
146
154
  .drawui-toolbar-dropdown {
147
155
  position: relative;
@@ -1267,3 +1275,224 @@
1267
1275
  color: var(--dw-text-faint);
1268
1276
  padding: 0 2px;
1269
1277
  }
1278
+ .drawui-table-picker {
1279
+ position: absolute;
1280
+ top: calc(100% + 14px);
1281
+ left: 50%;
1282
+ transform: translateX(-50%);
1283
+ padding: 10px 12px 8px;
1284
+ background: var(--dw-panel-bg);
1285
+ backdrop-filter: blur(16px);
1286
+ -webkit-backdrop-filter: blur(16px);
1287
+ border-radius: 14px;
1288
+ box-shadow: var(--dw-shadow-lg);
1289
+ border: 1px solid var(--dw-panel-border);
1290
+ background: var(--dw-panel-bg-deep);
1291
+ animation: dropdownFadeIn 0.15s cubic-bezier(0.4, 0, 0.2, 1);
1292
+ z-index: 500;
1293
+ }
1294
+ .drawui-table-picker-hint {
1295
+ font-size: 11px;
1296
+ color: var(--dw-text-muted);
1297
+ margin-bottom: 8px;
1298
+ white-space: nowrap;
1299
+ }
1300
+ .drawui-table-picker-grid {
1301
+ display: grid;
1302
+ grid-template-columns: repeat(8, 18px);
1303
+ grid-auto-rows: 18px;
1304
+ gap: 3px;
1305
+ }
1306
+ .drawui-table-picker-cell {
1307
+ box-sizing: border-box;
1308
+ border: 1px solid var(--dw-dash);
1309
+ background: var(--dw-panel-bg);
1310
+ border-radius: 3px;
1311
+ padding: 0;
1312
+ cursor: pointer;
1313
+ }
1314
+ .drawui-table-picker-cell:hover {
1315
+ border-color: var(--dw-primary);
1316
+ background: var(--dw-primary-weak);
1317
+ }
1318
+ .drawui-table-toolbar {
1319
+ position: absolute;
1320
+ display: flex;
1321
+ align-items: center;
1322
+ gap: 2px;
1323
+ padding: 4px;
1324
+ background: var(--dw-panel-bg);
1325
+ backdrop-filter: blur(16px);
1326
+ -webkit-backdrop-filter: blur(16px);
1327
+ border-radius: 12px;
1328
+ box-shadow: var(--dw-shadow-lg);
1329
+ border: 1px solid var(--dw-panel-border);
1330
+ background: var(--dw-panel-bg-deep);
1331
+ z-index: 100;
1332
+ transform: translateX(-50%);
1333
+ white-space: nowrap;
1334
+ }
1335
+ .drawui-table-toolbar button {
1336
+ border: none;
1337
+ background: transparent;
1338
+ padding: 5px 9px;
1339
+ border-radius: 8px;
1340
+ font-size: 12px;
1341
+ line-height: 1;
1342
+ color: var(--dw-text);
1343
+ cursor: pointer;
1344
+ white-space: nowrap;
1345
+ }
1346
+ .drawui-table-toolbar button:hover:not(:disabled) {
1347
+ background: var(--dw-primary-weak);
1348
+ color: var(--dw-primary-hover);
1349
+ }
1350
+ .drawui-table-toolbar button:disabled {
1351
+ opacity: 0.35;
1352
+ cursor: default;
1353
+ }
1354
+ .drawui-table-split {
1355
+ position: relative;
1356
+ display: flex;
1357
+ align-items: center;
1358
+ }
1359
+ .drawui-table-toolbar .drawui-table-split .drawui-table-btn-caret {
1360
+ padding: 5px 4px;
1361
+ color: var(--dw-text-muted);
1362
+ }
1363
+ .drawui-table-toolbar .drawui-table-split .drawui-table-btn-caret.active {
1364
+ background: var(--dw-primary-weak);
1365
+ color: var(--dw-primary-hover);
1366
+ }
1367
+ .drawui-table-menu {
1368
+ position: absolute;
1369
+ top: calc(100% + 6px);
1370
+ left: 50%;
1371
+ transform: translateX(-50%);
1372
+ display: flex;
1373
+ flex-direction: column;
1374
+ min-width: 132px;
1375
+ padding: 4px;
1376
+ gap: 2px;
1377
+ background: var(--dw-panel-bg);
1378
+ backdrop-filter: blur(16px);
1379
+ -webkit-backdrop-filter: blur(16px);
1380
+ border-radius: 12px;
1381
+ box-shadow: var(--dw-shadow-lg);
1382
+ border: 1px solid var(--dw-panel-border);
1383
+ background: var(--dw-panel-bg-deep);
1384
+ z-index: 500;
1385
+ }
1386
+ .drawui-table-toolbar .drawui-table-menu button {
1387
+ width: 100%;
1388
+ text-align: left;
1389
+ padding: 6px 10px;
1390
+ font-size: 12px;
1391
+ }
1392
+ .drawui-table-cell-input {
1393
+ position: absolute;
1394
+ border: 1.5px solid var(--dw-primary, #3b82f6);
1395
+ border-radius: 4px;
1396
+ background: #ffffff;
1397
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
1398
+ outline: none;
1399
+ font-family: sans-serif;
1400
+ box-sizing: border-box;
1401
+ pointer-events: auto;
1402
+ z-index: 55;
1403
+ white-space: pre-wrap;
1404
+ word-break: break-word;
1405
+ overflow: hidden;
1406
+ resize: none;
1407
+ }
1408
+ .drawui-context-menu {
1409
+ position: absolute;
1410
+ display: flex;
1411
+ flex-direction: column;
1412
+ min-width: 224px;
1413
+ padding: 6px;
1414
+ background: var(--dw-panel-bg);
1415
+ backdrop-filter: blur(16px);
1416
+ -webkit-backdrop-filter: blur(16px);
1417
+ border-radius: 12px;
1418
+ box-shadow: var(--dw-shadow-xl);
1419
+ border: 1px solid var(--dw-panel-border);
1420
+ z-index: 500;
1421
+ user-select: none;
1422
+ animation: drawui-context-menu-in 0.18s cubic-bezier(0.4, 0, 0.2, 1);
1423
+ }
1424
+ @keyframes drawui-context-menu-in {
1425
+ from {
1426
+ opacity: 0;
1427
+ transform: scale(0.96);
1428
+ }
1429
+ to {
1430
+ opacity: 1;
1431
+ transform: scale(1);
1432
+ }
1433
+ }
1434
+ .drawui-context-item {
1435
+ display: flex;
1436
+ align-items: center;
1437
+ justify-content: space-between;
1438
+ gap: 24px;
1439
+ width: 100%;
1440
+ padding: 7px 10px;
1441
+ border: none;
1442
+ border-radius: 10px;
1443
+ background: transparent;
1444
+ font-size: 13px;
1445
+ font-family: inherit;
1446
+ color: var(--dw-text-ink);
1447
+ text-align: left;
1448
+ cursor: pointer;
1449
+ white-space: nowrap;
1450
+ }
1451
+ .drawui-context-item:hover {
1452
+ background: var(--dw-hover-bg);
1453
+ }
1454
+ .drawui-context-item.is-danger:hover {
1455
+ background: rgba(239, 68, 68, 0.08);
1456
+ color: var(--dw-danger);
1457
+ }
1458
+ .drawui-context-item:disabled {
1459
+ opacity: 0.38;
1460
+ cursor: default;
1461
+ }
1462
+ .drawui-context-item:disabled:hover {
1463
+ background: transparent;
1464
+ }
1465
+ .drawui-context-kbd {
1466
+ font-size: 11px;
1467
+ color: var(--dw-text-faint);
1468
+ font-family: inherit;
1469
+ }
1470
+ .drawui-context-caret {
1471
+ color: var(--dw-text-faint);
1472
+ flex-shrink: 0;
1473
+ }
1474
+ .drawui-context-sep {
1475
+ height: 1px;
1476
+ margin: 4px 8px;
1477
+ background: var(--dw-panel-border);
1478
+ }
1479
+ .drawui-context-sub {
1480
+ position: relative;
1481
+ }
1482
+ .drawui-context-submenu {
1483
+ position: absolute;
1484
+ left: calc(100% + 4px);
1485
+ top: -6px;
1486
+ display: flex;
1487
+ flex-direction: column;
1488
+ min-width: 148px;
1489
+ padding: 6px;
1490
+ background: var(--dw-panel-bg);
1491
+ backdrop-filter: blur(16px);
1492
+ -webkit-backdrop-filter: blur(16px);
1493
+ border-radius: 12px;
1494
+ box-shadow: var(--dw-shadow-xl);
1495
+ border: 1px solid var(--dw-panel-border);
1496
+ z-index: 500;
1497
+ animation: drawui-context-menu-in 0.18s cubic-bezier(0.4, 0, 0.2, 1);
1498
+ }
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "drawui-react",
3
- "version": "0.4.0",
3
+ "version": "0.4.2",
4
4
  "type": "module",
5
- "description": "React wrapper for drawui-core canvas drawing (PNG / SVG / PDF export, UML, mind map)",
5
+ "description": "React wrapper for drawui-core canvas drawing (PNG / SVG / PDF export, table, UML, mind map, context menu, group lock)",
6
6
  "license": "MIT",
7
7
  "files": [
8
8
  "dist"
@@ -30,7 +30,7 @@
30
30
  "access": "public"
31
31
  },
32
32
  "dependencies": {
33
- "drawui-core": "0.4.0"
33
+ "drawui-core": "0.4.2"
34
34
  },
35
35
  "peerDependencies": {
36
36
  "react": "^18.3.1"