@taprootio/espalier 2.1.2 → 2.2.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/custom-elements.json +1709 -265
- package/dist/flyout/esp-flyout.d.ts +393 -0
- package/dist/flyout/esp-flyout.js +153 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.js +1 -1
- package/dist/page/esp-page.d.ts +20 -1
- package/dist/page/esp-page.js +90 -17
- package/dist/popover/esp-popover.d.ts +1 -1
- package/dist/popover/esp-popover.js +18 -18
- package/dist/shared/bus-events.d.ts +18 -1
- package/dist/shared/esp-element-base.js +1 -1
- package/dist/shared/events.d.ts +13 -0
- package/dist/shared/events.js +1 -1
- package/dist/shared/flyout-events.d.ts +87 -0
- package/dist/shared/flyout-events.js +1 -0
- package/dist/shared/overlay-controller.js +1 -1
- package/dist/shared/style-fragments.js +12 -8
- package/dist/toaster/esp-toaster.d.ts +21 -0
- package/dist/toaster/esp-toaster.js +9 -9
- package/espalier.token-manifest.json +49 -1
- package/package.json +1 -1
package/custom-elements.json
CHANGED
|
@@ -135,6 +135,14 @@
|
|
|
135
135
|
"module": "dist/color-picker/esp-color-picker.js"
|
|
136
136
|
}
|
|
137
137
|
},
|
|
138
|
+
{
|
|
139
|
+
"kind": "js",
|
|
140
|
+
"name": "*",
|
|
141
|
+
"declaration": {
|
|
142
|
+
"name": "*",
|
|
143
|
+
"module": "dist/flyout/esp-flyout.js"
|
|
144
|
+
}
|
|
145
|
+
},
|
|
138
146
|
{
|
|
139
147
|
"kind": "js",
|
|
140
148
|
"name": "*",
|
|
@@ -567,6 +575,38 @@
|
|
|
567
575
|
"module": "./shared/toast-events.js"
|
|
568
576
|
}
|
|
569
577
|
},
|
|
578
|
+
{
|
|
579
|
+
"kind": "js",
|
|
580
|
+
"name": "showFlyout",
|
|
581
|
+
"declaration": {
|
|
582
|
+
"name": "showFlyout",
|
|
583
|
+
"module": "./shared/flyout-events.js"
|
|
584
|
+
}
|
|
585
|
+
},
|
|
586
|
+
{
|
|
587
|
+
"kind": "js",
|
|
588
|
+
"name": "closeFlyout",
|
|
589
|
+
"declaration": {
|
|
590
|
+
"name": "closeFlyout",
|
|
591
|
+
"module": "./shared/flyout-events.js"
|
|
592
|
+
}
|
|
593
|
+
},
|
|
594
|
+
{
|
|
595
|
+
"kind": "js",
|
|
596
|
+
"name": "FlyoutConfig",
|
|
597
|
+
"declaration": {
|
|
598
|
+
"name": "FlyoutConfig",
|
|
599
|
+
"module": "./shared/flyout-events.js"
|
|
600
|
+
}
|
|
601
|
+
},
|
|
602
|
+
{
|
|
603
|
+
"kind": "js",
|
|
604
|
+
"name": "FlyoutCloseReason",
|
|
605
|
+
"declaration": {
|
|
606
|
+
"name": "FlyoutCloseReason",
|
|
607
|
+
"module": "./shared/flyout-events.js"
|
|
608
|
+
}
|
|
609
|
+
},
|
|
570
610
|
{
|
|
571
611
|
"kind": "js",
|
|
572
612
|
"name": "getEspBus",
|
|
@@ -599,6 +639,14 @@
|
|
|
599
639
|
"module": "./shared/bus-events.js"
|
|
600
640
|
}
|
|
601
641
|
},
|
|
642
|
+
{
|
|
643
|
+
"kind": "js",
|
|
644
|
+
"name": "FlyoutEvents",
|
|
645
|
+
"declaration": {
|
|
646
|
+
"name": "FlyoutEvents",
|
|
647
|
+
"module": "./shared/bus-events.js"
|
|
648
|
+
}
|
|
649
|
+
},
|
|
602
650
|
{
|
|
603
651
|
"kind": "js",
|
|
604
652
|
"name": "PopoverEvents",
|
|
@@ -5862,147 +5910,6 @@
|
|
|
5862
5910
|
}
|
|
5863
5911
|
]
|
|
5864
5912
|
},
|
|
5865
|
-
{
|
|
5866
|
-
"kind": "javascript-module",
|
|
5867
|
-
"path": "dist/burger/esp-burger.js",
|
|
5868
|
-
"declarations": [
|
|
5869
|
-
{
|
|
5870
|
-
"kind": "class",
|
|
5871
|
-
"description": "Animated burger button for showing and hiding navigation\ncomponents.\n\n```html\n<esp-burger></esp-burger>\n```",
|
|
5872
|
-
"name": "EspalierBurger",
|
|
5873
|
-
"cssProperties": [
|
|
5874
|
-
{
|
|
5875
|
-
"description": "The color of the burger lines when closed.",
|
|
5876
|
-
"name": "--esp-color-burger"
|
|
5877
|
-
},
|
|
5878
|
-
{
|
|
5879
|
-
"description": "The hover color of the burger lines when closed.",
|
|
5880
|
-
"name": "--esp-color-burger-hover"
|
|
5881
|
-
},
|
|
5882
|
-
{
|
|
5883
|
-
"description": "The color of the burger lines when open.",
|
|
5884
|
-
"name": "--esp-color-burger-opened"
|
|
5885
|
-
},
|
|
5886
|
-
{
|
|
5887
|
-
"description": "The hover color of the burger lines when open.",
|
|
5888
|
-
"name": "--esp-color-burger-opened-hover"
|
|
5889
|
-
},
|
|
5890
|
-
{
|
|
5891
|
-
"description": "The stroke width of the burger lines.",
|
|
5892
|
-
"name": "--esp-size-burger-stroke"
|
|
5893
|
-
}
|
|
5894
|
-
],
|
|
5895
|
-
"members": [
|
|
5896
|
-
{
|
|
5897
|
-
"kind": "field",
|
|
5898
|
-
"name": "menuOpen",
|
|
5899
|
-
"type": {
|
|
5900
|
-
"text": "boolean"
|
|
5901
|
-
},
|
|
5902
|
-
"privacy": "public",
|
|
5903
|
-
"default": "false",
|
|
5904
|
-
"description": "Whether or not the burger indicates an open state.",
|
|
5905
|
-
"attribute": "menu-open"
|
|
5906
|
-
},
|
|
5907
|
-
{
|
|
5908
|
-
"kind": "field",
|
|
5909
|
-
"name": "presentationOnly",
|
|
5910
|
-
"type": {
|
|
5911
|
-
"text": "boolean"
|
|
5912
|
-
},
|
|
5913
|
-
"privacy": "public",
|
|
5914
|
-
"default": "false",
|
|
5915
|
-
"description": "Render only the animated burger graphic. Use this when an\nouter control owns activation, labeling, and expanded state.",
|
|
5916
|
-
"attribute": "presentation-only"
|
|
5917
|
-
},
|
|
5918
|
-
{
|
|
5919
|
-
"kind": "method",
|
|
5920
|
-
"name": "toggleMenu"
|
|
5921
|
-
}
|
|
5922
|
-
],
|
|
5923
|
-
"events": [
|
|
5924
|
-
{
|
|
5925
|
-
"name": "opened",
|
|
5926
|
-
"type": {
|
|
5927
|
-
"text": "CustomEvent"
|
|
5928
|
-
},
|
|
5929
|
-
"description": "Emitted when the button is clicked and the image changes from a burger to an X."
|
|
5930
|
-
},
|
|
5931
|
-
{
|
|
5932
|
-
"name": "closed",
|
|
5933
|
-
"type": {
|
|
5934
|
-
"text": "CustomEvent"
|
|
5935
|
-
},
|
|
5936
|
-
"description": "Emitted when the button is clicked and the image changes from an X to a burger. ```html <esp-burger></esp-burger> <script> const theBurger = findByTagName(\"esp-burger\")[0]; theBurger.addEventListener(\"opened\", () => { showToast({ message: \"It would be a good time to show the menu. This message will self-destruct in 4 seconds...\", icon: \"info-i\", duration: 4 }); }); theBurger.addEventListener(\"closed\", () => { showToast({ message: \"It would be a good time to hide the menu. This message will self-destruct in 4 seconds...\", icon: \"info-i\", duration: 4 }); }); </script> ```"
|
|
5937
|
-
}
|
|
5938
|
-
],
|
|
5939
|
-
"attributes": [
|
|
5940
|
-
{
|
|
5941
|
-
"name": "menu-open",
|
|
5942
|
-
"type": {
|
|
5943
|
-
"text": "boolean"
|
|
5944
|
-
},
|
|
5945
|
-
"default": "false",
|
|
5946
|
-
"description": "Whether or not the burger indicates an open state.",
|
|
5947
|
-
"fieldName": "menuOpen"
|
|
5948
|
-
},
|
|
5949
|
-
{
|
|
5950
|
-
"name": "presentation-only",
|
|
5951
|
-
"type": {
|
|
5952
|
-
"text": "boolean"
|
|
5953
|
-
},
|
|
5954
|
-
"default": "false",
|
|
5955
|
-
"description": "Render only the animated burger graphic. Use this when an\nouter control owns activation, labeling, and expanded state.",
|
|
5956
|
-
"fieldName": "presentationOnly"
|
|
5957
|
-
}
|
|
5958
|
-
],
|
|
5959
|
-
"superclass": {
|
|
5960
|
-
"name": "LitElement",
|
|
5961
|
-
"package": "lit"
|
|
5962
|
-
},
|
|
5963
|
-
"docPageTitle": {
|
|
5964
|
-
"name": "Burger",
|
|
5965
|
-
"description": ""
|
|
5966
|
-
},
|
|
5967
|
-
"docUrl": {
|
|
5968
|
-
"name": "/components/burger",
|
|
5969
|
-
"description": ""
|
|
5970
|
-
},
|
|
5971
|
-
"menuGroup": {
|
|
5972
|
-
"name": "Interaction",
|
|
5973
|
-
"description": ""
|
|
5974
|
-
},
|
|
5975
|
-
"menuLabel": {
|
|
5976
|
-
"name": "Burger",
|
|
5977
|
-
"description": ""
|
|
5978
|
-
},
|
|
5979
|
-
"menuIcon": {
|
|
5980
|
-
"name": "burger",
|
|
5981
|
-
"description": ""
|
|
5982
|
-
},
|
|
5983
|
-
"tagName": "esp-burger",
|
|
5984
|
-
"customElement": true
|
|
5985
|
-
}
|
|
5986
|
-
],
|
|
5987
|
-
"exports": [
|
|
5988
|
-
{
|
|
5989
|
-
"kind": "js",
|
|
5990
|
-
"name": "EspalierBurger",
|
|
5991
|
-
"declaration": {
|
|
5992
|
-
"name": "EspalierBurger",
|
|
5993
|
-
"module": "dist/burger/esp-burger.js"
|
|
5994
|
-
}
|
|
5995
|
-
},
|
|
5996
|
-
{
|
|
5997
|
-
"kind": "custom-element-definition",
|
|
5998
|
-
"name": "esp-burger",
|
|
5999
|
-
"declaration": {
|
|
6000
|
-
"name": "EspalierBurger",
|
|
6001
|
-
"module": "dist/burger/esp-burger.js"
|
|
6002
|
-
}
|
|
6003
|
-
}
|
|
6004
|
-
]
|
|
6005
|
-
},
|
|
6006
5913
|
{
|
|
6007
5914
|
"kind": "javascript-module",
|
|
6008
5915
|
"path": "dist/breadcrumbs/esp-breadcrumb.js",
|
|
@@ -6784,6 +6691,147 @@
|
|
|
6784
6691
|
}
|
|
6785
6692
|
]
|
|
6786
6693
|
},
|
|
6694
|
+
{
|
|
6695
|
+
"kind": "javascript-module",
|
|
6696
|
+
"path": "dist/burger/esp-burger.js",
|
|
6697
|
+
"declarations": [
|
|
6698
|
+
{
|
|
6699
|
+
"kind": "class",
|
|
6700
|
+
"description": "Animated burger button for showing and hiding navigation\ncomponents.\n\n```html\n<esp-burger></esp-burger>\n```",
|
|
6701
|
+
"name": "EspalierBurger",
|
|
6702
|
+
"cssProperties": [
|
|
6703
|
+
{
|
|
6704
|
+
"description": "The color of the burger lines when closed.",
|
|
6705
|
+
"name": "--esp-color-burger"
|
|
6706
|
+
},
|
|
6707
|
+
{
|
|
6708
|
+
"description": "The hover color of the burger lines when closed.",
|
|
6709
|
+
"name": "--esp-color-burger-hover"
|
|
6710
|
+
},
|
|
6711
|
+
{
|
|
6712
|
+
"description": "The color of the burger lines when open.",
|
|
6713
|
+
"name": "--esp-color-burger-opened"
|
|
6714
|
+
},
|
|
6715
|
+
{
|
|
6716
|
+
"description": "The hover color of the burger lines when open.",
|
|
6717
|
+
"name": "--esp-color-burger-opened-hover"
|
|
6718
|
+
},
|
|
6719
|
+
{
|
|
6720
|
+
"description": "The stroke width of the burger lines.",
|
|
6721
|
+
"name": "--esp-size-burger-stroke"
|
|
6722
|
+
}
|
|
6723
|
+
],
|
|
6724
|
+
"members": [
|
|
6725
|
+
{
|
|
6726
|
+
"kind": "field",
|
|
6727
|
+
"name": "menuOpen",
|
|
6728
|
+
"type": {
|
|
6729
|
+
"text": "boolean"
|
|
6730
|
+
},
|
|
6731
|
+
"privacy": "public",
|
|
6732
|
+
"default": "false",
|
|
6733
|
+
"description": "Whether or not the burger indicates an open state.",
|
|
6734
|
+
"attribute": "menu-open"
|
|
6735
|
+
},
|
|
6736
|
+
{
|
|
6737
|
+
"kind": "field",
|
|
6738
|
+
"name": "presentationOnly",
|
|
6739
|
+
"type": {
|
|
6740
|
+
"text": "boolean"
|
|
6741
|
+
},
|
|
6742
|
+
"privacy": "public",
|
|
6743
|
+
"default": "false",
|
|
6744
|
+
"description": "Render only the animated burger graphic. Use this when an\nouter control owns activation, labeling, and expanded state.",
|
|
6745
|
+
"attribute": "presentation-only"
|
|
6746
|
+
},
|
|
6747
|
+
{
|
|
6748
|
+
"kind": "method",
|
|
6749
|
+
"name": "toggleMenu"
|
|
6750
|
+
}
|
|
6751
|
+
],
|
|
6752
|
+
"events": [
|
|
6753
|
+
{
|
|
6754
|
+
"name": "opened",
|
|
6755
|
+
"type": {
|
|
6756
|
+
"text": "CustomEvent"
|
|
6757
|
+
},
|
|
6758
|
+
"description": "Emitted when the button is clicked and the image changes from a burger to an X."
|
|
6759
|
+
},
|
|
6760
|
+
{
|
|
6761
|
+
"name": "closed",
|
|
6762
|
+
"type": {
|
|
6763
|
+
"text": "CustomEvent"
|
|
6764
|
+
},
|
|
6765
|
+
"description": "Emitted when the button is clicked and the image changes from an X to a burger. ```html <esp-burger></esp-burger> <script> const theBurger = findByTagName(\"esp-burger\")[0]; theBurger.addEventListener(\"opened\", () => { showToast({ message: \"It would be a good time to show the menu. This message will self-destruct in 4 seconds...\", icon: \"info-i\", duration: 4 }); }); theBurger.addEventListener(\"closed\", () => { showToast({ message: \"It would be a good time to hide the menu. This message will self-destruct in 4 seconds...\", icon: \"info-i\", duration: 4 }); }); </script> ```"
|
|
6766
|
+
}
|
|
6767
|
+
],
|
|
6768
|
+
"attributes": [
|
|
6769
|
+
{
|
|
6770
|
+
"name": "menu-open",
|
|
6771
|
+
"type": {
|
|
6772
|
+
"text": "boolean"
|
|
6773
|
+
},
|
|
6774
|
+
"default": "false",
|
|
6775
|
+
"description": "Whether or not the burger indicates an open state.",
|
|
6776
|
+
"fieldName": "menuOpen"
|
|
6777
|
+
},
|
|
6778
|
+
{
|
|
6779
|
+
"name": "presentation-only",
|
|
6780
|
+
"type": {
|
|
6781
|
+
"text": "boolean"
|
|
6782
|
+
},
|
|
6783
|
+
"default": "false",
|
|
6784
|
+
"description": "Render only the animated burger graphic. Use this when an\nouter control owns activation, labeling, and expanded state.",
|
|
6785
|
+
"fieldName": "presentationOnly"
|
|
6786
|
+
}
|
|
6787
|
+
],
|
|
6788
|
+
"superclass": {
|
|
6789
|
+
"name": "LitElement",
|
|
6790
|
+
"package": "lit"
|
|
6791
|
+
},
|
|
6792
|
+
"docPageTitle": {
|
|
6793
|
+
"name": "Burger",
|
|
6794
|
+
"description": ""
|
|
6795
|
+
},
|
|
6796
|
+
"docUrl": {
|
|
6797
|
+
"name": "/components/burger",
|
|
6798
|
+
"description": ""
|
|
6799
|
+
},
|
|
6800
|
+
"menuGroup": {
|
|
6801
|
+
"name": "Interaction",
|
|
6802
|
+
"description": ""
|
|
6803
|
+
},
|
|
6804
|
+
"menuLabel": {
|
|
6805
|
+
"name": "Burger",
|
|
6806
|
+
"description": ""
|
|
6807
|
+
},
|
|
6808
|
+
"menuIcon": {
|
|
6809
|
+
"name": "burger",
|
|
6810
|
+
"description": ""
|
|
6811
|
+
},
|
|
6812
|
+
"tagName": "esp-burger",
|
|
6813
|
+
"customElement": true
|
|
6814
|
+
}
|
|
6815
|
+
],
|
|
6816
|
+
"exports": [
|
|
6817
|
+
{
|
|
6818
|
+
"kind": "js",
|
|
6819
|
+
"name": "EspalierBurger",
|
|
6820
|
+
"declaration": {
|
|
6821
|
+
"name": "EspalierBurger",
|
|
6822
|
+
"module": "dist/burger/esp-burger.js"
|
|
6823
|
+
}
|
|
6824
|
+
},
|
|
6825
|
+
{
|
|
6826
|
+
"kind": "custom-element-definition",
|
|
6827
|
+
"name": "esp-burger",
|
|
6828
|
+
"declaration": {
|
|
6829
|
+
"name": "EspalierBurger",
|
|
6830
|
+
"module": "dist/burger/esp-burger.js"
|
|
6831
|
+
}
|
|
6832
|
+
}
|
|
6833
|
+
]
|
|
6834
|
+
},
|
|
6787
6835
|
{
|
|
6788
6836
|
"kind": "javascript-module",
|
|
6789
6837
|
"path": "dist/button/esp-button-group.js",
|
|
@@ -16258,145 +16306,1323 @@
|
|
|
16258
16306
|
"name": "EspalierElementBase",
|
|
16259
16307
|
"module": "dist/shared/esp-element-base.js"
|
|
16260
16308
|
},
|
|
16261
|
-
"tagName": "esp-font-picker",
|
|
16262
|
-
"customElement": true,
|
|
16309
|
+
"tagName": "esp-font-picker",
|
|
16310
|
+
"customElement": true,
|
|
16311
|
+
"docPageTitle": {
|
|
16312
|
+
"name": "Font",
|
|
16313
|
+
"description": "Picker"
|
|
16314
|
+
},
|
|
16315
|
+
"docUrl": {
|
|
16316
|
+
"name": "/components/font-picker",
|
|
16317
|
+
"description": ""
|
|
16318
|
+
},
|
|
16319
|
+
"menuGroup": {
|
|
16320
|
+
"name": "Form",
|
|
16321
|
+
"description": "Controls"
|
|
16322
|
+
},
|
|
16323
|
+
"menuLabel": {
|
|
16324
|
+
"name": "Font",
|
|
16325
|
+
"description": "Picker"
|
|
16326
|
+
},
|
|
16327
|
+
"menuIcon": {
|
|
16328
|
+
"name": "typography",
|
|
16329
|
+
"description": ""
|
|
16330
|
+
},
|
|
16331
|
+
"cssProperties": [
|
|
16332
|
+
{
|
|
16333
|
+
"description": "Background color of the shared field shell. Defaults to `var(--esp-color-layer-2)`.",
|
|
16334
|
+
"name": "--esp-field-background",
|
|
16335
|
+
"inheritedFrom": {
|
|
16336
|
+
"name": "EspalierElementBase",
|
|
16337
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16338
|
+
}
|
|
16339
|
+
},
|
|
16340
|
+
{
|
|
16341
|
+
"description": "Border color of the shared field shell. Defaults to `var(--esp-color-border)`.",
|
|
16342
|
+
"name": "--esp-field-border-color",
|
|
16343
|
+
"inheritedFrom": {
|
|
16344
|
+
"name": "EspalierElementBase",
|
|
16345
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16346
|
+
}
|
|
16347
|
+
},
|
|
16348
|
+
{
|
|
16349
|
+
"description": "Border width of the shared field shell. Defaults to `1px`.",
|
|
16350
|
+
"name": "--esp-field-border-width",
|
|
16351
|
+
"inheritedFrom": {
|
|
16352
|
+
"name": "EspalierElementBase",
|
|
16353
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16354
|
+
}
|
|
16355
|
+
},
|
|
16356
|
+
{
|
|
16357
|
+
"description": "Text color used inside the shared field shell. Defaults to `var(--esp-color-text)`.",
|
|
16358
|
+
"name": "--esp-field-text-color",
|
|
16359
|
+
"inheritedFrom": {
|
|
16360
|
+
"name": "EspalierElementBase",
|
|
16361
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16362
|
+
}
|
|
16363
|
+
},
|
|
16364
|
+
{
|
|
16365
|
+
"description": "Hover background color of the shared field shell. Derived from `--esp-field-background`.",
|
|
16366
|
+
"name": "--esp-field-hover-bg",
|
|
16367
|
+
"inheritedFrom": {
|
|
16368
|
+
"name": "EspalierElementBase",
|
|
16369
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16370
|
+
}
|
|
16371
|
+
},
|
|
16372
|
+
{
|
|
16373
|
+
"description": "Focus background color of the shared field shell. Derived from `--esp-field-background`.",
|
|
16374
|
+
"name": "--esp-field-focus-bg",
|
|
16375
|
+
"inheritedFrom": {
|
|
16376
|
+
"name": "EspalierElementBase",
|
|
16377
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16378
|
+
}
|
|
16379
|
+
},
|
|
16380
|
+
{
|
|
16381
|
+
"description": "Shadow color used for shared field focus treatment. Defaults to `var(--esp-color-shadow)`.",
|
|
16382
|
+
"name": "--esp-field-focus-shadow",
|
|
16383
|
+
"inheritedFrom": {
|
|
16384
|
+
"name": "EspalierElementBase",
|
|
16385
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16386
|
+
}
|
|
16387
|
+
}
|
|
16388
|
+
]
|
|
16389
|
+
},
|
|
16390
|
+
{
|
|
16391
|
+
"kind": "function",
|
|
16392
|
+
"name": "resetFontCache",
|
|
16393
|
+
"return": {
|
|
16394
|
+
"type": {
|
|
16395
|
+
"text": "void"
|
|
16396
|
+
}
|
|
16397
|
+
},
|
|
16398
|
+
"description": "Reset the module-level font cache. Exposed for test cleanup so each\ntest starts with a fresh slate."
|
|
16399
|
+
}
|
|
16400
|
+
],
|
|
16401
|
+
"exports": [
|
|
16402
|
+
{
|
|
16403
|
+
"kind": "js",
|
|
16404
|
+
"name": "WEB_SAFE_FONTS",
|
|
16405
|
+
"declaration": {
|
|
16406
|
+
"name": "WEB_SAFE_FONTS",
|
|
16407
|
+
"module": "dist/font-picker/esp-font-picker.js"
|
|
16408
|
+
}
|
|
16409
|
+
},
|
|
16410
|
+
{
|
|
16411
|
+
"kind": "js",
|
|
16412
|
+
"name": "getGoogleFonts",
|
|
16413
|
+
"declaration": {
|
|
16414
|
+
"name": "getGoogleFonts",
|
|
16415
|
+
"module": "dist/font-picker/esp-font-picker.js"
|
|
16416
|
+
}
|
|
16417
|
+
},
|
|
16418
|
+
{
|
|
16419
|
+
"kind": "js",
|
|
16420
|
+
"name": "previewFontFamily",
|
|
16421
|
+
"declaration": {
|
|
16422
|
+
"name": "previewFontFamily",
|
|
16423
|
+
"module": "dist/font-picker/esp-font-picker.js"
|
|
16424
|
+
}
|
|
16425
|
+
},
|
|
16426
|
+
{
|
|
16427
|
+
"kind": "js",
|
|
16428
|
+
"name": "EspalierFontPicker",
|
|
16429
|
+
"declaration": {
|
|
16430
|
+
"name": "EspalierFontPicker",
|
|
16431
|
+
"module": "dist/font-picker/esp-font-picker.js"
|
|
16432
|
+
}
|
|
16433
|
+
},
|
|
16434
|
+
{
|
|
16435
|
+
"kind": "custom-element-definition",
|
|
16436
|
+
"name": "esp-font-picker",
|
|
16437
|
+
"declaration": {
|
|
16438
|
+
"name": "EspalierFontPicker",
|
|
16439
|
+
"module": "dist/font-picker/esp-font-picker.js"
|
|
16440
|
+
}
|
|
16441
|
+
},
|
|
16442
|
+
{
|
|
16443
|
+
"kind": "js",
|
|
16444
|
+
"name": "resetFontCache",
|
|
16445
|
+
"declaration": {
|
|
16446
|
+
"name": "resetFontCache",
|
|
16447
|
+
"module": "dist/font-picker/esp-font-picker.js"
|
|
16448
|
+
}
|
|
16449
|
+
}
|
|
16450
|
+
]
|
|
16451
|
+
},
|
|
16452
|
+
{
|
|
16453
|
+
"kind": "javascript-module",
|
|
16454
|
+
"path": "dist/flyout/esp-flyout.js",
|
|
16455
|
+
"declarations": [
|
|
16456
|
+
{
|
|
16457
|
+
"kind": "class",
|
|
16458
|
+
"description": "A transient panel for help, more-info, and preview content that\nclaims designed spare width before ever covering the page.\n\nPlace one `esp-flyout` in an `esp-page`'s `flyout` slot. The panel\nlives on the canvas, outside the content surface. The page decides\nwhere it goes, from widest viewport to narrowest:\n\n1. **Gutter** — the panel occupies the right canvas gutter. When the\n gutter already has room, it claims existing spare canvas and the\n main content does not move at all, on any alignment.\n2. **Shift** — when the gutter is not quite wide enough, the surface\n slides toward `start` by exactly the shortfall (no more) to free\n the difference.\n3. **Docked sidebar** — once the gutter is gone, the panel competes\n for width with the main well; content narrows but is never\n covered.\n4. **Overlay drawer** — below the mobile threshold (`50em`, the\n same one the `esp-menu` drawer uses) the panel becomes a fixed\n drawer over a vellum backdrop. Set `mode=\"overlay\"` to get this\n presentation at every width.\n\nThe panel is styled as a tear-off piece: a dotted perforation on\nits leading edge, rounded trailing corners, and no shadow — all\noverridable through the `--esp-flyout-*` tokens below.\n\nA11y follows the presentation. In the in-grid modes (1–3) the\nflyout is a non-modal `complementary` landmark named by its\n`heading`, and opening it never steals focus. In the overlay-drawer\nmode (4) it is a true modal: `role=\"dialog\"` + `aria-modal`, the\nbackground goes inert, scroll is locked, focus moves into the drawer\nand is trapped, and focus is restored on close. `Escape` closes it\nin every mode.\n\n```html\n<style>\nesp-page.flyout-demo {\n --esp-page-max-width: 420px;\n --esp-page-canvas-background: var(--esp-color-layer-1);\n &::part(wrapper) {\n min-height: 320px;\n height: 320px;\n }\n > div {\n padding: var(--esp-size-padding);\n }\n}\n</style>\n<esp-page class=\"flyout-demo\" align=\"center\">\n <esp-flyout slot=\"flyout\" heading=\"More info\" id=\"demo-flyout\" standalone>\n <p>Spare width claimed; the well shifted only enough to make room.</p>\n </esp-flyout>\n <div>\n <esp-button id=\"toggle-flyout\" label=\"Toggle flyout\" collapsed></esp-button>\n </div>\n</esp-page>\n<script>\n const flyout = findById(\"demo-flyout\");\n findById(\"toggle-flyout\").addEventListener(\"clicked\", () => flyout.toggle());\n</script>\n```\n\nBy default the panel is a tear-off — a dotted perforation on its\nleading edge, rounded trailing corners, no shadow. Add\n`match-surface` to lift the trailing edge with the page's surface\nedge shadow, so the flyout reads as a raised peer of the content it\nflies out from while staying attached at the leading perforation:\n\n```html\n<style>\nesp-page.flyout-match-demo {\n --esp-page-max-width: 420px;\n &::part(wrapper) {\n min-height: 320px;\n height: 320px;\n }\n > div {\n padding: var(--esp-size-padding);\n }\n}\n</style>\n<esp-page class=\"flyout-match-demo\" align=\"center\">\n <esp-flyout slot=\"flyout\" heading=\"More info\" id=\"match-flyout\" match-surface standalone>\n <p>Attached at the perforation, trailing edge raised like the surface.</p>\n </esp-flyout>\n <div>\n <esp-button id=\"toggle-match\" label=\"Toggle flyout\" collapsed></esp-button>\n </div>\n</esp-page>\n<script>\n const matchFlyout = findById(\"match-flyout\");\n findById(\"toggle-match\").addEventListener(\"clicked\", () => matchFlyout.toggle());\n</script>\n```\n\nWhen the page has no spare width to claim — a `kind=\"full\"` page,\nor a capped page on a viewport at the cap — the open flyout docks\nas a right sidebar and the content makes room:\n\n```html\n<style>\nesp-page.flyout-docked-demo {\n &::part(wrapper) {\n min-height: 320px;\n height: 320px;\n }\n > div {\n padding: var(--esp-size-padding);\n }\n}\n</style>\n<esp-page class=\"flyout-docked-demo\" kind=\"full\">\n <esp-flyout slot=\"flyout\" heading=\"Docked\" id=\"docked-flyout\" standalone>\n <p>No gutter to claim, so the content narrows instead.</p>\n </esp-flyout>\n <div>\n <p>A <code>kind=\"full\"</code> page has no canvas gutters at any\n width — the flyout squeezes the main well and never covers it.</p>\n <esp-button id=\"toggle-docked\" label=\"Toggle flyout\" collapsed></esp-button>\n </div>\n</esp-page>\n<script>\n const dockedFlyout = findById(\"docked-flyout\");\n findById(\"toggle-docked\").addEventListener(\"clicked\", () => dockedFlyout.toggle());\n</script>\n```\n\nBelow the `50em` viewport threshold every flyout becomes a fixed\noverlay drawer over a vellum — there is no room for a side-by-side\nsplit on a phone. `mode=\"overlay\"` forces that presentation at any\nwidth (try it here; `Escape` or the vellum closes it):\n\n```html\n<style>\nesp-page.flyout-overlay-demo {\n &::part(wrapper) {\n min-height: 160px;\n height: 160px;\n }\n > div {\n padding: var(--esp-size-padding);\n }\n}\n</style>\n<esp-page class=\"flyout-overlay-demo\">\n <esp-flyout slot=\"flyout\" heading=\"Overlay drawer\" mode=\"overlay\" id=\"overlay-flyout\" standalone>\n <p>A fixed drawer over a vellum — what every flyout becomes on\n small viewports.</p>\n </esp-flyout>\n <div>\n <esp-button id=\"open-overlay\" label=\"Open overlay flyout\" collapsed></esp-button>\n </div>\n</esp-page>\n<script>\n const overlayFlyout = findById(\"overlay-flyout\");\n findById(\"open-overlay\").addEventListener(\"clicked\", () => overlayFlyout.toggle());\n</script>\n```\n\nComponents that cannot know where the flyout lives can request it\nover the bus with `showFlyout()` — the same pattern `showToast()`\nuses. A second request swaps the content in place; it never\nstacks. Content passed as a string renders as plain text; pass a\n`Node` for rich content. Pass the triggering element as `anchor` to\nalign the in-grid panel with that control and keep both in the same\nscroll flow. If the panel would cross the visible viewport's bottom,\nit shifts up only far enough to fit and returns to its natural trigger\nalignment as the page scrolls. Content taller than the viewport\nscrolls inside the panel. Overlay drawers stay viewport-fixed.\n\nThe bus is a global broadcast, so every listening flyout on the\npage answers a `showFlyout()` call. The demos above are each driven\nby their own toggle button, so they are marked `standalone` to opt\nout of the bus — leaving this one flyout as the page's shared\nsurface. In a real app you typically have a single flyout and need\nno attribute at all.\n\n```html\n<style>\nesp-page.flyout-bus-demo {\n --esp-page-max-width: 420px;\n &::part(wrapper) {\n min-height: 320px;\n }\n > div {\n padding: var(--esp-size-padding);\n }\n .flyout-demo-copy {\n max-inline-size: 42ch;\n }\n}\n</style>\n<esp-page class=\"flyout-bus-demo\">\n <esp-flyout slot=\"flyout\"></esp-flyout>\n <div>\n <esp-button id=\"show-apples\" label=\"Apples\" collapsed></esp-button>\n <div class=\"flyout-demo-copy\">\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod\n tempor incididunt ut labore et dolore magna aliqua.</p>\n <p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi\n ut aliquip ex ea commodo consequat.</p>\n <p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum\n dolore eu fugiat nulla pariatur.</p>\n </div>\n <esp-button id=\"show-pears\" label=\"Pears\" collapsed></esp-button>\n <template id=\"pears-description\">\n <p>Ripen pears at room temperature until the neck yields gently to\n pressure, then refrigerate them to slow further ripening.</p>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer\n nec odio. Praesent libero. Sed cursus ante dapibus diam.</p>\n <p>Sed nisi. Nulla quis sem at nibh elementum imperdiet. Duis\n sagittis ipsum. Praesent mauris. Fusce nec tellus sed augue semper\n porta.</p>\n <p>Mauris massa. Vestibulum lacinia arcu eget nulla. Class aptent\n taciti sociosqu ad litora torquent per conubia nostra.</p>\n <p>Curabitur sodales ligula in libero. Sed dignissim lacinia nunc.\n Curabitur tortor. Pellentesque nibh. Aenean quam.</p>\n <p>In scelerisque sem at dolor. Maecenas mattis. Sed convallis\n tristique sem. Proin ut ligula vel nunc egestas porttitor.</p>\n <p>Morbi lectus risus, iaculis vel, suscipit quis, luctus non,\n massa. Fusce ac turpis quis ligula lacinia aliquet.</p>\n <p>Mauris ipsum. Nulla metus metus, ullamcorper vel, tincidunt sed,\n euismod in, nibh. Quisque volutpat condimentum velit.</p>\n </template>\n <div class=\"flyout-demo-copy\">\n <p>Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia\n deserunt mollit anim id est laborum.</p>\n <p>Curabitur pretium tincidunt lacus. Nulla gravida orci a odio, nullam\n varius, turpis et commodo pharetra.</p>\n </div>\n </div>\n</esp-page>\n<script>\n const applesButton = findById(\"show-apples\");\n applesButton.addEventListener(\"clicked\", () => {\n showFlyout({ heading: \"Apples\", content: \"Crisp. Store cold.\", anchor: applesButton });\n });\n const pearsButton = findById(\"show-pears\");\n const pearsDescription = findById(\"pears-description\");\n pearsButton.addEventListener(\"clicked\", () => {\n showFlyout({\n heading: \"Pears\",\n content: pearsDescription.content.cloneNode(true),\n anchor: pearsButton,\n });\n });\n</script>\n```",
|
|
16459
|
+
"name": "EspalierFlyout",
|
|
16460
|
+
"cssProperties": [
|
|
16461
|
+
{
|
|
16462
|
+
"description": "The background color of the panel. Defaults to `var(--esp-color-background)`.",
|
|
16463
|
+
"name": "--esp-flyout-background"
|
|
16464
|
+
},
|
|
16465
|
+
{
|
|
16466
|
+
"description": "The border on the panel's leading edge. Defaults to the tear-off perforation, `1px dotted var(--esp-color-border)`.",
|
|
16467
|
+
"name": "--esp-flyout-border"
|
|
16468
|
+
},
|
|
16469
|
+
{
|
|
16470
|
+
"description": "The radius of the panel's trailing corners. Defaults to `var(--esp-size-border-radius)`; the overlay drawer squares them.",
|
|
16471
|
+
"name": "--esp-flyout-radius"
|
|
16472
|
+
},
|
|
16473
|
+
{
|
|
16474
|
+
"description": "The panel's shadow. Defaults to `none` in the gutter/docked modes (the perforation does the separating) and to a drawer shadow in overlay mode.",
|
|
16475
|
+
"name": "--esp-flyout-shadow"
|
|
16476
|
+
},
|
|
16477
|
+
{
|
|
16478
|
+
"description": "Padding inside the panel's header and content regions. Defaults to `var(--esp-size-padding)`.",
|
|
16479
|
+
"name": "--esp-flyout-padding"
|
|
16480
|
+
},
|
|
16481
|
+
{
|
|
16482
|
+
"description": "Stack order of the overlay-drawer mode. Defaults to `3000` — above page chrome, below the dialog drop zone (4000). Set it on the `esp-page` (or an ancestor), not on the flyout itself: the page reads the same token to hoist the drawer's aside above its header.",
|
|
16483
|
+
"name": "--esp-flyout-z-index"
|
|
16484
|
+
},
|
|
16485
|
+
{
|
|
16486
|
+
"description": "Background color of the shared field shell. Defaults to `var(--esp-color-layer-2)`.",
|
|
16487
|
+
"name": "--esp-field-background",
|
|
16488
|
+
"inheritedFrom": {
|
|
16489
|
+
"name": "EspalierElementBase",
|
|
16490
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16491
|
+
}
|
|
16492
|
+
},
|
|
16493
|
+
{
|
|
16494
|
+
"description": "Border color of the shared field shell. Defaults to `var(--esp-color-border)`.",
|
|
16495
|
+
"name": "--esp-field-border-color",
|
|
16496
|
+
"inheritedFrom": {
|
|
16497
|
+
"name": "EspalierElementBase",
|
|
16498
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16499
|
+
}
|
|
16500
|
+
},
|
|
16501
|
+
{
|
|
16502
|
+
"description": "Border width of the shared field shell. Defaults to `1px`.",
|
|
16503
|
+
"name": "--esp-field-border-width",
|
|
16504
|
+
"inheritedFrom": {
|
|
16505
|
+
"name": "EspalierElementBase",
|
|
16506
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16507
|
+
}
|
|
16508
|
+
},
|
|
16509
|
+
{
|
|
16510
|
+
"description": "Text color used inside the shared field shell. Defaults to `var(--esp-color-text)`.",
|
|
16511
|
+
"name": "--esp-field-text-color",
|
|
16512
|
+
"inheritedFrom": {
|
|
16513
|
+
"name": "EspalierElementBase",
|
|
16514
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16515
|
+
}
|
|
16516
|
+
},
|
|
16517
|
+
{
|
|
16518
|
+
"description": "Hover background color of the shared field shell. Derived from `--esp-field-background`.",
|
|
16519
|
+
"name": "--esp-field-hover-bg",
|
|
16520
|
+
"inheritedFrom": {
|
|
16521
|
+
"name": "EspalierElementBase",
|
|
16522
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16523
|
+
}
|
|
16524
|
+
},
|
|
16525
|
+
{
|
|
16526
|
+
"description": "Focus background color of the shared field shell. Derived from `--esp-field-background`.",
|
|
16527
|
+
"name": "--esp-field-focus-bg",
|
|
16528
|
+
"inheritedFrom": {
|
|
16529
|
+
"name": "EspalierElementBase",
|
|
16530
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16531
|
+
}
|
|
16532
|
+
},
|
|
16533
|
+
{
|
|
16534
|
+
"description": "Shadow color used for shared field focus treatment. Defaults to `var(--esp-color-shadow)`.",
|
|
16535
|
+
"name": "--esp-field-focus-shadow",
|
|
16536
|
+
"inheritedFrom": {
|
|
16537
|
+
"name": "EspalierElementBase",
|
|
16538
|
+
"module": "dist/shared/esp-element-base.js"
|
|
16539
|
+
}
|
|
16540
|
+
}
|
|
16541
|
+
],
|
|
16542
|
+
"cssParts": [
|
|
16543
|
+
{
|
|
16544
|
+
"description": "The panel surface.",
|
|
16545
|
+
"name": "panel"
|
|
16546
|
+
},
|
|
16547
|
+
{
|
|
16548
|
+
"description": "The heading/close-button row.",
|
|
16549
|
+
"name": "header"
|
|
16550
|
+
},
|
|
16551
|
+
{
|
|
16552
|
+
"description": "The scrollable content region wrapping the slot.",
|
|
16553
|
+
"name": "content"
|
|
16554
|
+
}
|
|
16555
|
+
],
|
|
16556
|
+
"slots": [
|
|
16557
|
+
{
|
|
16558
|
+
"description": "The flyout's content.",
|
|
16559
|
+
"name": ""
|
|
16560
|
+
}
|
|
16561
|
+
],
|
|
16562
|
+
"members": [
|
|
16563
|
+
{
|
|
16564
|
+
"kind": "field",
|
|
16565
|
+
"name": "open",
|
|
16566
|
+
"type": {
|
|
16567
|
+
"text": "boolean"
|
|
16568
|
+
},
|
|
16569
|
+
"privacy": "public",
|
|
16570
|
+
"default": "false",
|
|
16571
|
+
"description": "Whether the flyout is open. Reflected so the initial state can\nbe declared in markup; `esp-page` mirrors it (via the lifecycle\nevents and the slot) onto its own `flyout-open` attribute to\ndrive the grid.",
|
|
16572
|
+
"attribute": "open",
|
|
16573
|
+
"reflects": true
|
|
16574
|
+
},
|
|
16575
|
+
{
|
|
16576
|
+
"kind": "field",
|
|
16577
|
+
"name": "heading",
|
|
16578
|
+
"type": {
|
|
16579
|
+
"text": "string"
|
|
16580
|
+
},
|
|
16581
|
+
"privacy": "public",
|
|
16582
|
+
"default": "\"\"",
|
|
16583
|
+
"description": "Heading text for the panel's header row. Also becomes the\nflyout's accessible name unless the author set an `aria-label`.\nAn open overlay without either uses the fallback name \"Flyout\" so\nits dialog is never exposed without an accessible name.",
|
|
16584
|
+
"attribute": "heading"
|
|
16585
|
+
},
|
|
16586
|
+
{
|
|
16587
|
+
"kind": "field",
|
|
16588
|
+
"name": "mode",
|
|
16589
|
+
"type": {
|
|
16590
|
+
"text": "\"auto\" | \"overlay\""
|
|
16591
|
+
},
|
|
16592
|
+
"privacy": "public",
|
|
16593
|
+
"default": "\"auto\"",
|
|
16594
|
+
"description": "Placement behavior.\n\n- `\"auto\"` (default) — the page's placement ladder: gutter,\n docked sidebar, then overlay drawer below the `50em` viewport\n threshold.\n- `\"overlay\"` — always the fixed overlay drawer, at any width.\n The page never reserves a grid track for an overlay-mode\n flyout.",
|
|
16595
|
+
"attribute": "mode",
|
|
16596
|
+
"reflects": true
|
|
16597
|
+
},
|
|
16598
|
+
{
|
|
16599
|
+
"kind": "field",
|
|
16600
|
+
"name": "anchor",
|
|
16601
|
+
"type": {
|
|
16602
|
+
"text": "HTMLElement | undefined"
|
|
16603
|
+
},
|
|
16604
|
+
"privacy": "public",
|
|
16605
|
+
"description": "Triggering element whose block-start edge the in-grid panel should\nalign with. Anchored panels stay in normal page flow, shift upward\nonly while needed to fit the visible scrollport, and return to their\nnatural alignment as the page scrolls. Oversized content scrolls\ninside the panel. Overlay drawers ignore this geometry and remain\nfixed to the viewport."
|
|
16606
|
+
},
|
|
16607
|
+
{
|
|
16608
|
+
"kind": "field",
|
|
16609
|
+
"name": "matchSurface",
|
|
16610
|
+
"type": {
|
|
16611
|
+
"text": "boolean"
|
|
16612
|
+
},
|
|
16613
|
+
"privacy": "public",
|
|
16614
|
+
"default": "false",
|
|
16615
|
+
"description": "When set on a flyout slotted into an `esp-page`, the panel lifts\nits **trailing** edge with the page's surface edge shadow, so it\nreads as a raised peer of the content surface it flies out from\nrather than the shadowless tear-off. The **leading** edge keeps\nits dotted perforation and casts no shadow, so the panel stays\nattached at the tear line instead of floating over the content.\nThe trailing-corner radius is still `--esp-flyout-radius`. No\neffect on a standalone flyout — there is no page surface to match.",
|
|
16616
|
+
"attribute": "match-surface",
|
|
16617
|
+
"reflects": true
|
|
16618
|
+
},
|
|
16619
|
+
{
|
|
16620
|
+
"kind": "field",
|
|
16621
|
+
"name": "standalone",
|
|
16622
|
+
"type": {
|
|
16623
|
+
"text": "boolean"
|
|
16624
|
+
},
|
|
16625
|
+
"privacy": "public",
|
|
16626
|
+
"default": "false",
|
|
16627
|
+
"description": "Whether this flyout ignores the shared `showFlyout()` /\n`closeFlyout()` bus and is driven only through its own\n`show()` / `close()` / `toggle()` API.\n\nBy default a flyout services the bus, so a single flyout in a\npage \"just works\" as the target of `showFlyout()` — the same\nzero-config model as `<esp-toaster>` and `showToast()`. Because\nthe bus is a global broadcast, **every** listening flyout on the\npage answers a `showFlyout()` call; set `standalone` on any\nflyout you drive directly so only your one designated help\nsurface responds.",
|
|
16628
|
+
"attribute": "standalone",
|
|
16629
|
+
"reflects": true
|
|
16630
|
+
},
|
|
16631
|
+
{
|
|
16632
|
+
"kind": "field",
|
|
16633
|
+
"name": "returnFocusTo",
|
|
16634
|
+
"type": {
|
|
16635
|
+
"text": "HTMLElement | undefined"
|
|
16636
|
+
},
|
|
16637
|
+
"privacy": "public",
|
|
16638
|
+
"description": "Element to return focus to when the flyout closes. In the in-grid\nmodes it is focused only if focus is inside the flyout at close;\nin the overlay-drawer mode it overrides the modal treatment's\nautomatic restore-to-opener. Usually supplied through\n`showFlyout({ returnFocusTo })`."
|
|
16639
|
+
},
|
|
16640
|
+
{
|
|
16641
|
+
"kind": "field",
|
|
16642
|
+
"name": "overlayReturnFocusTo",
|
|
16643
|
+
"type": {
|
|
16644
|
+
"text": "HTMLElement | undefined"
|
|
16645
|
+
},
|
|
16646
|
+
"privacy": "private",
|
|
16647
|
+
"description": "`returnFocusTo` captured at close time for the overlay teardown,\nwhich runs after `close()` (in `updated()`): the modal treatment\nrestores focus to the pre-open element, and this explicit target\nmust win over that."
|
|
16648
|
+
},
|
|
16649
|
+
{
|
|
16650
|
+
"kind": "field",
|
|
16651
|
+
"name": "lastGeneratedAriaLabel",
|
|
16652
|
+
"type": {
|
|
16653
|
+
"text": "string | null"
|
|
16654
|
+
},
|
|
16655
|
+
"privacy": "private",
|
|
16656
|
+
"default": "null",
|
|
16657
|
+
"description": "The last `aria-label` this component generated from `heading` or\nthe overlay fallback, or `null` if none. The flyout only rewrites\n`aria-label` when the current value is absent or still equals what\nit last generated, so a label the author sets at any time — in\nmarkup or later — wins."
|
|
16658
|
+
},
|
|
16659
|
+
{
|
|
16660
|
+
"kind": "field",
|
|
16661
|
+
"name": "boundKeydown",
|
|
16662
|
+
"privacy": "private"
|
|
16663
|
+
},
|
|
16664
|
+
{
|
|
16665
|
+
"kind": "field",
|
|
16666
|
+
"name": "boundShowRequest",
|
|
16667
|
+
"privacy": "private"
|
|
16668
|
+
},
|
|
16669
|
+
{
|
|
16670
|
+
"kind": "field",
|
|
16671
|
+
"name": "boundCloseRequest",
|
|
16672
|
+
"privacy": "private"
|
|
16673
|
+
},
|
|
16674
|
+
{
|
|
16675
|
+
"kind": "field",
|
|
16676
|
+
"name": "boundOverlayMediaChange",
|
|
16677
|
+
"privacy": "private"
|
|
16678
|
+
},
|
|
16679
|
+
{
|
|
16680
|
+
"kind": "field",
|
|
16681
|
+
"name": "boundAnchorViewportChange",
|
|
16682
|
+
"privacy": "private"
|
|
16683
|
+
},
|
|
16684
|
+
{
|
|
16685
|
+
"kind": "field",
|
|
16686
|
+
"name": "anchorPositionRaf",
|
|
16687
|
+
"type": {
|
|
16688
|
+
"text": "number"
|
|
16689
|
+
},
|
|
16690
|
+
"privacy": "private",
|
|
16691
|
+
"default": "0"
|
|
16692
|
+
},
|
|
16693
|
+
{
|
|
16694
|
+
"kind": "field",
|
|
16695
|
+
"name": "trackingAnchorPosition",
|
|
16696
|
+
"type": {
|
|
16697
|
+
"text": "boolean"
|
|
16698
|
+
},
|
|
16699
|
+
"privacy": "private",
|
|
16700
|
+
"default": "false"
|
|
16701
|
+
},
|
|
16702
|
+
{
|
|
16703
|
+
"kind": "field",
|
|
16704
|
+
"name": "anchorResizeObserver",
|
|
16705
|
+
"type": {
|
|
16706
|
+
"text": "ResizeObserver | undefined"
|
|
16707
|
+
},
|
|
16708
|
+
"privacy": "private"
|
|
16709
|
+
},
|
|
16710
|
+
{
|
|
16711
|
+
"kind": "field",
|
|
16712
|
+
"name": "observedAnchorPanel",
|
|
16713
|
+
"type": {
|
|
16714
|
+
"text": "HTMLElement | undefined"
|
|
16715
|
+
},
|
|
16716
|
+
"privacy": "private"
|
|
16717
|
+
},
|
|
16718
|
+
{
|
|
16719
|
+
"kind": "field",
|
|
16720
|
+
"name": "busSubscribed",
|
|
16721
|
+
"type": {
|
|
16722
|
+
"text": "boolean"
|
|
16723
|
+
},
|
|
16724
|
+
"privacy": "private",
|
|
16725
|
+
"default": "false",
|
|
16726
|
+
"description": "Whether the bus handlers are currently registered. EspBus does\nnot dedupe subscriptions, so this guards against double-adds."
|
|
16727
|
+
},
|
|
16728
|
+
{
|
|
16729
|
+
"kind": "field",
|
|
16730
|
+
"name": "panelRef",
|
|
16731
|
+
"privacy": "private"
|
|
16732
|
+
},
|
|
16733
|
+
{
|
|
16734
|
+
"kind": "field",
|
|
16735
|
+
"name": "overlay",
|
|
16736
|
+
"privacy": "private",
|
|
16737
|
+
"default": "new OverlayController({ host: this, getFocusTrapContainer: () => this.panelRef.value ?? null, getFocusFallback: () => this.panelRef.value ?? null, promote: false, })",
|
|
16738
|
+
"description": "Modal treatment for the overlay-drawer presentation only. It does\nnot promote out of the page slot, so the flyout keeps its grid\nplacement and `flyout-state-changed` sync; inert anchors on the\nflyout's own position, making its page siblings inert."
|
|
16739
|
+
},
|
|
16740
|
+
{
|
|
16741
|
+
"kind": "field",
|
|
16742
|
+
"name": "overlayMediaQuery",
|
|
16743
|
+
"type": {
|
|
16744
|
+
"text": "MediaQueryList | undefined"
|
|
16745
|
+
},
|
|
16746
|
+
"privacy": "private",
|
|
16747
|
+
"description": "Media query matching the overlay-drawer viewport range."
|
|
16748
|
+
},
|
|
16749
|
+
{
|
|
16750
|
+
"kind": "field",
|
|
16751
|
+
"name": "overlayActive",
|
|
16752
|
+
"type": {
|
|
16753
|
+
"text": "boolean"
|
|
16754
|
+
},
|
|
16755
|
+
"privacy": "private",
|
|
16756
|
+
"default": "false",
|
|
16757
|
+
"description": "Whether the modal (overlay) treatment is currently applied."
|
|
16758
|
+
},
|
|
16759
|
+
{
|
|
16760
|
+
"kind": "field",
|
|
16761
|
+
"name": "baseRole",
|
|
16762
|
+
"type": {
|
|
16763
|
+
"text": "string"
|
|
16764
|
+
},
|
|
16765
|
+
"privacy": "private",
|
|
16766
|
+
"default": "\"complementary\"",
|
|
16767
|
+
"description": "The landmark role to restore when leaving the overlay treatment\n(the author's role, or the default `complementary`)."
|
|
16768
|
+
},
|
|
16769
|
+
{
|
|
16770
|
+
"kind": "field",
|
|
16771
|
+
"name": "effectiveOverlay",
|
|
16772
|
+
"type": {
|
|
16773
|
+
"text": "boolean"
|
|
16774
|
+
},
|
|
16775
|
+
"privacy": "private",
|
|
16776
|
+
"description": "Whether the flyout is presenting as an overlay drawer — either\nforced via `mode=\"overlay\"` or below the mobile threshold. The\nmodal a11y treatment applies exactly in this state; the in-grid\nmodes stay a non-modal `complementary` landmark.",
|
|
16777
|
+
"readonly": true
|
|
16778
|
+
},
|
|
16779
|
+
{
|
|
16780
|
+
"kind": "method",
|
|
16781
|
+
"name": "syncBusSubscription",
|
|
16782
|
+
"privacy": "private",
|
|
16783
|
+
"return": {
|
|
16784
|
+
"type": {
|
|
16785
|
+
"text": "void"
|
|
16786
|
+
}
|
|
16787
|
+
},
|
|
16788
|
+
"description": "Subscribe to the shared bus unless `standalone`; idempotent so\nit is safe to call from both connect and a `standalone` change."
|
|
16789
|
+
},
|
|
16790
|
+
{
|
|
16791
|
+
"kind": "method",
|
|
16792
|
+
"name": "unsubscribeBus",
|
|
16793
|
+
"privacy": "private",
|
|
16794
|
+
"return": {
|
|
16795
|
+
"type": {
|
|
16796
|
+
"text": "void"
|
|
16797
|
+
}
|
|
16798
|
+
}
|
|
16799
|
+
},
|
|
16800
|
+
{
|
|
16801
|
+
"kind": "method",
|
|
16802
|
+
"name": "show",
|
|
16803
|
+
"privacy": "public",
|
|
16804
|
+
"return": {
|
|
16805
|
+
"type": {
|
|
16806
|
+
"text": "void"
|
|
16807
|
+
}
|
|
16808
|
+
},
|
|
16809
|
+
"description": "Open the flyout with its current content. In the in-grid modes it\ndoes not move focus; in the overlay-drawer mode it moves focus\ninto the drawer as a modal."
|
|
16810
|
+
},
|
|
16811
|
+
{
|
|
16812
|
+
"kind": "method",
|
|
16813
|
+
"name": "close",
|
|
16814
|
+
"privacy": "public",
|
|
16815
|
+
"return": {
|
|
16816
|
+
"type": {
|
|
16817
|
+
"text": "void"
|
|
16818
|
+
}
|
|
16819
|
+
},
|
|
16820
|
+
"parameters": [
|
|
16821
|
+
{
|
|
16822
|
+
"name": "reason",
|
|
16823
|
+
"default": "\"programmatic\"",
|
|
16824
|
+
"type": {
|
|
16825
|
+
"text": "FlyoutCloseReason"
|
|
16826
|
+
}
|
|
16827
|
+
}
|
|
16828
|
+
],
|
|
16829
|
+
"description": "Close the flyout. In the in-grid modes, if focus is inside the\nflyout it is returned to `returnFocusTo` when one was provided; in\nthe overlay-drawer mode the modal treatment restores focus to\nwherever it was when the drawer opened, unless `returnFocusTo`\nnames an explicit target — the explicit target wins."
|
|
16830
|
+
},
|
|
16831
|
+
{
|
|
16832
|
+
"kind": "method",
|
|
16833
|
+
"name": "toggle",
|
|
16834
|
+
"privacy": "public",
|
|
16835
|
+
"return": {
|
|
16836
|
+
"type": {
|
|
16837
|
+
"text": "void"
|
|
16838
|
+
}
|
|
16839
|
+
},
|
|
16840
|
+
"description": "Toggle the flyout between open and closed."
|
|
16841
|
+
},
|
|
16842
|
+
{
|
|
16843
|
+
"kind": "method",
|
|
16844
|
+
"name": "handleShowRequest",
|
|
16845
|
+
"privacy": "private",
|
|
16846
|
+
"return": {
|
|
16847
|
+
"type": {
|
|
16848
|
+
"text": "void"
|
|
16849
|
+
}
|
|
16850
|
+
},
|
|
16851
|
+
"parameters": [
|
|
16852
|
+
{
|
|
16853
|
+
"name": "config",
|
|
16854
|
+
"type": {
|
|
16855
|
+
"text": "FlyoutConfig"
|
|
16856
|
+
}
|
|
16857
|
+
}
|
|
16858
|
+
],
|
|
16859
|
+
"description": "Service a `\"show-flyout\"` bus request: swap in the requested\nheading/content (never stacking) and open."
|
|
16860
|
+
},
|
|
16861
|
+
{
|
|
16862
|
+
"kind": "method",
|
|
16863
|
+
"name": "handleKeydown",
|
|
16864
|
+
"privacy": "private",
|
|
16865
|
+
"return": {
|
|
16866
|
+
"type": {
|
|
16867
|
+
"text": "void"
|
|
16868
|
+
}
|
|
16869
|
+
},
|
|
16870
|
+
"parameters": [
|
|
16871
|
+
{
|
|
16872
|
+
"name": "ev",
|
|
16873
|
+
"type": {
|
|
16874
|
+
"text": "KeyboardEvent"
|
|
16875
|
+
}
|
|
16876
|
+
}
|
|
16877
|
+
]
|
|
16878
|
+
},
|
|
16879
|
+
{
|
|
16880
|
+
"kind": "method",
|
|
16881
|
+
"name": "focusIsInside",
|
|
16882
|
+
"privacy": "private",
|
|
16883
|
+
"return": {
|
|
16884
|
+
"type": {
|
|
16885
|
+
"text": "boolean"
|
|
16886
|
+
}
|
|
16887
|
+
}
|
|
16888
|
+
},
|
|
16889
|
+
{
|
|
16890
|
+
"kind": "method",
|
|
16891
|
+
"name": "syncAnchorGeometry",
|
|
16892
|
+
"privacy": "private",
|
|
16893
|
+
"return": {
|
|
16894
|
+
"type": {
|
|
16895
|
+
"text": "void"
|
|
16896
|
+
}
|
|
16897
|
+
},
|
|
16898
|
+
"description": "Position an anchored in-grid flyout at the trigger's natural\nblock-start, then shift it upward only enough to keep its bottom in\nthe visible scrollport. The shift is recalculated during scrolling,\nso it returns to zero when the panel fits at its natural top."
|
|
16899
|
+
},
|
|
16900
|
+
{
|
|
16901
|
+
"kind": "method",
|
|
16902
|
+
"name": "getVisibleBlockBounds",
|
|
16903
|
+
"privacy": "private",
|
|
16904
|
+
"return": {
|
|
16905
|
+
"type": {
|
|
16906
|
+
"text": "{ top: number; bottom: number }"
|
|
16907
|
+
}
|
|
16908
|
+
},
|
|
16909
|
+
"description": "Intersect the visual viewport with every scrolling ancestor. This\nkeeps the flyout usable both on the document and inside a bounded\nlive-example pane such as WTFM's demo container."
|
|
16910
|
+
},
|
|
16911
|
+
{
|
|
16912
|
+
"kind": "method",
|
|
16913
|
+
"name": "composedParent",
|
|
16914
|
+
"privacy": "private",
|
|
16915
|
+
"return": {
|
|
16916
|
+
"type": {
|
|
16917
|
+
"text": "Element | null"
|
|
16918
|
+
}
|
|
16919
|
+
},
|
|
16920
|
+
"parameters": [
|
|
16921
|
+
{
|
|
16922
|
+
"name": "element",
|
|
16923
|
+
"type": {
|
|
16924
|
+
"text": "Element"
|
|
16925
|
+
}
|
|
16926
|
+
}
|
|
16927
|
+
]
|
|
16928
|
+
},
|
|
16929
|
+
{
|
|
16930
|
+
"kind": "method",
|
|
16931
|
+
"name": "setGeometryProperty",
|
|
16932
|
+
"privacy": "private",
|
|
16933
|
+
"return": {
|
|
16934
|
+
"type": {
|
|
16935
|
+
"text": "void"
|
|
16936
|
+
}
|
|
16937
|
+
},
|
|
16938
|
+
"parameters": [
|
|
16939
|
+
{
|
|
16940
|
+
"name": "name",
|
|
16941
|
+
"type": {
|
|
16942
|
+
"text": "string"
|
|
16943
|
+
}
|
|
16944
|
+
},
|
|
16945
|
+
{
|
|
16946
|
+
"name": "value",
|
|
16947
|
+
"type": {
|
|
16948
|
+
"text": "string"
|
|
16949
|
+
}
|
|
16950
|
+
}
|
|
16951
|
+
]
|
|
16952
|
+
},
|
|
16953
|
+
{
|
|
16954
|
+
"kind": "method",
|
|
16955
|
+
"name": "clearAnchorGeometry",
|
|
16956
|
+
"privacy": "private",
|
|
16957
|
+
"return": {
|
|
16958
|
+
"type": {
|
|
16959
|
+
"text": "void"
|
|
16960
|
+
}
|
|
16961
|
+
}
|
|
16962
|
+
},
|
|
16963
|
+
{
|
|
16964
|
+
"kind": "method",
|
|
16965
|
+
"name": "scheduleAnchorGeometrySync",
|
|
16966
|
+
"privacy": "private",
|
|
16967
|
+
"return": {
|
|
16968
|
+
"type": {
|
|
16969
|
+
"text": "void"
|
|
16970
|
+
}
|
|
16971
|
+
}
|
|
16972
|
+
},
|
|
16973
|
+
{
|
|
16974
|
+
"kind": "method",
|
|
16975
|
+
"name": "syncAnchorTracking",
|
|
16976
|
+
"privacy": "private",
|
|
16977
|
+
"return": {
|
|
16978
|
+
"type": {
|
|
16979
|
+
"text": "void"
|
|
16980
|
+
}
|
|
16981
|
+
}
|
|
16982
|
+
},
|
|
16983
|
+
{
|
|
16984
|
+
"kind": "method",
|
|
16985
|
+
"name": "stopAnchorTracking",
|
|
16986
|
+
"privacy": "private",
|
|
16987
|
+
"return": {
|
|
16988
|
+
"type": {
|
|
16989
|
+
"text": "void"
|
|
16990
|
+
}
|
|
16991
|
+
}
|
|
16992
|
+
},
|
|
16993
|
+
{
|
|
16994
|
+
"kind": "method",
|
|
16995
|
+
"name": "syncOverlayModal",
|
|
16996
|
+
"privacy": "private",
|
|
16997
|
+
"return": {
|
|
16998
|
+
"type": {
|
|
16999
|
+
"text": "void"
|
|
17000
|
+
}
|
|
17001
|
+
},
|
|
17002
|
+
"description": "Apply modal a11y exactly when the flyout is open **and** presenting\nas an overlay drawer, and remove it otherwise. Called on open/mode\nchanges and when the viewport crosses the overlay threshold.\n\nModal treatment = background inert, scroll lock, `role=\"dialog\"` +\n`aria-modal`, focus moved into the drawer and trapped, and focus\nrestored on teardown — all via the (non-promoting) Overlay\ncontroller, so the flyout never leaves its page slot. The in-grid\nmodes stay a non-modal `complementary` landmark with no focus\nmanagement."
|
|
17003
|
+
},
|
|
17004
|
+
{
|
|
17005
|
+
"kind": "method",
|
|
17006
|
+
"name": "updateGeneratedAriaLabel",
|
|
17007
|
+
"privacy": "private",
|
|
17008
|
+
"return": {
|
|
17009
|
+
"type": {
|
|
17010
|
+
"text": "void"
|
|
17011
|
+
}
|
|
17012
|
+
},
|
|
17013
|
+
"description": "Mirror `heading` into `aria-label`, or apply a stable fallback\nwhile this is an overlay dialog, without clobbering a label the\nauthor controls (see lastGeneratedAriaLabel)."
|
|
17014
|
+
},
|
|
17015
|
+
{
|
|
17016
|
+
"kind": "field",
|
|
17017
|
+
"name": "seedColorBacker",
|
|
17018
|
+
"type": {
|
|
17019
|
+
"text": "string"
|
|
17020
|
+
},
|
|
17021
|
+
"privacy": "private",
|
|
17022
|
+
"default": "\"oklch(0.7 0.125 216)\"",
|
|
17023
|
+
"inheritedFrom": {
|
|
17024
|
+
"name": "EspalierElementBase",
|
|
17025
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17026
|
+
}
|
|
17027
|
+
},
|
|
17028
|
+
{
|
|
17029
|
+
"kind": "field",
|
|
17030
|
+
"name": "espRoot",
|
|
17031
|
+
"type": {
|
|
17032
|
+
"text": "EspalierRoot | null"
|
|
17033
|
+
},
|
|
17034
|
+
"privacy": "private",
|
|
17035
|
+
"default": "null",
|
|
17036
|
+
"inheritedFrom": {
|
|
17037
|
+
"name": "EspalierElementBase",
|
|
17038
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17039
|
+
}
|
|
17040
|
+
},
|
|
17041
|
+
{
|
|
17042
|
+
"kind": "field",
|
|
17043
|
+
"name": "variantTokenOriginalValues",
|
|
17044
|
+
"privacy": "private",
|
|
17045
|
+
"readonly": true,
|
|
17046
|
+
"default": "new Map< string, { generatedPriority: string; generatedValue: string; originalPriority: string; originalValue: string | null; } >()",
|
|
17047
|
+
"inheritedFrom": {
|
|
17048
|
+
"name": "EspalierElementBase",
|
|
17049
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17050
|
+
}
|
|
17051
|
+
},
|
|
17052
|
+
{
|
|
17053
|
+
"kind": "field",
|
|
17054
|
+
"name": "rootEventSubscriptionsActive",
|
|
17055
|
+
"type": {
|
|
17056
|
+
"text": "boolean"
|
|
17057
|
+
},
|
|
17058
|
+
"privacy": "private",
|
|
17059
|
+
"default": "false",
|
|
17060
|
+
"inheritedFrom": {
|
|
17061
|
+
"name": "EspalierElementBase",
|
|
17062
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17063
|
+
}
|
|
17064
|
+
},
|
|
17065
|
+
{
|
|
17066
|
+
"kind": "field",
|
|
17067
|
+
"name": "variantBacker",
|
|
17068
|
+
"type": {
|
|
17069
|
+
"text": "EspalierVariant"
|
|
17070
|
+
},
|
|
17071
|
+
"privacy": "protected",
|
|
17072
|
+
"default": "\"primary\"",
|
|
17073
|
+
"inheritedFrom": {
|
|
17074
|
+
"name": "EspalierElementBase",
|
|
17075
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17076
|
+
}
|
|
17077
|
+
},
|
|
17078
|
+
{
|
|
17079
|
+
"kind": "field",
|
|
17080
|
+
"name": "seedColor",
|
|
17081
|
+
"type": {
|
|
17082
|
+
"text": "string"
|
|
17083
|
+
},
|
|
17084
|
+
"privacy": "public",
|
|
17085
|
+
"inheritedFrom": {
|
|
17086
|
+
"name": "EspalierElementBase",
|
|
17087
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17088
|
+
}
|
|
17089
|
+
},
|
|
17090
|
+
{
|
|
17091
|
+
"kind": "field",
|
|
17092
|
+
"name": "correlationId",
|
|
17093
|
+
"privacy": "public",
|
|
17094
|
+
"inheritedFrom": {
|
|
17095
|
+
"name": "EspalierElementBase",
|
|
17096
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17097
|
+
}
|
|
17098
|
+
},
|
|
17099
|
+
{
|
|
17100
|
+
"kind": "method",
|
|
17101
|
+
"name": "focusResolvedElementAfterUpdate",
|
|
17102
|
+
"privacy": "protected",
|
|
17103
|
+
"return": {
|
|
17104
|
+
"type": {
|
|
17105
|
+
"text": "void"
|
|
17106
|
+
}
|
|
17107
|
+
},
|
|
17108
|
+
"parameters": [
|
|
17109
|
+
{
|
|
17110
|
+
"name": "resolveTarget",
|
|
17111
|
+
"type": {
|
|
17112
|
+
"text": "() => HTMLElement | null | undefined"
|
|
17113
|
+
}
|
|
17114
|
+
},
|
|
17115
|
+
{
|
|
17116
|
+
"name": "options",
|
|
17117
|
+
"optional": true,
|
|
17118
|
+
"type": {
|
|
17119
|
+
"text": "FocusOptions"
|
|
17120
|
+
}
|
|
17121
|
+
}
|
|
17122
|
+
],
|
|
17123
|
+
"inheritedFrom": {
|
|
17124
|
+
"name": "EspalierElementBase",
|
|
17125
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17126
|
+
}
|
|
17127
|
+
},
|
|
17128
|
+
{
|
|
17129
|
+
"kind": "method",
|
|
17130
|
+
"name": "focusShadowElementAfterUpdate",
|
|
17131
|
+
"privacy": "protected",
|
|
17132
|
+
"return": {
|
|
17133
|
+
"type": {
|
|
17134
|
+
"text": "void"
|
|
17135
|
+
}
|
|
17136
|
+
},
|
|
17137
|
+
"parameters": [
|
|
17138
|
+
{
|
|
17139
|
+
"name": "selector",
|
|
17140
|
+
"type": {
|
|
17141
|
+
"text": "string"
|
|
17142
|
+
}
|
|
17143
|
+
},
|
|
17144
|
+
{
|
|
17145
|
+
"name": "options",
|
|
17146
|
+
"optional": true,
|
|
17147
|
+
"type": {
|
|
17148
|
+
"text": "FocusOptions"
|
|
17149
|
+
}
|
|
17150
|
+
}
|
|
17151
|
+
],
|
|
17152
|
+
"inheritedFrom": {
|
|
17153
|
+
"name": "EspalierElementBase",
|
|
17154
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17155
|
+
}
|
|
17156
|
+
},
|
|
17157
|
+
{
|
|
17158
|
+
"kind": "method",
|
|
17159
|
+
"name": "emitValueChanged",
|
|
17160
|
+
"privacy": "protected",
|
|
17161
|
+
"return": {
|
|
17162
|
+
"type": {
|
|
17163
|
+
"text": "void"
|
|
17164
|
+
}
|
|
17165
|
+
},
|
|
17166
|
+
"parameters": [
|
|
17167
|
+
{
|
|
17168
|
+
"name": "detail",
|
|
17169
|
+
"type": {
|
|
17170
|
+
"text": "T"
|
|
17171
|
+
}
|
|
17172
|
+
}
|
|
17173
|
+
],
|
|
17174
|
+
"inheritedFrom": {
|
|
17175
|
+
"name": "EspalierElementBase",
|
|
17176
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17177
|
+
}
|
|
17178
|
+
},
|
|
17179
|
+
{
|
|
17180
|
+
"kind": "field",
|
|
17181
|
+
"name": "scheme",
|
|
17182
|
+
"type": {
|
|
17183
|
+
"text": "\"dark\" | \"light\""
|
|
17184
|
+
},
|
|
17185
|
+
"privacy": "public",
|
|
17186
|
+
"default": "\"light\"",
|
|
17187
|
+
"description": "The scheme to use for the component. This property is used internally\nto control the light/dark scheme so it matches the scheme of\n[esp-root](/components/root). It should not be set manually, it\nexists as an attribute for styling purposes.",
|
|
17188
|
+
"attribute": "scheme",
|
|
17189
|
+
"reflects": true,
|
|
17190
|
+
"inheritedFrom": {
|
|
17191
|
+
"name": "EspalierElementBase",
|
|
17192
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17193
|
+
}
|
|
17194
|
+
},
|
|
17195
|
+
{
|
|
17196
|
+
"kind": "field",
|
|
17197
|
+
"name": "variant",
|
|
17198
|
+
"type": {
|
|
17199
|
+
"text": "EspalierVariant"
|
|
17200
|
+
},
|
|
17201
|
+
"privacy": "public",
|
|
17202
|
+
"description": "The [color variant](/guides/color/variants) of the element.",
|
|
17203
|
+
"attribute": "variant",
|
|
17204
|
+
"reflects": true,
|
|
17205
|
+
"inheritedFrom": {
|
|
17206
|
+
"name": "EspalierElementBase",
|
|
17207
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17208
|
+
}
|
|
17209
|
+
},
|
|
17210
|
+
{
|
|
17211
|
+
"kind": "method",
|
|
17212
|
+
"name": "syncRootFromDom",
|
|
17213
|
+
"privacy": "private",
|
|
17214
|
+
"return": {
|
|
17215
|
+
"type": {
|
|
17216
|
+
"text": "EspalierRoot | null"
|
|
17217
|
+
}
|
|
17218
|
+
},
|
|
17219
|
+
"parameters": [
|
|
17220
|
+
{
|
|
17221
|
+
"name": "throwIfMissing",
|
|
17222
|
+
"type": {
|
|
17223
|
+
"text": "boolean"
|
|
17224
|
+
}
|
|
17225
|
+
}
|
|
17226
|
+
],
|
|
17227
|
+
"inheritedFrom": {
|
|
17228
|
+
"name": "EspalierElementBase",
|
|
17229
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17230
|
+
}
|
|
17231
|
+
},
|
|
17232
|
+
{
|
|
17233
|
+
"kind": "method",
|
|
17234
|
+
"name": "subscribeToRootEvents",
|
|
17235
|
+
"privacy": "private",
|
|
17236
|
+
"return": {
|
|
17237
|
+
"type": {
|
|
17238
|
+
"text": "void"
|
|
17239
|
+
}
|
|
17240
|
+
},
|
|
17241
|
+
"inheritedFrom": {
|
|
17242
|
+
"name": "EspalierElementBase",
|
|
17243
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17244
|
+
}
|
|
17245
|
+
},
|
|
17246
|
+
{
|
|
17247
|
+
"kind": "method",
|
|
17248
|
+
"name": "unsubscribeFromRootEvents",
|
|
17249
|
+
"privacy": "private",
|
|
17250
|
+
"return": {
|
|
17251
|
+
"type": {
|
|
17252
|
+
"text": "void"
|
|
17253
|
+
}
|
|
17254
|
+
},
|
|
17255
|
+
"inheritedFrom": {
|
|
17256
|
+
"name": "EspalierElementBase",
|
|
17257
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17258
|
+
}
|
|
17259
|
+
},
|
|
17260
|
+
{
|
|
17261
|
+
"kind": "field",
|
|
17262
|
+
"name": "handleSeedColorChanged",
|
|
17263
|
+
"privacy": "private",
|
|
17264
|
+
"inheritedFrom": {
|
|
17265
|
+
"name": "EspalierElementBase",
|
|
17266
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17267
|
+
}
|
|
17268
|
+
},
|
|
17269
|
+
{
|
|
17270
|
+
"kind": "field",
|
|
17271
|
+
"name": "handleSchemeChanged",
|
|
17272
|
+
"privacy": "private",
|
|
17273
|
+
"inheritedFrom": {
|
|
17274
|
+
"name": "EspalierElementBase",
|
|
17275
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17276
|
+
}
|
|
17277
|
+
},
|
|
17278
|
+
{
|
|
17279
|
+
"kind": "field",
|
|
17280
|
+
"name": "handleThemeChanged",
|
|
17281
|
+
"privacy": "private",
|
|
17282
|
+
"inheritedFrom": {
|
|
17283
|
+
"name": "EspalierElementBase",
|
|
17284
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17285
|
+
}
|
|
17286
|
+
},
|
|
17287
|
+
{
|
|
17288
|
+
"kind": "field",
|
|
17289
|
+
"name": "handleIconSpriteUrlChanged",
|
|
17290
|
+
"privacy": "private",
|
|
17291
|
+
"inheritedFrom": {
|
|
17292
|
+
"name": "EspalierElementBase",
|
|
17293
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17294
|
+
}
|
|
17295
|
+
},
|
|
17296
|
+
{
|
|
17297
|
+
"kind": "method",
|
|
17298
|
+
"name": "traverseToClosest",
|
|
17299
|
+
"privacy": "public",
|
|
17300
|
+
"return": {
|
|
17301
|
+
"type": {
|
|
17302
|
+
"text": ""
|
|
17303
|
+
}
|
|
17304
|
+
},
|
|
17305
|
+
"parameters": [
|
|
17306
|
+
{
|
|
17307
|
+
"name": "selector",
|
|
17308
|
+
"type": {
|
|
17309
|
+
"text": "string"
|
|
17310
|
+
},
|
|
17311
|
+
"description": "The selector of the element to look for"
|
|
17312
|
+
}
|
|
17313
|
+
],
|
|
17314
|
+
"description": "Traverse up the DOM tree to find the closest element that\nmatches the selector. This method is aware of shadow DOM\nboundaries and will traverse through them to find the element.",
|
|
17315
|
+
"inheritedFrom": {
|
|
17316
|
+
"name": "EspalierElementBase",
|
|
17317
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17318
|
+
}
|
|
17319
|
+
},
|
|
17320
|
+
{
|
|
17321
|
+
"kind": "field",
|
|
17322
|
+
"name": "textContrast",
|
|
17323
|
+
"type": {
|
|
17324
|
+
"text": "Partial<\n Record<SemanticColorName, { bg: SemanticColorName; targetLc: number }>\n >"
|
|
17325
|
+
},
|
|
17326
|
+
"privacy": "private",
|
|
17327
|
+
"static": true,
|
|
17328
|
+
"readonly": true,
|
|
17329
|
+
"default": "{ text: { bg: \"background\", targetLc: 75 }, dangerText: { bg: \"background\", targetLc: 75 }, headings: { bg: \"background\", targetLc: 60 }, headingsHover: { bg: \"background\", targetLc: 60 }, link: { bg: \"background\", targetLc: 75 }, linkHover: { bg: \"background\", targetLc: 75 }, actionText: { bg: \"actionBackground\", targetLc: 75 }, inputCaret: { bg: \"layer2\", targetLc: 60 }, inputSelection: { bg: \"inputSelectionBg\", targetLc: 60 }, }",
|
|
17330
|
+
"description": "Text tokens that require APCA contrast enforcement.\n\nEach entry maps a text-bearing semantic token to:\n - `bg`: the semantic token it sits on (reference color)\n - `targetLc`: the minimum |Lc| the text must achieve",
|
|
17331
|
+
"inheritedFrom": {
|
|
17332
|
+
"name": "EspalierElementBase",
|
|
17333
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17334
|
+
}
|
|
17335
|
+
},
|
|
17336
|
+
{
|
|
17337
|
+
"kind": "field",
|
|
17338
|
+
"name": "statusVariantSources",
|
|
17339
|
+
"type": {
|
|
17340
|
+
"text": "ReadonlySet<ColorSource>"
|
|
17341
|
+
},
|
|
17342
|
+
"privacy": "private",
|
|
17343
|
+
"static": true,
|
|
17344
|
+
"readonly": true,
|
|
17345
|
+
"default": "new Set<ColorSource>([ \"danger\", \"success\", \"warning\", ])",
|
|
17346
|
+
"description": "Variant color sources whose meaning is carried by a fixed hue rather\nthan the brand seed — the destructive / positive / warning status\nfamilies (ADR-004). For these variants the filled-action tokens are\npinned to the variant's own color so a theme cannot make them look\nlike an ordinary brand action. See task 098.",
|
|
17347
|
+
"inheritedFrom": {
|
|
17348
|
+
"name": "EspalierElementBase",
|
|
17349
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17350
|
+
}
|
|
17351
|
+
},
|
|
17352
|
+
{
|
|
17353
|
+
"kind": "field",
|
|
17354
|
+
"name": "semanticActionTokens",
|
|
17355
|
+
"type": {
|
|
17356
|
+
"text": "ReadonlySet<SemanticColorName>"
|
|
17357
|
+
},
|
|
17358
|
+
"privacy": "private",
|
|
17359
|
+
"static": true,
|
|
17360
|
+
"readonly": true,
|
|
17361
|
+
"default": "new Set<SemanticColorName>([\"actionBackground\", \"actionText\"])",
|
|
17362
|
+
"description": "Semantic tokens that paint a control's filled action surface. For a\nstatus variant these always derive from the variant's own color, so\nthe Taproot \"Buttons\" semantic group (which re-points\n`actionBackground` / `actionText` to a brand source) cannot rotate a\ndestructive / warning / positive action off its semantic hue. See\ntask 098.",
|
|
17363
|
+
"inheritedFrom": {
|
|
17364
|
+
"name": "EspalierElementBase",
|
|
17365
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17366
|
+
}
|
|
17367
|
+
},
|
|
17368
|
+
{
|
|
17369
|
+
"kind": "method",
|
|
17370
|
+
"name": "applyVariantTokens",
|
|
17371
|
+
"privacy": "protected",
|
|
17372
|
+
"return": {
|
|
17373
|
+
"type": {
|
|
17374
|
+
"text": "void"
|
|
17375
|
+
}
|
|
17376
|
+
},
|
|
17377
|
+
"inheritedFrom": {
|
|
17378
|
+
"name": "EspalierElementBase",
|
|
17379
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17380
|
+
}
|
|
17381
|
+
},
|
|
17382
|
+
{
|
|
17383
|
+
"kind": "method",
|
|
17384
|
+
"name": "effectiveVariantTokenSource",
|
|
17385
|
+
"privacy": "private",
|
|
17386
|
+
"return": {
|
|
17387
|
+
"type": {
|
|
17388
|
+
"text": "ColorSource"
|
|
17389
|
+
}
|
|
17390
|
+
},
|
|
17391
|
+
"parameters": [
|
|
17392
|
+
{
|
|
17393
|
+
"name": "name",
|
|
17394
|
+
"type": {
|
|
17395
|
+
"text": "SemanticColorName"
|
|
17396
|
+
}
|
|
17397
|
+
},
|
|
17398
|
+
{
|
|
17399
|
+
"name": "mappedSource",
|
|
17400
|
+
"type": {
|
|
17401
|
+
"text": "ColorSource"
|
|
17402
|
+
}
|
|
17403
|
+
},
|
|
17404
|
+
{
|
|
17405
|
+
"name": "isStatusVariant",
|
|
17406
|
+
"type": {
|
|
17407
|
+
"text": "boolean"
|
|
17408
|
+
}
|
|
17409
|
+
}
|
|
17410
|
+
],
|
|
17411
|
+
"description": "Resolve the color source used to derive a semantic token for the\nactive variant.\n\nNormally this is the theme's mapping source, so the variant performs a\nfull palette shift relative to its own color. The exception is the\nmeaning-bearing status variants (`danger`, `success`, `warning`): their\nfilled-action tokens (`actionBackground`, `actionText`) are pinned to\nthe variant's own color — the `primary` entry of the sub-variant\npalette, which is the variant color itself — so a theme that re-points\nthe Buttons semantic group to a brand source cannot rotate a\ndestructive / warning / positive action off its semantic hue. Ordinary\nbrand and primary variants keep full theme customization. See task 098.",
|
|
17412
|
+
"inheritedFrom": {
|
|
17413
|
+
"name": "EspalierElementBase",
|
|
17414
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17415
|
+
}
|
|
17416
|
+
},
|
|
17417
|
+
{
|
|
17418
|
+
"kind": "method",
|
|
17419
|
+
"name": "getVariantColorSource",
|
|
17420
|
+
"privacy": "protected",
|
|
17421
|
+
"return": {
|
|
17422
|
+
"type": {
|
|
17423
|
+
"text": "ColorSource | \"\""
|
|
17424
|
+
}
|
|
17425
|
+
},
|
|
17426
|
+
"inheritedFrom": {
|
|
17427
|
+
"name": "EspalierElementBase",
|
|
17428
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17429
|
+
}
|
|
17430
|
+
},
|
|
17431
|
+
{
|
|
17432
|
+
"kind": "method",
|
|
17433
|
+
"name": "setVariantTokenProperty",
|
|
17434
|
+
"privacy": "private",
|
|
17435
|
+
"return": {
|
|
17436
|
+
"type": {
|
|
17437
|
+
"text": "void"
|
|
17438
|
+
}
|
|
17439
|
+
},
|
|
17440
|
+
"parameters": [
|
|
17441
|
+
{
|
|
17442
|
+
"name": "name",
|
|
17443
|
+
"type": {
|
|
17444
|
+
"text": "string"
|
|
17445
|
+
}
|
|
17446
|
+
},
|
|
17447
|
+
{
|
|
17448
|
+
"name": "value",
|
|
17449
|
+
"type": {
|
|
17450
|
+
"text": "string"
|
|
17451
|
+
}
|
|
17452
|
+
}
|
|
17453
|
+
],
|
|
17454
|
+
"inheritedFrom": {
|
|
17455
|
+
"name": "EspalierElementBase",
|
|
17456
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17457
|
+
}
|
|
17458
|
+
},
|
|
17459
|
+
{
|
|
17460
|
+
"kind": "method",
|
|
17461
|
+
"name": "clearVariantTokens",
|
|
17462
|
+
"privacy": "private",
|
|
17463
|
+
"return": {
|
|
17464
|
+
"type": {
|
|
17465
|
+
"text": "void"
|
|
17466
|
+
}
|
|
17467
|
+
},
|
|
17468
|
+
"inheritedFrom": {
|
|
17469
|
+
"name": "EspalierElementBase",
|
|
17470
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17471
|
+
}
|
|
17472
|
+
}
|
|
17473
|
+
],
|
|
17474
|
+
"events": [
|
|
17475
|
+
{
|
|
17476
|
+
"name": "flyout-opened",
|
|
17477
|
+
"type": {
|
|
17478
|
+
"text": "CustomEvent<{}>"
|
|
17479
|
+
},
|
|
17480
|
+
"description": "Fired by `show()` when the flyout opens."
|
|
17481
|
+
},
|
|
17482
|
+
{
|
|
17483
|
+
"name": "flyout-closed",
|
|
17484
|
+
"type": {
|
|
17485
|
+
"text": "CustomEvent<{reason: FlyoutCloseReason}>"
|
|
17486
|
+
},
|
|
17487
|
+
"description": "Fired by `close()` when the flyout closes. `reason` is `\"escape\"`, `\"vellum\"`, `\"button\"`, or `\"programmatic\"`."
|
|
17488
|
+
},
|
|
17489
|
+
{
|
|
17490
|
+
"name": "flyout-state-changed",
|
|
17491
|
+
"type": {
|
|
17492
|
+
"text": "CustomEvent<{}>"
|
|
17493
|
+
},
|
|
17494
|
+
"description": "Fired on every `open`, `mode`, or `anchor` change, including direct property assignment (not just `show()`/`close()`). `esp-page` uses it to keep its layout in sync; most consumers want `flyout-opened`/`flyout-closed` instead."
|
|
17495
|
+
},
|
|
17496
|
+
{
|
|
17497
|
+
"name": "value-changed",
|
|
17498
|
+
"type": {
|
|
17499
|
+
"text": "CustomEvent"
|
|
17500
|
+
},
|
|
17501
|
+
"inheritedFrom": {
|
|
17502
|
+
"name": "EspalierElementBase",
|
|
17503
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17504
|
+
}
|
|
17505
|
+
}
|
|
17506
|
+
],
|
|
17507
|
+
"attributes": [
|
|
17508
|
+
{
|
|
17509
|
+
"name": "open",
|
|
17510
|
+
"type": {
|
|
17511
|
+
"text": "boolean"
|
|
17512
|
+
},
|
|
17513
|
+
"default": "false",
|
|
17514
|
+
"description": "Whether the flyout is open. Reflected so the initial state can\nbe declared in markup; `esp-page` mirrors it (via the lifecycle\nevents and the slot) onto its own `flyout-open` attribute to\ndrive the grid.",
|
|
17515
|
+
"fieldName": "open"
|
|
17516
|
+
},
|
|
17517
|
+
{
|
|
17518
|
+
"name": "heading",
|
|
17519
|
+
"type": {
|
|
17520
|
+
"text": "string"
|
|
17521
|
+
},
|
|
17522
|
+
"default": "\"\"",
|
|
17523
|
+
"description": "Heading text for the panel's header row. Also becomes the\nflyout's accessible name unless the author set an `aria-label`.\nAn open overlay without either uses the fallback name \"Flyout\" so\nits dialog is never exposed without an accessible name.",
|
|
17524
|
+
"fieldName": "heading"
|
|
17525
|
+
},
|
|
17526
|
+
{
|
|
17527
|
+
"name": "mode",
|
|
17528
|
+
"type": {
|
|
17529
|
+
"text": "\"auto\" | \"overlay\""
|
|
17530
|
+
},
|
|
17531
|
+
"default": "\"auto\"",
|
|
17532
|
+
"description": "Placement behavior.\n\n- `\"auto\"` (default) — the page's placement ladder: gutter,\n docked sidebar, then overlay drawer below the `50em` viewport\n threshold.\n- `\"overlay\"` — always the fixed overlay drawer, at any width.\n The page never reserves a grid track for an overlay-mode\n flyout.",
|
|
17533
|
+
"fieldName": "mode"
|
|
17534
|
+
},
|
|
17535
|
+
{
|
|
17536
|
+
"name": "match-surface",
|
|
17537
|
+
"type": {
|
|
17538
|
+
"text": "boolean"
|
|
17539
|
+
},
|
|
17540
|
+
"default": "false",
|
|
17541
|
+
"description": "When set on a flyout slotted into an `esp-page`, the panel lifts\nits **trailing** edge with the page's surface edge shadow, so it\nreads as a raised peer of the content surface it flies out from\nrather than the shadowless tear-off. The **leading** edge keeps\nits dotted perforation and casts no shadow, so the panel stays\nattached at the tear line instead of floating over the content.\nThe trailing-corner radius is still `--esp-flyout-radius`. No\neffect on a standalone flyout — there is no page surface to match.",
|
|
17542
|
+
"fieldName": "matchSurface"
|
|
17543
|
+
},
|
|
17544
|
+
{
|
|
17545
|
+
"name": "standalone",
|
|
17546
|
+
"type": {
|
|
17547
|
+
"text": "boolean"
|
|
17548
|
+
},
|
|
17549
|
+
"default": "false",
|
|
17550
|
+
"description": "Whether this flyout ignores the shared `showFlyout()` /\n`closeFlyout()` bus and is driven only through its own\n`show()` / `close()` / `toggle()` API.\n\nBy default a flyout services the bus, so a single flyout in a\npage \"just works\" as the target of `showFlyout()` — the same\nzero-config model as `<esp-toaster>` and `showToast()`. Because\nthe bus is a global broadcast, **every** listening flyout on the\npage answers a `showFlyout()` call; set `standalone` on any\nflyout you drive directly so only your one designated help\nsurface responds.",
|
|
17551
|
+
"fieldName": "standalone"
|
|
17552
|
+
},
|
|
17553
|
+
{
|
|
17554
|
+
"name": "scheme",
|
|
17555
|
+
"type": {
|
|
17556
|
+
"text": "\"dark\" | \"light\""
|
|
17557
|
+
},
|
|
17558
|
+
"default": "\"light\"",
|
|
17559
|
+
"description": "The scheme to use for the component. This property is used internally\nto control the light/dark scheme so it matches the scheme of\n[esp-root](/components/root). It should not be set manually, it\nexists as an attribute for styling purposes.",
|
|
17560
|
+
"fieldName": "scheme",
|
|
17561
|
+
"inheritedFrom": {
|
|
17562
|
+
"name": "EspalierElementBase",
|
|
17563
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17564
|
+
}
|
|
17565
|
+
},
|
|
17566
|
+
{
|
|
17567
|
+
"name": "variant",
|
|
17568
|
+
"type": {
|
|
17569
|
+
"text": "EspalierVariant"
|
|
17570
|
+
},
|
|
17571
|
+
"description": "The [color variant](/guides/color/variants) of the element.",
|
|
17572
|
+
"fieldName": "variant",
|
|
17573
|
+
"inheritedFrom": {
|
|
17574
|
+
"name": "EspalierElementBase",
|
|
17575
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17576
|
+
}
|
|
17577
|
+
}
|
|
17578
|
+
],
|
|
17579
|
+
"superclass": {
|
|
17580
|
+
"name": "EspalierElementBase",
|
|
17581
|
+
"module": "dist/shared/esp-element-base.js"
|
|
17582
|
+
},
|
|
16263
17583
|
"docPageTitle": {
|
|
16264
|
-
"name": "
|
|
16265
|
-
"description": "
|
|
17584
|
+
"name": "Flyout",
|
|
17585
|
+
"description": ""
|
|
16266
17586
|
},
|
|
16267
17587
|
"docUrl": {
|
|
16268
|
-
"name": "/components/
|
|
17588
|
+
"name": "/components/flyout",
|
|
16269
17589
|
"description": ""
|
|
16270
17590
|
},
|
|
16271
17591
|
"menuGroup": {
|
|
16272
|
-
"name": "
|
|
16273
|
-
"description": "
|
|
17592
|
+
"name": "Structure",
|
|
17593
|
+
"description": ""
|
|
17594
|
+
},
|
|
17595
|
+
"menuOrder": {
|
|
17596
|
+
"name": "3",
|
|
17597
|
+
"description": ""
|
|
16274
17598
|
},
|
|
16275
17599
|
"menuLabel": {
|
|
16276
|
-
"name": "
|
|
16277
|
-
"description": "
|
|
17600
|
+
"name": "Flyout",
|
|
17601
|
+
"description": ""
|
|
16278
17602
|
},
|
|
16279
17603
|
"menuIcon": {
|
|
16280
|
-
"name": "
|
|
17604
|
+
"name": "layout",
|
|
16281
17605
|
"description": ""
|
|
16282
17606
|
},
|
|
16283
|
-
"
|
|
16284
|
-
|
|
16285
|
-
"description": "Background color of the shared field shell. Defaults to `var(--esp-color-layer-2)`.",
|
|
16286
|
-
"name": "--esp-field-background",
|
|
16287
|
-
"inheritedFrom": {
|
|
16288
|
-
"name": "EspalierElementBase",
|
|
16289
|
-
"module": "dist/shared/esp-element-base.js"
|
|
16290
|
-
}
|
|
16291
|
-
},
|
|
16292
|
-
{
|
|
16293
|
-
"description": "Border color of the shared field shell. Defaults to `var(--esp-color-border)`.",
|
|
16294
|
-
"name": "--esp-field-border-color",
|
|
16295
|
-
"inheritedFrom": {
|
|
16296
|
-
"name": "EspalierElementBase",
|
|
16297
|
-
"module": "dist/shared/esp-element-base.js"
|
|
16298
|
-
}
|
|
16299
|
-
},
|
|
16300
|
-
{
|
|
16301
|
-
"description": "Border width of the shared field shell. Defaults to `1px`.",
|
|
16302
|
-
"name": "--esp-field-border-width",
|
|
16303
|
-
"inheritedFrom": {
|
|
16304
|
-
"name": "EspalierElementBase",
|
|
16305
|
-
"module": "dist/shared/esp-element-base.js"
|
|
16306
|
-
}
|
|
16307
|
-
},
|
|
16308
|
-
{
|
|
16309
|
-
"description": "Text color used inside the shared field shell. Defaults to `var(--esp-color-text)`.",
|
|
16310
|
-
"name": "--esp-field-text-color",
|
|
16311
|
-
"inheritedFrom": {
|
|
16312
|
-
"name": "EspalierElementBase",
|
|
16313
|
-
"module": "dist/shared/esp-element-base.js"
|
|
16314
|
-
}
|
|
16315
|
-
},
|
|
16316
|
-
{
|
|
16317
|
-
"description": "Hover background color of the shared field shell. Derived from `--esp-field-background`.",
|
|
16318
|
-
"name": "--esp-field-hover-bg",
|
|
16319
|
-
"inheritedFrom": {
|
|
16320
|
-
"name": "EspalierElementBase",
|
|
16321
|
-
"module": "dist/shared/esp-element-base.js"
|
|
16322
|
-
}
|
|
16323
|
-
},
|
|
16324
|
-
{
|
|
16325
|
-
"description": "Focus background color of the shared field shell. Derived from `--esp-field-background`.",
|
|
16326
|
-
"name": "--esp-field-focus-bg",
|
|
16327
|
-
"inheritedFrom": {
|
|
16328
|
-
"name": "EspalierElementBase",
|
|
16329
|
-
"module": "dist/shared/esp-element-base.js"
|
|
16330
|
-
}
|
|
16331
|
-
},
|
|
16332
|
-
{
|
|
16333
|
-
"description": "Shadow color used for shared field focus treatment. Defaults to `var(--esp-color-shadow)`.",
|
|
16334
|
-
"name": "--esp-field-focus-shadow",
|
|
16335
|
-
"inheritedFrom": {
|
|
16336
|
-
"name": "EspalierElementBase",
|
|
16337
|
-
"module": "dist/shared/esp-element-base.js"
|
|
16338
|
-
}
|
|
16339
|
-
}
|
|
16340
|
-
]
|
|
16341
|
-
},
|
|
16342
|
-
{
|
|
16343
|
-
"kind": "function",
|
|
16344
|
-
"name": "resetFontCache",
|
|
16345
|
-
"return": {
|
|
16346
|
-
"type": {
|
|
16347
|
-
"text": "void"
|
|
16348
|
-
}
|
|
16349
|
-
},
|
|
16350
|
-
"description": "Reset the module-level font cache. Exposed for test cleanup so each\ntest starts with a fresh slate."
|
|
17607
|
+
"tagName": "esp-flyout",
|
|
17608
|
+
"customElement": true
|
|
16351
17609
|
}
|
|
16352
17610
|
],
|
|
16353
17611
|
"exports": [
|
|
16354
17612
|
{
|
|
16355
17613
|
"kind": "js",
|
|
16356
|
-
"name": "
|
|
16357
|
-
"declaration": {
|
|
16358
|
-
"name": "WEB_SAFE_FONTS",
|
|
16359
|
-
"module": "dist/font-picker/esp-font-picker.js"
|
|
16360
|
-
}
|
|
16361
|
-
},
|
|
16362
|
-
{
|
|
16363
|
-
"kind": "js",
|
|
16364
|
-
"name": "getGoogleFonts",
|
|
17614
|
+
"name": "EspalierFlyout",
|
|
16365
17615
|
"declaration": {
|
|
16366
|
-
"name": "
|
|
16367
|
-
"module": "dist/
|
|
16368
|
-
}
|
|
16369
|
-
},
|
|
16370
|
-
{
|
|
16371
|
-
"kind": "js",
|
|
16372
|
-
"name": "previewFontFamily",
|
|
16373
|
-
"declaration": {
|
|
16374
|
-
"name": "previewFontFamily",
|
|
16375
|
-
"module": "dist/font-picker/esp-font-picker.js"
|
|
16376
|
-
}
|
|
16377
|
-
},
|
|
16378
|
-
{
|
|
16379
|
-
"kind": "js",
|
|
16380
|
-
"name": "EspalierFontPicker",
|
|
16381
|
-
"declaration": {
|
|
16382
|
-
"name": "EspalierFontPicker",
|
|
16383
|
-
"module": "dist/font-picker/esp-font-picker.js"
|
|
17616
|
+
"name": "EspalierFlyout",
|
|
17617
|
+
"module": "dist/flyout/esp-flyout.js"
|
|
16384
17618
|
}
|
|
16385
17619
|
},
|
|
16386
17620
|
{
|
|
16387
17621
|
"kind": "custom-element-definition",
|
|
16388
|
-
"name": "esp-
|
|
17622
|
+
"name": "esp-flyout",
|
|
16389
17623
|
"declaration": {
|
|
16390
|
-
"name": "
|
|
16391
|
-
"module": "dist/
|
|
16392
|
-
}
|
|
16393
|
-
},
|
|
16394
|
-
{
|
|
16395
|
-
"kind": "js",
|
|
16396
|
-
"name": "resetFontCache",
|
|
16397
|
-
"declaration": {
|
|
16398
|
-
"name": "resetFontCache",
|
|
16399
|
-
"module": "dist/font-picker/esp-font-picker.js"
|
|
17624
|
+
"name": "EspalierFlyout",
|
|
17625
|
+
"module": "dist/flyout/esp-flyout.js"
|
|
16400
17626
|
}
|
|
16401
17627
|
}
|
|
16402
17628
|
]
|
|
@@ -30722,9 +31948,17 @@
|
|
|
30722
31948
|
"name": "--esp-page-surface-shadow"
|
|
30723
31949
|
},
|
|
30724
31950
|
{
|
|
30725
|
-
"description": "An optional border on the inline edges of the surface, for themes preferring a hairline over a shadow. Defaults to `none` (e.g. `1px solid var(--esp-color-border)`).",
|
|
31951
|
+
"description": "An optional border on the inline edges of the surface, for themes preferring a hairline over a shadow. Defaults to `none` (e.g. `1px solid var(--esp-color-border)`). Combine with `--esp-page-surface-shadow: none` to switch the content frame from a drop shadow to a hairline, or turn both off for no frame.",
|
|
30726
31952
|
"name": "--esp-page-surface-border"
|
|
30727
31953
|
},
|
|
31954
|
+
{
|
|
31955
|
+
"description": "The background of the main content well. Defaults to `transparent` (the well shows the page background). Set it to give the content well its own card color, or pair the transparent default with `--esp-page-surface-shadow: none` for content that floats directly on the page with no frame.",
|
|
31956
|
+
"name": "--esp-page-main-background"
|
|
31957
|
+
},
|
|
31958
|
+
{
|
|
31959
|
+
"description": "The width of the open flyout track (and of the `esp-flyout` overlay drawer). Defaults to `20rem`.",
|
|
31960
|
+
"name": "--esp-page-flyout-width"
|
|
31961
|
+
},
|
|
30728
31962
|
{
|
|
30729
31963
|
"description": "Offset reserved for fixed headers. Defaults to `var(--esp-header-height)`.",
|
|
30730
31964
|
"name": "--esp-page-fixed-header-offset"
|
|
@@ -30821,6 +32055,10 @@
|
|
|
30821
32055
|
"description": "Content to place in the right aside.",
|
|
30822
32056
|
"name": "right"
|
|
30823
32057
|
},
|
|
32058
|
+
{
|
|
32059
|
+
"description": "A transient `esp-flyout` panel that lives on the canvas, outside the content surface. Closed it costs no width; open it claims the right canvas gutter first — the surface keeps its alignment weighting and shifts only as far as the flyout's width requires — then docks as a width-competing right sidebar when no gutter exists, and becomes an overlay drawer on small viewports. The persistent `right` aside and the transient flyout are complementary, not alternatives. A flyout opened with an `anchor` aligns to that trigger and stays in the same document scroll flow.",
|
|
32060
|
+
"name": "flyout"
|
|
32061
|
+
},
|
|
30824
32062
|
{
|
|
30825
32063
|
"description": "Content to place in the footer.",
|
|
30826
32064
|
"name": "footer"
|
|
@@ -30836,6 +32074,31 @@
|
|
|
30836
32074
|
"name": "dialogZone",
|
|
30837
32075
|
"privacy": "private"
|
|
30838
32076
|
},
|
|
32077
|
+
{
|
|
32078
|
+
"kind": "field",
|
|
32079
|
+
"name": "flyoutSlot",
|
|
32080
|
+
"privacy": "private"
|
|
32081
|
+
},
|
|
32082
|
+
{
|
|
32083
|
+
"kind": "method",
|
|
32084
|
+
"name": "syncFlyoutState",
|
|
32085
|
+
"privacy": "private",
|
|
32086
|
+
"return": {
|
|
32087
|
+
"type": {
|
|
32088
|
+
"text": "void"
|
|
32089
|
+
}
|
|
32090
|
+
},
|
|
32091
|
+
"parameters": [
|
|
32092
|
+
{
|
|
32093
|
+
"name": "ev",
|
|
32094
|
+
"optional": true,
|
|
32095
|
+
"type": {
|
|
32096
|
+
"text": "Event"
|
|
32097
|
+
}
|
|
32098
|
+
}
|
|
32099
|
+
],
|
|
32100
|
+
"description": "Mirror the slotted flyout's open, overlay, and anchor state onto\nhost attributes read by the grid CSS. State is recomputed from the\nslot so multiple flyouts and slot changes stay correct."
|
|
32101
|
+
},
|
|
30839
32102
|
{
|
|
30840
32103
|
"kind": "field",
|
|
30841
32104
|
"name": "kind",
|
|
@@ -44028,9 +45291,9 @@
|
|
|
44028
45291
|
"kind": "variable",
|
|
44029
45292
|
"name": "ESP_EVENTS",
|
|
44030
45293
|
"type": {
|
|
44031
|
-
"text": "{\n // ── Form value events ───────────────────────────────────────\n VALUE_CHANGED: \"value-changed\",\n VALIDITY_CHANGED: \"validity-changed\",\n\n // ── Click events ────────────────────────────────────────────\n CLICKED: \"clicked\",\n\n // ── Form submission events ──────────────────────────────────\n ESP_SUBMIT: \"esp-submit\",\n ESP_SUBMIT_RESPONSE: \"esp-submit-response\",\n ESP_SUBMIT_ERROR: \"esp-submit-error\",\n\n // ── Navigation / layout events ──────────────────────────────\n ESP_TAB_CHANGED: \"esp-tab-changed\",\n ESP_TAB_UPDATED: \"esp-tab-updated\",\n ESP_TOGGLE: \"esp-toggle\",\n ESP_ACCORDION_CHANGE: \"esp-accordion-change\",\n DRAWER_OPENED: \"drawer-opened\",\n DRAWER_CLOSED: \"drawer-closed\",\n\n // ── Popover DOM events ──────────────────────────────────────\n POPOVER_OPENED: \"popover-opened\",\n POPOVER_CLOSED: \"popover-closed\",\n\n // ── Grid events ─────────────────────────────────────────────\n GRID_EVENT: \"grid-event\",\n GRID_LOAD_START: \"esp-grid-load-start\",\n GRID_LOAD_SUCCESS: \"esp-grid-load-success\",\n GRID_LOAD_ERROR: \"esp-grid-load-error\",\n GRID_ITEMS_CHANGED: \"esp-grid-items-changed\",\n\n // ── Info events ─────────────────────────────────────────────\n DESTROY: \"destroy\",\n\n // ── Upload events ───────────────────────────────────────────\n FILE_SELECTED: \"file-selected\",\n FILE_REMOVED: \"file-removed\",\n FILES_SELECTED: \"files-selected\",\n FILES_REJECTED: \"files-rejected\",\n UPLOAD_RETRY: \"upload-retry\",\n RETRY_UPLOAD: \"retry-upload\",\n IMAGES_REORDERED: \"images-reordered\",\n\n // ── Search events ───────────────────────────────────────────\n SEARCH_REQUESTED: \"search-requested\",\n RESULT_SELECTED: \"result-selected\",\n SEARCH_CLOSED: \"search-closed\",\n\n // ── Picker internal events ──────────────────────────────────\n SELECTION_CHANGED: \"selection-changed\",\n CLOSE_MENU: \"close-menu\",\n REMOVE_IMAGE: \"remove-image\",\n}"
|
|
45294
|
+
"text": "{\n // ── Form value events ───────────────────────────────────────\n VALUE_CHANGED: \"value-changed\",\n VALIDITY_CHANGED: \"validity-changed\",\n\n // ── Click events ────────────────────────────────────────────\n CLICKED: \"clicked\",\n\n // ── Form submission events ──────────────────────────────────\n ESP_SUBMIT: \"esp-submit\",\n ESP_SUBMIT_RESPONSE: \"esp-submit-response\",\n ESP_SUBMIT_ERROR: \"esp-submit-error\",\n\n // ── Navigation / layout events ──────────────────────────────\n ESP_TAB_CHANGED: \"esp-tab-changed\",\n ESP_TAB_UPDATED: \"esp-tab-updated\",\n ESP_TOGGLE: \"esp-toggle\",\n ESP_ACCORDION_CHANGE: \"esp-accordion-change\",\n DRAWER_OPENED: \"drawer-opened\",\n DRAWER_CLOSED: \"drawer-closed\",\n FLYOUT_OPENED: \"flyout-opened\",\n FLYOUT_CLOSED: \"flyout-closed\",\n FLYOUT_STATE_CHANGED: \"flyout-state-changed\",\n\n // ── Popover DOM events ──────────────────────────────────────\n POPOVER_OPENED: \"popover-opened\",\n POPOVER_CLOSED: \"popover-closed\",\n\n // ── Grid events ─────────────────────────────────────────────\n GRID_EVENT: \"grid-event\",\n GRID_LOAD_START: \"esp-grid-load-start\",\n GRID_LOAD_SUCCESS: \"esp-grid-load-success\",\n GRID_LOAD_ERROR: \"esp-grid-load-error\",\n GRID_ITEMS_CHANGED: \"esp-grid-items-changed\",\n\n // ── Info events ─────────────────────────────────────────────\n DESTROY: \"destroy\",\n\n // ── Upload events ───────────────────────────────────────────\n FILE_SELECTED: \"file-selected\",\n FILE_REMOVED: \"file-removed\",\n FILES_SELECTED: \"files-selected\",\n FILES_REJECTED: \"files-rejected\",\n UPLOAD_RETRY: \"upload-retry\",\n RETRY_UPLOAD: \"retry-upload\",\n IMAGES_REORDERED: \"images-reordered\",\n\n // ── Search events ───────────────────────────────────────────\n SEARCH_REQUESTED: \"search-requested\",\n RESULT_SELECTED: \"result-selected\",\n SEARCH_CLOSED: \"search-closed\",\n\n // ── Picker internal events ──────────────────────────────────\n SELECTION_CHANGED: \"selection-changed\",\n CLOSE_MENU: \"close-menu\",\n REMOVE_IMAGE: \"remove-image\",\n}"
|
|
44032
45295
|
},
|
|
44033
|
-
"default": "{ // ── Form value events ─────────────────────────────────────── VALUE_CHANGED: \"value-changed\", VALIDITY_CHANGED: \"validity-changed\", // ── Click events ──────────────────────────────────────────── CLICKED: \"clicked\", // ── Form submission events ────────────────────────────────── ESP_SUBMIT: \"esp-submit\", ESP_SUBMIT_RESPONSE: \"esp-submit-response\", ESP_SUBMIT_ERROR: \"esp-submit-error\", // ── Navigation / layout events ────────────────────────────── ESP_TAB_CHANGED: \"esp-tab-changed\", ESP_TAB_UPDATED: \"esp-tab-updated\", ESP_TOGGLE: \"esp-toggle\", ESP_ACCORDION_CHANGE: \"esp-accordion-change\", DRAWER_OPENED: \"drawer-opened\", DRAWER_CLOSED: \"drawer-closed\", // ── Popover DOM events ────────────────────────────────────── POPOVER_OPENED: \"popover-opened\", POPOVER_CLOSED: \"popover-closed\", // ── Grid events ───────────────────────────────────────────── GRID_EVENT: \"grid-event\", GRID_LOAD_START: \"esp-grid-load-start\", GRID_LOAD_SUCCESS: \"esp-grid-load-success\", GRID_LOAD_ERROR: \"esp-grid-load-error\", GRID_ITEMS_CHANGED: \"esp-grid-items-changed\", // ── Info events ───────────────────────────────────────────── DESTROY: \"destroy\", // ── Upload events ─────────────────────────────────────────── FILE_SELECTED: \"file-selected\", FILE_REMOVED: \"file-removed\", FILES_SELECTED: \"files-selected\", FILES_REJECTED: \"files-rejected\", UPLOAD_RETRY: \"upload-retry\", RETRY_UPLOAD: \"retry-upload\", IMAGES_REORDERED: \"images-reordered\", // ── Search events ─────────────────────────────────────────── SEARCH_REQUESTED: \"search-requested\", RESULT_SELECTED: \"result-selected\", SEARCH_CLOSED: \"search-closed\", // ── Picker internal events ────────────────────────────────── SELECTION_CHANGED: \"selection-changed\", CLOSE_MENU: \"close-menu\", REMOVE_IMAGE: \"remove-image\", }",
|
|
45296
|
+
"default": "{ // ── Form value events ─────────────────────────────────────── VALUE_CHANGED: \"value-changed\", VALIDITY_CHANGED: \"validity-changed\", // ── Click events ──────────────────────────────────────────── CLICKED: \"clicked\", // ── Form submission events ────────────────────────────────── ESP_SUBMIT: \"esp-submit\", ESP_SUBMIT_RESPONSE: \"esp-submit-response\", ESP_SUBMIT_ERROR: \"esp-submit-error\", // ── Navigation / layout events ────────────────────────────── ESP_TAB_CHANGED: \"esp-tab-changed\", ESP_TAB_UPDATED: \"esp-tab-updated\", ESP_TOGGLE: \"esp-toggle\", ESP_ACCORDION_CHANGE: \"esp-accordion-change\", DRAWER_OPENED: \"drawer-opened\", DRAWER_CLOSED: \"drawer-closed\", FLYOUT_OPENED: \"flyout-opened\", FLYOUT_CLOSED: \"flyout-closed\", FLYOUT_STATE_CHANGED: \"flyout-state-changed\", // ── Popover DOM events ────────────────────────────────────── POPOVER_OPENED: \"popover-opened\", POPOVER_CLOSED: \"popover-closed\", // ── Grid events ───────────────────────────────────────────── GRID_EVENT: \"grid-event\", GRID_LOAD_START: \"esp-grid-load-start\", GRID_LOAD_SUCCESS: \"esp-grid-load-success\", GRID_LOAD_ERROR: \"esp-grid-load-error\", GRID_ITEMS_CHANGED: \"esp-grid-items-changed\", // ── Info events ───────────────────────────────────────────── DESTROY: \"destroy\", // ── Upload events ─────────────────────────────────────────── FILE_SELECTED: \"file-selected\", FILE_REMOVED: \"file-removed\", FILES_SELECTED: \"files-selected\", FILES_REJECTED: \"files-rejected\", UPLOAD_RETRY: \"upload-retry\", RETRY_UPLOAD: \"retry-upload\", IMAGES_REORDERED: \"images-reordered\", // ── Search events ─────────────────────────────────────────── SEARCH_REQUESTED: \"search-requested\", RESULT_SELECTED: \"result-selected\", SEARCH_CLOSED: \"search-closed\", // ── Picker internal events ────────────────────────────────── SELECTION_CHANGED: \"selection-changed\", CLOSE_MENU: \"close-menu\", REMOVE_IMAGE: \"remove-image\", }",
|
|
44034
45297
|
"description": "Canonical event name strings for every CustomEvent in the library.\n\nUse these instead of raw strings to catch typos at compile time:\n\n```ts\nel.addEventListener(ESP_EVENTS.VALUE_CHANGED, handler);\n```"
|
|
44035
45298
|
}
|
|
44036
45299
|
],
|
|
@@ -44123,6 +45386,22 @@
|
|
|
44123
45386
|
"module": "./toast-events.js"
|
|
44124
45387
|
}
|
|
44125
45388
|
},
|
|
45389
|
+
{
|
|
45390
|
+
"kind": "js",
|
|
45391
|
+
"name": "FlyoutConfig",
|
|
45392
|
+
"declaration": {
|
|
45393
|
+
"name": "FlyoutConfig",
|
|
45394
|
+
"module": "./flyout-events.js"
|
|
45395
|
+
}
|
|
45396
|
+
},
|
|
45397
|
+
{
|
|
45398
|
+
"kind": "js",
|
|
45399
|
+
"name": "FlyoutCloseReason",
|
|
45400
|
+
"declaration": {
|
|
45401
|
+
"name": "FlyoutCloseReason",
|
|
45402
|
+
"module": "./flyout-events.js"
|
|
45403
|
+
}
|
|
45404
|
+
},
|
|
44126
45405
|
{
|
|
44127
45406
|
"kind": "js",
|
|
44128
45407
|
"name": "PickerItem",
|
|
@@ -44181,6 +45460,60 @@
|
|
|
44181
45460
|
}
|
|
44182
45461
|
]
|
|
44183
45462
|
},
|
|
45463
|
+
{
|
|
45464
|
+
"kind": "javascript-module",
|
|
45465
|
+
"path": "dist/shared/flyout-events.js",
|
|
45466
|
+
"declarations": [
|
|
45467
|
+
{
|
|
45468
|
+
"kind": "function",
|
|
45469
|
+
"name": "showFlyout",
|
|
45470
|
+
"return": {
|
|
45471
|
+
"type": {
|
|
45472
|
+
"text": "void"
|
|
45473
|
+
}
|
|
45474
|
+
},
|
|
45475
|
+
"parameters": [
|
|
45476
|
+
{
|
|
45477
|
+
"name": "config",
|
|
45478
|
+
"default": "{}",
|
|
45479
|
+
"type": {
|
|
45480
|
+
"text": "FlyoutConfig"
|
|
45481
|
+
},
|
|
45482
|
+
"description": "Flyout configuration."
|
|
45483
|
+
}
|
|
45484
|
+
],
|
|
45485
|
+
"description": "Open the page's flyout surface. Publishes a `\"show-flyout\"`\nevent on `EspBus` which is picked up by `<esp-flyout>`.\n\n```ts\nimport { showFlyout } from \"@taprootio/espalier\";\n\nshowFlyout({ heading: \"Details\", content: detailsFragment });\n```\n\nIf no `<esp-flyout>` is connected, the event goes unserviced —\ncallers that need a fallback (e.g. opening a URL in a new tab)\nshould check for a connected flyout themselves."
|
|
45486
|
+
},
|
|
45487
|
+
{
|
|
45488
|
+
"kind": "function",
|
|
45489
|
+
"name": "closeFlyout",
|
|
45490
|
+
"return": {
|
|
45491
|
+
"type": {
|
|
45492
|
+
"text": "void"
|
|
45493
|
+
}
|
|
45494
|
+
},
|
|
45495
|
+
"description": "Close the page's flyout surface. Publishes a `\"close-flyout\"`\nevent on `EspBus`."
|
|
45496
|
+
}
|
|
45497
|
+
],
|
|
45498
|
+
"exports": [
|
|
45499
|
+
{
|
|
45500
|
+
"kind": "js",
|
|
45501
|
+
"name": "showFlyout",
|
|
45502
|
+
"declaration": {
|
|
45503
|
+
"name": "showFlyout",
|
|
45504
|
+
"module": "dist/shared/flyout-events.js"
|
|
45505
|
+
}
|
|
45506
|
+
},
|
|
45507
|
+
{
|
|
45508
|
+
"kind": "js",
|
|
45509
|
+
"name": "closeFlyout",
|
|
45510
|
+
"declaration": {
|
|
45511
|
+
"name": "closeFlyout",
|
|
45512
|
+
"module": "dist/shared/flyout-events.js"
|
|
45513
|
+
}
|
|
45514
|
+
}
|
|
45515
|
+
]
|
|
45516
|
+
},
|
|
44184
45517
|
{
|
|
44185
45518
|
"kind": "javascript-module",
|
|
44186
45519
|
"path": "dist/shared/font-helpers.js",
|
|
@@ -44820,6 +46153,16 @@
|
|
|
44820
46153
|
"privacy": "private",
|
|
44821
46154
|
"default": "false"
|
|
44822
46155
|
},
|
|
46156
|
+
{
|
|
46157
|
+
"kind": "field",
|
|
46158
|
+
"name": "_pendingReactivation",
|
|
46159
|
+
"type": {
|
|
46160
|
+
"text": "boolean"
|
|
46161
|
+
},
|
|
46162
|
+
"privacy": "private",
|
|
46163
|
+
"default": "false",
|
|
46164
|
+
"description": "Set by `hostDisconnected()` when it tears down a still-open\noverlay (a DOM move). The next `open()` is then a reactivation\nand preserves `_previouslyFocused` instead of recapturing; a\n`close()` in any state cancels it."
|
|
46165
|
+
},
|
|
44823
46166
|
{
|
|
44824
46167
|
"kind": "field",
|
|
44825
46168
|
"name": "_dropZone",
|
|
@@ -45504,6 +46847,12 @@
|
|
|
45504
46847
|
"kind": "javascript-module",
|
|
45505
46848
|
"path": "dist/shared/style-fragments.js",
|
|
45506
46849
|
"declarations": [
|
|
46850
|
+
{
|
|
46851
|
+
"kind": "variable",
|
|
46852
|
+
"name": "alignAttributeTextInheritance",
|
|
46853
|
+
"default": "css` :host([align]) { text-align: inherit; } `",
|
|
46854
|
+
"description": "Chromium maps `align` on autonomous custom elements to the obsolete HTML\npresentational hint `text-align`. Espalier uses the attribute for geometric\nplacement, so restore normal text-alignment inheritance on affected hosts."
|
|
46855
|
+
},
|
|
45507
46856
|
{
|
|
45508
46857
|
"kind": "variable",
|
|
45509
46858
|
"name": "srOnly",
|
|
@@ -45559,6 +46908,14 @@
|
|
|
45559
46908
|
}
|
|
45560
46909
|
],
|
|
45561
46910
|
"exports": [
|
|
46911
|
+
{
|
|
46912
|
+
"kind": "js",
|
|
46913
|
+
"name": "alignAttributeTextInheritance",
|
|
46914
|
+
"declaration": {
|
|
46915
|
+
"name": "alignAttributeTextInheritance",
|
|
46916
|
+
"module": "dist/shared/style-fragments.js"
|
|
46917
|
+
}
|
|
46918
|
+
},
|
|
45562
46919
|
{
|
|
45563
46920
|
"kind": "js",
|
|
45564
46921
|
"name": "srOnly",
|
|
@@ -51889,7 +53246,7 @@
|
|
|
51889
53246
|
"declarations": [
|
|
51890
53247
|
{
|
|
51891
53248
|
"kind": "class",
|
|
51892
|
-
"description": "A toast notification container that listens for `\"show-toast\"`\nevents on `EspBus` and renders them as stacked `esp-info`\ncomponents. Place one `<esp-toaster>` in your page layout\n(it is included automatically inside `<esp-page>`).\n\nToasts auto-dismiss after their `duration` (default 5 seconds).\nA duration of `0` creates a persistent toast that the user must\ndismiss manually.\n\n```ts\nimport { showToast } from \"@taprootio/espalier\";\n\nshowToast({ message: \"Saved!\", variant: \"success\" });\nshowToast({ message: \"Connection lost\", variant: \"danger\", duration: 0 });\n```\n\nTry it out — type a message and click a button to fire a toast:\n\n```html\n<esp-box>\n <h3>Toast Playground</h3>\n <div style=\"display: flex; flex-wrap: wrap; gap: var(--esp-size-small); align-items: end;\">\n <esp-form-item label=\"Message\" style=\"flex: 1; min-width: 200px;\">\n <esp-input id=\"toast-msg\" value=\"Hello from the toaster!\"></esp-input>\n </esp-form-item>\n <esp-form-item label=\"Duration (seconds)\" style=\"width: 160px;\">\n <esp-input id=\"toast-dur\" value=\"5\" type=\"number\"></esp-input>\n </esp-form-item>\n </div>\n <div style=\"display: flex; flex-wrap: wrap; gap: var(--esp-size-small); margin-top: var(--esp-size-small);\">\n <esp-button id=\"fire-toast\" label=\"Show Toast\" variant=\"primary\" collapsed></esp-button>\n <esp-button id=\"fire-persistent\" label=\"Show Persistent Toast\" variant=\"warning\" collapsed></esp-button>\n <esp-button id=\"fire-success\" label=\"Success!\" variant=\"success\" collapsed></esp-button>\n <esp-button id=\"fire-danger\" label=\"Error!\" variant=\"danger\" collapsed></esp-button>\n </div>\n</esp-box>\n<script>\n const msgInput = findById(\"toast-msg\");\n const durInput = findById(\"toast-dur\");\n findById(\"fire-toast\").addEventListener(\"clicked\", () => {\n showToast({\n message: msgInput.value,\n duration: Number(durInput.value) || 5,\n icon: \"bread\"\n });\n });\n findById(\"fire-persistent\").addEventListener(\"clicked\", () => {\n showToast({\n message: msgInput.value,\n duration: 0,\n icon: \"bread\",\n variant: \"warning\"\n });\n });\n findById(\"fire-success\").addEventListener(\"clicked\", () => {\n showToast({\n message: \"Operation completed successfully!\",\n variant: \"success\",\n icon: \"bread\"\n });\n });\n findById(\"fire-danger\").addEventListener(\"clicked\", () => {\n showToast({\n message: \"Something went wrong!\",\n variant: \"danger\",\n duration: 0,\n icon: \"bread\"\n });\n });\n</script>\n```",
|
|
53249
|
+
"description": "A toast notification container that listens for `\"show-toast\"`\nevents on `EspBus` and renders them as stacked `esp-info`\ncomponents. Place one `<esp-toaster>` in your page layout\n(it is included automatically inside `<esp-page>`).\n\nIf more than one toaster is connected — for example a page that\nnests several `<esp-page>`s, each of which injects its own — all\ntoasts live in one shared stack rendered by a single toaster, so\neach `showToast()` renders once, not once per toaster. The renderer\nis re-chosen whenever a toast arrives, a toaster connects or\ndisconnects, or a toaster's size collapses or expands, preferring a\n**visible** instance, and the whole live stack migrates with it —\na hidden toaster never swallows toasts, and the stack never\nfragments across instances. This needs no configuration.\n\nThe migration timing contract: routing always skips instances\nhidden by `display`, `visibility`, `opacity: 0`, or\n`content-visibility` at decision time, and a live stack re-routes\n**immediately** when its renderer is collapsed via `display` (the\ncollapse resizes the toaster, which is observed). A pure\n`visibility` or `opacity` flip produces no resize, so an\nalready-rendered stack under one re-routes on the **next** toast,\nconnect/disconnect, or resize instead. (The related `esp-flyout`\nuses an explicit `standalone` opt-out rather than routing, because\nits instances are distinct surfaces you target individually.)\n\nToasts auto-dismiss after their `duration` (default 5 seconds).\nA duration of `0` creates a persistent toast that the user must\ndismiss manually.\n\n```ts\nimport { showToast } from \"@taprootio/espalier\";\n\nshowToast({ message: \"Saved!\", variant: \"success\" });\nshowToast({ message: \"Connection lost\", variant: \"danger\", duration: 0 });\n```\n\nTry it out — type a message and click a button to fire a toast:\n\n```html\n<esp-box>\n <h3>Toast Playground</h3>\n <div style=\"display: flex; flex-wrap: wrap; gap: var(--esp-size-small); align-items: end;\">\n <esp-form-item label=\"Message\" style=\"flex: 1; min-width: 200px;\">\n <esp-input id=\"toast-msg\" value=\"Hello from the toaster!\"></esp-input>\n </esp-form-item>\n <esp-form-item label=\"Duration (seconds)\" style=\"width: 160px;\">\n <esp-input id=\"toast-dur\" value=\"5\" type=\"number\"></esp-input>\n </esp-form-item>\n </div>\n <div style=\"display: flex; flex-wrap: wrap; gap: var(--esp-size-small); margin-top: var(--esp-size-small);\">\n <esp-button id=\"fire-toast\" label=\"Show Toast\" variant=\"primary\" collapsed></esp-button>\n <esp-button id=\"fire-persistent\" label=\"Show Persistent Toast\" variant=\"warning\" collapsed></esp-button>\n <esp-button id=\"fire-success\" label=\"Success!\" variant=\"success\" collapsed></esp-button>\n <esp-button id=\"fire-danger\" label=\"Error!\" variant=\"danger\" collapsed></esp-button>\n </div>\n</esp-box>\n<script>\n const msgInput = findById(\"toast-msg\");\n const durInput = findById(\"toast-dur\");\n findById(\"fire-toast\").addEventListener(\"clicked\", () => {\n showToast({\n message: msgInput.value,\n duration: Number(durInput.value) || 5,\n icon: \"bread\"\n });\n });\n findById(\"fire-persistent\").addEventListener(\"clicked\", () => {\n showToast({\n message: msgInput.value,\n duration: 0,\n icon: \"bread\",\n variant: \"warning\"\n });\n });\n findById(\"fire-success\").addEventListener(\"clicked\", () => {\n showToast({\n message: \"Operation completed successfully!\",\n variant: \"success\",\n icon: \"bread\"\n });\n });\n findById(\"fire-danger\").addEventListener(\"clicked\", () => {\n showToast({\n message: \"Something went wrong!\",\n variant: \"danger\",\n duration: 0,\n icon: \"bread\"\n });\n });\n</script>\n```",
|
|
51893
53250
|
"name": "EspalierToaster",
|
|
51894
53251
|
"cssProperties": [
|
|
51895
53252
|
{
|
|
@@ -51962,6 +53319,45 @@
|
|
|
51962
53319
|
}
|
|
51963
53320
|
],
|
|
51964
53321
|
"members": [
|
|
53322
|
+
{
|
|
53323
|
+
"kind": "field",
|
|
53324
|
+
"name": "connected",
|
|
53325
|
+
"type": {
|
|
53326
|
+
"text": "Array<EspalierToaster>"
|
|
53327
|
+
},
|
|
53328
|
+
"privacy": "private",
|
|
53329
|
+
"static": true,
|
|
53330
|
+
"default": "[]",
|
|
53331
|
+
"description": "Every connected toaster, in connection order. `esp-page`\nauto-injects a toaster, so a page nesting several `esp-page`s has\nseveral toasters. One shared bus subscription feeds one shared\ntoast queue, and a single **renderer** — re-chosen whenever the\nroster or the queue changes, preferring a visible instance —\ndisplays the whole queue. Keeping the queue shared (rather than\nper-instance) means a routing change migrates the entire live\nstack to the new renderer instead of fragmenting it into\noverlapping per-toaster stacks."
|
|
53332
|
+
},
|
|
53333
|
+
{
|
|
53334
|
+
"kind": "field",
|
|
53335
|
+
"name": "busSubscribed",
|
|
53336
|
+
"type": {
|
|
53337
|
+
"text": "boolean"
|
|
53338
|
+
},
|
|
53339
|
+
"privacy": "private",
|
|
53340
|
+
"static": true,
|
|
53341
|
+
"default": "false"
|
|
53342
|
+
},
|
|
53343
|
+
{
|
|
53344
|
+
"kind": "field",
|
|
53345
|
+
"name": "queue",
|
|
53346
|
+
"type": {
|
|
53347
|
+
"text": "Array<ToastConfig>"
|
|
53348
|
+
},
|
|
53349
|
+
"privacy": "private",
|
|
53350
|
+
"static": true,
|
|
53351
|
+
"default": "[]",
|
|
53352
|
+
"description": "All live toasts, shared across every instance."
|
|
53353
|
+
},
|
|
53354
|
+
{
|
|
53355
|
+
"kind": "field",
|
|
53356
|
+
"name": "boundDeliver",
|
|
53357
|
+
"privacy": "private",
|
|
53358
|
+
"static": true,
|
|
53359
|
+
"readonly": true
|
|
53360
|
+
},
|
|
51965
53361
|
{
|
|
51966
53362
|
"kind": "field",
|
|
51967
53363
|
"name": "toasts",
|
|
@@ -51969,17 +53365,23 @@
|
|
|
51969
53365
|
"text": "Array<ToastConfig>"
|
|
51970
53366
|
},
|
|
51971
53367
|
"privacy": "private",
|
|
51972
|
-
"default": "[]"
|
|
53368
|
+
"default": "[]",
|
|
53369
|
+
"description": "The shared queue slice this instance currently displays: the full\nqueue for the chosen renderer, empty for everyone else."
|
|
51973
53370
|
},
|
|
51974
53371
|
{
|
|
51975
53372
|
"kind": "field",
|
|
51976
|
-
"name": "
|
|
51977
|
-
"
|
|
53373
|
+
"name": "resizeObserver",
|
|
53374
|
+
"type": {
|
|
53375
|
+
"text": "ResizeObserver | undefined"
|
|
53376
|
+
},
|
|
53377
|
+
"privacy": "private",
|
|
53378
|
+
"description": "Re-routes live toasts when this toaster is collapsed or expanded\nwith no accompanying queue or roster change — e.g. a persistent\ntoast whose renderer's panel goes `display: none`. Collapsing an\nancestor resizes the host to zero, which fires this observer.\n(`visibility`/`opacity` flips produce no resize; those re-route on\nthe next queue or roster event.)"
|
|
51978
53379
|
},
|
|
51979
53380
|
{
|
|
51980
53381
|
"kind": "method",
|
|
51981
|
-
"name": "
|
|
53382
|
+
"name": "deliver",
|
|
51982
53383
|
"privacy": "private",
|
|
53384
|
+
"static": true,
|
|
51983
53385
|
"return": {
|
|
51984
53386
|
"type": {
|
|
51985
53387
|
"text": "void"
|
|
@@ -51994,6 +53396,48 @@
|
|
|
51994
53396
|
}
|
|
51995
53397
|
]
|
|
51996
53398
|
},
|
|
53399
|
+
{
|
|
53400
|
+
"kind": "method",
|
|
53401
|
+
"name": "dismiss",
|
|
53402
|
+
"privacy": "private",
|
|
53403
|
+
"static": true,
|
|
53404
|
+
"return": {
|
|
53405
|
+
"type": {
|
|
53406
|
+
"text": "void"
|
|
53407
|
+
}
|
|
53408
|
+
},
|
|
53409
|
+
"parameters": [
|
|
53410
|
+
{
|
|
53411
|
+
"name": "config",
|
|
53412
|
+
"type": {
|
|
53413
|
+
"text": "ToastConfig"
|
|
53414
|
+
}
|
|
53415
|
+
}
|
|
53416
|
+
],
|
|
53417
|
+
"description": "Remove a toast from the shared queue exactly once — the timer and\nthe manual destroy button can both race to dismiss it."
|
|
53418
|
+
},
|
|
53419
|
+
{
|
|
53420
|
+
"kind": "method",
|
|
53421
|
+
"name": "syncRenderer",
|
|
53422
|
+
"privacy": "private",
|
|
53423
|
+
"static": true,
|
|
53424
|
+
"return": {
|
|
53425
|
+
"type": {
|
|
53426
|
+
"text": "void"
|
|
53427
|
+
}
|
|
53428
|
+
},
|
|
53429
|
+
"description": "Choose the renderer — the first connected instance that reports\nvisible, or the first connected one if none do — and hand it the\nwhole shared queue; every other instance renders nothing. Run on\nevery queue, roster, or renderer-size change, so the stack follows\nvisibility and never splits across toasters."
|
|
53430
|
+
},
|
|
53431
|
+
{
|
|
53432
|
+
"kind": "method",
|
|
53433
|
+
"name": "isVisible",
|
|
53434
|
+
"privacy": "private",
|
|
53435
|
+
"return": {
|
|
53436
|
+
"type": {
|
|
53437
|
+
"text": "boolean"
|
|
53438
|
+
}
|
|
53439
|
+
}
|
|
53440
|
+
},
|
|
51997
53441
|
{
|
|
51998
53442
|
"kind": "method",
|
|
51999
53443
|
"name": "removeToast",
|