@mirweb/mir-web-components 1.15.3 → 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 (184) hide show
  1. package/README.md +2 -2
  2. package/dist/assets/index-Cl4fzBs2.js +17 -0
  3. package/dist/assets/scss/globals.scss +231 -0
  4. package/dist/assets/scss/index.scss +4 -0
  5. package/dist/assets/scss/normalize.scss +393 -0
  6. package/dist/assets/scss/reset.scss +102 -0
  7. package/dist/assets/scss/variables.scss +95 -0
  8. package/dist/components/atoms/button/button.vue +81 -0
  9. package/dist/components/atoms/checkbox/checkbox.vue +125 -0
  10. package/dist/components/atoms/chip/chip.vue +55 -0
  11. package/dist/components/atoms/dropdown/dropdown.vue +490 -0
  12. package/dist/components/atoms/image/image.vue +42 -0
  13. package/dist/components/atoms/label/label.vue +52 -0
  14. package/dist/components/atoms/link/link.vue +166 -0
  15. package/dist/components/atoms/radio-button/radio-button.vue +110 -0
  16. package/dist/components/atoms/select/select.vue +116 -0
  17. package/dist/components/atoms/select-multiple/select-multiple.vue +210 -0
  18. package/dist/components/atoms/slider/slider.vue +322 -0
  19. package/dist/components/atoms/text-field/text-field.vue +273 -0
  20. package/dist/components/atoms/textarea/textarea.vue +179 -0
  21. package/dist/components/atoms/video/video.vue +98 -0
  22. package/dist/components/blocks/accordion/accordion.vue +222 -0
  23. package/dist/components/blocks/card-display/card-display.vue +125 -0
  24. package/dist/components/blocks/column-grid/column-grid.vue +201 -0
  25. package/dist/components/blocks/facts/facts.vue +156 -0
  26. package/dist/components/blocks/features/features.vue +176 -0
  27. package/dist/components/blocks/flashcards/flashcards.vue +212 -0
  28. package/dist/components/blocks/form-script/form-script.vue +172 -0
  29. package/dist/components/blocks/frontpage-hero/frontpage-hero.vue +214 -0
  30. package/dist/components/blocks/headline/headline.vue +93 -0
  31. package/dist/components/blocks/hero/hero.vue +173 -0
  32. package/dist/components/blocks/image/image.vue +93 -0
  33. package/dist/components/blocks/image-gallery/image-gallery.vue +289 -0
  34. package/dist/components/blocks/logo-wall/logo-wall.vue +125 -0
  35. package/dist/components/blocks/micro-stories/micro-stories.vue +316 -0
  36. package/dist/components/blocks/pallet-jack/pallet-jack.vue +440 -0
  37. package/dist/components/blocks/policy/policy.vue +106 -0
  38. package/dist/components/blocks/product-hero/product-hero.vue +140 -0
  39. package/dist/components/blocks/promo/promo.vue +403 -0
  40. package/dist/components/blocks/quote/quote.vue +127 -0
  41. package/dist/components/blocks/rich-text/rich-text-columns.vue +159 -0
  42. package/dist/components/blocks/rich-text/rich-text.vue +296 -0
  43. package/dist/components/blocks/timeline/timeline.vue +232 -0
  44. package/dist/components/blocks/vimeo/vimeo.vue +52 -0
  45. package/dist/components/index.ts +51 -0
  46. package/dist/components/molecules/address/address.vue +123 -0
  47. package/dist/components/molecules/bullet-list/bullet-list.vue +99 -0
  48. package/dist/components/molecules/card/card.vue +302 -0
  49. package/dist/components/molecules/column-card/column-card.vue +178 -0
  50. package/dist/components/molecules/event-card/event-card.vue +111 -0
  51. package/dist/components/molecules/flashcard/flashcard.vue +293 -0
  52. package/dist/components/molecules/modal/modal.vue +113 -0
  53. package/dist/components/molecules/text-card/text-card.vue +74 -0
  54. package/dist/components/organisms/404/404.vue +79 -0
  55. package/dist/components/organisms/filter/filter.vue +89 -0
  56. package/dist/components/organisms/footer/footer.vue +356 -0
  57. package/dist/components/organisms/header/header.vue +754 -0
  58. package/dist/components/organisms/language-switcher/language-switcher.vue +68 -0
  59. package/dist/components/organisms/pagination/pagination.vue +85 -0
  60. package/dist/components/organisms/search/search.vue +153 -0
  61. package/dist/components/templates/404-error-page.vue +0 -0
  62. package/dist/directives/clickOutside.ts +15 -0
  63. package/dist/fonts/OpenSans-Light.woff2 +0 -0
  64. package/dist/fonts/OpenSans-Medium.woff2 +0 -0
  65. package/dist/fonts/OpenSans-Regular.woff2 +0 -0
  66. package/dist/fonts/OpenSans-SemiBold.woff2 +0 -0
  67. package/dist/fonts/Oscine_Bd.woff2 +0 -0
  68. package/dist/fonts/Oscine_Lt.woff2 +0 -0
  69. package/dist/fonts/Oscine_Rg.woff2 +0 -0
  70. package/dist/index.html +12 -0
  71. package/dist/main.css +1 -0
  72. package/package.json +8 -10
  73. package/dist/components/atoms/button/button.vue.d.ts +0 -5
  74. package/dist/components/atoms/button/button.vue.d.ts.map +0 -1
  75. package/dist/components/atoms/checkbox/checkbox.vue.d.ts +0 -5
  76. package/dist/components/atoms/checkbox/checkbox.vue.d.ts.map +0 -1
  77. package/dist/components/atoms/chip/chip.vue.d.ts +0 -5
  78. package/dist/components/atoms/chip/chip.vue.d.ts.map +0 -1
  79. package/dist/components/atoms/dropdown/dropdown.vue.d.ts +0 -5
  80. package/dist/components/atoms/dropdown/dropdown.vue.d.ts.map +0 -1
  81. package/dist/components/atoms/image/image.vue.d.ts +0 -5
  82. package/dist/components/atoms/image/image.vue.d.ts.map +0 -1
  83. package/dist/components/atoms/label/label.vue.d.ts +0 -5
  84. package/dist/components/atoms/label/label.vue.d.ts.map +0 -1
  85. package/dist/components/atoms/link/link.vue.d.ts +0 -5
  86. package/dist/components/atoms/link/link.vue.d.ts.map +0 -1
  87. package/dist/components/atoms/radio-button/radio-button.vue.d.ts +0 -5
  88. package/dist/components/atoms/radio-button/radio-button.vue.d.ts.map +0 -1
  89. package/dist/components/atoms/select/select.vue.d.ts +0 -5
  90. package/dist/components/atoms/select/select.vue.d.ts.map +0 -1
  91. package/dist/components/atoms/select-multiple/select-multiple.vue.d.ts +0 -5
  92. package/dist/components/atoms/select-multiple/select-multiple.vue.d.ts.map +0 -1
  93. package/dist/components/atoms/slider/slider.vue.d.ts +0 -5
  94. package/dist/components/atoms/slider/slider.vue.d.ts.map +0 -1
  95. package/dist/components/atoms/text-field/text-field.vue.d.ts +0 -5
  96. package/dist/components/atoms/text-field/text-field.vue.d.ts.map +0 -1
  97. package/dist/components/atoms/textarea/textarea.vue.d.ts +0 -5
  98. package/dist/components/atoms/textarea/textarea.vue.d.ts.map +0 -1
  99. package/dist/components/atoms/video/video.vue.d.ts +0 -5
  100. package/dist/components/atoms/video/video.vue.d.ts.map +0 -1
  101. package/dist/components/blocks/accordion/accordion.vue.d.ts +0 -5
  102. package/dist/components/blocks/accordion/accordion.vue.d.ts.map +0 -1
  103. package/dist/components/blocks/card-display/card-display.vue.d.ts +0 -6
  104. package/dist/components/blocks/card-display/card-display.vue.d.ts.map +0 -1
  105. package/dist/components/blocks/column-grid/column-grid.vue.d.ts +0 -5
  106. package/dist/components/blocks/column-grid/column-grid.vue.d.ts.map +0 -1
  107. package/dist/components/blocks/facts/facts.vue.d.ts +0 -5
  108. package/dist/components/blocks/facts/facts.vue.d.ts.map +0 -1
  109. package/dist/components/blocks/features/features.vue.d.ts +0 -5
  110. package/dist/components/blocks/features/features.vue.d.ts.map +0 -1
  111. package/dist/components/blocks/flashcards/flashcards.vue.d.ts +0 -5
  112. package/dist/components/blocks/flashcards/flashcards.vue.d.ts.map +0 -1
  113. package/dist/components/blocks/form-script/form-script.vue.d.ts +0 -5
  114. package/dist/components/blocks/form-script/form-script.vue.d.ts.map +0 -1
  115. package/dist/components/blocks/frontpage-hero/frontpage-hero.vue.d.ts +0 -5
  116. package/dist/components/blocks/frontpage-hero/frontpage-hero.vue.d.ts.map +0 -1
  117. package/dist/components/blocks/headline/headline.vue.d.ts +0 -5
  118. package/dist/components/blocks/headline/headline.vue.d.ts.map +0 -1
  119. package/dist/components/blocks/hero/hero.vue.d.ts +0 -5
  120. package/dist/components/blocks/hero/hero.vue.d.ts.map +0 -1
  121. package/dist/components/blocks/image/image.vue.d.ts +0 -5
  122. package/dist/components/blocks/image/image.vue.d.ts.map +0 -1
  123. package/dist/components/blocks/image-gallery/image-gallery.vue.d.ts +0 -5
  124. package/dist/components/blocks/image-gallery/image-gallery.vue.d.ts.map +0 -1
  125. package/dist/components/blocks/logo-wall/logo-wall.vue.d.ts +0 -5
  126. package/dist/components/blocks/logo-wall/logo-wall.vue.d.ts.map +0 -1
  127. package/dist/components/blocks/micro-stories/micro-stories.vue.d.ts +0 -5
  128. package/dist/components/blocks/micro-stories/micro-stories.vue.d.ts.map +0 -1
  129. package/dist/components/blocks/pallet-jack/pallet-jack.vue.d.ts +0 -5
  130. package/dist/components/blocks/pallet-jack/pallet-jack.vue.d.ts.map +0 -1
  131. package/dist/components/blocks/policy/policy.vue.d.ts +0 -4
  132. package/dist/components/blocks/policy/policy.vue.d.ts.map +0 -1
  133. package/dist/components/blocks/product-hero/product-hero.vue.d.ts +0 -5
  134. package/dist/components/blocks/product-hero/product-hero.vue.d.ts.map +0 -1
  135. package/dist/components/blocks/promo/promo.vue.d.ts +0 -5
  136. package/dist/components/blocks/promo/promo.vue.d.ts.map +0 -1
  137. package/dist/components/blocks/quote/quote.vue.d.ts +0 -5
  138. package/dist/components/blocks/quote/quote.vue.d.ts.map +0 -1
  139. package/dist/components/blocks/rich-text/rich-text-columns.vue.d.ts +0 -4
  140. package/dist/components/blocks/rich-text/rich-text-columns.vue.d.ts.map +0 -1
  141. package/dist/components/blocks/rich-text/rich-text.vue.d.ts +0 -5
  142. package/dist/components/blocks/rich-text/rich-text.vue.d.ts.map +0 -1
  143. package/dist/components/blocks/timeline/timeline.vue.d.ts +0 -5
  144. package/dist/components/blocks/timeline/timeline.vue.d.ts.map +0 -1
  145. package/dist/components/blocks/vimeo/vimeo.vue.d.ts +0 -5
  146. package/dist/components/blocks/vimeo/vimeo.vue.d.ts.map +0 -1
  147. package/dist/components/index.d.ts +0 -51
  148. package/dist/components/main.d.ts +0 -59
  149. package/dist/components/molecules/address/address.vue.d.ts +0 -5
  150. package/dist/components/molecules/address/address.vue.d.ts.map +0 -1
  151. package/dist/components/molecules/bullet-list/bullet-list.vue.d.ts +0 -5
  152. package/dist/components/molecules/bullet-list/bullet-list.vue.d.ts.map +0 -1
  153. package/dist/components/molecules/card/card.vue.d.ts +0 -5
  154. package/dist/components/molecules/card/card.vue.d.ts.map +0 -1
  155. package/dist/components/molecules/column-card/column-card.vue.d.ts +0 -5
  156. package/dist/components/molecules/column-card/column-card.vue.d.ts.map +0 -1
  157. package/dist/components/molecules/event-card/event-card.vue.d.ts +0 -5
  158. package/dist/components/molecules/event-card/event-card.vue.d.ts.map +0 -1
  159. package/dist/components/molecules/flashcard/flashcard.vue.d.ts +0 -5
  160. package/dist/components/molecules/flashcard/flashcard.vue.d.ts.map +0 -1
  161. package/dist/components/molecules/modal/modal.vue.d.ts +0 -5
  162. package/dist/components/molecules/modal/modal.vue.d.ts.map +0 -1
  163. package/dist/components/molecules/text-card/text-card.vue.d.ts +0 -5
  164. package/dist/components/molecules/text-card/text-card.vue.d.ts.map +0 -1
  165. package/dist/components/organisms/404/404.vue.d.ts +0 -5
  166. package/dist/components/organisms/404/404.vue.d.ts.map +0 -1
  167. package/dist/components/organisms/filter/filter.vue.d.ts +0 -5
  168. package/dist/components/organisms/filter/filter.vue.d.ts.map +0 -1
  169. package/dist/components/organisms/footer/footer.vue.d.ts +0 -5
  170. package/dist/components/organisms/footer/footer.vue.d.ts.map +0 -1
  171. package/dist/components/organisms/header/header.vue.d.ts +0 -6
  172. package/dist/components/organisms/header/header.vue.d.ts.map +0 -1
  173. package/dist/components/organisms/language-switcher/language-switcher.vue.d.ts +0 -5
  174. package/dist/components/organisms/language-switcher/language-switcher.vue.d.ts.map +0 -1
  175. package/dist/components/organisms/pagination/pagination.vue.d.ts +0 -5
  176. package/dist/components/organisms/pagination/pagination.vue.d.ts.map +0 -1
  177. package/dist/components/organisms/search/search.vue.d.ts +0 -4
  178. package/dist/components/organisms/search/search.vue.d.ts.map +0 -1
  179. package/dist/directives/clickOutside.d.ts +0 -3
  180. package/dist/main.d.ts +0 -1
  181. package/dist/mir-web-components.cjs.js +0 -1
  182. package/dist/mir-web-components.css +0 -1
  183. package/dist/mir-web-components.es.js +0 -3187
  184. package/dist/mir-web-components.umd.js +0 -2
