worldorbit 2.5.17 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +91 -18
- package/dist/browser/core/dist/atlas-edit.d.ts +11 -0
- package/dist/browser/core/dist/atlas-edit.js +347 -0
- package/dist/browser/core/dist/atlas-utils.d.ts +22 -0
- package/dist/browser/core/dist/atlas-utils.js +189 -0
- package/dist/browser/core/dist/atlas-validate.d.ts +2 -0
- package/dist/browser/core/dist/atlas-validate.js +488 -0
- package/dist/browser/core/dist/diagnostics.d.ts +10 -0
- package/dist/browser/core/dist/diagnostics.js +109 -0
- package/dist/browser/core/dist/draft-parse.d.ts +3 -0
- package/dist/browser/core/dist/draft-parse.js +1654 -0
- package/dist/browser/core/dist/draft.d.ts +21 -0
- package/dist/browser/core/dist/draft.js +482 -0
- package/dist/browser/core/dist/errors.d.ts +7 -0
- package/dist/browser/core/dist/errors.js +16 -0
- package/dist/browser/core/dist/format.d.ts +4 -0
- package/dist/browser/core/dist/format.js +613 -0
- package/dist/browser/core/dist/index.d.ts +29 -0
- package/dist/browser/core/dist/index.js +35 -6101
- package/dist/browser/core/dist/load.d.ts +4 -0
- package/dist/browser/core/dist/load.js +182 -0
- package/dist/browser/core/dist/markdown.d.ts +2 -0
- package/dist/browser/core/dist/markdown.js +37 -0
- package/dist/browser/core/dist/normalize.d.ts +2 -0
- package/dist/browser/core/dist/normalize.js +312 -0
- package/dist/browser/core/dist/parse.d.ts +2 -0
- package/dist/browser/core/dist/parse.js +133 -0
- package/dist/browser/core/dist/scene.d.ts +3 -0
- package/dist/browser/core/dist/scene.js +1901 -0
- package/dist/browser/core/dist/schema.d.ts +8 -0
- package/dist/browser/core/dist/schema.js +298 -0
- package/dist/browser/core/dist/spatial-scene.d.ts +3 -0
- package/dist/browser/core/dist/spatial-scene.js +420 -0
- package/dist/browser/core/dist/tokenize.d.ts +4 -0
- package/dist/browser/core/dist/tokenize.js +68 -0
- package/dist/browser/core/dist/types.d.ts +637 -0
- package/dist/browser/core/dist/types.js +1 -0
- package/dist/browser/core/dist/validate.d.ts +2 -0
- package/dist/browser/core/dist/validate.js +56 -0
- package/dist/browser/editor/dist/editor.d.ts +2 -0
- package/dist/browser/editor/dist/editor.js +3700 -0
- package/dist/browser/editor/dist/index.d.ts +2 -0
- package/dist/browser/editor/dist/index.js +1 -11702
- package/dist/browser/editor/dist/types.d.ts +59 -0
- package/dist/browser/editor/dist/types.js +1 -0
- package/dist/browser/markdown/dist/html.d.ts +3 -0
- package/dist/browser/markdown/dist/html.js +64 -0
- package/dist/browser/markdown/dist/index.d.ts +4 -0
- package/dist/browser/markdown/dist/index.js +3 -5766
- package/dist/browser/markdown/dist/rehype.d.ts +10 -0
- package/dist/browser/markdown/dist/rehype.js +49 -0
- package/dist/browser/markdown/dist/remark.d.ts +9 -0
- package/dist/browser/markdown/dist/remark.js +28 -0
- package/dist/browser/markdown/dist/types.d.ts +11 -0
- package/dist/browser/markdown/dist/types.js +1 -0
- package/dist/browser/viewer/dist/atlas-state.d.ts +12 -0
- package/dist/browser/viewer/dist/atlas-state.js +269 -0
- package/dist/browser/viewer/dist/atlas-viewer.d.ts +2 -0
- package/dist/browser/viewer/dist/atlas-viewer.js +495 -0
- package/dist/browser/viewer/dist/custom-element.d.ts +1 -0
- package/dist/browser/viewer/dist/custom-element.js +78 -0
- package/dist/browser/viewer/dist/embed.d.ts +24 -0
- package/dist/browser/viewer/dist/embed.js +172 -0
- package/dist/browser/viewer/dist/errors.d.ts +6 -0
- package/dist/browser/viewer/dist/errors.js +12 -0
- package/dist/browser/viewer/dist/index.d.ts +10 -0
- package/dist/browser/viewer/dist/index.js +9 -7901
- package/dist/browser/viewer/dist/minimap.d.ts +3 -0
- package/dist/browser/viewer/dist/minimap.js +63 -0
- package/dist/browser/viewer/dist/render.d.ts +6 -0
- package/dist/browser/viewer/dist/render.js +670 -0
- package/dist/browser/viewer/dist/runtime-3d.d.ts +19 -0
- package/dist/browser/viewer/dist/runtime-3d.js +494 -0
- package/dist/browser/viewer/dist/theme.d.ts +4 -0
- package/dist/browser/viewer/dist/theme.js +103 -0
- package/dist/browser/viewer/dist/tooltip.d.ts +3 -0
- package/dist/browser/viewer/dist/tooltip.js +198 -0
- package/dist/browser/viewer/dist/types.d.ts +292 -0
- package/dist/browser/viewer/dist/types.js +1 -0
- package/dist/browser/viewer/dist/vendor/three.module.js +53032 -0
- package/dist/browser/viewer/dist/viewer-state.d.ts +19 -0
- package/dist/browser/viewer/dist/viewer-state.js +162 -0
- package/dist/browser/viewer/dist/viewer.d.ts +2 -0
- package/dist/browser/viewer/dist/viewer.js +1662 -0
- package/dist/unpkg/core/dist/atlas-edit.d.ts +11 -0
- package/dist/unpkg/core/dist/atlas-edit.js +347 -0
- package/dist/unpkg/core/dist/atlas-utils.d.ts +22 -0
- package/dist/unpkg/core/dist/atlas-utils.js +189 -0
- package/dist/unpkg/core/dist/atlas-validate.d.ts +2 -0
- package/dist/unpkg/core/dist/atlas-validate.js +488 -0
- package/dist/unpkg/core/dist/diagnostics.d.ts +10 -0
- package/dist/unpkg/core/dist/diagnostics.js +109 -0
- package/dist/unpkg/core/dist/draft-parse.d.ts +3 -0
- package/dist/unpkg/core/dist/draft-parse.js +1654 -0
- package/dist/unpkg/core/dist/draft.d.ts +21 -0
- package/dist/unpkg/core/dist/draft.js +482 -0
- package/dist/unpkg/core/dist/errors.d.ts +7 -0
- package/dist/unpkg/core/dist/errors.js +16 -0
- package/dist/unpkg/core/dist/format.d.ts +4 -0
- package/dist/unpkg/core/dist/format.js +613 -0
- package/dist/unpkg/core/dist/index.d.ts +29 -0
- package/dist/unpkg/core/dist/index.js +35 -6173
- package/dist/unpkg/core/dist/load.d.ts +4 -0
- package/dist/unpkg/core/dist/load.js +182 -0
- package/dist/unpkg/core/dist/markdown.d.ts +2 -0
- package/dist/unpkg/core/dist/markdown.js +37 -0
- package/dist/unpkg/core/dist/normalize.d.ts +2 -0
- package/dist/unpkg/core/dist/normalize.js +312 -0
- package/dist/unpkg/core/dist/parse.d.ts +2 -0
- package/dist/unpkg/core/dist/parse.js +133 -0
- package/dist/unpkg/core/dist/scene.d.ts +3 -0
- package/dist/unpkg/core/dist/scene.js +1901 -0
- package/dist/unpkg/core/dist/schema.d.ts +8 -0
- package/dist/unpkg/core/dist/schema.js +298 -0
- package/dist/unpkg/core/dist/spatial-scene.d.ts +3 -0
- package/dist/unpkg/core/dist/spatial-scene.js +420 -0
- package/dist/unpkg/core/dist/tokenize.d.ts +4 -0
- package/dist/unpkg/core/dist/tokenize.js +68 -0
- package/dist/unpkg/core/dist/types.d.ts +637 -0
- package/dist/unpkg/core/dist/types.js +1 -0
- package/dist/unpkg/core/dist/validate.d.ts +2 -0
- package/dist/unpkg/core/dist/validate.js +56 -0
- package/dist/unpkg/editor/dist/editor.d.ts +2 -0
- package/dist/unpkg/editor/dist/editor.js +3700 -0
- package/dist/unpkg/editor/dist/index.d.ts +2 -0
- package/dist/unpkg/editor/dist/index.js +1 -11727
- package/dist/unpkg/editor/dist/types.d.ts +59 -0
- package/dist/unpkg/editor/dist/types.js +1 -0
- package/dist/unpkg/markdown/dist/html.d.ts +3 -0
- package/dist/unpkg/markdown/dist/html.js +64 -0
- package/dist/unpkg/markdown/dist/index.d.ts +4 -0
- package/dist/unpkg/markdown/dist/index.js +3 -5794
- package/dist/unpkg/markdown/dist/rehype.d.ts +10 -0
- package/dist/unpkg/markdown/dist/rehype.js +49 -0
- package/dist/unpkg/markdown/dist/remark.d.ts +9 -0
- package/dist/unpkg/markdown/dist/remark.js +28 -0
- package/dist/unpkg/markdown/dist/types.d.ts +11 -0
- package/dist/unpkg/markdown/dist/types.js +1 -0
- package/dist/unpkg/viewer/dist/atlas-state.d.ts +12 -0
- package/dist/unpkg/viewer/dist/atlas-state.js +269 -0
- package/dist/unpkg/viewer/dist/atlas-viewer.d.ts +2 -0
- package/dist/unpkg/viewer/dist/atlas-viewer.js +495 -0
- package/dist/unpkg/viewer/dist/custom-element.d.ts +1 -0
- package/dist/unpkg/viewer/dist/custom-element.js +78 -0
- package/dist/unpkg/viewer/dist/embed.d.ts +24 -0
- package/dist/unpkg/viewer/dist/embed.js +172 -0
- package/dist/unpkg/viewer/dist/errors.d.ts +6 -0
- package/dist/unpkg/viewer/dist/errors.js +12 -0
- package/dist/unpkg/viewer/dist/index.d.ts +10 -0
- package/dist/unpkg/viewer/dist/index.js +9 -7958
- package/dist/unpkg/viewer/dist/minimap.d.ts +3 -0
- package/dist/unpkg/viewer/dist/minimap.js +63 -0
- package/dist/unpkg/viewer/dist/render.d.ts +6 -0
- package/dist/unpkg/viewer/dist/render.js +670 -0
- package/dist/unpkg/viewer/dist/runtime-3d.d.ts +19 -0
- package/dist/unpkg/viewer/dist/runtime-3d.js +494 -0
- package/dist/unpkg/viewer/dist/theme.d.ts +4 -0
- package/dist/unpkg/viewer/dist/theme.js +103 -0
- package/dist/unpkg/viewer/dist/tooltip.d.ts +3 -0
- package/dist/unpkg/viewer/dist/tooltip.js +198 -0
- package/dist/unpkg/viewer/dist/types.d.ts +292 -0
- package/dist/unpkg/viewer/dist/types.js +1 -0
- package/dist/unpkg/viewer/dist/vendor/three.module.js +53032 -0
- package/dist/unpkg/viewer/dist/viewer-state.d.ts +19 -0
- package/dist/unpkg/viewer/dist/viewer-state.js +162 -0
- package/dist/unpkg/viewer/dist/viewer.d.ts +2 -0
- package/dist/unpkg/viewer/dist/viewer.js +1662 -0
- package/dist/unpkg/worldorbit-core.min.js +1 -12
- package/dist/unpkg/worldorbit-editor.min.js +1 -894
- package/dist/unpkg/worldorbit-markdown.min.js +1 -103
- package/dist/unpkg/worldorbit-viewer.min.js +1 -259
- package/dist/unpkg/worldorbit.js +2 -9243
- package/dist/unpkg/worldorbit.min.js +2 -263
- package/package.json +1 -1
- package/packages/core/dist/atlas-edit.js +1 -1
- package/packages/core/dist/atlas-validate.js +99 -10
- package/packages/core/dist/draft-parse.js +190 -15
- package/packages/core/dist/draft.js +50 -11
- package/packages/core/dist/format.js +36 -5
- package/packages/core/dist/index.d.ts +1 -0
- package/packages/core/dist/index.js +1 -0
- package/packages/core/dist/load.js +9 -2
- package/packages/core/dist/scene.js +158 -24
- package/packages/core/dist/spatial-scene.d.ts +3 -0
- package/packages/core/dist/spatial-scene.js +420 -0
- package/packages/core/dist/types.d.ts +124 -2
- package/packages/editor/dist/editor.js +130 -8
- package/packages/editor/dist/types.d.ts +4 -0
- package/packages/markdown/dist/html.js +10 -3
- package/packages/viewer/dist/atlas-state.js +8 -2
- package/packages/viewer/dist/atlas-viewer.js +20 -8
- package/packages/viewer/dist/custom-element.js +18 -4
- package/packages/viewer/dist/embed.d.ts +5 -1
- package/packages/viewer/dist/embed.js +58 -24
- package/packages/viewer/dist/errors.d.ts +6 -0
- package/packages/viewer/dist/errors.js +12 -0
- package/packages/viewer/dist/index.d.ts +1 -0
- package/packages/viewer/dist/index.js +1 -0
- package/packages/viewer/dist/runtime-3d.d.ts +19 -0
- package/packages/viewer/dist/runtime-3d.js +494 -0
- package/packages/viewer/dist/types.d.ts +25 -3
- package/packages/viewer/dist/vendor/three.module.js +53032 -0
- package/packages/viewer/dist/viewer.js +517 -41
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { AtlasDocumentPath, AtlasResolvedDiagnostic, WorldOrbitAtlasDocument, WorldOrbitEvent, WorldOrbitAtlasSystem, WorldOrbitAtlasViewpoint, WorldOrbitObject } from "@worldorbit/core";
|
|
2
|
+
import type { WorldOrbitViewMode } from "@worldorbit/viewer";
|
|
3
|
+
export interface WorldOrbitEditorSelection {
|
|
4
|
+
path: AtlasDocumentPath | null;
|
|
5
|
+
}
|
|
6
|
+
export interface WorldOrbitEditorSnapshot {
|
|
7
|
+
source: string;
|
|
8
|
+
atlasDocument: WorldOrbitAtlasDocument;
|
|
9
|
+
diagnostics: AtlasResolvedDiagnostic[];
|
|
10
|
+
selection: WorldOrbitEditorSelection | null;
|
|
11
|
+
}
|
|
12
|
+
export interface WorldOrbitEditorOptions {
|
|
13
|
+
source?: string;
|
|
14
|
+
atlasDocument?: WorldOrbitAtlasDocument;
|
|
15
|
+
showTextPane?: boolean;
|
|
16
|
+
showInspector?: boolean;
|
|
17
|
+
showPreview?: boolean;
|
|
18
|
+
viewerWidth?: number;
|
|
19
|
+
viewerHeight?: number;
|
|
20
|
+
viewMode?: WorldOrbitViewMode;
|
|
21
|
+
shortcuts?: boolean;
|
|
22
|
+
onChange?: (snapshot: WorldOrbitEditorSnapshot) => void;
|
|
23
|
+
onDiagnosticsChange?: (diagnostics: AtlasResolvedDiagnostic[]) => void;
|
|
24
|
+
onSelectionChange?: (selection: WorldOrbitEditorSelection | null) => void;
|
|
25
|
+
onDirtyChange?: (dirty: boolean) => void;
|
|
26
|
+
}
|
|
27
|
+
export interface WorldOrbitEditor {
|
|
28
|
+
setSource(source: string): void;
|
|
29
|
+
setAtlasDocument(document: WorldOrbitAtlasDocument): void;
|
|
30
|
+
getSource(): string;
|
|
31
|
+
getAtlasDocument(): WorldOrbitAtlasDocument;
|
|
32
|
+
getDiagnostics(): AtlasResolvedDiagnostic[];
|
|
33
|
+
getSelection(): WorldOrbitEditorSelection | null;
|
|
34
|
+
getViewMode(): WorldOrbitViewMode;
|
|
35
|
+
setViewMode(mode: WorldOrbitViewMode): void;
|
|
36
|
+
isDirty(): boolean;
|
|
37
|
+
markSaved(): void;
|
|
38
|
+
selectPath(path: AtlasDocumentPath | null): void;
|
|
39
|
+
canUndo(): boolean;
|
|
40
|
+
canRedo(): boolean;
|
|
41
|
+
undo(): boolean;
|
|
42
|
+
redo(): boolean;
|
|
43
|
+
addObject(type?: WorldOrbitObject["type"]): string;
|
|
44
|
+
addEvent(): string;
|
|
45
|
+
addViewpoint(): string;
|
|
46
|
+
addAnnotation(): string;
|
|
47
|
+
addMetadata(key?: string, value?: string): string;
|
|
48
|
+
removeSelection(): boolean;
|
|
49
|
+
exportSvg(): string;
|
|
50
|
+
exportEmbedMarkup(): string;
|
|
51
|
+
destroy(): void;
|
|
52
|
+
}
|
|
53
|
+
export interface WorldOrbitEditorFormState {
|
|
54
|
+
selection: WorldOrbitEditorSelection | null;
|
|
55
|
+
system: WorldOrbitAtlasSystem | null;
|
|
56
|
+
viewpoints: WorldOrbitAtlasViewpoint[];
|
|
57
|
+
events: WorldOrbitEvent[];
|
|
58
|
+
objects: WorldOrbitObject[];
|
|
59
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { loadWorldOrbitSource, renderDocumentToScene, renderDocumentToSpatialScene, } from "@worldorbit/core";
|
|
2
|
+
import { createEmbedPayload, createWorldOrbitEmbedMarkup, renderSceneToSvg, } from "@worldorbit/viewer";
|
|
3
|
+
export function renderWorldOrbitBlock(source, options = {}) {
|
|
4
|
+
try {
|
|
5
|
+
const loaded = loadWorldOrbitSource(source);
|
|
6
|
+
const scene = renderDocumentToScene(loaded.document, resolveSourceRenderOptions(loaded, options));
|
|
7
|
+
const mode = options.mode ?? "static";
|
|
8
|
+
if (mode === "interactive" || mode === "interactive-2d" || mode === "interactive-3d") {
|
|
9
|
+
const normalizedMode = mode === "interactive" ? "interactive-2d" : mode;
|
|
10
|
+
return createWorldOrbitEmbedMarkup(createEmbedPayload(scene, normalizedMode, {
|
|
11
|
+
spatialScene: normalizedMode === "interactive-3d"
|
|
12
|
+
? renderDocumentToSpatialScene(loaded.document, resolveSourceRenderOptions(loaded, options))
|
|
13
|
+
: undefined,
|
|
14
|
+
viewMode: normalizedMode === "interactive-3d" ? "3d" : "2d",
|
|
15
|
+
initialViewpointId: options.initialViewpointId,
|
|
16
|
+
initialSelectionObjectId: options.initialSelectionObjectId,
|
|
17
|
+
initialFilter: options.initialFilter ?? null,
|
|
18
|
+
atlasState: options.atlasState ?? null,
|
|
19
|
+
minimap: options.minimap,
|
|
20
|
+
}), {
|
|
21
|
+
className: options.className ?? "worldorbit-block worldorbit-interactive",
|
|
22
|
+
theme: options.theme,
|
|
23
|
+
layers: options.layers,
|
|
24
|
+
subtitle: options.subtitle,
|
|
25
|
+
preset: options.preset,
|
|
26
|
+
viewMode: normalizedMode === "interactive-3d" ? "3d" : "2d",
|
|
27
|
+
initialViewpointId: options.initialViewpointId,
|
|
28
|
+
initialSelectionObjectId: options.initialSelectionObjectId,
|
|
29
|
+
initialFilter: options.initialFilter ?? null,
|
|
30
|
+
atlasState: options.atlasState ?? null,
|
|
31
|
+
minimap: options.minimap,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
return `<figure class="${escapeAttribute(options.className ?? "worldorbit-block worldorbit-static")}">${renderSceneToSvg(scene, options)}</figure>`;
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
if (options.strict) {
|
|
38
|
+
throw error;
|
|
39
|
+
}
|
|
40
|
+
return renderWorldOrbitError(error instanceof Error ? error.message : String(error));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
export function renderWorldOrbitError(message) {
|
|
44
|
+
return `<pre class="worldorbit-error">WorldOrbit error: ${escapeHtml(message)}</pre>`;
|
|
45
|
+
}
|
|
46
|
+
function escapeHtml(value) {
|
|
47
|
+
return value
|
|
48
|
+
.replaceAll("&", "&")
|
|
49
|
+
.replaceAll("<", "<")
|
|
50
|
+
.replaceAll(">", ">");
|
|
51
|
+
}
|
|
52
|
+
function escapeAttribute(value) {
|
|
53
|
+
return escapeHtml(value).replaceAll("\"", """);
|
|
54
|
+
}
|
|
55
|
+
function resolveSourceRenderOptions(loaded, options) {
|
|
56
|
+
const atlasDocument = loaded.atlasDocument ?? loaded.draftDocument;
|
|
57
|
+
if (options.preset || !atlasDocument?.system?.defaults.preset) {
|
|
58
|
+
return options;
|
|
59
|
+
}
|
|
60
|
+
return {
|
|
61
|
+
...options,
|
|
62
|
+
preset: atlasDocument.system.defaults.preset,
|
|
63
|
+
};
|
|
64
|
+
}
|