@pushengineering/umg-web-components 2.0.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.
Files changed (88) hide show
  1. package/dist/node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/css-tag.js +56 -0
  2. package/dist/node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/base.js +9 -0
  3. package/dist/node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/custom-element.js +13 -0
  4. package/dist/node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/property.js +37 -0
  5. package/dist/node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/query-assigned-elements.js +19 -0
  6. package/dist/node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/query.js +34 -0
  7. package/dist/node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/state.js +12 -0
  8. package/dist/node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/reactive-element.js +260 -0
  9. package/dist/node_modules/.pnpm/lit-element@4.0.4/node_modules/lit-element/lit-element.js +50 -0
  10. package/dist/node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directive.js +27 -0
  11. package/dist/node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/class-map.js +37 -0
  12. package/dist/node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/if-defined.js +10 -0
  13. package/dist/node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/map.js +15 -0
  14. package/dist/node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/range.js +14 -0
  15. package/dist/node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/style-map.js +39 -0
  16. package/dist/node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/lit-html.js +259 -0
  17. package/dist/packages/web-components/classes/event-manager/event-manager.js +50 -0
  18. package/dist/packages/web-components/classes/index.js +4 -0
  19. package/dist/packages/web-components/components/badge/badge.js +146 -0
  20. package/dist/packages/web-components/components/banner/banner.js +389 -0
  21. package/dist/packages/web-components/components/banner-image/banner-image.js +161 -0
  22. package/dist/packages/web-components/components/box/box.js +208 -0
  23. package/dist/packages/web-components/components/button/button.js +336 -0
  24. package/dist/packages/web-components/components/button-group/button-group.js +98 -0
  25. package/dist/packages/web-components/components/button-icon/button-icon.js +246 -0
  26. package/dist/packages/web-components/components/caption-card/caption-card.js +331 -0
  27. package/dist/packages/web-components/components/deferred-media/deferred-media.js +212 -0
  28. package/dist/packages/web-components/components/disclosure/disclosure.js +255 -0
  29. package/dist/packages/web-components/components/event-table/event-content.js +106 -0
  30. package/dist/packages/web-components/components/event-table/event-date.js +45 -0
  31. package/dist/packages/web-components/components/event-table/event-table.js +74 -0
  32. package/dist/packages/web-components/components/event-table/event.js +45 -0
  33. package/dist/packages/web-components/components/footer/footer.js +153 -0
  34. package/dist/packages/web-components/components/grid/grid-cell.js +40 -0
  35. package/dist/packages/web-components/components/grid/grid.js +106 -0
  36. package/dist/packages/web-components/components/header/header.js +368 -0
  37. package/dist/packages/web-components/components/header-drawer/header-drawer.js +292 -0
  38. package/dist/packages/web-components/components/header-drawer/menu-drawer.js +176 -0
  39. package/dist/packages/web-components/components/horizontal-stack/horizontal-stack.js +93 -0
  40. package/dist/packages/web-components/components/icon/icon.js +81 -0
  41. package/dist/packages/web-components/components/icon/icons.svg.js +191 -0
  42. package/dist/packages/web-components/components/image/image.js +157 -0
  43. package/dist/packages/web-components/components/index.js +82 -0
  44. package/dist/packages/web-components/components/link/link.js +95 -0
  45. package/dist/packages/web-components/components/link-group/link-group.js +126 -0
  46. package/dist/packages/web-components/components/logo/logo.js +161 -0
  47. package/dist/packages/web-components/components/media-gallery/media-gallery.js +82 -0
  48. package/dist/packages/web-components/components/media-gallery/media.js +31 -0
  49. package/dist/packages/web-components/components/media-text/media-text.js +276 -0
  50. package/dist/packages/web-components/components/media-text/styles/media-size.js +119 -0
  51. package/dist/packages/web-components/components/menu/menu.js +328 -0
  52. package/dist/packages/web-components/components/modal/modal.js +143 -0
  53. package/dist/packages/web-components/components/number-field/number-field.js +339 -0
  54. package/dist/packages/web-components/components/overlay/overlay.js +77 -0
  55. package/dist/packages/web-components/components/page/page.js +105 -0
  56. package/dist/packages/web-components/components/popover/popover.js +163 -0
  57. package/dist/packages/web-components/components/rich-text/rich-text.js +126 -0
  58. package/dist/packages/web-components/components/section/section.js +400 -0
  59. package/dist/packages/web-components/components/select/select.js +359 -0
  60. package/dist/packages/web-components/components/slider/slide.js +68 -0
  61. package/dist/packages/web-components/components/slider/slider-controls.js +258 -0
  62. package/dist/packages/web-components/components/slider/slider.js +374 -0
  63. package/dist/packages/web-components/components/slider/styles/controls.js +98 -0
  64. package/dist/packages/web-components/components/slider/styles/slider.js +233 -0
  65. package/dist/packages/web-components/components/socials/socials.js +96 -0
  66. package/dist/packages/web-components/components/table/table.js +158 -0
  67. package/dist/packages/web-components/components/text/text.js +245 -0
  68. package/dist/packages/web-components/components/text-field/text-field.js +257 -0
  69. package/dist/packages/web-components/components/thumbnail-slider/thumbnail-slide.js +51 -0
  70. package/dist/packages/web-components/components/thumbnail-slider/thumbnail-slider.js +88 -0
  71. package/dist/packages/web-components/components/vertical-stack/vertical-stack.js +95 -0
  72. package/dist/packages/web-components/components/video/video.js +185 -0
  73. package/dist/packages/web-components/scripts/mergeStyles.js +8 -0
  74. package/dist/packages/web-components/scripts/polyfills/scrollyfills.js +43 -0
  75. package/dist/packages/web-components/scripts/settings.js +7 -0
  76. package/dist/packages/web-components/scripts/themeStyleSheet.js +9 -0
  77. package/dist/packages/web-components/scripts/utilities/debounce.js +9 -0
  78. package/dist/packages/web-components/scripts/utilities/paddingTransformations.js +46 -0
  79. package/dist/packages/web-components/styles/button.js +55 -0
  80. package/dist/packages/web-components/styles/fonts.js +181 -0
  81. package/dist/packages/web-components/styles/global.js +40 -0
  82. package/dist/packages/web-components/styles/grid.js +114 -0
  83. package/dist/packages/web-components/styles/group.js +121 -0
  84. package/dist/packages/web-components/styles/icon-size.js +19 -0
  85. package/dist/packages/web-components/styles/link.js +30 -0
  86. package/dist/packages/web-components/styles/placeholder-media.js +27 -0
  87. package/package.json +92 -0
  88. package/readme.md +266 -0
