@museumwnf/viewer-layout 2.17.0 → 2.18.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.
@@ -1,454 +0,0 @@
1
- import "./OnDisplayIn-ZfRUtPd1.js";
2
- import { a as e, l as t, v as n } from "./TimelineEventList-D5Hot788.js";
3
- import { Fragment as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createTextVNode as l, normalizeClass as u, normalizeStyle as d, onBeforeUnmount as f, onMounted as p, openBlock as m, ref as h, renderList as g, toDisplayString as _, unref as v, vModelCheckbox as y, vShow as b, watch as x, withCtx as S, withDirectives as C } from "vue";
4
- import { useI18n as w } from "@museumwnf/viewer-core/i18n";
5
- import { md as T, mdInline as E, renderBlock as D, renderInline as ee, useI18n as O } from "@museumwnf/viewer-core";
6
- //#region src/content/FeaturedPartners.vue
7
- var te = {
8
- key: 0,
9
- class: "mwnf-featured-partners"
10
- }, k = { class: "mwnf-featured-partners__heading" }, A = { class: "mwnf-featured-partners__carousel" }, j = {
11
- key: 0,
12
- class: "mwnf-featured-partners__image"
13
- }, M = ["src", "alt"], N = { class: "mwnf-featured-partners__body" }, P = { class: "mwnf-featured-partners__name" }, F = { class: "mwnf-featured-partners__location" }, I = { key: 0 }, L = { class: "mwnf-featured-partners__description" }, R = {
14
- key: 0,
15
- class: "mwnf-featured-partners__controls"
16
- }, z = ["aria-label", "onClick"], B = 8e3, V = {
17
- __name: "FeaturedPartners",
18
- props: {
19
- records: {
20
- type: Array,
21
- default: () => []
22
- },
23
- partners: {
24
- type: Array,
25
- default: () => []
26
- },
27
- descriptionLength: {
28
- type: Number,
29
- default: 420
30
- },
31
- headingEntry: {
32
- type: String,
33
- default: "partner.featured"
34
- }
35
- },
36
- setup(e) {
37
- let t = e;
38
- function d(e) {
39
- return String(e ?? "").replace(/<[^>]*>/g, " ").replace(/\s+/g, " ").trim();
40
- }
41
- function v(e, t) {
42
- if (!e || e.length <= t) return e;
43
- let n = e.lastIndexOf(" ", t);
44
- return `${e.slice(0, n > 0 ? n : t)}...`;
45
- }
46
- let y = i(() => t.partners.length ? t.partners.map((e) => ({
47
- id: e.id,
48
- name: e.plainName,
49
- logo: e.pictures?.[0]?.url ?? e.logos?.[0]?.url ?? null,
50
- city: e.city,
51
- country: e.country,
52
- description: v(d(e.description), t.descriptionLength),
53
- route: e.route
54
- })) : t.records), x = h(0), w = null;
55
- function T(e) {
56
- x.value = e, E();
57
- }
58
- function E() {
59
- w && clearInterval(w), y.value.length > 0 && (w = setInterval(() => {
60
- x.value = (x.value + 1) % y.value.length;
61
- }, B));
62
- }
63
- return p(E), f(() => w && clearInterval(w)), (t, i) => y.value.length ? (m(), s("section", te, [
64
- c("h2", k, _(t.$t(e.headingEntry)), 1),
65
- c("div", A, [(m(!0), s(r, null, g(y.value, (e, t) => C((m(), a(n, {
66
- key: e.id,
67
- to: e.route,
68
- class: "mwnf-featured-partners__card"
69
- }, {
70
- default: S(() => [e.logo ? (m(), s("span", j, [c("img", {
71
- src: e.logo,
72
- alt: e.name,
73
- class: "mwnf-featured-partners__logo"
74
- }, null, 8, M)])) : o("", !0), c("span", N, [
75
- c("span", P, _(e.name), 1),
76
- c("span", F, [e.city ? (m(), s("span", I, _(e.city) + ", ", 1)) : o("", !0), l(_(e.country), 1)]),
77
- c("span", L, _(e.description), 1)
78
- ])]),
79
- _: 2
80
- }, 1032, ["to"])), [[b, t === x.value]])), 128))]),
81
- y.value.length > 1 ? (m(), s("div", R, [(m(!0), s(r, null, g(y.value, (e, n) => (m(), s("button", {
82
- key: e.id,
83
- class: u(["mwnf-featured-partners__bullet", { "mwnf-featured-partners__bullet--active": n === x.value }]),
84
- "aria-label": `${t.$t("core.action.show")} ${e.name}`,
85
- onClick: (e) => T(n)
86
- }, null, 10, z))), 128))])) : o("", !0)
87
- ])) : o("", !0);
88
- }
89
- }, H = { class: "mwnf-sibling-galleries" }, U = {
90
- key: 0,
91
- class: "mwnf-sibling-galleries__galleries"
92
- }, W = { class: "mwnf-sibling-galleries__header" }, G = { class: "mwnf-sibling-galleries__heading" }, K = ["href"], q = { class: "mwnf-sibling-galleries__grid" }, J = {
93
- key: 0,
94
- class: "mwnf-sibling-galleries__image"
95
- }, Y = ["src", "alt"], X = {
96
- key: 1,
97
- class: "mwnf-sibling-galleries__image mwnf-sibling-galleries__image--empty"
98
- }, Z = { class: "mwnf-sibling-galleries__name" }, Q = {
99
- key: 1,
100
- class: "mwnf-sibling-galleries__museums"
101
- }, ne = { class: "mwnf-sibling-galleries__heading" }, re = { class: "mwnf-sibling-galleries__museums-grid" }, ie = ["href"], ae = { class: "mwnf-sibling-galleries__museum-image" }, oe = { class: "mwnf-sibling-galleries__museum-name" }, se = {
102
- __name: "SiblingGalleries",
103
- props: {
104
- galleries: {
105
- type: Array,
106
- default: () => []
107
- },
108
- museums: {
109
- type: Array,
110
- default: () => []
111
- },
112
- galleriesHeadingEntry: {
113
- type: String,
114
- default: "sibling.galleries"
115
- },
116
- seeMoreGalleriesEntry: {
117
- type: String,
118
- default: "sibling.seeMoreGalleries"
119
- },
120
- seeMoreGalleriesHref: {
121
- type: String,
122
- default: ""
123
- },
124
- museumsHeadingEntry: {
125
- type: String,
126
- default: "sibling.otherVirtualMuseums"
127
- }
128
- },
129
- setup(e) {
130
- return (t, i) => (m(), s("section", H, [e.galleries.length ? (m(), s("div", U, [c("div", W, [c("p", G, _(t.$t(e.galleriesHeadingEntry)), 1), e.seeMoreGalleriesHref ? (m(), s("a", {
131
- key: 0,
132
- href: e.seeMoreGalleriesHref,
133
- target: "_blank",
134
- rel: "noopener",
135
- class: "mwnf-sibling-galleries__see-more"
136
- }, _(t.$t(e.seeMoreGalleriesEntry)) + " » ", 9, K)) : o("", !0)]), c("div", q, [(m(!0), s(r, null, g(e.galleries, (e) => (m(), a(n, {
137
- key: e.id,
138
- to: e.route,
139
- class: u(["mwnf-sibling-galleries__gallery", { "mwnf-sibling-galleries__gallery--no-link": !e.route }])
140
- }, {
141
- default: S(() => [e.image ? (m(), s("span", J, [c("img", {
142
- src: e.image,
143
- alt: e.name
144
- }, null, 8, Y)])) : (m(), s("span", X)), c("p", Z, _(e.name), 1)]),
145
- _: 2
146
- }, 1032, ["to", "class"]))), 128))])])) : o("", !0), e.museums.length ? (m(), s("div", Q, [c("div", ne, _(t.$t(e.museumsHeadingEntry)), 1), c("div", re, [(m(!0), s(r, null, g(e.museums, (e) => (m(), s("a", {
147
- key: e.name,
148
- href: e.href || e.to,
149
- target: "_blank",
150
- rel: "noopener",
151
- class: "mwnf-sibling-galleries__museum",
152
- style: d({
153
- "--mwnf-museum-bg": e.accent || "var(--mwnf-color-border)",
154
- "--mwnf-museum-text": e.textColor || "inherit"
155
- })
156
- }, [c("div", ae, _(e.name.split(" ").map((e) => e[0]).join("")), 1), c("p", oe, _(e.name), 1)], 12, ie))), 128))])])) : o("", !0)]));
157
- }
158
- }, ce = {
159
- key: 0,
160
- class: "mwnf-popup-logo"
161
- }, le = ["aria-label"], ue = ["innerHTML"], de = ["innerHTML"], fe = {
162
- __name: "PopupLogo",
163
- props: {
164
- content: {
165
- type: String,
166
- default: ""
167
- },
168
- rawHtml: {
169
- type: Boolean,
170
- default: !1
171
- },
172
- enabled: {
173
- type: Boolean,
174
- default: !0
175
- },
176
- closeLabel: {
177
- type: String,
178
- default: "core.action.close"
179
- }
180
- },
181
- setup(e) {
182
- let t = e, n = h(!1), r = i(() => t.rawHtml ? t.content : ee(t.content)), a = i(() => t.enabled && !!t.content && !n.value);
183
- return (t, i) => a.value ? (m(), s("div", ce, [c("button", {
184
- class: "mwnf-popup-logo__close",
185
- "aria-label": t.$t(e.closeLabel),
186
- onClick: i[0] ||= (e) => n.value = !0
187
- }, "✕", 8, le), e.rawHtml ? (m(), s("div", {
188
- key: 0,
189
- class: "mwnf-popup-logo__content",
190
- innerHTML: r.value
191
- }, null, 8, ue)) : (m(), s("div", {
192
- key: 1,
193
- class: "mwnf-popup-logo__content",
194
- innerHTML: r.value
195
- }, null, 8, de))])) : o("", !0);
196
- }
197
- }, pe = { class: "mwnf-picture-gallery" }, me = {
198
- key: 0,
199
- class: "mwnf-picture-gallery__selected"
200
- }, he = { class: "mwnf-picture-gallery__image" }, ge = ["src", "alt"], _e = { class: "mwnf-picture-gallery__details" }, ve = { class: "mwnf-picture-gallery__detail mwnf-picture-gallery__detail--title" }, ye = { key: 0 }, be = ["innerHTML"], xe = {
201
- key: 0,
202
- class: "mwnf-picture-gallery__label"
203
- }, Se = ["innerHTML"], Ce = {
204
- key: 0,
205
- class: "mwnf-picture-gallery__detail"
206
- }, we = {
207
- key: 2,
208
- class: "mwnf-picture-gallery__unresolved"
209
- }, Te = {
210
- key: 1,
211
- class: "mwnf-picture-gallery__empty"
212
- }, Ee = {
213
- key: 2,
214
- class: "mwnf-picture-gallery__strip"
215
- }, De = { class: "mwnf-picture-gallery__thumbs" }, Oe = ["onClick"], ke = ["src", "alt"], Ae = { class: "mwnf-picture-gallery__thumb-text" }, je = { key: 0 }, Me = ["innerHTML"], Ne = { key: 1 }, Pe = {
216
- key: 0,
217
- class: "mwnf-picture-gallery__toggle"
218
- }, Fe = {
219
- __name: "PictureGallery",
220
- props: {
221
- pictures: {
222
- type: Array,
223
- default: () => []
224
- },
225
- selectedId: {
226
- type: [String, Number],
227
- default: null
228
- },
229
- seeItemEntry: {
230
- type: String,
231
- default: "exhibition.theme.seeItemEntry"
232
- },
233
- unresolvedEntry: {
234
- type: String,
235
- default: "exhibition.theme.recordNotInSite"
236
- },
237
- emptyEntry: {
238
- type: String,
239
- default: "exhibition.theme.additionalContent"
240
- },
241
- addRelatedEntry: {
242
- type: String,
243
- default: "exhibition.theme.addRelatedWorks"
244
- },
245
- hideRelatedEntry: {
246
- type: String,
247
- default: "exhibition.theme.hideRelatedWorks"
248
- }
249
- },
250
- emits: ["update:selectedId"],
251
- setup(e, { emit: t }) {
252
- let d = e, f = t, { t: p } = O(), b = i(() => d.pictures.find((e) => e.id === d.selectedId) ?? null), w = i(() => d.pictures.some((e) => e.backRelated?.length)), T = h(!1);
253
- x(() => d.pictures, () => {
254
- T.value = !1;
255
- });
256
- let E = i(() => T.value ? d.pictures : d.pictures.filter((e) => !e.backRelated?.length));
257
- function D(e) {
258
- f("update:selectedId", e.id);
259
- }
260
- return (t, i) => (m(), s("div", pe, [b.value ? (m(), s("div", me, [c("div", he, [c("img", {
261
- src: b.value.image,
262
- alt: b.value.imageAlt ?? ""
263
- }, null, 8, ge)]), c("div", _e, [
264
- c("div", ve, [b.value.imageCaption ? (m(), s("span", ye, _(b.value.imageCaption) + ", ", 1)) : o("", !0), c("span", { innerHTML: b.value.name }, null, 8, be)]),
265
- (m(!0), s(r, null, g(b.value.fields ?? [], (e, t) => (m(), s("div", {
266
- key: t,
267
- class: "mwnf-picture-gallery__detail"
268
- }, [e.label ? (m(), s("span", xe, _(e.label), 1)) : o("", !0), c("span", { innerHTML: e.value }, null, 8, Se)]))), 128)),
269
- b.value.detail ? (m(), s("div", Ce, _(b.value.detail), 1)) : o("", !0),
270
- b.value.to ? (m(), a(n, {
271
- key: 1,
272
- class: "mwnf-picture-gallery__link",
273
- to: b.value.to
274
- }, {
275
- default: S(() => [l(_(v(p)(e.seeItemEntry)) + " →", 1)]),
276
- _: 1
277
- }, 8, ["to"])) : (m(), s("div", we, _(v(p)(e.unresolvedEntry)), 1))
278
- ])])) : (m(), s("div", Te, _(v(p)(e.emptyEntry)), 1)), e.pictures.length ? (m(), s("div", Ee, [c("ul", De, [(m(!0), s(r, null, g(E.value, (t) => (m(), s("li", {
279
- key: t.id,
280
- class: u(["mwnf-picture-gallery__thumb", {
281
- "mwnf-picture-gallery__thumb--active": t.id === e.selectedId,
282
- "mwnf-picture-gallery__thumb--related": t.backRelated?.length
283
- }])
284
- }, [c("button", {
285
- type: "button",
286
- onClick: (e) => D(t)
287
- }, [c("img", {
288
- src: t.image,
289
- alt: t.imageAlt ?? "",
290
- loading: "lazy"
291
- }, null, 8, ke)], 8, Oe), c("div", Ae, [
292
- t.imageCaption ? (m(), s("span", je, _(t.imageCaption) + ", ", 1)) : o("", !0),
293
- c("span", {
294
- class: "mwnf-picture-gallery__thumb-name",
295
- innerHTML: t.name
296
- }, null, 8, Me),
297
- t.detail ? (m(), s("span", Ne, ", " + _(t.detail), 1)) : o("", !0)
298
- ])], 2))), 128))]), w.value ? (m(), s("label", Pe, [C(c("input", {
299
- "onUpdate:modelValue": i[0] ||= (e) => T.value = e,
300
- type: "checkbox"
301
- }, null, 512), [[y, T.value]]), c("span", null, _(T.value ? v(p)(e.hideRelatedEntry) : v(p)(e.addRelatedEntry)), 1)])) : o("", !0)])) : o("", !0)]));
302
- }
303
- }, Ie = {
304
- key: 0,
305
- class: "mwnf-picture-narrative"
306
- }, Le = ["innerHTML"], Re = {
307
- key: 1,
308
- class: "mwnf-picture-narrative__related"
309
- }, ze = { class: "mwnf-picture-narrative__heading" }, Be = { class: "mwnf-picture-narrative__images" }, Ve = { class: "mwnf-picture-narrative__image mwnf-picture-narrative__image--main" }, He = ["src", "alt"], Ue = { class: "mwnf-picture-narrative__thumb-text" }, We = ["innerHTML"], Ge = { key: 0 }, Ke = ["onClick"], qe = ["src", "alt"], Je = { class: "mwnf-picture-narrative__thumb-text" }, $ = ["innerHTML"], Ye = { key: 0 }, Xe = {
310
- key: 0,
311
- class: "mwnf-picture-narrative__relation"
312
- }, Ze = {
313
- key: 2,
314
- class: "mwnf-picture-narrative__related"
315
- }, Qe = { class: "mwnf-picture-narrative__heading" }, $e = { class: "mwnf-picture-narrative__text mwnf-picture-narrative__text--reciprocal" }, et = { class: "mwnf-picture-narrative__image" }, tt = ["src", "alt"], nt = { class: "mwnf-picture-narrative__thumb-text" }, rt = ["innerHTML"], it = { key: 0 }, at = {
316
- __name: "PictureNarrative",
317
- props: {
318
- picture: {
319
- type: Object,
320
- default: null
321
- },
322
- contextualDescription: {
323
- type: String,
324
- default: ""
325
- },
326
- relatedHeadingEntry: {
327
- type: String,
328
- default: "exhibition.related.items"
329
- },
330
- reciprocalFallbackEntry: {
331
- type: String,
332
- default: "exhibition.related.reciprocal"
333
- }
334
- },
335
- emits: ["select"],
336
- setup(e, { emit: t }) {
337
- let n = e, a = t, { t: l } = O(), u = i(() => n.contextualDescription ? D(n.contextualDescription, { breaks: !0 }) : ""), d = i(() => n.picture?.related ?? []), f = i(() => n.picture?.backRelated?.[0] ?? null);
338
- function p(e) {
339
- a("select", e.id);
340
- }
341
- return (t, n) => e.picture ? (m(), s("div", Ie, [
342
- u.value ? (m(), s("div", {
343
- key: 0,
344
- class: "mwnf-picture-narrative__text mwnf-sheet__block",
345
- innerHTML: u.value
346
- }, null, 8, Le)) : o("", !0),
347
- d.value.length ? (m(), s("div", Re, [c("div", ze, _(v(l)(e.relatedHeadingEntry)), 1), c("div", Be, [c("div", Ve, [c("img", {
348
- src: e.picture.image,
349
- alt: e.picture.imageAlt ?? ""
350
- }, null, 8, He), c("div", Ue, [c("span", { innerHTML: e.picture.name }, null, 8, We), e.picture.detail ? (m(), s("span", Ge, ", " + _(e.picture.detail), 1)) : o("", !0)])]), (m(!0), s(r, null, g(d.value, (e) => (m(), s("div", {
351
- key: e.picture.id,
352
- class: "mwnf-picture-narrative__image"
353
- }, [
354
- c("button", {
355
- type: "button",
356
- onClick: (t) => p(e.picture)
357
- }, [c("img", {
358
- src: e.picture.image,
359
- alt: e.picture.imageAlt ?? ""
360
- }, null, 8, qe)], 8, Ke),
361
- c("div", Je, [c("span", { innerHTML: e.picture.name }, null, 8, $), e.picture.detail ? (m(), s("span", Ye, ", " + _(e.picture.detail), 1)) : o("", !0)]),
362
- e.text ? (m(), s("div", Xe, _(e.text), 1)) : o("", !0)
363
- ]))), 128))])])) : o("", !0),
364
- f.value ? (m(), s("div", Ze, [
365
- c("div", Qe, _(v(l)(e.relatedHeadingEntry)), 1),
366
- c("p", $e, _(f.value.reciprocalText || v(l)(e.reciprocalFallbackEntry)), 1),
367
- c("div", et, [c("button", {
368
- type: "button",
369
- onClick: n[0] ||= (e) => p(f.value.picture)
370
- }, [c("img", {
371
- src: f.value.picture.image,
372
- alt: f.value.picture.imageAlt ?? ""
373
- }, null, 8, tt)]), c("div", nt, [c("span", { innerHTML: f.value.picture.name }, null, 8, rt), f.value.picture.detail ? (m(), s("span", it, ", " + _(f.value.picture.detail), 1)) : o("", !0)])])
374
- ])) : o("", !0)
375
- ])) : o("", !0);
376
- }
377
- }, ot = ["innerHTML"], st = ["innerHTML"], ct = {
378
- __name: "SpecialFeatures",
379
- props: {
380
- features: {
381
- type: Array,
382
- default: () => []
383
- },
384
- tr: {
385
- type: Function,
386
- default: () => ({})
387
- },
388
- language: {
389
- type: String,
390
- default: ""
391
- },
392
- glossary: { default: void 0 },
393
- heading: {
394
- type: String,
395
- default: "sheet.field.specialFeatures"
396
- },
397
- dir: {
398
- type: String,
399
- default: ""
400
- }
401
- },
402
- setup(n) {
403
- let l = n, { t: u } = w(), d = i(() => [...l.features].sort((e, t) => (e.display_order ?? Infinity) - (t.display_order ?? Infinity)).map((e) => {
404
- let t = l.tr(e) ?? {};
405
- return {
406
- id: e.id,
407
- name: E(t.name ?? e.internal_name ?? e.id),
408
- meta: [
409
- t.location,
410
- t.dates,
411
- (e.artist_names ?? []).join(", ")
412
- ].filter(Boolean),
413
- description: T(t.description, { glossary: l.glossary }),
414
- images: (e.images ?? []).map((e) => ({
415
- url: e.url,
416
- alt: e.captions?.[l.language] ?? ""
417
- }))
418
- };
419
- }));
420
- return (i, l) => d.value.length ? (m(), a(t, {
421
- key: 0,
422
- heading: n.heading ? v(u)(n.heading) : "",
423
- dir: n.dir,
424
- class: "mwnf-special-features"
425
- }, {
426
- default: S(() => [(m(!0), s(r, null, g(d.value, (t) => (m(), s("div", {
427
- key: t.id,
428
- class: "mwnf-special-features__item"
429
- }, [
430
- c("h3", {
431
- class: "mwnf-special-features__name",
432
- innerHTML: t.name
433
- }, null, 8, ot),
434
- (m(!0), s(r, null, g(t.meta, (e, t) => (m(), s("p", {
435
- key: t,
436
- class: "mwnf-special-features__meta"
437
- }, _(e), 1))), 128)),
438
- t.description ? (m(), s("div", {
439
- key: 0,
440
- class: "mwnf-special-features__description mwnf-sheet__block",
441
- innerHTML: t.description
442
- }, null, 8, st)) : o("", !0),
443
- t.images.length ? (m(), a(e, {
444
- key: 1,
445
- images: t.images,
446
- variant: "row"
447
- }, null, 8, ["images"])) : o("", !0)
448
- ]))), 128))]),
449
- _: 1
450
- }, 8, ["heading", "dir"])) : o("", !0);
451
- }
452
- };
453
- //#endregion
454
- export { se as a, fe as i, at as n, V as o, Fe as r, ct as t };