@@ -1,3187 +0,0 @@
1
- import { defineComponent as b, computed as T, openBlock as s, createElementBlock as i, normalizeClass as h, toDisplayString as c, createElementVNode as t, renderSlot as d, pushScopeId as E, popScopeId as N, createTextVNode as Y, ref as I, withDirectives as U, Fragment as D, renderList as V, vShow as W, unref as $, normalizeProps as H, guardReactiveProps as R, toRefs as Ie, mergeProps as F, createVNode as S, Transition as Ce, withCtx as k, withModifiers as ue, createBlock as C, createCommentVNode as _, watchEffect as pe, withKeys as Te, useSlots as qe, normalizeStyle as Q, isRef as x, onMounted as me, watch as X, onUnmounted as Le } from "vue";
2
- const Ae = ["aria-label"], De = /* @__PURE__ */ b({
3
- __name: "button",
4
- props: {
5
- variant: { default: "primary" },
6
- ariaLabel: { default: "Button" },
7
- buttonText: { default: "" }
8
- },
9
- setup(e) {
10
- const a = {
11
- primary: "primary",
12
- primaryDark: "primary-dark",
13
- secondary: "secondary",
14
- close: "close",
15
- next: "next",
16
- previous: "previous"
17
- }, r = e, l = T(() => a[r.variant]);
18
- return (o, u) => (s(), i("button", {
19
- class: h(["button", "button--" + l.value]),
20
- "aria-label": o.ariaLabel
21
- }, c(l.value === "close" ? "" : o.buttonText), 11, Ae));
22
- }
23
- }), g = (e, a) => {
24
- const r = e.__vccOpts || e;
25
- for (const [l, o] of a)
26
- r[l] = o;
27
- return r;
28
- }, se = /* @__PURE__ */ g(De, [["__scopeId", "data-v-f61b579c"]]), Ve = (e) => (E("data-v-d8d77aaf"), e = e(), N(), e), Pe = ["id", "name", "value", "disabled", "required", "checked"], Fe = ["for"], Me = /* @__PURE__ */ Ve(() => /* @__PURE__ */ t("span", { class: "checkmark" }, null, -1)), Oe = /* @__PURE__ */ b({
29
- __name: "checkbox",
30
- props: {
31
- name: { default: "checkbox" },
32
- value: { type: [String, Number, Boolean], default: "value" },
33
- disabled: { type: Boolean, default: !1 },
34
- id: { default: "checkbox" },
35
- required: { type: Boolean, default: !1 },
36
- checked: { type: Boolean, default: !1 }
37
- },
38
- emits: ["input"],
39
- setup(e, { emit: a }) {
40
- const r = a, l = (o) => {
41
- const u = o.target;
42
- r("input", u.checked);
43
- };
44
- return (o, u) => (s(), i("div", {
45
- class: h(["checkbox__wrapper", o.disabled ? "disabled" : ""])
46
- }, [
47
- t("input", {
48
- id: o.id,
49
- type: "checkbox",
50
- name: o.name,
51
- value: o.value,
52
- disabled: o.disabled,
53
- required: o.required,
54
- checked: o.checked,
55
- class: "checkbox__checkbox",
56
- onChange: l
57
- }, null, 40, Pe),
58
- t("label", {
59
- for: o.id,
60
- class: h(["checkbox__label", o.required ? "required" : ""])
61
- }, [
62
- Me,
63
- d(o.$slots, "default", {}, void 0, !0)
64
- ], 10, Fe)
65
- ], 2));
66
- }
67
- }), fe = /* @__PURE__ */ g(Oe, [["__scopeId", "data-v-d8d77aaf"]]), ze = (e) => (E("data-v-2e1e44c1"), e = e(), N(), e), He = ["aria-label"], Re = /* @__PURE__ */ ze(() => /* @__PURE__ */ t("img", {
68
- src: "https://a.storyblok.com/f/230581/9x9/e4fb715dc9/close.svg?cv=1695125714598",
69
- alt: "close",
70
- class: "close-icon"
71
- }, null, -1)), Ee = /* @__PURE__ */ b({
72
- __name: "chip",
73
- props: {
74
- text: { default: "" }
75
- },
76
- emits: ["remove-chip"],
77
- setup(e) {
78
- const a = e, r = T(() => `Chip: ${a.text}`);
79
- return (l, o) => (s(), i("div", {
80
- class: "chip__wrapper",
81
- onClick: o[0] || (o[0] = (u) => l.$emit("remove-chip"))
82
- }, [
83
- t("span", {
84
- class: "chip",
85
- "aria-label": r.value
86
- }, [
87
- Y(c(l.text) + " ", 1),
88
- Re
89
- ], 8, He)
90
- ]));
91
- }
92
- }), Ne = /* @__PURE__ */ g(Ee, [["__scopeId", "data-v-2e1e44c1"]]), ve = {
93
- beforeMount(e, a) {
94
- e.clickOutsideEvent = function(r) {
95
- e === r.target || e.contains(r.target) || a.value(r);
96
- }, document.body.addEventListener("click", e.clickOutsideEvent);
97
- },
98
- unmounted(e) {
99
- document.body.removeEventListener("click", e.clickOutsideEvent);
100
- }
101
- }, je = ["value"], Ue = ["id"], Ge = { class: "listbox__dropdown" }, Ke = ["id", "aria-labelledby", "aria-disabled"], Je = ["aria-labelledby", "aria-activedescendant"], We = ["aria-selected", "data-value"], Ye = /* @__PURE__ */ b({
102
- __name: "dropdown",
103
- props: {
104
- modelValue: {},
105
- label: {},
106
- options: {},
107
- name: {},
108
- placeholder: { default: "Choose a value" },
109
- showLabel: { type: Boolean, default: !1 },
110
- required: { type: Boolean, default: !1 },
111
- disabled: { type: Boolean, default: !1 },
112
- variant: { default: "primary" }
113
- },
114
- emits: ["update:modelValue"],
115
- setup(e, { emit: a }) {
116
- const r = {
117
- primary: "dropdown-dark-bg-primary",
118
- dark: "dropdown-dark dropdown-dark-bg-dark"
119
- }, l = e, o = T(() => r[l.variant]), u = I(null), p = I(null), n = I([]), v = I(0), f = I(""), y = I(!0), A = I(0), re = a, ae = T(() => {
120
- const m = l.options.find(
121
- (B) => B.value === l.modelValue
122
- );
123
- return m && m.label;
124
- });
125
- function ne(m) {
126
- re("update:modelValue", m);
127
- }
128
- function de(m) {
129
- var q;
130
- const B = m.target;
131
- B.getAttribute("role") === "option" && (J(B), le(), (q = u.value) == null || q.focus());
132
- }
133
- function K(m) {
134
- var q;
135
- const B = m.key;
136
- switch (B) {
137
- case "ArrowUp":
138
- case "ArrowDown": {
139
- m.preventDefault();
140
- const P = l.options.findIndex(
141
- (Z) => Z.value === l.modelValue
142
- );
143
- let G = P ? n.value[P] : n.value[0];
144
- B === "ArrowUp" ? P - 1 >= 0 && (G = n.value[P - 1]) : P + 1 <= l.options.length && (G = n.value[P + 1]), G && J(G);
145
- break;
146
- }
147
- case "Home":
148
- case "PageUp":
149
- m.preventDefault(), z();
150
- break;
151
- case "End":
152
- case "PageDown":
153
- m.preventDefault(), we();
154
- break;
155
- case "Enter":
156
- case "Escape":
157
- m.preventDefault(), le(), (q = u.value) == null || q.focus();
158
- break;
159
- default: {
160
- const P = j(B);
161
- P && J(P);
162
- break;
163
- }
164
- }
165
- }
166
- function oe(m) {
167
- if (!l.disabled)
168
- switch (m.key) {
169
- case "ArrowUp":
170
- case "ArrowDown":
171
- m.preventDefault(), _e(), K(m);
172
- break;
173
- }
174
- }
175
- function ce(m) {
176
- m && m.removeAttribute("aria-selected");
177
- }
178
- function w() {
179
- v.value && (clearTimeout(v.value), v.value = 0), v.value = setTimeout(() => {
180
- f.value = "", v.value = 0;
181
- }, 500);
182
- }
183
- function j(m) {
184
- let B = "";
185
- (f.value === "" || B !== m) && (A.value = l.options.findIndex(
186
- (P) => P.value === l.modelValue
187
- )), f.value = B === m ? m : f.value + m, B = m, w();
188
- let q = O(
189
- A.value + 1,
190
- l.options.length
191
- );
192
- return !q && f.value.length === 1 && (q = O(0, A.value)), A.value = (A.value + 1) % l.options.length, q;
193
- }
194
- function O(m, B) {
195
- for (let q = m; q < B; q++)
196
- if (l.options[q].label && l.options[q].label.toUpperCase().indexOf(f.value.toUpperCase()) === 0)
197
- return n.value[q];
198
- return null;
199
- }
200
- function z() {
201
- J(n.value[0]);
202
- }
203
- function J(m) {
204
- var q, P;
205
- const B = m.getAttribute("data-value");
206
- if (l.modelValue) {
207
- const G = l.options.findIndex(
208
- (Se) => Se.value === l.modelValue
209
- ), Z = n.value[G];
210
- ce(Z);
211
- }
212
- if (m.setAttribute("aria-selected", "true"), (q = p.value) == null || q.setAttribute(
213
- "aria-activedescendant",
214
- B || ""
215
- ), ne(B || ""), p.value && p.value.scrollHeight > p.value.clientHeight) {
216
- const G = p.value.clientHeight + p.value.scrollTop, Z = m.offsetTop + m.offsetHeight;
217
- Z > G ? p.value.scrollTop = Z - ((P = p.value) == null ? void 0 : P.clientHeight) : m.offsetTop < p.value.scrollTop && (p.value.scrollTop = m.offsetTop);
218
- }
219
- }
220
- function we() {
221
- var B;
222
- const m = (B = n.value) == null ? void 0 : B[l.options.length - 1];
223
- J(m);
224
- }
225
- function le() {
226
- var m;
227
- y.value = !0, (m = u.value) == null || m.removeAttribute("aria-expanded");
228
- }
229
- function _e() {
230
- var m, B;
231
- y.value = !1, (m = u.value) == null || m.setAttribute("aria-expanded", "true"), (B = p.value) == null || B.focus();
232
- }
233
- function Be() {
234
- l.disabled || (y.value ? _e() : le());
235
- }
236
- return (m, B) => (s(), i("div", {
237
- ref: "listbox",
238
- class: "listbox__wrapper",
239
- value: m.modelValue
240
- }, [
241
- t("label", {
242
- id: `${m.name}-label`,
243
- class: h([{
244
- "listbox__label--visually-hidden": !m.showLabel,
245
- "is-disabled": m.disabled,
246
- "is-required": m.required
247
- }, "listbox__label"])
248
- }, c(m.label), 11, Ue),
249
- U((s(), i("div", Ge, [
250
- t("button", {
251
- id: `${m.name}-button-label`,
252
- ref_key: "listboxButton",
253
- ref: u,
254
- "aria-labelledby": `${m.name}-label ${m.name}-button-label`,
255
- type: "button",
256
- "aria-haspopup": "listbox",
257
- "aria-disabled": m.disabled,
258
- class: h(["listbox__button", o.value]),
259
- onClick: Be,
260
- onKeydown: oe
261
- }, c(m.modelValue ? ae.value : m.placeholder), 43, Ke),
262
- U(t("ul", {
263
- ref_key: "listboxNode",
264
- ref: p,
265
- "aria-labelledby": `${m.name}-label`,
266
- "aria-activedescendant": m.modelValue,
267
- tabindex: "0",
268
- role: "listbox",
269
- class: "listbox__list",
270
- onKeydown: K,
271
- onClick: de
272
- }, [
273
- (s(!0), i(D, null, V(m.options, (q, P) => (s(), i("li", {
274
- key: `${m.name}-option-${P}`,
275
- ref_for: !0,
276
- ref_key: "listboxOptions",
277
- ref: n,
278
- "aria-selected": q.value === m.modelValue,
279
- "data-value": q.value,
280
- class: "listbox__option",
281
- role: "option"
282
- }, c(q.label), 9, We))), 128))
283
- ], 40, Je), [
284
- [W, !y.value]
285
- ])
286
- ])), [
287
- [$(ve), le]
288
- ])
289
- ], 8, je));
290
- }
291
- }), Qe = /* @__PURE__ */ g(Ye, [["__scopeId", "data-v-3d9c75e9"]]), Ze = { class: "image__wrapper" }, Xe = /* @__PURE__ */ b({
292
- __name: "image",
293
- props: {
294
- src: { default: void 0 },
295
- srcset: { default: void 0 },
296
- sizes: { default: void 0 },
297
- alt: { default: void 0 },
298
- width: { default: void 0 },
299
- height: { default: "auto" },
300
- loading: { default: "auto" }
301
- },
302
- setup(e) {
303
- return (a, r) => (s(), i("div", Ze, [
304
- d(a.$slots, "default", H(R(a.$attrs)))
305
- ]));
306
- }
307
- }), M = /* @__PURE__ */ g(Xe, [["__scopeId", "data-v-4f7fe350"]]), xe = { class: "label__wrapper" }, et = ["aria-label", "label-dark"], tt = /* @__PURE__ */ b({
308
- __name: "label",
309
- props: {
310
- text: {},
311
- labelDark: { type: Boolean, default: !1 }
312
- },
313
- setup(e) {
314
- const a = e, r = T(() => `Label: ${a.text}`);
315
- return (l, o) => (s(), i("div", xe, [
316
- t("span", {
317
- "aria-label": r.value,
318
- "label-dark": l.labelDark,
319
- class: h(l.labelDark ? "label--dark" : "label--light")
320
- }, c(l.text), 11, et)
321
- ]));
322
- }
323
- }), ee = /* @__PURE__ */ g(tt, [["__scopeId", "data-v-7d9d3a8a"]]), at = { class: "link__wrapper" }, L = /* @__PURE__ */ b({
324
- __name: "link",
325
- props: {
326
- linkType: { default: "regular" },
327
- arrow: { type: Boolean, default: !1 },
328
- underline: { default: "false" },
329
- disabled: { type: Boolean, default: !1 }
330
- },
331
- setup(e) {
332
- const a = {
333
- primary: "mir-link--btn button button--primary",
334
- primary_dark: "mir-link--btn button button--primary-dark",
335
- secondary: "mir-link--btn button button--secondary",
336
- secondary_dark: "mir-link--btn button button--secondary-dark",
337
- regular: "regular-link",
338
- regular_dark: "regular-link-dark",
339
- regular_light: "regular-link-light",
340
- regular_blue: "regular-link-blue"
341
- }, r = {
342
- hover: "underline-hover",
343
- true: "add-underline",
344
- false: "remove-underline"
345
- }, l = e, o = T(() => a[l.linkType]), u = T(() => r[l.underline]), p = T(() => {
346
- const { ...n } = Ie(l);
347
- return n;
348
- });
349
- return (n, v) => (s(), i("div", at, [
350
- t("div", F(p.value, {
351
- class: ["mir-link", [
352
- o.value,
353
- n.disabled ? "disabled" : "",
354
- u.value,
355
- n.arrow ? "link-arrow" : ""
356
- ]]
357
- }), [
358
- d(n.$slots, "default")
359
- ], 16)
360
- ]));
361
- }
362
- }), ot = (e) => (E("data-v-60c6ff7e"), e = e(), N(), e), lt = ["id", "name", "value", "checked", "disabled", "required"], st = ["for"], it = /* @__PURE__ */ ot(() => /* @__PURE__ */ t("span", { class: "radiomark" }, null, -1)), rt = /* @__PURE__ */ b({
363
- __name: "radio-button",
364
- props: {
365
- name: { default: "radio" },
366
- value: { type: [String, Number, Boolean], default: "value" },
367
- checked: { type: Boolean, default: !1 },
368
- disabled: { type: Boolean, default: !1 },
369
- id: { default: "radio" },
370
- required: { type: Boolean, default: !1 }
371
- },
372
- emits: ["input"],
373
- setup(e, { emit: a }) {
374
- const r = a, l = (o) => {
375
- const u = o.target;
376
- r("input", u.checked);
377
- };
378
- return (o, u) => (s(), i("div", {
379
- class: h(["radio__wrapper", o.disabled ? "disabled" : ""])
380
- }, [
381
- t("input", {
382
- id: o.id,
383
- type: "radio",
384
- name: o.name,
385
- value: o.value,
386
- checked: o.checked,
387
- disabled: o.disabled,
388
- required: o.required,
389
- class: "radio__radio",
390
- onChange: l
391
- }, null, 40, lt),
392
- t("label", {
393
- for: o.id,
394
- class: h(["radio__label", o.required ? "required" : ""])
395
- }, [
396
- it,
397
- d(o.$slots, "default", {}, void 0, !0)
398
- ], 10, st)
399
- ], 2));
400
- }
401
- }), nt = /* @__PURE__ */ g(rt, [["__scopeId", "data-v-60c6ff7e"]]), dt = { class: "select__wrapper" }, ct = ["for"], ut = ["id", "disabled", "name", "value"], _t = ["value"], ht = /* @__PURE__ */ b({
402
- __name: "select",
403
- props: {
404
- id: {},
405
- name: {},
406
- options: {},
407
- modelValue: {},
408
- label: {},
409
- required: { type: Boolean, default: !1 },
410
- disabled: { type: Boolean, default: !1 }
411
- },
412
- emits: ["update:modelValue"],
413
- setup(e) {
414
- return (a, r) => (s(), i("div", dt, [
415
- t("label", {
416
- for: a.id,
417
- class: h([a.required ? "required" : "", a.disabled ? "disabled" : ""])
418
- }, c(a.label), 11, ct),
419
- t("select", {
420
- id: a.id,
421
- class: h(a.disabled ? "disabled" : ""),
422
- disabled: a.disabled,
423
- name: a.name,
424
- value: a.modelValue,
425
- onChange: r[0] || (r[0] = (l) => {
426
- a.$emit("update:modelValue", l.target.value), l.target.blur();
427
- })
428
- }, [
429
- (s(!0), i(D, null, V(a.options, (l) => (s(), i("option", {
430
- key: l.value,
431
- value: l.value
432
- }, c(l.text), 9, _t))), 128))
433
- ], 42, ut)
434
- ]));
435
- }
436
- }), pt = /* @__PURE__ */ g(ht, [["__scopeId", "data-v-d5c46463"]]), mt = { class: "modal__wrapper" }, ft = /* @__PURE__ */ b({
437
- __name: "modal",
438
- props: {
439
- show: { type: Boolean, default: !1 },
440
- searchBar: { type: Boolean, default: !1 }
441
- },
442
- emits: ["update:show"],
443
- setup(e, { emit: a }) {
444
- const r = e, l = a, o = () => {
445
- l("update:show", !r.show);
446
- };
447
- return (u, p) => (s(), i("div", mt, [
448
- S(Ce, {
449
- duration: 300,
450
- name: "nested"
451
- }, {
452
- default: k(() => [
453
- U(t("dialog", {
454
- class: h(["overlay", u.searchBar ? "overlay-search" : "overlay-default"]),
455
- ariaLabel: "modal",
456
- role: "dialog",
457
- onClick: o
458
- }, [
459
- t("div", {
460
- id: "modal",
461
- class: h([u.searchBar ? "search" : ""]),
462
- onClick: p[0] || (p[0] = ue(() => {
463
- }, ["stop"]))
464
- }, [
465
- t("div", null, [
466
- u.searchBar ? _("", !0) : (s(), C(se, {
467
- key: 0,
468
- "aria-label": "close",
469
- variant: "close",
470
- onClick: o
471
- }))
472
- ]),
473
- d(u.$slots, "default", {}, void 0, !0)
474
- ], 2)
475
- ], 2), [
476
- [W, u.show]
477
- ])
478
- ]),
479
- _: 3
480
- })
481
- ]));
482
- }
483
- }), ge = /* @__PURE__ */ g(ft, [["__scopeId", "data-v-0c868c23"]]), vt = { class: "slider__wrapper" }, gt = { class: "slider__label" }, bt = ["for"], kt = ["aria-label"], yt = { class: "slider__content" }, $t = ["id", "name", "value", "min", "step", "max"], wt = { class: "modal-information" }, Bt = /* @__PURE__ */ b({
484
- __name: "slider",
485
- props: {
486
- label: {},
487
- id: {},
488
- name: {},
489
- modelValue: {},
490
- min: {},
491
- max: {},
492
- step: { default: "1" },
493
- variant: { default: "light" },
494
- information: { default: "" },
495
- informationLabel: { default: "Additional information" }
496
- },
497
- emits: ["update:modelValue"],
498
- setup(e, { emit: a }) {
499
- const r = e, l = a, o = I(r.modelValue), u = I(), p = I(!1), n = (f, y, A) => (f - y) / (A - y) * 100, v = (f) => {
500
- var y;
501
- (y = u.value) == null || y.style.setProperty("--ProgressPercent", `${f}%`);
502
- };
503
- return pe(() => {
504
- if (u.value) {
505
- l("update:modelValue", o.value);
506
- const f = n(o.value, r.min, r.max);
507
- let y = (50 - f) / 100;
508
- v(f + y);
509
- }
510
- }), (f, y) => (s(), i("div", null, [
511
- t("div", vt, [
512
- t("div", gt, [
513
- t("label", {
514
- for: f.id,
515
- class: h([f.variant, ""])
516
- }, c(f.label), 11, bt),
517
- f.information ? (s(), i("i", {
518
- key: 0,
519
- role: "button",
520
- class: h([f.variant, "slider__information"]),
521
- "aria-label": f.informationLabel,
522
- tabindex: "0",
523
- "aria-haspopup": "dialog",
524
- onClick: y[0] || (y[0] = (A) => p.value = !p.value),
525
- onKeyup: y[1] || (y[1] = Te((A) => p.value = !p.value, ["enter"]))
526
- }, null, 42, kt)) : _("", !0)
527
- ]),
528
- t("div", yt, [
529
- t("span", {
530
- class: h([f.variant, "slider__minmax"])
531
- }, c(f.min), 3),
532
- t("input", {
533
- id: f.id,
534
- ref_key: "slider",
535
- ref: u,
536
- type: "range",
537
- name: f.name,
538
- value: f.modelValue,
539
- min: f.min,
540
- step: f.step,
541
- max: f.max,
542
- class: h(f.variant),
543
- onInput: y[2] || (y[2] = ({ target: A }) => o.value = parseFloat(A.value))
544
- }, null, 42, $t),
545
- t("span", {
546
- class: h([f.variant, "slider__minmax"])
547
- }, c(f.max), 3)
548
- ]),
549
- t("span", {
550
- class: h([f.variant, "slider__value"])
551
- }, c(f.modelValue), 3)
552
- ]),
553
- f.information ? (s(), C(ge, {
554
- key: 0,
555
- show: p.value,
556
- "onUpdate:show": y[3] || (y[3] = (A) => p.value = A)
557
- }, {
558
- default: k(() => [
559
- t("p", wt, c(f.information), 1)
560
- ]),
561
- _: 1
562
- }, 8, ["show"])) : _("", !0)
563
- ]));
564
- }
565
- }), St = /* @__PURE__ */ g(Bt, [["__scopeId", "data-v-24a83011"]]), It = { class: "textarea-wrapper" }, Ct = ["for"], Tt = ["id", "name", "placeholder", "required", "disabled", "maxlength", "value"], qt = { class: "textarea-info" }, Lt = { key: 0 }, At = /* @__PURE__ */ b({
566
- __name: "textarea",
567
- props: {
568
- id: { default: "" },
569
- name: { default: "" },
570
- placeholder: { default: "" },
571
- required: { type: Boolean, default: !1 },
572
- disabled: { type: Boolean, default: !1 },
573
- labelText: { default: "" },
574
- maxLength: { default: void 0 },
575
- modelValue: { default: void 0 }
576
- },
577
- emits: ["update:modelValue"],
578
- setup(e) {
579
- return (a, r) => (s(), i("div", It, [
580
- t("label", {
581
- for: a.id,
582
- class: h({ required: a.required })
583
- }, c(a.labelText) + c(a.required ? " *" : ""), 11, Ct),
584
- t("div", {
585
- class: h(
586
- a.modelValue !== void 0 && a.modelValue.length === a.maxLength ? "textarea-wrapper__inner" : ""
587
- )
588
- }, [
589
- t("textarea", {
590
- id: a.id,
591
- rows: "10",
592
- cols: "50",
593
- name: a.name,
594
- placeholder: a.placeholder,
595
- required: a.required,
596
- disabled: a.disabled,
597
- maxlength: a.maxLength,
598
- value: a.modelValue,
599
- class: h(
600
- a.modelValue !== void 0 && a.modelValue.length === a.maxLength ? "reached-meter-limit" : "border"
601
- ),
602
- onInput: r[0] || (r[0] = (l) => a.$emit("update:modelValue", l.target.value))
603
- }, null, 42, Tt)
604
- ], 2),
605
- t("div", qt, [
606
- t("div", null, [
607
- a.modelValue !== void 0 && a.modelValue.length === a.maxLength ? (s(), i("p", Lt, " Too many characters. Please make it shorter ")) : _("", !0)
608
- ]),
609
- t("p", {
610
- class: h(
611
- a.modelValue !== void 0 && a.modelValue.length === a.maxLength ? "reached-meter-limit-meter" : ""
612
- )
613
- }, c(a.maxLength !== void 0 && a.modelValue !== void 0 && a.maxLength - a.modelValue.length >= 0 ? a.modelValue.length : 0) + " / " + c(a.maxLength), 3)
614
- ])
615
- ]));
616
- }
617
- }), Dt = /* @__PURE__ */ g(At, [["__scopeId", "data-v-7ecd7bf5"]]), Vt = { class: "text-field__wrapper" }, Pt = ["for"], Ft = { key: 0 }, Mt = ["id", "type", "value", "placeholder", "required", "disabled", "name"], Ot = ["aria-expanded"], zt = ["id", "type", "value", "placeholder", "required", "disabled", "name"], Ht = {
618
- key: 2,
619
- class: "search"
620
- }, Rt = {
621
- key: 3,
622
- class: "errorMessage"
623
- }, Et = {
624
- key: 4,
625
- class: "helperText"
626
- }, Nt = /* @__PURE__ */ b({
627
- __name: "text-field",
628
- props: {
629
- type: { default: "text" },
630
- fieldName: { default: "" },
631
- modelValue: {},
632
- placeholder: { default: "" },
633
- label: { default: "" },
634
- id: {},
635
- disabled: { type: Boolean, default: !1 },
636
- required: { type: Boolean, default: !1 },
637
- invalid: { type: Boolean, default: !1 },
638
- errorMessage: { default: "" },
639
- helperText: { default: "" },
640
- search: { type: Boolean, default: !1 },
641
- valid: { type: Boolean, default: !1 }
642
- },
643
- emits: ["update:modelValue"],
644
- setup(e) {
645
- const a = {
646
- text: "text",
647
- email: "email",
648
- password: "password",
649
- number: "number",
650
- tel: "tel",
651
- url: "url",
652
- search: "search"
653
- }, r = e, l = T(() => a[r.type]), o = I(!0), u = T(
654
- () => o.value ? "showPassword" : "hidePassword"
655
- ), p = T(
656
- () => o.value ? "password" : "text"
657
- );
658
- return (n, v) => (s(), i("div", Vt, [
659
- t("label", {
660
- for: n.id,
661
- class: h([
662
- n.required ? "required" : "",
663
- n.disabled ? "disabled" : "",
664
- n.search ? "search" : ""
665
- ])
666
- }, c(n.label), 11, Pt),
667
- l.value === "password" ? (s(), i("div", Ft, [
668
- t("input", {
669
- id: n.id,
670
- ref: "passwordField",
671
- type: p.value,
672
- value: n.modelValue,
673
- placeholder: n.placeholder,
674
- required: n.required,
675
- disabled: n.disabled,
676
- name: n.fieldName,
677
- onInput: v[0] || (v[0] = (f) => n.$emit("update:modelValue", f.target.value))
678
- }, null, 40, Mt),
679
- t("i", {
680
- role: "button",
681
- class: h([u.value]),
682
- "aria-controls": "password",
683
- "aria-expanded": !o.value,
684
- onClick: v[1] || (v[1] = (f) => o.value = !o.value)
685
- }, null, 10, Ot)
686
- ])) : (s(), i("input", {
687
- key: 1,
688
- id: n.id,
689
- ref: "textField",
690
- type: l.value,
691
- value: n.modelValue,
692
- placeholder: n.placeholder,
693
- required: n.required,
694
- class: h([
695
- n.invalid ? "invalid" : "",
696
- n.valid ? "valid" : "",
697
- n.search ? "search" : ""
698
- ]),
699
- disabled: n.disabled,
700
- name: n.fieldName,
701
- onInput: v[2] || (v[2] = (f) => n.$emit("update:modelValue", f.target.value))
702
- }, null, 42, zt)),
703
- n.search ? (s(), i("button", Ht)) : _("", !0),
704
- n.errorMessage ? (s(), i("strong", Rt, c(n.errorMessage), 1)) : _("", !0),
705
- n.helperText ? (s(), i("span", Et, c(n.helperText), 1)) : _("", !0)
706
- ]));
707
- }
708
- }), jt = /* @__PURE__ */ g(Nt, [["__scopeId", "data-v-1d92973b"]]), Ut = { class: "video__wrapper" }, Gt = ["aria-label", "controls", "poster", "width", "height", "autoplay", "loop", "muted", "src"], Kt = ["src", "aria-label", "title", "width", "height"], Jt = /* @__PURE__ */ b({
709
- __name: "video",
710
- props: {
711
- play: { type: Boolean, default: !1 },
712
- src: {},
713
- localVideo: { type: Boolean, default: !1 },
714
- ariaLabel: { default: "" },
715
- title: { default: "" },
716
- controls: { type: Boolean, default: !0 },
717
- poster: { default: "" },
718
- width: { default: "100%" },
719
- height: { default: "auto" },
720
- autoplay: { type: Boolean, default: !1 },
721
- loop: { type: Boolean, default: !1 },
722
- muted: { type: Boolean, default: !1 }
723
- },
724
- setup(e, { expose: a }) {
725
- const r = e;
726
- let l = I(null);
727
- return pe(() => {
728
- l.value && (r.play ? l.value.play() : r.play || l.value.pause());
729
- }), a({
730
- resetVideo: () => {
731
- l.value && (l.value.currentTime = 0, l.value.play());
732
- }
733
- }), (u, p) => (s(), i("div", Ut, [
734
- u.localVideo ? (s(), i("video", {
735
- key: 0,
736
- ref_key: "videoRef",
737
- ref: l,
738
- "aria-label": u.ariaLabel,
739
- controls: u.controls,
740
- poster: u.poster,
741
- width: u.width,
742
- height: u.height,
743
- autoplay: u.autoplay,
744
- loop: u.loop,
745
- muted: u.muted,
746
- type: "video/mp4",
747
- playsinline: "",
748
- src: u.src
749
- }, null, 8, Gt)) : (s(), i("iframe", {
750
- key: 1,
751
- src: u.src,
752
- "aria-label": u.ariaLabel,
753
- title: u.title,
754
- width: u.width,
755
- height: u.height,
756
- frameborder: "0",
757
- allow: "autoplay; fullscreen",
758
- allowfullscreen: ""
759
- }, null, 8, Kt))
760
- ]));
761
- }
762
- }), te = /* @__PURE__ */ g(Jt, [["__scopeId", "data-v-c6a0feb6"]]), Wt = { class: "address__wrapper" }, Yt = { class: "address__content" }, Qt = { class: "address__flag" }, Zt = { class: "address__address" }, Xt = { class: "address__name" }, xt = { key: 0 }, ea = { class: "address__contact" }, ta = ["href"], aa = ["href"], oa = ["href"], la = /* @__PURE__ */ b({
763
- __name: "address",
764
- props: {
765
- name: {},
766
- company: {},
767
- addressLine1: {},
768
- addressLine2: {},
769
- addressLine3: { default: void 0 },
770
- website: { default: void 0 },
771
- phoneNumbers: {},
772
- email: {}
773
- },
774
- setup(e) {
775
- return (a, r) => (s(), i("div", Wt, [
776
- t("div", Yt, [
777
- t("div", Qt, [
778
- d(a.$slots, "address-flag", {}, void 0, !0)
779
- ]),
780
- t("div", Zt, [
781
- t("p", Xt, c(a.name), 1),
782
- t("p", null, c(a.company), 1),
783
- t("p", null, c(a.addressLine1), 1),
784
- t("p", null, c(a.addressLine2), 1),
785
- a.addressLine3 ? (s(), i("p", xt, c(a.addressLine3), 1)) : _("", !0)
786
- ]),
787
- t("div", ea, [
788
- a.website ? (s(), C(L, {
789
- key: 0,
790
- underline: "false",
791
- "link-type": "regular"
792
- }, {
793
- default: k(() => [
794
- t("a", {
795
- href: "https://" + a.website,
796
- class: "address__website"
797
- }, c(a.website), 9, ta)
798
- ]),
799
- _: 1
800
- })) : _("", !0),
801
- (s(!0), i(D, null, V(a.phoneNumbers, (l) => (s(), C(L, {
802
- key: l,
803
- underline: "false",
804
- "link-type": "regular"
805
- }, {
806
- default: k(() => [
807
- t("a", {
808
- href: "tel:" + l,
809
- class: "address__phone"
810
- }, c(l), 9, aa)
811
- ]),
812
- _: 2
813
- }, 1024))), 128)),
814
- t("a", {
815
- href: "mailto:" + a.email,
816
- class: "address__email"
817
- }, c(a.email), 9, oa)
818
- ])
819
- ])
820
- ]));
821
- }
822
- }), sa = /* @__PURE__ */ g(la, [["__scopeId", "data-v-6f5f6a44"]]), ia = (e) => (E("data-v-a44fd57d"), e = e(), N(), e), ra = { class: "bullet-list__wrapper" }, na = /* @__PURE__ */ ia(() => /* @__PURE__ */ t("i", { class: "checkmark" }, null, -1)), da = /* @__PURE__ */ b({
823
- __name: "bullet-list",
824
- props: {
825
- list: {
826
- type: Array,
827
- required: !0,
828
- validator(e) {
829
- return e.length <= 5;
830
- }
831
- },
832
- variant: {
833
- type: String,
834
- required: !1,
835
- default: "light",
836
- validator(e) {
837
- return ["light"].includes(e);
838
- }
839
- }
840
- },
841
- setup(e) {
842
- return (a, r) => (s(), i("div", ra, [
843
- t("div", {
844
- class: h(["bullet-list", e.variant])
845
- }, [
846
- t("ul", null, [
847
- (s(!0), i(D, null, V(e.list, (l) => (s(), i("li", { key: l }, [
848
- na,
849
- Y(" " + c(l), 1)
850
- ]))), 128))
851
- ])
852
- ], 2)
853
- ]));
854
- }
855
- }), ca = /* @__PURE__ */ g(da, [["__scopeId", "data-v-a44fd57d"]]), ua = { class: "card__wrapper" }, _a = { key: 2 }, ha = { key: 5 }, pa = /* @__PURE__ */ b({
856
- __name: "card",
857
- props: {
858
- variant: { default: "product" },
859
- theme: { default: "light" },
860
- linkType: { default: "link" },
861
- headline: { default: "" },
862
- paragraph: { default: "" },
863
- size: { default: "small" },
864
- mediaType: { default: "image" },
865
- orientation: { default: "horizontal" },
866
- srcSet: { default: "" },
867
- url: { default: "" },
868
- imgSrc: { default: "" },
869
- videoSrc: { default: "" },
870
- arialabel: { default: "" },
871
- poster: { default: "" },
872
- labelText: { default: "" },
873
- alt: { default: "" }
874
- },
875
- emits: ["clicked"],
876
- setup(e) {
877
- const a = qe();
878
- let r = I(!1);
879
- const l = {
880
- xsmall: {
881
- class: "card--xsmall",
882
- width: "241",
883
- height: "135"
884
- },
885
- small: {
886
- class: "card--small",
887
- width: "298",
888
- height: "186"
889
- },
890
- medium: {
891
- class: "card--medium",
892
- width: "432",
893
- height: "243"
894
- },
895
- large: {
896
- class: "card--large",
897
- width: "596",
898
- height: "335"
899
- }
900
- }, o = e, u = T(() => l[o.size]), p = T(() => o.variant === "article" || o.variant === "product" ? `card--${o.size}-${o.variant}` : `card--${o.variant}`);
901
- return (n, v) => (s(), i("div", ua, [
902
- t("div", {
903
- class: h(["card", [
904
- n.theme === "dark" ? "card--dark" : "card--light",
905
- n.orientation === "vertical" ? "vertical" : "horizontal",
906
- u.value.class,
907
- p.value,
908
- n.variant === "product" ? "card--product" : "card--article"
909
- ]]),
910
- style: Q([n.variant === "product" ? "font-weight: 700" : "font-weight: 300"]),
911
- onMouseover: v[0] || (v[0] = (f) => x(r) ? r.value = !0 : r = !0),
912
- onMouseout: v[1] || (v[1] = (f) => x(r) ? r.value = !1 : r = !1),
913
- onFocus: v[2] || (v[2] = (f) => x(r) ? r.value = !0 : r = !0),
914
- onBlur: v[3] || (v[3] = (f) => x(r) ? r.value = !1 : r = !1)
915
- }, [
916
- n.mediaType === "image" ? (s(), C(M, { key: 0 }, {
917
- default: k(() => [
918
- d(n.$slots, "card-image", F({
919
- src: n.imgSrc,
920
- width: "596",
921
- height: "335",
922
- alt: n.alt,
923
- loading: "auto",
924
- sizes: "(min-width: 581px) 582px, 100vw"
925
- }, { srcset: n.srcSet }))
926
- ]),
927
- _: 3
928
- })) : (s(), i("div", {
929
- key: 1,
930
- class: h(["video-card__wrapper", $(r) === !0 ? "vimeoPlaying" : ""])
931
- }, [
932
- S(te, {
933
- play: $(r),
934
- "local-video": !0,
935
- src: n.videoSrc,
936
- "aria-label": n.arialabel,
937
- controls: !1,
938
- poster: n.imgSrc,
939
- width: u.value.width,
940
- height: u.value.height,
941
- autoplay: !0,
942
- loop: !0,
943
- muted: !0
944
- }, null, 8, ["play", "src", "aria-label", "poster", "width", "height"])
945
- ], 2)),
946
- $(a)["card-label"] ? (s(), i("div", _a, [
947
- d(n.$slots, "card-label")
948
- ])) : _("", !0),
949
- n.variant === "product" ? (s(), i("div", {
950
- key: 3,
951
- class: h([
952
- "card__headline",
953
- n.theme === "dark" ? "regular-dark" : "regular-blue"
954
- ]),
955
- style: { "font-weight": "700" }
956
- }, c(n.headline), 3)) : (s(), i("div", {
957
- key: 4,
958
- class: h([
959
- "card__headline",
960
- n.theme === "dark" ? "regular-dark" : "regular-dark-blue"
961
- ])
962
- }, c(n.headline), 3)),
963
- n.variant === "product" ? (s(), i("p", ha, c(n.paragraph), 1)) : _("", !0)
964
- ], 38)
965
- ]));
966
- }
967
- }), ma = /* @__PURE__ */ g(pa, [["__scopeId", "data-v-364d219c"]]), fa = { class: "column-card__content" }, va = { class: "column-card__headline" }, ga = { class: "column-card__bodytext" }, ba = /* @__PURE__ */ b({
968
- __name: "column-card",
969
- props: {
970
- headline: {},
971
- bodytext: {},
972
- image: {},
973
- imageFit: { type: Boolean },
974
- bgColor: { default: "white" },
975
- linkText: { default: "" },
976
- linkType: { default: "link" }
977
- },
978
- setup(e) {
979
- const a = {
980
- white: "",
981
- light: "column__wrapper--light",
982
- dark: "column__wrapper--dark mirsaic--dark"
983
- }, r = e, l = T(
984
- () => a[r.bgColor || "white"]
985
- );
986
- return (o, u) => (s(), i("div", {
987
- class: h(["column-card", l.value])
988
- }, [
989
- t("div", fa, [
990
- o.image.filename ? (s(), i("div", {
991
- key: 0,
992
- class: h(["column-card__image", { cover: o.imageFit, contain: !o.imageFit }])
993
- }, [
994
- d(o.$slots, "column-card-image", H(R({
995
- src: o.image.filename,
996
- alt: o.image.alt
997
- })), void 0, !0)
998
- ], 2)) : _("", !0),
999
- t("h3", va, c(o.headline), 1),
1000
- t("div", ga, [
1001
- d(o.$slots, "column-card-body", {}, void 0, !0)
1002
- ]),
1003
- o.linkType === "link" ? (s(), C(L, {
1004
- key: 1,
1005
- "link-type": o.bgColor === "dark" ? "regular_dark" : (o.bgColor === "light", "regular_light"),
1006
- arrow: ""
1007
- }, {
1008
- default: k(() => [
1009
- d(o.$slots, "column-link", {}, void 0, !0)
1010
- ]),
1011
- _: 3
1012
- }, 8, ["link-type"])) : _("", !0)
1013
- ])
1014
- ], 2));
1015
- }
1016
- }), be = /* @__PURE__ */ g(ba, [["__scopeId", "data-v-a505d05e"]]), ka = (e) => (E("data-v-e4a362a9"), e = e(), N(), e), ya = { class: "event__wrapper" }, $a = { class: "event__headline" }, wa = { class: "event__date-location" }, Ba = /* @__PURE__ */ ka(() => /* @__PURE__ */ t("br", null, null, -1)), Sa = {
1017
- key: 0,
1018
- class: "event__info"
1019
- }, Ia = { class: "event__exhibitor" }, Ca = /* @__PURE__ */ b({
1020
- __name: "event-card",
1021
- props: {
1022
- eventType: {
1023
- type: String,
1024
- required: !0
1025
- },
1026
- headline: {
1027
- type: String,
1028
- required: !0
1029
- },
1030
- dateTime: {
1031
- type: String,
1032
- required: !0
1033
- },
1034
- location: {
1035
- type: String,
1036
- required: !0
1037
- },
1038
- exhibitor: {
1039
- type: String,
1040
- required: !0
1041
- },
1042
- info: {
1043
- type: String,
1044
- required: !1,
1045
- default: null
1046
- }
1047
- },
1048
- setup(e) {
1049
- return (a, r) => (s(), i("div", ya, [
1050
- S(ee, {
1051
- "label-dark": !1,
1052
- text: e.eventType ? e.eventType : ""
1053
- }, null, 8, ["text"]),
1054
- t("div", $a, c(e.headline), 1),
1055
- t("div", wa, [
1056
- Y(c(e.dateTime) + " ", 1),
1057
- Ba,
1058
- e.info ? (s(), i("div", Sa, c(e.info), 1)) : _("", !0),
1059
- Y(" " + c(e.location), 1)
1060
- ]),
1061
- t("div", Ia, c(e.exhibitor), 1)
1062
- ]));
1063
- }
1064
- }), Ta = /* @__PURE__ */ g(Ca, [["__scopeId", "data-v-e4a362a9"]]), ie = (e) => (E("data-v-93ee37aa"), e = e(), N(), e), qa = { class: "flashcard-side flashcard-front" }, La = {
1065
- key: 0,
1066
- class: "content"
1067
- }, Aa = { key: 0 }, Da = {
1068
- key: 1,
1069
- class: "flashcard-body"
1070
- }, Va = /* @__PURE__ */ ie(() => /* @__PURE__ */ t("img", {
1071
- class: "flip-icon",
1072
- src: "https://a.storyblok.com/f/230581/22x21/23d87eccc4/icon_reverse_blue.svg"
1073
- }, null, -1)), Pa = /* @__PURE__ */ ie(() => /* @__PURE__ */ t("img", {
1074
- class: "flip-icon",
1075
- src: "https://a.storyblok.com/f/230581/22x21/23d87eccc4/icon_reverse_blue.svg"
1076
- }, null, -1)), Fa = {
1077
- key: 0,
1078
- class: "content"
1079
- }, Ma = { key: 0 }, Oa = {
1080
- key: 1,
1081
- class: "flashcard-body"
1082
- }, za = /* @__PURE__ */ ie(() => /* @__PURE__ */ t("img", {
1083
- class: "flip-icon",
1084
- src: "https://a.storyblok.com/f/230581/22x22/50edea5341/icon_reverse_white.svg"
1085
- }, null, -1)), Ha = /* @__PURE__ */ ie(() => /* @__PURE__ */ t("img", {
1086
- class: "flip-icon",
1087
- src: "https://a.storyblok.com/f/230581/22x22/50edea5341/icon_reverse_white.svg"
1088
- }, null, -1)), Ra = /* @__PURE__ */ b({
1089
- __name: "flashcard",
1090
- props: {
1091
- name: {},
1092
- bodytext: {},
1093
- image: {},
1094
- namebackside: {},
1095
- bodytextbackside: {},
1096
- imagebackside: {},
1097
- size: {},
1098
- imageFit: { type: Boolean },
1099
- imageFitBack: { type: Boolean }
1100
- },
1101
- setup(e) {
1102
- const a = I(!1);
1103
- function r() {
1104
- a.value = !a.value;
1105
- }
1106
- return (l, o) => {
1107
- var u, p, n, v, f, y;
1108
- return s(), i("div", {
1109
- class: "flashcard-container",
1110
- onClick: r
1111
- }, [
1112
- t("div", {
1113
- class: h(["flashcard", {
1114
- flipped: a.value,
1115
- "flashcard--sm": l.size === "sm",
1116
- "flashcard--md": l.size === "md",
1117
- "flashcard--lg": l.size === "lg"
1118
- }])
1119
- }, [
1120
- t("div", qa, [
1121
- l.name || ((u = l.bodytext) == null ? void 0 : u.length) > 0 ? (s(), i("div", La, [
1122
- l.name ? (s(), i("h3", Aa, c(l.name), 1)) : _("", !0),
1123
- l.bodytext ? (s(), i("div", Da, [
1124
- d(l.$slots, "flashcard-front-body", H(R({ bodytext: l.bodytext })), void 0, !0)
1125
- ])) : _("", !0),
1126
- Va
1127
- ])) : (s(), i("div", {
1128
- key: 1,
1129
- class: h(["flashcard-image", {
1130
- contain: l.imageFit,
1131
- cover: !l.imageFit
1132
- }])
1133
- }, [
1134
- d(l.$slots, "flashcard-front-image", H(R({ src: (p = l.image) == null ? void 0 : p.filename, alt: (n = l.image) == null ? void 0 : n.alt })), void 0, !0),
1135
- Pa
1136
- ], 2))
1137
- ]),
1138
- t("div", {
1139
- class: h([
1140
- "flashcard-side flashcard-back",
1141
- (v = l.imagebackside) != null && v.filename ? "flashcard-back--image" : "flashcard-back--no-image"
1142
- ])
1143
- }, [
1144
- l.namebackside || l.bodytextbackside.length > 0 ? (s(), i("div", Fa, [
1145
- l.namebackside ? (s(), i("h3", Ma, c(l.namebackside), 1)) : _("", !0),
1146
- l.bodytextbackside ? (s(), i("div", Oa, [
1147
- d(l.$slots, "flashcard-back-body", H(R({ bodytextbackside: l.bodytextbackside })), void 0, !0)
1148
- ])) : _("", !0),
1149
- za
1150
- ])) : (s(), i("div", {
1151
- key: 1,
1152
- class: h(["flashcard-image", {
1153
- contain: l.imageFitBack,
1154
- cover: !l.imageFitBack
1155
- }])
1156
- }, [
1157
- d(l.$slots, "flashcard-back-image", H(R({ src: (f = l.imagebackside) == null ? void 0 : f.filename, alt: (y = l.imagebackside) == null ? void 0 : y.alt })), void 0, !0),
1158
- Ha
1159
- ], 2))
1160
- ], 2)
1161
- ], 2)
1162
- ]);
1163
- };
1164
- }
1165
- }), ke = /* @__PURE__ */ g(Ra, [["__scopeId", "data-v-93ee37aa"]]), Ea = { class: "text__wrapper" }, Na = { class: "text__headline" }, ja = { class: "text__paragraph" }, Ua = /* @__PURE__ */ b({
1166
- __name: "text-card",
1167
- props: {
1168
- label: {
1169
- type: String,
1170
- required: !0
1171
- },
1172
- headline: {
1173
- type: String,
1174
- required: !0
1175
- },
1176
- paragraph: {
1177
- type: String,
1178
- required: !0
1179
- }
1180
- },
1181
- setup(e) {
1182
- return (a, r) => (s(), i("div", Ea, [
1183
- S(ee, {
1184
- "label-dark": !1,
1185
- text: e.label ? e.label : ""
1186
- }, null, 8, ["text"]),
1187
- t("div", Na, c(e.headline), 1),
1188
- t("div", ja, [
1189
- t("p", null, c(e.paragraph), 1)
1190
- ])
1191
- ]));
1192
- }
1193
- }), Ga = /* @__PURE__ */ g(Ua, [["__scopeId", "data-v-ebdea819"]]), Ka = { class: "accordions" }, Ja = { class: "accordions__wrapper" }, Wa = { class: "accordion" }, Ya = ["onClick"], Qa = { class: "accordion__headline" }, Za = { class: "accordion__icon" }, Xa = {
1194
- key: 0,
1195
- src: "https://a.storyblok.com/f/230581/21x21/42c9c3b5ba/icon_add.svg"
1196
- }, xa = {
1197
- key: 1,
1198
- src: "https://a.storyblok.com/f/230581/22x21/adfe5d1742/icon_substract.svg"
1199
- }, eo = { class: "accordion__bodytext" }, to = /* @__PURE__ */ b({
1200
- __name: "accordion",
1201
- props: {
1202
- accordions: {}
1203
- },
1204
- setup(e) {
1205
- const a = I([]), r = (o) => {
1206
- const u = a.value.indexOf(o);
1207
- u > -1 ? a.value.splice(u, 1) : a.value.push(o);
1208
- }, l = (o) => a.value.includes(o);
1209
- return (o, u) => (s(), i("section", Ka, [
1210
- t("div", Ja, [
1211
- (s(!0), i(D, null, V(o.accordions, (p) => (s(), i("div", {
1212
- key: p._uid
1213
- }, [
1214
- t("div", Wa, [
1215
- t("div", {
1216
- class: "accordion__header",
1217
- onClick: (n) => r(p._uid)
1218
- }, [
1219
- t("h3", Qa, c(p.headline), 1),
1220
- t("span", Za, [
1221
- l(p._uid) ? (s(), i("img", xa)) : (s(), i("img", Xa))
1222
- ])
1223
- ], 8, Ya),
1224
- t("div", {
1225
- class: h(["accordion__content", { "accordion__content--reverse": p.imageFirst }]),
1226
- style: Q({
1227
- display: l(p._uid) ? "flex" : "none"
1228
- })
1229
- }, [
1230
- t("div", eo, [
1231
- d(o.$slots, "accordion-body", F({ ref_for: !0 }, { body: p.bodytext }), void 0, !0)
1232
- ]),
1233
- S(M, null, {
1234
- default: k(() => [
1235
- p.image ? d(o.$slots, "accordion-image", F({
1236
- key: 0,
1237
- ref_for: !0
1238
- }, {
1239
- src: p.image.filename,
1240
- alt: p.image.alt,
1241
- class: "accordion__image"
1242
- }), void 0, !0) : _("", !0)
1243
- ]),
1244
- _: 2
1245
- }, 1024)
1246
- ], 6)
1247
- ])
1248
- ]))), 128))
1249
- ])
1250
- ]));
1251
- }
1252
- }), ao = /* @__PURE__ */ g(to, [["__scopeId", "data-v-0e6f6da8"]]), oo = {
1253
- key: 0,
1254
- class: "card__content"
1255
- }, lo = { key: 0 }, so = { key: 1 }, io = { class: "card__cards" }, ro = /* @__PURE__ */ b({
1256
- __name: "card-display",
1257
- props: {
1258
- headline: {
1259
- type: String,
1260
- default: ""
1261
- },
1262
- paragraph: {
1263
- type: String,
1264
- default: ""
1265
- },
1266
- bgColor: {
1267
- type: String,
1268
- default: "white"
1269
- },
1270
- isBlock: {
1271
- type: Boolean,
1272
- default: !0
1273
- }
1274
- },
1275
- setup(e) {
1276
- return (a, r) => (s(), i("div", {
1277
- class: h([
1278
- "card-display",
1279
- e.bgColor === "blue" ? "card-display--blue" : "card-display--white"
1280
- ])
1281
- }, [
1282
- t("div", {
1283
- class: h([
1284
- "card-display__wrapper",
1285
- e.isBlock ? "card-display__wrapper--block" : "card-display__wrapper--inline"
1286
- ])
1287
- }, [
1288
- e.headline || e.paragraph ? (s(), i("div", oo, [
1289
- e.headline ? (s(), i("h2", lo, c(e.headline), 1)) : _("", !0),
1290
- e.paragraph ? (s(), i("p", so, c(e.paragraph), 1)) : _("", !0)
1291
- ])) : _("", !0),
1292
- t("div", io, [
1293
- d(a.$slots, "card-display-cards", {}, void 0, !0)
1294
- ])
1295
- ], 2)
1296
- ], 2));
1297
- }
1298
- }), no = /* @__PURE__ */ g(ro, [["__scopeId", "data-v-659726bd"]]), co = { class: "column-grid__top-section" }, uo = {
1299
- key: 0,
1300
- class: "column-grid__headline"
1301
- }, _o = {
1302
- key: 1,
1303
- class: "column-grid__bodytext"
1304
- }, ho = { class: "column-grid__teaser-list" }, po = /* @__PURE__ */ b({
1305
- __name: "column-grid",
1306
- props: {
1307
- headline: { default: "" },
1308
- bgColor: {},
1309
- bodytext: { default: "" },
1310
- linkText: { default: "" },
1311
- linkType: { default: "link" },
1312
- columns: {}
1313
- },
1314
- setup(e) {
1315
- return (a, r) => (s(), i("div", {
1316
- class: h([
1317
- "column-grid",
1318
- a.bgColor === "dark" ? "column-grid--dark" : a.bgColor === "light" ? "column-grid--light" : "column-grid--white"
1319
- ])
1320
- }, [
1321
- t("div", co, [
1322
- a.headline ? (s(), i("h2", uo, c(a.headline), 1)) : _("", !0),
1323
- a.bodytext ? (s(), i("div", _o, [
1324
- d(a.$slots, "column-grid-body", {}, void 0, !0),
1325
- a.linkType === "link" ? (s(), C(L, {
1326
- key: 0,
1327
- "link-type": a.bgColor === "dark" ? "regular_dark" : (a.bgColor === "light", "regular_light"),
1328
- arrow: ""
1329
- }, {
1330
- default: k(() => [
1331
- d(a.$slots, "column-grid-body-link", {}, void 0, !0)
1332
- ]),
1333
- _: 3
1334
- }, 8, ["link-type"])) : _("", !0)
1335
- ])) : _("", !0)
1336
- ]),
1337
- t("div", ho, [
1338
- (s(!0), i(D, null, V(a.columns, (l) => (s(), C(be, {
1339
- key: l._uid,
1340
- headline: l.headline,
1341
- bodytext: l.bodytext,
1342
- link: l.link,
1343
- "link-text": l.linkText,
1344
- image: l.image,
1345
- "image-fit": l.imageFit
1346
- }, {
1347
- "column-card-body": k(() => [
1348
- d(a.$slots, "column-card-body", F({ ref_for: !0 }, { body: l.bodytext }), void 0, !0)
1349
- ]),
1350
- "column-link": k(() => [
1351
- d(a.$slots, "column-link", F({ ref_for: !0 }, {
1352
- link: l.link,
1353
- linkText: l.linkText
1354
- }), void 0, !0)
1355
- ]),
1356
- "column-card-image": k(() => [
1357
- l.image ? d(a.$slots, "column-card-image", F({
1358
- key: 0,
1359
- ref_for: !0
1360
- }, {
1361
- src: l.image.filename,
1362
- alt: l.image.alt,
1363
- style: { "object-fit": l.imageFit ? "cover" : "contain" }
1364
- }), void 0, !0) : _("", !0)
1365
- ]),
1366
- _: 2
1367
- }, 1032, ["headline", "bodytext", "link", "link-text", "image", "image-fit"]))), 128))
1368
- ])
1369
- ], 2));
1370
- }
1371
- }), mo = /* @__PURE__ */ g(po, [["__scopeId", "data-v-d27098ae"]]), fo = { class: "facts__wrapper" }, vo = { class: "facts__content" }, go = { class: "facts__headline" }, bo = { class: "facts" }, ko = { class: "fact__value" }, yo = { class: "fact__metric" }, $o = {
1372
- key: 0,
1373
- class: "facts__link"
1374
- }, wo = /* @__PURE__ */ b({
1375
- __name: "facts",
1376
- props: {
1377
- headline: { default: "" },
1378
- facts: { default: () => [
1379
- {
1380
- value: "",
1381
- metric: ""
1382
- },
1383
- {
1384
- value: "",
1385
- metric: ""
1386
- },
1387
- {
1388
- value: "",
1389
- metric: ""
1390
- }
1391
- ] },
1392
- link: { default: () => ({
1393
- title: "",
1394
- url: ""
1395
- }) }
1396
- },
1397
- setup(e) {
1398
- return (a, r) => (s(), i("div", fo, [
1399
- t("div", vo, [
1400
- t("h2", go, c(a.headline), 1),
1401
- t("div", bo, [
1402
- (s(!0), i(D, null, V(a.facts, (l) => (s(), i("div", {
1403
- key: l.value + l.metric,
1404
- class: "fact"
1405
- }, [
1406
- t("div", ko, [
1407
- t("span", null, c(l.value), 1)
1408
- ]),
1409
- t("div", yo, [
1410
- t("span", null, c(l.metric), 1)
1411
- ])
1412
- ]))), 128))
1413
- ]),
1414
- a.link ? (s(), i("div", $o, [
1415
- S(L, {
1416
- "link-type": "regular_light",
1417
- arrow: ""
1418
- }, {
1419
- default: k(() => [
1420
- d(a.$slots, "facts-link", {}, void 0, !0)
1421
- ]),
1422
- _: 3
1423
- })
1424
- ])) : _("", !0)
1425
- ])
1426
- ]));
1427
- }
1428
- }), Bo = /* @__PURE__ */ g(wo, [["__scopeId", "data-v-d2b231d4"]]), So = { class: "features__wrapper" }, Io = { class: "features__content" }, Co = {
1429
- key: 0,
1430
- class: "features__headline"
1431
- }, To = {
1432
- key: 1,
1433
- class: "features__body"
1434
- }, qo = { class: "element__headline" }, Lo = { class: "element__body" }, Ao = /* @__PURE__ */ b({
1435
- __name: "features",
1436
- props: {
1437
- headline: { default: "" },
1438
- hasBody: { type: Boolean },
1439
- elements: { default: () => [] }
1440
- },
1441
- setup(e) {
1442
- return (a, r) => (s(), i("div", So, [
1443
- t("div", Io, [
1444
- a.headline ? (s(), i("div", Co, [
1445
- t("h2", null, c(a.headline), 1)
1446
- ])) : _("", !0),
1447
- a.hasBody ? (s(), i("div", To, [
1448
- d(a.$slots, "features-body", {}, void 0, !0)
1449
- ])) : _("", !0),
1450
- t("div", {
1451
- class: h(["features__elements", [a.elements.length === 6 ? "features__elements--grid-6" : ""]])
1452
- }, [
1453
- (s(!0), i(D, null, V(a.elements, (l) => (s(), i("div", {
1454
- key: l.headline,
1455
- class: "features__element"
1456
- }, [
1457
- S(M, { class: "element__icon" }, {
1458
- default: k(() => [
1459
- d(a.$slots, "features-icon", F({ ref_for: !0 }, {
1460
- src: l.icon.src,
1461
- height: 30,
1462
- width: 30,
1463
- alt: l.icon.alt
1464
- }), void 0, !0)
1465
- ]),
1466
- _: 2
1467
- }, 1024),
1468
- t("p", qo, c(l.headline), 1),
1469
- t("p", Lo, c(l.body), 1),
1470
- l.link && l.linkText ? (s(), C(L, {
1471
- key: 0,
1472
- "link-type": "regular_light",
1473
- arrow: ""
1474
- }, {
1475
- default: k(() => [
1476
- d(a.$slots, "feature-link", F({ ref_for: !0 }, { link: l.link, linkText: l.linkText }), void 0, !0)
1477
- ]),
1478
- _: 2
1479
- }, 1024)) : _("", !0)
1480
- ]))), 128))
1481
- ], 2)
1482
- ])
1483
- ]));
1484
- }
1485
- }), Do = /* @__PURE__ */ g(Ao, [["__scopeId", "data-v-72cf514b"]]), Vo = { class: "flashcard-wrapper" }, Po = {
1486
- key: 0,
1487
- class: "flashcard-wrapper__headline"
1488
- }, Fo = {
1489
- key: 1,
1490
- class: "flashcard-wrapper__bodytext"
1491
- }, Mo = /* @__PURE__ */ b({
1492
- __name: "flashcards",
1493
- props: {
1494
- headline: {},
1495
- body: {},
1496
- bgColor: {},
1497
- flashcards: {}
1498
- },
1499
- setup(e) {
1500
- const a = e, r = T(() => a.body.trim().length > 0), l = T(() => {
1501
- var u;
1502
- const o = (u = a.flashcards) == null ? void 0 : u.length;
1503
- return o === 4 || o === 5 ? "sm" : o === 6 || o === 3 ? "md" : o === 2 ? "lg" : "sm";
1504
- });
1505
- return (o, u) => (s(), i("div", {
1506
- class: h(["flashcards", o.bgColor === "light" ? "flashcards--light" : "flashcards--white"])
1507
- }, [
1508
- t("div", Vo, [
1509
- t("div", {
1510
- class: h([
1511
- { "no-bodytext": !r.value },
1512
- "flashcard-wrapper__top-section"
1513
- ])
1514
- }, [
1515
- o.headline ? (s(), i("h2", Po, c(o.headline), 1)) : _("", !0),
1516
- o.body ? (s(), i("div", Fo, [
1517
- d(o.$slots, "flashcard-wrapper-body", {}, void 0, !0)
1518
- ])) : _("", !0)
1519
- ], 2),
1520
- t("div", {
1521
- class: h(["flashcard-wrapper__teaser-list", {
1522
- sm: l.value === "sm",
1523
- md: l.value === "md",
1524
- lg: l.value === "lg"
1525
- }])
1526
- }, [
1527
- (s(!0), i(D, null, V(o.flashcards, (p) => (s(), C($(ke), {
1528
- key: p._uid,
1529
- name: p.name,
1530
- bodytext: p.bodytext,
1531
- image: p.image,
1532
- namebackside: p.namebackside ? p.namebackside : "",
1533
- bodytextbackside: p.bodytextbackside,
1534
- imagebackside: p.imagebackside ? p.imagebackside : { filename: "", alt: "" },
1535
- size: l.value,
1536
- "image-fit": p.imageFit,
1537
- "image-fit-back": p.imageFitBack
1538
- }, {
1539
- "flashcard-front-body": k(({ bodytext: n }) => [
1540
- d(o.$slots, "flashcard-front-body", F({ ref_for: !0 }, { bodytext: n }), void 0, !0)
1541
- ]),
1542
- "flashcard-front-image": k(({ src: n, alt: v }) => [
1543
- d(o.$slots, "flashcard-front-image", F({ ref_for: !0 }, { src: n, alt: v }), void 0, !0)
1544
- ]),
1545
- "flashcard-back-body": k(({ bodytextbackside: n }) => [
1546
- d(o.$slots, "flashcard-back-body", F({ ref_for: !0 }, { bodytextbackside: n }), void 0, !0)
1547
- ]),
1548
- "flashcard-back-image": k(({ src: n, alt: v }) => [
1549
- d(o.$slots, "flashcard-back-image", F({ ref_for: !0 }, { src: n, alt: v }), void 0, !0)
1550
- ]),
1551
- _: 2
1552
- }, 1032, ["name", "bodytext", "image", "namebackside", "bodytextbackside", "imagebackside", "size", "image-fit", "image-fit-back"]))), 128))
1553
- ], 2)
1554
- ])
1555
- ], 2));
1556
- }
1557
- }), Oo = /* @__PURE__ */ g(Mo, [["__scopeId", "data-v-de3c8751"]]), zo = { class: "form__content" }, Ho = { class: "form__information" }, Ro = { class: "form__headline" }, Eo = { class: "form__body" }, No = { class: "form__script" }, jo = /* @__PURE__ */ b({
1558
- __name: "form-script",
1559
- props: {
1560
- headline: { default: "" },
1561
- linkText: { default: "" },
1562
- variant: { default: "default" },
1563
- linkType: { default: "link" }
1564
- },
1565
- setup(e) {
1566
- const a = {
1567
- dark: "form__wrapper--dark",
1568
- light: "form__wrapper--light",
1569
- default: "form__wrapper--default"
1570
- }, r = e, l = T(() => a[r.variant]);
1571
- return (o, u) => (s(), i("div", {
1572
- class: h(["form__wrapper", l.value])
1573
- }, [
1574
- t("div", zo, [
1575
- t("div", Ho, [
1576
- t("h2", Ro, c(o.headline), 1),
1577
- t("div", Eo, [
1578
- d(o.$slots, "form-body", {}, void 0, !0)
1579
- ]),
1580
- o.linkType === "link" ? (s(), C(L, {
1581
- key: 0,
1582
- "link-type": o.variant === "dark" ? "regular_dark" : (o.variant === "light", "regular_light"),
1583
- arrow: ""
1584
- }, {
1585
- default: k(() => [
1586
- d(o.$slots, "form-link", {}, void 0, !0)
1587
- ]),
1588
- _: 3
1589
- }, 8, ["link-type"])) : _("", !0)
1590
- ]),
1591
- t("div", No, [
1592
- d(o.$slots, "form-script", {}, void 0, !0)
1593
- ])
1594
- ])
1595
- ], 2));
1596
- }
1597
- }), Uo = /* @__PURE__ */ g(jo, [["__scopeId", "data-v-b8b02bae"]]), Go = { class: "headline__wrapper" }, Ko = { class: "headline__h1" }, Jo = /* @__PURE__ */ b({
1598
- __name: "headline",
1599
- props: {
1600
- headline: {
1601
- type: String,
1602
- required: !0
1603
- },
1604
- article: {
1605
- type: Boolean,
1606
- required: !1
1607
- },
1608
- subMenu: {
1609
- type: Boolean,
1610
- required: !1
1611
- }
1612
- },
1613
- setup(e) {
1614
- return (a, r) => (s(), i("div", Go, [
1615
- t("div", {
1616
- class: h({
1617
- "headline__content--article-and-submenu": e.article && e.subMenu,
1618
- "headline__content--article": e.article && !e.subMenu,
1619
- "headline__content--default headline__content--submenu": !e.article && e.subMenu,
1620
- "headline__content--default": !e.article && !e.subMenu
1621
- })
1622
- }, [
1623
- t("h1", Ko, c(e.headline), 1)
1624
- ], 2)
1625
- ]));
1626
- }
1627
- }), Wo = /* @__PURE__ */ g(Jo, [["__scopeId", "data-v-3ef1567e"]]), Yo = (e) => (E("data-v-22f9be13"), e = e(), N(), e), Qo = { class: "hero__wrapper" }, Zo = { class: "hero__content" }, Xo = { class: "hero__top" }, xo = { class: "hero__elements" }, el = { class: "hero__headline" }, tl = { class: "hero__link" }, al = { class: "hero__video" }, ol = /* @__PURE__ */ Yo(() => /* @__PURE__ */ t("div", { class: "hero__gradient" }, null, -1)), ll = { class: "hero__video__video" }, sl = { class: "hero__image" }, il = /* @__PURE__ */ b({
1628
- __name: "hero",
1629
- props: {
1630
- headline: {
1631
- type: String,
1632
- required: !0
1633
- }
1634
- },
1635
- setup(e) {
1636
- return (a, r) => (s(), i("div", Qo, [
1637
- t("div", Zo, [
1638
- t("div", Xo, [
1639
- t("div", xo, [
1640
- t("div", el, [
1641
- t("h1", null, c(e.headline), 1)
1642
- ]),
1643
- t("div", tl, [
1644
- S(L, {
1645
- "link-type": "regular_light",
1646
- arrow: ""
1647
- }, {
1648
- default: k(() => [
1649
- d(a.$slots, "hero-link", {}, void 0, !0)
1650
- ]),
1651
- _: 3
1652
- })
1653
- ])
1654
- ])
1655
- ]),
1656
- t("div", al, [
1657
- ol,
1658
- t("div", ll, [
1659
- d(a.$slots, "hero-video", {}, void 0, !0)
1660
- ]),
1661
- t("div", sl, [
1662
- d(a.$slots, "hero-image", {}, void 0, !0)
1663
- ])
1664
- ])
1665
- ])
1666
- ]));
1667
- }
1668
- }), rl = /* @__PURE__ */ g(il, [["__scopeId", "data-v-22f9be13"]]), nl = { class: "image__wrapper" }, dl = { class: "image__content" }, cl = { class: "image__image" }, ul = { class: "image__caption" }, _l = /* @__PURE__ */ b({
1669
- inheritAttrs: !1,
1670
- __name: "image",
1671
- props: {
1672
- caption: {
1673
- type: String,
1674
- required: !1,
1675
- default: ""
1676
- },
1677
- src: {
1678
- type: String,
1679
- required: !0
1680
- },
1681
- alt: {
1682
- type: String,
1683
- required: !0
1684
- },
1685
- fullHeight: {
1686
- type: Boolean,
1687
- required: !1,
1688
- default: !1
1689
- }
1690
- },
1691
- setup(e) {
1692
- return (a, r) => (s(), i("div", nl, [
1693
- t("div", dl, [
1694
- t("div", cl, [
1695
- S(M, null, {
1696
- default: k(() => [
1697
- d(a.$slots, "image", H(R({
1698
- width: 984,
1699
- height: e.fullHeight ? "100%" : 554,
1700
- src: e.src,
1701
- alt: e.alt,
1702
- class: e.fullHeight ? "full-height" : "default"
1703
- })))
1704
- ]),
1705
- _: 3
1706
- })
1707
- ]),
1708
- t("p", ul, c(e.caption), 1)
1709
- ])
1710
- ]));
1711
- }
1712
- }), hl = /* @__PURE__ */ g(_l, [["__scopeId", "data-v-c583d657"]]), pl = { class: "gallery__large" }, ml = {
1713
- key: 0,
1714
- class: "image image--large"
1715
- }, fl = {
1716
- key: 1,
1717
- class: "video"
1718
- }, vl = /* @__PURE__ */ b({
1719
- __name: "image-gallery",
1720
- props: {
1721
- mediaLarge: {},
1722
- mediaType: { default: "image" },
1723
- mediaSmall: {},
1724
- body: { default: "" },
1725
- flipHorizontal: { type: Boolean, default: !1 },
1726
- flipVertical: { type: Boolean, default: !1 },
1727
- bgColor: { default: "white" },
1728
- linkText: { default: "" },
1729
- linkType: { default: "link" }
1730
- },
1731
- setup(e) {
1732
- const a = {
1733
- white: "",
1734
- light: "gallery__wrapper--light",
1735
- dark: "gallery__wrapper--dark mirsaic--dark"
1736
- }, r = e, l = T(() => a[r.bgColor]);
1737
- return (o, u) => (s(), i("div", {
1738
- class: h(["gallery__wrapper", l.value])
1739
- }, [
1740
- t("div", {
1741
- class: h([
1742
- "gallery__content",
1743
- o.flipHorizontal ? "gallery__content--reverse" : "gallery__content--default"
1744
- ])
1745
- }, [
1746
- t("div", pl, [
1747
- o.mediaLarge && o.mediaType === "image" ? (s(), i("div", ml, [
1748
- S(M, null, {
1749
- default: k(() => [
1750
- d(o.$slots, "image-large", H(R({
1751
- height: 530,
1752
- src: o.mediaLarge.src,
1753
- alt: o.mediaLarge.alt
1754
- })))
1755
- ]),
1756
- _: 3
1757
- })
1758
- ])) : _("", !0),
1759
- o.mediaLarge && o.mediaType === "video" ? (s(), i("div", fl, [
1760
- S(te, {
1761
- src: o.mediaLarge.src,
1762
- "local-video": "",
1763
- "aria-label": o.mediaLarge.alt,
1764
- controls: !1,
1765
- height: "530",
1766
- width: "617",
1767
- autoplay: "",
1768
- loop: "",
1769
- muted: "",
1770
- play: ""
1771
- }, null, 8, ["src", "aria-label"])
1772
- ])) : _("", !0)
1773
- ]),
1774
- t("div", {
1775
- style: Q([o.mediaSmall.length === 2 ? "grid-gap: 38px;" : ""]),
1776
- class: h([
1777
- "gallery__small",
1778
- o.flipVertical ? "gallery__small--reverse" : "gallery__small--default"
1779
- ])
1780
- }, [
1781
- (s(!0), i(D, null, V(o.mediaSmall, (p) => (s(), i("div", {
1782
- key: p.src + p.alt,
1783
- class: "image image--small"
1784
- }, [
1785
- S(M, null, {
1786
- default: k(() => [
1787
- d(o.$slots, "image-small", F({ ref_for: !0 }, {
1788
- height: 246,
1789
- src: p.src,
1790
- alt: p.alt
1791
- }))
1792
- ]),
1793
- _: 2
1794
- }, 1024)
1795
- ]))), 128)),
1796
- o.mediaSmall.length < 2 ? (s(), i("div", {
1797
- key: 0,
1798
- class: h(["body", o.bgColor === "dark" ? "body--dark" : ""])
1799
- }, [
1800
- t("p", null, c(o.body), 1),
1801
- o.linkType === "link" ? (s(), C(L, {
1802
- key: 0,
1803
- "link-type": o.bgColor === "dark" ? "regular_dark" : (o.bgColor === "light", "regular_light"),
1804
- arrow: ""
1805
- }, {
1806
- default: k(() => [
1807
- d(o.$slots, "gallery-link")
1808
- ]),
1809
- _: 3
1810
- }, 8, ["link-type"])) : _("", !0)
1811
- ], 2)) : _("", !0)
1812
- ], 6)
1813
- ], 2)
1814
- ], 2));
1815
- }
1816
- }), gl = /* @__PURE__ */ g(vl, [["__scopeId", "data-v-04a9ee0f"]]), bl = { class: "logo-wall__wrapper" }, kl = { class: "logo-wall__content" }, yl = {
1817
- key: 0,
1818
- class: "logo-wall__text"
1819
- }, $l = { key: 0 }, wl = { key: 1 }, Bl = { class: "logo-wall__logos" }, Sl = { class: "logo-wall__link" }, Il = /* @__PURE__ */ b({
1820
- __name: "logo-wall",
1821
- props: {
1822
- headline: {
1823
- type: String,
1824
- default: ""
1825
- },
1826
- body: {
1827
- type: String,
1828
- default: ""
1829
- },
1830
- logos: {
1831
- type: Array,
1832
- required: !0,
1833
- validator: (e) => e.length <= 5
1834
- }
1835
- },
1836
- setup(e) {
1837
- return (a, r) => (s(), i("div", bl, [
1838
- t("div", kl, [
1839
- e.headline || e.body ? (s(), i("div", yl, [
1840
- e.headline ? (s(), i("h2", $l, c(e.headline), 1)) : _("", !0),
1841
- e.body ? (s(), i("p", wl, c(e.body), 1)) : _("", !0)
1842
- ])) : _("", !0),
1843
- t("div", Bl, [
1844
- (s(!0), i(D, null, V(e.logos, (l) => (s(), i("div", {
1845
- key: l.src + l.alt,
1846
- class: "logo-wall__logo"
1847
- }, [
1848
- S(M, null, {
1849
- default: k(() => [
1850
- d(a.$slots, "logo-wall-logo", F({ ref_for: !0 }, {
1851
- width: 130,
1852
- height: 130,
1853
- src: l.src,
1854
- alt: l.alt
1855
- }), void 0, !0)
1856
- ]),
1857
- _: 2
1858
- }, 1024)
1859
- ]))), 128))
1860
- ]),
1861
- t("div", Sl, [
1862
- S(L, {
1863
- "link-type": "regular_light",
1864
- arrow: !0
1865
- }, {
1866
- default: k(() => [
1867
- d(a.$slots, "logo-wall-link", {}, void 0, !0)
1868
- ]),
1869
- _: 3
1870
- })
1871
- ])
1872
- ])
1873
- ]));
1874
- }
1875
- }), Cl = /* @__PURE__ */ g(Il, [["__scopeId", "data-v-fd489289"]]), Tl = { class: "micro-stories__top" }, ql = {
1876
- key: 0,
1877
- class: "micro-stories__headline"
1878
- }, Ll = {
1879
- key: 1,
1880
- class: "micro-stories__body"
1881
- }, Al = { class: "micro-stories__splide" }, Dl = /* @__PURE__ */ b({
1882
- __name: "micro-stories",
1883
- props: {
1884
- bgColor: { default: "blue" },
1885
- headline: { default: "" },
1886
- body: { default: "" }
1887
- },
1888
- setup(e) {
1889
- const a = {
1890
- white: "micro-stories__wrapper--white",
1891
- blue: "micro-stories__wrapper--blue",
1892
- dark: "micro-stories__wrapper--dark"
1893
- }, r = T(() => a[l.bgColor]), l = e;
1894
- return (o, u) => (s(), i("div", {
1895
- class: h(["micro-stories__wrapper", r.value])
1896
- }, [
1897
- t("div", Tl, [
1898
- o.headline ? (s(), i("div", ql, [
1899
- t("h2", null, c(o.headline), 1)
1900
- ])) : _("", !0),
1901
- o.body ? (s(), i("div", Ll, [
1902
- d(o.$slots, "micro-stories-body")
1903
- ])) : _("", !0)
1904
- ]),
1905
- t("div", Al, [
1906
- d(o.$slots, "micro-stories-slides")
1907
- ]),
1908
- d(o.$slots, "micro-stories-controls")
1909
- ], 2));
1910
- }
1911
- }), Vl = {}, Pl = { class: "policy__wrapper" }, Fl = { class: "policy__content" };
1912
- function Ml(e, a) {
1913
- return s(), i("div", Pl, [
1914
- t("div", Fl, [
1915
- d(e.$slots, "default", {}, void 0, !0)
1916
- ])
1917
- ]);
1918
- }
1919
- const Ol = /* @__PURE__ */ g(Vl, [["render", Ml], ["__scopeId", "data-v-ea887d7a"]]), zl = { class: "product-hero__wrapper" }, Hl = { class: "product-hero__content" }, Rl = { class: "product-hero__headline" }, El = { class: "product-hero__video" }, Nl = { class: "product-hero__insignia" }, jl = {
1920
- key: 0,
1921
- class: "product-hero__logo"
1922
- }, Ul = {
1923
- key: 1,
1924
- class: "product-hero__certification"
1925
- }, Gl = /* @__PURE__ */ b({
1926
- __name: "product-hero",
1927
- props: {
1928
- headline: {
1929
- type: String,
1930
- default: "",
1931
- required: !0
1932
- },
1933
- videoSrc: {
1934
- type: String,
1935
- default: "",
1936
- required: !0
1937
- },
1938
- ariaLabel: {
1939
- type: String,
1940
- default: "",
1941
- required: !0
1942
- },
1943
- imgSrc: {
1944
- type: String,
1945
- default: "",
1946
- required: !0
1947
- },
1948
- logoSrc: {
1949
- type: String,
1950
- default: "",
1951
- required: !1
1952
- },
1953
- isCertified: {
1954
- type: Boolean,
1955
- default: !1,
1956
- required: !1
1957
- }
1958
- },
1959
- setup(e) {
1960
- return (a, r) => (s(), i("div", zl, [
1961
- t("div", Hl, [
1962
- t("div", Rl, c(e.headline), 1),
1963
- t("div", El, [
1964
- e.videoSrc !== "" ? (s(), C(te, {
1965
- key: 0,
1966
- play: "",
1967
- "local-video": !0,
1968
- src: e.videoSrc,
1969
- "aria-label": e.ariaLabel,
1970
- controls: !1,
1971
- poster: e.imgSrc,
1972
- autoplay: "",
1973
- loop: "",
1974
- muted: ""
1975
- }, null, 8, ["src", "aria-label", "poster"])) : (s(), C($(M), { key: 1 }, {
1976
- default: k(() => [
1977
- d(a.$slots, "product-hero-image", {}, void 0, !0)
1978
- ]),
1979
- _: 3
1980
- })),
1981
- t("div", Nl, [
1982
- e.logoSrc ? (s(), i("div", jl, [
1983
- S($(M), null, {
1984
- default: k(() => [
1985
- d(a.$slots, "product-hero-logo", {}, void 0, !0)
1986
- ]),
1987
- _: 3
1988
- })
1989
- ])) : _("", !0),
1990
- e.isCertified ? (s(), i("div", Ul, [
1991
- S($(M), null, {
1992
- default: k(() => [
1993
- d(a.$slots, "product-hero-certification", {}, void 0, !0)
1994
- ]),
1995
- _: 3
1996
- })
1997
- ])) : _("", !0)
1998
- ])
1999
- ])
2000
- ])
2001
- ]));
2002
- }
2003
- }), Kl = /* @__PURE__ */ g(Gl, [["__scopeId", "data-v-deab9c3a"]]), Jl = { class: "promo__content" }, Wl = /* @__PURE__ */ b({
2004
- __name: "promo",
2005
- props: {
2006
- label: { default: "" },
2007
- linkText: { default: "" },
2008
- mediaType: { default: "image" },
2009
- src: {},
2010
- alt: {},
2011
- fallbackImage: {},
2012
- reverse: { type: Boolean, default: !1 },
2013
- variant: { default: "default" },
2014
- linkType: { default: "link" },
2015
- teaser: { type: Boolean, default: !1 },
2016
- multiply: { type: Boolean, default: !1 }
2017
- },
2018
- setup(e) {
2019
- const a = {
2020
- dark: "promo__wrapper--dark",
2021
- light: "promo__wrapper--light",
2022
- default: "promo__wrapper--default"
2023
- }, r = e, l = T(() => a[r.variant]);
2024
- return (o, u) => (s(), i("div", {
2025
- class: h([
2026
- "promo__wrapper",
2027
- l.value,
2028
- o.teaser ? "promo__wrapper--teaser" : "",
2029
- o.multiply ? "promo__wrapper--multiply" : ""
2030
- ])
2031
- }, [
2032
- t("div", Jl, [
2033
- o.mediaType === "image" ? (s(), i("div", {
2034
- key: 0,
2035
- class: h([
2036
- "promo__image",
2037
- o.reverse ? "promo__image--reverse" : "promo__image--default"
2038
- ])
2039
- }, [
2040
- S(M, null, {
2041
- default: k(() => [
2042
- d(o.$slots, "promo-image", H(R({ src: o.src, width: 1920, alt: o.alt, height: 1080 })))
2043
- ]),
2044
- _: 3
2045
- })
2046
- ], 2)) : _("", !0),
2047
- o.mediaType === "video" ? (s(), i("div", {
2048
- key: 1,
2049
- class: h([
2050
- "promo__video",
2051
- o.reverse ? "promo__video--reverse" : "promo__video--default"
2052
- ])
2053
- }, [
2054
- S(te, {
2055
- src: o.src,
2056
- "local-video": "",
2057
- "aria-label": o.alt,
2058
- controls: !1,
2059
- autoplay: "",
2060
- loop: "",
2061
- muted: "",
2062
- play: "",
2063
- poster: o.fallbackImage
2064
- }, null, 8, ["src", "aria-label", "poster"])
2065
- ], 2)) : _("", !0),
2066
- t("div", {
2067
- class: h([
2068
- "promo__text",
2069
- o.reverse ? "promo__text--reverse" : "promo__text--default"
2070
- ])
2071
- }, [
2072
- o.label ? (s(), C(ee, {
2073
- key: 0,
2074
- text: o.label,
2075
- "label-dark": o.variant === "dark"
2076
- }, null, 8, ["text", "label-dark"])) : _("", !0),
2077
- t("div", {
2078
- class: h([
2079
- "promo__title",
2080
- o.variant === "dark" ? "promo__title--dark" : ""
2081
- ])
2082
- }, [
2083
- d(o.$slots, "promo-headline")
2084
- ], 2),
2085
- o.linkType === "link" ? (s(), C(L, {
2086
- key: 1,
2087
- "link-type": o.variant === "dark" ? "regular_dark" : (o.variant === "light", "regular_light"),
2088
- arrow: ""
2089
- }, {
2090
- default: k(() => [
2091
- d(o.$slots, "promo-link")
2092
- ]),
2093
- _: 3
2094
- }, 8, ["link-type"])) : _("", !0),
2095
- o.linkType === "button" ? (s(), C(L, {
2096
- key: 2,
2097
- "link-type": o.variant === "dark" ? "secondary_dark" : (o.variant === "light", "secondary")
2098
- }, {
2099
- default: k(() => [
2100
- d(o.$slots, "promo-link")
2101
- ]),
2102
- _: 3
2103
- }, 8, ["link-type"])) : _("", !0)
2104
- ], 2)
2105
- ])
2106
- ], 2));
2107
- }
2108
- }), Yl = /* @__PURE__ */ g(Wl, [["__scopeId", "data-v-df54d965"]]), Ql = (e) => (E("data-v-e3cc8e27"), e = e(), N(), e), Zl = { class: "quote__wrapper" }, Xl = { class: "quote__content" }, xl = /* @__PURE__ */ Ql(() => /* @__PURE__ */ t("p", { class: "quote__quote-mark" }, "“", -1)), es = { class: "quote__quote" }, ts = { class: "quote__quote-text" }, as = { class: "quote__author" }, os = {
2109
- key: 0,
2110
- class: "quote__image"
2111
- }, ls = { class: "quote__text" }, ss = { class: "quote__author-name" }, is = { class: "quote__author-title" }, rs = /* @__PURE__ */ b({
2112
- __name: "quote",
2113
- props: {
2114
- quote: {
2115
- type: String,
2116
- required: !0
2117
- },
2118
- author: {
2119
- type: String,
2120
- required: !0
2121
- },
2122
- authorTitle: {
2123
- type: String,
2124
- required: !0
2125
- },
2126
- authorImage: {
2127
- type: String,
2128
- required: !1,
2129
- default: void 0
2130
- }
2131
- },
2132
- setup(e) {
2133
- return (a, r) => (s(), i("div", Zl, [
2134
- t("div", Xl, [
2135
- xl,
2136
- t("div", es, [
2137
- t("p", ts, c(e.quote), 1),
2138
- t("div", as, [
2139
- e.authorImage ? (s(), i("div", os, [
2140
- S(M, null, {
2141
- default: k(() => [
2142
- d(a.$slots, "author-image", H(R({
2143
- src: e.authorImage + "/m/100x100",
2144
- width: 60,
2145
- height: 60
2146
- })))
2147
- ]),
2148
- _: 3
2149
- })
2150
- ])) : _("", !0),
2151
- t("div", ls, [
2152
- t("p", ss, c(e.author), 1),
2153
- t("p", is, c(e.authorTitle), 1)
2154
- ])
2155
- ])
2156
- ])
2157
- ])
2158
- ]));
2159
- }
2160
- }), ns = /* @__PURE__ */ g(rs, [["__scopeId", "data-v-e3cc8e27"]]), ds = { class: "rich-text__wrapper" }, cs = {
2161
- key: 0,
2162
- class: "rich-text__links"
2163
- }, us = {
2164
- key: 0,
2165
- class: "rich-text__bullet-list"
2166
- }, _s = /* @__PURE__ */ b({
2167
- __name: "rich-text",
2168
- props: {
2169
- headline: { default: "" },
2170
- leftAligned: { type: Boolean, default: !1 },
2171
- links: { type: Boolean, default: !1 },
2172
- bulletList: { type: Boolean, default: !1 },
2173
- image: { type: Boolean, default: !1 },
2174
- imageClip: { type: Boolean, default: !0 },
2175
- bgColor: { default: "white" },
2176
- label: { default: "" }
2177
- },
2178
- setup(e) {
2179
- return (a, r) => (s(), i("div", {
2180
- class: h([
2181
- "rich-text",
2182
- a.bgColor === "blue" ? "rich-text--blue" : "rich-text--white"
2183
- ])
2184
- }, [
2185
- t("div", ds, [
2186
- a.label ? (s(), C(ee, {
2187
- key: 0,
2188
- text: a.label,
2189
- "label-dark": !1
2190
- }, null, 8, ["text"])) : _("", !0),
2191
- a.headline ? (s(), i("h2", {
2192
- key: 1,
2193
- class: h([
2194
- "rich-text__headline",
2195
- a.leftAligned || a.bulletList || a.image ? "rich-text__headline--left-aligned" : "rich-text__headline--centered"
2196
- ])
2197
- }, c(a.headline), 3)) : _("", !0),
2198
- t("div", {
2199
- class: h([
2200
- "rich-text__content",
2201
- a.leftAligned || a.bulletList || a.image ? "rich-text__content--left-aligned" : "rich-text__content--centered"
2202
- ])
2203
- }, [
2204
- t("div", {
2205
- class: h([
2206
- "rich-text__body",
2207
- a.bulletList || a.image ? "rich-text__body--content-right" : ""
2208
- ])
2209
- }, [
2210
- d(a.$slots, "rich-text-content"),
2211
- a.links ? (s(), i("div", cs, [
2212
- d(a.$slots, "rich-text-links")
2213
- ])) : _("", !0)
2214
- ], 2),
2215
- a.bulletList ? (s(), i("div", us, [
2216
- d(a.$slots, "rich-text-bullet-list")
2217
- ])) : _("", !0),
2218
- a.image ? (s(), i("div", {
2219
- key: 1,
2220
- class: h([
2221
- "rich-text__image",
2222
- a.imageClip ? "rich-text__image--clip" : ""
2223
- ])
2224
- }, [
2225
- S(M, null, {
2226
- default: k(() => [
2227
- d(a.$slots, "rich-text-image", H(R({ width: 865, height: 307 })))
2228
- ]),
2229
- _: 3
2230
- })
2231
- ], 2)) : _("", !0)
2232
- ], 2)
2233
- ])
2234
- ], 2));
2235
- }
2236
- }), hs = /* @__PURE__ */ g(_s, [["__scopeId", "data-v-5441d67a"]]), ps = {}, ms = { class: "rich-text" }, fs = { class: "rich-text__wrapper" }, vs = { class: "rich-text__content rich-text__content--left-aligned" }, gs = { class: "rich-text__body" };
2237
- function bs(e, a) {
2238
- return s(), i("div", ms, [
2239
- t("div", fs, [
2240
- t("div", vs, [
2241
- t("div", gs, [
2242
- t("div", null, [
2243
- d(e.$slots, "rich-text-content-left", {}, void 0, !0)
2244
- ]),
2245
- t("div", null, [
2246
- d(e.$slots, "rich-text-content-right", {}, void 0, !0)
2247
- ])
2248
- ])
2249
- ])
2250
- ])
2251
- ]);
2252
- }
2253
- const ks = /* @__PURE__ */ g(ps, [["render", bs], ["__scopeId", "data-v-776750d2"]]), ys = (e) => (E("data-v-798e7a06"), e = e(), N(), e), $s = { class: "timeline__wrapper" }, ws = { class: "timeline__content" }, Bs = { class: "timeline__items" }, Ss = { class: "item__left" }, Is = /* @__PURE__ */ ys(() => /* @__PURE__ */ t("div", { class: "item__elements" }, [
2254
- /* @__PURE__ */ t("div", { class: "circle" }),
2255
- /* @__PURE__ */ t("div", { class: "line" })
2256
- ], -1)), Cs = { class: "item__right" }, Ts = ["innerHTML"], qs = /* @__PURE__ */ b({
2257
- __name: "timeline",
2258
- props: {
2259
- timelineItems: {
2260
- type: Array,
2261
- required: !0
2262
- }
2263
- },
2264
- setup(e) {
2265
- return me(() => {
2266
- const a = document.querySelectorAll(".timeline__item"), r = new IntersectionObserver(
2267
- (l) => {
2268
- l.forEach((o) => {
2269
- o.isIntersecting && (o.target.classList.add("visible"), o.target.classList.remove("faded"), r.unobserve(o.target));
2270
- });
2271
- },
2272
- {
2273
- threshold: 1
2274
- }
2275
- );
2276
- a.forEach((l) => {
2277
- r.observe(l);
2278
- });
2279
- }), (a, r) => (s(), i("div", $s, [
2280
- t("div", ws, [
2281
- t("div", Bs, [
2282
- (s(!0), i(D, null, V(e.timelineItems, (l) => (s(), i("div", {
2283
- key: l.year,
2284
- class: "timeline__item faded"
2285
- }, [
2286
- t("div", Ss, c(l.year), 1),
2287
- Is,
2288
- t("div", Cs, [
2289
- S(M, null, {
2290
- default: k(() => [
2291
- l.media.src ? d(a.$slots, "timeline-image", F({
2292
- key: 0,
2293
- ref_for: !0
2294
- }, { src: l.media.src, alt: l.media.alt }), void 0, !0) : _("", !0)
2295
- ]),
2296
- _: 2
2297
- }, 1024),
2298
- t("div", {
2299
- style: Q([l.media.src ? "" : "margin-top: 0px"]),
2300
- class: "rich-text",
2301
- innerHTML: l.text
2302
- }, null, 12, Ts)
2303
- ])
2304
- ]))), 128))
2305
- ])
2306
- ])
2307
- ]));
2308
- }
2309
- }), Ls = /* @__PURE__ */ g(qs, [["__scopeId", "data-v-798e7a06"]]), As = { class: "vimeo" }, Ds = { class: "vimeo__wrapper" }, Vs = {
2310
- key: 0,
2311
- class: "vimeo__headline"
2312
- }, Ps = {
2313
- key: 1,
2314
- class: "vimeo__description"
2315
- }, Fs = /* @__PURE__ */ b({
2316
- __name: "vimeo",
2317
- props: {
2318
- headline: {
2319
- type: String,
2320
- default: ""
2321
- },
2322
- description: {
2323
- type: String,
2324
- default: ""
2325
- }
2326
- },
2327
- setup(e) {
2328
- return (a, r) => (s(), i("div", As, [
2329
- t("div", Ds, [
2330
- e.headline ? (s(), i("h2", Vs, c(e.headline), 1)) : _("", !0),
2331
- d(a.$slots, "vimeo-content", {}, void 0, !0),
2332
- e.description ? (s(), i("p", Ps, c(e.description), 1)) : _("", !0)
2333
- ])
2334
- ]));
2335
- }
2336
- }), Ms = /* @__PURE__ */ g(Fs, [["__scopeId", "data-v-90a2b109"]]), Os = { class: "academy-overview__content-wrapper" }, zs = { class: "academy-overview__content" }, Hs = { class: "academy-overview__title" }, Rs = { class: "academy-overview__description" }, Es = { class: "academy-overview__button-wrapper" }, Ns = {
2337
- key: 0,
2338
- class: "academy-overview__stats"
2339
- }, js = { class: "academy-overview__stats-row" }, Us = { class: "academy-overview__stat" }, Gs = { class: "academy-overview__value" }, Ks = { class: "academy-overview__label" }, Js = { class: "academy-overview__stat" }, Ws = { class: "academy-overview__value" }, Ys = { class: "academy-overview__label" }, he = "https://a.storyblok.com/f/230581/1202x489/e76c5d687c/mirsaic-dark.svg?cv=1695126163753", Qs = /* @__PURE__ */ b({
2340
- __name: "frontpage-hero",
2341
- props: {
2342
- hero: { default: () => ({
2343
- headline: "Welcome back",
2344
- cover: "",
2345
- lessonValue: 0,
2346
- lessonLabel: "Lessons Completed",
2347
- pointsValue: 0,
2348
- pointsLabel: "Points",
2349
- showStats: !1
2350
- }) }
2351
- },
2352
- setup(e) {
2353
- const a = e, r = T(() => a.hero.cover ? {
2354
- backgroundImage: `url("${he}"), url(${a.hero.cover})`
2355
- } : {
2356
- backgroundImage: `url("${he}"), linear-gradient(155deg, #143a67 0%, #0c0931 100%)`
2357
- });
2358
- return (l, o) => (s(), i("div", {
2359
- class: "academy-overview",
2360
- style: Q(r.value)
2361
- }, [
2362
- t("div", Os, [
2363
- t("div", zs, [
2364
- t("div", null, [
2365
- t("h1", Hs, c(l.hero.headline), 1),
2366
- t("div", Rs, [
2367
- d(l.$slots, "academy-description", {}, void 0, !0)
2368
- ]),
2369
- t("div", Es, [
2370
- d(l.$slots, "button", {}, void 0, !0)
2371
- ])
2372
- ]),
2373
- l.hero.showStats ? (s(), i("div", Ns, [
2374
- t("div", js, [
2375
- t("div", Us, [
2376
- t("div", Gs, c(l.hero.lessonValue), 1),
2377
- t("div", Ks, c(l.hero.lessonLabel), 1)
2378
- ]),
2379
- t("div", Js, [
2380
- t("div", Ws, c(l.hero.pointsValue), 1),
2381
- t("div", Ys, c(l.hero.pointsLabel), 1)
2382
- ])
2383
- ])
2384
- ])) : _("", !0)
2385
- ])
2386
- ])
2387
- ], 4));
2388
- }
2389
- }), Zs = /* @__PURE__ */ g(Qs, [["__scopeId", "data-v-0d5af4d2"]]), Xs = { class: "not-found__wrapper" }, xs = { class: "not-found__content" }, ei = { class: "not-found__headline" }, ti = { class: "not-found__body" }, ai = /* @__PURE__ */ b({
2390
- __name: "404",
2391
- props: {
2392
- headline: {
2393
- type: String,
2394
- required: !0
2395
- }
2396
- },
2397
- setup(e) {
2398
- return (a, r) => (s(), i("div", Xs, [
2399
- t("div", xs, [
2400
- t("h1", ei, c(e.headline), 1),
2401
- t("div", ti, [
2402
- d(a.$slots, "not-found-body", {}, void 0, !0)
2403
- ])
2404
- ])
2405
- ]));
2406
- }
2407
- }), oi = /* @__PURE__ */ g(ai, [["__scopeId", "data-v-b829ca6c"]]), li = { class: "filter__wrapper" }, si = { class: "filter__content" }, ii = { class: "filter__dropdowns" }, ri = { class: "filter__chips" }, ni = /* @__PURE__ */ b({
2408
- __name: "filter",
2409
- props: {
2410
- hasChips: {
2411
- type: Boolean,
2412
- default: !1
2413
- },
2414
- removeAll: {
2415
- type: String,
2416
- default: "Remove all filters"
2417
- }
2418
- },
2419
- emits: ["clearFilters"],
2420
- setup(e) {
2421
- return (a, r) => (s(), i("div", li, [
2422
- t("div", si, [
2423
- t("div", ii, [
2424
- d(a.$slots, "filter-dropdowns")
2425
- ]),
2426
- t("div", ri, [
2427
- d(a.$slots, "filter-chips"),
2428
- e.hasChips ? (s(), i("button", {
2429
- key: 0,
2430
- class: "filter__clear",
2431
- onClick: r[0] || (r[0] = (l) => a.$emit("clearFilters"))
2432
- }, c(e.removeAll), 1)) : _("", !0)
2433
- ])
2434
- ])
2435
- ]));
2436
- }
2437
- }), di = /* @__PURE__ */ g(ni, [["__scopeId", "data-v-03a6a216"]]), ye = (e) => (E("data-v-a0ab0743"), e = e(), N(), e), ci = { class: "footer__wrapper" }, ui = { class: "footer__content" }, _i = {
2438
- key: 0,
2439
- src: "https://mobile-industrial-robots.com/logo/mir-main-logo.svg",
2440
- style: { margin: "0 auto" },
2441
- width: "101",
2442
- height: "45"
2443
- }, hi = { class: "footer__sections" }, pi = { class: "section__title" }, mi = { class: "section__list" }, fi = { class: "section" }, vi = {
2444
- key: 0,
2445
- class: "section__title"
2446
- }, gi = {
2447
- key: 1,
2448
- class: "section__title"
2449
- }, bi = { key: 0 }, ki = { key: 1 }, yi = { key: 2 }, $i = { key: 3 }, wi = { key: 4 }, Bi = /* @__PURE__ */ ye(() => /* @__PURE__ */ t("br", null, null, -1)), Si = {
2450
- key: 0,
2451
- href: "mailto:china@mir-robots.com"
2452
- }, Ii = {
2453
- key: 1,
2454
- href: "mailto:mail@mir-robots.com"
2455
- }, Ci = {
2456
- key: 0,
2457
- href: "tel:+8613661856951"
2458
- }, Ti = {
2459
- key: 1,
2460
- href: "tel:+4520377577"
2461
- }, qi = { class: "footer__bottom" }, Li = { class: "copyright" }, Ai = { class: "footer__policy" }, Di = /* @__PURE__ */ ye(() => /* @__PURE__ */ t("i", { class: "change-region" }, null, -1)), Vi = {
2462
- key: 0,
2463
- class: "footer__social"
2464
- }, Pi = ["href", "aria-label"], Fi = {
2465
- key: 1,
2466
- class: "footer__social"
2467
- }, Mi = ["href", "aria-label"], Oi = /* @__PURE__ */ b({
2468
- __name: "footer",
2469
- props: {
2470
- language: { default: "" },
2471
- footerSections: { default: () => [] },
2472
- privacyPolicy: { default: void 0 },
2473
- cookiePolicy: { default: void 0 },
2474
- socialMedia: { default: () => [] },
2475
- socialMediaChina: { default: () => [] },
2476
- changeRegion: { default: "" }
2477
- },
2478
- emits: ["changeRegionClicked"],
2479
- setup(e) {
2480
- return (a, r) => (s(), i("div", ci, [
2481
- t("footer", ui, [
2482
- a.language === "zh" ? (s(), i("img", _i)) : _("", !0),
2483
- t("div", hi, [
2484
- (s(!0), i(D, null, V(a.footerSections, (l) => (s(), i("div", {
2485
- key: l.title,
2486
- class: "section"
2487
- }, [
2488
- t("span", pi, c(l.title), 1),
2489
- t("nav", null, [
2490
- t("ul", mi, [
2491
- d(a.$slots, "section-links", {
2492
- links: l.links
2493
- })
2494
- ])
2495
- ])
2496
- ]))), 128)),
2497
- t("div", fi, [
2498
- a.language === "zh" ? (s(), i("span", vi, "名傲移动机器人(上海)有限公司")) : (s(), i("span", gi, "Mobile Industrial Robots A/S")),
2499
- t("address", null, [
2500
- a.language === "zh" ? (s(), i("span", bi, "上海浦东新区金桥出口加工区")) : (s(), i("span", ki, "Energivej 51")),
2501
- a.language === "zh" ? (s(), i("span", yi, "桂桥路1201号10栋2楼")) : (s(), i("span", $i, "5260 Odense S")),
2502
- a.language !== "zh" ? (s(), i("span", wi, "CVR: 35251235")) : _("", !0),
2503
- Bi,
2504
- S(L, {
2505
- class: "footer__contact",
2506
- "link-type": "regular_light",
2507
- underline: "false"
2508
- }, {
2509
- default: k(() => [
2510
- a.language === "zh" ? (s(), i("a", Si, "china@mir-robots.com")) : (s(), i("a", Ii, "mail@mir-robots.com"))
2511
- ]),
2512
- _: 1
2513
- }),
2514
- S(L, {
2515
- class: "footer__contact",
2516
- "link-type": "regular_light",
2517
- underline: "false"
2518
- }, {
2519
- default: k(() => [
2520
- a.language === "zh" ? (s(), i("a", Ci, "+86 13661856951(微信同号)")) : (s(), i("a", Ti, "+45 20 377 577"))
2521
- ]),
2522
- _: 1
2523
- })
2524
- ])
2525
- ])
2526
- ]),
2527
- t("div", qi, [
2528
- t("p", Li, " © Mobile Industrial Robots " + c((/* @__PURE__ */ new Date()).getFullYear()), 1),
2529
- t("div", Ai, [
2530
- t("button", {
2531
- class: "footer__language-switcher",
2532
- onClick: r[0] || (r[0] = (l) => a.$emit("changeRegionClicked"))
2533
- }, [
2534
- t("span", null, [
2535
- Di,
2536
- Y(c(a.changeRegion), 1)
2537
- ])
2538
- ]),
2539
- d(a.$slots, "footer-privacy-link"),
2540
- d(a.$slots, "footer-cookie-link")
2541
- ]),
2542
- a.language !== "zh" ? (s(), i("div", Vi, [
2543
- (s(!0), i(D, null, V(a.socialMedia, (l) => (s(), C(L, {
2544
- key: l.title,
2545
- underline: "false",
2546
- "link-type": "regular"
2547
- }, {
2548
- default: k(() => [
2549
- t("a", {
2550
- href: l.url,
2551
- target: "_blank",
2552
- "aria-label": l.title
2553
- }, [
2554
- t("i", {
2555
- width: "19",
2556
- height: "14",
2557
- class: h(["footer__social--icon", [l.title ? "bg-" + l.title : ""]])
2558
- }, null, 2)
2559
- ], 8, Pi)
2560
- ]),
2561
- _: 2
2562
- }, 1024))), 128))
2563
- ])) : (s(), i("div", Fi, [
2564
- (s(!0), i(D, null, V(a.socialMediaChina, (l) => (s(), C(L, {
2565
- key: l.title,
2566
- underline: "false",
2567
- "link-type": "regular"
2568
- }, {
2569
- default: k(() => [
2570
- t("a", {
2571
- href: l.url,
2572
- target: "_blank",
2573
- "aria-label": l.title
2574
- }, [
2575
- t("i", {
2576
- width: "19",
2577
- height: "14",
2578
- class: h(["footer__social--icon", [l.title ? "bg-" + l.title : ""]])
2579
- }, null, 2)
2580
- ], 8, Mi)
2581
- ]),
2582
- _: 2
2583
- }, 1024))), 128))
2584
- ]))
2585
- ])
2586
- ])
2587
- ]));
2588
- }
2589
- }), zi = /* @__PURE__ */ g(Oi, [["__scopeId", "data-v-a0ab0743"]]), $e = (e) => (E("data-v-59a92379"), e = e(), N(), e), Hi = { class: "header__wrapper" }, Ri = { class: "nav-wrapper" }, Ei = { class: "mir-link-logo" }, Ni = { class: "main-nav-items" }, ji = { class: "secondary-nav-items" }, Ui = {
2590
- key: 0,
2591
- id: "menu-dropdown",
2592
- ref: "dropdownDiv"
2593
- }, Gi = {
2594
- key: 0,
2595
- src: "https://a.storyblok.com/f/230581/9x6/8cecdca15f/arrow-down.svg?cv=1695125714195",
2596
- alt: "dropdown arrow"
2597
- }, Ki = {
2598
- key: 1,
2599
- src: "https://a.storyblok.com/f/230581/9x6/8cecdca15f/arrow-down.svg?cv=1695125714195",
2600
- alt: "dropdown arrow",
2601
- style: { transform: "rotate(180deg)" }
2602
- }, Ji = { class: "dropdown-content" }, Wi = {
2603
- key: 1,
2604
- class: "nav-search-wrapper"
2605
- }, Yi = ["src"], Qi = {
2606
- key: 2,
2607
- id: "menu-portal-switcher",
2608
- class: "portal-switcher-wrapper"
2609
- }, Zi = /* @__PURE__ */ $e(() => /* @__PURE__ */ t("img", {
2610
- src: "https://a.storyblok.com/f/230581/14x12/1b00a4a551/portal-switcher.svg?cv=1712916615032",
2611
- alt: "portal switcher icon",
2612
- width: "20",
2613
- height: "20"
2614
- }, null, -1)), Xi = [
2615
- Zi
2616
- ], xi = { class: "portal-switcher-content" }, er = { class: "portal-switcher-links" }, tr = ["href"], ar = ["src"], or = {
2617
- key: 3,
2618
- id: "menu-profile-dropdown",
2619
- class: "profile-dropdown-wrapper"
2620
- }, lr = {
2621
- key: 0,
2622
- class: "profile-dropdown-sign-in"
2623
- }, sr = /* @__PURE__ */ $e(() => /* @__PURE__ */ t("img", {
2624
- src: "https://a.storyblok.com/f/230581/15x14/3b3253dd12/icon-user.svg?cv=1712916615014",
2625
- alt: "profile dropdown icon",
2626
- width: "20",
2627
- height: "20"
2628
- }, null, -1)), ir = [
2629
- sr
2630
- ], rr = { class: "profile-dropdown-content" }, nr = { class: "mobile-logo-search-burger-wrapper" }, dr = { class: "mobile-mir-link-logo" }, cr = {
2631
- key: 0,
2632
- class: "mobile-search-wrapper"
2633
- }, ur = ["src"], _r = {
2634
- key: 1,
2635
- id: "menu-portal-switcher",
2636
- class: "menu-portal-switcher-wrapper"
2637
- }, hr = ["src"], pr = { class: "portal-switcher-content" }, mr = { class: "portal-switcher-links" }, fr = ["href"], vr = ["src"], gr = ["src"], br = { class: "mobile-menu-content-wrapper" }, kr = { class: "mobile-dropdown-content" }, yr = /* @__PURE__ */ b({
2638
- __name: "header",
2639
- props: {
2640
- burgerState: {
2641
- type: Boolean,
2642
- default: !1
2643
- },
2644
- search: {
2645
- type: Boolean,
2646
- default: !0
2647
- },
2648
- showDropDown: {
2649
- type: Boolean,
2650
- default: !1
2651
- },
2652
- useDropdown: {
2653
- type: Boolean,
2654
- default: !1
2655
- },
2656
- showPortalSwitcherDropDown: {
2657
- type: Boolean,
2658
- default: !1
2659
- },
2660
- usePortalSwitcher: {
2661
- type: Boolean,
2662
- default: !1
2663
- },
2664
- portals: {
2665
- type: Array,
2666
- default: () => []
2667
- },
2668
- showProfileDropDown: {
2669
- type: Boolean,
2670
- default: !1
2671
- },
2672
- isAuthenticated: {
2673
- type: Boolean,
2674
- default: !1
2675
- },
2676
- useProfileDropdown: {
2677
- type: Boolean,
2678
- default: !1
2679
- }
2680
- },
2681
- emits: [
2682
- "update:burgerState",
2683
- "update:showDropDown",
2684
- "update:showPortalSwitcherDropDown",
2685
- "update:showProfileDropDown",
2686
- "clickSearch"
2687
- ],
2688
- setup(e, { expose: a, emit: r }) {
2689
- let l = null;
2690
- const o = e;
2691
- let u = I(o.burgerState), p = I(o.search), n = I(o.showDropDown), v = I(o.showPortalSwitcherDropDown), f = I(o.showProfileDropDown), y = I(o.isAuthenticated);
2692
- X(
2693
- () => o.burgerState,
2694
- (w) => u.value = w
2695
- ), X(
2696
- () => o.search,
2697
- (w) => p.value = w
2698
- ), X(
2699
- () => o.showDropDown,
2700
- (w) => n.value = w
2701
- ), X(
2702
- () => o.showPortalSwitcherDropDown,
2703
- (w) => v.value = w
2704
- ), X(
2705
- () => o.showProfileDropDown,
2706
- (w) => f.value = w
2707
- ), X(
2708
- () => o.isAuthenticated,
2709
- (w) => y.value = w
2710
- ), me(() => {
2711
- l = (w) => {
2712
- w.target.closest("#menu-dropdown") || (n.value = !1), w.target.closest("#menu-portal-switcher") || (v.value = !1), w.target.closest("#menu-profile-dropdown") || (f.value = !1);
2713
- }, window.addEventListener("click", l);
2714
- }), Le(() => {
2715
- l !== null && window.removeEventListener("click", l);
2716
- });
2717
- const A = r;
2718
- function re() {
2719
- n.value = !n.value, A("update:showDropDown", n.value);
2720
- }
2721
- function ae() {
2722
- v.value = !v.value, A("update:showPortalSwitcherDropDown", v.value);
2723
- }
2724
- function ne() {
2725
- f.value = !f.value, A("update:showProfileDropDown", f.value);
2726
- }
2727
- function de() {
2728
- u.value = !u.value, A("update:burgerState", u.value);
2729
- }
2730
- let K = I(null), oe = I(null);
2731
- function ce() {
2732
- K.value && K.value.blur();
2733
- }
2734
- return a({
2735
- defocusSearchButton: ce
2736
- }), (w, j) => (s(), i("div", Hi, [
2737
- t("nav", null, [
2738
- t("div", Ri, [
2739
- t("div", Ei, [
2740
- d(w.$slots, "link-logo", {}, void 0, !0)
2741
- ]),
2742
- t("ul", Ni, [
2743
- d(w.$slots, "main-nav-items", {}, void 0, !0)
2744
- ]),
2745
- t("div", ji, [
2746
- e.useDropdown ? (s(), i("div", Ui, [
2747
- t("button", {
2748
- class: "nav-dropdown-btn",
2749
- "aria-label": "Toggle Dropdown",
2750
- onClick: re
2751
- }, [
2752
- d(w.$slots, "dropdown-title", {}, void 0, !0),
2753
- $(n) === !1 ? (s(), i("img", Gi)) : (s(), i("img", Ki))
2754
- ]),
2755
- U(t("div", Ji, [
2756
- d(w.$slots, "dropdown-links", {}, void 0, !0)
2757
- ], 512), [
2758
- [W, $(n)]
2759
- ])
2760
- ], 512)) : _("", !0),
2761
- $(p) ? (s(), i("div", Wi, [
2762
- t("button", {
2763
- ref_key: "navSearchButton",
2764
- ref: K,
2765
- class: "search-icon",
2766
- "aria-label": "Toggle search",
2767
- onClick: j[0] || (j[0] = (O) => {
2768
- var z;
2769
- return w.$emit("clickSearch"), (z = $(K)) == null ? void 0 : z.blur();
2770
- })
2771
- }, [
2772
- t("img", {
2773
- src: $(u) === !0 ? "https://a.storyblok.com/f/230581/21x21/13f4ac189d/search-icon-white.svg?cv=1695125826080" : "https://a.storyblok.com/f/230581/21x21/ebbdca38d3/search-icon.svg?cv=1695125825901",
2774
- alt: "search icon",
2775
- width: "20",
2776
- height: "20"
2777
- }, null, 8, Yi)
2778
- ], 512)
2779
- ])) : _("", !0),
2780
- e.usePortalSwitcher ? (s(), i("div", Qi, [
2781
- t("button", {
2782
- class: "nav-portal-switcher-btn",
2783
- "aria-label": "Toggle Portal",
2784
- onClick: ae
2785
- }, Xi),
2786
- U(t("div", xi, [
2787
- t("ul", er, [
2788
- (s(!0), i(D, null, V(e.portals, (O, z) => (s(), i("li", {
2789
- key: z,
2790
- class: "portal-switcher-link"
2791
- }, [
2792
- S($(L), { "link-type": "regular" }, {
2793
- default: k(() => [
2794
- t("a", {
2795
- href: O.link,
2796
- onClick: j[1] || (j[1] = (J) => x(n) ? n.value = !1 : n = !1)
2797
- }, [
2798
- t("img", {
2799
- src: O.icon
2800
- }, null, 8, ar),
2801
- t("div", null, c(O.name), 1)
2802
- ], 8, tr)
2803
- ]),
2804
- _: 2
2805
- }, 1024)
2806
- ]))), 128))
2807
- ])
2808
- ], 512), [
2809
- [W, $(v)]
2810
- ])
2811
- ])) : _("", !0),
2812
- e.useProfileDropdown ? (s(), i("div", or, [
2813
- $(y) ? _("", !0) : (s(), i("div", lr, [
2814
- d(w.$slots, "profile-dropdown-sign-in", {}, void 0, !0)
2815
- ])),
2816
- $(y) ? (s(), i("button", {
2817
- key: 1,
2818
- "aria-label": "Toggle Profile",
2819
- class: "nav-profile-dropdown-btn",
2820
- onClick: ne
2821
- }, ir)) : _("", !0),
2822
- U(t("div", rr, [
2823
- d(w.$slots, "profile-dropdown-links", {}, void 0, !0)
2824
- ], 512), [
2825
- [W, $(f)]
2826
- ])
2827
- ])) : _("", !0)
2828
- ])
2829
- ]),
2830
- t("div", {
2831
- class: h(["mobile-nav-wrapper", $(u) === !0 ? "mirsaic-mobile-bg mirsaic--dark" : ""])
2832
- }, [
2833
- t("div", nr, [
2834
- t("div", dr, [
2835
- d(w.$slots, "link-logo", {}, void 0, !0)
2836
- ]),
2837
- $(p) ? (s(), i("div", cr, [
2838
- t("button", {
2839
- ref_key: "mobileSearchButton",
2840
- ref: oe,
2841
- class: "search-icon",
2842
- "aria-label": "Toggle search",
2843
- onClick: j[2] || (j[2] = (O) => {
2844
- var z;
2845
- return w.$emit("clickSearch"), (z = $(oe)) == null ? void 0 : z.blur();
2846
- })
2847
- }, [
2848
- t("img", {
2849
- src: $(u) === !0 ? "https://a.storyblok.com/f/230581/21x21/13f4ac189d/search-icon-white.svg?cv=1695125826080" : "https://a.storyblok.com/f/230581/21x21/ebbdca38d3/search-icon.svg?cv=1695125825901",
2850
- alt: "search icon",
2851
- width: "20",
2852
- height: "20"
2853
- }, null, 8, ur)
2854
- ], 512)
2855
- ])) : _("", !0),
2856
- e.usePortalSwitcher ? (s(), i("div", _r, [
2857
- t("button", {
2858
- class: h({
2859
- "menu-portal-switcher-btn": !0,
2860
- "is-active": $(v)
2861
- }),
2862
- style: Q({
2863
- backgroundColor: $(v) && $(u) === !0 ? "#1a76bc" : $(v) ? "#cbeefa" : "transparent"
2864
- }),
2865
- onClick: ue(ae, ["prevent"])
2866
- }, [
2867
- t("img", {
2868
- src: $(u) === !0 ? "https://a.storyblok.com/f/230581/14x12/84ff5537cb/portal-switcher-white.svg" : "https://a.storyblok.com/f/230581/14x12/1b00a4a551/portal-switcher.svg",
2869
- alt: "portalswitchericon",
2870
- width: "20",
2871
- height: "20"
2872
- }, null, 8, hr)
2873
- ], 6),
2874
- U(t("div", pr, [
2875
- t("ul", mr, [
2876
- (s(!0), i(D, null, V(e.portals, (O, z) => (s(), i("li", {
2877
- key: z,
2878
- class: "portal-switcher-link"
2879
- }, [
2880
- S($(L), { "link-type": "regular" }, {
2881
- default: k(() => [
2882
- t("a", {
2883
- href: O.link,
2884
- onClick: j[3] || (j[3] = (J) => x(n) ? n.value = !1 : n = !1)
2885
- }, [
2886
- t("img", {
2887
- src: O.icon
2888
- }, null, 8, vr),
2889
- t("div", null, c(O.name), 1)
2890
- ], 8, fr)
2891
- ]),
2892
- _: 2
2893
- }, 1024)
2894
- ]))), 128))
2895
- ])
2896
- ], 512), [
2897
- [W, $(v)]
2898
- ])
2899
- ])) : _("", !0),
2900
- t("button", {
2901
- class: "mobile-burger-wrapper",
2902
- "aria-label": "Toggle menu",
2903
- onClick: ue(de, ["prevent"])
2904
- }, [
2905
- t("img", {
2906
- width: "20",
2907
- height: "20",
2908
- src: $(u) === !0 ? "https://a.storyblok.com/f/230581/17x18/20e9329e46/close-white.svg" : "https://a.storyblok.com/f/230581/23x14/739e917bca/burger-menu-line.svg",
2909
- alt: "burger menu icon"
2910
- }, null, 8, gr)
2911
- ])
2912
- ]),
2913
- U(t("div", br, [
2914
- t("ul", null, [
2915
- d(w.$slots, "mobile-main-nav-items", {}, void 0, !0)
2916
- ]),
2917
- t("ul", kr, [
2918
- d(w.$slots, "mobile-dropdown-title", {}, void 0, !0),
2919
- d(w.$slots, "mobile-dropdown-links", {}, void 0, !0)
2920
- ])
2921
- ], 512), [
2922
- [W, $(u)]
2923
- ])
2924
- ], 2)
2925
- ])
2926
- ]));
2927
- }
2928
- }), $r = /* @__PURE__ */ g(yr, [["__scopeId", "data-v-59a92379"]]), wr = { class: "language__wrapper" }, Br = { class: "language__content" }, Sr = { class: "language__headline" }, Ir = { class: "language__paragraph" }, Cr = { class: "language__links" }, Tr = /* @__PURE__ */ b({
2929
- __name: "language-switcher",
2930
- props: {
2931
- headline: {
2932
- type: String,
2933
- default: ""
2934
- },
2935
- paragraph: {
2936
- type: String,
2937
- default: ""
2938
- }
2939
- },
2940
- setup(e) {
2941
- return (a, r) => (s(), i("div", wr, [
2942
- t("div", Br, [
2943
- t("h2", Sr, c(e.headline), 1),
2944
- t("p", Ir, c(e.paragraph), 1),
2945
- t("div", Cr, [
2946
- d(a.$slots, "language-links", {}, void 0, !0)
2947
- ])
2948
- ])
2949
- ]));
2950
- }
2951
- }), qr = /* @__PURE__ */ g(Tr, [["__scopeId", "data-v-dc8cc97e"]]), Lr = { class: "pagination__wrapper" }, Ar = { class: "pagination__content" }, Dr = /* @__PURE__ */ b({
2952
- __name: "pagination",
2953
- props: {
2954
- isPreviousDisabled: {
2955
- type: Boolean,
2956
- required: !0
2957
- },
2958
- isNextDisabled: {
2959
- type: Boolean,
2960
- required: !0
2961
- }
2962
- },
2963
- emits: ["previous", "next"],
2964
- setup(e) {
2965
- return (a, r) => (s(), i("div", Lr, [
2966
- t("div", Ar, [
2967
- S(se, {
2968
- disabled: e.isPreviousDisabled,
2969
- variant: "previous",
2970
- "aria-label": "previous",
2971
- onClick: r[0] || (r[0] = (l) => a.$emit("previous"))
2972
- }, null, 8, ["disabled"]),
2973
- d(a.$slots, "pagination-numbers"),
2974
- S(se, {
2975
- disabled: e.isNextDisabled,
2976
- variant: "next",
2977
- "aria-label": "next",
2978
- onClick: r[1] || (r[1] = (l) => a.$emit("next"))
2979
- }, null, 8, ["disabled"])
2980
- ])
2981
- ]));
2982
- }
2983
- }), Vr = /* @__PURE__ */ g(Dr, [["__scopeId", "data-v-da6d07c9"]]), Pr = {}, Fr = { class: "search__wrapper" };
2984
- function Mr(e, a) {
2985
- return s(), i("div", Fr, [
2986
- d(e.$slots, "default", { class: "search__content" })
2987
- ]);
2988
- }
2989
- const Or = /* @__PURE__ */ g(Pr, [["render", Mr], ["__scopeId", "data-v-c07a6cf3"]]), zr = { class: "dropdown" }, Hr = ["aria-expanded"], Rr = /* @__PURE__ */ b({
2990
- __name: "select-multiple",
2991
- props: {
2992
- label: { default: "" },
2993
- options: { default: () => [] },
2994
- selectedOptions: { default: () => [] }
2995
- },
2996
- emits: ["filter", "remove-filter"],
2997
- setup(e, { emit: a }) {
2998
- const r = I(!1), l = e, o = a;
2999
- function u(v, f) {
3000
- !l.selectedOptions.includes(v) && !l.selectedOptions.includes(f) ? o("filter", v) : o("remove-filter", v);
3001
- }
3002
- function p() {
3003
- r.value = !1;
3004
- }
3005
- const n = T(() => l.options.length > 8);
3006
- return (v, f) => U((s(), i("div", zr, [
3007
- t("button", {
3008
- class: h(["dropdown-button", { clicked: r.value }]),
3009
- style: Q({ "z-index": r.value ? 2 : 0 }),
3010
- "aria-expanded": r.value ? "true" : "false",
3011
- onClick: f[0] || (f[0] = (y) => r.value = !r.value)
3012
- }, [
3013
- d(v.$slots, "button", {}, () => [
3014
- Y(c(v.label), 1)
3015
- ], !0)
3016
- ], 14, Hr),
3017
- t("div", {
3018
- class: h([{ hidden: !r.value, "adjust-height": n.value }, "dropdown-content"])
3019
- }, [
3020
- (s(!0), i(D, null, V(v.options, (y) => (s(), C($(fe), {
3021
- id: y.value,
3022
- key: y.value,
3023
- name: y.text,
3024
- required: !1,
3025
- disabled: !1,
3026
- value: y.value,
3027
- checked: v.selectedOptions.includes(y.value) || v.selectedOptions.includes(y.text),
3028
- onInput: (A) => u(y.value, y.text)
3029
- }, {
3030
- default: k(() => [
3031
- Y(c(y.text), 1)
3032
- ]),
3033
- _: 2
3034
- }, 1032, ["id", "name", "value", "checked", "onInput"]))), 128))
3035
- ], 2)
3036
- ])), [
3037
- [$(ve), p]
3038
- ]);
3039
- }
3040
- }), Er = /* @__PURE__ */ g(Rr, [["__scopeId", "data-v-c62b3647"]]), Nr = { class: "promo__content" }, jr = { class: "pallet-jack__media-wrap" }, Ur = { class: "pallet-jack-link" }, Gr = { class: "pallet-jack__media-wrap__inner-wrap" }, Kr = { class: "pallet-jack__media-wrap__content-wrap" }, Jr = { class: "regular-blue" }, Wr = /* @__PURE__ */ b({
3041
- __name: "pallet-jack",
3042
- props: {
3043
- label: { default: "" },
3044
- headline: {},
3045
- linkText: { default: "" },
3046
- reverse: { type: Boolean, default: !1 },
3047
- variant: { default: "default" },
3048
- linkType: { default: "link" },
3049
- teaser: { type: Boolean, default: !1 },
3050
- shortDescription: { default: "" },
3051
- text: { default: "" }
3052
- },
3053
- setup(e) {
3054
- const a = {
3055
- dark: "promo__wrapper--dark",
3056
- light: "promo__wrapper--light",
3057
- default: "promo__wrapper--default"
3058
- }, r = e, l = T(() => a[r.variant]);
3059
- return (o, u) => (s(), i("div", {
3060
- class: h([
3061
- "promo__wrapper",
3062
- l.value,
3063
- o.teaser ? "promo__wrapper--teaser" : ""
3064
- ])
3065
- }, [
3066
- t("div", Nr, [
3067
- t("div", {
3068
- class: h([
3069
- "promo__video",
3070
- o.reverse ? "promo__video--reverse" : "promo__video--default"
3071
- ])
3072
- }, [
3073
- t("div", jr, [
3074
- t("div", Ur, [
3075
- d(o.$slots, "pallet-jack-link")
3076
- ]),
3077
- t("div", Gr, [
3078
- d(o.$slots, "pallet-jack-video")
3079
- ]),
3080
- t("div", Kr, [
3081
- t("h3", Jr, c(o.headline), 1),
3082
- t("p", null, c(o.shortDescription), 1)
3083
- ])
3084
- ])
3085
- ], 2),
3086
- t("div", {
3087
- class: h([
3088
- "promo__text",
3089
- o.reverse ? "promo__text--reverse" : "promo__text--default"
3090
- ])
3091
- }, [
3092
- o.label ? (s(), C(ee, {
3093
- key: 0,
3094
- text: o.label,
3095
- "label-dark": o.variant === "dark"
3096
- }, null, 8, ["text", "label-dark"])) : _("", !0),
3097
- t("div", {
3098
- class: h([
3099
- "promo__title",
3100
- o.variant === "dark" ? "promo__title--dark" : ""
3101
- ])
3102
- }, [
3103
- d(o.$slots, "promo-text")
3104
- ], 2),
3105
- o.linkType === "link" ? (s(), C(L, {
3106
- key: 1,
3107
- "link-type": o.variant === "dark" ? "regular_dark" : (o.variant === "light", "regular_light"),
3108
- arrow: ""
3109
- }, {
3110
- default: k(() => [
3111
- d(o.$slots, "promo-link")
3112
- ]),
3113
- _: 3
3114
- }, 8, ["link-type"])) : _("", !0),
3115
- o.linkType === "button" ? (s(), C(L, {
3116
- key: 2,
3117
- "link-type": o.variant === "dark" ? "secondary_dark" : (o.variant === "light", "secondary")
3118
- }, {
3119
- default: k(() => [
3120
- d(o.$slots, "promo-link")
3121
- ]),
3122
- _: 3
3123
- }, 8, ["link-type"])) : _("", !0)
3124
- ], 2)
3125
- ])
3126
- ], 2));
3127
- }
3128
- }), Yr = /* @__PURE__ */ g(Wr, [["__scopeId", "data-v-00c0bad3"]]), Zr = {
3129
- install: (e) => {
3130
- e.component("AtomButton", se), e.component("AtomCheckbox", fe), e.component("AtomChip", Ne), e.component("AtomDropdown", Qe), e.component("AtomImage", M), e.component("AtomLabel", ee), e.component("AtomLink", L), e.component("AtomRadioButton", nt), e.component("AtomSelect", pt), e.component("AtomSelectMultiple", Er), e.component("AtomSlider", St), e.component("AtomTextarea", Dt), e.component("AtomTextField", jt), e.component("AtomVideo", te), e.component("MoleculeAddress", sa), e.component("MoleculeBulletList", ca), e.component("MoleculeCard", ma), e.component("MoleculeColumnCard", be), e.component("MoleculeEventCard", Ta), e.component("MoleculeFlashcard", ke), e.component("MoleculeModal", ge), e.component("MoleculeTextCard", Ga), e.component("BlockAccordion", ao), e.component("BlockFacts", Bo), e.component("BlockFeatures", Do), e.component("BlockFlashcards", Oo), e.component("BlockFormScript", Uo), e.component("BlockHeadline", Wo), e.component("BlockHero", rl), e.component("BlockImage", hl), e.component("BlockImageGallery", gl), e.component("BlockLogoWall", Cl), e.component("BlockMicroStories", Dl), e.component("BlockPolicy", Ol), e.component("BlockProductHero", Kl), e.component("BlockPromo", Yl), e.component("BlockQuote", ns), e.component("BlockRichText", hs), e.component("BlockRichTextColumns", ks), e.component("BlockTimeline", Ls), e.component("BlockCardDisplay", no), e.component("BlockColumnGrid", mo), e.component("BlockVimeo", Ms), e.component("BlockPalletJack", Yr), e.component("BlockFrontPageHero", Zs), e.component("Organism404", oi), e.component("OrganismFilter", di), e.component("OrganismFooter", zi), e.component("OrganismHeader", $r), e.component("OrganismLanguageSwitcher", qr), e.component("OrganismPagination", Vr), e.component("OrganismSearch", Or);
3131
- }
3132
- };
3133
- export {
3134
- se as AtomButton,
3135
- fe as AtomCheckbox,
3136
- Ne as AtomChip,
3137
- Qe as AtomDropdown,
3138
- M as AtomImage,
3139
- ee as AtomLabel,
3140
- L as AtomLink,
3141
- nt as AtomRadioButton,
3142
- pt as AtomSelect,
3143
- Er as AtomSelectMultiple,
3144
- St as AtomSlider,
3145
- jt as AtomTextField,
3146
- Dt as AtomTextarea,
3147
- te as AtomVideo,
3148
- ao as BlockAccordion,
3149
- no as BlockCardDisplay,
3150
- mo as BlockColumnGrid,
3151
- Bo as BlockFacts,
3152
- Do as BlockFeatures,
3153
- Oo as BlockFlashcards,
3154
- Uo as BlockFormScript,
3155
- Zs as BlockFrontPageHero,
3156
- Wo as BlockHeadline,
3157
- rl as BlockHero,
3158
- hl as BlockImage,
3159
- gl as BlockImageGallery,
3160
- Cl as BlockLogoWall,
3161
- Dl as BlockMicroStories,
3162
- Yr as BlockPalletJack,
3163
- Ol as BlockPolicy,
3164
- Kl as BlockProductHero,
3165
- Yl as BlockPromo,
3166
- ns as BlockQuote,
3167
- hs as BlockRichText,
3168
- ks as BlockRichTextColumns,
3169
- Ls as BlockTimeline,
3170
- Ms as BlockVimeo,
3171
- sa as MoleculeAddress,
3172
- ca as MoleculeBulletList,
3173
- ma as MoleculeCard,
3174
- be as MoleculeColumnCard,
3175
- Ta as MoleculeEventCard,
3176
- ke as MoleculeFlashcard,
3177
- ge as MoleculeModal,
3178
- Ga as MoleculeTextCard,
3179
- oi as Organism404,
3180
- di as OrganismFilter,
3181
- zi as OrganismFooter,
3182
- $r as OrganismHeader,
3183
- qr as OrganismLanguageSwitcher,
3184
- Vr as OrganismPagination,
3185
- Or as OrganismSearch,
3186
- Zr as default
3187
- };