manifest-editor 2.2.2-next.0.903673e → 2.3.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/README.md +186 -43
- package/dist/{ManifestEditor-CMWoRdqp.d.ts → ManifestEditor-NAeFbb4r.d.cts} +4 -2
- package/dist/ManifestEditor-NAeFbb4r.d.cts.map +1 -0
- package/dist/{ManifestEditor-C1Rcg3CO.d.cts → ManifestEditor-ZWZ559Gg.d.ts} +4 -2
- package/dist/ManifestEditor-ZWZ559Gg.d.ts.map +1 -0
- package/dist/browser/release.json +12 -7
- package/dist/browser/runtime.css +31831 -23020
- package/dist/browser/runtime.js +2542 -1703
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +16471 -8581
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/remote.cjs +1 -1
- package/dist/remote.cjs.map +1 -1
- package/dist/remote.d.cts +15 -3
- package/dist/remote.d.cts.map +1 -1
- package/dist/remote.d.ts +15 -3
- package/dist/remote.d.ts.map +1 -1
- package/dist/remote.js +1 -1
- package/dist/remote.js.map +1 -1
- package/package.json +23 -18
- package/dist/ManifestEditor-C1Rcg3CO.d.cts.map +0 -1
- package/dist/ManifestEditor-CMWoRdqp.d.ts.map +0 -1
package/README.md
CHANGED
|
@@ -30,7 +30,7 @@ import { ManifestEditor } from "manifest-editor";
|
|
|
30
30
|
import "manifest-editor/index.css";
|
|
31
31
|
```
|
|
32
32
|
|
|
33
|
-
`manifest-editor/reset.css` is an optional global reset. Import it **before** `index.css` if your host application needs it. The editor is browser UI: in an SSR framework, mount it in a client
|
|
33
|
+
`manifest-editor/reset.css` is an optional global reset. Import it **before** `index.css` if your host application needs it. The editor is browser UI: in an SSR framework, mount it in a client component boundary. Server/task code should import the public i18n `/core` entry rather than the React/CSS facade. Native renderer and dependency SSR support must be checked by the host.
|
|
34
34
|
|
|
35
35
|
### Embed in a React application
|
|
36
36
|
|
|
@@ -76,7 +76,9 @@ export default function App() {
|
|
|
76
76
|
|
|
77
77
|
return (
|
|
78
78
|
<div style={{ height: "100vh", display: "flex", flexDirection: "column" }}>
|
|
79
|
-
<header
|
|
79
|
+
<header>
|
|
80
|
+
<button onClick={exportManifest}>Export JSON to console</button>
|
|
81
|
+
</header>
|
|
80
82
|
<div style={{ flex: 1, minHeight: 0 }}>
|
|
81
83
|
<ManifestEditor vault={vault} resource={resource} />
|
|
82
84
|
</div>
|
|
@@ -87,9 +89,86 @@ export default function App() {
|
|
|
87
89
|
|
|
88
90
|
Edits live in the Vault. Persist exported JSON through your application's own save mechanism; there is no `onSave` or `onChange` component prop in this release. The optional `data` prop supplies a Manifest or Collection you already have instead of fetching it.
|
|
89
91
|
|
|
92
|
+
## Interface localisation
|
|
93
|
+
|
|
94
|
+
`localisation?: ShellLocalisation` forwards public `EditorI18nOptions` unchanged to
|
|
95
|
+
ShellProvider. English is the default. Declare `@manifest-editor/i18n` as a direct
|
|
96
|
+
host dependency when importing its providers, types or optional catalogs. Register both fallback and selected-locale
|
|
97
|
+
metadata; a locale allow-list constrains choices but does not load translations.
|
|
98
|
+
The optional public Dutch entry contains the currently reviewed catalogs:
|
|
99
|
+
|
|
100
|
+
```tsx
|
|
101
|
+
import { ManifestEditor, type ShellLocalisation } from "manifest-editor";
|
|
102
|
+
import { defaultLocales, dutchLocale } from "@manifest-editor/i18n/core";
|
|
103
|
+
import { dutchCatalogs, dutchPlain } from "@manifest-editor/i18n/nl";
|
|
104
|
+
|
|
105
|
+
// Keep resource option identity stable between renders.
|
|
106
|
+
const localisation = {
|
|
107
|
+
locales: [...defaultLocales, dutchLocale],
|
|
108
|
+
catalogs: dutchCatalogs,
|
|
109
|
+
profiles: { plain: dutchPlain },
|
|
110
|
+
} satisfies ShellLocalisation;
|
|
111
|
+
|
|
112
|
+
<ManifestEditor
|
|
113
|
+
resource="https://example.org/manifest"
|
|
114
|
+
localisation={localisation}
|
|
115
|
+
config={{
|
|
116
|
+
uiI18n: { defaultLocale: "nl", availableLocales: ["nl"], defaultProfile: "plain" },
|
|
117
|
+
i18n: { defaultLanguage: "cy", availableLanguages: ["cy"], advancedLanguageMode: true },
|
|
118
|
+
}}
|
|
119
|
+
/>;
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
`config.uiI18n` is JSON-compatible UI policy, distinct from authored content
|
|
123
|
+
`config.i18n`. Keep catalogs, loaders and callbacks in local runtime/provider
|
|
124
|
+
options, outside saved configuration, IIIF exports and worker payloads. Switching
|
|
125
|
+
UI locale/profile never changes authored InternationalString values or IDs.
|
|
126
|
+
The facade adds no new messages or standalone locale chunks; plain wording falls
|
|
127
|
+
back per message and catalog coverage alone does not establish whole-UI coverage.
|
|
128
|
+
Exhibition terminology belongs in an explicitly composed exhibition host.
|
|
129
|
+
|
|
130
|
+
For controlled selection, wrap the editor in the public `EditorI18nProvider`:
|
|
131
|
+
|
|
132
|
+
```tsx
|
|
133
|
+
<EditorI18nProvider
|
|
134
|
+
instance={hostRuntime}
|
|
135
|
+
locale={locale}
|
|
136
|
+
profile={profile}
|
|
137
|
+
onLocaleChange={setLocale}
|
|
138
|
+
onProfileChange={setProfile}
|
|
139
|
+
>
|
|
140
|
+
<ManifestEditor resource={resource} localisation={localisation} />
|
|
141
|
+
</EditorI18nProvider>
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
Create `hostRuntime` once with `createEditorI18n(localisation)`. Host callbacks
|
|
145
|
+
remain authoritative, including rejected requests. Shell intersects host and
|
|
146
|
+
preset policy. When an override/preset creates an effective runtime, forward all
|
|
147
|
+
host resources, including fallback metadata; an arbitrary inherited instance does
|
|
148
|
+
not expose its input catalogs. With no override, Shell retains the original actual
|
|
149
|
+
provider instance. Never pass the spread `useEditorI18n()` snapshot as `instance`.
|
|
150
|
+
Keep each editor's Vault and React position stable; do not key it by locale/profile.
|
|
151
|
+
Selection updates use the current runtime. Replacing resource/configuration options
|
|
152
|
+
replaces the effective runtime without remounting editor state and retains allowed
|
|
153
|
+
selection. An explicit host runtime replacement uses `instance={newRuntime}`.
|
|
154
|
+
|
|
155
|
+
Lazy locale bundles use `localisation.resourceLoaders`, an ordered array of
|
|
156
|
+
`{ locale, load }` entries returning `catalogs`, `profiles`, `presets` and/or
|
|
157
|
+
`presetProfiles` stores for that locale. This also works for built-in namespaces;
|
|
158
|
+
no duplicate namespace registration is necessary. See the
|
|
159
|
+
[runtime examples](../i18n/README.md). Lazy plugin namespaces use `localisation.registrations` (public catalog contracts and
|
|
160
|
+
locale-to-loader functions) and `requiredNamespaces`. Loaders must return message
|
|
161
|
+
maps and can import host assets or the public `@manifest-editor/i18n/nl` chunk;
|
|
162
|
+
there is no private authoring-package import in consumer code. Registration/loading
|
|
163
|
+
uses the effective Shell runtime, including plugins and independently mounted
|
|
164
|
+
editors. SSR hydration requires matching synchronous resources and selection on
|
|
165
|
+
server/client; async-only resources load after mount. The React facade is browser
|
|
166
|
+
UI, not a server/task factory. `@manifest-editor/i18n/core` and `/nl` are server-safe
|
|
167
|
+
source entries; emitted ESM/CJS/RSC behavior remains a release check.
|
|
168
|
+
|
|
90
169
|
## Use the CDN browser runtime
|
|
91
170
|
|
|
92
|
-
The browser runtime is a classic script plus CSS, published under `dist/browser/`. The examples below target **2.2.1** (available once this release is published); use an exact published version with
|
|
171
|
+
The browser runtime is a classic script plus CSS, published under `dist/browser/`. The examples below target **2.2.1** (available once this release is published); use an exact published version with runtime API 2, and keep script and stylesheet versions together.
|
|
93
172
|
|
|
94
173
|
### Automatically load React
|
|
95
174
|
|
|
@@ -99,24 +178,44 @@ Save this as an HTML file and serve it over HTTP. No bundler or JSX transformati
|
|
|
99
178
|
<!doctype html>
|
|
100
179
|
<html lang="en">
|
|
101
180
|
<head>
|
|
102
|
-
<meta charset="utf-8"
|
|
103
|
-
<meta name="viewport" content="width=device-width, initial-scale=1"
|
|
181
|
+
<meta charset="utf-8" />
|
|
182
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
104
183
|
<title>Manifest Editor</title>
|
|
105
|
-
<link
|
|
184
|
+
<link
|
|
185
|
+
rel="stylesheet"
|
|
186
|
+
href="https://cdn.jsdelivr.net/npm/manifest-editor@2.2.1/dist/browser/runtime.css"
|
|
187
|
+
crossorigin="anonymous"
|
|
188
|
+
/>
|
|
106
189
|
<style>
|
|
107
|
-
html,
|
|
108
|
-
body {
|
|
109
|
-
|
|
110
|
-
|
|
190
|
+
html,
|
|
191
|
+
body {
|
|
192
|
+
margin: 0;
|
|
193
|
+
height: 100%;
|
|
194
|
+
}
|
|
195
|
+
body {
|
|
196
|
+
display: flex;
|
|
197
|
+
flex-direction: column;
|
|
198
|
+
}
|
|
199
|
+
header {
|
|
200
|
+
padding: 12px;
|
|
201
|
+
border-bottom: 1px solid #ddd;
|
|
202
|
+
font: 16px system-ui;
|
|
203
|
+
}
|
|
204
|
+
#editor {
|
|
205
|
+
flex: 1;
|
|
206
|
+
min-height: 0;
|
|
207
|
+
}
|
|
111
208
|
</style>
|
|
112
209
|
</head>
|
|
113
210
|
<body>
|
|
114
211
|
<header>Manifest Editor</header>
|
|
115
212
|
<main id="editor"></main>
|
|
116
|
-
<script
|
|
213
|
+
<script
|
|
214
|
+
src="https://cdn.jsdelivr.net/npm/manifest-editor@2.2.1/dist/browser/runtime.js"
|
|
215
|
+
crossorigin="anonymous"
|
|
216
|
+
></script>
|
|
117
217
|
<script type="module">
|
|
118
|
-
const { React, ReactDOMClient, ManifestEditor, Vault } =
|
|
119
|
-
await window.ManifestEditor.automaticRuntime();
|
|
218
|
+
const { React, ReactDOMClient, ManifestEditor, Vault } = await window.ManifestEditor.automaticRuntime();
|
|
120
219
|
const vault = new Vault();
|
|
121
220
|
const resource = {
|
|
122
221
|
id: "https://wellcomelibrary.org/iiif/b18035723/manifest",
|
|
@@ -131,14 +230,14 @@ Save this as an HTML file and serve it over HTTP. No bundler or JSX transformati
|
|
|
131
230
|
</html>
|
|
132
231
|
```
|
|
133
232
|
|
|
134
|
-
`automaticRuntime()` asynchronously imports the runtime's pinned React 19 dependencies from esm.sh, caches the result, and returns the editor exports plus `React`, `ReactDOM`, and `ReactDOMClient`. Use this for a standalone editor page. In an existing React app, inject that app's React environment instead, so there is one React instance.
|
|
233
|
+
`automaticRuntime()` asynchronously imports the runtime's pinned React 19 and public i18n 2.2.1 dependencies from esm.sh, caches the result, and returns the editor exports plus `React`, `ReactDOM`, and `ReactDOMClient`. Use this for a standalone editor page. In an existing React app, inject that app's React environment instead, so there is one React instance.
|
|
135
234
|
|
|
136
235
|
### Inject an existing React environment
|
|
137
236
|
|
|
138
237
|
Keep the runtime script and CSS tags above. In your application's bundled client module:
|
|
139
238
|
|
|
140
239
|
```sh
|
|
141
|
-
npm install react@19.2.8 react-dom@19.2.8 react-reconciler@0.33.0
|
|
240
|
+
npm install react@19.2.8 react-dom@19.2.8 react-reconciler@0.33.0 @manifest-editor/i18n@2.2.1
|
|
142
241
|
```
|
|
143
242
|
|
|
144
243
|
```tsx
|
|
@@ -148,11 +247,15 @@ import * as ReactDOMClient from "react-dom/client";
|
|
|
148
247
|
import * as ReactDOMServer from "react-dom/server";
|
|
149
248
|
import * as jsxRuntime from "react/jsx-runtime";
|
|
150
249
|
import ReactReconciler from "react-reconciler";
|
|
250
|
+
import * as I18n from "@manifest-editor/i18n";
|
|
251
|
+
import * as I18nCore from "@manifest-editor/i18n/core";
|
|
151
252
|
// Optional types when manifest-editor is installed:
|
|
152
253
|
// import type {} from "manifest-editor/remote";
|
|
153
254
|
|
|
154
255
|
// Run after the runtime.js script has loaded.
|
|
155
256
|
const { ManifestEditor, Vault } = window.ManifestEditor.createRuntime({
|
|
257
|
+
I18n,
|
|
258
|
+
I18nCore,
|
|
156
259
|
React,
|
|
157
260
|
ReactDOM,
|
|
158
261
|
ReactDOMClient,
|
|
@@ -173,7 +276,46 @@ ReactDOMClient.createRoot(document.getElementById("editor")!).render(
|
|
|
173
276
|
);
|
|
174
277
|
```
|
|
175
278
|
|
|
176
|
-
All
|
|
279
|
+
All eight dependencies are required by `createRuntime()` in runtime API 2 (including `I18n` and `I18nCore`). API 1 scripts are incompatible with this loader; regenerate release descriptors for API 2. `ReactDOMServer` is used in the browser to serialize rich-text content; it does not mean a Node server is required. `ReactReconciler` supports the Atlas canvas renderer. Keep the reconciler compatible with the React version you supply. If using TypeScript, the `manifest-editor/remote` entry point declares the browser runtime types (including `window.ManifestEditor`); it can be included with `import type {} from "manifest-editor/remote"` when the package is installed.
|
|
280
|
+
|
|
281
|
+
### Browser/remote localisation and updates
|
|
282
|
+
|
|
283
|
+
The browser build externalizes `@manifest-editor/i18n` and `/core`, exactly like
|
|
284
|
+
React. Inject the same public modules used by your host/plugins; returned `i18n`
|
|
285
|
+
and `i18nCore` namespaces preserve their identities. `automaticRuntime()` imports
|
|
286
|
+
the pinned public modules from esm.sh; use the returned `i18n` for its provider and
|
|
287
|
+
hooks rather than loading another context. The pinned public i18n release must be
|
|
288
|
+
published before this automatic path can work; no CDN availability is claimed here.
|
|
289
|
+
Fetch optional Dutch resources from the matching public `/nl` entry, then pass
|
|
290
|
+
locale metadata/catalogs/profiles as in the React example above.
|
|
291
|
+
|
|
292
|
+
The automatic path imports the public React entry once and supplies its reexported
|
|
293
|
+
core factories to both dependency keys. This preserves identity even when a CDN
|
|
294
|
+
bundles subpaths separately. Injected and remote hosts reject mismatched root/core
|
|
295
|
+
factories before initializing; npm root/core imports share those factories naturally.
|
|
296
|
+
|
|
297
|
+
There is no separate mount/update transport API. Retain one React root, Vault,
|
|
298
|
+
resource reference and captured runtime, and call `root.render` with the same
|
|
299
|
+
`ManifestEditor` component type and updated `localisation`/`config` props. For
|
|
300
|
+
interactive selection use the runtime's shared provider/hooks. Do not recreate a
|
|
301
|
+
factory/root or serialize runtime objects/functions to a worker or saved config.
|
|
302
|
+
The remote loader accepts the same module identities under the explicit
|
|
303
|
+
`RuntimeHost` keys `"@manifest-editor/i18n"` and `"@manifest-editor/i18n/core"`.
|
|
304
|
+
Reuse the host object to reuse its cached factory result; distinct host environments
|
|
305
|
+
are isolated even when React happens to be the same module. Release script/CSS
|
|
306
|
+
loading does not carry or persist editor/localisation state.
|
|
307
|
+
|
|
308
|
+
The browser build captures exact installed i18n, React and Atlas reconciler versions
|
|
309
|
+
in `release.json.dependencies` and in its automatic import URLs. Dependency pins are
|
|
310
|
+
included in the build ID, so a pin change produces a new trusted descriptor.
|
|
311
|
+
|
|
312
|
+
Distribution diagnostics are available on demand through `pnpm i18n:artifacts`,
|
|
313
|
+
using existing package/browser builds to check packed consumers, shared runtime
|
|
314
|
+
identity, plugin integration and Chromium integrity handling. This uses local
|
|
315
|
+
modules for unpublished dependencies and does not prove live CDN availability.
|
|
316
|
+
For an exact published version, `pnpm i18n:cdn <version>` checks the real
|
|
317
|
+
jsDelivr/esm.sh assets. These commands are optional diagnostics, not additional
|
|
318
|
+
pull-request or release workflows.
|
|
177
319
|
|
|
178
320
|
### Integrity and version selection
|
|
179
321
|
|
|
@@ -192,7 +334,7 @@ import * as translation from "@manifest-editor/translation";
|
|
|
192
334
|
resource="https://wellcomelibrary.org/iiif/b18035723/manifest"
|
|
193
335
|
plugins={[translation]}
|
|
194
336
|
enabledPlugins={["@manifest-editor/translation"]}
|
|
195
|
-
|
|
337
|
+
/>;
|
|
196
338
|
```
|
|
197
339
|
|
|
198
340
|
Install the plugin separately. Plugin-specific service/runtime settings may also be required. The manifest preset already includes annotations and the canvas-label generator; enable or disable those by ID without registering duplicates.
|
|
@@ -203,35 +345,36 @@ For custom layouts or the exhibition preset, compose the providers from `manifes
|
|
|
203
345
|
|
|
204
346
|
### Component props
|
|
205
347
|
|
|
206
|
-
| Prop
|
|
207
|
-
|
|
|
208
|
-
| `resource`
|
|
209
|
-
| `data`
|
|
210
|
-
| `vault`
|
|
211
|
-
| `
|
|
212
|
-
| `
|
|
213
|
-
| `
|
|
214
|
-
| `
|
|
215
|
-
| `
|
|
348
|
+
| Prop | Purpose |
|
|
349
|
+
| ---------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
|
|
350
|
+
| `resource` | Required manifest URL or `{ id, type: "Manifest" \| "Collection" }`. |
|
|
351
|
+
| `data` | Optional source JSON to load instead of fetching. |
|
|
352
|
+
| `vault` | Host-owned Vault; otherwise the component uses an existing context or its fallback Vault. |
|
|
353
|
+
| `localisation` | Public Shell UI resources, locale metadata, loaders and runtime options; separate from persisted config. |
|
|
354
|
+
| `config`, `saveConfig` | Editor preferences and their persistence callback. |
|
|
355
|
+
| `plugins` | Additional plugin modules or mapped/lazy plugin inputs. |
|
|
356
|
+
| `enabledPlugins`, `disabledPlugins` | Plugin IDs to enable or disable. |
|
|
357
|
+
| `globalPluginConfig`, `saveGlobalPluginConfig` | Shared plugin settings and persistence callback. |
|
|
358
|
+
| `layoutMode` | `"default"` or `"focused"`. |
|
|
216
359
|
|
|
217
360
|
### Package entry points
|
|
218
361
|
|
|
219
|
-
| Import
|
|
220
|
-
|
|
|
221
|
-
| `manifest-editor`
|
|
222
|
-
| `manifest-editor/shell`
|
|
223
|
-
| `manifest-editor/components`
|
|
224
|
-
| `manifest-editor/editor-api`, `manifest-editor/creator-api`
|
|
225
|
-
| `manifest-editor/editors`, `manifest-editor/creators`
|
|
226
|
-
| `manifest-editor/manifest-preset`
|
|
227
|
-
| `manifest-editor/collection-preset`, `manifest-editor/exhibition-preset` | Mapped collection/exhibition app definitions.
|
|
228
|
-
| `manifest-editor/vault`
|
|
229
|
-
| `manifest-editor/helpers`
|
|
230
|
-
| `manifest-editor/parser`
|
|
231
|
-
| `manifest-editor/remote`
|
|
232
|
-
| `manifest-editor/index.css`, `manifest-editor/reset.css`
|
|
233
|
-
|
|
234
|
-
The CDN runtime returns `ManifestEditor`, `Vault`, `runtimeApiVersion`, and namespaces named `shell`, `components`, `creators`, `creatorApi`, `editorApi`, `manifestPreset`, `collectionPreset`, `exhibitionPreset`, and `vault`. Its namespace layout differs from npm subpath imports.
|
|
362
|
+
| Import | Exports |
|
|
363
|
+
| ------------------------------------------------------------------------ | ----------------------------------------------------------------------- |
|
|
364
|
+
| `manifest-editor` | `ManifestEditor`, its props, and selected config/plugin types. |
|
|
365
|
+
| `manifest-editor/shell` | Providers, layouts, plugin APIs, and host configuration. |
|
|
366
|
+
| `manifest-editor/components` | Reusable UI components and icons. |
|
|
367
|
+
| `manifest-editor/editor-api`, `manifest-editor/creator-api` | Editing and resource-creation APIs. |
|
|
368
|
+
| `manifest-editor/editors`, `manifest-editor/creators` | Built-in editor and creator definitions. |
|
|
369
|
+
| `manifest-editor/manifest-preset` | Manifest preset module; use `mapApp` for shell composition. |
|
|
370
|
+
| `manifest-editor/collection-preset`, `manifest-editor/exhibition-preset` | Mapped collection/exhibition app definitions. |
|
|
371
|
+
| `manifest-editor/vault` | `react-iiif-vault` providers and hooks. |
|
|
372
|
+
| `manifest-editor/helpers` | `@iiif/helpers`, including `Vault`. |
|
|
373
|
+
| `manifest-editor/parser` | `@iiif/parser` exports. |
|
|
374
|
+
| `manifest-editor/remote` | Release catalog, resolver, integrity loader, and browser runtime types. |
|
|
375
|
+
| `manifest-editor/index.css`, `manifest-editor/reset.css` | Editor stylesheet and optional global reset. |
|
|
376
|
+
|
|
377
|
+
The CDN runtime returns `ManifestEditor`, `Vault`, `runtimeApiVersion`, `i18n`, `i18nCore`, and namespaces named `shell`, `components`, `creators`, `creatorApi`, `editorApi`, `manifestPreset`, `collectionPreset`, `exhibitionPreset`, and `vault`. Its namespace layout differs from npm subpath imports.
|
|
235
378
|
|
|
236
379
|

|
|
237
380
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Config, PluginInput } from "@manifest-editor/shell";
|
|
2
1
|
import { Vault } from "@iiif/helpers";
|
|
3
2
|
import { Collection, Manifest } from "@iiif/presentation-3";
|
|
3
|
+
import { Config, PluginInput, ShellLocalisation } from "@manifest-editor/shell";
|
|
4
4
|
//#region src/ManifestEditor.d.ts
|
|
5
5
|
interface ManifestEditorProps {
|
|
6
6
|
resource: string | {
|
|
@@ -10,6 +10,8 @@ interface ManifestEditorProps {
|
|
|
10
10
|
data?: Manifest | Collection;
|
|
11
11
|
vault?: Vault;
|
|
12
12
|
config?: Partial<Config>;
|
|
13
|
+
/** UI resources/loaders and runtime options; never persisted with Config. */
|
|
14
|
+
localisation?: ShellLocalisation;
|
|
13
15
|
saveConfig?: (config: Partial<Config>) => void;
|
|
14
16
|
globalPluginConfig?: Config["plugins"];
|
|
15
17
|
saveGlobalPluginConfig?: (config: Config["plugins"]) => void | Promise<void>;
|
|
@@ -21,4 +23,4 @@ interface ManifestEditorProps {
|
|
|
21
23
|
declare function ManifestEditor(props: ManifestEditorProps): import("react").JSX.Element | null;
|
|
22
24
|
//#endregion
|
|
23
25
|
export { ManifestEditorProps as n, ManifestEditor as t };
|
|
24
|
-
//# sourceMappingURL=ManifestEditor-
|
|
26
|
+
//# sourceMappingURL=ManifestEditor-NAeFbb4r.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ManifestEditor-NAeFbb4r.d.cts","names":[],"sources":["../src/ManifestEditor.tsx"],"mappings":";;;;UAmBiB;EACf;IAAqB;IAAY;;EACjC,OAAO,WAAW;EAClB,QAAQ;EACR,SAAS,QAAQ;;EAEjB,eAAe;EACf,cAAc,QAAQ,QAAQ;EAC9B,qBAAqB;EACrB,0BAA0B,QAAQ,6BAA6B;EAC/D,UAAU;EACV;EACA;EACA;;iBA4Bc,eAAe,OAAO,sCAAmB,IAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { Config, PluginInput, ShellLocalisation } from "@manifest-editor/shell";
|
|
1
2
|
import { Vault } from "@iiif/helpers";
|
|
2
3
|
import { Collection, Manifest } from "@iiif/presentation-3";
|
|
3
|
-
import { Config, PluginInput } from "@manifest-editor/shell";
|
|
4
4
|
//#region src/ManifestEditor.d.ts
|
|
5
5
|
interface ManifestEditorProps {
|
|
6
6
|
resource: string | {
|
|
@@ -10,6 +10,8 @@ interface ManifestEditorProps {
|
|
|
10
10
|
data?: Manifest | Collection;
|
|
11
11
|
vault?: Vault;
|
|
12
12
|
config?: Partial<Config>;
|
|
13
|
+
/** UI resources/loaders and runtime options; never persisted with Config. */
|
|
14
|
+
localisation?: ShellLocalisation;
|
|
13
15
|
saveConfig?: (config: Partial<Config>) => void;
|
|
14
16
|
globalPluginConfig?: Config["plugins"];
|
|
15
17
|
saveGlobalPluginConfig?: (config: Config["plugins"]) => void | Promise<void>;
|
|
@@ -21,4 +23,4 @@ interface ManifestEditorProps {
|
|
|
21
23
|
declare function ManifestEditor(props: ManifestEditorProps): import("react").JSX.Element | null;
|
|
22
24
|
//#endregion
|
|
23
25
|
export { ManifestEditorProps as n, ManifestEditor as t };
|
|
24
|
-
//# sourceMappingURL=ManifestEditor-
|
|
26
|
+
//# sourceMappingURL=ManifestEditor-ZWZ559Gg.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ManifestEditor-ZWZ559Gg.d.ts","names":[],"sources":["../src/ManifestEditor.tsx"],"mappings":";;;;UAmBiB;EACf;IAAqB;IAAY;;EACjC,OAAO,WAAW;EAClB,QAAQ;EACR,SAAS,QAAQ;;EAEjB,eAAe;EACf,cAAc,QAAQ,QAAQ;EAC9B,qBAAqB;EACrB,0BAA0B,QAAQ,6BAA6B;EAC/D,UAAU;EACV;EACA;EACA;;iBA4Bc,eAAe,OAAO,sCAAmB,IAAA"}
|
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "2.
|
|
3
|
-
"buildId": "
|
|
4
|
-
"runtimeApiVersion":
|
|
2
|
+
"version": "2.3.0",
|
|
3
|
+
"buildId": "ed375e52675755e7eaf21479f9c7017c",
|
|
4
|
+
"runtimeApiVersion": 2,
|
|
5
5
|
"reactMajor": 19,
|
|
6
|
+
"dependencies": {
|
|
7
|
+
"i18n": "2.3.0",
|
|
8
|
+
"react": "19.2.8",
|
|
9
|
+
"reconciler": "0.33.0"
|
|
10
|
+
},
|
|
6
11
|
"script": {
|
|
7
|
-
"url": "https://cdn.jsdelivr.net/npm/manifest-editor@2.
|
|
8
|
-
"integrity": "sha384-
|
|
12
|
+
"url": "https://cdn.jsdelivr.net/npm/manifest-editor@2.3.0/dist/browser/runtime.js",
|
|
13
|
+
"integrity": "sha384-qS/eRcTXxGT6Pqi8qqr2YzVLyhQCx9GAlaLm9S/8FFvnCNNBQTH7IFVU90I9AXK/"
|
|
9
14
|
},
|
|
10
15
|
"stylesheet": {
|
|
11
|
-
"url": "https://cdn.jsdelivr.net/npm/manifest-editor@2.
|
|
12
|
-
"integrity": "sha384-
|
|
16
|
+
"url": "https://cdn.jsdelivr.net/npm/manifest-editor@2.3.0/dist/browser/runtime.css",
|
|
17
|
+
"integrity": "sha384-EcLM7e62/9rg5LLhV11X2z/HkmP4uWlHB1YYH97tZg60VUSRAHnJq3z7WDIs5pvn"
|
|
13
18
|
}
|
|
14
19
|
}
|