@ed.yakovich/component-library 0.0.13 → 0.0.15

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.
Files changed (86) hide show
  1. package/dist/components/InfoBanner/index.js +1 -1
  2. package/dist/index-44540db3-BN5vFHKr.js +44 -0
  3. package/dist/index-4d46d9ca-BtyZMEt1.js +12 -0
  4. package/dist/index-D9BZSjMp.js +21158 -0
  5. package/dist/{index-0d8e0844-BJzWsYCM.js → index-ba31999b-V1s4iffq.js} +2490 -2442
  6. package/dist/{index.esm-322571ff-D1REhsOg.js → index.esm-a7c99373-DUoLYEEM.js} +1 -1
  7. package/dist/main.js +1 -1
  8. package/dist/prism-accordion.entry-D4g7wdXB.js +51 -0
  9. package/dist/prism-avatar_3.entry-C1H9bg9y.js +335 -0
  10. package/dist/prism-badge.entry-CWLalQsR.js +56 -0
  11. package/dist/prism-banner.entry-D1sce4tY.js +105 -0
  12. package/dist/prism-breadcrumb.entry-C282yHQl.js +33 -0
  13. package/dist/prism-button_3.entry-DIg1AEXF.js +240 -0
  14. package/dist/prism-card.entry-DaxGD-uX.js +152 -0
  15. package/dist/prism-carousel.entry-BGmaoDVM.js +3346 -0
  16. package/dist/prism-checkbox-group.entry-Dwa_mvjd.js +62 -0
  17. package/dist/prism-checkbox.entry-CZvx2AHI.js +116 -0
  18. package/dist/prism-data-table.entry-DACAS8BE.js +3591 -0
  19. package/dist/prism-datepicker.entry-CHUyjilE.js +279 -0
  20. package/dist/prism-dialog.entry-DdO9Kt32.js +73 -0
  21. package/dist/prism-drawer.entry-Dn0rvW9U.js +43 -0
  22. package/dist/{prism-form.entry-BJl2ma6x.js → prism-form.entry-C8VzGp6c.js} +11 -11
  23. package/dist/prism-header.entry-D0PypuC3.js +227 -0
  24. package/dist/prism-hero.entry-DQ8G7Jb_.js +23 -0
  25. package/dist/prism-image.entry-tx9Pc3k_.js +38 -0
  26. package/dist/prism-input-file.entry-CO-2LZxG.js +119 -0
  27. package/dist/prism-input-otp.entry-ZAxExI2D.js +79 -0
  28. package/dist/prism-input-text.entry-EXsN4rgi.js +278 -0
  29. package/dist/prism-input-textarea.entry-CRqY4mr9.js +145 -0
  30. package/dist/prism-input-time.entry-BJ9he6MX.js +85 -0
  31. package/dist/prism-layout.entry-ulDWjtj8.js +20 -0
  32. package/dist/prism-lineitem.entry-DJk6X6mR.js +47 -0
  33. package/dist/prism-modal.entry-C795YZic.js +95 -0
  34. package/dist/prism-pagination.entry-DYQieAu3.js +69 -0
  35. package/dist/prism-popover.entry-BgLcACZw.js +1114 -0
  36. package/dist/prism-progress.entry-Z21rpoTm.js +79 -0
  37. package/dist/prism-radio_2.entry-C0HPCb3G.js +159 -0
  38. package/dist/prism-select.entry-B_l-ab1d.js +286 -0
  39. package/dist/prism-switch.entry-OkC8X1bD.js +95 -0
  40. package/dist/prism-tab.entry-szftB_wL.js +20 -0
  41. package/dist/prism-tabs.entry-0UR3WF52.js +72 -0
  42. package/dist/prism-text.entry-BEAZ8xEV.js +28 -0
  43. package/dist/prism-treelist.entry-UX4FM4Bi.js +135 -0
  44. package/dist/prism-typeahead.entry-CwOiAFQE.js +1264 -0
  45. package/dist/purify-9647b094-0-ZyuBNz.js +572 -0
  46. package/package.json +2 -2
  47. package/dist/index-By9FNwDt.js +0 -29159
  48. package/dist/index-b30029d4-WVn-64c9.js +0 -12
  49. package/dist/index-e6818ded-r_t6ryaW.js +0 -57
  50. package/dist/prism-accordion.entry-Cx9R3pGR.js +0 -51
  51. package/dist/prism-avatar_2.entry-BYgG-lCw.js +0 -68
  52. package/dist/prism-badge.entry-7tkOjkOC.js +0 -58
  53. package/dist/prism-banner.entry-jfMhWTJ-.js +0 -82
  54. package/dist/prism-breadcrumb.entry-6BKiTFvg.js +0 -33
  55. package/dist/prism-button_2.entry-DnnPRWBp.js +0 -110
  56. package/dist/prism-card.entry-CkJQnJF8.js +0 -119
  57. package/dist/prism-carousel.entry-CjyHpSoz.js +0 -3111
  58. package/dist/prism-checkbox-group.entry-h68bFMNT.js +0 -62
  59. package/dist/prism-checkbox.entry-BnqA0ld6.js +0 -99
  60. package/dist/prism-data-table.entry-CRJbrNmp.js +0 -10475
  61. package/dist/prism-datepicker.entry-Xu0QUY2Q.js +0 -249
  62. package/dist/prism-grid.entry-DIdkZa73.js +0 -28
  63. package/dist/prism-header.entry-BZVXHBCx.js +0 -202
  64. package/dist/prism-hero.entry-D6vT9Cfs.js +0 -23
  65. package/dist/prism-icon_2.entry-u0DT931p.js +0 -118
  66. package/dist/prism-image.entry-Db2L08jh.js +0 -38
  67. package/dist/prism-input-file.entry-NMZff8Re.js +0 -119
  68. package/dist/prism-input-otp.entry-qFelMElv.js +0 -63
  69. package/dist/prism-input-text.entry-YbQ3NQuB.js +0 -228
  70. package/dist/prism-input-textarea.entry-Bz7ecyna.js +0 -140
  71. package/dist/prism-layout.entry-DVLlE1S8.js +0 -20
  72. package/dist/prism-lineitem.entry-BOUyDMlc.js +0 -44
  73. package/dist/prism-menu.entry-TqJabKKs.js +0 -231
  74. package/dist/prism-modal.entry-CiIsey_Y.js +0 -94
  75. package/dist/prism-pagination.entry-BZOMunz-.js +0 -60
  76. package/dist/prism-popover.entry-Bt1uXSV9.js +0 -1013
  77. package/dist/prism-popper.entry-Ck2qBmqM.js +0 -959
  78. package/dist/prism-progress.entry-DobqcGx4.js +0 -79
  79. package/dist/prism-radio-group.entry-DTVEUN2r.js +0 -66
  80. package/dist/prism-radio.entry-D0dGSQn2.js +0 -101
  81. package/dist/prism-select.entry-CRYklxK0.js +0 -230
  82. package/dist/prism-switch.entry-CINfgY_6.js +0 -95
  83. package/dist/prism-tab.entry-dV7AljQC.js +0 -20
  84. package/dist/prism-tabs.entry-DPc_2ypT.js +0 -70
  85. package/dist/prism-tooltip.entry-DZJ2tfFV.js +0 -52
  86. package/dist/prism-typeahead.entry-DDkmHo72.js +0 -1234
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Copyright (c) 2025 Comcast. Prism UI - v7.32.2 - made with ❤️ in Philadelphia
2
+ * Copyright (c) 2025 Comcast. Prism UI - v8.28.0 - made with ❤️ in Philadelphia
3
3
  */