@@ -0,0 +1,157 @@
1
+ import "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/reactive-element.js";
2
+ import { html as l } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/lit-html.js";
3
+ import { LitElement as g } from "../../../../node_modules/.pnpm/lit-element@4.0.4/node_modules/lit-element/lit-element.js";
4
+ import { customElement as f } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/custom-element.js";
5
+ import { property as s } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/property.js";
6
+ import { ifDefined as c } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/if-defined.js";
7
+ import { styleMap as d } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/style-map.js";
8
+ import { classMap as p } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/class-map.js";
9
+ import { global as u } from "../../styles/global.js";
10
+ import { placeholderMedia as y } from "../../styles/placeholder-media.js";
11
+ import { settings as v } from "../../scripts/settings.js";
12
+ import { mergeStyles as w } from "../../scripts/mergeStyles.js";
13
+ import { css as $ } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/css-tag.js";
14
+ var b = Object.defineProperty, x = Object.getOwnPropertyDescriptor, e = (t, r, h, o) => {
15
+ for (var a = o > 1 ? void 0 : o ? x(r, h) : r, m = t.length - 1, n; m >= 0; m--)
16
+ (n = t[m]) && (a = (o ? n(r, h, a) : n(a)) || a);
17
+ return o && a && b(r, h, a), a;
18
+ };
19
+ const { prefix: C } = v;
20
+ let i = class extends g {
21
+ constructor() {
22
+ super(...arguments), this.imgAlt = "", this.width = 100, this.height = 100, this.fit = "contain", this.load = "lazy";
23
+ }
24
+ dispatchEvents() {
25
+ const t = this.width / this.height, r = new CustomEvent("media-details", {
26
+ detail: {
27
+ mediaAspectRatio: t,
28
+ mobileMediaAspectRatio: t
29
+ },
30
+ bubbles: !0,
31
+ composed: !0
32
+ });
33
+ this.dispatchEvent(r);
34
+ }
35
+ containerStyles() {
36
+ let t = {};
37
+ return this.width && this.height && (t = {
38
+ ...t,
39
+ "--um-size-image-width": this.width,
40
+ "--um-size-image-height": this.height
41
+ }), t;
42
+ }
43
+ containerClasses() {
44
+ const t = {};
45
+ return t["image-fit--" + this.fit] = !!(this.fit !== "none" && this.fit), t;
46
+ }
47
+ imageClasses() {
48
+ const t = {};
49
+ return t["image-fit"] = !!(this.fit !== "none" && this.fit), t["image-fit--" + this.fit] = !!(this.fit !== "none" && this.fit), t;
50
+ }
51
+ image() {
52
+ return this.src ? l`
53
+ <img
54
+ class="image ${p(this.imageClasses())}"
55
+ part="image"
56
+ width="${this.width}"
57
+ height="${this.height}"
58
+ src="${c(this.src)}"
59
+ srcset="${c(this.srcSet)}"
60
+ sizes="${c(this.sizes)}"
61
+ alt="${this.imgAlt}"
62
+ loading="${this.load}"
63
+ >
64
+ ` : l`
65
+ <div
66
+ part="placeholder"
67
+ class="placeholder image image--desktop${p(this.imageClasses())}"
68
+ style="aspect-ratio: ${this.width / this.height}"
69
+ >
70
+ <div part="placeholder-inner" class="placeholder-inner">
71
+ <svg class="icon" xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 448 512" fill="currentcolor">
72
+ <path d="M0 96C0 60.7 28.7 32 64 32H384c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96z"/>
73
+ </svg>
74
+ </div>
75
+ </div>
76
+ `;
77
+ }
78
+ render() {
79
+ return this.dispatchEvents(), l`
80
+ <div
81
+ class="image-container${p(this.imageClasses())}"
82
+ style=${d(this.containerStyles())}
83
+ part="image-container"
84
+ >
85
+ ${this.image()}
86
+ </div>
87
+ `;
88
+ }
89
+ };
90
+ i.styles = w([
91
+ u,
92
+ y,
93
+ $`
94
+ :host {
95
+ display: block;
96
+ height: 100%;
97
+ }
98
+ .image-container {
99
+ display: flex;
100
+ justify-content: center;
101
+ align-items: center;
102
+ height: 100%;
103
+ }
104
+ .image-container.image-fit--cover,
105
+ .image-container.image-fit--contain {
106
+ width: 100%;
107
+ }
108
+ .image {
109
+ display: block;
110
+ height: auto;
111
+ max-width: 100%;
112
+ }
113
+
114
+ /* Image fit */
115
+ .image.image-fit {
116
+ height: 100%;
117
+ width: 100%;
118
+ max-width: initial;
119
+ }
120
+ .image.image-fit--cover {
121
+ object-fit: cover;
122
+ }
123
+ .image.image-fit--contain {
124
+ object-fit: contain;
125
+ }
126
+ `
127
+ ]);
128
+ e([
129
+ s()
130
+ ], i.prototype, "imgAlt", 2);
131
+ e([
132
+ s()
133
+ ], i.prototype, "src", 2);
134
+ e([
135
+ s()
136
+ ], i.prototype, "srcSet", 2);
137
+ e([
138
+ s()
139
+ ], i.prototype, "sizes", 2);
140
+ e([
141
+ s({ type: Number })
142
+ ], i.prototype, "width", 2);
143
+ e([
144
+ s({ type: Number })
145
+ ], i.prototype, "height", 2);
146
+ e([
147
+ s({ type: String })
148
+ ], i.prototype, "fit", 2);
149
+ e([
150
+ s({ type: String })
151
+ ], i.prototype, "load", 2);
152
+ i = e([
153
+ f(`${C}-image`)
154
+ ], i);
155
+ export {
156
+ i as Image
157
+ };
@@ -0,0 +1,82 @@
1
+ import { Banner as e } from "./banner/banner.js";
2
+ import { BannerImage as x } from "./banner-image/banner-image.js";
3
+ import { Box as p } from "./box/box.js";
4
+ import { Button as a } from "./button/button.js";
5
+ import { ButtonIcon as n } from "./button-icon/button-icon.js";
6
+ import { ButtonGroup as d } from "./button-group/button-group.js";
7
+ import { CaptionCard as u } from "./caption-card/caption-card.js";
8
+ import { DeferredMedia as S } from "./deferred-media/deferred-media.js";
9
+ import { Disclosure as g } from "./disclosure/disclosure.js";
10
+ import { EventTable as b } from "./event-table/event-table.js";
11
+ import { Footer as G } from "./footer/footer.js";
12
+ import { Grid as s } from "./grid/grid.js";
13
+ import { Header as D } from "./header/header.js";
14
+ import { HeaderDrawer as H } from "./header-drawer/header-drawer.js";
15
+ import { HorizontalStack as h } from "./horizontal-stack/horizontal-stack.js";
16
+ import { Icon as C } from "./icon/icon.js";
17
+ import { Image as V } from "./image/image.js";
18
+ import { Link as z } from "./link/link.js";
19
+ import { LinkGroup as N } from "./link-group/link-group.js";
20
+ import { Logo as R } from "./logo/logo.js";
21
+ import { MediaGallery as q } from "./media-gallery/media-gallery.js";
22
+ import { MediaText as J } from "./media-text/media-text.js";
23
+ import { Menu as Q } from "./menu/menu.js";
24
+ import { Modal as W } from "./modal/modal.js";
25
+ import { NumberField as Y } from "./number-field/number-field.js";
26
+ import { Overlay as _ } from "./overlay/overlay.js";
27
+ import { Page as oo } from "./page/page.js";
28
+ import { Popover as eo } from "./popover/popover.js";
29
+ import { Section as xo } from "./section/section.js";
30
+ import { Select as po } from "./select/select.js";
31
+ import { Slider as ao } from "./slider/slider.js";
32
+ import { Socials as no } from "./socials/socials.js";
33
+ import { Table as co } from "./table/table.js";
34
+ import { Text as Bo } from "./text/text.js";
35
+ import { TextField as To } from "./text-field/text-field.js";
36
+ import { RichText as Mo } from "./rich-text/rich-text.js";
37
+ import { ThumbnailSlider as ko } from "./thumbnail-slider/thumbnail-slider.js";
38
+ import { Video as Io } from "./video/video.js";
39
+ import { VerticalStack as vo } from "./vertical-stack/vertical-stack.js";
40
+ import { Badge as Fo } from "./badge/badge.js";
41
+ export {
42
+ Fo as Badge,
43
+ e as Banner,
44
+ x as BannerImage,
45
+ p as Box,
46
+ a as Button,
47
+ d as ButtonGroup,
48
+ n as ButtonIcon,
49
+ u as CaptionCard,
50
+ S as DeferredMedia,
51
+ g as Disclosure,
52
+ b as EventTable,
53
+ G as Footer,
54
+ s as Grid,
55
+ D as Header,
56
+ H as HeaderDrawer,
57
+ h as HorizontalStack,
58
+ C as Icon,
59
+ V as Image,
60
+ z as Link,
61
+ N as LinkGroup,
62
+ R as Logo,
63
+ q as MediaGallery,
64
+ J as MediaText,
65
+ Q as Menu,
66
+ W as Modal,
67
+ Y as NumberField,
68
+ _ as Overlay,
69
+ oo as Page,
70
+ eo as Popover,
71
+ Mo as RichText,
72
+ xo as Section,
73
+ po as Select,
74
+ ao as Slider,
75
+ no as Socials,
76
+ co as Table,
77
+ Bo as Text,
78
+ To as TextField,
79
+ ko as ThumbnailSlider,
80
+ vo as VerticalStack,
81
+ Io as Video
82
+ };
@@ -0,0 +1,95 @@
1
+ import "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/reactive-element.js";
2
+ import { html as p } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/lit-html.js";
3
+ import { LitElement as f } from "../../../../node_modules/.pnpm/lit-element@4.0.4/node_modules/lit-element/lit-element.js";
4
+ import { customElement as u } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/custom-element.js";
5
+ import { property as m } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/property.js";
6
+ import { ifDefined as c } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/if-defined.js";
7
+ import { classMap as d } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/class-map.js";
8
+ import { global as h } from "../../styles/global.js";
9
+ import { settings as g } from "../../scripts/settings.js";
10
+ import { mergeStyles as v } from "../../scripts/mergeStyles.js";
11
+ import { css as x } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/css-tag.js";
12
+ var y = Object.defineProperty, b = Object.getOwnPropertyDescriptor, o = (i, r, l, n) => {
13
+ for (var e = n > 1 ? void 0 : n ? b(r, l) : r, s = i.length - 1, a; s >= 0; s--)
14
+ (a = i[s]) && (e = (n ? a(r, l, e) : a(e)) || e);
15
+ return n && e && y(r, l, e), e;
16
+ };
17
+ const { prefix: k } = g;
18
+ let t = class extends f {
19
+ constructor() {
20
+ super(...arguments), this.url = void 0, this.target = "_self", this.underline = !1;
21
+ }
22
+ linkClasses() {
23
+ return {
24
+ "link--underline": this.underline
25
+ };
26
+ }
27
+ render() {
28
+ return p`
29
+ <a
30
+ part="link"
31
+ href="${c(this.url)}"
32
+ class="link${d(this.linkClasses())}"
33
+ target="${this.target}"
34
+ >
35
+ <slot part="label"></slot>
36
+ <slot name="label" part="label"></slot>
37
+ </a>
38
+ `;
39
+ }
40
+ };
41
+ t.styles = v([
42
+ h,
43
+ x`
44
+ :host {
45
+ display: inline-block;
46
+ }
47
+ .link {
48
+ display: inline-flex;
49
+ align-items: center;
50
+ gap: 0.5rem;
51
+ flex-wrap: nowrap;
52
+ white-space: nowrap;
53
+ color: inherit;
54
+ font-family: var(--um-font-family-body, Roboto, Arial, Helvetica, sans-serif);
55
+ font-size: var(--um-font-size-body-sm, 0.875rem);
56
+ font-weight: var(--um-font-weight-regular, 400);
57
+ line-height: normal;
58
+ text-underline-offset: 0.3rem;
59
+ }
60
+ .link ::slotted(umg-icon) {
61
+ padding-top: 2px;
62
+ }
63
+ .link:focus-visible {
64
+ outline: 0.1rem solid rgba(var(--um-color-page-text, var(--um-color-section-text, 62,62,62)), 1);
65
+ }
66
+ .link:not(.link--underline) {
67
+ text-decoration: none;
68
+ }
69
+ .link:not(.link--underline):hover {
70
+ text-decoration: underline;
71
+ }
72
+ /* Underline */
73
+ .link--underline {
74
+ text-decoration: underline;
75
+ }
76
+ .link--underline:hover {
77
+ text-decoration: none;
78
+ }
79
+ `
80
+ ]);
81
+ o([
82
+ m()
83
+ ], t.prototype, "url", 2);
84
+ o([
85
+ m()
86
+ ], t.prototype, "target", 2);
87
+ o([
88
+ m({ type: Boolean })
89
+ ], t.prototype, "underline", 2);
90
+ t = o([
91
+ u(`${k}-link`)
92
+ ], t);
93
+ export {
94
+ t as Link
95
+ };
@@ -0,0 +1,126 @@
1
+ import "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/reactive-element.js";
2
+ import { html as n } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/lit-html.js";
3
+ import { LitElement as c } from "../../../../node_modules/.pnpm/lit-element@4.0.4/node_modules/lit-element/lit-element.js";
4
+ import { customElement as m } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/custom-element.js";
5
+ import { property as i } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/property.js";
6
+ import { classMap as g } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/class-map.js";
7
+ import { global as b } from "../../styles/global.js";
8
+ import { groupSpacing as f, groupMobileJustify as h, groupMobileAlign as d, groupJustify as y, groupAlign as w } from "../../styles/group.js";
9
+ import { settings as v } from "../../scripts/settings.js";
10
+ import { mergeStyles as k } from "../../scripts/mergeStyles.js";
11
+ import { css as x } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/css-tag.js";
12
+ var j = Object.defineProperty, J = Object.getOwnPropertyDescriptor, e = (r, s, p, a) => {
13
+ for (var t = a > 1 ? void 0 : a ? J(s, p) : s, l = r.length - 1, u; l >= 0; l--)
14
+ (u = r[l]) && (t = (a ? u(s, p, t) : u(t)) || t);
15
+ return a && t && j(s, p, t), t;
16
+ };
17
+ const { prefix: S } = v;
18
+ let o = class extends c {
19
+ constructor() {
20
+ super(...arguments), this.spacing = "normal", this.justify = "start", this.noWrap = !1, this.stack = !1, this.mobileStack = !1;
21
+ }
22
+ getClasses() {
23
+ const r = {};
24
+ return r["group-spacing--" + this.spacing] = !0, r["group--no-wrap"] = this.noWrap, r["group--stack"] = this.stack, r["group--mobile-stack"] = this.mobileStack, this.stack ? r["group-align--" + this.justify] = !0 : r["group-justify--" + this.justify] = !0, this.mobileStack ? r["group-mobile-align--" + this.mobileJustify] = !0 : this.mobileJustify ? r["group-mobile-justify--" + this.mobileJustify] = !0 : r["group-mobile-justify--" + this.justify] = !0, r;
25
+ }
26
+ render() {
27
+ return n`
28
+ <div
29
+ class="link-group${g(this.getClasses())}"
30
+ part="link-group"
31
+ >
32
+ <slot></slot>
33
+ </div>
34
+ `;
35
+ }
36
+ };
37
+ o.styles = k([
38
+ b,
39
+ f,
40
+ h,
41
+ d,
42
+ y,
43
+ w,
44
+ x`
45
+
46
+ :host([noWrap]) {
47
+ display: block;
48
+ width: 100%;
49
+ }
50
+ .link-group {
51
+ display: flex;
52
+ flex-wrap: wrap;
53
+ width: 100%;
54
+ }
55
+
56
+ /** Prevent link wrapping */
57
+ .group--no-wrap {
58
+ flex-wrap: nowrap;
59
+ overflow-y: auto;
60
+ max-width: 100%;
61
+ scrollbar-color: rgb(var(--um-color-section-text, var(--um-color-base-text, 0,0,0)), 0.1) rgb(var(--um-color-section-text, var(--um-color-base-text, 0,0,0)), 0.05);;
62
+ scrollbar-width: thin;
63
+ padding: var(--um-space-8) 0;
64
+ }
65
+
66
+ .group--no-wrap ::slotted(:last-child) {
67
+ margin-right: var(--um-space-24);
68
+ }
69
+
70
+ /** Horizontal scrolling */
71
+ @media (hover: none) {
72
+ .group--no-wrap::-webkit-scrollbar {
73
+ display: none;
74
+ }
75
+ }
76
+ @media (hover: hover) {
77
+ .group--no-wrap::-webkit-scrollbar {
78
+ height: 0.25rem;
79
+ }
80
+ .group--no-wrap::-webkit-scrollbar-track {
81
+ background: rgb(var(--color-section-text, var(--um-color-base-text, 0,0,0)), 0.05);
82
+ border-radius: var(--um-border-radius-30);
83
+ }
84
+ .group--no-wrap::-webkit-scrollbar-thumb {
85
+ background: rgb(var(--color-section-text, var(--um-color-base-text, 0,0,0)), 0.1);
86
+ border-radius: var(--um-border-radius-30);
87
+ }
88
+ }
89
+
90
+ /** Force vertical stacking */
91
+ @media screen and (max-width: 48rem) {
92
+ .group--mobile-stack:not(.group--no-wrap) {
93
+ flex-direction: column;
94
+ }
95
+ }
96
+ @media screen and (min-width: 48.06rem) {
97
+ .group--stack:not(.group--no-wrap) {
98
+ flex-direction: column;
99
+ }
100
+ }
101
+ `
102
+ ]);
103
+ e([
104
+ i()
105
+ ], o.prototype, "spacing", 2);
106
+ e([
107
+ i()
108
+ ], o.prototype, "justify", 2);
109
+ e([
110
+ i()
111
+ ], o.prototype, "mobileJustify", 2);
112
+ e([
113
+ i({ type: Boolean })
114
+ ], o.prototype, "noWrap", 2);
115
+ e([
116
+ i({ type: Boolean })
117
+ ], o.prototype, "stack", 2);
118
+ e([
119
+ i({ type: Boolean })
120
+ ], o.prototype, "mobileStack", 2);
121
+ o = e([
122
+ m(`${S}-link-group`)
123
+ ], o);
124
+ export {
125
+ o as LinkGroup
126
+ };
@@ -0,0 +1,161 @@
1
+ import "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/reactive-element.js";
2
+ import { html as m } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/lit-html.js";
3
+ import { LitElement as c } from "../../../../node_modules/.pnpm/lit-element@4.0.4/node_modules/lit-element/lit-element.js";
4
+ import { customElement as y } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/custom-element.js";
5
+ import { property as o } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/property.js";
6
+ import { ifDefined as p } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/if-defined.js";
7
+ import { classMap as n } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/class-map.js";
8
+ import { styleMap as f } from "../../../../node_modules/.pnpm/lit-html@3.1.2/node_modules/lit-html/directives/style-map.js";
9
+ import { global as u } from "../../styles/global.js";
10
+ import { settings as d } from "../../scripts/settings.js";
11
+ import { mergeStyles as v } from "../../scripts/mergeStyles.js";
12
+ import "../image/image.js";
13
+ import { css as w } from "../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/css-tag.js";
14
+ var S = Object.defineProperty, b = Object.getOwnPropertyDescriptor, e = (i, l, g, r) => {
15
+ for (var s = r > 1 ? void 0 : r ? b(l, g) : l, h = i.length - 1, a; h >= 0; h--)
16
+ (a = i[h]) && (s = (r ? a(l, g, s) : a(s)) || s);
17
+ return r && s && S(l, g, s), s;
18
+ };
19
+ const { prefix: $ } = d;
20
+ let t = class extends c {
21
+ constructor() {
22
+ super(...arguments), this.url = "/", this.height = 80, this.title = "Logo Title", this.showTitle = !1, this.imgWidth = 80, this.imgHeight = 80;
23
+ }
24
+ logoStyles() {
25
+ let i = {};
26
+ return i = {
27
+ ...i,
28
+ "--um-size-logo-height": this.height / 16 + "rem"
29
+ }, i;
30
+ }
31
+ logoClasses() {
32
+ return {
33
+ "logo--show-title": this.showTitle
34
+ };
35
+ }
36
+ titleClasses() {
37
+ return {
38
+ "visually-hidden": !this.showTitle
39
+ };
40
+ }
41
+ image() {
42
+ return this.imgSrc ? m`
43
+ <umg-image
44
+ class="logo__image"
45
+ part="logo-image"
46
+ imgAlt=${this.title}
47
+ src="${p(this.imgSrc)}"
48
+ width=${this.imgWidth}
49
+ height=${this.imgHeight}
50
+ srcSet="${p(this.imgSrcSet)}"
51
+ sizes="${p(this.imgSizes)}"
52
+ lazy="lazy"
53
+ >
54
+ </umg-image>
55
+ ` : m`
56
+ <svg class="logo__image placeholder" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" role="presentation" aria-hidden="true" focusable="false" fill="currentColor">
57
+ <path d="M469.33,512H42.67A42.79,42.79,0,0,1,0,469.33V42.67A42.79,42.79,0,0,1,42.67,0H469.33A42.79,42.79,0,0,1,512,42.67V469.33A42.79,42.79,0,0,1,469.33,512Z"/>
58
+ </svg>
59
+ `;
60
+ }
61
+ render() {
62
+ return m`
63
+ <h1
64
+ class="logo${n(this.logoClasses())}"
65
+ style=${f(this.logoStyles())}
66
+ part="logo"
67
+ >
68
+ <a href="${this.url}">
69
+ ${this.image()}
70
+ <span class="logo-title ${n(this.titleClasses())}">
71
+ ${this.title}
72
+ </span>
73
+ </a>
74
+ </h1>
75
+ `;
76
+ }
77
+ };
78
+ t.styles = v([
79
+ u,
80
+ w`
81
+ :host {
82
+ display: block;
83
+ }
84
+ .placeholder {
85
+ display: block;
86
+ height: 100%;
87
+ width: 100%;
88
+ color: rgb(var(--um-color-skeleton-bg, 230, 230, 230));
89
+
90
+ }
91
+ .logo {
92
+ display: flex;
93
+ align-items: center;
94
+ color: inherit;
95
+ margin: 0;
96
+ height: var(--um-size-logo-height);
97
+ line-height: 1;
98
+ }
99
+ .logo a {
100
+ display: block;
101
+ color: inherit;
102
+ text-decoration: none;
103
+ height: 100%;
104
+ }
105
+ .logo-title:not(.visually-hidden) {
106
+ display: inline-block;
107
+ font-family: var(--um-font-family-logo, var(--um-font-family-heading, 'Roboto Serif', Times, 'Times New Roman', Georgia, serif));
108
+ font-size: var(--um-font-size-logo, 1.75rem);
109
+ }
110
+
111
+ @media only screen and (max-width: 48rem) {
112
+ .logo {
113
+ height: var(--um-size-mobile-logo-height, calc(var(--um-size-logo-height, 5rem) / 1.25));
114
+ }
115
+ }
116
+
117
+ /* Hide image for title */
118
+ .logo--show-title {
119
+ line-height: inherit;
120
+ }
121
+ .logo--show-title .logo__image {
122
+ display: none;
123
+ }
124
+ .logo--show-title a {
125
+ height: auto;
126
+ }
127
+ `
128
+ ]);
129
+ e([
130
+ o()
131
+ ], t.prototype, "url", 2);
132
+ e([
133
+ o({ type: Number })
134
+ ], t.prototype, "height", 2);
135
+ e([
136
+ o()
137
+ ], t.prototype, "title", 2);
138
+ e([
139
+ o({ type: Boolean })
140
+ ], t.prototype, "showTitle", 2);
141
+ e([
142
+ o({ type: String })
143
+ ], t.prototype, "imgSrc", 2);
144
+ e([
145
+ o({ type: String })
146
+ ], t.prototype, "imgSrcSet", 2);
147
+ e([
148
+ o({ type: String })
149
+ ], t.prototype, "imgSizes", 2);
150
+ e([
151
+ o({ type: Number })
152
+ ], t.prototype, "imgWidth", 2);
153
+ e([
154
+ o({ type: Number })
155
+ ], t.prototype, "imgHeight", 2);
156
+ t = e([
157
+ y(`${$}-logo`)
158
+ ], t);
159
+ export {
160
+ t as Logo
161
+ };