@manifest-editor/components 1.3.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +421 -156
- package/dist/index.css +727 -5
- package/dist/index.d.cts +61 -8
- package/dist/index.d.ts +61 -8
- package/dist/index.js +435 -172
- package/package.json +6 -5
package/dist/index.js
CHANGED
|
@@ -5,32 +5,27 @@ import "iiif-browser/dist/index.css";
|
|
|
5
5
|
|
|
6
6
|
// src/ActionButton.tsx
|
|
7
7
|
import { Button } from "react-aria-components";
|
|
8
|
-
|
|
9
|
-
// src/utils.ts
|
|
10
|
-
import { clsx } from "clsx";
|
|
11
8
|
import { twMerge } from "tailwind-merge";
|
|
12
|
-
var cn = (...inputs) => {
|
|
13
|
-
return twMerge(clsx(inputs));
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
// src/ActionButton.tsx
|
|
17
9
|
import { jsx } from "react/jsx-runtime";
|
|
18
10
|
function ActionButton({
|
|
19
11
|
className: className2,
|
|
20
12
|
primary,
|
|
21
13
|
center,
|
|
14
|
+
large,
|
|
22
15
|
children,
|
|
23
16
|
...props
|
|
24
17
|
}) {
|
|
25
18
|
return /* @__PURE__ */ jsx(
|
|
26
19
|
Button,
|
|
27
20
|
{
|
|
28
|
-
className:
|
|
21
|
+
className: (t) => twMerge(
|
|
29
22
|
//
|
|
30
|
-
"border-none flex gap-1 items-center
|
|
23
|
+
"border-none flex gap-1 items-center bg-gray-100 text-me-primary-500 text-sm rounded hover:bg-gray-200",
|
|
31
24
|
primary ? "bg-me-primary-500 text-white hover:bg-me-primary-600" : "",
|
|
32
25
|
center ? "place-content-center" : "",
|
|
33
|
-
|
|
26
|
+
large ? "px-4 py-2" : "px-2 py-1",
|
|
27
|
+
t.isDisabled ? "opacity-70 cursor-not-allowed pointer-events-none" : "",
|
|
28
|
+
typeof className2 === "string" ? className2 : className2?.(t)
|
|
34
29
|
),
|
|
35
30
|
...props,
|
|
36
31
|
children
|
|
@@ -38,24 +33,31 @@ function ActionButton({
|
|
|
38
33
|
);
|
|
39
34
|
}
|
|
40
35
|
|
|
36
|
+
// src/utils.ts
|
|
37
|
+
import { clsx } from "clsx";
|
|
38
|
+
import { twMerge as twMerge2 } from "tailwind-merge";
|
|
39
|
+
var cn = (...inputs) => {
|
|
40
|
+
return twMerge2(clsx(inputs));
|
|
41
|
+
};
|
|
42
|
+
|
|
41
43
|
// src/Tooltip.tsx
|
|
42
|
-
import * as React from "react";
|
|
43
44
|
import {
|
|
44
|
-
|
|
45
|
+
FloatingPortal,
|
|
45
46
|
autoUpdate,
|
|
46
|
-
offset,
|
|
47
47
|
flip,
|
|
48
|
+
offset,
|
|
48
49
|
shift,
|
|
49
|
-
useHover,
|
|
50
|
-
useFocus,
|
|
51
50
|
useDismiss,
|
|
52
|
-
|
|
51
|
+
useFloating,
|
|
52
|
+
useFocus,
|
|
53
|
+
useHover,
|
|
53
54
|
useInteractions,
|
|
54
55
|
useMergeRefs,
|
|
55
|
-
|
|
56
|
+
useRole
|
|
56
57
|
} from "@floating-ui/react";
|
|
58
|
+
import * as React from "react";
|
|
57
59
|
import { Button as Button2 } from "react-aria-components";
|
|
58
|
-
import { twMerge as
|
|
60
|
+
import { twMerge as twMerge3 } from "tailwind-merge";
|
|
59
61
|
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
60
62
|
function useTooltip({
|
|
61
63
|
initialOpen = false,
|
|
@@ -110,10 +112,7 @@ var useTooltipContext = () => {
|
|
|
110
112
|
}
|
|
111
113
|
return context;
|
|
112
114
|
};
|
|
113
|
-
function Tooltip({
|
|
114
|
-
children,
|
|
115
|
-
...options
|
|
116
|
-
}) {
|
|
115
|
+
function Tooltip({ children, ...options }) {
|
|
117
116
|
const tooltip = useTooltip(options);
|
|
118
117
|
return /* @__PURE__ */ jsx2(TooltipContext.Provider, { value: tooltip, children });
|
|
119
118
|
}
|
|
@@ -142,12 +141,12 @@ var TooltipTrigger = React.forwardRef(function TooltipTrigger2({ children, asChi
|
|
|
142
141
|
}
|
|
143
142
|
);
|
|
144
143
|
});
|
|
145
|
-
var TooltipContent = React.forwardRef(function TooltipContent2({ style, ...props }, propRef) {
|
|
144
|
+
var TooltipContent = React.forwardRef(function TooltipContent2({ style, root, ...props }, propRef) {
|
|
146
145
|
const context = useTooltipContext();
|
|
147
146
|
const ref = useMergeRefs([context.refs.setFloating, propRef]);
|
|
148
147
|
if (!context.open)
|
|
149
148
|
return null;
|
|
150
|
-
return /* @__PURE__ */ jsx2(FloatingPortal, { children: /* @__PURE__ */ jsx2(
|
|
149
|
+
return /* @__PURE__ */ jsx2(FloatingPortal, { root, children: /* @__PURE__ */ jsx2(
|
|
151
150
|
"div",
|
|
152
151
|
{
|
|
153
152
|
ref,
|
|
@@ -163,10 +162,8 @@ function DefaultTooltipContent(props) {
|
|
|
163
162
|
return /* @__PURE__ */ jsx2(
|
|
164
163
|
TooltipContent,
|
|
165
164
|
{
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
props.className
|
|
169
|
-
),
|
|
165
|
+
root: props.root,
|
|
166
|
+
className: twMerge3("bg-me-gray-900 text-white text-sm px-3 py-2 rounded opacity-90 z-50", props.className),
|
|
170
167
|
children: props.children
|
|
171
168
|
}
|
|
172
169
|
);
|
|
@@ -223,10 +220,11 @@ function PanelSideMenuItem(props) {
|
|
|
223
220
|
"border-none aspect-square w-full flex justify-center items-center hover:bg-me-primary-100 hover:text-black [&>svg]:text-2xl cursor-default",
|
|
224
221
|
props.selected ? "bg-me-primary-500 hover:bg-me-primary-600 hover:text-white text-white" : "text-me-gray-700"
|
|
225
222
|
),
|
|
223
|
+
"aria-label": props.label,
|
|
226
224
|
onMouseDown: props.onClick,
|
|
227
225
|
children: [
|
|
228
226
|
props.icon,
|
|
229
|
-
/* @__PURE__ */ jsx4(TooltipContent, { className: "bg-me-gray-900 text-white text-sm px-3 py-2 rounded
|
|
227
|
+
/* @__PURE__ */ jsx4(TooltipContent, { className: "bg-me-gray-900 text-white text-sm px-3 py-2 rounded opacity-90 z-50", children: props.label })
|
|
230
228
|
]
|
|
231
229
|
}
|
|
232
230
|
) }) });
|
|
@@ -272,7 +270,7 @@ import {
|
|
|
272
270
|
useThumbnail
|
|
273
271
|
} from "react-iiif-vault";
|
|
274
272
|
import { LazyLoadComponent } from "react-lazy-load-image-component";
|
|
275
|
-
import { twMerge as
|
|
273
|
+
import { twMerge as twMerge4 } from "tailwind-merge";
|
|
276
274
|
|
|
277
275
|
// src/Spinner.tsx
|
|
278
276
|
import { jsx as jsx7, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
@@ -382,7 +380,7 @@ function LazyThumbnailInner({
|
|
|
382
380
|
!thumbnail?.id || isLoading ? /* @__PURE__ */ jsx9(
|
|
383
381
|
"div",
|
|
384
382
|
{
|
|
385
|
-
className:
|
|
383
|
+
className: twMerge4(
|
|
386
384
|
"absolute inset-0 flex items-center justify-center bg-me-gray-100 text-2xl z-10",
|
|
387
385
|
fade && "animate-fadeIn"
|
|
388
386
|
),
|
|
@@ -414,7 +412,7 @@ function CanvasLabel(props) {
|
|
|
414
412
|
|
|
415
413
|
// src/Card3D.tsx
|
|
416
414
|
import { useLayoutEffect as useLayoutEffect2, useRef as useRef2 } from "react";
|
|
417
|
-
import { twMerge as
|
|
415
|
+
import { twMerge as twMerge5 } from "tailwind-merge";
|
|
418
416
|
import { jsx as jsx11, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
419
417
|
function Card3D({
|
|
420
418
|
className: className2,
|
|
@@ -490,7 +488,7 @@ function Card3D({
|
|
|
490
488
|
"div",
|
|
491
489
|
{
|
|
492
490
|
ref: outer,
|
|
493
|
-
className:
|
|
491
|
+
className: twMerge5(
|
|
494
492
|
//
|
|
495
493
|
"relative transition-all hover:duration-50",
|
|
496
494
|
shouldTranslate && "hover:shadow-xl",
|
|
@@ -535,69 +533,50 @@ function CanvasThumbnailGridItem(props) {
|
|
|
535
533
|
}
|
|
536
534
|
|
|
537
535
|
// src/Modal.tsx
|
|
538
|
-
import {
|
|
539
|
-
|
|
540
|
-
Dialog,
|
|
541
|
-
DialogPanel,
|
|
542
|
-
DialogTitle
|
|
543
|
-
} from "@headlessui/react";
|
|
536
|
+
import { CloseButton, Dialog, DialogPanel, DialogTitle } from "@headlessui/react";
|
|
537
|
+
import { createPortal } from "react-dom";
|
|
544
538
|
import { Fragment as Fragment2, jsx as jsx13, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
545
|
-
function
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
/* @__PURE__ */ jsxs9("div", { className: "flex items-center justify-between p-4 md:p-5 rounded-t-lg sticky top-0 bg-white", children: [
|
|
570
|
-
/* @__PURE__ */ jsx13(DialogTitle, { className: "text-xl font-semibold text-gray-900 ", children: title }),
|
|
571
|
-
/* @__PURE__ */ jsxs9(CloseButton, { className: "text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ms-auto inline-flex justify-center items-center", children: [
|
|
572
|
-
/* @__PURE__ */ jsx13(
|
|
573
|
-
"svg",
|
|
539
|
+
function ModalBackSlot({ children }) {
|
|
540
|
+
const element = document.getElementById("modal-back-slot");
|
|
541
|
+
if (!element)
|
|
542
|
+
return null;
|
|
543
|
+
return createPortal(children, element);
|
|
544
|
+
}
|
|
545
|
+
function Modal({ id, title, open = true, onClose, actions, children }) {
|
|
546
|
+
return /* @__PURE__ */ jsx13(Fragment2, { children: /* @__PURE__ */ jsxs9(Dialog, { open, onClose, id, className: "relative z-[500]", children: [
|
|
547
|
+
/* @__PURE__ */ jsx13("div", { className: `fixed inset-0 bg-black/30 animate-fadeIn z-[501]`, "aria-hidden": "true" }),
|
|
548
|
+
/* @__PURE__ */ jsx13("div", { className: "fixed inset-0 flex w-screen items-center justify-center p-4 z-[502]", children: /* @__PURE__ */ jsx13("div", { className: "relative p-4 w-full max-w-4xl max-h-full", children: /* @__PURE__ */ jsxs9(DialogPanel, { className: "relative bg-white rounded-lg overflow-hidden shadow-2xl max-h-[80vh] flex flex-col", children: [
|
|
549
|
+
/* @__PURE__ */ jsxs9("div", { className: "flex items-center justify-between gap-3 p-4 rounded-t-lg sticky top-0 bg-white", children: [
|
|
550
|
+
/* @__PURE__ */ jsx13("div", { id: "modal-back-slot" }),
|
|
551
|
+
/* @__PURE__ */ jsx13(DialogTitle, { className: "text-xl font-semibold text-gray-900 ", children: title }),
|
|
552
|
+
/* @__PURE__ */ jsxs9(CloseButton, { className: "text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ms-auto inline-flex justify-center items-center", children: [
|
|
553
|
+
/* @__PURE__ */ jsx13(
|
|
554
|
+
"svg",
|
|
555
|
+
{
|
|
556
|
+
className: "w-3 h-3",
|
|
557
|
+
"aria-hidden": "true",
|
|
558
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
559
|
+
fill: "none",
|
|
560
|
+
viewBox: "0 0 14 14",
|
|
561
|
+
children: /* @__PURE__ */ jsx13(
|
|
562
|
+
"path",
|
|
574
563
|
{
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
children: /* @__PURE__ */ jsx13(
|
|
581
|
-
"path",
|
|
582
|
-
{
|
|
583
|
-
stroke: "currentColor",
|
|
584
|
-
strokeLinecap: "round",
|
|
585
|
-
strokeLinejoin: "round",
|
|
586
|
-
strokeWidth: "2",
|
|
587
|
-
d: "m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"
|
|
588
|
-
}
|
|
589
|
-
)
|
|
564
|
+
stroke: "currentColor",
|
|
565
|
+
strokeLinecap: "round",
|
|
566
|
+
strokeLinejoin: "round",
|
|
567
|
+
strokeWidth: "2",
|
|
568
|
+
d: "m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"
|
|
590
569
|
}
|
|
591
|
-
)
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
}
|
|
600
|
-
) });
|
|
570
|
+
)
|
|
571
|
+
}
|
|
572
|
+
),
|
|
573
|
+
/* @__PURE__ */ jsx13("span", { className: "sr-only", children: "Close" })
|
|
574
|
+
] })
|
|
575
|
+
] }),
|
|
576
|
+
/* @__PURE__ */ jsx13("div", { className: "flex-1 min-h-0 overflow-y-auto flex flex-col", children }),
|
|
577
|
+
actions ? /* @__PURE__ */ jsx13("div", { className: "flex items-center p-4 border-t border-gray-200 rounded-b justify-end", children: actions }) : null
|
|
578
|
+
] }) }) })
|
|
579
|
+
] }) });
|
|
601
580
|
}
|
|
602
581
|
|
|
603
582
|
// src/ControlButton.tsx
|
|
@@ -704,7 +683,7 @@ function TabPanel({ className: className2, children, ...props }) {
|
|
|
704
683
|
|
|
705
684
|
// src/CreatorGrid.tsx
|
|
706
685
|
import { ListBox, ListBoxItem } from "react-aria-components";
|
|
707
|
-
import { twMerge as
|
|
686
|
+
import { twMerge as twMerge6 } from "tailwind-merge";
|
|
708
687
|
import { jsx as jsx17, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
709
688
|
function CreatorGrid(props) {
|
|
710
689
|
return /* @__PURE__ */ jsx17(
|
|
@@ -725,7 +704,7 @@ function CreatorGridItem(props) {
|
|
|
725
704
|
{
|
|
726
705
|
id: props.id,
|
|
727
706
|
onAction: props.onClick,
|
|
728
|
-
className: ($s) =>
|
|
707
|
+
className: ($s) => twMerge6(
|
|
729
708
|
"bg-white p-2 border-me-gray-300 rounded-md border hover:border-me-primary-500",
|
|
730
709
|
$s.isFocused && "border-me-primary-500 outline-me-primary-500 outline-2"
|
|
731
710
|
),
|
|
@@ -1062,7 +1041,7 @@ import {
|
|
|
1062
1041
|
Tabs as Tabs2
|
|
1063
1042
|
} from "react-aria-components";
|
|
1064
1043
|
import { createHideableComponent } from "@react-aria/collections";
|
|
1065
|
-
import { createPortal } from "react-dom";
|
|
1044
|
+
import { createPortal as createPortal2 } from "react-dom";
|
|
1066
1045
|
import { Fragment as Fragment3, jsx as jsx33, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
1067
1046
|
function SidebarTabs({
|
|
1068
1047
|
menu,
|
|
@@ -1162,7 +1141,7 @@ function SidebarTabs({
|
|
|
1162
1141
|
},
|
|
1163
1142
|
menuId
|
|
1164
1143
|
),
|
|
1165
|
-
hiddenMenu && hidden > 0 ?
|
|
1144
|
+
hiddenMenu && hidden > 0 ? createPortal2(
|
|
1166
1145
|
/* @__PURE__ */ jsx33(
|
|
1167
1146
|
MoreMenu,
|
|
1168
1147
|
{
|
|
@@ -1222,7 +1201,7 @@ function MetadataContainer({
|
|
|
1222
1201
|
...props
|
|
1223
1202
|
}) {
|
|
1224
1203
|
return /* @__PURE__ */ jsxs24(
|
|
1225
|
-
"
|
|
1204
|
+
"fieldset",
|
|
1226
1205
|
{
|
|
1227
1206
|
className: cn(
|
|
1228
1207
|
"hover:ring ring-gray-200 focus-within:ring-me-primary-500 focus-within:ring p-2 rounded mb-2",
|
|
@@ -1282,7 +1261,7 @@ function ManifestEditorLogo(props) {
|
|
|
1282
1261
|
}
|
|
1283
1262
|
|
|
1284
1263
|
// src/Forms.tsx
|
|
1285
|
-
import { Label, Form as RAForm,
|
|
1264
|
+
import { Input, Label, Form as RAForm, Radio, RadioGroup, TextArea } from "react-aria-components";
|
|
1286
1265
|
import { jsx as jsx37 } from "react/jsx-runtime";
|
|
1287
1266
|
function MeLabel({ className: className2, ...props }) {
|
|
1288
1267
|
return /* @__PURE__ */ jsx37(
|
|
@@ -1350,6 +1329,20 @@ function MeInput({ className: className2, ...props }) {
|
|
|
1350
1329
|
}
|
|
1351
1330
|
);
|
|
1352
1331
|
}
|
|
1332
|
+
function MeTextArea({ className: className2, ...props }) {
|
|
1333
|
+
return /* @__PURE__ */ jsx37(
|
|
1334
|
+
TextArea,
|
|
1335
|
+
{
|
|
1336
|
+
className: cn(
|
|
1337
|
+
//
|
|
1338
|
+
"p-2 bg-me-gray-100 border-b border-b-me-gray-500",
|
|
1339
|
+
"focus:ring-0 outline-0 focus:border-me-primary-500 focus:bg-[#ECEEF5]",
|
|
1340
|
+
className2
|
|
1341
|
+
),
|
|
1342
|
+
...props
|
|
1343
|
+
}
|
|
1344
|
+
);
|
|
1345
|
+
}
|
|
1353
1346
|
function MeInputContainer({
|
|
1354
1347
|
horizontal,
|
|
1355
1348
|
className: className2,
|
|
@@ -1374,7 +1367,8 @@ var Form = {
|
|
|
1374
1367
|
Label: MeLabel,
|
|
1375
1368
|
InputContainer: MeInputContainer,
|
|
1376
1369
|
RadioGroup: MeRadioGroup,
|
|
1377
|
-
Radio: MeRadio
|
|
1370
|
+
Radio: MeRadio,
|
|
1371
|
+
TextArea: MeTextArea
|
|
1378
1372
|
};
|
|
1379
1373
|
|
|
1380
1374
|
// src/HTMLEditor.tsx
|
|
@@ -1387,18 +1381,21 @@ import TurndownService from "turndown";
|
|
|
1387
1381
|
import "@mdxeditor/editor/style.css";
|
|
1388
1382
|
import {
|
|
1389
1383
|
MDXEditor as BaseMDXEditor,
|
|
1384
|
+
BlockTypeSelect,
|
|
1385
|
+
BoldItalicUnderlineToggles,
|
|
1386
|
+
CreateLink,
|
|
1390
1387
|
InsertImage,
|
|
1391
1388
|
ListsToggle,
|
|
1392
1389
|
UndoRedo,
|
|
1390
|
+
diffSourcePlugin,
|
|
1393
1391
|
headingsPlugin,
|
|
1394
1392
|
imagePlugin,
|
|
1393
|
+
linkDialogPlugin,
|
|
1395
1394
|
linkPlugin,
|
|
1396
1395
|
listsPlugin,
|
|
1397
|
-
markdownShortcutPlugin,
|
|
1398
1396
|
quotePlugin,
|
|
1399
1397
|
thematicBreakPlugin,
|
|
1400
|
-
toolbarPlugin
|
|
1401
|
-
BlockTypeSelect
|
|
1398
|
+
toolbarPlugin
|
|
1402
1399
|
} from "@mdxeditor/editor";
|
|
1403
1400
|
import { useMemo as useMemo3 } from "react";
|
|
1404
1401
|
import { Fragment as Fragment4, jsx as jsx38, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
@@ -1412,22 +1409,23 @@ function MDXEditor({
|
|
|
1412
1409
|
plugins: useMemo3(
|
|
1413
1410
|
() => [
|
|
1414
1411
|
// Example Plugin Usage
|
|
1415
|
-
headingsPlugin(),
|
|
1412
|
+
headingsPlugin({ allowedHeadingLevels: [2, 3] }),
|
|
1416
1413
|
listsPlugin(),
|
|
1417
1414
|
linkPlugin(),
|
|
1418
1415
|
quotePlugin(),
|
|
1419
1416
|
thematicBreakPlugin(),
|
|
1420
|
-
|
|
1421
|
-
// linkDialogPlugin(),
|
|
1422
|
-
markdownShortcutPlugin(),
|
|
1417
|
+
linkDialogPlugin(),
|
|
1423
1418
|
imagePlugin(),
|
|
1419
|
+
diffSourcePlugin(),
|
|
1424
1420
|
toolbarPlugin({
|
|
1425
1421
|
toolbarClassName: "mdx-toolbar",
|
|
1426
1422
|
toolbarContents: () => /* @__PURE__ */ jsxs26(Fragment4, { children: [
|
|
1427
1423
|
" ",
|
|
1428
1424
|
/* @__PURE__ */ jsx38(UndoRedo, {}),
|
|
1425
|
+
/* @__PURE__ */ jsx38(BoldItalicUnderlineToggles, {}),
|
|
1429
1426
|
/* @__PURE__ */ jsx38(BlockTypeSelect, {}),
|
|
1430
|
-
/* @__PURE__ */ jsx38(ListsToggle, {}),
|
|
1427
|
+
/* @__PURE__ */ jsx38(ListsToggle, { options: ["bullet", "number"] }),
|
|
1428
|
+
/* @__PURE__ */ jsx38(CreateLink, {}),
|
|
1431
1429
|
/* @__PURE__ */ jsx38(InsertImage, {})
|
|
1432
1430
|
] })
|
|
1433
1431
|
})
|
|
@@ -1475,7 +1473,11 @@ function HTMLEditor({
|
|
|
1475
1473
|
editorRef,
|
|
1476
1474
|
onBlur: internalOnChange,
|
|
1477
1475
|
readOnly: disabled,
|
|
1478
|
-
className:
|
|
1476
|
+
className: [
|
|
1477
|
+
"bg-white prose-sm text-sm border rounded-lg prose-a:text-me-primary-500 prose-a:underline prose-ul:list-disc p-0.5",
|
|
1478
|
+
"prose-ol:list-decimal",
|
|
1479
|
+
"focus-within:outline-none focus-within:border-me-primary-500 z-50 relative"
|
|
1480
|
+
].join(" "),
|
|
1479
1481
|
markdown: memoState,
|
|
1480
1482
|
suppressHtmlProcessing: true,
|
|
1481
1483
|
onError: (err) => {
|
|
@@ -1490,27 +1492,31 @@ function HTMLEditor({
|
|
|
1490
1492
|
}
|
|
1491
1493
|
|
|
1492
1494
|
// src/IconButton.tsx
|
|
1493
|
-
import { twMerge as
|
|
1495
|
+
import { twMerge as twMerge7 } from "tailwind-merge";
|
|
1494
1496
|
import { jsx as jsx40, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
1495
1497
|
function IconButton({
|
|
1496
1498
|
children,
|
|
1497
1499
|
active,
|
|
1498
1500
|
label,
|
|
1499
1501
|
disabled,
|
|
1500
|
-
onPress
|
|
1502
|
+
onPress,
|
|
1503
|
+
root,
|
|
1504
|
+
className: className2,
|
|
1505
|
+
placement = "top"
|
|
1501
1506
|
}) {
|
|
1502
|
-
return /* @__PURE__ */ jsx40(Tooltip, { placement
|
|
1507
|
+
return /* @__PURE__ */ jsx40(Tooltip, { placement, children: /* @__PURE__ */ jsxs27(
|
|
1503
1508
|
TooltipTrigger,
|
|
1504
1509
|
{
|
|
1505
1510
|
onClick: onPress,
|
|
1506
|
-
className:
|
|
1511
|
+
className: twMerge7(
|
|
1507
1512
|
"rounded flex items-center bg-white justify-center p-2 hover:bg-gray-100 text-2xl",
|
|
1508
1513
|
active ? "bg-me-primary-500 bg-opacity-40 hover:bg-opacity-70 hover:bg-me-primary-500" : "",
|
|
1509
|
-
disabled ? "opacity-50 pointer-events-none" : ""
|
|
1514
|
+
disabled ? "opacity-50 pointer-events-none" : "",
|
|
1515
|
+
className2
|
|
1510
1516
|
),
|
|
1511
1517
|
children: [
|
|
1512
1518
|
children,
|
|
1513
|
-
/* @__PURE__ */ jsx40(DefaultTooltipContent, { className: "translate-x-3", children: label })
|
|
1519
|
+
/* @__PURE__ */ jsx40(DefaultTooltipContent, { root, className: "translate-x-3 z-50", children: label })
|
|
1514
1520
|
]
|
|
1515
1521
|
}
|
|
1516
1522
|
) });
|
|
@@ -1551,12 +1557,116 @@ var HandleContainer = forwardRef2(function HandleContainer2({ className: classNa
|
|
|
1551
1557
|
);
|
|
1552
1558
|
});
|
|
1553
1559
|
|
|
1560
|
+
// src/CollectionListItem.tsx
|
|
1561
|
+
import { Button as Button6 } from "react-aria-components";
|
|
1562
|
+
import { LocaleString as LocaleString3, useCollection } from "react-iiif-vault";
|
|
1563
|
+
|
|
1564
|
+
// src/icons/CollectionIcon.tsx
|
|
1565
|
+
import { jsx as jsx43 } from "react/jsx-runtime";
|
|
1566
|
+
function CollectionIcon(props) {
|
|
1567
|
+
return /* @__PURE__ */ jsx43(
|
|
1568
|
+
"svg",
|
|
1569
|
+
{
|
|
1570
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1571
|
+
width: "1em",
|
|
1572
|
+
height: "1em",
|
|
1573
|
+
viewBox: "0 -960 960 960",
|
|
1574
|
+
"aria-label": "collection",
|
|
1575
|
+
role: "img",
|
|
1576
|
+
...props,
|
|
1577
|
+
children: /* @__PURE__ */ jsx43(
|
|
1578
|
+
"path",
|
|
1579
|
+
{
|
|
1580
|
+
d: "M320-320h480v-480h-80v280l-100-60-100 60v-280H320v480Zm0 80q-33 0-56.5-23.5T240-320v-480q0-33 23.5-56.5T320-880h480q33 0 56.5 23.5T880-800v480q0 33-23.5 56.5T800-240H320ZM160-80q-33 0-56.5-23.5T80-160v-560h80v560h560v80H160Zm360-720h200-200Zm-200 0h480-480Z",
|
|
1581
|
+
fill: "currentColor"
|
|
1582
|
+
}
|
|
1583
|
+
)
|
|
1584
|
+
}
|
|
1585
|
+
);
|
|
1586
|
+
}
|
|
1587
|
+
|
|
1588
|
+
// src/CollectionListItem.tsx
|
|
1589
|
+
import { jsx as jsx44, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
1590
|
+
function CollectionListItem({ isActive, onAction }) {
|
|
1591
|
+
const collection = useCollection({});
|
|
1592
|
+
return /* @__PURE__ */ jsxs29(
|
|
1593
|
+
Button6,
|
|
1594
|
+
{
|
|
1595
|
+
className: "border-b-2 border-b-gray-200 flex p-2 gap-3 text-left truncate items-center w-full hover:bg-gray-100 data-[active]:bg-gray-200 data-[active]:border-b-me-primary-500",
|
|
1596
|
+
onPress: onAction,
|
|
1597
|
+
"data-active": isActive || void 0,
|
|
1598
|
+
children: [
|
|
1599
|
+
/* @__PURE__ */ jsx44(
|
|
1600
|
+
CollectionIcon,
|
|
1601
|
+
{
|
|
1602
|
+
"data-active": isActive || void 0,
|
|
1603
|
+
className: "flex-shrink-0 text-2xl data-[active]:text-me-primary-500 text-gray-400"
|
|
1604
|
+
}
|
|
1605
|
+
),
|
|
1606
|
+
/* @__PURE__ */ jsx44(LocaleString3, { children: collection?.label })
|
|
1607
|
+
]
|
|
1608
|
+
}
|
|
1609
|
+
);
|
|
1610
|
+
}
|
|
1611
|
+
|
|
1612
|
+
// src/ManifestListItem.tsx
|
|
1613
|
+
import { Button as Button7 } from "react-aria-components";
|
|
1614
|
+
import { LocaleString as LocaleString4, useManifest } from "react-iiif-vault";
|
|
1615
|
+
|
|
1616
|
+
// src/icons/ManifestIcon.tsx
|
|
1617
|
+
import { jsx as jsx45 } from "react/jsx-runtime";
|
|
1618
|
+
function ManifestIcon(props) {
|
|
1619
|
+
return /* @__PURE__ */ jsx45(
|
|
1620
|
+
"svg",
|
|
1621
|
+
{
|
|
1622
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1623
|
+
width: "1em",
|
|
1624
|
+
height: "1em",
|
|
1625
|
+
viewBox: "20 -910 960 960",
|
|
1626
|
+
"aria-label": "manifest",
|
|
1627
|
+
role: "img",
|
|
1628
|
+
...props,
|
|
1629
|
+
children: /* @__PURE__ */ jsx45(
|
|
1630
|
+
"path",
|
|
1631
|
+
{
|
|
1632
|
+
d: "M480-160q-48-38-104-59t-116-21q-42 0-82.5 11T100-198q-21 11-40.5-1T40-234v-482q0-11 5.5-21T62-752q46-24 96-36t102-12q58 0 113.5 15T480-740v484q51-32 107-48t113-16q36 0 70.5 6t69.5 18v-480q15 5 29.5 10.5T898-752q11 5 16.5 15t5.5 21v482q0 23-19.5 35t-40.5 1q-37-20-77.5-31T700-240q-60 0-116 21t-104 59Zm80-200v-380l200-200v400L560-360Zm-160 65v-396q-33-14-68.5-21.5T260-720q-37 0-72 7t-68 21v397q35-13 69.5-19t70.5-6q36 0 70.5 6t69.5 19Zm0 0v-396 396Z",
|
|
1633
|
+
fill: "currentColor"
|
|
1634
|
+
}
|
|
1635
|
+
)
|
|
1636
|
+
}
|
|
1637
|
+
);
|
|
1638
|
+
}
|
|
1639
|
+
|
|
1640
|
+
// src/ManifestListItem.tsx
|
|
1641
|
+
import { jsx as jsx46, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
1642
|
+
function ManifestListItem({ isActive, onAction }) {
|
|
1643
|
+
const manifest = useManifest();
|
|
1644
|
+
return /* @__PURE__ */ jsxs30(
|
|
1645
|
+
Button7,
|
|
1646
|
+
{
|
|
1647
|
+
className: "border-b-2 border-b-gray-200 flex p-2 gap-3 text-left truncate items-center w-full hover:bg-gray-100 data-[active]:bg-gray-200 data-[active]:border-b-me-primary-500",
|
|
1648
|
+
onPress: onAction,
|
|
1649
|
+
"data-active": isActive || void 0,
|
|
1650
|
+
children: [
|
|
1651
|
+
/* @__PURE__ */ jsx46(
|
|
1652
|
+
ManifestIcon,
|
|
1653
|
+
{
|
|
1654
|
+
"data-active": isActive || void 0,
|
|
1655
|
+
className: "flex-shrink-0 text-2xl data-[active]:text-me-primary-500 text-gray-400"
|
|
1656
|
+
}
|
|
1657
|
+
),
|
|
1658
|
+
/* @__PURE__ */ jsx46(LocaleString4, { children: manifest?.label })
|
|
1659
|
+
]
|
|
1660
|
+
}
|
|
1661
|
+
);
|
|
1662
|
+
}
|
|
1663
|
+
|
|
1554
1664
|
// src/icons/CreateCanvasIcon.tsx
|
|
1555
|
-
import { jsx as
|
|
1665
|
+
import { jsx as jsx47, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
1556
1666
|
function CreateCanvasIcon() {
|
|
1557
|
-
return /* @__PURE__ */
|
|
1558
|
-
/* @__PURE__ */
|
|
1559
|
-
/* @__PURE__ */
|
|
1667
|
+
return /* @__PURE__ */ jsxs31("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24", viewBox: "0 0 24 24", width: "24", children: [
|
|
1668
|
+
/* @__PURE__ */ jsx47("path", { d: "M0 0h24v24H0V0z", fill: "none" }),
|
|
1669
|
+
/* @__PURE__ */ jsx47(
|
|
1560
1670
|
"path",
|
|
1561
1671
|
{
|
|
1562
1672
|
d: "M13 11h-2v3H8v2h3v3h2v-3h3v-2h-3zm1-9H6c-1.1 0-2 .9-2 2v16c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm4 18H6V4h7v5h5v11z",
|
|
@@ -1567,8 +1677,8 @@ function CreateCanvasIcon() {
|
|
|
1567
1677
|
}
|
|
1568
1678
|
|
|
1569
1679
|
// src/icons/AddImageIcon.tsx
|
|
1570
|
-
import { jsx as
|
|
1571
|
-
var AddImageIcon = (props) => /* @__PURE__ */
|
|
1680
|
+
import { jsx as jsx48 } from "react/jsx-runtime";
|
|
1681
|
+
var AddImageIcon = (props) => /* @__PURE__ */ jsx48("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", fill: "#5f6368", viewBox: "0 -960 960 960", ...props, children: /* @__PURE__ */ jsx48(
|
|
1572
1682
|
"path",
|
|
1573
1683
|
{
|
|
1574
1684
|
d: "M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h360v80H200v560h560v-360h80v360q0 33-23.5 56.5T760-120H200Zm480-480v-80h-80v-80h80v-80h80v80h80v80h-80v80h-80ZM240-280h480L570-480 450-320l-90-120-120 160Zm-40-480v560-560Z",
|
|
@@ -1577,8 +1687,8 @@ var AddImageIcon = (props) => /* @__PURE__ */ jsx44("svg", { xmlns: "http://www.
|
|
|
1577
1687
|
) });
|
|
1578
1688
|
|
|
1579
1689
|
// src/icons/IIIFLogo.tsx
|
|
1580
|
-
import { jsx as
|
|
1581
|
-
var IIIFLogo = ({ mono = true, ...props }) => /* @__PURE__ */
|
|
1690
|
+
import { jsx as jsx49, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
1691
|
+
var IIIFLogo = ({ mono = true, ...props }) => /* @__PURE__ */ jsxs32(
|
|
1582
1692
|
"svg",
|
|
1583
1693
|
{
|
|
1584
1694
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -1588,7 +1698,7 @@ var IIIFLogo = ({ mono = true, ...props }) => /* @__PURE__ */ jsxs30(
|
|
|
1588
1698
|
...props,
|
|
1589
1699
|
viewBox: "0 0 493.36 441.333",
|
|
1590
1700
|
children: [
|
|
1591
|
-
/* @__PURE__ */
|
|
1701
|
+
/* @__PURE__ */ jsx49(
|
|
1592
1702
|
"path",
|
|
1593
1703
|
{
|
|
1594
1704
|
d: "m65.242 2178.75 710-263.75-1.25-1900-708.75 261.25v1902.5m738.903 461.34c81.441-240.91-26.473-436.2-241.04-436.2-214.558 0-454.511 195.29-535.953 436.2-81.433 240.89 26.48 436.18 241.039 436.18 214.567 0 454.512-195.29 535.954-436.18",
|
|
@@ -1601,7 +1711,7 @@ var IIIFLogo = ({ mono = true, ...props }) => /* @__PURE__ */ jsxs30(
|
|
|
1601
1711
|
transform: "matrix(.13333 0 0 -.13333 0 441.333)"
|
|
1602
1712
|
}
|
|
1603
1713
|
),
|
|
1604
|
-
/* @__PURE__ */
|
|
1714
|
+
/* @__PURE__ */ jsx49(
|
|
1605
1715
|
"path",
|
|
1606
1716
|
{
|
|
1607
1717
|
d: "M1678.58 2178.75 968.578 1915l1.25-1900 708.752 261.25v1902.5m-743.498 461.34c-81.437-240.91 26.477-436.2 241.038-436.2 214.56 0 454.51 195.29 535.96 436.2 81.43 240.89-26.48 436.18-241.04 436.18-214.57 0-454.52-195.29-535.958-436.18",
|
|
@@ -1614,7 +1724,7 @@ var IIIFLogo = ({ mono = true, ...props }) => /* @__PURE__ */ jsxs30(
|
|
|
1614
1724
|
transform: "matrix(.13333 0 0 -.13333 0 441.333)"
|
|
1615
1725
|
}
|
|
1616
1726
|
),
|
|
1617
|
-
/* @__PURE__ */
|
|
1727
|
+
/* @__PURE__ */ jsx49(
|
|
1618
1728
|
"path",
|
|
1619
1729
|
{
|
|
1620
1730
|
d: "m1860.24 2178.75 710-263.75-1.25-1900-708.75 261.25v1902.5m743.5 461.34c81.45-240.91-26.47-436.2-241.03-436.2-214.58 0-454.52 195.29-535.96 436.2-81.44 240.89 26.48 436.18 241.03 436.18 214.57 0 454.51-195.29 535.96-436.18",
|
|
@@ -1627,7 +1737,7 @@ var IIIFLogo = ({ mono = true, ...props }) => /* @__PURE__ */ jsxs30(
|
|
|
1627
1737
|
transform: "matrix(.13333 0 0 -.13333 0 441.333)"
|
|
1628
1738
|
}
|
|
1629
1739
|
),
|
|
1630
|
-
/* @__PURE__ */
|
|
1740
|
+
/* @__PURE__ */ jsx49(
|
|
1631
1741
|
"path",
|
|
1632
1742
|
{
|
|
1633
1743
|
d: "M3700.24 3310v-652.5s-230 90-257.5-142.5c-2.5-247.5 0-336.25 0-336.25l257.5 83.75V1690l-258.61-92.5v-1335L2735.24 0v2360s-15 850 965 950",
|
|
@@ -1645,8 +1755,8 @@ var IIIFLogo = ({ mono = true, ...props }) => /* @__PURE__ */ jsxs30(
|
|
|
1645
1755
|
);
|
|
1646
1756
|
|
|
1647
1757
|
// src/icons/HTMLIcon.tsx
|
|
1648
|
-
import { jsx as
|
|
1649
|
-
var HTMLIcon = (props) => /* @__PURE__ */
|
|
1758
|
+
import { jsx as jsx50 } from "react/jsx-runtime";
|
|
1759
|
+
var HTMLIcon = (props) => /* @__PURE__ */ jsx50("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", fill: "#5f6368", viewBox: "0 -960 960 960", ...props, children: /* @__PURE__ */ jsx50(
|
|
1650
1760
|
"path",
|
|
1651
1761
|
{
|
|
1652
1762
|
d: "M0-360v-240h60v80h80v-80h60v240h-60v-100H60v100H0Zm310 0v-180h-70v-60h200v60h-70v180h-60Zm170 0v-200q0-17 11.5-28.5T520-600h180q17 0 28.5 11.5T740-560v200h-60v-180h-40v140h-60v-140h-40v180h-60Zm320 0v-240h60v180h100v60H800Z",
|
|
@@ -1655,8 +1765,8 @@ var HTMLIcon = (props) => /* @__PURE__ */ jsx46("svg", { xmlns: "http://www.w3.o
|
|
|
1655
1765
|
) });
|
|
1656
1766
|
|
|
1657
1767
|
// src/icons/IIIFBrowserIcon.tsx
|
|
1658
|
-
import { jsx as
|
|
1659
|
-
var IIIFBrowserIcon = (props) => /* @__PURE__ */
|
|
1768
|
+
import { jsx as jsx51 } from "react/jsx-runtime";
|
|
1769
|
+
var IIIFBrowserIcon = (props) => /* @__PURE__ */ jsx51("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", fill: "#5f6368", viewBox: "0 -960 960 960", ...props, children: /* @__PURE__ */ jsx51(
|
|
1660
1770
|
"path",
|
|
1661
1771
|
{
|
|
1662
1772
|
d: "M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h200v80H200v560h560v-214l80 80v134q0 33-23.5 56.5T760-120H200Zm40-160 120-160 90 120 120-160 150 200H240Zm622-144L738-548q-21 14-45 21t-51 7q-74 0-126-52.5T464-700q0-75 52.5-127.5T644-880q75 0 127.5 52.5T824-700q0 27-8 52t-20 46l122 122-56 56ZM644-600q42 0 71-29t29-71q0-42-29-71t-71-29q-42 0-71 29t-29 71q0 42 29 71t71 29Z",
|
|
@@ -1664,9 +1774,59 @@ var IIIFBrowserIcon = (props) => /* @__PURE__ */ jsx47("svg", { xmlns: "http://w
|
|
|
1664
1774
|
}
|
|
1665
1775
|
) });
|
|
1666
1776
|
|
|
1777
|
+
// src/icons/InfoIcon.tsx
|
|
1778
|
+
import { jsx as jsx52, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
1779
|
+
function InfoIcon({ title, titleId, ...props }) {
|
|
1780
|
+
return /* @__PURE__ */ jsxs33("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", "aria-labelledby": titleId, ...props, children: [
|
|
1781
|
+
title ? /* @__PURE__ */ jsx52("title", { id: titleId, children: title }) : null,
|
|
1782
|
+
/* @__PURE__ */ jsx52("path", { d: "M0 0h24v24H0V0z", fill: "none" }),
|
|
1783
|
+
/* @__PURE__ */ jsx52(
|
|
1784
|
+
"path",
|
|
1785
|
+
{
|
|
1786
|
+
d: "M11 7h2v2h-2zm0 4h2v6h-2zm1-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z",
|
|
1787
|
+
fill: "currentColor"
|
|
1788
|
+
}
|
|
1789
|
+
)
|
|
1790
|
+
] });
|
|
1791
|
+
}
|
|
1792
|
+
|
|
1793
|
+
// src/icons/ListingIcon.tsx
|
|
1794
|
+
import { jsx as jsx53, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
1795
|
+
function ListingIcon({
|
|
1796
|
+
title,
|
|
1797
|
+
titleId,
|
|
1798
|
+
...props
|
|
1799
|
+
}) {
|
|
1800
|
+
return /* @__PURE__ */ jsxs34(
|
|
1801
|
+
"svg",
|
|
1802
|
+
{
|
|
1803
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1804
|
+
viewBox: "0 0 24 24",
|
|
1805
|
+
width: "1em",
|
|
1806
|
+
height: "1em",
|
|
1807
|
+
"aria-labelledby": titleId,
|
|
1808
|
+
...props,
|
|
1809
|
+
children: [
|
|
1810
|
+
title ? /* @__PURE__ */ jsx53("title", { id: titleId, children: title }) : null,
|
|
1811
|
+
/* @__PURE__ */ jsxs34("g", { fill: "none", children: [
|
|
1812
|
+
/* @__PURE__ */ jsx53("path", { d: "M0 0h24v24H0V0z" }),
|
|
1813
|
+
/* @__PURE__ */ jsx53("path", { d: "M0 0h24v24H0V0z", opacity: ".87" })
|
|
1814
|
+
] }),
|
|
1815
|
+
/* @__PURE__ */ jsx53(
|
|
1816
|
+
"path",
|
|
1817
|
+
{
|
|
1818
|
+
d: "M3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm4 4h14v-2H7v2zm0 4h14v-2H7v2zM7 7v2h14V7H7zm-4 6h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm4 4h14v-2H7v2zm0 4h14v-2H7v2zM7 7v2h14V7H7z",
|
|
1819
|
+
fill: "currentColor"
|
|
1820
|
+
}
|
|
1821
|
+
)
|
|
1822
|
+
]
|
|
1823
|
+
}
|
|
1824
|
+
);
|
|
1825
|
+
}
|
|
1826
|
+
|
|
1667
1827
|
// src/icons/YouTubeIcon.tsx
|
|
1668
|
-
import { jsx as
|
|
1669
|
-
var YouTubeIcon = (props) => /* @__PURE__ */
|
|
1828
|
+
import { jsx as jsx54 } from "react/jsx-runtime";
|
|
1829
|
+
var YouTubeIcon = (props) => /* @__PURE__ */ jsx54("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", fill: "#5f6368", viewBox: "0 -960 960 960", ...props, children: /* @__PURE__ */ jsx54(
|
|
1670
1830
|
"path",
|
|
1671
1831
|
{
|
|
1672
1832
|
d: "M616-242q-27 1-51.5 1.5t-43.5.5h-41q-71 0-133-2-53-2-104.5-5.5T168-257q-26-7-45-26t-26-45q-6-23-9.5-56T82-447q-2-36-2-73t2-73q2-30 5.5-63t9.5-56q7-26 26-45t45-26q23-6 74.5-9.5T347-798q62-2 133-2t133 2q53 2 104.5 5.5T792-783q26 7 45 26t26 45q6 23 9.5 56t5.5 63q2 36 2 73v17q-19-8-39-12.5t-41-4.5q-83 0-141.5 58.5T600-320q0 21 4 40.5t12 37.5ZM400-400l208-120-208-120v240Zm360 200v-80h-80v-80h80v-80h80v80h80v80h-80v80h-80Z",
|
|
@@ -1674,9 +1834,34 @@ var YouTubeIcon = (props) => /* @__PURE__ */ jsx48("svg", { xmlns: "http://www.w
|
|
|
1674
1834
|
}
|
|
1675
1835
|
) });
|
|
1676
1836
|
|
|
1837
|
+
// src/icons/ListEditIcon.tsx
|
|
1838
|
+
import { jsx as jsx55, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
1839
|
+
function ListEditIcon({
|
|
1840
|
+
title,
|
|
1841
|
+
titleId,
|
|
1842
|
+
...props
|
|
1843
|
+
}) {
|
|
1844
|
+
return /* @__PURE__ */ jsxs35(
|
|
1845
|
+
"svg",
|
|
1846
|
+
{
|
|
1847
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1848
|
+
height: "24",
|
|
1849
|
+
viewBox: "0 0 24 24",
|
|
1850
|
+
width: "24",
|
|
1851
|
+
"aria-labelledby": titleId,
|
|
1852
|
+
...props,
|
|
1853
|
+
children: [
|
|
1854
|
+
title ? /* @__PURE__ */ jsx55("title", { id: titleId, children: title }) : null,
|
|
1855
|
+
/* @__PURE__ */ jsx55("path", { d: "M0 0h24v24H0V0z", fill: "none" }),
|
|
1856
|
+
/* @__PURE__ */ jsx55("path", { d: "M14.06 9.02l.92.92L5.92 19H5v-.92l9.06-9.06M17.66 3c-.25 0-.51.1-.7.29l-1.83 1.83 3.75 3.75 1.83-1.83c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.2-.2-.45-.29-.71-.29zm-3.6 3.19L3 17.25V21h3.75L17.81 9.94l-3.75-3.75z" })
|
|
1857
|
+
]
|
|
1858
|
+
}
|
|
1859
|
+
);
|
|
1860
|
+
}
|
|
1861
|
+
|
|
1677
1862
|
// src/icons/VideoIcon.tsx
|
|
1678
|
-
import { jsx as
|
|
1679
|
-
var VideoIcon = (props) => /* @__PURE__ */
|
|
1863
|
+
import { jsx as jsx56 } from "react/jsx-runtime";
|
|
1864
|
+
var VideoIcon = (props) => /* @__PURE__ */ jsx56("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", fill: "#5f6368", viewBox: "0 -960 960 960", ...props, children: /* @__PURE__ */ jsx56(
|
|
1680
1865
|
"path",
|
|
1681
1866
|
{
|
|
1682
1867
|
d: "M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h480q33 0 56.5 23.5T720-720v180l160-160v440L720-420v180q0 33-23.5 56.5T640-160H160Zm0-80h480v-480H160v480Zm0 0v-480 480Z",
|
|
@@ -1685,8 +1870,8 @@ var VideoIcon = (props) => /* @__PURE__ */ jsx49("svg", { xmlns: "http://www.w3.
|
|
|
1685
1870
|
) });
|
|
1686
1871
|
|
|
1687
1872
|
// src/icons/AudioIcon.tsx
|
|
1688
|
-
import { jsx as
|
|
1689
|
-
var AudioIcon = (props) => /* @__PURE__ */
|
|
1873
|
+
import { jsx as jsx57 } from "react/jsx-runtime";
|
|
1874
|
+
var AudioIcon = (props) => /* @__PURE__ */ jsx57("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", fill: "#5f6368", viewBox: "0 -960 960 960", ...props, children: /* @__PURE__ */ jsx57(
|
|
1690
1875
|
"path",
|
|
1691
1876
|
{
|
|
1692
1877
|
d: "M480-400q-50 0-85-35t-35-85v-240q0-50 35-85t85-35q50 0 85 35t35 85v240q0 50-35 85t-85 35Zm0-240Zm-40 520v-123q-104-14-172-93t-68-184h80q0 83 58.5 141.5T480-320q83 0 141.5-58.5T680-520h80q0 105-68 184t-172 93v123h-80Zm40-360q17 0 28.5-11.5T520-520v-240q0-17-11.5-28.5T480-800q-17 0-28.5 11.5T440-760v240q0 17 11.5 28.5T480-480Z",
|
|
@@ -1695,8 +1880,8 @@ var AudioIcon = (props) => /* @__PURE__ */ jsx50("svg", { xmlns: "http://www.w3.
|
|
|
1695
1880
|
) });
|
|
1696
1881
|
|
|
1697
1882
|
// src/icons/EmptyCanvasIcon.tsx
|
|
1698
|
-
import { jsx as
|
|
1699
|
-
var EmptyCanvasIcon = (props) => /* @__PURE__ */
|
|
1883
|
+
import { jsx as jsx58 } from "react/jsx-runtime";
|
|
1884
|
+
var EmptyCanvasIcon = (props) => /* @__PURE__ */ jsx58("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", fill: "#5f6368", viewBox: "0 -960 960 960", ...props, children: /* @__PURE__ */ jsx58(
|
|
1700
1885
|
"path",
|
|
1701
1886
|
{
|
|
1702
1887
|
d: "M240-80q-33 0-56.5-23.5T160-160v-640q0-33 23.5-56.5T240-880h320l240 240v480q0 33-23.5 56.5T720-80H240Zm280-520v-200H240v640h480v-440H520ZM240-800v200-200 640-640Z",
|
|
@@ -1705,14 +1890,14 @@ var EmptyCanvasIcon = (props) => /* @__PURE__ */ jsx51("svg", { xmlns: "http://w
|
|
|
1705
1890
|
) });
|
|
1706
1891
|
|
|
1707
1892
|
// src/icons/AddIcon.tsx
|
|
1708
|
-
import { jsx as
|
|
1893
|
+
import { jsx as jsx59, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
1709
1894
|
function AddIcon({
|
|
1710
1895
|
className: className2,
|
|
1711
1896
|
inline,
|
|
1712
1897
|
height = 16,
|
|
1713
1898
|
color = "black"
|
|
1714
1899
|
}) {
|
|
1715
|
-
return /* @__PURE__ */
|
|
1900
|
+
return /* @__PURE__ */ jsxs36(
|
|
1716
1901
|
"svg",
|
|
1717
1902
|
{
|
|
1718
1903
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -1723,17 +1908,17 @@ function AddIcon({
|
|
|
1723
1908
|
style: { verticalAlign: inline ? "bottom" : void 0 },
|
|
1724
1909
|
className: className2,
|
|
1725
1910
|
children: [
|
|
1726
|
-
/* @__PURE__ */
|
|
1727
|
-
/* @__PURE__ */
|
|
1911
|
+
/* @__PURE__ */ jsx59("path", { d: "M0 0h24v24H0z", fill: "none" }),
|
|
1912
|
+
/* @__PURE__ */ jsx59("path", { d: "M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z", fill: "currentColor" })
|
|
1728
1913
|
]
|
|
1729
1914
|
}
|
|
1730
1915
|
);
|
|
1731
1916
|
}
|
|
1732
1917
|
|
|
1733
1918
|
// src/icons/MoreMenu.tsx
|
|
1734
|
-
import { jsx as
|
|
1919
|
+
import { jsx as jsx60, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
1735
1920
|
function MoreMenu2() {
|
|
1736
|
-
return /* @__PURE__ */
|
|
1921
|
+
return /* @__PURE__ */ jsxs37(
|
|
1737
1922
|
"svg",
|
|
1738
1923
|
{
|
|
1739
1924
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -1741,8 +1926,8 @@ function MoreMenu2() {
|
|
|
1741
1926
|
viewBox: "0 0 24 24",
|
|
1742
1927
|
width: "1em",
|
|
1743
1928
|
children: [
|
|
1744
|
-
/* @__PURE__ */
|
|
1745
|
-
/* @__PURE__ */
|
|
1929
|
+
/* @__PURE__ */ jsx60("path", { d: "M0 0h24v24H0z", fill: "none" }),
|
|
1930
|
+
/* @__PURE__ */ jsx60(
|
|
1746
1931
|
"path",
|
|
1747
1932
|
{
|
|
1748
1933
|
d: "M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z",
|
|
@@ -1754,14 +1939,78 @@ function MoreMenu2() {
|
|
|
1754
1939
|
);
|
|
1755
1940
|
}
|
|
1756
1941
|
|
|
1942
|
+
// src/icons/PreviewIcon.tsx
|
|
1943
|
+
import { jsx as jsx61 } from "react/jsx-runtime";
|
|
1944
|
+
function PreviewIcon(props) {
|
|
1945
|
+
return /* @__PURE__ */ jsx61("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props, children: /* @__PURE__ */ jsx61(
|
|
1946
|
+
"path",
|
|
1947
|
+
{
|
|
1948
|
+
fill: "currentColor",
|
|
1949
|
+
d: "M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5M12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5s5 2.24 5 5s-2.24 5-5 5m0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3s3-1.34 3-3s-1.34-3-3-3"
|
|
1950
|
+
}
|
|
1951
|
+
) });
|
|
1952
|
+
}
|
|
1953
|
+
|
|
1954
|
+
// src/icons/ImageListIcon.tsx
|
|
1955
|
+
import { jsx as jsx62 } from "react/jsx-runtime";
|
|
1956
|
+
function ImageListIcon(props) {
|
|
1957
|
+
return /* @__PURE__ */ jsx62("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props, children: /* @__PURE__ */ jsx62(
|
|
1958
|
+
"path",
|
|
1959
|
+
{
|
|
1960
|
+
fill: "currentColor",
|
|
1961
|
+
d: "M1 5h2v14H1zm4 0h2v14H5zm17 0H10c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h12c.55 0 1-.45 1-1V6c0-.55-.45-1-1-1M11 17l2.5-3.15L15.29 16l2.5-3.22L21 17z"
|
|
1962
|
+
}
|
|
1963
|
+
) });
|
|
1964
|
+
}
|
|
1965
|
+
|
|
1966
|
+
// src/icons/BackIcon.tsx
|
|
1967
|
+
import { jsx as jsx63 } from "react/jsx-runtime";
|
|
1968
|
+
function BackIcon(props) {
|
|
1969
|
+
return /* @__PURE__ */ jsx63("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props, children: /* @__PURE__ */ jsx63("path", { fill: "currentColor", d: "M20 11H7.83l5.59-5.59L12 4l-8 8l8 8l1.41-1.41L7.83 13H20z" }) });
|
|
1970
|
+
}
|
|
1971
|
+
|
|
1972
|
+
// src/icons/GridIcon.tsx
|
|
1973
|
+
import { jsx as jsx64, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
1974
|
+
function GridIcon(props) {
|
|
1975
|
+
return /* @__PURE__ */ jsxs38("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props, children: [
|
|
1976
|
+
/* @__PURE__ */ jsx64(
|
|
1977
|
+
"path",
|
|
1978
|
+
{
|
|
1979
|
+
fill: "currentColor",
|
|
1980
|
+
d: "M10 10h4v4h-4zm0 6h4v4h-4zM4 4h4v4H4zm0 6h4v4H4zm0 6h4v4H4zM16 4h4v4h-4zm0 6h4v4h-4zm0 6h4v4h-4zM10 4h4v4h-4z",
|
|
1981
|
+
opacity: ".3"
|
|
1982
|
+
}
|
|
1983
|
+
),
|
|
1984
|
+
/* @__PURE__ */ jsx64(
|
|
1985
|
+
"path",
|
|
1986
|
+
{
|
|
1987
|
+
fill: "currentColor",
|
|
1988
|
+
d: "M20 2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2M8 20H4v-4h4zm0-6H4v-4h4zm0-6H4V4h4zm6 12h-4v-4h4zm0-6h-4v-4h4zm0-6h-4V4h4zm6 12h-4v-4h4zm0-6h-4v-4h4zm0-6h-4V4h4z"
|
|
1989
|
+
}
|
|
1990
|
+
)
|
|
1991
|
+
] });
|
|
1992
|
+
}
|
|
1993
|
+
|
|
1994
|
+
// src/icons/ScaledImageIcon.tsx
|
|
1995
|
+
import { jsx as jsx65 } from "react/jsx-runtime";
|
|
1996
|
+
function ScaledImageIcon(props) {
|
|
1997
|
+
return /* @__PURE__ */ jsx65("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props, children: /* @__PURE__ */ jsx65(
|
|
1998
|
+
"path",
|
|
1999
|
+
{
|
|
2000
|
+
fill: "currentColor",
|
|
2001
|
+
d: "M21 15h2v2h-2zm0-4h2v2h-2zm2 8h-2v2c1 0 2-1 2-2M13 3h2v2h-2zm8 4h2v2h-2zm0-4v2h2c0-1-1-2-2-2M1 7h2v2H1zm16-4h2v2h-2zm0 16h2v2h-2zM3 3C2 3 1 4 1 5h2zm6 0h2v2H9zM5 3h2v2H5zm-4 8v8c0 1.1.9 2 2 2h12V11zm2 8l2.5-3.21l1.79 2.15l2.5-3.22L13 19z"
|
|
2002
|
+
}
|
|
2003
|
+
) });
|
|
2004
|
+
}
|
|
2005
|
+
|
|
1757
2006
|
// src/ErrorMessage.tsx
|
|
1758
|
-
import { twMerge as
|
|
1759
|
-
import { jsx as
|
|
2007
|
+
import { twMerge as twMerge8 } from "tailwind-merge";
|
|
2008
|
+
import { jsx as jsx66 } from "react/jsx-runtime";
|
|
1760
2009
|
function ErrorMessage({ children, small = false, className: className2 }) {
|
|
1761
|
-
return /* @__PURE__ */
|
|
2010
|
+
return /* @__PURE__ */ jsx66(
|
|
1762
2011
|
"div",
|
|
1763
2012
|
{
|
|
1764
|
-
className:
|
|
2013
|
+
className: twMerge8(
|
|
1765
2014
|
"bg-red-500 text-white",
|
|
1766
2015
|
"border-1 drop-shadow border-red-700 w-full rounded-md py-2 px-4 leading-[1.9em] flex items-center",
|
|
1767
2016
|
"has-[a]:text-white",
|
|
@@ -1795,11 +2044,11 @@ function useFastList(list, firstRender = 24) {
|
|
|
1795
2044
|
|
|
1796
2045
|
// src/RenderTextualContent.tsx
|
|
1797
2046
|
import { useState as useState6 } from "react";
|
|
1798
|
-
import { Button as
|
|
2047
|
+
import { Button as Button8 } from "react-aria-components";
|
|
1799
2048
|
import {
|
|
1800
|
-
LocaleString as
|
|
2049
|
+
LocaleString as LocaleString5
|
|
1801
2050
|
} from "react-iiif-vault";
|
|
1802
|
-
import { jsx as
|
|
2051
|
+
import { jsx as jsx67, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
1803
2052
|
function RenderTextualContent(props) {
|
|
1804
2053
|
const languages = props.strategy.items.map(
|
|
1805
2054
|
(item) => Object.keys(item.text)[0]
|
|
@@ -1808,10 +2057,10 @@ function RenderTextualContent(props) {
|
|
|
1808
2057
|
const selected = props.strategy.items.find(
|
|
1809
2058
|
(item) => Object.keys(item.text)[0] === langauge
|
|
1810
2059
|
);
|
|
1811
|
-
return /* @__PURE__ */
|
|
1812
|
-
/* @__PURE__ */
|
|
1813
|
-
return /* @__PURE__ */
|
|
1814
|
-
|
|
2060
|
+
return /* @__PURE__ */ jsxs39("div", { className: "overflow-y-auto bg-white shadow", children: [
|
|
2061
|
+
/* @__PURE__ */ jsx67("div", { className: "flex gap-2 border-b", children: languages.map((language) => {
|
|
2062
|
+
return /* @__PURE__ */ jsx67(
|
|
2063
|
+
Button8,
|
|
1815
2064
|
{
|
|
1816
2065
|
className: `py-1 px-3 ${langauge === language ? "bg-me-500 text-white" : "bg-white text-black"}`,
|
|
1817
2066
|
onPress: () => setLanguage(language),
|
|
@@ -1820,11 +2069,11 @@ function RenderTextualContent(props) {
|
|
|
1820
2069
|
language
|
|
1821
2070
|
);
|
|
1822
2071
|
}) }),
|
|
1823
|
-
/* @__PURE__ */
|
|
1824
|
-
|
|
2072
|
+
/* @__PURE__ */ jsx67("div", { className: "p-4 prose", children: /* @__PURE__ */ jsx67(
|
|
2073
|
+
LocaleString5,
|
|
1825
2074
|
{
|
|
1826
2075
|
enableDangerouslySetInnerHTML: true,
|
|
1827
|
-
defaultText: /* @__PURE__ */
|
|
2076
|
+
defaultText: /* @__PURE__ */ jsx67("span", { className: "text-gray-500 my-8", children: "No content available" }),
|
|
1828
2077
|
children: selected?.text
|
|
1829
2078
|
}
|
|
1830
2079
|
) })
|
|
@@ -1840,13 +2089,13 @@ import { MediaPlayer, MediaProvider, Poster, Gesture, Track } from "@vidstack/re
|
|
|
1840
2089
|
import { defaultLayoutIcons, DefaultVideoLayout } from "@vidstack/react/player/layouts/default";
|
|
1841
2090
|
import { getValue } from "@iiif/helpers";
|
|
1842
2091
|
import { useRef as useRef5 } from "react";
|
|
1843
|
-
import { Fragment as Fragment5, jsx as
|
|
2092
|
+
import { Fragment as Fragment5, jsx as jsx68, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
1844
2093
|
function IIIFMediaPlayer(props) {
|
|
1845
2094
|
const mediaPlayer = useRef5(null);
|
|
1846
2095
|
const captions = props.captions || [];
|
|
1847
2096
|
const language = props.language;
|
|
1848
2097
|
const timeRef = useRef5(props.startTime || 0);
|
|
1849
|
-
return /* @__PURE__ */
|
|
2098
|
+
return /* @__PURE__ */ jsx68(
|
|
1850
2099
|
MediaPlayer,
|
|
1851
2100
|
{
|
|
1852
2101
|
onTimeUpdate: (time) => {
|
|
@@ -1867,9 +2116,9 @@ function IIIFMediaPlayer(props) {
|
|
|
1867
2116
|
type: props.media.format
|
|
1868
2117
|
}
|
|
1869
2118
|
],
|
|
1870
|
-
children: /* @__PURE__ */
|
|
2119
|
+
children: /* @__PURE__ */ jsxs40(MediaProvider, { className: "w-full h-full [&>video]:w-full [&>video]:h-full [&>video]:object-contain", children: [
|
|
1871
2120
|
captions.map((caption) => {
|
|
1872
|
-
return /* @__PURE__ */
|
|
2121
|
+
return /* @__PURE__ */ jsx68(
|
|
1873
2122
|
Track,
|
|
1874
2123
|
{
|
|
1875
2124
|
src: caption.id,
|
|
@@ -1881,15 +2130,15 @@ function IIIFMediaPlayer(props) {
|
|
|
1881
2130
|
caption.id
|
|
1882
2131
|
);
|
|
1883
2132
|
}),
|
|
1884
|
-
props.poster ? /* @__PURE__ */
|
|
2133
|
+
props.poster ? /* @__PURE__ */ jsx68(
|
|
1885
2134
|
Poster,
|
|
1886
2135
|
{
|
|
1887
2136
|
className: "absolute inset-0 bg-black block h-full w-full opacity-0 transition-opacity data-[visible]:opacity-100 object-contain",
|
|
1888
2137
|
src: props.poster
|
|
1889
2138
|
}
|
|
1890
2139
|
) : null,
|
|
1891
|
-
/* @__PURE__ */
|
|
1892
|
-
/* @__PURE__ */
|
|
2140
|
+
/* @__PURE__ */ jsx68(Gestures, {}),
|
|
2141
|
+
/* @__PURE__ */ jsx68(
|
|
1893
2142
|
DefaultVideoLayout,
|
|
1894
2143
|
{
|
|
1895
2144
|
className: "z-1",
|
|
@@ -1902,8 +2151,8 @@ function IIIFMediaPlayer(props) {
|
|
|
1902
2151
|
);
|
|
1903
2152
|
}
|
|
1904
2153
|
function Gestures() {
|
|
1905
|
-
return /* @__PURE__ */
|
|
1906
|
-
/* @__PURE__ */
|
|
2154
|
+
return /* @__PURE__ */ jsxs40(Fragment5, { children: [
|
|
2155
|
+
/* @__PURE__ */ jsx68(
|
|
1907
2156
|
Gesture,
|
|
1908
2157
|
{
|
|
1909
2158
|
className: "pointer-coarse:hidden absolute top-0 start-12 bottom-20 right-0 -z-1 block",
|
|
@@ -1911,7 +2160,7 @@ function Gestures() {
|
|
|
1911
2160
|
action: "toggle:paused"
|
|
1912
2161
|
}
|
|
1913
2162
|
),
|
|
1914
|
-
/* @__PURE__ */
|
|
2163
|
+
/* @__PURE__ */ jsx68(Gesture, { className: "absolute inset-0 z-0 block h-full w-full", event: "dblpointerup", action: "toggle:fullscreen" })
|
|
1915
2164
|
] });
|
|
1916
2165
|
}
|
|
1917
2166
|
export {
|
|
@@ -1920,8 +2169,11 @@ export {
|
|
|
1920
2169
|
AddImageIcon,
|
|
1921
2170
|
AtlasBanner,
|
|
1922
2171
|
AudioIcon,
|
|
2172
|
+
BackIcon,
|
|
1923
2173
|
CanvasThumbnailGridItem,
|
|
1924
2174
|
Card3D,
|
|
2175
|
+
CollectionIcon,
|
|
2176
|
+
CollectionListItem,
|
|
1925
2177
|
ConfirmSelectionButton,
|
|
1926
2178
|
ControlButton,
|
|
1927
2179
|
CreateCanvasIcon,
|
|
@@ -1934,6 +2186,7 @@ export {
|
|
|
1934
2186
|
EmptyState,
|
|
1935
2187
|
ErrorMessage,
|
|
1936
2188
|
Form,
|
|
2189
|
+
GridIcon,
|
|
1937
2190
|
HTMLEditor,
|
|
1938
2191
|
HTMLIcon,
|
|
1939
2192
|
HandleContainer,
|
|
@@ -1941,21 +2194,31 @@ export {
|
|
|
1941
2194
|
IIIFLogo,
|
|
1942
2195
|
IIIFMediaPlayer,
|
|
1943
2196
|
IconButton,
|
|
2197
|
+
ImageListIcon,
|
|
2198
|
+
InfoIcon,
|
|
1944
2199
|
ItemWithHandle,
|
|
1945
2200
|
LazyThumbnail,
|
|
2201
|
+
ListEditIcon,
|
|
2202
|
+
ListingIcon,
|
|
1946
2203
|
MDXEditor,
|
|
1947
2204
|
ManifestEditorLogo,
|
|
2205
|
+
ManifestIcon,
|
|
2206
|
+
ManifestListItem,
|
|
1948
2207
|
ManifestOverviewEmptyState,
|
|
1949
2208
|
MetadataContainer,
|
|
1950
2209
|
Modal,
|
|
2210
|
+
ModalBackSlot,
|
|
1951
2211
|
MoreMenu2 as MoreMenu,
|
|
1952
2212
|
OpaqueControls,
|
|
1953
2213
|
PanelSideMenu,
|
|
2214
|
+
PreviewIcon,
|
|
1954
2215
|
RenderTextualContent,
|
|
2216
|
+
ScaledImageIcon,
|
|
1955
2217
|
Sidebar,
|
|
1956
2218
|
SidebarContent,
|
|
1957
2219
|
SidebarHeader,
|
|
1958
2220
|
SidebarTabs,
|
|
2221
|
+
Spinner,
|
|
1959
2222
|
SvgControlBar,
|
|
1960
2223
|
Tab,
|
|
1961
2224
|
TabList,
|