@pure-ds/core 0.7.19 → 0.7.21
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/.cursorrules +10 -0
- package/.github/copilot-instructions.md +10 -0
- package/custom-elements.json +232 -25
- package/dist/types/public/assets/js/pds-manager.d.ts.map +1 -1
- package/dist/types/public/assets/pds/components/pds-code.d.ts +19 -0
- package/dist/types/public/assets/pds/components/pds-code.d.ts.map +1 -0
- package/dist/types/public/assets/pds/components/pds-icon.d.ts +31 -1
- package/dist/types/public/assets/pds/components/pds-icon.d.ts.map +1 -1
- package/dist/types/public/assets/pds/components/pds-treeview.d.ts +271 -16
- package/dist/types/public/assets/pds/components/pds-treeview.d.ts.map +1 -1
- package/dist/types/src/js/components/pds-code.d.ts +19 -0
- package/dist/types/src/js/components/pds-code.d.ts.map +1 -0
- package/dist/types/src/js/external/shiki.d.ts +3 -0
- package/dist/types/src/js/external/shiki.d.ts.map +1 -0
- package/dist/types/src/js/pds-core/pds-generator.d.ts.map +1 -1
- package/package.json +1 -1
- package/packages/pds-cli/bin/templates/bootstrap/public/assets/my/my-home.js +1 -1
- package/public/assets/js/app.js +1 -1
- package/public/assets/js/pds-manager.js +138 -148
- package/public/assets/pds/components/pds-calendar.js +504 -16
- package/public/assets/pds/components/pds-code.js +203 -0
- package/public/assets/pds/components/pds-icon.js +102 -27
- package/public/assets/pds/components/pds-live-importer.js +2 -2
- package/public/assets/pds/components/pds-scrollrow.js +27 -2
- package/public/assets/pds/components/pds-treeview.js +185 -0
- package/public/assets/pds/core/pds-manager.js +138 -148
- package/public/assets/pds/custom-elements.json +263 -18
- package/public/assets/pds/external/shiki.js +32 -0
- package/public/assets/pds/pds-css-complete.json +1 -1
- package/public/assets/pds/templates/feedback-ops-dashboard.html +1 -1
- package/public/assets/pds/templates/release-readiness-radar.html +2 -2
- package/public/assets/pds/templates/support-command-center.html +1 -1
- package/src/js/pds-core/pds-generator.js +142 -152
|
@@ -2315,8 +2315,10 @@ input[type="color"] {
|
|
|
2315
2315
|
pointer-events: none;
|
|
2316
2316
|
}
|
|
2317
2317
|
|
|
2318
|
-
|
|
2319
|
-
input[type="checkbox"]
|
|
2318
|
+
:is(
|
|
2319
|
+
label:has(input[type="checkbox"]),
|
|
2320
|
+
input[type="checkbox"] + label
|
|
2321
|
+
):not(fieldset label):not(label[data-toggle]) {
|
|
2320
2322
|
display: inline-flex;
|
|
2321
2323
|
align-items: center;
|
|
2322
2324
|
justify-content: center;
|
|
@@ -2345,44 +2347,44 @@ input[type="checkbox"] + label:not(fieldset label):not(label[data-toggle]) {
|
|
|
2345
2347
|
background-color: var(--color-surface-subtle);
|
|
2346
2348
|
border-color: var(--color-primary-500);
|
|
2347
2349
|
}
|
|
2348
|
-
}
|
|
2349
2350
|
|
|
2350
|
-
|
|
2351
|
-
input[type="checkbox"]:checked + label:not(fieldset label):not(label[data-toggle]) {
|
|
2352
|
-
|
|
2353
|
-
|
|
2354
|
-
|
|
2355
|
-
|
|
2356
|
-
|
|
2357
|
-
|
|
2358
|
-
|
|
2359
|
-
|
|
2360
|
-
|
|
2351
|
+
&:has(input[type="checkbox"]:checked),
|
|
2352
|
+
input[type="checkbox"]:checked + label:not(fieldset label):not(label[data-toggle]) {
|
|
2353
|
+
background-color: color-mix(in oklab, var(--color-primary-500) 8%, transparent);
|
|
2354
|
+
color: var(--color-primary-700);
|
|
2355
|
+
border-color: var(--color-primary-500);
|
|
2356
|
+
border-width: var(--border-width-medium);
|
|
2357
|
+
font-weight: var(--font-weight-semibold);
|
|
2358
|
+
|
|
2359
|
+
&:hover {
|
|
2360
|
+
background-color: color-mix(in oklab, var(--color-primary-500) 15%, transparent);
|
|
2361
|
+
border-color: var(--color-primary-600);
|
|
2362
|
+
}
|
|
2361
2363
|
}
|
|
2362
|
-
}
|
|
2363
2364
|
|
|
2364
|
-
|
|
2365
|
-
input[type="checkbox"]:focus + label:not(fieldset label):not(label[data-toggle]) {
|
|
2366
|
-
|
|
2367
|
-
|
|
2368
|
-
|
|
2369
|
-
|
|
2370
|
-
}
|
|
2365
|
+
&:has(input[type="checkbox"]:focus),
|
|
2366
|
+
input[type="checkbox"]:focus + label:not(fieldset label):not(label[data-toggle]) {
|
|
2367
|
+
outline: none;
|
|
2368
|
+
box-shadow: 0 0 0 ${focusWidth}px color-mix(in oklab, var(--color-primary-500) ${Math.round(
|
|
2369
|
+
(focusRingOpacity || 0.3) * 100,
|
|
2370
|
+
)}%, transparent);
|
|
2371
|
+
}
|
|
2371
2372
|
|
|
2372
|
-
|
|
2373
|
-
input[type="checkbox"]:disabled + label:not(fieldset label):not(label[data-toggle]) {
|
|
2374
|
-
|
|
2375
|
-
|
|
2376
|
-
|
|
2377
|
-
|
|
2378
|
-
|
|
2379
|
-
}
|
|
2373
|
+
&:has(input[type="checkbox"]:disabled),
|
|
2374
|
+
input[type="checkbox"]:disabled + label:not(fieldset label):not(label[data-toggle]) {
|
|
2375
|
+
background-color: var(--color-input-disabled-bg);
|
|
2376
|
+
color: var(--color-input-disabled-text);
|
|
2377
|
+
border-color: var(--color-border);
|
|
2378
|
+
cursor: not-allowed;
|
|
2379
|
+
opacity: 0.6;
|
|
2380
|
+
}
|
|
2380
2381
|
|
|
2381
|
-
|
|
2382
|
-
input[type="checkbox"]:checked:disabled + label:not(fieldset label):not(label[data-toggle]) {
|
|
2383
|
-
|
|
2384
|
-
|
|
2385
|
-
|
|
2382
|
+
&:has(input[type="checkbox"]:checked:disabled),
|
|
2383
|
+
input[type="checkbox"]:checked:disabled + label:not(fieldset label):not(label[data-toggle]) {
|
|
2384
|
+
background-color: var(--color-input-disabled-bg);
|
|
2385
|
+
color: var(--color-input-disabled-text);
|
|
2386
|
+
border-color: var(--color-border);
|
|
2387
|
+
}
|
|
2386
2388
|
}
|
|
2387
2389
|
|
|
2388
2390
|
/* Keep default checkbox/radio for inputs NOT in special containers */
|
|
@@ -2455,53 +2457,49 @@ fieldset[role="group"].buttons {
|
|
|
2455
2457
|
color: var(--color-text-primary);
|
|
2456
2458
|
}
|
|
2457
2459
|
|
|
2458
|
-
&:has([disabled]){
|
|
2460
|
+
&:has([disabled]) {
|
|
2459
2461
|
pointer-events: none;
|
|
2460
2462
|
}
|
|
2461
|
-
|
|
2462
|
-
|
|
2463
|
-
|
|
2464
|
-
|
|
2465
|
-
|
|
2466
|
-
|
|
2467
|
-
|
|
2468
|
-
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2472
|
-
|
|
2463
|
+
|
|
2464
|
+
&:has(input:is([type="radio"], [type="checkbox"]):checked) {
|
|
2465
|
+
background-color: color-mix(in oklab, var(--color-primary-500) 8%, transparent);
|
|
2466
|
+
border-color: var(--color-primary-500);
|
|
2467
|
+
border-width: var(--border-width-medium);
|
|
2468
|
+
font-weight: var(--font-weight-semibold);
|
|
2469
|
+
|
|
2470
|
+
&:hover {
|
|
2471
|
+
background-color: color-mix(in oklab, var(--color-primary-500) 15%, transparent);
|
|
2472
|
+
border-color: var(--color-primary-600);
|
|
2473
|
+
}
|
|
2474
|
+
}
|
|
2475
|
+
|
|
2476
|
+
&:has(input:is([type="radio"], [type="checkbox"]):focus) {
|
|
2477
|
+
outline: none;
|
|
2478
|
+
box-shadow: 0 0 0 ${focusWidth}px color-mix(in oklab, var(--color-primary-500) ${Math.round(
|
|
2479
|
+
(focusRingOpacity || 0.3) * 100,
|
|
2480
|
+
)}%, transparent);
|
|
2481
|
+
}
|
|
2482
|
+
|
|
2483
|
+
&:has(input:is([type="radio"], [type="checkbox"]):disabled) {
|
|
2484
|
+
background-color: var(--color-input-disabled-bg);
|
|
2485
|
+
color: var(--color-input-disabled-text);
|
|
2486
|
+
border-color: var(--color-border);
|
|
2487
|
+
cursor: not-allowed;
|
|
2488
|
+
opacity: 0.6;
|
|
2489
|
+
}
|
|
2490
|
+
|
|
2491
|
+
&:has(input:is([type="radio"], [type="checkbox"]):checked:disabled) {
|
|
2492
|
+
background-color: var(--color-input-disabled-bg);
|
|
2493
|
+
color: var(--color-input-disabled-text);
|
|
2494
|
+
border-color: var(--color-border);
|
|
2473
2495
|
}
|
|
2474
|
-
}
|
|
2475
|
-
|
|
2476
|
-
label:has(input[type="radio"]:focus),
|
|
2477
|
-
label:has(input[type="checkbox"]:focus) {
|
|
2478
|
-
outline: none;
|
|
2479
|
-
box-shadow: 0 0 0 ${focusWidth}px color-mix(in oklab, var(--color-primary-500) ${Math.round(
|
|
2480
|
-
(focusRingOpacity || 0.3) * 100,
|
|
2481
|
-
)}%, transparent);
|
|
2482
|
-
}
|
|
2483
|
-
|
|
2484
|
-
label:has(input[type="radio"]:disabled),
|
|
2485
|
-
label:has(input[type="checkbox"]:disabled) {
|
|
2486
|
-
background-color: var(--color-input-disabled-bg);
|
|
2487
|
-
color: var(--color-input-disabled-text);
|
|
2488
|
-
border-color: var(--color-border);
|
|
2489
|
-
cursor: not-allowed;
|
|
2490
|
-
opacity: 0.6;
|
|
2491
|
-
}
|
|
2492
|
-
|
|
2493
|
-
label:has(input[type="radio"]:checked:disabled),
|
|
2494
|
-
label:has(input[type="checkbox"]:checked:disabled) {
|
|
2495
|
-
background-color: var(--color-input-disabled-bg);
|
|
2496
|
-
color: var(--color-input-disabled-text);
|
|
2497
|
-
border-color: var(--color-border);
|
|
2498
2496
|
}
|
|
2499
2497
|
}
|
|
2500
2498
|
|
|
2501
2499
|
/* Toggle switches - enhanced checkboxes with data-toggle attribute */
|
|
2502
2500
|
label[data-toggle] {
|
|
2503
2501
|
display: inline-flex;
|
|
2504
|
-
align-items:
|
|
2502
|
+
align-items: center;
|
|
2505
2503
|
gap: var(--spacing-3);
|
|
2506
2504
|
cursor: pointer;
|
|
2507
2505
|
user-select: none;
|
|
@@ -2516,6 +2514,10 @@ label[data-toggle] {
|
|
|
2516
2514
|
display: none;
|
|
2517
2515
|
}
|
|
2518
2516
|
|
|
2517
|
+
span[data-label] {
|
|
2518
|
+
margin-bottom: 0;
|
|
2519
|
+
}
|
|
2520
|
+
|
|
2519
2521
|
/* Toggle switch container */
|
|
2520
2522
|
.toggle-switch {
|
|
2521
2523
|
position: relative;
|
|
@@ -2556,29 +2558,22 @@ label[data-toggle] {
|
|
|
2556
2558
|
transition: opacity 200ms ease;
|
|
2557
2559
|
}
|
|
2558
2560
|
|
|
2559
|
-
|
|
2560
|
-
|
|
2561
|
-
|
|
2562
|
-
|
|
2563
|
-
|
|
2564
|
-
/* Toggle switch when checked - using :has() selector */
|
|
2565
|
-
&:has(input[type="checkbox"]:checked) .toggle-switch {
|
|
2566
|
-
background-color: var(--color-primary-fill);
|
|
2567
|
-
}
|
|
2568
|
-
|
|
2561
|
+
&:has(input[type="checkbox"]:checked) {
|
|
2562
|
+
&.with-icons .toggle-knob::before {
|
|
2563
|
+
content: "✓";
|
|
2564
|
+
color: var(--color-primary-600);
|
|
2565
|
+
}
|
|
2569
2566
|
|
|
2570
|
-
|
|
2571
|
-
|
|
2572
|
-
|
|
2573
|
-
}
|
|
2567
|
+
.toggle-switch {
|
|
2568
|
+
background-color: var(--color-primary-fill);
|
|
2569
|
+
}
|
|
2574
2570
|
|
|
2575
|
-
|
|
2576
|
-
|
|
2577
|
-
|
|
2578
|
-
outline-offset: 2px;
|
|
2571
|
+
.toggle-knob {
|
|
2572
|
+
left: 22px;
|
|
2573
|
+
}
|
|
2579
2574
|
}
|
|
2580
2575
|
|
|
2581
|
-
|
|
2576
|
+
&:has(input[type="checkbox"]:focus) .toggle-switch,
|
|
2582
2577
|
&:focus-visible .toggle-switch {
|
|
2583
2578
|
outline: 2px solid var(--color-primary-500);
|
|
2584
2579
|
outline-offset: 2px;
|
|
@@ -4697,15 +4692,9 @@ nav[data-dropdown] {
|
|
|
4697
4692
|
|
|
4698
4693
|
/* Checkbox enhancement - visually hide native input but keep accessible
|
|
4699
4694
|
Excludes button-style checkboxes in fieldsets and special containers */
|
|
4700
|
-
:where(
|
|
4701
|
-
|
|
4702
|
-
|
|
4703
|
-
width: 1px;
|
|
4704
|
-
height: 1px;
|
|
4705
|
-
}
|
|
4706
|
-
|
|
4707
|
-
/* Style label container for checkbox */
|
|
4708
|
-
:where(label:not(fieldset label, .checkbox-container label, [data-toggle]):has(input[type="checkbox"])) {
|
|
4695
|
+
:where(
|
|
4696
|
+
label:not(fieldset label, .checkbox-container label, [data-toggle]):has(input[type="checkbox"])
|
|
4697
|
+
) {
|
|
4709
4698
|
display: inline-flex;
|
|
4710
4699
|
align-items: center;
|
|
4711
4700
|
gap: var(--spacing-2);
|
|
@@ -4713,64 +4702,65 @@ nav[data-dropdown] {
|
|
|
4713
4702
|
user-select: none;
|
|
4714
4703
|
position: relative;
|
|
4715
4704
|
padding-left: calc(var(--spacing-5) + var(--spacing-3));
|
|
4716
|
-
}
|
|
4717
4705
|
|
|
4718
|
-
|
|
4719
|
-
|
|
4720
|
-
|
|
4721
|
-
|
|
4722
|
-
|
|
4723
|
-
|
|
4724
|
-
transform: translateY(-50%);
|
|
4725
|
-
width: var(--spacing-5);
|
|
4726
|
-
height: var(--spacing-5);
|
|
4727
|
-
border: var(--border-width-medium) solid var(--color-border);
|
|
4728
|
-
border-radius: var(--radius-sm);
|
|
4729
|
-
background: var(--color-surface-base);
|
|
4730
|
-
transition: all var(--transition-fast);
|
|
4731
|
-
flex-shrink: 0;
|
|
4732
|
-
}
|
|
4706
|
+
input[type="checkbox"] {
|
|
4707
|
+
position: absolute;
|
|
4708
|
+
opacity: 0;
|
|
4709
|
+
width: 1px;
|
|
4710
|
+
height: 1px;
|
|
4711
|
+
}
|
|
4733
4712
|
|
|
4734
|
-
|
|
4735
|
-
|
|
4736
|
-
|
|
4737
|
-
|
|
4738
|
-
|
|
4739
|
-
|
|
4740
|
-
|
|
4741
|
-
|
|
4742
|
-
|
|
4743
|
-
|
|
4744
|
-
|
|
4745
|
-
|
|
4713
|
+
&::before {
|
|
4714
|
+
content: "";
|
|
4715
|
+
position: absolute;
|
|
4716
|
+
left: 0;
|
|
4717
|
+
top: 50%;
|
|
4718
|
+
transform: translateY(-50%);
|
|
4719
|
+
width: var(--spacing-5);
|
|
4720
|
+
height: var(--spacing-5);
|
|
4721
|
+
border: var(--border-width-medium) solid var(--color-border);
|
|
4722
|
+
border-radius: var(--radius-sm);
|
|
4723
|
+
background: var(--color-surface-base);
|
|
4724
|
+
transition: all var(--transition-fast);
|
|
4725
|
+
flex-shrink: 0;
|
|
4726
|
+
}
|
|
4746
4727
|
|
|
4747
|
-
|
|
4748
|
-
|
|
4749
|
-
|
|
4750
|
-
|
|
4751
|
-
|
|
4728
|
+
&:has(input[type="checkbox"]:checked)::after {
|
|
4729
|
+
content: "";
|
|
4730
|
+
position: absolute;
|
|
4731
|
+
left: var(--spacing-2);
|
|
4732
|
+
top: 50%;
|
|
4733
|
+
transform: translateY(-60%) rotate(45deg);
|
|
4734
|
+
width: var(--spacing-1-5);
|
|
4735
|
+
height: var(--spacing-3);
|
|
4736
|
+
border: solid var(--color-primary-contrast, white);
|
|
4737
|
+
border-width: 0 2px 2px 0;
|
|
4738
|
+
}
|
|
4752
4739
|
|
|
4753
|
-
|
|
4754
|
-
|
|
4755
|
-
|
|
4756
|
-
|
|
4757
|
-
}
|
|
4740
|
+
&:has(input[type="checkbox"]:checked)::before {
|
|
4741
|
+
background: var(--color-primary-600);
|
|
4742
|
+
border-color: var(--color-primary-600);
|
|
4743
|
+
}
|
|
4758
4744
|
|
|
4759
|
-
|
|
4760
|
-
|
|
4761
|
-
|
|
4762
|
-
|
|
4763
|
-
}
|
|
4745
|
+
&:has(input[type="checkbox"]:focus)::before {
|
|
4746
|
+
outline: 2px solid var(--color-primary-500);
|
|
4747
|
+
outline-offset: 2px;
|
|
4748
|
+
}
|
|
4764
4749
|
|
|
4765
|
-
|
|
4766
|
-
|
|
4767
|
-
|
|
4768
|
-
|
|
4750
|
+
&:has(input[type="checkbox"]:not(:disabled)):hover::before {
|
|
4751
|
+
border-color: var(--color-primary-600);
|
|
4752
|
+
background: var(--color-surface-subtle);
|
|
4753
|
+
}
|
|
4769
4754
|
|
|
4770
|
-
|
|
4771
|
-
|
|
4772
|
-
|
|
4773
|
-
|
|
4755
|
+
&:has(input[type="checkbox"]:checked:not(:disabled)):hover::before {
|
|
4756
|
+
background: var(--color-primary-700);
|
|
4757
|
+
border-color: var(--color-primary-700);
|
|
4758
|
+
}
|
|
4759
|
+
|
|
4760
|
+
&:has(input[type="checkbox"]:disabled) {
|
|
4761
|
+
opacity: 0.5;
|
|
4762
|
+
cursor: not-allowed;
|
|
4763
|
+
}
|
|
4774
4764
|
}
|
|
4775
4765
|
|
|
4776
4766
|
:where(fieldset) {
|