4
4
  function x(c, o, t) {
5
5
  var v, l, r;
package/dist/main.js CHANGED
@@ -1,4 +1,4 @@
1
- import { I as e } from "./index-By9FNwDt.js";
1
+ import { I as e } from "./index-D9BZSjMp.js";
2
2
  import { InfoBannerContextProvider as t } from "./components/InfoBanner/context/index.js";
3
3
  import { StickyFooter as x } from "./components/StickyFooter/index.js";
4
4
  export {
@@ -0,0 +1,51 @@
1
+ import { r as o, c as s, h as e, H as n, g as c } from "./index-D9BZSjMp.js";
2
+ import { g as l, a as d, m } from "./index-44540db3-BN5vFHKr.js";
3
+ /*!
4
+ * Copyright (c) 2025 Comcast. Prism UI - v8.28.0 - made with ❤️ in Philadelphia
5
+ */
6
+ const p = ':host{border-radius:var(--prism-radius-size-sm);display:block;width:100%}:host(.stacked-top){margin-top:var(--prism-accordion-spacing-margin-top,var(--prism-spacer-size-xs))}:host(.stacked-bottom){margin-top:var(--prism-accordion-spacing-margin-bottom,var(--prism-spacer-size-xs))}.text{display:grid;grid-template-areas:"label" "label-secondary" "description";grid-template-columns:auto;grid-template-rows:-webkit-max-content -webkit-max-content -webkit-max-content;grid-template-rows:max-content max-content max-content;width:100%}@media (min-width:768px){.text{grid-template-areas:"label label-secondary" "description description";grid-template-columns:1fr -webkit-max-content;grid-template-columns:1fr max-content;grid-template-rows:-webkit-max-content -webkit-max-content;grid-template-rows:max-content max-content}}.description{grid-area:description}.label{flex:1 1 auto;grid-area:label;text-align:left}.label-secondary{grid-area:label-secondary;margin-top:var(--prism-spacer-size-xs)}@media (min-width:768px){.label-secondary{margin-top:0}}.trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:initial;border-radius:var(--prism-radius-size-sm);border-width:0;color:inherit;display:flex;outline-color:transparent;outline-style:solid;outline-width:2px;padding:var(--prism-spacer-size-xxl) var(--prism-spacer-size-lg);text-align:left;transition:all var(--prism-animation-duration-normal) var(--prism-animation-timing-function);width:100%}@media (min-width:768px){.trigger{padding:var(--prism-spacer-size-xxl)}}.trigger:hover{cursor:pointer}.trigger:focus-visible{outline-color:var(--prism-color-border-brand-primary-base)}:host(.primary){background-color:var(--prism-color-material-primary-base);color:var(--prism-color-text-primary-base)}:host(.secondary){background-color:var(--prism-color-material-secondary-base);color:var(--prism-color-text-secondary-base)}:host(.primary-inverse){background-color:var(--prism-color-material-primary-inverse-base);color:var(--prism-color-text-primary-inverse-base)}:host(.secondary-inverse){background-color:var(--prism-color-material-secondary-inverse-base);color:var(--prism-color-text-primary-inverse-base)}:host(.primary-brand){background-color:var(--prism-color-material-brand-primary-base);color:var(--prism-color-text-primary-base)}:host(.secondary-brand){background-color:var(--prism-color-material-brand-secondary-base);color:var(--prism-color-text-seconday-base)}:host(.primary) .trigger,:host(.secondary) .trigger{color:var(--prism-color-text-primary-base)}:host(.primary-inverse) .trigger,:host(.secondary-inverse) .trigger{color:var(--prism-color-text-primary-inverse-base)}:host(.primary) .trigger:hover{background-color:var(--prism-color-material-primary-hover)}:host(.primary) .trigger:focus-visible{background-color:var(--prism-color-material-primary-focus)}:host(.secondary) .trigger:hover{background-color:var(--prism-color-material-secondary-hover)}:host(.secondary) .trigger:focus-visible{background-color:var(--prism-color-material-secondary-focus)}:host(.primary-inverse) .trigger:hover{background-color:var(--prism-color-material-primary-inverse-hover)}:host(.primary-inverse) .trigger:focus-visible{background-color:var(--prism-color-material-primary-inverse-focus)}:host(.secondary-inverse) .trigger:hover{background-color:var(--prism-color-material-secondary-hover)}:host(.secondary-inverse) .trigger:focus-visible{background-color:var(--prism-color-material-secondary-focus)}:host(.primary-brand) .trigger:hover{background-color:var(--prism-color-material-brand-primary-hover)}:host(.primary-brand) .trigger:focus-visible{background-color:var(--prism-color-material-brand-primary-focus)}:host(.secondary-brand) .trigger:hover{background-color:var(--prism-color-material-brand-secondary-hover)}:host(.secondary-brand) .trigger:focus-visible{background-color:var(--prism-color-material-brand-secondary-focus)}.expandable-content.visible{grid-template-rows:1fr;overflow:visible}.expandable-content.visible .content-wrapper{opacity:1;visibility:visible}.expandable-content{display:grid;grid-template-rows:0fr;overflow-y:hidden;transition:grid-template-rows var(--prism-animation-duration-normal) var(--prism-animation-timing-function)}.content-wrapper{min-height:0;opacity:0;transition:all var(--prism-animation-duration-normal) var(--prism-animation-timing-function);visibility:hidden}.content-spacing{background-color:var(--prism-accordion-content-bg-color,"inherit");padding:var(--prism-accordion-content-spacing-padding,var(--prism-spacer-size-lg) var(--prism-spacer-size-xxl))}.hint{margin-top:var(--prism-spacer-size-xs)}.icon{margin-left:var(--prism-spacer-size-xxl);margin-right:0}.icon.left{margin-left:0;margin-right:var(--prism-spacer-size-xxl)}@media (prefers-reduced-motion){.content-wrapper,.expandable-content,.trigger{transition:none}}::slotted([slot=asset-leading]){margin-right:var(--prism-spacer-size-lg)}::slotted([slot=asset-trailing]){flex-shrink:0;margin-left:var(--prism-spacer-size-lg)}', b = p, g = class {
7
+ constructor(i) {
8
+ o(this, i), this.prismClick = s(this, "prismClick", 7), this.uid = l(), this.sibling = {
9
+ top: !1,
10
+ bottom: !1
11
+ }, this.toggleFocusElements = () => {
12
+ d(this.el).forEach((r) => {
13
+ this.collapsed ? r == null || r.setAttribute("tabindex", "-1") : r == null || r.removeAttribute("tabindex");
14
+ });
15
+ }, this.onClick = (r) => {
16
+ this.collapsed = !this.collapsed;
17
+ const { currentTarget: a } = r, { id: t } = a;
18
+ this.toggleFocusElements(), this.prismClick.emit({
19
+ id: t,
20
+ name: "accordion",
21
+ collapsed: this.collapsed,
22
+ target: a
23
+ });
24
+ }, this.collapsed = !0, this.prismId = `prism-accordion-${this.uid}`, this.label = void 0, this.description = void 0, this.labelSecondary = void 0, this.triggerAlignment = "right", this.tone = "secondary";
25
+ }
26
+ connectedCallback() {
27
+ m("prism-accordion");
28
+ }
29
+ componentDidRender() {
30
+ this.toggleFocusElements();
31
+ }
32
+ componentWillLoad() {
33
+ var i, r;
34
+ ((i = this.el.nextElementSibling) === null || i === void 0 ? void 0 : i.tagName) === "PRISM-ACCORDION" && (this.sibling.bottom = !0), ((r = this.el.previousElementSibling) === null || r === void 0 ? void 0 : r.tagName) === "PRISM-ACCORDION" && (this.sibling.top = !0);
35
+ }
36
+ render() {
37
+ const i = () => e("prism-icon", { key: "fe78e6e3beb1bacdc6f616dc2756e18351dc3411", class: { icon: !0, [this.triggerAlignment]: !0 }, "aria-hidden": "true", priority: "secondary", display: "outline", name: this.collapsed ? "caret_down_button" : "caret_up_button" });
38
+ return e(n, { key: "81ed60b9a07f04a104a6744c004d294b167e872e", "data-testid": this.prismId, class: {
39
+ [this.tone]: !0,
40
+ "stacked-top": this.sibling.top,
41
+ "stacked-bottom": this.sibling.bottom
42
+ } }, e("button", { key: "9f3330e66125110acdc9421e1d9a974d2d18d63b", onClick: (r) => this.onClick(r), id: this.prismId, "data-testid": this.prismId, type: "button", class: { trigger: !0 }, "aria-expanded": (!this.collapsed).toString() }, e("slot", { key: "bc74db1337eb4fb7c3d9bcbfb6174820f4067e0c", name: "asset-leading" }), this.triggerAlignment === "left" && e(i, { key: "2b9dd237f2b5301375bb349194fc67312c55f5f9" }), e("section", { key: "f195ac4b3e50b9f9c12e36f8c8b21c9156c3ea9f", class: { text: !0 } }, e("prism-text", { key: "069f92ada74fd04909a57878201f352a0b7b42ad", tag: "span", class: "label", family: "headline", size: "100" }, this.label), this.labelSecondary && e("prism-text", { key: "cea555e1fc38605829835a4f956ea9035caadfb7", tag: "span", class: "label-secondary", family: "headline", size: "100" }, this.labelSecondary), this.description && e("prism-text", { key: "eeb47000c124b555c6c9c962efd99c251b6d216c", tag: "span", class: "description", priority: "secondary", as: "caption" }, this.description), e("slot", { key: "934afc184ba856baf8a06362a2571e9823941bc8", name: "meta" })), e("slot", { key: "7f87c3c7359df6b29831063bb70e0efa331056b6", name: "asset-trailing" }), this.triggerAlignment === "right" && e(i, { key: "6e952b5eb266c94feb75e189ef4acd9eaeb01932" })), e("div", { key: "b8ea7003fb2acbf44fa9db789d4f1474c7b0ef7a", ref: (r) => this.contentPanel = r, "aria-hidden": this.collapsed.toString(), class: { "expandable-content": !0, visible: !this.collapsed } }, e("div", { key: "d4f208775063a3dcb858745df4313b76afe0fafd", class: "content-wrapper" }, e("section", { key: "1b052c24bfdac9b625c20bb80cb274ccf3f55152", class: "content-spacing" }, e("slot", { key: "a4b64ebe2daefdc3f388e8ed134b6fcb0bcb1688" })))));
43
+ }
44
+ get el() {
45
+ return c(this);
46
+ }
47
+ };
48
+ g.style = b;
49
+ export {
50
+ g as prism_accordion
51
+ };
@@ -0,0 +1,335 @@
1
+ import { r as x, h as l, H as w, g as _, c as b, F as y } from "./index-D9BZSjMp.js";
2
+ import { m as k, s as f, a as v, g as E, u as z, e as C, d as g } from "./index-44540db3-BN5vFHKr.js";
3
+ /*!
4
+ * Copyright (c) 2025 Comcast. Prism UI - v8.28.0 - made with ❤️ in Philadelphia
5
+ */
6
+ const M = ':host{--prism-avatar-background-color:var(--prism-color-material-primary-base);--prism-avatar-text-color:var(--prism-color-text-primary-base);--prism-avatar-outline-color:var(--prism-color-border-primary-base);background-color:var(--prism-avatar-background-color);color:var(--prism-avatar-text-color);display:inline-block;outline:2px solid var(--prism-avatar-outline-color);position:relative}.image{border-radius:var(--prism-radius-size-full);color:transparent;height:100%;object-fit:cover;overflow:clip;text-align:center;width:100%}:host(.circle.generic),:host(.circle.profile){outline-color:transparent}:host(.circle){border-radius:var(--prism-radius-size-full);text-align:center}:host(.circle) .text,:host(.oval) .text{align-items:center;display:flex;height:100%;justify-content:center;width:100%}:host(.circle.sm){height:1.5rem;width:1.5rem}:host(.circle.md){height:2rem;width:2rem}:host(.circle.lg){height:3rem;width:3rem}:host(.circle.xl){height:5rem;width:5rem}:host(.circle.xxl){height:9rem;width:9rem}:host(.oval){border-radius:var(--prism-radius-size-xl);text-align:center}:host(.oval.sm){height:1.5rem;padding-left:var(--prism-spacer-size-sm);padding-right:var(--prism-spacer-size-sm)}:host(.oval.md){height:2rem;padding-left:var(--prism-spacer-size-md);padding-right:var(--prism-spacer-size-md)}:host(.oval.lg){border-radius:var(--prism-radius-size-xxl);height:3rem;width:5rem}:host(.oval.xl){border-radius:var(--prism-radius-size-xxl);height:3rem;width:6rem}:host(.oval.xxl){border-radius:var(--prism-radius-size-xxl);height:3.5rem;width:7rem}:host(.xl) .text,:host(.xxl) .text{margin-top:var(--prism-spacer-size-xs)}.dot:after{border:1px solid var(--prism-color-border-primary-inverse-base);border-radius:var(--prism-radius-size-full);bottom:-1px;content:"";display:block;height:.625rem;position:absolute;right:-1px;transition:background-color var(--prism-animation-duration-normal) var(--prism-animation-timing-function);width:.625rem}:host(.xl) .dot:after,:host(.xxl) .dot:after{height:1rem;width:1rem}.dot.primary:after{background-color:var(--prism-color-fill-primary-base)}.dot.primary-inverse:after{background-color:var(--prism-color-fill-primary-inverse-base)}.dot.secondary:after{background-color:var(--prism-color-fill-secondary-base)}.dot.success:after{background-color:var(--prism-color-fill-success-base)}.dot.danger:after{background-color:var(--prism-color-fill-danger-base)}.dot.primary-brand:after{background-color:var(--prism-color-fill-brand-primary-base)}.dot.sceondary-brand:after{background-color:var(--prism-color-fill-brand-secondary-base)}.dot.info:after{background-color:var(--prism-color-fill-info-base)}.dot.caution:after{background-color:var(--prism-color-fill-caution-base)}@media (prefers-reduced-motion){.dot:after{transition:none}}:host(.tone-primary){--prism-avatar-background-color:var(--prism-color-fill-primary-base);--prism-avatar-text-color:var(--prism-color-text-primary-inverse-base);--prism-avatar-outline-color:"transparent"}:host(.tone-success){--prism-avatar-background-color:var(--prism-color-fill-success-base);--prism-avatar-text-color:var(--prism-color-text-primary-inverse-base);--prism-avatar-outline-color:"transparent"}:host(.tone-danger){--prism-avatar-background-color:var(--prism-color-fill-danger-base);--prism-avatar-text-color:var(--prism-color-text-primary-inverse-base);--prism-avatar-outline-color:"transparent"}:host(.tone-caution){--prism-avatar-background-color:var(--prism-color-fill-caution-base);--prism-avatar-text-color:var(--prism-color-text-primary-inverse-base);--prism-avatar-outline-color:"transparent"}:host(.tone-primary-brand){--prism-avatar-background-color:var(--prism-color-fill-brand-primary-base);--prism-avatar-text-color:var(--prism-color-text-primary-inverse-base);--prism-avatar-outline-color:"transparent"}:host(.tone-secondary-brand){--prism-avatar-background-color:var(--prism-color-fill-brand-secondary-base);--prism-avatar-text-color:var(--prism-color-text-primary-inverse-base);--prism-avatar-outline-color:"transparent"}:host(.tone-info){--prism-avatar-background-color:var(--prism-color-fill-info-base);--prism-avatar-text-color:var(--prism-color-text-primary-inverse-base);--prism-avatar-outline-color:"transparent"}', A = M, I = class {
7
+ constructor(d) {
8
+ x(this, d), this._abbreviate = () => {
9
+ var t, i, o, a, e, n, r, c;
10
+ this.fallbackText = void 0;
11
+ const p = ((t = this.el.textContent) === null || t === void 0 ? void 0 : t.trim().length) > 0 ? (i = this.el.textContent) === null || i === void 0 ? void 0 : i.trim().split(" ") : (o = this.alt) === null || o === void 0 ? void 0 : o.trim().split(" ");
12
+ p && p.length >= 2 ? this.fallbackText = `${p[0].charAt(0).toLocaleUpperCase()}${p[1].charAt(0).toLocaleUpperCase()}` : p && p.length === 1 ? this.fallbackText = `${p[0].charAt(0).toLocaleUpperCase()}${p[0].charAt(1).toLocaleUpperCase()}` : this.fallbackText = `${(e = (a = this.alt) === null || a === void 0 ? void 0 : a.trim()) === null || e === void 0 ? void 0 : e.charAt(0).toLocaleUpperCase()}${(c = (r = (n = this.alt) === null || n === void 0 ? void 0 : n.trim()) === null || r === void 0 ? void 0 : r.replace(" ", "")) === null || c === void 0 ? void 0 : c.charAt(1).toLocaleUpperCase()}`;
13
+ }, this.checkImage = () => {
14
+ this.image = !1, this.generic = this.el.childNodes.length === 0 && !this.alt, this.alt && this._abbreviate();
15
+ }, this.src = void 0, this.alt = void 0, this.size = "sm", this.dotTone = "primary", this.tone = void 0, this.notification = !1, this.shape = "oval", this.image = void 0, this.generic = void 0, this.fallbackText = void 0, this.textSize = void 0;
16
+ }
17
+ // Watch for image prop
18
+ watchHandler() {
19
+ }
20
+ connectedCallback() {
21
+ k("prism-avatar");
22
+ }
23
+ componentWillLoad() {
24
+ var d;
25
+ this.image = !!this.src, this.shape = this.src ? "circle" : this.shape, !this.image && (((d = this.el.textContent) === null || d === void 0 ? void 0 : d.trim().length) > 0 || this.alt) && this._abbreviate();
26
+ }
27
+ componentWillRender() {
28
+ switch (this.size) {
29
+ case "sm":
30
+ case "md":
31
+ this.textSize = { as: "callout-sm" };
32
+ return;
33
+ case "lg":
34
+ this.textSize = { family: "body", size: "400" };
35
+ return;
36
+ case "xl":
37
+ this.textSize = { family: "headline", size: "300" };
38
+ return;
39
+ case "xxl":
40
+ this.textSize = { family: "display", size: "300" };
41
+ return;
42
+ }
43
+ }
44
+ render() {
45
+ const d = () => l("prism-icon", { key: "4e1218fd9423f20425d8317cc0deeb616ef58da3", display: "outline", label: "username", name: "profile", size: this.size });
46
+ return l(w, { key: "7e2b8756afc1c92f479216540764eebf6d2b0416", class: {
47
+ profile: this.image,
48
+ generic: this.generic,
49
+ [this.size]: !0,
50
+ [this.shape]: !0,
51
+ [`tone-${this.tone}`]: !!this.tone
52
+ } }, this.image ? l("prism-image", { onPrismError: () => this.checkImage(), alt: this.alt, src: this.src, class: { image: !0, dot: this.notification, [this.dotTone]: this.notification } }) : this.fallbackText !== void 0 ? l("prism-text", Object.assign({}, this.textSize, { tag: "span", class: {
53
+ dot: this.notification,
54
+ [this.dotTone]: this.notification,
55
+ text: !0
56
+ } }), this.fallbackText) : l(d, null));
57
+ }
58
+ get el() {
59
+ return _(this);
60
+ }
61
+ static get watchers() {
62
+ return {
63
+ image: ["watchHandler"]
64
+ };
65
+ }
66
+ };
67
+ I.style = A;
68
+ const P = ".sc-prism-button-group-h{display:var(--prism-button-group-display,block);width:var(--prism-button-group-width,100%)}.layout.sc-prism-button-group{align-items:center;display:flex;justify-content:var(--prism-button-group-content-justify,flex-start)}.vertical.sc-prism-button-group{flex-direction:column}ol.layout.sc-prism-button-group,ul.layout.sc-prism-button-group{list-style-type:none;margin:0;padding:0}.add-space.sc-prism-button-group{gap:var(--prism-button-group-spacing-gap,var(--prism-spacer-size-lg))}.add-space.sc-prism-button-group nav.sc-prism-button-group ul.sc-prism-button-group{gap:.25rem}.behavior-connected.sc-prism-button-group{--prism-button-size-radius:0}.button-group-container.sc-prism-button-group{border:var(--prism-button-group-border-width,1px) solid color-mix(in srgb,var(--prism-button-group-border-color,var(--prism-color-border-primary-base)) var(--prism-button-group-border-alpha-percentage,var(--prism-alpha-tertiary-percentage)),transparent);border-radius:var(--prism-button-group-border-radius,var(--prism-radius-size-sm));padding:var(--prism-button-group-container-padding,var(--prism-spacer-size-xs))}.behavior-connected.sc-prism-button-group-s>prism-button[display=fill]:first-child,.behavior-connected .sc-prism-button-group-s>prism-button[display=fill]:first-child,.behavior-connected.sc-prism-button-group-s>prism-button[display=outline]:first-child,.behavior-connected .sc-prism-button-group-s>prism-button[display=outline]:first-child{--prism-button-size-radius:var(--prism-radius-size-sm) 0 0 var(--prism-radius-size-sm)}.behavior-connected.sc-prism-button-group-s>prism-button[display=fill]:last-child,.behavior-connected .sc-prism-button-group-s>prism-button[display=fill]:last-child,.behavior-connected.sc-prism-button-group-s>prism-button[display=outline]:last-child,.behavior-connected .sc-prism-button-group-s>prism-button[display=outline]:last-child{--prism-button-size-radius:0 var(--prism-radius-size-sm) var(--prism-radius-size-sm) 0}.container.sc-prism-button-group{width:100%}@media (min-width:640px){.container.sc-prism-button-group{max-width:640px}}@media (min-width:768px){.container.sc-prism-button-group{max-width:768px}}@media (min-width:1024px){.container.sc-prism-button-group{max-width:1024px}}@media (min-width:1280px){.container.sc-prism-button-group{max-width:1280px}}@media (min-width:1536px){.container.sc-prism-button-group{max-width:1536px}}", S = P, O = class {
69
+ constructor(d) {
70
+ x(this, d), this._keyboardNavigation = (t) => {
71
+ let i = t.target, o = this.focusables.indexOf(i);
72
+ switch (t.key) {
73
+ case "ArrowLeft":
74
+ t.preventDefault(), o > 0 ? f(i, this.focusables[o - 1]) : f(i, this.focusables[this.focusables.length - 1]);
75
+ break;
76
+ case "ArrowRight":
77
+ t.preventDefault(), o < this.focusables.length - 1 ? f(i, this.focusables[o + 1]) : f(i, this.focusables[0]);
78
+ break;
79
+ }
80
+ }, this.collection = "group", this.label = void 0, this.gap = !0, this.listType = "ul", this.layout = "horizontal", this.behavior = "spaced", this.encapsulate = void 0;
81
+ }
82
+ componentDidLoad() {
83
+ this.element && this.collection === "tablist" && (this.focusables = v(this.element), this.focusables.forEach((d, t) => {
84
+ d.tabIndex = t === 0 ? 0 : -1, d.setAttribute("role", "tab");
85
+ }));
86
+ }
87
+ render() {
88
+ const d = this.listType === "ul" ? "ul" : "ol", t = { layout: !0, [this.layout]: !0, "add-space": this.gap && this.behavior !== "connected", [`behavior-${this.behavior}`]: !0 };
89
+ return l(w, { key: "2e4d3b22fcad869f6731c1cfe43a25567a3bd000" }, l("div", { key: "4fe32034f5217a7e997060944458f5cc216cd688", class: Object.assign(Object.assign({}, t), { "button-group-container": this.encapsulate }), role: this.collection === "none" ? null : this.collection === "navigation" ? "group" : this.collection, "aria-label": this.collection === "none" ? null : this.label, ref: (i) => this.element = i, onKeyDown: this.collection === "tablist" ? this._keyboardNavigation : void 0 }, this.collection === "navigation" ? l(d, { class: t }, l("slot", null)) : l("slot", null)));
90
+ }
91
+ };
92
+ O.style = S;
93
+ const R = ".container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}:host{display:block;margin:var(--prism-menu-spacing-margin,var(--prism-spacer-size-xs) 0);max-width:var(--prism-menu-max-width,100%);position:relative}.menu-nav{display:flex;width:100%}.menu-nav[data-state=collapsed]{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.list-items,.menu-item,.menu-items{list-style-type:none;margin:0;padding:0}.collapsible{transition:max-height var(--prism-animation-duration-normal) var(--prism-animation-timing-function)}.overflow-wrapper>ul.menu-children,li>ul.menu-children{display:flex;flex-direction:column;max-height:0;opacity:0;overflow:hidden;padding:0;transition:opacity var(--prism-animation-duration-normal),max-height var(--prism-animation-duration-normal) var(--prism-animation-timing-function)}.overflow-wrapper.expanded>ul.menu-children,li.expanded>ul.menu-children{margin:var(--prism-menu-spacing-gap,var(--prism-spacer-size-md)) 0 0 0;max-height:-webkit-max-content;max-height:-moz-max-content;max-height:max-content;opacity:1}.menu-horizontal>li.expanded>ul.menu-children,.overflow-wrapper.expanded>ul.menu-children{max-height:var(--prism-menu-horizontal-dropdown-max-height,75vh);overflow:auto}.menu-horizontal>li.expanded>ul.menu-children{--prism-button-text-white-space:break-spaces;max-width:var(--prism-menu-horizontal-dropdown-max-width,50vw)}.visibility-collapsed{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.menu,.menu ul{display:flex;flex-direction:column;list-style-type:none;margin:0;padding:0;width:100%}.menu ul>li{margin-left:var(--prism-spacer-size-xxl)}.menu .menu-children.gap,.menu.gap{gap:var(--prism-menu-spacing-gap,var(--prism-spacer-size-md))}.menu-horizontal{align-items:center;display:flex;justify-content:var(--prism-button-group-content-justify,flex-start)}.menu-horizontal .menu-children.gap,.menu-horizontal.gap{gap:var(--prism-menu-spacing-gap,var(--prism-spacer-size-xxl))}.menu-item>span{align-items:center;display:flex}.menu-collapse-trigger{margin-bottom:var(--prism-spacer-size-md)}.menu-collapse-trigger,.menu-collapsible{--prism-button-spacing-padding:var(--prism-spacer-size-sm)}.menu-collapsible{align-items:start;flex-direction:column}.menu-collapsible [data-hidden],.menu-collapsible [hidden]{display:none}.menu-collapsible .menu.menu-collapsed{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.menu-text{font-family:var(--prism-font-body-400-family);font-size:var(--prism-font-body-400-size);font-weight:var(--prism-font-body-400-weight);letter-spacing:var(--prism-font-body-400-tracking);line-height:var(--prism-font-body-400-leading)}.menu-horizontal,.menu-horizontal nav{max-width:100%}.menu-horizontal .single-menu-item prism-button[data-root],.menu-horizontal prism-button[data-root]{--prism-button-spacing-padding:var(--prism-menu-parent-button-padding,0 0 12px 0)}.menu-horizontal prism-button[data-child]{--prism-button-spacing-padding:var(--prism-menu-child-button-padding,var(--prism-spacer-size-xs) var(--prism-spacer-size-xs))}.menu-horizontal,[part=overflow-menu] ul,ul.menu-horizontal ul{list-style-type:none;margin:0;padding:0;width:100%}.menu-horizontal ul>li{margin-left:var(--prism-spacer-size-xxl);position:relative}.menu-horizontal [data-root]{--prism-button-text-white-space:nowrap}.menu-horizontal>.menu-item-parent>ul.menu-children,.overflow-wrapper>ul.menu-children{background-color:var(--prism-color-material-primary-base);border-radius:var(--prism-radius-size-md);box-shadow:var(--prism-shadow-xs-base);position:absolute;transition:opacity var(--prism-animation-duration-normal) var(--prism-animation-timing-function);width:-webkit-max-content;width:-moz-max-content;width:max-content;z-index:var(--prism-layout-z-index-dropdown)}.menu-horizontal .overflow-wrapper>ul.menu-children>li,.menu-horizontal>.menu-item-parent>ul.menu-children>li{margin-left:0;padding-left:.5rem;padding-right:.5rem}.overflow-wrapper{position:absolute;right:.25rem}.overflow-wrapper>ul.menu-children{display:block;right:0}.overflow-wrapper>ul.menu-children prism-button,.overflow-wrapper>ul.menu-children prism-button[data-root]{--prism-button-spacing-padding:var(--prism-spacer-size-md)}.overflow-menu{flex:1}.overflow-menu .menu-children{--prism-button-text-white-space:break-spaces;max-width:var(--prism-menu-horizontal-dropdown-max-width,50vw)}.overflow-menu ul>li{position:relative}.overflow-menu ul>li>ul{box-sizing:border-box;padding-left:1.75rem}.single-menu-item{flex:0 0 auto;transition:opacity var(--prism-animation-duration-normal) var(--prism-animation-timing-function);width:100%}.badge{padding-left:var(--prism-spacer-size-md);-webkit-text-decoration:none;text-decoration:none}.children-icon,.trailing-icon{margin-left:auto}@media (prefers-reduced-motion){.collapsible{transition:none}}.menu-hidden{opacity:0;pointer-events:none}.visible-mobile-only{display:inherit}@media (min-width:768px){.visible-mobile-only{display:none}}", L = R, T = class {
94
+ constructor(d) {
95
+ x(this, d), this.prismMenu = b(this, "prismMenu", 7), this.prismClick = b(this, "prismClick", 7), this.prismClose = b(this, "prismClose", 7), this._uid = E(), this.mapPointers = (t, i) => {
96
+ var o, a;
97
+ const e = Object.assign({}, t), n = !!(!((o = e == null ? void 0 : e.children) === null || o === void 0) && o.length);
98
+ return i && (e._parentRef = i), i && n && ((a = e == null ? void 0 : e.children) === null || a === void 0 || a.map((r) => this.mapPointers(r, e))), e.expanded && (e._preserveExpanded = !0, this.initiallyExpanded.push(e)), e.active && this.activeChildren.push(e), e;
99
+ }, this.expandActiveMenus = () => {
100
+ const t = (i) => {
101
+ const o = !!(i != null && i._parentRef), a = this.expandActiveParents === !0, e = this.variant === "menu-horizontal", n = this.overflowMenu.findIndex((s) => s.uid === i.uid), r = n !== -1, p = this.initiallyExpanded.findIndex((s) => s.uid === i.uid) !== -1;
102
+ !o && e && a && (i.expanded = !!p, r && (this.overflowMenu[n].expanded = !0)), o && a && (i._parentRef.expanded = !0, t(i._parentRef)), o && !a && (delete i._parentRef.expanded, p && (i.expanded = !0), t(i._parentRef));
103
+ };
104
+ this.activeChildren.forEach(t);
105
+ }, this.initializeMenu = () => {
106
+ this.activeChildren = [], this.initiallyExpanded = [];
107
+ const t = this.menu.map((i, o) => {
108
+ var a;
109
+ const e = Object.assign(Object.assign({}, i), { uid: `${z((i == null ? void 0 : i.label) || (i == null ? void 0 : i.title))}-${this._uid}-${o}` }), n = !!(!((a = e == null ? void 0 : e.children) === null || a === void 0) && a.length);
110
+ return e.expanded && (e._preserveExpanded = !0, this.initiallyExpanded.push(e)), n && (e.children = e.children.map((r) => this.mapPointers(r, e))), e;
111
+ });
112
+ return this.expandActiveParents === !0 && this.activeChildren.length && this.expandActiveMenus(), t;
113
+ }, this.updateOverflowKeys = (t) => {
114
+ t ? (this.overflowKeys = Object.assign(Object.assign({}, this.overflowKeys), t), this.overflowMenu = [...this.menu.filter((i) => this.overflowKeys[i.uid])]) : this.overflowMenu = [...this.menu.filter((i) => this.overflowKeys[i.uid])];
115
+ }, this.handleIntersection = (t) => {
116
+ t.forEach((i) => {
117
+ const o = i.target;
118
+ i.isIntersecting ? (o.classList.remove("menu-hidden"), o.setAttribute("aria-hidden", "false"), this.updateOverflowKeys({ [o.dataset.uid]: !1 })) : (o.classList.add("menu-hidden"), o.setAttribute("aria-hidden", "true"), this.updateOverflowKeys({ [o.dataset.uid]: !0 }));
119
+ });
120
+ }, this._eventListeners = [], this.collapseMenu = () => {
121
+ this.collapse = !this.collapse;
122
+ }, this.subMenuExpanded = !1, this.subMenuIcon = "caret_down_button", this.overflowButtonId = "overflow-menu-button", this.menuItemClicked = (t, i) => {
123
+ const o = t.currentTarget, a = o.closest("[part=overflow-menu]");
124
+ if (i.root && (i != null && i.children) && this.variant === "menu-horizontal" && !a && this._collapseAll(t.detail.id), t.detail.id !== this.overflowButtonId && !a && this.overflowExpanded && (this.overflowExpanded = !1, this._collapseAll(this.overflowButtonId)), t.detail.id === this.overflowButtonId && (this.overflowExpanded = !this.overflowExpanded, this._collapseAll(t.detail.id)), i != null && i.children) {
125
+ const { label: e, prismId: n } = o;
126
+ this._itemClickToggle(o), t.detail.id !== this.overflowButtonId && this.prismClick.emit({
127
+ data: i,
128
+ id: n,
129
+ label: e,
130
+ name: i != null && i.root ? "menu-dropdown-root" : "menu-dropdown",
131
+ target: o,
132
+ isParent: !0,
133
+ isRoot: (i == null ? void 0 : i.root) || !1,
134
+ isInsideOverflow: !!a
135
+ });
136
+ } else {
137
+ const { label: e, prismId: n } = o;
138
+ this.prismClick.emit({
139
+ data: i,
140
+ id: n,
141
+ label: e,
142
+ name: "menu-item",
143
+ target: o,
144
+ isParent: !1,
145
+ isRoot: (i == null ? void 0 : i.root) || !1,
146
+ isInsideOverflow: !!a
147
+ });
148
+ }
149
+ this.toggleFocusChildren();
150
+ }, this._collapseAll = (t) => {
151
+ this.el.shadowRoot.querySelectorAll("li.expanded:not(.overflow-root) prism-button[data-root], .overflow-wrapper.expanded > prism-button[data-root]").forEach((a) => {
152
+ a.prismId !== t && this._itemClickToggle(a);
153
+ });
154
+ }, this._expandMenuParent = (t) => (i) => {
155
+ const o = i.parentElement.closest(".menu-item-parent"), a = o.querySelector("[data-type=icon]"), e = o.querySelector("[data-display]");
156
+ t && (o.classList.add("expanded"), e.setAttribute("expanded", "true"), a.setAttribute("name", "caret_up_button"));
157
+ }, this._expandActiveParentElements = (t) => (i) => {
158
+ const o = i.parentElement.closest(".menu-item-parent");
159
+ !!i.attributes["data-root"] || !o || (this._expandMenuParent(t)(i), this._expandActiveParentElements(t)(o));
160
+ }, this._itemClickToggle = (t) => {
161
+ var i, o, a;
162
+ const e = this.variant === "menu-horizontal", n = this.expandActiveParents === !0, r = !!t.dataset.root, c = !!t.classList.contains("overflow-menu-button-toggle"), p = t.querySelector("[data-type=icon]"), s = t.closest("li");
163
+ t.expanded = !t.expanded, p == null || p.setAttribute("name", t.expanded ? "caret_up_button" : this.subMenuIcon), s && s.classList.toggle("expanded"), r && e && n && s && (s.querySelectorAll("[data-child] [aria-current='page']").forEach(this._expandActiveParentElements(t.expanded)), s.querySelectorAll("[data-preserve-expanded]").forEach(this._expandMenuParent(t.expanded))), c && e && n && ((a = (o = ((i = this.el.shadowRoot) === null || i === void 0 ? void 0 : i.querySelectorAll("div.overflow-wrapper"))[0]) === null || o === void 0 ? void 0 : o.querySelectorAll("li.overflow-root")) === null || a === void 0 || a.forEach((h) => {
164
+ const m = h.querySelectorAll("[data-child] [aria-current='page']");
165
+ m.forEach(this._expandActiveParentElements(t.expanded)), m || h.querySelectorAll("[data-preserve-expanded]").forEach(this._expandMenuParent(t.expanded));
166
+ }));
167
+ }, this.menu = [], this.collapse = !1, this.collapsible = !1, this.expandActiveParents = !1, this.variant = "menu", this.gap = !1, this.overflow = !1, this.useCustomRouting = void 0, this.overflowKeys = {}, this.overflowMenu = [], this.overflowExpanded = !1, this.activeChildren = [], this.initiallyExpanded = [];
168
+ }
169
+ // Track Open Menus
170
+ // private openMenus: NodeListOf<Element>;
171
+ // Watch for Menu Object Changes
172
+ updateMenu() {
173
+ }
174
+ // Init
175
+ connectedCallback() {
176
+ k("prism-menu");
177
+ }
178
+ toggleFocusChildren() {
179
+ var d, t, i, o, a, e;
180
+ (d = this.el.shadowRoot) === null || d === void 0 || d.querySelectorAll("li").forEach((r) => {
181
+ v(r).forEach(C);
182
+ });
183
+ const n = (t = this.el.shadowRoot) === null || t === void 0 ? void 0 : t.querySelectorAll("li.menu-item-parent:not(.expanded)");
184
+ if (n == null || n.forEach((r) => {
185
+ v(r.querySelector("ul")).forEach(g);
186
+ }), this.overflow) {
187
+ this.overflowExpanded || (a = (o = ((i = this.el.shadowRoot) === null || i === void 0 ? void 0 : i.querySelectorAll("div.overflow-wrapper"))[0]) === null || o === void 0 ? void 0 : o.querySelectorAll("li.overflow-root")) === null || a === void 0 || a.forEach((p) => {
188
+ v(p).forEach(g);
189
+ });
190
+ const r = (e = this.el.shadowRoot) === null || e === void 0 ? void 0 : e.querySelectorAll('li[aria-hidden="true"]');
191
+ r == null || r.forEach((c) => {
192
+ v(c).forEach(g);
193
+ });
194
+ }
195
+ }
196
+ /**
197
+ * Initiates an Intersection Observer to monitor menu items and move them to the overflow menu if necessary.
198
+ */
199
+ observeMenu() {
200
+ const d = {
201
+ root: this.el,
202
+ // Rems don't seem to work
203
+ // -48px clears the overflow button's width
204
+ // This makes a menu item disappear as soon as the overflow button "touches" it.
205
+ rootMargin: "0px -48px 0px 0px",
206
+ threshold: 1
207
+ };
208
+ this.variant === "menu-horizontal" && this.el.getBoundingClientRect().width > 0 && (this._observer = new IntersectionObserver(this.handleIntersection, d), this._nav.querySelectorAll("li:not([part=overflow-menu])").forEach((t) => {
209
+ t.parentElement.hasAttribute("part") && t.parentElement.getAttribute("part") !== "children-menu" && this._observer.observe(t);
210
+ }));
211
+ }
212
+ // Helper to add event listeners and keep track of them
213
+ _addEventListenerWithCleanup(d, t, i) {
214
+ d.addEventListener(t, i), this._eventListeners.push({ element: d, type: t, handler: i });
215
+ }
216
+ componentDidLoad() {
217
+ this.overflow && this.observeMenu();
218
+ const d = this.el.shadowRoot.querySelectorAll("prism-button[data-root]"), t = "li.expanded:not(.overflow-root) prism-button[data-root], .overflow-wrapper.expanded > prism-button[data-root]";
219
+ if (this.variant === "menu-horizontal") {
220
+ d && d.forEach((a) => {
221
+ const e = (n) => {
222
+ var r, c;
223
+ const p = this.el.shadowRoot.querySelectorAll(t), s = (c = (r = p[0]) === null || r === void 0 ? void 0 : r.querySelector("button")) === null || c === void 0 ? void 0 : c.id;
224
+ n.target.id !== s && p.forEach((u) => {
225
+ var h, m;
226
+ this._itemClickToggle(u), this.toggleFocusChildren(), this.overflowExpanded = !1, this.prismClose.emit({ name: "root-dropdown-closed-focus-off-dropdown", id: (h = u.children[0]) === null || h === void 0 ? void 0 : h.id, label: (m = u.children[0]) === null || m === void 0 ? void 0 : m.textContent });
227
+ });
228
+ };
229
+ this._addEventListenerWithCleanup(a, "focusin", e);
230
+ });
231
+ const o = () => {
232
+ this.el.shadowRoot.querySelectorAll(t).forEach((e) => {
233
+ var n, r;
234
+ this._itemClickToggle(e), this.toggleFocusChildren(), this.overflowExpanded = !1, this.prismClose.emit({ name: "root-dropdown-closed-focus-out-of-menu", id: (n = e.children[0]) === null || n === void 0 ? void 0 : n.id, label: (r = e.children[0]) === null || r === void 0 ? void 0 : r.textContent });
235
+ });
236
+ };
237
+ this._addEventListenerWithCleanup(this.el, "focusout", o);
238
+ }
239
+ const i = (o) => {
240
+ o.code === "Escape" && this.el.shadowRoot.querySelectorAll(t).forEach((e) => {
241
+ var n, r;
242
+ this._itemClickToggle(e), this.toggleFocusChildren(), this.overflowExpanded = !1, e.setFocus(), this.prismClose.emit({ name: "root-dropdown-closed-escape-key", id: (n = e.children[0]) === null || n === void 0 ? void 0 : n.id, label: (r = e.children[0]) === null || r === void 0 ? void 0 : r.textContent });
243
+ });
244
+ };
245
+ this._addEventListenerWithCleanup(this.el, "keydown", i);
246
+ }
247
+ handleDocumentMouseDown(d) {
248
+ if (this.variant === "menu-horizontal") {
249
+ const t = this.el.tagName.toLowerCase(), o = d.composedPath().some((n) => n instanceof HTMLElement && n.tagName && n.tagName.toLowerCase() === t), e = this.el.shadowRoot.querySelectorAll("li.expanded:not(.overflow-root) prism-button[data-root], .overflow-wrapper.expanded > prism-button[data-root]");
250
+ o || e.forEach((n) => {
251
+ var r, c;
252
+ this._itemClickToggle(n), this.overflowExpanded = !1, this.toggleFocusChildren(), this.prismClose.emit({ name: "root-dropdown-closed-click-outside-menu", id: (r = n.children[0]) === null || r === void 0 ? void 0 : r.id, label: (c = n.children[0]) === null || c === void 0 ? void 0 : c.textContent });
253
+ });
254
+ }
255
+ }
256
+ componentDidRender() {
257
+ this.prismMenu.emit({ menu: this.menu }), this.toggleFocusChildren();
258
+ }
259
+ componentWillRender() {
260
+ this.menu = this.initializeMenu(), this.overflow && this.updateOverflowKeys(null);
261
+ }
262
+ disconnectedCallback() {
263
+ this._eventListeners.forEach(({ element: d, type: t, handler: i }) => {
264
+ d.removeEventListener(t, i);
265
+ }), this._eventListeners = [];
266
+ }
267
+ render() {
268
+ const d = {
269
+ children: this.overflowMenu
270
+ }, t = () => {
271
+ this.el.shadowRoot.querySelectorAll("li.expanded:not(.overflow-root) prism-button[data-root], .overflow-wrapper.expanded > prism-button[data-root]").forEach((r) => {
272
+ var c;
273
+ ((c = r.children[0]) === null || c === void 0 ? void 0 : c.id) !== this.overflowButtonId && (this._itemClickToggle(r), this.toggleFocusChildren());
274
+ });
275
+ }, i = (e) => {
276
+ const n = this.variant === "menu-horizontal";
277
+ return this.overflow && l("prism-button", { onPrismFocus: t, class: "overflow-menu-button-toggle", display: "ghost-icon", tone: this.overflowExpanded ? "primary-brand" : "primary", prismId: this.overflowButtonId, expanded: (e == null ? void 0 : e.expanded) || !1, onPrismClick: (r) => {
278
+ this.menuItemClicked(r, e), e != null && e.onPrismClick && (e == null || e.onPrismClick(r)), this.prismClick.emit({ name: "overflow", open: this.overflowExpanded });
279
+ }, "data-root": !0, state: n && this.overflowExpanded ? "active" : null, size: "xs", label: "more" }, l("prism-icon", { class: "icon", tone: n && e.active ? "primary-brand" : "primary", name: "more_horizontal", size: "sm" }));
280
+ }, o = (e) => {
281
+ var n;
282
+ const r = (n = e == null ? void 0 : e.children) === null || n === void 0 ? void 0 : n.length, c = this.variant === "menu-horizontal", p = c && (e == null ? void 0 : e.root) && !this.overflowKeys[e.uid];
283
+ return l("div", { class: { "single-menu-item": !0, "no-icon": !e.icon } }, l("prism-button", { "prism-id": e.id, display: p ? "ghost" : "menu", tone: e.active ? "primary-brand" : "primary", current: e.active && !r ? "page" : e.active && r ? "true" : void 0, target: e.target, expanded: r ? (e == null ? void 0 : e.expanded) || (e == null ? void 0 : e._preserveExpanded) || !1 : void 0, href: e.children && !this.collapse ? void 0 : e.href, "flex-direction": this.collapse && this.variant === "menu" ? "column" : "row", onPrismClick: (s) => {
284
+ this.useCustomRouting && s.preventDefault(), this.collapse || this.menuItemClicked(s, e), e != null && e.onPrismClick && (e == null || e.onPrismClick(s));
285
+ }, state: c && e.active ? "active" : null, "data-root": e == null ? void 0 : e.root, "data-child": !e.root, "data-preserve-expanded": e == null ? void 0 : e._preserveExpanded }, e.icon && l("prism-icon", { display: e.active ? "fill" : "outline", slot: "icon", class: "icon", tone: e.active ? "primary-brand" : "primary", name: e.icon, size: e.iconSize || "md" }), this.variant.includes("menu") && (e.children || e.active) && !this.collapse && l(y, null, c && e.root && !this.overflowKeys[e.uid] && e.active && !r ? null : l("prism-icon", { class: "trailing-icon", slot: "icon-trailing", tone: e.children ? void 0 : "primary-brand", name: e.children ? e.expanded || e != null && e._preserveExpanded ? "caret_up_button" : "caret_down_button" : "check", "data-type": "icon" })), l("span", { class: {
286
+ "visibility-collapsed": this.collapse,
287
+ "menu-text": this.variant.includes("menu") && !e.root
288
+ } }, e.title), e.label && l("prism-badge", { "data-hidden": this.collapse, label: e.badgeA11yLabel, priority: e.active ? "high" : void 0, tone: e.active ? "primary-brand" : void 0, slot: "label", class: { badge: !0 }, hidden: this.collapse, "aria-hidden": this.collapse.toString(), size: "md" }, e.label)), e.children && !this.variant.includes("menu") && l("prism-button", { size: "xs", label: `Toggle Sub Menu for ${e.title}`, expanded: this.subMenuExpanded, onPrismClick: (s) => this.menuItemClicked(s, e), display: "ghost", "aria-hidden": this.collapse.toString(), class: { "children-icon": !0, "visibility-collapsed": this.collapse } }, l("prism-icon", { size: "xs", name: this.subMenuIcon, "data-type": "icon" })));
289
+ }, a = (e) => {
290
+ var n, r;
291
+ const c = (n = e == null ? void 0 : e.children) === null || n === void 0 ? void 0 : n.length, p = (s, u) => `${z((s == null ? void 0 : s.label) || (s == null ? void 0 : s.title))}-${this._uid}-${u}`;
292
+ return l("ul", { "aria-hidden": this.collapse, hidden: this.collapse, "data-children": !!c, class: {
293
+ "menu-children": this.variant.includes("menu"),
294
+ collapsible: !this.collapsible,
295
+ gap: this.gap
296
+ }, part: "children-menu" }, c > 0 && ((r = e == null ? void 0 : e.children) === null || r === void 0 ? void 0 : r.map((s, u) => {
297
+ var h;
298
+ const m = this.overflowKeys[s.uid];
299
+ return l(y, null, ((h = s == null ? void 0 : s.children) === null || h === void 0 ? void 0 : h.length) > 0 ? l("li", { key: `${s.uid}-${u}`, id: s != null && s.root ? `menu-root-${s.uid}` : `menu-child-${p(s, u)}`, "data-uid": s.uid, class: {
300
+ "menu-item-parent": c > 0,
301
+ "menu-item": c <= 0,
302
+ expanded: (s == null ? void 0 : s.expanded) || (s == null ? void 0 : s._preserveExpanded),
303
+ "overflow-root": m
304
+ } }, l(o, Object.assign({}, s)), l(a, Object.assign({}, s))) : l("li", { id: s != null && s.root ? `menu-root-${s.uid}` : `menu-child-${p(s, u)}`, "data-uid": e.uid, key: `${s.uid}-${u}`, class: { "menu-item": !0, "overflow-root": m } }, l(o, Object.assign({}, s))));
305
+ })));
306
+ };
307
+ return l(w, null, l("div", { "data-state": this.collapse ? "collapsed" : "expanded", class: { "menu-nav": !0, "menu-collapsible": this.collapsible } }, this.collapsible && this.variant === "menu" && l("prism-button", { class: "menu-collapse-trigger", type: "button", size: "xs", display: "ghost-icon", label: this.collapse ? "expand menu" : "collapse menu", onPrismClick: () => this.collapseMenu(), expanded: !this.collapse || !1 }, l("prism-icon", { name: this.collapse ? "caret_right_button" : "caret_left_button", size: "sm" })), l("ul", { class: {
308
+ [this.variant]: !0,
309
+ collapsible: !this.collapsible,
310
+ [this.collapse ? "menu-collapsed" : "menu-expanded"]: !0,
311
+ gap: this.gap
312
+ }, ref: (e) => this._nav = e, part: "menu" }, this.menu.map((e, n) => {
313
+ var r;
314
+ return l("li", { key: `${e.uid}-${n}`, id: `menu-root-${e.uid}`, "data-uid": e.uid, "data-root": e.root, "data-visible-on": e.visibleOn, "data-expanded": (e == null ? void 0 : e.expanded) || (e == null ? void 0 : e._preserveExpanded), class: {
315
+ "menu-item-parent": ((r = e == null ? void 0 : e.children) === null || r === void 0 ? void 0 : r.length) > 0,
316
+ "menu-item": !(e != null && e.children),
317
+ expanded: (e == null ? void 0 : e.expanded) || (e == null ? void 0 : e._preserveExpanded)
318
+ } }, l(o, Object.assign({}, e)), e.children && l(a, Object.assign({}, e)));
319
+ }), l("slot", null)), this.overflow && this.overflowMenu.length > 0 ? l("div", { part: "overflow-menu", class: "overflow-menu" }, l("div", { class: { expanded: this.overflowExpanded, "overflow-wrapper": !0 } }, l(i, Object.assign({}, d)), l(a, Object.assign({}, d)))) : null));
320
+ }
321
+ get el() {
322
+ return _(this);
323
+ }
324
+ static get watchers() {
325
+ return {
326
+ menu: ["updateMenu"]
327
+ };
328
+ }
329
+ };
330
+ T.style = L;
331
+ export {
332
+ I as prism_avatar,
333
+ O as prism_button_group,
334
+ T as prism_menu
335
+ };
@@ -0,0 +1,56 @@
1
+ import { r as t, c as s, h as r, H as n, g as c } from "./index-D9BZSjMp.js";
2
+ import { g as l, m as d } from "./index-44540db3-BN5vFHKr.js";
3
+ /*!
4
+ * Copyright (c) 2025 Comcast. Prism UI - v8.28.0 - made with ❤️ in Philadelphia
5
+ */
6
+ const p = ":host{--prism-badge-background-color:var(--prism-color-material-secondary-base);--prism-badge-text-color:var(--prism-color-text-secondary-base);--prism-badge-outline-color:transparent;display:inline-flex;position:relative}.wrapper{align-items:center;background-color:var(--prism-badge-background-color);color:var(--prism-badge-text-color);display:inline-flex;outline:1px solid var(--prism-badge-outline-color);position:relative;transition:all var(--prism-animation-duration-normal) var(--prism-animation-timing-function);white-space:nowrap}button.wrapper{border-style:none}button.wrapper:hover{cursor:pointer}button.wrapper:focus-visible{--prism-badge-outline-color:var(--prism-color-border-primary-focus);outline-offset:2px}.text{--prism-text-max-width:inherit;letter-spacing:inherit;line-height:1}.sm{border-radius:var(--prism-radius-size-md);gap:1px;height:1rem;padding-left:var(--prism-spacer-size-sm);padding-right:var(--prism-spacer-size-sm)}.md{border-radius:var(--prism-radius-size-lg);height:1.5rem;padding-left:var(--prism-spacer-size-md);padding-right:var(--prism-spacer-size-md)}.lg,.md{gap:.25rem}.lg{border-radius:var(--prism-radius-size-xl);height:2.75rem;padding-left:var(--prism-spacer-size-lg);padding-right:var(--prism-spacer-size-lg)}.lg.asset-trailing{padding-right:0}.lg.asset-leading{padding-left:0}.high{--prism-badge-text-color:var(--prism-color-text-primary-inverse-base)}.info{--prism-badge-background-color:var(--prism-color-fill-info-base)}.info .action:hover,button.info:hover{--prism-badge-background-color:var(--prism-color-fill-info-hover)}.info .action:active,button.info:active{--prism-badge-background-color:var(--prism-color-fill-info-down)}.primary-brand{--prism-badge-background-color:var(--prism-color-fill-brand-primary-base)}.primary-brand .action:hover,button.primary-brand:hover{--prism-badge-background-color:var(--prism-color-fill-brand-primary-hover)}.primary-brand .action:active,button.primary-brand:active{--prism-badge-background-color:var(--prism-color-fill-brand-primary-down)}.secondary-brand{--prism-badge-background-color:var(--prism-color-fill-brand-secondary-base)}.secondary-brand .action:hover,button.secondary-brand:hover{--prism-badge-background-color:var(--prism-color-fill-brand-secondary-hover)}.secondary-brand .action:active,button.secondary-brand:active{--prism-badge-background-color:var(--prism-color-fill-brand-secondary-down)}.success{--prism-badge-background-color:var(--prism-color-fill-success-base)}.success .action:hover,button.success:hover{--prism-badge-background-color:var(--prism-color-fill-success-hover)}.success .action:active,button.success:active{--prism-badge-background-color:var(--prism-color-fill-success-down)}.caution{--prism-badge-background-color:var(--prism-color-fill-caution-base)}.caution .action:hover,button.caution:hover{--prism-badge-background-color:var(--prism-color-fill-caution-hover)}.caution .action:active,button.caution:active{--prism-badge-background-color:var(--prism-color-fill-caution-down)}.danger{--prism-badge-background-color:var(--prism-color-fill-danger-base)}.danger .action:hover,button.danger:hover{--prism-badge-background-color:var(--prism-color-fill-danger-hover)}.danger .action:active,button.danger:active{--prism-badge-background-color:var(--prism-color-fill-danger-down)}.primary{--prism-badge-background-color:var(--prism-color-fill-primary-base)}.primary .action:hover,button.primary:hover{--prism-badge-background-color:var(--prism-color-fill-primary-hover)}.primary .action:active,button.primary:active{--prism-badge-background-color:var(--prism-color-fill-primary-down)}.secondary{--prism-badge-background-color:var(--prism-color-fill-secondary-base)}.secondary .action:hover,button.secondary:hover{--prism-badge-background-color:var(--prism-color-fill-secondary-hover)}.secondary .action:active,button.secondary:active{--prism-badge-background-color:var(--prism-color-fill-secondary-down)}.low.primary{--prism-badge-background-color:var(--prism-color-material-primary-base);color:var(--prism-color-text-primary-base)}.low.primary .action:hover,button.low.primary:hover{--prism-badge-background-color:var(--prism-color-material-primary-hover)}.low.primary .action:active,button.low.primary:active{--prism-badge-background-color:var(--prism-color-material-primary-down)}.low.info{--prism-badge-background-color:var(--prism-color-material-info-base);color:var(--prism-color-text-info-base)}.low.info .action:hover,button.low.info:hover{--prism-badge-background-color:var(--prism-color-material-info-hover)}.low.info .action:active,button.low.info:active{--prism-badge-background-color:var(--prism-color-material-info-down)}.low.primary-brand{--prism-badge-background-color:var(--prism-color-material-brand-primary-base);color:var(--prism-color-text-brand-primary-base)}.low.primary-brand .action:hover,button.low.primary-brand:hover{--prism-badge-background-color:var(--prism-color-material-brand-primary-hover)}.low.primary-brand .action:active,button.low.primary-brand:active{--prism-badge-background-color:var(--prism-color-material-brand-primary-down)}.low.secondary-brand{--prism-badge-background-color:var(--prism-color-material-brand-secondary-base);color:var(--prism-color-text-brand-secondary-base)}.low.secondary-brand .action:hover,button.low.secondary-brand:hover{--prism-badge-background-color:var(--prism-color-material-brand-secondary-hover)}.low.secondary-brand .action:active,button.low.secondary-brand:active{--prism-badge-background-color:var(--prism-color-material-brand-secondary-down)}.low.success{--prism-badge-background-color:var(--prism-color-material-success-base);color:var(--prism-color-text-success-base)}.low.success .action:hover,button.low.success:hover{--prism-badge-background-color:var(--prism-color-material-success-hover)}.low.success .action:active,button.low.success:active{--prism-badge-background-color:var(--prism-color-material-success-down)}.low.caution{--prism-badge-background-color:var(--prism-color-material-caution-base);color:var(--prism-color-text-caution-base)}.low.caution .action:hover,button.low.caution:hover{--prism-badge-background-color:var(--prism-color-material-caution-hover)}.low.caution .action:active,button.low.caution:active{--prism-badge-background-color:var(--prism-color-material-caution-down)}.low.danger{--prism-badge-background-color:var(--prism-color-material-danger-base);color:var(--prism-color-text-danger-base)}.low.danger .action:hover,button.low.danger:hover{--prism-badge-background-color:var(--prism-color-material-danger-hover)}.low.danger .action:active,button.low.danger:active{--prism-badge-background-color:var(--prism-color-material-danger-down)}.low.secondary{--prism-badge-background-color:var(--prism-color-material-secondary-base);color:var(--prism-color-text-secondary-base)}.low.secondary .action:hover,button.low.secondary:hover{--prism-badge-background-color:var(--prism-color-material-secondary-hover)}.low.secondary .action:active,button.low.secondary:active{--prism-badge-background-color:var(--prism-color-material-secondary-down)}.action{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:initial;border-radius:var(--prism-radius-size-xl);border-style:none;color:inherit;cursor:pointer;height:2.75rem;margin:0;outline:2px solid transparent;outline-offset:2px;padding:0;position:relative;width:2.75rem}.action:focus-visible{outline:1px solid var(--prism-color-border-primary-focus);outline-offset:0}.action.priority-high:focus-visible{outline-color:var(--prism-color-border-primary-inverse-base)}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}", m = p, b = class {
7
+ constructor(o) {
8
+ t(this, o), this.prismClick = s(this, "prismClick", 7), this.uid = l(), this.sendAction = (i) => {
9
+ const { currentTarget: e } = i;
10
+ this.prismClick.emit({
11
+ id: this.prismId,
12
+ name: "prism-badge",
13
+ action: this.interactive,
14
+ target: e
15
+ }).defaultPrevented && i.preventDefault();
16
+ }, this.slots = {
17
+ leading: !1,
18
+ trailing: !1
19
+ }, this.wrapperAttrs = {}, this.prismId = `prism-badge-${this.uid}`, this.size = "sm", this.tone = void 0, this.priority = "low", this.interactive = void 0, this.label = void 0;
20
+ }
21
+ connectedCallback() {
22
+ this.slots.leading = !!this.el.querySelector('[slot="asset-leading"]'), this.slots.trailing = !!this.el.querySelector('[slot="asset-trailing"]'), d("prism-badge");
23
+ }
24
+ /** @internal textSize function */
25
+ _textSize(o) {
26
+ switch (o) {
27
+ case "sm":
28
+ return "tag";
29
+ case "md":
30
+ return "caption";
31
+ }
32
+ }
33
+ render() {
34
+ const o = () => r("button", { id: `action-badge-${this.uid}`, ref: (a) => this.actionButton = a, type: "button", onClick: (a) => this.sendAction(a), "aria-label": this.label, class: { action: !0, [this.interactive]: !0, [`priority-${this.priority}`]: !0 } }, r("slot", { name: `asset-${this.interactive}` })), e = (this.interactive === "container" && (this.wrapperAttrs = {
35
+ id: `action-badge-${this.uid}`,
36
+ type: "button",
37
+ onClick: (a) => this.sendAction(a)
38
+ }), this.interactive === "container" ? "button" : "span");
39
+ return r(n, { class: {
40
+ interactive: !!this.interactive
41
+ }, id: this.prismId }, r(e, Object.assign({}, this.wrapperAttrs, { class: {
42
+ wrapper: !0,
43
+ [this.tone]: !!this.tone,
44
+ [this.size]: !0,
45
+ [this.priority]: !0,
46
+ [`asset-${this.interactive}`]: !!this.interactive
47
+ } }), this.interactive === "leading" && this.size === "lg" ? r(o, null) : r("slot", { name: "asset-leading" }), r("prism-text", { ellipsis: !0, class: "text", tag: "span", family: this.size === "lg" ? "body" : void 0, as: this._textSize(this.size) }, r("slot", null)), this.interactive === "trailing" && this.size === "lg" ? r(o, null) : r("slot", { name: "asset-trailing" })));
48
+ }
49
+ get el() {
50
+ return c(this);
51
+ }
52
+ };
53
+ b.style = m;
54
+ export {
55
+ b as prism_badge
56
+ };