@guanjinke/artifact-client 1.6.3 → 1.7.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.
- package/dist/environment/detail.d.ts +109 -0
- package/dist/environment/detail.d.ts.map +1 -0
- package/dist/environment/detail.js +151 -0
- package/dist/environment/detail.js.map +1 -0
- package/dist/web/api.d.ts +6 -0
- package/dist/web/api.d.ts.map +1 -1
- package/dist/web/api.js +23 -0
- package/dist/web/api.js.map +1 -1
- package/dist/web/server.d.ts +3 -0
- package/dist/web/server.d.ts.map +1 -1
- package/dist/web/server.js +11 -0
- package/dist/web/server.js.map +1 -1
- package/dist/web/static/app.js +11 -11
- package/dist/web/static/styles.css +263 -0
- package/package.json +1 -1
|
@@ -1331,3 +1331,266 @@ a {
|
|
|
1331
1331
|
transition-duration: .01ms !important;
|
|
1332
1332
|
}
|
|
1333
1333
|
}
|
|
1334
|
+
|
|
1335
|
+
/* ------------------------------------------- environment configuration -- */
|
|
1336
|
+
|
|
1337
|
+
/* The per-environment "完整配置" dialog (opened from the 配置 row button): the
|
|
1338
|
+
summary grid, the manifest module table and the foldable Wyn.conf lists.
|
|
1339
|
+
Everything is introduced here and prefixed `config-`, so the rest of the page
|
|
1340
|
+
is untouched. */
|
|
1341
|
+
.config-view {
|
|
1342
|
+
display: grid;
|
|
1343
|
+
gap: 14px;
|
|
1344
|
+
}
|
|
1345
|
+
|
|
1346
|
+
/* This dialog is a data view (a five-column module table and long paths), so it
|
|
1347
|
+
gets a wider modal than the compact action dialogs. */
|
|
1348
|
+
.modal.modal-wide {
|
|
1349
|
+
width: min(1080px, 94vw);
|
|
1350
|
+
}
|
|
1351
|
+
|
|
1352
|
+
.config-table {
|
|
1353
|
+
table-layout: fixed;
|
|
1354
|
+
}
|
|
1355
|
+
|
|
1356
|
+
/* 模块 · 版本 · 来源 · 部署目标 · 校验 */
|
|
1357
|
+
.config-table th:nth-child(1), .config-table td:nth-child(1) { width: 20%; }
|
|
1358
|
+
.config-table th:nth-child(2), .config-table td:nth-child(2) { width: 10%; }
|
|
1359
|
+
.config-table th:nth-child(3), .config-table td:nth-child(3) { width: 18%; }
|
|
1360
|
+
.config-table th:nth-child(4), .config-table td:nth-child(4) { width: 36%; }
|
|
1361
|
+
.config-table th:nth-child(5), .config-table td:nth-child(5) { width: 16%; }
|
|
1362
|
+
|
|
1363
|
+
.config-table td:nth-child(2) { white-space: nowrap; font-variant-numeric: tabular-nums; }
|
|
1364
|
+
.config-table td:nth-child(4) { overflow-wrap: anywhere; }
|
|
1365
|
+
|
|
1366
|
+
/* A path, artifact name or digest may be long: wrap it instead of clipping it. */
|
|
1367
|
+
.config-sub, .config-field-value, .config-digest { overflow-wrap: anywhere; }
|
|
1368
|
+
.config-digest { white-space: nowrap; }
|
|
1369
|
+
|
|
1370
|
+
.config-block {
|
|
1371
|
+
display: grid;
|
|
1372
|
+
gap: 10px;
|
|
1373
|
+
padding: 14px;
|
|
1374
|
+
background: rgba(255, 255, 255, .02);
|
|
1375
|
+
border: 1px solid var(--border);
|
|
1376
|
+
border-radius: 14px;
|
|
1377
|
+
}
|
|
1378
|
+
|
|
1379
|
+
.config-title {
|
|
1380
|
+
margin: 0;
|
|
1381
|
+
font-size: 13.5px;
|
|
1382
|
+
font-weight: 650;
|
|
1383
|
+
}
|
|
1384
|
+
|
|
1385
|
+
.config-grid {
|
|
1386
|
+
display: grid;
|
|
1387
|
+
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
|
|
1388
|
+
gap: 8px 16px;
|
|
1389
|
+
}
|
|
1390
|
+
|
|
1391
|
+
.config-field {
|
|
1392
|
+
display: grid;
|
|
1393
|
+
grid-template-columns: 96px minmax(0, 1fr);
|
|
1394
|
+
align-items: baseline;
|
|
1395
|
+
gap: 8px;
|
|
1396
|
+
min-width: 0;
|
|
1397
|
+
font-size: 12.5px;
|
|
1398
|
+
}
|
|
1399
|
+
|
|
1400
|
+
.config-field-label {
|
|
1401
|
+
color: var(--muted);
|
|
1402
|
+
}
|
|
1403
|
+
|
|
1404
|
+
.config-field-value {
|
|
1405
|
+
min-width: 0;
|
|
1406
|
+
word-break: break-all;
|
|
1407
|
+
}
|
|
1408
|
+
|
|
1409
|
+
.config-site {
|
|
1410
|
+
color: var(--cyan);
|
|
1411
|
+
}
|
|
1412
|
+
|
|
1413
|
+
.config-site.muted {
|
|
1414
|
+
color: var(--muted);
|
|
1415
|
+
}
|
|
1416
|
+
|
|
1417
|
+
.config-sublist {
|
|
1418
|
+
display: grid;
|
|
1419
|
+
gap: 6px;
|
|
1420
|
+
}
|
|
1421
|
+
|
|
1422
|
+
.config-sublist-label {
|
|
1423
|
+
color: var(--muted);
|
|
1424
|
+
font-size: 12px;
|
|
1425
|
+
}
|
|
1426
|
+
|
|
1427
|
+
/* A scroll box keeps a wide module table from stretching the dialog. */
|
|
1428
|
+
.config-table-wrap {
|
|
1429
|
+
overflow-x: auto;
|
|
1430
|
+
border: 1px solid var(--border);
|
|
1431
|
+
border-radius: 12px;
|
|
1432
|
+
}
|
|
1433
|
+
|
|
1434
|
+
.config-table {
|
|
1435
|
+
width: 100%;
|
|
1436
|
+
border-collapse: collapse;
|
|
1437
|
+
font-size: 12.5px;
|
|
1438
|
+
}
|
|
1439
|
+
|
|
1440
|
+
.config-table th {
|
|
1441
|
+
padding: 8px 10px;
|
|
1442
|
+
color: var(--muted);
|
|
1443
|
+
font-weight: 600;
|
|
1444
|
+
text-align: left;
|
|
1445
|
+
white-space: nowrap;
|
|
1446
|
+
background: rgba(255, 255, 255, .03);
|
|
1447
|
+
border-bottom: 1px solid var(--border);
|
|
1448
|
+
}
|
|
1449
|
+
|
|
1450
|
+
.config-table td {
|
|
1451
|
+
padding: 8px 10px;
|
|
1452
|
+
vertical-align: top;
|
|
1453
|
+
border-bottom: 1px solid rgba(255, 255, 255, .06);
|
|
1454
|
+
}
|
|
1455
|
+
|
|
1456
|
+
.config-table tr:last-child td {
|
|
1457
|
+
border-bottom: none;
|
|
1458
|
+
}
|
|
1459
|
+
|
|
1460
|
+
.config-module-cell {
|
|
1461
|
+
display: grid;
|
|
1462
|
+
gap: 4px;
|
|
1463
|
+
min-width: 140px;
|
|
1464
|
+
}
|
|
1465
|
+
|
|
1466
|
+
.config-module-tags {
|
|
1467
|
+
display: flex;
|
|
1468
|
+
flex-wrap: wrap;
|
|
1469
|
+
gap: 4px;
|
|
1470
|
+
}
|
|
1471
|
+
|
|
1472
|
+
/* A second, quieter line inside a cell (assembly, artifact path, override path). */
|
|
1473
|
+
.config-sub {
|
|
1474
|
+
display: block;
|
|
1475
|
+
max-width: 280px;
|
|
1476
|
+
color: var(--muted);
|
|
1477
|
+
font-size: 11px;
|
|
1478
|
+
line-height: 1.45;
|
|
1479
|
+
word-break: break-all;
|
|
1480
|
+
}
|
|
1481
|
+
|
|
1482
|
+
.chip-tag.source-remote {
|
|
1483
|
+
color: #c9d4ff;
|
|
1484
|
+
border-color: rgba(77, 107, 254, .35);
|
|
1485
|
+
}
|
|
1486
|
+
|
|
1487
|
+
.chip-tag.source-local {
|
|
1488
|
+
color: var(--cyan);
|
|
1489
|
+
background: rgba(53, 208, 232, .12);
|
|
1490
|
+
border-color: rgba(53, 208, 232, .35);
|
|
1491
|
+
}
|
|
1492
|
+
|
|
1493
|
+
/* A worker is a mapping of its own: the chip makes it stand out in the table. */
|
|
1494
|
+
.chip-tag.source-worker {
|
|
1495
|
+
color: var(--ok);
|
|
1496
|
+
background: rgba(61, 220, 151, .12);
|
|
1497
|
+
border-color: rgba(61, 220, 151, .35);
|
|
1498
|
+
}
|
|
1499
|
+
|
|
1500
|
+
/* One line per manifest mapping, directly under the module name. */
|
|
1501
|
+
.config-mappings {
|
|
1502
|
+
display: grid;
|
|
1503
|
+
gap: 3px;
|
|
1504
|
+
min-width: 0;
|
|
1505
|
+
}
|
|
1506
|
+
|
|
1507
|
+
.config-mappings-label {
|
|
1508
|
+
color: var(--muted);
|
|
1509
|
+
font-size: 11px;
|
|
1510
|
+
}
|
|
1511
|
+
|
|
1512
|
+
.config-mapping {
|
|
1513
|
+
display: flex;
|
|
1514
|
+
flex-wrap: wrap;
|
|
1515
|
+
align-items: baseline;
|
|
1516
|
+
gap: 4px;
|
|
1517
|
+
min-width: 0;
|
|
1518
|
+
}
|
|
1519
|
+
|
|
1520
|
+
.config-mapping-text {
|
|
1521
|
+
max-width: 300px;
|
|
1522
|
+
font-size: 11.5px;
|
|
1523
|
+
line-height: 1.45;
|
|
1524
|
+
word-break: break-all;
|
|
1525
|
+
}
|
|
1526
|
+
|
|
1527
|
+
.config-sep {
|
|
1528
|
+
color: var(--muted);
|
|
1529
|
+
}
|
|
1530
|
+
|
|
1531
|
+
.config-mappings-fold summary {
|
|
1532
|
+
cursor: pointer;
|
|
1533
|
+
}
|
|
1534
|
+
|
|
1535
|
+
.config-mappings-fold .config-mappings {
|
|
1536
|
+
margin-top: 6px;
|
|
1537
|
+
}
|
|
1538
|
+
|
|
1539
|
+
.config-digest {
|
|
1540
|
+
color: var(--muted);
|
|
1541
|
+
white-space: nowrap;
|
|
1542
|
+
}
|
|
1543
|
+
|
|
1544
|
+
.config-overrides,
|
|
1545
|
+
.config-services,
|
|
1546
|
+
.config-paths {
|
|
1547
|
+
display: grid;
|
|
1548
|
+
gap: 6px;
|
|
1549
|
+
margin: 0;
|
|
1550
|
+
padding: 0;
|
|
1551
|
+
list-style: none;
|
|
1552
|
+
}
|
|
1553
|
+
|
|
1554
|
+
.config-override,
|
|
1555
|
+
.config-service {
|
|
1556
|
+
display: flex;
|
|
1557
|
+
flex-wrap: wrap;
|
|
1558
|
+
align-items: baseline;
|
|
1559
|
+
gap: 8px;
|
|
1560
|
+
min-width: 0;
|
|
1561
|
+
}
|
|
1562
|
+
|
|
1563
|
+
.config-override .config-sub {
|
|
1564
|
+
max-width: 100%;
|
|
1565
|
+
}
|
|
1566
|
+
|
|
1567
|
+
.config-paths {
|
|
1568
|
+
max-height: 200px;
|
|
1569
|
+
overflow: auto;
|
|
1570
|
+
margin-top: 8px;
|
|
1571
|
+
padding: 10px;
|
|
1572
|
+
background: rgba(0, 0, 0, .35);
|
|
1573
|
+
border: 1px solid var(--border);
|
|
1574
|
+
border-radius: 10px;
|
|
1575
|
+
font-size: 11.5px;
|
|
1576
|
+
}
|
|
1577
|
+
|
|
1578
|
+
.config-paths li {
|
|
1579
|
+
word-break: break-all;
|
|
1580
|
+
}
|
|
1581
|
+
|
|
1582
|
+
.config-collapse summary {
|
|
1583
|
+
cursor: pointer;
|
|
1584
|
+
}
|
|
1585
|
+
|
|
1586
|
+
@media (max-width: 620px) {
|
|
1587
|
+
/* One line per field: the label no longer squeezes the value column. */
|
|
1588
|
+
.config-field {
|
|
1589
|
+
grid-template-columns: minmax(0, 1fr);
|
|
1590
|
+
gap: 2px;
|
|
1591
|
+
}
|
|
1592
|
+
|
|
1593
|
+
.config-sub {
|
|
1594
|
+
max-width: none;
|
|
1595
|
+
}
|
|
1596
|
+
}
|