@threadlabs/looma 0.39.6 → 0.41.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.
- package/components/ui-button/ui-button.html +8 -10
- package/components/ui-button/ui-button.js +5 -2
- package/components/ui-editor-link-card/ui-editor-link-card.html +0 -1
- package/components/ui-pagination/ui-pagination.html +3 -6
- package/components/ui-site-header/ui-site-header.html +164 -0
- package/dist/index.js +1 -1
- package/docs/card.html +1 -1
- package/docs/catalog.json +207 -32
- package/package.json +1 -1
- package/styles/ui-site-header.css +165 -0
- package/vanilla/UiButton.d.ts +0 -1
- package/vanilla/UiButton.js +71 -71
- package/vanilla/UiEditorLinkCard.js +1 -1
- package/vanilla/UiPagination.js +44 -57
- package/vanilla/UiSiteHeader.d.ts +25 -0
- package/vanilla/UiSiteHeader.js +96 -0
- package/vanilla/index.js +1 -0
- package/vue/UiButton.d.ts +0 -6
- package/vue/UiButton.vue +8 -30
- package/vue/UiEditorLinkCard.vue +0 -1
- package/vue/UiPagination.vue +13 -15
- package/vue/UiSiteHeader.d.ts +47 -0
- package/vue/UiSiteHeader.js +2 -0
- package/vue/UiSiteHeader.vue +299 -0
- package/vue/chunks/UiButton.js +8 -36
- package/vue/chunks/UiEditorLinkCard.js +0 -1
- package/vue/chunks/UiPagination.js +13 -27
- package/vue/chunks/UiSiteHeader.js +150 -0
- package/vue/components.css +154 -0
- package/vue/editor/index.js +107 -121
- package/vue/index.d.ts +1 -0
- package/vue/index.js +2 -1
package/docs/card.html
CHANGED
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
<p class="owner" $if="$packageName">{$packageName}</p>
|
|
33
33
|
<p class="example-caption" $if="$exampleTitle">{$exampleTitle}</p>
|
|
34
34
|
|
|
35
|
-
<footer><ui-button $if="$href"
|
|
35
|
+
<footer><ui-button $if="$href" from:href="$href" variant="link" size="sm">View component</ui-button><ui-button $if="$removable" $ref="remove" variant="ghost" size="sm">Remove</ui-button><slot name="actions"></slot></footer>
|
|
36
36
|
</ui-stack></div>
|
|
37
37
|
</article>
|
|
38
38
|
<style>
|
package/docs/catalog.json
CHANGED
|
@@ -365,6 +365,11 @@
|
|
|
365
365
|
"package": "@threadlabs/looma",
|
|
366
366
|
"resource": "@threadlabs/looma/components/ui-sidebar/ui-sidebar.html"
|
|
367
367
|
},
|
|
368
|
+
{
|
|
369
|
+
"tag": "ui-site-header",
|
|
370
|
+
"package": "@threadlabs/looma",
|
|
371
|
+
"resource": "@threadlabs/looma/components/ui-site-header/ui-site-header.html"
|
|
372
|
+
},
|
|
368
373
|
{
|
|
369
374
|
"tag": "ui-skeleton",
|
|
370
375
|
"package": "@threadlabs/looma",
|
|
@@ -458,7 +463,7 @@
|
|
|
458
463
|
],
|
|
459
464
|
"schemaVersion": 1,
|
|
460
465
|
"package": "@threadlabs/looma",
|
|
461
|
-
"version": "0.
|
|
466
|
+
"version": "0.41.0",
|
|
462
467
|
"groups": [
|
|
463
468
|
{
|
|
464
469
|
"id": "layout",
|
|
@@ -2484,28 +2489,17 @@
|
|
|
2484
2489
|
"start"
|
|
2485
2490
|
]
|
|
2486
2491
|
},
|
|
2487
|
-
{
|
|
2488
|
-
"name": "as",
|
|
2489
|
-
"property": "as",
|
|
2490
|
-
"description": "The native element the button renders: a button, or a link (a) that navigates to href.",
|
|
2491
|
-
"type": "keyword",
|
|
2492
|
-
"default": "button",
|
|
2493
|
-
"options": [
|
|
2494
|
-
"button",
|
|
2495
|
-
"a"
|
|
2496
|
-
]
|
|
2497
|
-
},
|
|
2498
2492
|
{
|
|
2499
2493
|
"name": "disabled",
|
|
2500
2494
|
"property": "disabled",
|
|
2501
|
-
"description": "Makes the button unavailable: it cannot be pressed, uses a flat neutral palette, and loses its raised look. A disabled link (
|
|
2495
|
+
"description": "Makes the button unavailable: it cannot be pressed, uses a flat neutral palette, and loses its raised look. A disabled link (with href) drops its href and states aria-disabled=\"true\" instead, because a link has no native disabled state.",
|
|
2502
2496
|
"type": "boolean",
|
|
2503
2497
|
"default": false
|
|
2504
2498
|
},
|
|
2505
2499
|
{
|
|
2506
2500
|
"name": "href",
|
|
2507
2501
|
"property": "href",
|
|
2508
|
-
"description": "The link's destination.
|
|
2502
|
+
"description": "The link's destination. Supplying href automatically renders a native link instead of a button, including an empty href for the current document. A disabled link drops its href and states aria-disabled=\"true\", so it cannot be followed.",
|
|
2509
2503
|
"type": "string"
|
|
2510
2504
|
},
|
|
2511
2505
|
{
|
|
@@ -2539,7 +2533,7 @@
|
|
|
2539
2533
|
{
|
|
2540
2534
|
"name": "rel",
|
|
2541
2535
|
"property": "rel",
|
|
2542
|
-
"description": "The link's relationship to its destination, as on a native link. Only meaningful with
|
|
2536
|
+
"description": "The link's relationship to its destination, as on a native link. Only meaningful with href.",
|
|
2543
2537
|
"type": "string"
|
|
2544
2538
|
},
|
|
2545
2539
|
{
|
|
@@ -2583,7 +2577,7 @@
|
|
|
2583
2577
|
{
|
|
2584
2578
|
"name": "target",
|
|
2585
2579
|
"property": "target",
|
|
2586
|
-
"description": "Where a link opens, as on a native link. Only meaningful with
|
|
2580
|
+
"description": "Where a link opens, as on a native link. Only meaningful with href.",
|
|
2587
2581
|
"type": "string"
|
|
2588
2582
|
},
|
|
2589
2583
|
{
|
|
@@ -2641,25 +2635,15 @@
|
|
|
2641
2635
|
"start"
|
|
2642
2636
|
]
|
|
2643
2637
|
},
|
|
2644
|
-
{
|
|
2645
|
-
"name": "as",
|
|
2646
|
-
"description": "The native element the button renders: a button, or a link (a) that navigates to href.",
|
|
2647
|
-
"type": "\"button\" | \"a\"",
|
|
2648
|
-
"default": "button",
|
|
2649
|
-
"options": [
|
|
2650
|
-
"button",
|
|
2651
|
-
"a"
|
|
2652
|
-
]
|
|
2653
|
-
},
|
|
2654
2638
|
{
|
|
2655
2639
|
"name": "disabled",
|
|
2656
|
-
"description": "Makes the button unavailable: it cannot be pressed, uses a flat neutral palette, and loses its raised look. A disabled link (
|
|
2640
|
+
"description": "Makes the button unavailable: it cannot be pressed, uses a flat neutral palette, and loses its raised look. A disabled link (with href) drops its href and states aria-disabled=\"true\" instead, because a link has no native disabled state.",
|
|
2657
2641
|
"type": "boolean",
|
|
2658
2642
|
"default": false
|
|
2659
2643
|
},
|
|
2660
2644
|
{
|
|
2661
2645
|
"name": "href",
|
|
2662
|
-
"description": "The link's destination.
|
|
2646
|
+
"description": "The link's destination. Supplying href automatically renders a native link instead of a button, including an empty href for the current document. A disabled link drops its href and states aria-disabled=\"true\", so it cannot be followed.",
|
|
2663
2647
|
"type": "string"
|
|
2664
2648
|
},
|
|
2665
2649
|
{
|
|
@@ -2689,7 +2673,7 @@
|
|
|
2689
2673
|
},
|
|
2690
2674
|
{
|
|
2691
2675
|
"name": "rel",
|
|
2692
|
-
"description": "The link's relationship to its destination, as on a native link. Only meaningful with
|
|
2676
|
+
"description": "The link's relationship to its destination, as on a native link. Only meaningful with href.",
|
|
2693
2677
|
"type": "string"
|
|
2694
2678
|
},
|
|
2695
2679
|
{
|
|
@@ -2728,7 +2712,7 @@
|
|
|
2728
2712
|
},
|
|
2729
2713
|
{
|
|
2730
2714
|
"name": "target",
|
|
2731
|
-
"description": "Where a link opens, as on a native link. Only meaningful with
|
|
2715
|
+
"description": "Where a link opens, as on a native link. Only meaningful with href.",
|
|
2732
2716
|
"type": "string"
|
|
2733
2717
|
},
|
|
2734
2718
|
{
|
|
@@ -2864,8 +2848,8 @@
|
|
|
2864
2848
|
"id": "@threadlabs/looma/ui-button/07-as-link",
|
|
2865
2849
|
"name": "07-as-link",
|
|
2866
2850
|
"title": "as a link",
|
|
2867
|
-
"description": "
|
|
2868
|
-
"markup": "<ui-cluster gap=\"s\">\n <ui-button
|
|
2851
|
+
"description": "Supplying href automatically renders a real link that looks and responds exactly like the button, in every variant. target and rel pass to the link. A disabled link drops its href and states aria-disabled, so it cannot be followed.",
|
|
2852
|
+
"markup": "<ui-cluster gap=\"s\">\n <ui-button href=\"#get-started\" variant=\"solid\">Get started</ui-button>\n <ui-button href=\"https://example.com/\" target=\"_blank\" rel=\"noreferrer\">Read the guide</ui-button>\n <ui-button href=\"#get-started\" disabled>Unavailable</ui-button>\n</ui-cluster>",
|
|
2869
2853
|
"resizable": false,
|
|
2870
2854
|
"bindings": "",
|
|
2871
2855
|
"frameworks": {}
|
|
@@ -20408,6 +20392,197 @@
|
|
|
20408
20392
|
}
|
|
20409
20393
|
]
|
|
20410
20394
|
},
|
|
20395
|
+
{
|
|
20396
|
+
"tag": "ui-site-header",
|
|
20397
|
+
"package": "@threadlabs/looma",
|
|
20398
|
+
"root": "header",
|
|
20399
|
+
"description": "A responsive site banner with slots for branding, navigation links, actions, and a consumer-owned mobile menu trigger. Keeps text baselines aligned while centering controls of different heights.",
|
|
20400
|
+
"designTokens": {
|
|
20401
|
+
"sources": [
|
|
20402
|
+
"packages/looma/src/components/ui-site-header/ui-site-header.html"
|
|
20403
|
+
],
|
|
20404
|
+
"component": [
|
|
20405
|
+
{
|
|
20406
|
+
"name": "--ui-site-header-border",
|
|
20407
|
+
"fallbacks": [
|
|
20408
|
+
"var(--ui-border)"
|
|
20409
|
+
]
|
|
20410
|
+
},
|
|
20411
|
+
{
|
|
20412
|
+
"name": "--ui-site-header-compact-height",
|
|
20413
|
+
"fallbacks": [
|
|
20414
|
+
"3.75rem"
|
|
20415
|
+
]
|
|
20416
|
+
},
|
|
20417
|
+
{
|
|
20418
|
+
"name": "--ui-site-header-height",
|
|
20419
|
+
"fallbacks": [
|
|
20420
|
+
"4.25rem"
|
|
20421
|
+
]
|
|
20422
|
+
},
|
|
20423
|
+
{
|
|
20424
|
+
"name": "--ui-site-header-padding-inline",
|
|
20425
|
+
"fallbacks": [
|
|
20426
|
+
"var(--ui-space-4)"
|
|
20427
|
+
]
|
|
20428
|
+
},
|
|
20429
|
+
{
|
|
20430
|
+
"name": "--ui-site-header-surface",
|
|
20431
|
+
"fallbacks": [
|
|
20432
|
+
"var(--ui-surface)"
|
|
20433
|
+
]
|
|
20434
|
+
},
|
|
20435
|
+
{
|
|
20436
|
+
"name": "--ui-site-header-z-index",
|
|
20437
|
+
"fallbacks": [
|
|
20438
|
+
"10"
|
|
20439
|
+
]
|
|
20440
|
+
}
|
|
20441
|
+
],
|
|
20442
|
+
"shared": [
|
|
20443
|
+
{
|
|
20444
|
+
"name": "--ui-accent-active"
|
|
20445
|
+
},
|
|
20446
|
+
{
|
|
20447
|
+
"name": "--ui-border"
|
|
20448
|
+
},
|
|
20449
|
+
{
|
|
20450
|
+
"name": "--ui-border-width"
|
|
20451
|
+
},
|
|
20452
|
+
{
|
|
20453
|
+
"name": "--ui-focus-ring"
|
|
20454
|
+
},
|
|
20455
|
+
{
|
|
20456
|
+
"name": "--ui-focus-width"
|
|
20457
|
+
},
|
|
20458
|
+
{
|
|
20459
|
+
"name": "--ui-font-bold"
|
|
20460
|
+
},
|
|
20461
|
+
{
|
|
20462
|
+
"name": "--ui-font-semibold"
|
|
20463
|
+
},
|
|
20464
|
+
{
|
|
20465
|
+
"name": "--ui-font-size-lg"
|
|
20466
|
+
},
|
|
20467
|
+
{
|
|
20468
|
+
"name": "--ui-font-size-sm"
|
|
20469
|
+
},
|
|
20470
|
+
{
|
|
20471
|
+
"name": "--ui-space-2"
|
|
20472
|
+
},
|
|
20473
|
+
{
|
|
20474
|
+
"name": "--ui-space-3"
|
|
20475
|
+
},
|
|
20476
|
+
{
|
|
20477
|
+
"name": "--ui-space-4"
|
|
20478
|
+
},
|
|
20479
|
+
{
|
|
20480
|
+
"name": "--ui-space-5"
|
|
20481
|
+
},
|
|
20482
|
+
{
|
|
20483
|
+
"name": "--ui-space-6"
|
|
20484
|
+
},
|
|
20485
|
+
{
|
|
20486
|
+
"name": "--ui-surface"
|
|
20487
|
+
},
|
|
20488
|
+
{
|
|
20489
|
+
"name": "--ui-text-primary"
|
|
20490
|
+
}
|
|
20491
|
+
]
|
|
20492
|
+
},
|
|
20493
|
+
"attributes": [
|
|
20494
|
+
{
|
|
20495
|
+
"name": "breakpoint",
|
|
20496
|
+
"property": "breakpoint",
|
|
20497
|
+
"description": "The viewport width at which navigation replaces the menu trigger: sm is 40rem, md 48rem, and lg 64rem. The consumer owns the menu or drawer the trigger opens.",
|
|
20498
|
+
"type": "keyword",
|
|
20499
|
+
"default": "lg",
|
|
20500
|
+
"options": [
|
|
20501
|
+
"sm",
|
|
20502
|
+
"md",
|
|
20503
|
+
"lg"
|
|
20504
|
+
]
|
|
20505
|
+
},
|
|
20506
|
+
{
|
|
20507
|
+
"name": "label",
|
|
20508
|
+
"property": "label",
|
|
20509
|
+
"description": "Accessible name for the primary navigation region.",
|
|
20510
|
+
"type": "string",
|
|
20511
|
+
"default": "Main"
|
|
20512
|
+
},
|
|
20513
|
+
{
|
|
20514
|
+
"name": "sticky",
|
|
20515
|
+
"property": "sticky",
|
|
20516
|
+
"description": "Keeps the header at the top of its scrolling container.",
|
|
20517
|
+
"type": "boolean",
|
|
20518
|
+
"default": false
|
|
20519
|
+
}
|
|
20520
|
+
],
|
|
20521
|
+
"properties": [
|
|
20522
|
+
{
|
|
20523
|
+
"name": "breakpoint",
|
|
20524
|
+
"description": "The viewport width at which navigation replaces the menu trigger: sm is 40rem, md 48rem, and lg 64rem. The consumer owns the menu or drawer the trigger opens.",
|
|
20525
|
+
"type": "\"sm\" | \"md\" | \"lg\"",
|
|
20526
|
+
"default": "lg",
|
|
20527
|
+
"options": [
|
|
20528
|
+
"sm",
|
|
20529
|
+
"md",
|
|
20530
|
+
"lg"
|
|
20531
|
+
]
|
|
20532
|
+
},
|
|
20533
|
+
{
|
|
20534
|
+
"name": "label",
|
|
20535
|
+
"description": "Accessible name for the primary navigation region.",
|
|
20536
|
+
"type": "string",
|
|
20537
|
+
"default": "Main"
|
|
20538
|
+
},
|
|
20539
|
+
{
|
|
20540
|
+
"name": "sticky",
|
|
20541
|
+
"description": "Keeps the header at the top of its scrolling container.",
|
|
20542
|
+
"type": "boolean",
|
|
20543
|
+
"default": false
|
|
20544
|
+
}
|
|
20545
|
+
],
|
|
20546
|
+
"events": [],
|
|
20547
|
+
"slots": [
|
|
20548
|
+
{
|
|
20549
|
+
"name": "menu",
|
|
20550
|
+
"description": "Named content for the menu region."
|
|
20551
|
+
},
|
|
20552
|
+
{
|
|
20553
|
+
"name": "brand",
|
|
20554
|
+
"description": "Named content for the brand region."
|
|
20555
|
+
},
|
|
20556
|
+
{
|
|
20557
|
+
"name": "navigation",
|
|
20558
|
+
"description": "Named content for the navigation region."
|
|
20559
|
+
},
|
|
20560
|
+
{
|
|
20561
|
+
"name": "actions",
|
|
20562
|
+
"description": "Named content for the actions region."
|
|
20563
|
+
}
|
|
20564
|
+
],
|
|
20565
|
+
"group": "display",
|
|
20566
|
+
"id": "@threadlabs/looma/ui-site-header",
|
|
20567
|
+
"title": "Site Header",
|
|
20568
|
+
"resource": "@threadlabs/looma/components/ui-site-header/ui-site-header.html",
|
|
20569
|
+
"targets": [
|
|
20570
|
+
"html-next",
|
|
20571
|
+
"vue"
|
|
20572
|
+
],
|
|
20573
|
+
"examples": [
|
|
20574
|
+
{
|
|
20575
|
+
"id": "@threadlabs/looma/ui-site-header/01-default",
|
|
20576
|
+
"name": "01-default",
|
|
20577
|
+
"title": "Site navigation",
|
|
20578
|
+
"description": "A full-width header keeps its logo visible, places desktop navigation beside it, and puts search and account controls at the trailing edge. On mobile, the navigation moves into the menu.",
|
|
20579
|
+
"markup": "<ui-site-header>\n <a slot=\"brand\" href=\"#home\" aria-label=\"Folio home\"><ui-icon name=\"compass\"></ui-icon>Folio</a>\n <a slot=\"navigation\" href=\"#guide\" aria-current=\"page\">Guide</a>\n <a slot=\"navigation\" href=\"#components\">Components</a>\n <a slot=\"navigation\" href=\"#journal\">Journal</a>\n <ui-icon-button id=\"site-header-menu-trigger\" slot=\"menu\" size=\"sm\" label=\"Open navigation\"><ui-icon name=\"panel-left\"></ui-icon></ui-icon-button>\n <ui-cluster slot=\"actions\" gap=\"xs\">\n <ui-icon-button id=\"site-header-search-trigger\" size=\"sm\" label=\"Search pages\"><ui-icon name=\"search\"></ui-icon></ui-icon-button>\n <ui-icon-button id=\"site-header-account-trigger\" size=\"sm\" label=\"Account\"><ui-icon name=\"user-round\"></ui-icon></ui-icon-button>\n </ui-cluster>\n</ui-site-header>\n<ui-popover for=\"site-header-menu-trigger\"><nav aria-label=\"Compact navigation\">\n <ui-stack gap=\"s\"><a href=\"#guide\" aria-current=\"page\">Guide</a><a href=\"#components\">Components</a><a href=\"#journal\">Journal</a></ui-stack>\n </nav></ui-popover>\n<ui-popover for=\"site-header-search-trigger\"><ui-form-field>\n <label slot=\"label\" for=\"site-header-search\">Search pages</label><ui-input id=\"site-header-search\" type=\"search\" placeholder=\"Find a page\"></ui-input>\n </ui-form-field></ui-popover>\n<ui-popover for=\"site-header-account-trigger\"><nav aria-label=\"Account\">\n <ui-stack gap=\"s\"><a href=\"#profile\">Your profile</a><a href=\"#settings\">Settings</a></ui-stack>\n </nav></ui-popover>",
|
|
20580
|
+
"resizable": false,
|
|
20581
|
+
"bindings": "",
|
|
20582
|
+
"frameworks": {}
|
|
20583
|
+
}
|
|
20584
|
+
]
|
|
20585
|
+
},
|
|
20411
20586
|
{
|
|
20412
20587
|
"tag": "ui-skeleton",
|
|
20413
20588
|
"package": "@threadlabs/looma",
|
package/package.json
CHANGED
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/* Generated by HTML Next 1.0.0-alpha.69. Do not edit. */
|
|
2
|
+
@supports (-moz-appearance: none) {
|
|
3
|
+
:where([data-component], [data-slotted]) { --html-next-scope-owner: boundary; }
|
|
4
|
+
:where([data-slotted]:not([data-component])) { --html-next-scope-owner: projected !important; }
|
|
5
|
+
}
|
|
6
|
+
@supports (-moz-appearance: none) {
|
|
7
|
+
[data-component~="ui-site-header"] { --html-next-scope-owner: "ui-site-header" !important; }
|
|
8
|
+
}
|
|
9
|
+
@scope ([data-component~="ui-site-header"]) to ([data-component], [data-slotted]) {
|
|
10
|
+
@property --ui-site-header-height {
|
|
11
|
+
syntax: "*";
|
|
12
|
+
inherits: false;
|
|
13
|
+
}
|
|
14
|
+
@property --ui-site-header-compact-height {
|
|
15
|
+
syntax: "*";
|
|
16
|
+
inherits: false;
|
|
17
|
+
}
|
|
18
|
+
@property --ui-site-header-padding-inline {
|
|
19
|
+
syntax: "*";
|
|
20
|
+
inherits: false;
|
|
21
|
+
}
|
|
22
|
+
@property --ui-site-header-surface {
|
|
23
|
+
syntax: "*";
|
|
24
|
+
inherits: false;
|
|
25
|
+
}
|
|
26
|
+
@property --ui-site-header-border {
|
|
27
|
+
syntax: "*";
|
|
28
|
+
inherits: false;
|
|
29
|
+
}
|
|
30
|
+
@property --ui-site-header-z-index {
|
|
31
|
+
syntax: "*";
|
|
32
|
+
inherits: false;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
:scope:where([data-component~="ui-site-header"]) {
|
|
36
|
+
box-sizing: border-box !important;
|
|
37
|
+
display: flex !important;
|
|
38
|
+
flex-wrap: wrap !important;
|
|
39
|
+
align-items: center !important;
|
|
40
|
+
align-content: center !important;
|
|
41
|
+
gap: var(--ui-space-2) !important;
|
|
42
|
+
min-inline-size: 0;
|
|
43
|
+
min-block-size: var(--ui-site-header-compact-height, 3.75rem);
|
|
44
|
+
padding: var(--ui-space-2) var(--ui-site-header-padding-inline, var(--ui-space-4)) !important;
|
|
45
|
+
border-block-end: var(--ui-border-width) solid var(--ui-site-header-border, var(--ui-border));
|
|
46
|
+
background: var(--ui-site-header-surface, var(--ui-surface));
|
|
47
|
+
color: var(--ui-text-primary);
|
|
48
|
+
}
|
|
49
|
+
:scope:where([data-component~="ui-site-header"])[data-ui-site-header-state~="sticky"] {
|
|
50
|
+
position: sticky;
|
|
51
|
+
inset-block-start: 0;
|
|
52
|
+
z-index: var(--ui-site-header-z-index, 10);
|
|
53
|
+
}
|
|
54
|
+
.menu, .actions {
|
|
55
|
+
display: flex !important;
|
|
56
|
+
flex: none;
|
|
57
|
+
align-items: center !important;
|
|
58
|
+
gap: var(--ui-space-2) !important;
|
|
59
|
+
min-inline-size: 0;
|
|
60
|
+
max-inline-size: 100%;
|
|
61
|
+
}
|
|
62
|
+
.actions {
|
|
63
|
+
flex-wrap: wrap !important;
|
|
64
|
+
margin-inline-start: auto !important;
|
|
65
|
+
}
|
|
66
|
+
/* Text shares a baseline inside one group; the group is centred beside any control height. */
|
|
67
|
+
.identity {
|
|
68
|
+
display: flex !important;
|
|
69
|
+
flex: 1 1 auto;
|
|
70
|
+
flex-wrap: wrap !important;
|
|
71
|
+
align-items: baseline !important;
|
|
72
|
+
gap: var(--ui-space-2) var(--ui-space-6) !important;
|
|
73
|
+
min-inline-size: 0;
|
|
74
|
+
}
|
|
75
|
+
.brand {
|
|
76
|
+
min-inline-size: 0;
|
|
77
|
+
font-size: var(--ui-font-size-lg);
|
|
78
|
+
font-weight: var(--ui-font-bold);
|
|
79
|
+
}
|
|
80
|
+
.navigation {
|
|
81
|
+
display: flex !important;
|
|
82
|
+
flex-wrap: wrap !important;
|
|
83
|
+
align-items: baseline !important;
|
|
84
|
+
gap: var(--ui-space-2) var(--ui-space-5) !important;
|
|
85
|
+
min-inline-size: 0;
|
|
86
|
+
font-size: var(--ui-font-size-sm);
|
|
87
|
+
font-weight: var(--ui-font-semibold);
|
|
88
|
+
}
|
|
89
|
+
/* Without a supplied menu trigger, keep the destinations available on narrow screens. */
|
|
90
|
+
:scope:where([data-component~="ui-site-header"]):has(> .menu:not(:empty)) .navigation {
|
|
91
|
+
display: none !important;
|
|
92
|
+
}
|
|
93
|
+
.menu:empty, .actions:empty, .brand:empty, .navigation:empty {
|
|
94
|
+
display: none !important;
|
|
95
|
+
}
|
|
96
|
+
@media (min-width: 40rem) {
|
|
97
|
+
:scope:where([data-component~="ui-site-header"])[data-ui-site-header-state~="breakpoint=sm"] {
|
|
98
|
+
min-block-size: var(--ui-site-header-height, 4.25rem);
|
|
99
|
+
column-gap: var(--ui-space-4) !important;
|
|
100
|
+
}
|
|
101
|
+
:scope:where([data-component~="ui-site-header"])[data-ui-site-header-state~="breakpoint=sm"] .navigation:not(:empty) {
|
|
102
|
+
display: flex !important;
|
|
103
|
+
}
|
|
104
|
+
:scope:where([data-component~="ui-site-header"])[data-ui-site-header-state~="breakpoint=sm"] .menu {
|
|
105
|
+
display: none !important;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
@media (min-width: 48rem) {
|
|
109
|
+
:scope:where([data-component~="ui-site-header"])[data-ui-site-header-state~="breakpoint=md"] {
|
|
110
|
+
min-block-size: var(--ui-site-header-height, 4.25rem);
|
|
111
|
+
column-gap: var(--ui-space-4) !important;
|
|
112
|
+
}
|
|
113
|
+
:scope:where([data-component~="ui-site-header"])[data-ui-site-header-state~="breakpoint=md"] .navigation:not(:empty) {
|
|
114
|
+
display: flex !important;
|
|
115
|
+
}
|
|
116
|
+
:scope:where([data-component~="ui-site-header"])[data-ui-site-header-state~="breakpoint=md"] .menu {
|
|
117
|
+
display: none !important;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
@media (min-width: 64rem) {
|
|
121
|
+
:scope:where([data-component~="ui-site-header"])[data-ui-site-header-state~="breakpoint=lg"] {
|
|
122
|
+
min-block-size: var(--ui-site-header-height, 4.25rem);
|
|
123
|
+
column-gap: var(--ui-space-4) !important;
|
|
124
|
+
}
|
|
125
|
+
:scope:where([data-component~="ui-site-header"])[data-ui-site-header-state~="breakpoint=lg"] .navigation:not(:empty) {
|
|
126
|
+
display: flex !important;
|
|
127
|
+
}
|
|
128
|
+
:scope:where([data-component~="ui-site-header"])[data-ui-site-header-state~="breakpoint=lg"] .menu {
|
|
129
|
+
display: none !important;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
:scope:where([data-component~="ui-site-header"])[hidden] {
|
|
133
|
+
display: none !important;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
@scope ([data-component~="ui-site-header"]) to ([data-component]) {
|
|
137
|
+
/* Text shares a baseline inside one group; the group is centred beside any control height. */
|
|
138
|
+
.brand > :where([data-slotted], [data-slotted] *):is(a) {
|
|
139
|
+
display: inline-flex !important;
|
|
140
|
+
align-items: baseline !important;
|
|
141
|
+
gap: var(--ui-space-3) !important;
|
|
142
|
+
min-inline-size: 0;
|
|
143
|
+
max-inline-size: 100%;
|
|
144
|
+
color: inherit;
|
|
145
|
+
text-decoration: none;
|
|
146
|
+
}
|
|
147
|
+
/* Without a supplied menu trigger, keep the destinations available on narrow screens. */
|
|
148
|
+
.navigation > :where([data-slotted], [data-slotted] *):is(a) {
|
|
149
|
+
color: inherit;
|
|
150
|
+
text-decoration: none;
|
|
151
|
+
}
|
|
152
|
+
.navigation > :where([data-slotted], [data-slotted] *):is(a):is(:hover, [aria-current="page"], [aria-current="true"]) {
|
|
153
|
+
color: var(--ui-accent-active);
|
|
154
|
+
}
|
|
155
|
+
.brand > :where([data-slotted], [data-slotted] *):is(a):focus-visible, .navigation > :where([data-slotted], [data-slotted] *):is(a):focus-visible {
|
|
156
|
+
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
157
|
+
outline-offset: var(--ui-focus-width);
|
|
158
|
+
}
|
|
159
|
+
@media (min-width: 40rem) {
|
|
160
|
+
}
|
|
161
|
+
@media (min-width: 48rem) {
|
|
162
|
+
}
|
|
163
|
+
@media (min-width: 64rem) {
|
|
164
|
+
}
|
|
165
|
+
}
|
package/vanilla/UiButton.d.ts
CHANGED