@dxos/plugin-presenter 0.8.4-main.c85a9c8dae → 0.8.4-main.dfabb4ec29
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/lib/{browser/CollectionPresenterContainer-5RJIT3DA.mjs → neutral/CollectionPresenterContainer-JMX6INMS.mjs} +12 -18
- package/dist/lib/neutral/CollectionPresenterContainer-JMX6INMS.mjs.map +7 -0
- package/dist/lib/{browser/DocumentPresenterContainer-ISD6N5FM.mjs → neutral/DocumentPresenterContainer-KCDZ2O2C.mjs} +5 -9
- package/dist/lib/neutral/DocumentPresenterContainer-KCDZ2O2C.mjs.map +7 -0
- package/dist/lib/neutral/MarkdownSlide-WXILOIBE.mjs +18 -0
- package/dist/lib/neutral/MarkdownSlide-WXILOIBE.mjs.map +7 -0
- package/dist/lib/neutral/PresenterPlugin.mjs +23 -0
- package/dist/lib/neutral/PresenterPlugin.mjs.map +7 -0
- package/dist/lib/neutral/PresenterPlugin.node.mjs +16 -0
- package/dist/lib/neutral/PresenterPlugin.node.mjs.map +7 -0
- package/dist/lib/neutral/PresenterSettings-2G4XD4QY.mjs +25 -0
- package/dist/lib/neutral/PresenterSettings-2G4XD4QY.mjs.map +7 -0
- package/dist/lib/{browser/app-graph-builder-LNUGLW3H.mjs → neutral/app-graph-builder-LOVUQ6U5.mjs} +24 -39
- package/dist/lib/neutral/app-graph-builder-LOVUQ6U5.mjs.map +7 -0
- package/dist/lib/neutral/capabilities/index.mjs +13 -0
- package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
- package/dist/lib/{browser/chunk-VQVZVXPJ.mjs → neutral/chunk-4XSSDLGN.mjs} +2 -2
- package/dist/lib/{browser/chunk-VQVZVXPJ.mjs.map → neutral/chunk-4XSSDLGN.mjs.map} +3 -3
- package/dist/lib/neutral/chunk-DCPA267T.mjs +68 -0
- package/dist/lib/neutral/chunk-DCPA267T.mjs.map +7 -0
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
- package/dist/lib/{browser/chunk-46CHA6Y5.mjs → neutral/chunk-V323QBC3.mjs} +8 -8
- package/dist/lib/neutral/chunk-V323QBC3.mjs.map +7 -0
- package/dist/lib/{browser/chunk-BHTOR7TG.mjs → neutral/components/index.mjs} +37 -20
- package/dist/lib/neutral/components/index.mjs.map +7 -0
- package/dist/lib/neutral/containers/index.mjs +13 -0
- package/dist/lib/neutral/containers/index.mjs.map +7 -0
- package/dist/lib/neutral/index.mjs +18 -0
- package/dist/lib/neutral/index.mjs.map +7 -0
- package/dist/lib/neutral/meta.json +1 -0
- package/dist/lib/neutral/meta.mjs +8 -0
- package/dist/lib/neutral/meta.mjs.map +7 -0
- package/dist/lib/neutral/plugin.mjs +12 -0
- package/dist/lib/neutral/plugin.mjs.map +7 -0
- package/dist/lib/neutral/react-surface-ATYTHPAA.mjs +55 -0
- package/dist/lib/neutral/react-surface-ATYTHPAA.mjs.map +7 -0
- package/dist/lib/{browser/settings-GIQOCH6O.mjs → neutral/settings-R6LRDAAK.mjs} +7 -11
- package/dist/lib/neutral/settings-R6LRDAAK.mjs.map +7 -0
- package/dist/lib/neutral/translations.mjs +19 -0
- package/dist/lib/neutral/translations.mjs.map +7 -0
- package/dist/lib/neutral/types/index.mjs +14 -0
- package/dist/lib/neutral/types/index.mjs.map +7 -0
- package/dist/types/src/PresenterPlugin.d.ts +1 -0
- package/dist/types/src/PresenterPlugin.d.ts.map +1 -1
- package/dist/types/src/PresenterPlugin.node.d.ts +4 -0
- package/dist/types/src/PresenterPlugin.node.d.ts.map +1 -0
- package/dist/types/src/PresenterPlugin.test.d.ts +2 -0
- package/dist/types/src/PresenterPlugin.test.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +4 -3
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/{settings/settings.d.ts → settings.d.ts} +2 -5
- package/dist/types/src/capabilities/settings.d.ts.map +1 -0
- package/dist/types/src/components/Markdown/Panel.d.ts +8 -0
- package/dist/types/src/components/Markdown/Panel.d.ts.map +1 -0
- package/dist/types/src/components/Markdown/{Container.stories.d.ts → Panel.stories.d.ts} +1 -1
- package/dist/types/src/components/Markdown/Panel.stories.d.ts.map +1 -0
- package/dist/types/src/components/Markdown/Slide.d.ts +1 -1
- package/dist/types/src/components/Markdown/Slide.d.ts.map +1 -1
- package/dist/types/src/components/Markdown/Slide.stories.d.ts.map +1 -1
- package/dist/types/src/components/Markdown/index.d.ts +1 -1
- package/dist/types/src/components/Markdown/index.d.ts.map +1 -1
- package/dist/types/src/components/Markdown/theme.d.ts.map +1 -1
- package/dist/types/src/components/Presenter/Layout.d.ts +5 -5
- package/dist/types/src/components/Presenter/Layout.d.ts.map +1 -1
- package/dist/types/src/components/Presenter/Pager.d.ts.map +1 -1
- package/dist/types/src/components/Presenter/Pager.stories.d.ts.map +1 -1
- package/dist/types/src/components/PresenterSettings/PresenterSettings.d.ts +6 -0
- package/dist/types/src/components/PresenterSettings/PresenterSettings.d.ts.map +1 -0
- package/dist/types/src/components/PresenterSettings/PresenterSettings.stories.d.ts +23 -0
- package/dist/types/src/components/PresenterSettings/PresenterSettings.stories.d.ts.map +1 -0
- package/dist/types/src/components/PresenterSettings/index.d.ts +2 -0
- package/dist/types/src/components/PresenterSettings/index.d.ts.map +1 -0
- package/dist/types/src/components/RevealPlayer/RevealPlayer.d.ts +5 -4
- package/dist/types/src/components/RevealPlayer/RevealPlayer.d.ts.map +1 -1
- package/dist/types/src/components/RevealPlayer/RevealPlayer.stories.d.ts +7 -6
- package/dist/types/src/components/RevealPlayer/RevealPlayer.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +2 -0
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/containers/CollectionPresenterContainer/CollectionPresenterContainer.d.ts +2 -3
- package/dist/types/src/containers/CollectionPresenterContainer/CollectionPresenterContainer.d.ts.map +1 -1
- package/dist/types/src/containers/CollectionPresenterContainer/index.d.ts +1 -2
- package/dist/types/src/containers/CollectionPresenterContainer/index.d.ts.map +1 -1
- package/dist/types/src/containers/DocumentPresenterContainer/DocumentPresenterContainer.d.ts +1 -1
- package/dist/types/src/containers/DocumentPresenterContainer/DocumentPresenterContainer.d.ts.map +1 -1
- package/dist/types/src/containers/DocumentPresenterContainer/index.d.ts +1 -2
- package/dist/types/src/containers/DocumentPresenterContainer/index.d.ts.map +1 -1
- package/dist/types/src/containers/MarkdownSlide/MarkdownSlide.d.ts +1 -1
- package/dist/types/src/containers/MarkdownSlide/MarkdownSlide.d.ts.map +1 -1
- package/dist/types/src/containers/MarkdownSlide/index.d.ts +1 -2
- package/dist/types/src/containers/MarkdownSlide/index.d.ts.map +1 -1
- package/dist/types/src/containers/index.d.ts +0 -1
- package/dist/types/src/containers/index.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -2
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/plugin.d.ts +3 -0
- package/dist/types/src/plugin.d.ts.map +1 -0
- package/dist/types/src/testing.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +4 -6
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/PresenterCapabilities.d.ts +4 -0
- package/dist/types/src/types/PresenterCapabilities.d.ts.map +1 -0
- package/dist/types/src/types/PresenterOperation.d.ts +17 -0
- package/dist/types/src/types/PresenterOperation.d.ts.map +1 -0
- package/dist/types/src/types/Settings.d.ts +7 -0
- package/dist/types/src/types/Settings.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +11 -0
- package/dist/types/src/types/index.d.ts.map +1 -0
- package/dist/types/src/useExitPresenter.d.ts +1 -1
- package/dist/types/src/useExitPresenter.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +85 -34
- package/src/PresenterPlugin.node.ts +16 -0
- package/src/PresenterPlugin.test.ts +23 -0
- package/src/PresenterPlugin.tsx +5 -3
- package/src/capabilities/{app-graph-builder/app-graph-builder.ts → app-graph-builder.ts} +23 -26
- package/src/capabilities/index.ts +5 -3
- package/src/capabilities/react-surface.tsx +68 -0
- package/src/capabilities/{settings/settings.ts → settings.ts} +4 -4
- package/src/components/Markdown/{Container.stories.tsx → Panel.stories.tsx} +5 -5
- package/src/components/Markdown/{Container.tsx → Panel.tsx} +4 -4
- package/src/components/Markdown/Slide.stories.tsx +1 -1
- package/src/components/Markdown/Slide.tsx +2 -2
- package/src/components/Markdown/index.ts +1 -1
- package/src/components/Presenter/Layout.tsx +24 -23
- package/src/components/PresenterSettings/PresenterSettings.stories.tsx +32 -0
- package/src/components/PresenterSettings/PresenterSettings.tsx +31 -0
- package/src/components/PresenterSettings/index.ts +5 -0
- package/src/components/RevealPlayer/RevealPlayer.stories.tsx +2 -2
- package/src/components/RevealPlayer/RevealPlayer.tsx +104 -105
- package/src/components/index.ts +4 -0
- package/src/containers/CollectionPresenterContainer/CollectionPresenterContainer.tsx +13 -6
- package/src/containers/CollectionPresenterContainer/index.ts +1 -3
- package/src/containers/DocumentPresenterContainer/DocumentPresenterContainer.tsx +3 -2
- package/src/containers/DocumentPresenterContainer/index.ts +1 -3
- package/src/containers/MarkdownSlide/MarkdownSlide.tsx +4 -4
- package/src/containers/MarkdownSlide/index.ts +1 -3
- package/src/containers/index.ts +0 -1
- package/src/index.ts +1 -3
- package/src/meta.ts +1 -1
- package/src/plugin.ts +9 -0
- package/src/testing.ts +6 -6
- package/src/translations.ts +4 -5
- package/src/types/PresenterCapabilities.ts +15 -0
- package/src/types/PresenterOperation.ts +25 -0
- package/src/types/Settings.ts +20 -0
- package/src/types/index.ts +21 -0
- package/src/useExitPresenter.ts +9 -8
- package/dist/lib/browser/CollectionPresenterContainer-5RJIT3DA.mjs.map +0 -7
- package/dist/lib/browser/DocumentPresenterContainer-ISD6N5FM.mjs.map +0 -7
- package/dist/lib/browser/MarkdownSlide-Q2XLZTMW.mjs +0 -23
- package/dist/lib/browser/MarkdownSlide-Q2XLZTMW.mjs.map +0 -7
- package/dist/lib/browser/PresenterSettings-WGQMXH4I.mjs +0 -31
- package/dist/lib/browser/PresenterSettings-WGQMXH4I.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-LNUGLW3H.mjs.map +0 -7
- package/dist/lib/browser/chunk-46CHA6Y5.mjs.map +0 -7
- package/dist/lib/browser/chunk-BHTOR7TG.mjs.map +0 -7
- package/dist/lib/browser/chunk-PSOOAW44.mjs +0 -50
- package/dist/lib/browser/chunk-PSOOAW44.mjs.map +0 -7
- package/dist/lib/browser/index.mjs +0 -65
- package/dist/lib/browser/index.mjs.map +0 -7
- package/dist/lib/browser/meta.json +0 -1
- package/dist/lib/browser/react-surface-UCM2KRSP.mjs +0 -67
- package/dist/lib/browser/react-surface-UCM2KRSP.mjs.map +0 -7
- package/dist/lib/browser/settings-GIQOCH6O.mjs.map +0 -7
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +0 -1
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts +0 -3
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
- package/dist/types/src/capabilities/settings/index.d.ts +0 -7
- package/dist/types/src/capabilities/settings/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/settings/settings.d.ts.map +0 -1
- package/dist/types/src/components/Markdown/Container.d.ts +0 -8
- package/dist/types/src/components/Markdown/Container.d.ts.map +0 -1
- package/dist/types/src/components/Markdown/Container.stories.d.ts.map +0 -1
- package/dist/types/src/containers/PresenterSettings/PresenterSettings.d.ts +0 -8
- package/dist/types/src/containers/PresenterSettings/PresenterSettings.d.ts.map +0 -1
- package/dist/types/src/containers/PresenterSettings/index.d.ts +0 -3
- package/dist/types/src/containers/PresenterSettings/index.d.ts.map +0 -1
- package/dist/types/src/types.d.ts +0 -49
- package/dist/types/src/types.d.ts.map +0 -1
- package/src/capabilities/app-graph-builder/index.ts +0 -7
- package/src/capabilities/react-surface/index.ts +0 -7
- package/src/capabilities/react-surface/react-surface.tsx +0 -71
- package/src/capabilities/settings/index.ts +0 -7
- package/src/containers/PresenterSettings/PresenterSettings.tsx +0 -35
- package/src/containers/PresenterSettings/index.ts +0 -7
- package/src/types.ts +0 -54
- /package/dist/types/src/capabilities/{app-graph-builder/app-graph-builder.d.ts → app-graph-builder.d.ts} +0 -0
- /package/dist/types/src/capabilities/{react-surface/react-surface.d.ts → react-surface.d.ts} +0 -0
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
meta
|
|
3
|
-
} from "./chunk-VQVZVXPJ.mjs";
|
|
4
|
-
|
|
5
|
-
// src/containers/PresenterSettings/PresenterSettings.tsx
|
|
6
|
-
import React from "react";
|
|
7
|
-
import { Input, useTranslation } from "@dxos/react-ui";
|
|
8
|
-
import { Settings } from "@dxos/react-ui-form";
|
|
9
|
-
var PresenterSettings = ({ settings, onSettingsChange }) => {
|
|
10
|
-
const { t } = useTranslation(meta.id);
|
|
11
|
-
return /* @__PURE__ */ React.createElement(Settings.Root, null, /* @__PURE__ */ React.createElement(Settings.Section, {
|
|
12
|
-
title: t("settings title", {
|
|
13
|
-
ns: meta.id
|
|
14
|
-
})
|
|
15
|
-
}, /* @__PURE__ */ React.createElement(Settings.Group, null, /* @__PURE__ */ React.createElement(Settings.ItemInput, {
|
|
16
|
-
title: t("present collections label")
|
|
17
|
-
}, /* @__PURE__ */ React.createElement(Input.Switch, {
|
|
18
|
-
checked: settings.presentCollections,
|
|
19
|
-
onCheckedChange: (checked) => onSettingsChange((s) => ({
|
|
20
|
-
...s,
|
|
21
|
-
presentCollections: !!checked
|
|
22
|
-
}))
|
|
23
|
-
})))));
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
// src/containers/PresenterSettings/index.ts
|
|
27
|
-
var PresenterSettings_default = PresenterSettings;
|
|
28
|
-
export {
|
|
29
|
-
PresenterSettings_default as default
|
|
30
|
-
};
|
|
31
|
-
//# sourceMappingURL=PresenterSettings-WGQMXH4I.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/containers/PresenterSettings/PresenterSettings.tsx", "../../../src/containers/PresenterSettings/index.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Input, useTranslation } from '@dxos/react-ui';\nimport { Settings } from '@dxos/react-ui-form';\n\nimport { meta } from '../../meta';\nimport { type PresenterSettingsProps } from '../../types';\n\nexport type PresenterSettingsComponentProps = {\n settings: PresenterSettingsProps;\n onSettingsChange: (fn: (current: PresenterSettingsProps) => PresenterSettingsProps) => void;\n};\n\nexport const PresenterSettings = ({ settings, onSettingsChange }: PresenterSettingsComponentProps) => {\n const { t } = useTranslation(meta.id);\n\n return (\n <Settings.Root>\n <Settings.Section title={t('settings title', { ns: meta.id })}>\n <Settings.Group>\n <Settings.ItemInput title={t('present collections label')}>\n <Input.Switch\n checked={settings.presentCollections}\n onCheckedChange={(checked) => onSettingsChange((s) => ({ ...s, presentCollections: !!checked }))}\n />\n </Settings.ItemInput>\n </Settings.Group>\n </Settings.Section>\n </Settings.Root>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { PresenterSettings } from './PresenterSettings';\n\nexport default PresenterSettings;\n"],
|
|
5
|
-
"mappings": ";;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,OAAOC,sBAAsB;AACtC,SAASC,gBAAgB;AAUlB,IAAMC,oBAAoB,CAAC,EAAEC,UAAUC,iBAAgB,MAAmC;AAC/F,QAAM,EAAEC,EAAC,IAAKC,eAAeC,KAAKC,EAAE;AAEpC,SACE,sBAAA,cAACC,SAASC,MAAI,MACZ,sBAAA,cAACD,SAASE,SAAO;IAACC,OAAOP,EAAE,kBAAkB;MAAEQ,IAAIN,KAAKC;IAAG,CAAA;KACzD,sBAAA,cAACC,SAASK,OAAK,MACb,sBAAA,cAACL,SAASM,WAAS;IAACH,OAAOP,EAAE,2BAAA;KAC3B,sBAAA,cAACW,MAAMC,QAAM;IACXC,SAASf,SAASgB;IAClBC,iBAAiB,CAACF,YAAYd,iBAAiB,CAACiB,OAAO;MAAE,GAAGA;MAAGF,oBAAoB,CAAC,CAACD;IAAQ,EAAA;;AAO3G;;;AC5BA,IAAA,4BAAeI;",
|
|
6
|
-
"names": ["React", "Input", "useTranslation", "Settings", "PresenterSettings", "settings", "onSettingsChange", "t", "useTranslation", "meta", "id", "Settings", "Root", "Section", "title", "ns", "Group", "ItemInput", "Input", "Switch", "checked", "presentCollections", "onCheckedChange", "s", "PresenterSettings"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/app-graph-builder/app-graph-builder.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Option from 'effect/Option';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { AppCapabilities, LayoutOperation } from '@dxos/app-toolkit';\nimport { Obj } from '@dxos/echo';\nimport { Collection } from '@dxos/echo';\nimport { Operation } from '@dxos/operation';\nimport { DeckCapabilities } from '@dxos/plugin-deck';\nimport { ATTENDABLE_PATH_SEPARATOR, DeckOperation } from '@dxos/plugin-deck/types';\nimport { GraphBuilder, type Node, NodeMatcher } from '@dxos/plugin-graph';\nimport { Markdown } from '@dxos/plugin-markdown/types';\n\nimport { meta } from '../../meta';\nimport { PresenterCapabilities, PresenterOperation } from '../../types';\n\n/** Match nodes that can be presented (Collection or Document). */\nconst whenPresentable = (node: Node.Node) =>\n Option.orElse(NodeMatcher.whenEchoType(Collection.Collection)(node), () =>\n NodeMatcher.whenEchoType(Markdown.Document)(node),\n );\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const capabilities = yield* Capability.Service;\n\n const extensions = yield* GraphBuilder.createExtension({\n id: `${meta.id}/root`,\n // TODO(wittjosiah): This is a hack to work around presenter previously relying on \"variant\". Remove.\n match: whenPresentable,\n connector: (object, get) => {\n const settingsAtom = capabilities.get(PresenterCapabilities.Settings);\n const settings = get(settingsAtom);\n const isPresentable = settings?.presentCollections\n ? Obj.instanceOf(Collection.Collection, object) || Obj.instanceOf(Markdown.Document, object)\n : Obj.instanceOf(Markdown.Document, object);\n if (!isPresentable) {\n return Effect.succeed([]);\n }\n const id = Obj.getDXN(object).toString();\n return Effect.succeed([\n {\n id: [id, 'presenter'].join(ATTENDABLE_PATH_SEPARATOR),\n data: { type: meta.id, object },\n type: meta.id,\n properties: {\n label: 'Presenter',\n icon: 'ph--presentation--regular',\n disposition: 'hidden',\n },\n },\n ]);\n },\n actions: (object, get) => {\n const settingsAtom = capabilities.get(PresenterCapabilities.Settings);\n const settings = get(settingsAtom);\n const isPresentable = settings?.presentCollections\n ? Obj.instanceOf(Collection.Collection, object) || Obj.instanceOf(Markdown.Document, object)\n : Obj.instanceOf(Markdown.Document, object);\n if (!isPresentable) {\n return Effect.succeed([]);\n }\n const dxn = Obj.getDXN(object);\n const id = dxn.toString();\n const { spaceId } = dxn.asEchoDXN()!;\n return Effect.succeed([\n {\n id: `${PresenterOperation.TogglePresentation.meta.key}/${id}`,\n // TODO(burdon): Allow function so can generate state when activated.\n // So can set explicit fullscreen state coordinated with current presenter state.\n data: Effect.fnUntraced(function* () {\n const deckState = yield* Capabilities.getAtomValue(DeckCapabilities.State);\n const deck = deckState.decks[deckState.activeDeck];\n const presenterId = [id, 'presenter'].join(ATTENDABLE_PATH_SEPARATOR);\n if (!deck?.fullscreen) {\n yield* Operation.invoke(DeckOperation.Adjust, {\n type: 'solo--fullscreen' as const,\n id: presenterId,\n });\n }\n yield* Operation.invoke(LayoutOperation.Open, {\n subject: [presenterId],\n workspace: spaceId,\n });\n }),\n properties: {\n label: ['toggle presentation label', { ns: meta.id }],\n icon: 'ph--presentation--regular',\n disposition: 'list-item',\n keyBinding: {\n macos: 'shift+meta+p',\n windows: 'shift+alt+p',\n },\n },\n },\n ]);\n },\n });\n\n return Capability.contributes(AppCapabilities.AppGraphBuilder, extensions);\n }),\n);\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["Effect", "Option", "Capabilities", "Capability", "AppCapabilities", "LayoutOperation", "Obj", "Collection", "Operation", "DeckCapabilities", "ATTENDABLE_PATH_SEPARATOR", "DeckOperation", "GraphBuilder", "NodeMatcher", "Markdown", "whenPresentable", "node", "orElse", "NodeMatcher", "whenEchoType", "Collection", "Markdown", "Document", "Capability", "makeModule", "fnUntraced", "capabilities", "Service", "extensions", "GraphBuilder", "createExtension", "id", "meta", "match", "connector", "object", "get", "settingsAtom", "PresenterCapabilities", "Settings", "settings", "isPresentable", "presentCollections", "Obj", "instanceOf", "succeed", "getDXN", "toString", "join", "ATTENDABLE_PATH_SEPARATOR", "data", "type", "properties", "label", "icon", "disposition", "actions", "dxn", "spaceId", "asEchoDXN", "PresenterOperation", "TogglePresentation", "key", "deckState", "Capabilities", "getAtomValue", "DeckCapabilities", "State", "deck", "decks", "activeDeck", "presenterId", "fullscreen", "Operation", "invoke", "DeckOperation", "Adjust", "LayoutOperation", "Open", "subject", "workspace", "ns", "keyBinding", "macos", "windows", "contributes", "AppCapabilities", "AppGraphBuilder"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/useExitPresenter.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { useAtomValue } from '@effect-atom/atom-react';\nimport { useCallback, useMemo } from 'react';\n\nimport { useCapability, useOperationInvoker } from '@dxos/app-framework/ui';\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { Obj } from '@dxos/echo';\nimport { DeckCapabilities } from '@dxos/plugin-deck';\nimport { DeckOperation } from '@dxos/plugin-deck/types';\n\nexport const useExitPresenter = (object: any) => {\n const { invokePromise } = useOperationInvoker();\n const stateAtom = useCapability(DeckCapabilities.State);\n const state = useAtomValue(stateAtom);\n\n // Compute deck from decks[activeDeck] since the getter doesn't survive spread operations.\n const deck = useMemo(() => state.decks[state.activeDeck], [state.decks, state.activeDeck]);\n\n return useCallback(() => {\n const objectId = Obj.getDXN(object).toString();\n if (deck?.fullscreen) {\n void invokePromise(DeckOperation.Adjust, {\n type: 'solo--fullscreen',\n id: objectId,\n });\n }\n return invokePromise(LayoutOperation.Open, {\n subject: [objectId],\n workspace: Obj.getDatabase(object)?.spaceId,\n });\n }, [invokePromise, object, deck]);\n};\n"],
|
|
5
|
-
"mappings": ";AAIA,SAASA,oBAAoB;AAC7B,SAASC,aAAaC,eAAe;AAErC,SAASC,eAAeC,2BAA2B;AACnD,SAASC,uBAAuB;AAChC,SAASC,WAAW;AACpB,SAASC,wBAAwB;AACjC,SAASC,qBAAqB;AAEvB,IAAMC,mBAAmB,CAACC,WAAAA;AAC/B,QAAM,EAAEC,cAAa,IAAKC,oBAAAA;AAC1B,QAAMC,YAAYC,cAAcC,iBAAiBC,KAAK;AACtD,QAAMC,QAAQC,aAAaL,SAAAA;AAG3B,QAAMM,OAAOC,QAAQ,MAAMH,MAAMI,MAAMJ,MAAMK,UAAU,GAAG;IAACL,MAAMI;IAAOJ,MAAMK;GAAW;AAEzF,SAAOC,YAAY,MAAA;AACjB,UAAMC,WAAWC,IAAIC,OAAOhB,MAAAA,EAAQiB,SAAQ;AAC5C,QAAIR,MAAMS,YAAY;AACpB,WAAKjB,cAAckB,cAAcC,QAAQ;QACvCC,MAAM;QACNC,IAAIR;MACN,CAAA;IACF;AACA,WAAOb,cAAcsB,gBAAgBC,MAAM;MACzCC,SAAS;QAACX;;MACVY,WAAWX,IAAIY,YAAY3B,MAAAA,GAAS4B;IACtC,CAAA;EACF,GAAG;IAAC3B;IAAeD;IAAQS;GAAK;AAClC;",
|
|
6
|
-
"names": ["useAtomValue", "useCallback", "useMemo", "useCapability", "useOperationInvoker", "LayoutOperation", "Obj", "DeckCapabilities", "DeckOperation", "useExitPresenter", "object", "invokePromise", "useOperationInvoker", "stateAtom", "useCapability", "DeckCapabilities", "State", "state", "useAtomValue", "deck", "useMemo", "decks", "activeDeck", "useCallback", "objectId", "Obj", "getDXN", "toString", "fullscreen", "DeckOperation", "Adjust", "type", "id", "LayoutOperation", "Open", "subject", "workspace", "getDatabase", "spaceId"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/Markdown/Container.tsx", "../../../src/components/Markdown/Slide.tsx", "raw-loader:/__w/dxos/dxos/packages/plugins/plugin-presenter/src/components/Markdown/styles.css?raw", "../../../src/components/Markdown/theme.ts", "../../../src/components/Presenter/Layout.tsx", "../../../src/components/Presenter/Pager.tsx", "../../../src/components/RevealPlayer/RevealPlayer.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type PropsWithChildren, useState } from 'react';\nimport { useResizeDetector } from 'react-resize-detector';\n\nimport { type ThemedClassName } from '@dxos/react-ui';\nimport { mx } from '@dxos/ui-theme';\n\nexport type ContainerProps = ThemedClassName<PropsWithChildren<{}>>;\n\n/**\n * Scaled markdown container.\n */\nexport const Container = ({ children, classNames }: ContainerProps) => {\n const [props, setProps] = useState({});\n const {\n ref: containerRef,\n width,\n height,\n } = useResizeDetector({\n refreshMode: 'debounce',\n refreshRate: 200,\n refreshOptions: {\n leading: true,\n },\n onResize: ({ width, height }) => {\n if (width && height) {\n setProps(createLayoutProps({ width, height }));\n }\n },\n });\n\n // TODO(burdon): Reconcile highlight colors with markdown editor.\n // https://www.npmjs.com/package/react-markdown\n return (\n <div ref={containerRef} className={mx('flex grow relative overflow-hidden bg-attention-surface', classNames)}>\n <div className={mx('flex w-full h-full overflow-hidden absolute')} style={props}>\n {width && height && children}\n </div>\n </div>\n );\n};\n\n/**\n * Compute CSS properties to transform DIV to be full screen.\n *\n * Display resolutions:\n * window.screen.{availWidth, availHeight}\n * 5K Studio 16.2-inch Macbook Pro\n * Max 5120 x 2880 3456 x 2234\n * Default 2560 x 1440 1728 x 1117 (Actual height 1080 - 37 pixel notch)\n * Aspect 1.77 (16/9) 1.54\n */\nconst createLayoutProps = ({ width, height }: { width: number; height: number }) => {\n // Config.\n const aspectRatio = 16 / 9;\n const nominalWidth = 2560;\n const nominalHeight = nominalWidth / aspectRatio;\n\n // NOTE: Hack to detect full height on Macbook Pro due to notch.\n // const macIntelNotch = 1117 - 1080;\n // const fullscreen =\n // height === screen.availHeight ||\n // (window.navigator.platform === 'MacIntel' && height === screen.availHeight - macIntelNotch);\n\n // If not fullscreen then make scale slightly smaller so there's a natural border.\n // const scaleFactor = fullscreen ? 1 : 0.95;\n\n // Compute scaling factor required.\n const scale = Math.min(width / nominalWidth, height / nominalHeight);\n\n return {\n left: (width - nominalWidth) / 2,\n top: (height - nominalHeight) / 2,\n width: nominalWidth,\n height: nominalHeight,\n transform: `scale(${scale})`,\n };\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { h } from 'hastscript';\nimport React from 'react';\nimport ReactMarkdown, { type Options as ReactMarkdownOptions } from 'react-markdown';\nimport rehypeAddClasses from 'rehype-add-classes';\nimport rehypeHighlight from 'rehype-highlight';\nimport remarkFrontmatter from 'remark-frontmatter';\nimport remarkParseFrontmatter from 'remark-parse-frontmatter';\n\nimport 'highlight.js/styles/github.css';\n\nimport styles from './styles.css?raw';\nimport { theme } from './theme';\n\nexport type SlideProps = {\n content?: string;\n classes?: Record<string, string>;\n};\n\nexport const Slide = ({ content = '', classes = theme.nodes }: SlideProps) => {\n // TODO(thure): `rehype-highlight` ends up using `github.css` from `highlight.js`, but this does not appear to be\n // configurable. Find a way to remove the literal stylesheet here.\n return (\n <>\n <style>{styles}</style>\n <ReactMarkdown\n components={components}\n // Markdown to HTML.\n remarkPlugins={[[remarkFrontmatter, 'yaml'], remarkParseFrontmatter as any]}\n // HTML processing.\n rehypePlugins={[[rehypeAddClasses, classes], rehypeHighlight as any, slideLayout]}\n >\n {content}\n </ReactMarkdown>\n </>\n );\n};\n\n/**\n * Rehype plugin to format DOM based on frontmatter.\n * https://github.com/unifiedjs/unified#plugin\n * TODO(burdon): See tools/presenter: remarkPluginLayout\n * E.g., layout image from front-matter.\n */\nconst slideLayout =\n (_options = {}) =>\n (tree: any, file: any) => {\n const {\n data: { frontmatter = {} },\n } = file;\n\n let content = tree.children;\n const { layout, image } = frontmatter;\n if (image) {\n const img = h('div', {\n class: 'flex grow shrink-0 bg-cover bg-center bg-no-repeat',\n style: {\n backgroundImage: `url(${image})`,\n },\n });\n\n switch (layout) {\n case 'fullscreen': {\n content = img;\n break;\n }\n\n case 'columns': {\n content = h('div', { class: 'flex grow grid grid-cols-2' }, [\n h('div', { class: theme.padding }, [content]),\n img,\n ]);\n break;\n }\n\n case 'rows': {\n content = h('div', { class: 'flex grow flex-col' }, [\n h('div', { class: theme.padding }, [content]),\n h('div', { class: ['flex grow pt-0', theme.padding] }, [img]),\n ]);\n break;\n }\n }\n } else {\n content = h('div', { class: ['flex grow flex-col', theme.padding] }, [content]);\n }\n\n const root = h('div', { class: ['flex flex-col grow', theme.root] }, [content]);\n tree.children = [root];\n };\n\nconst ImageWrapper = ({ node: _, ...props }: { node: any }) => {\n const { alt = '', src } = props as { alt: string; src: string };\n return <img alt={alt} src={src} />;\n};\n\nconst components: ReactMarkdownOptions['components'] = {\n img: ({ node, ...props }) => <ImageWrapper node={node} {...props} />,\n};\n", "/*!\n Theme: GitHub Dark\n Description: Dark theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n Outdated base version: https://github.com/primer/github-syntax-dark\n Current colors taken from GitHub's CSS\n*/\n/* TODO(burdon): Use tokens. */\n.dark pre code.hljs {\n display: block;\n overflow-x: auto;\n padding: 1em;\n}\n.dark code.hljs {\n padding: 3px 5px;\n}\n.dark .hljs {\n color: #c9d1d9;\n background: #0d1117;\n}\n.dark .hljs-doctag,\n.dark .hljs-keyword,\n.dark .hljs-meta .hljs-keyword,\n.dark .hljs-template-tag,\n.dark .hljs-template-variable,\n.dark .hljs-type,\n.dark .hljs-variable.language_ {\n color: #ff7b72;\n}\n.dark .hljs-title,\n.dark .hljs-title.class_,\n.dark .hljs-title.class_.inherited__,\n.dark .hljs-title.function_ {\n color: #d2a8ff;\n}\n.dark .hljs-attr,\n.dark .hljs-attribute,\n.dark .hljs-literal,\n.dark .hljs-meta,\n.dark .hljs-number,\n.dark .hljs-operator,\n.dark .hljs-variable,\n.dark .hljs-selector-attr,\n.dark .hljs-selector-class,\n.dark .hljs-selector-id {\n color: #79c0ff;\n}\n.dark .hljs-regexp,\n.dark .hljs-string,\n.dark .hljs-meta .hljs-string {\n color: #a5d6ff;\n}\n.dark .hljs-built_in,\n.dark .hljs-symbol {\n color: #ffa657;\n}\n.dark .hljs-comment,\n.dark .hljs-code,\n.dark .hljs-formula {\n color: #8b949e;\n}\n.dark .hljs-name,\n.dark .hljs-quote,\n.dark .hljs-selector-tag,\n.dark .hljs-selector-pseudo {\n color: #7ee787;\n}\n.dark .hljs-subst {\n color: #c9d1d9;\n}\n.dark .hljs-section {\n color: #1f6feb;\n font-weight: bold;\n}\n.dark .hljs-bullet {\n color: #f2cc60;\n}\n.dark .hljs-emphasis {\n color: #c9d1d9;\n font-style: italic;\n}\n.dark .hljs-strong {\n color: #c9d1d9;\n font-weight: bold;\n}\n.dark .hljs-addition {\n color: #aff5b4;\n background-color: #033a16;\n}\n.dark .hljs-deletion {\n color: #ffdcd7;\n background-color: #67060c;\n}\n.dark .hljs-char.escape_,\n.dark .hljs-link,\n.dark .hljs-params,\n.dark .hljs-property,\n.dark .hljs-punctuation,\n.dark .hljs-tag {\n /* purposely ignored */\n all: unset;\n}\n", "//\n// Copyright 2023 DXOS.org\n//\n\n// TODO(burdon): Create theme type and picker.\n\nexport const theme = {\n root: 'bg-attention-surface leading-relaxed font-mono',\n\n padding: 'px-40 py-16 gap-8',\n\n nodes: {\n h1: 'text-[80px] text-accent-text',\n h2: 'text-[60px] text-accent-text',\n h3: 'text-[48px] text-accent-text',\n\n p: 'text-[48px]',\n\n ul: 'my-[16px] ml-12 leading-relaxed list-disc',\n ol: 'my-[16px] ml-24 leading-relaxed list-decimal',\n li: 'pl-6 text-[48px]',\n\n pre: 'w-full mx-0 my-[32px] p-4 bg-input-surface',\n code: 'p-0 text-[40px]',\n },\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type PropsWithChildren, type ReactNode } from 'react';\n\nimport { type ThemedClassName } from '@dxos/react-ui';\nimport { mx } from '@dxos/ui-theme';\n\nexport type LayoutProps = ThemedClassName<\n PropsWithChildren<{\n className?: string;\n topLeft?: ReactNode;\n topRight?: ReactNode;\n bottomLeft?: ReactNode;\n bottomRight?: ReactNode;\n }>\n>;\n\nexport const Layout = ({ children, classNames, topLeft, topRight, bottomLeft, bottomRight }: LayoutProps) => {\n return (\n <div className={mx('flex grow relative overflow-hidden bg-attention-surface', classNames)}>\n <div className={mx('flex flex-col grow overflow-hidden')}>{children}</div>\n\n <div className='z-[200]'>\n <div className='absolute top-4 left-4'>{topLeft}</div>\n <div className='absolute top-4 right-4'>{topRight}</div>\n <div className='absolute bottom-4 left-4'>{bottomLeft}</div>\n <div className='absolute bottom-4 right-4'>{bottomRight}</div>\n </div>\n </div>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { useEffect } from 'react';\n\nimport { IconButton, useControlledState } from '@dxos/react-ui';\n\nexport type PagerProps = {\n index?: number;\n count?: number;\n keys?: boolean; // TODO(burdon): Rename.\n onChange?: (index: number) => void;\n onExit?: () => void;\n};\n\nexport const Pager = ({ index: indexProp = 0, count = 0, keys, onChange, onExit }: PagerProps) => {\n const [index, setIndex] = useControlledState(indexProp);\n useEffect(() => {\n onChange?.(index);\n }, [index]);\n\n const handleChangeIndex = (dir: number) => {\n setIndex((index) => {\n const next = index + dir;\n return next >= 0 && next < count ? next : index;\n });\n };\n\n // TODO(burdon): Standardize via system key binding.\n useEffect(() => {\n if (!keys) {\n return;\n }\n\n const keydownHandler = (event: KeyboardEvent) => {\n switch (event.key) {\n case 'Escape': {\n onExit?.();\n break;\n }\n case 'ArrowLeft': {\n if (event.shiftKey) {\n onChange?.(0);\n } else {\n handleChangeIndex(-1);\n }\n break;\n }\n case 'ArrowRight': {\n if (event.shiftKey) {\n onChange?.(count - 1);\n } else {\n handleChangeIndex(1);\n }\n break;\n }\n case 'ArrowUp': {\n onChange?.(0);\n break;\n }\n case 'ArrowDown': {\n onChange?.(count - 1);\n break;\n }\n }\n };\n\n window.addEventListener('keydown', keydownHandler);\n return () => window.removeEventListener('keydown', keydownHandler);\n }, [keys, count]);\n\n if (index === undefined || !count) {\n return null;\n }\n\n return (\n <div className='flex items-center text-neutral-500'>\n <IconButton\n icon='ph--caret-double-left--regular'\n size={6}\n label='Jump to first'\n iconOnly\n noTooltip\n variant='ghost'\n classNames='p-0'\n onClick={() => onChange?.(0)}\n />\n <IconButton\n icon='ph--caret-left--regular'\n size={6}\n label='Previous'\n iconOnly\n noTooltip\n variant='ghost'\n classNames='p-0'\n onClick={() => handleChangeIndex(-1)}\n />\n <IconButton\n icon='ph--caret-right--regular'\n size={6}\n label='Next'\n iconOnly\n noTooltip\n variant='ghost'\n classNames='p-0'\n onClick={() => handleChangeIndex(1)}\n />\n <IconButton\n icon='ph--caret-double-right--regular'\n size={6}\n label='Jump to last'\n iconOnly\n noTooltip\n variant='ghost'\n classNames='p-0'\n onClick={() => onChange?.(count - 1)}\n />\n </div>\n );\n};\n\nexport type PageNumberProps = {\n index?: number;\n count?: number;\n};\n\nexport const PageNumber = ({ index = 0, count = 1 }: PageNumberProps) => {\n if (index === undefined || !count) {\n return null;\n }\n\n return (\n <div className='flex items-center text-neutral-500 text-2xl'>\n <div>\n {index + 1} / {count}\n </div>\n </div>\n );\n};\n\nexport const StartButton = ({ running, onClick }: { running?: boolean; onClick?: (start: boolean) => void }) => {\n return (\n <IconButton\n icon={running ? 'ph--x--regular' : 'ph--play--regular'}\n size={6}\n label={running ? 'Stop' : 'Play'}\n iconOnly\n noTooltip\n variant='ghost'\n classNames='p-0'\n onClick={() => onClick?.(!running)}\n />\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport 'reveal.js/dist/reveal.css';\n\nimport 'reveal.js/dist/theme/black.css';\n\n// https://github.com/highlightjs/highlight.js/tree/main/src/styles\n// import 'highlight.js/styles/github-dark.css';\nimport 'highlight.js/styles/tokyo-night-dark.css';\n\nimport hljs from 'highlight.js';\nimport typescript from 'highlight.js/lib/languages/typescript';\nimport React, { useRef } from 'react';\nimport Reveal from 'reveal.js';\nimport RevealHighlight from 'reveal.js/plugin/highlight/highlight';\nimport RevealMarkdown from 'reveal.js/plugin/markdown/plugin.js';\n\nimport { type ThemedClassName, useAsyncEffect } from '@dxos/react-ui';\nimport { mx } from '@dxos/ui-theme';\n\nconst styles = `\n<style type=\"text/css\">\n .reveal h1 {\n font-weight: 100;\n font-size: 60px;\n opacity: 0.5;\n }\n .reveal h2 {\n font-weight: 100;\n padding-top: 60px;\n padding-left: 40px;\n font-size: 48px;\n opacity: 0.3;\n }\n .reveal h1, h2, p {\n font-family: \"Raleway\", sans-serif;\n text-align: left;\n font-weight: 200;\n }\n .reveal ul {\n font-family: \"Raleway\", sans-serif;\n display: block;\n list-style: \"- \";\n }\n .reveal blockquote p {\n text-align: center;\n font-weight: 100;\n padding: 32px;\n }\n .reveal pre {\n margin-left: 0;\n }\n .reveal code {\n font-size: 20px;\n background: #111111;\n color: #eeeeee;\n max-height: unset !important;\n }\n</style>\n`;\n\nexport type RevealProps = ThemedClassName<{\n content: string;\n slide?: number;\n fullscreen?: boolean;\n onExit?: () => void;\n}>;\n\nexport const RevealPlayer = ({ classNames, content, slide, fullscreen = true, onExit }: RevealProps) => {\n const deckDivRef = useRef<HTMLDivElement>(null);\n const deckRef = useRef<Reveal.Api | null>(null);\n\n useAsyncEffect(async () => {\n if (deckRef.current) {\n return;\n }\n\n // Required for syntax highlighting.\n hljs.registerLanguage('typescript', typescript);\n\n // https://revealjs.com/react\n // https://revealjs.com/config\n // https://github.com/hakimel/reveal.js\n // TODO(burdon): Fragments and scroll view steps 2 at a time (safe mode?)\n deckRef.current = new Reveal(deckDivRef.current!, {\n // view: 'scroll',\n progress: false,\n transition: 'none',\n slideNumber: false,\n embedded: true,\n\n // Disable autoplay to prevent errors in headless environments (e.g., CI).\n autoPlayMedia: false,\n\n // TODO(burdon): Speaker view requires server to serve popout window.\n // https://revealjs.com/speaker-view\n showNotes: false,\n\n // width: 1600,\n // height: 900,\n margin: 0.1,\n // center: false,\n // minScale: 0.1,\n // maxScale: 1.4,\n\n // https://revealjs.com/markdown\n // TODO(burdon): Requires server to serve popout window.\n plugins: [RevealMarkdown, RevealHighlight],\n\n // See https://marked.js.org/using_advanced#options\n markdown: {\n gfm: true,\n smartypants: true,\n highlight: (code, language) => {\n if (language) {\n return hljs.highlight(code, { language }).value;\n }\n\n return hljs.highlightAuto(code).value;\n },\n },\n });\n\n await deckRef.current.initialize();\n\n if (slide !== undefined) {\n deckRef.current.slide(slide < 0 ? deckRef.current?.getTotalSlides() + slide : slide - 1);\n }\n\n deckRef.current.addKeyBinding({ keyCode: 27, key: 'Escape', description: 'Exit full screen' }, () => {\n onExit?.();\n });\n\n return () => {\n try {\n if (deckRef.current) {\n deckRef.current.destroy();\n deckRef.current = null;\n }\n } catch {\n // Ignore.\n }\n };\n });\n\n // TOOD(burdon): Trap cursor keys (otherwise tabster grabs focus.)\n return (\n <div\n className={mx(\n 'grid place-items-center w-full h-full overflow-hidden bg-black',\n fullscreen && 'absolute inset-0',\n classNames,\n )}\n >\n <div className='relative aspect-video w-full h-full h-auto max-h-full overflow-hidden'>\n <div ref={deckDivRef} className='absolute inset-0 reveal'>\n {/* NOTE: Must be in head. */}\n <style>\n <link rel='preconnect' href='https://fonts.googleapis.com' />\n <link rel='preconnect' href='https://fonts.gstatic.com' {...{ crossOrigin: '' }} />\n <link\n rel='stylesheet'\n href='https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&display=swap'\n />\n </style>\n <div className='slides'>\n <div className='text-center!' />\n <section {...{ 'data-markdown': [] }}>\n <textarea {...{ 'data-template': true }} defaultValue={[styles, content].join('\\n')}></textarea>\n </section>\n </div>\n </div>\n </div>\n </div>\n );\n};\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["React", "useState", "useResizeDetector", "mx", "Container", "children", "classNames", "props", "setProps", "useState", "ref", "containerRef", "width", "height", "useResizeDetector", "refreshMode", "refreshRate", "refreshOptions", "leading", "onResize", "createLayoutProps", "div", "className", "mx", "style", "aspectRatio", "nominalWidth", "nominalHeight", "scale", "Math", "min", "left", "top", "transform", "h", "React", "ReactMarkdown", "rehypeAddClasses", "rehypeHighlight", "remarkFrontmatter", "remarkParseFrontmatter", "theme", "root", "padding", "nodes", "h1", "h2", "h3", "p", "ul", "ol", "li", "pre", "code", "Slide", "content", "classes", "theme", "nodes", "React", "style", "styles", "ReactMarkdown", "components", "remarkPlugins", "remarkFrontmatter", "remarkParseFrontmatter", "rehypePlugins", "rehypeAddClasses", "rehypeHighlight", "slideLayout", "_options", "tree", "file", "data", "frontmatter", "children", "layout", "image", "img", "h", "class", "backgroundImage", "padding", "root", "ImageWrapper", "node", "_", "props", "alt", "src", "React", "mx", "Layout", "children", "classNames", "topLeft", "topRight", "bottomLeft", "bottomRight", "React", "div", "className", "mx", "React", "useEffect", "IconButton", "useControlledState", "Pager", "index", "indexProp", "count", "keys", "onChange", "onExit", "setIndex", "useControlledState", "useEffect", "handleChangeIndex", "dir", "next", "keydownHandler", "event", "key", "shiftKey", "window", "addEventListener", "removeEventListener", "undefined", "React", "div", "className", "IconButton", "icon", "size", "label", "iconOnly", "noTooltip", "variant", "classNames", "onClick", "PageNumber", "StartButton", "running", "hljs", "typescript", "React", "useRef", "Reveal", "RevealHighlight", "RevealMarkdown", "useAsyncEffect", "mx", "styles", "RevealPlayer", "classNames", "content", "slide", "fullscreen", "onExit", "deckDivRef", "useRef", "deckRef", "useAsyncEffect", "current", "hljs", "registerLanguage", "typescript", "Reveal", "progress", "transition", "slideNumber", "embedded", "autoPlayMedia", "showNotes", "margin", "plugins", "RevealMarkdown", "RevealHighlight", "markdown", "gfm", "smartypants", "highlight", "code", "language", "value", "highlightAuto", "initialize", "undefined", "getTotalSlides", "addKeyBinding", "keyCode", "key", "description", "destroy", "React", "div", "className", "mx", "ref", "style", "link", "rel", "href", "crossOrigin", "section", "textarea", "defaultValue", "join"]
|
|
7
|
-
}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
meta
|
|
3
|
-
} from "./chunk-VQVZVXPJ.mjs";
|
|
4
|
-
|
|
5
|
-
// src/types.ts
|
|
6
|
-
import * as Schema from "effect/Schema";
|
|
7
|
-
import { createContext } from "react";
|
|
8
|
-
import { Capability } from "@dxos/app-framework";
|
|
9
|
-
import { Collection } from "@dxos/echo";
|
|
10
|
-
import { Operation } from "@dxos/operation";
|
|
11
|
-
import { Markdown } from "@dxos/plugin-markdown/types";
|
|
12
|
-
var PRESENTER_OPERATION = `${meta.id}/operation`;
|
|
13
|
-
(function(PresenterOperation2) {
|
|
14
|
-
PresenterOperation2.TogglePresentation = Operation.make({
|
|
15
|
-
meta: {
|
|
16
|
-
key: `${PRESENTER_OPERATION}/toggle-presentation`,
|
|
17
|
-
name: "Toggle Presentation"
|
|
18
|
-
},
|
|
19
|
-
schema: {
|
|
20
|
-
input: Schema.Struct({
|
|
21
|
-
object: Schema.Union(Markdown.Document, Collection.Collection),
|
|
22
|
-
state: Schema.optional(Schema.Boolean)
|
|
23
|
-
}),
|
|
24
|
-
output: Schema.Void
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
})(PresenterOperation || (PresenterOperation = {}));
|
|
28
|
-
var PresenterContext = createContext({
|
|
29
|
-
running: false,
|
|
30
|
-
start: () => {
|
|
31
|
-
},
|
|
32
|
-
stop: () => {
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
var PresenterSettingsSchema = Schema.mutable(Schema.Struct({
|
|
36
|
-
presentCollections: Schema.optional(Schema.Boolean)
|
|
37
|
-
}));
|
|
38
|
-
(function(PresenterCapabilities2) {
|
|
39
|
-
PresenterCapabilities2.Settings = Capability.make(`${meta.id}/capability/settings`);
|
|
40
|
-
})(PresenterCapabilities || (PresenterCapabilities = {}));
|
|
41
|
-
var PresenterOperation;
|
|
42
|
-
var PresenterCapabilities;
|
|
43
|
-
|
|
44
|
-
export {
|
|
45
|
-
PresenterContext,
|
|
46
|
-
PresenterSettingsSchema,
|
|
47
|
-
PresenterOperation,
|
|
48
|
-
PresenterCapabilities
|
|
49
|
-
};
|
|
50
|
-
//# sourceMappingURL=chunk-PSOOAW44.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/types.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Atom } from '@effect-atom/atom-react';\nimport * as Schema from 'effect/Schema';\nimport { type Context, createContext } from 'react';\n\nimport { Capability } from '@dxos/app-framework';\nimport { Collection } from '@dxos/echo';\nimport { Operation } from '@dxos/operation';\nimport { Markdown } from '@dxos/plugin-markdown/types';\n\nimport { meta } from './meta';\n\nconst PRESENTER_OPERATION = `${meta.id}/operation`;\n\n// TODO(wittjosiah): This appears to be unused.\nexport namespace PresenterOperation {\n export const TogglePresentation = Operation.make({\n meta: { key: `${PRESENTER_OPERATION}/toggle-presentation`, name: 'Toggle Presentation' },\n schema: {\n input: Schema.Struct({\n object: Schema.Union(Markdown.Document, Collection.Collection),\n state: Schema.optional(Schema.Boolean),\n }),\n output: Schema.Void,\n },\n });\n}\n\nexport type PresenterContextType = {\n running: boolean;\n start: () => void;\n stop: () => void;\n};\n\nexport const PresenterContext: Context<PresenterContextType> = createContext<PresenterContextType>({\n running: false,\n start: () => {},\n stop: () => {},\n});\n\nexport const PresenterSettingsSchema = Schema.mutable(\n Schema.Struct({\n presentCollections: Schema.optional(Schema.Boolean),\n }),\n);\n\nexport type PresenterSettingsProps = Schema.Schema.Type<typeof PresenterSettingsSchema>;\n\nexport namespace PresenterCapabilities {\n export const Settings = Capability.make<Atom.Writable<PresenterSettingsProps>>(`${meta.id}/capability/settings`);\n}\n"],
|
|
5
|
-
"mappings": ";;;;;AAKA,YAAYA,YAAY;AACxB,SAAuBC,qBAAqB;AAE5C,SAASC,kBAAkB;AAC3B,SAASC,kBAAkB;AAC3B,SAASC,iBAAiB;AAC1B,SAASC,gBAAgB;AAIzB,IAAMC,sBAAsB,GAAGC,KAAKC,EAAE;UAGrBC,qBAAAA;sBACFC,qBAAqBC,UAAUC,KAAK;IAC/CL,MAAM;MAAEM,KAAK,GAAGP,mBAAAA;MAA2CQ,MAAM;IAAsB;IACvFC,QAAQ;MACNC,OAAcC,cAAO;QACnBC,QAAeC,aAAMC,SAASC,UAAUC,WAAWA,UAAU;QAC7DC,OAAcC,gBAAgBC,cAAO;MACvC,CAAA;MACAC,QAAeC;IACjB;EACF,CAAA;AACF,GAXiBlB,uBAAAA,qBAAAA,CAAAA,EAAAA;AAmBV,IAAMmB,mBAAkDC,cAAoC;EACjGC,SAAS;EACTC,OAAO,MAAA;EAAO;EACdC,MAAM,MAAA;EAAO;AACf,CAAA;AAEO,IAAMC,0BAAiCC,eACrCjB,cAAO;EACZkB,oBAA2BX,gBAAgBC,cAAO;AACpD,CAAA,CAAA;UAKeW,wBAAAA;yBACFC,WAAWC,WAAW1B,KAA4C,GAAGL,KAAKC,EAAE,sBAAsB;AACjH,GAFiB4B,0BAAAA,wBAAAA,CAAAA,EAAAA;;;",
|
|
6
|
-
"names": ["Schema", "createContext", "Capability", "Collection", "Operation", "Markdown", "PRESENTER_OPERATION", "meta", "id", "PresenterOperation", "TogglePresentation", "Operation", "make", "key", "name", "schema", "input", "Struct", "object", "Union", "Markdown", "Document", "Collection", "state", "optional", "Boolean", "output", "Void", "PresenterContext", "createContext", "running", "start", "stop", "PresenterSettingsSchema", "mutable", "presentCollections", "PresenterCapabilities", "Settings", "Capability"]
|
|
7
|
-
}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
Container,
|
|
3
|
-
Layout,
|
|
4
|
-
PageNumber,
|
|
5
|
-
Pager,
|
|
6
|
-
RevealPlayer,
|
|
7
|
-
Slide,
|
|
8
|
-
StartButton
|
|
9
|
-
} from "./chunk-BHTOR7TG.mjs";
|
|
10
|
-
import {
|
|
11
|
-
meta
|
|
12
|
-
} from "./chunk-VQVZVXPJ.mjs";
|
|
13
|
-
|
|
14
|
-
// src/PresenterPlugin.tsx
|
|
15
|
-
import { Plugin } from "@dxos/app-framework";
|
|
16
|
-
import { AppPlugin } from "@dxos/app-toolkit";
|
|
17
|
-
|
|
18
|
-
// src/capabilities/app-graph-builder/index.ts
|
|
19
|
-
import { Capability } from "@dxos/app-framework";
|
|
20
|
-
var AppGraphBuilder = Capability.lazy("AppGraphBuilder", () => import("./app-graph-builder-LNUGLW3H.mjs"));
|
|
21
|
-
|
|
22
|
-
// src/capabilities/react-surface/index.ts
|
|
23
|
-
import { Capability as Capability2 } from "@dxos/app-framework";
|
|
24
|
-
var ReactSurface = Capability2.lazy("ReactSurface", () => import("./react-surface-UCM2KRSP.mjs"));
|
|
25
|
-
|
|
26
|
-
// src/capabilities/settings/index.ts
|
|
27
|
-
import { Capability as Capability3 } from "@dxos/app-framework";
|
|
28
|
-
var PresenterSettings = Capability3.lazy("PresenterSettings", () => import("./settings-GIQOCH6O.mjs"));
|
|
29
|
-
|
|
30
|
-
// src/translations.ts
|
|
31
|
-
var translations = [
|
|
32
|
-
{
|
|
33
|
-
"en-US": {
|
|
34
|
-
[meta.id]: {
|
|
35
|
-
"plugin name": "Presenter",
|
|
36
|
-
"settings title": "Presenter settings",
|
|
37
|
-
"toggle presentation label": "Present",
|
|
38
|
-
"present collections label": "Present collections (experimental)"
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
];
|
|
43
|
-
|
|
44
|
-
// src/PresenterPlugin.tsx
|
|
45
|
-
var PresenterPlugin = Plugin.define(meta).pipe(AppPlugin.addAppGraphModule({
|
|
46
|
-
activate: AppGraphBuilder
|
|
47
|
-
}), AppPlugin.addSettingsModule({
|
|
48
|
-
activate: PresenterSettings
|
|
49
|
-
}), AppPlugin.addSurfaceModule({
|
|
50
|
-
activate: ReactSurface
|
|
51
|
-
}), AppPlugin.addTranslationsModule({
|
|
52
|
-
translations
|
|
53
|
-
}), Plugin.make);
|
|
54
|
-
export {
|
|
55
|
-
Container,
|
|
56
|
-
Layout,
|
|
57
|
-
PageNumber,
|
|
58
|
-
Pager,
|
|
59
|
-
PresenterPlugin,
|
|
60
|
-
RevealPlayer,
|
|
61
|
-
Slide,
|
|
62
|
-
StartButton,
|
|
63
|
-
meta
|
|
64
|
-
};
|
|
65
|
-
//# sourceMappingURL=index.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/PresenterPlugin.tsx", "../../../src/capabilities/app-graph-builder/index.ts", "../../../src/capabilities/react-surface/index.ts", "../../../src/capabilities/settings/index.ts", "../../../src/translations.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Plugin } from '@dxos/app-framework';\nimport { AppPlugin } from '@dxos/app-toolkit';\n\nimport { AppGraphBuilder, PresenterSettings, ReactSurface } from './capabilities';\nimport { meta } from './meta';\nimport { translations } from './translations';\n\n// TODO(burdon): Only scale markdown content.\n// TODO(burdon): Map stack content; Slide content type (e.g., markdown, sketch, IPFS image, table, etc.)\n\nexport const PresenterPlugin = Plugin.define(meta).pipe(\n AppPlugin.addAppGraphModule({ activate: AppGraphBuilder }),\n AppPlugin.addSettingsModule({ activate: PresenterSettings }),\n AppPlugin.addSurfaceModule({ activate: ReactSurface }),\n AppPlugin.addTranslationsModule({ translations }),\n Plugin.make,\n);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n\nexport const AppGraphBuilder = Capability.lazy('AppGraphBuilder', () => import('./app-graph-builder'));\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n\nexport const ReactSurface = Capability.lazy('ReactSurface', () => import('./react-surface'));\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n\nexport const PresenterSettings = Capability.lazy('PresenterSettings', () => import('./settings'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from './meta';\n\nexport const translations = [\n {\n 'en-US': {\n [meta.id]: {\n 'plugin name': 'Presenter',\n 'settings title': 'Presenter settings',\n 'toggle presentation label': 'Present',\n 'present collections label': 'Present collections (experimental)',\n },\n },\n },\n] as const satisfies Resource[];\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;AAIA,SAASA,cAAc;AACvB,SAASC,iBAAiB;;;ACD1B,SAASC,kBAAkB;AAEpB,IAAMC,kBAAkBC,WAAWC,KAAK,mBAAmB,MAAM,OAAO,kCAAA,CAAA;;;ACF/E,SAASC,cAAAA,mBAAkB;AAEpB,IAAMC,eAAeC,YAAWC,KAAK,gBAAgB,MAAM,OAAO,8BAAA,CAAA;;;ACFzE,SAASC,cAAAA,mBAAkB;AAEpB,IAAMC,oBAAoBC,YAAWC,KAAK,qBAAqB,MAAM,OAAO,yBAAA,CAAA;;;ACE5E,IAAMC,eAAe;EAC1B;IACE,SAAS;MACP,CAACC,KAAKC,EAAE,GAAG;QACT,eAAe;QACf,kBAAkB;QAClB,6BAA6B;QAC7B,6BAA6B;MAC/B;IACF;EACF;;;;AJJK,IAAMC,kBAAkBC,OAAOC,OAAOC,IAAAA,EAAMC,KACjDC,UAAUC,kBAAkB;EAAEC,UAAUC;AAAgB,CAAA,GACxDH,UAAUI,kBAAkB;EAAEF,UAAUG;AAAkB,CAAA,GAC1DL,UAAUM,iBAAiB;EAAEJ,UAAUK;AAAa,CAAA,GACpDP,UAAUQ,sBAAsB;EAAEC;AAAa,CAAA,GAC/Cb,OAAOc,IAAI;",
|
|
6
|
-
"names": ["Plugin", "AppPlugin", "Capability", "AppGraphBuilder", "Capability", "lazy", "Capability", "ReactSurface", "Capability", "lazy", "Capability", "PresenterSettings", "Capability", "lazy", "translations", "meta", "id", "PresenterPlugin", "Plugin", "define", "meta", "pipe", "AppPlugin", "addAppGraphModule", "activate", "AppGraphBuilder", "addSettingsModule", "PresenterSettings", "addSurfaceModule", "ReactSurface", "addTranslationsModule", "translations", "make"]
|
|
7
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"inputs":{"src/components/Markdown/Container.tsx":{"bytes":8059,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true}],"format":"esm"},"raw-loader:/__w/dxos/dxos/packages/plugins/plugin-presenter/src/components/Markdown/styles.css?raw":{"bytes":1972,"imports":[]},"src/components/Markdown/theme.ts":{"bytes":2088,"imports":[],"format":"esm"},"src/components/Markdown/Slide.tsx":{"bytes":11710,"imports":[{"path":"hastscript","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-markdown","kind":"import-statement","external":true},{"path":"rehype-add-classes","kind":"import-statement","external":true},{"path":"rehype-highlight","kind":"import-statement","external":true},{"path":"remark-frontmatter","kind":"import-statement","external":true},{"path":"remark-parse-frontmatter","kind":"import-statement","external":true},{"path":"highlight.js/styles/github.css","kind":"import-statement","external":true},{"path":"raw-loader:/__w/dxos/dxos/packages/plugins/plugin-presenter/src/components/Markdown/styles.css?raw","kind":"import-statement","original":"./styles.css?raw"},{"path":"src/components/Markdown/theme.ts","kind":"import-statement","original":"./theme"}],"format":"esm"},"src/components/Markdown/index.ts":{"bytes":566,"imports":[{"path":"src/components/Markdown/Container.tsx","kind":"import-statement","original":"./Container"},{"path":"src/components/Markdown/Slide.tsx","kind":"import-statement","original":"./Slide"}],"format":"esm"},"src/components/Presenter/Layout.tsx":{"bytes":3398,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true}],"format":"esm"},"src/components/Presenter/Pager.tsx":{"bytes":12421,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"format":"esm"},"src/components/Presenter/index.ts":{"bytes":560,"imports":[{"path":"src/components/Presenter/Layout.tsx","kind":"import-statement","original":"./Layout"},{"path":"src/components/Presenter/Pager.tsx","kind":"import-statement","original":"./Pager"}],"format":"esm"},"src/components/RevealPlayer/RevealPlayer.tsx":{"bytes":16004,"imports":[{"path":"reveal.js/dist/reveal.css","kind":"import-statement","external":true},{"path":"reveal.js/dist/theme/black.css","kind":"import-statement","external":true},{"path":"highlight.js/styles/tokyo-night-dark.css","kind":"import-statement","external":true},{"path":"highlight.js","kind":"import-statement","external":true},{"path":"highlight.js/lib/languages/typescript","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"reveal.js","kind":"import-statement","external":true},{"path":"reveal.js/plugin/highlight/highlight","kind":"import-statement","external":true},{"path":"reveal.js/plugin/markdown/plugin.js","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true}],"format":"esm"},"src/components/RevealPlayer/index.ts":{"bytes":496,"imports":[{"path":"src/components/RevealPlayer/RevealPlayer.tsx","kind":"import-statement","original":"./RevealPlayer"}],"format":"esm"},"src/components/index.ts":{"bytes":664,"imports":[{"path":"src/components/Markdown/index.ts","kind":"import-statement","original":"./Markdown"},{"path":"src/components/Presenter/index.ts","kind":"import-statement","original":"./Presenter"},{"path":"src/components/RevealPlayer/index.ts","kind":"import-statement","original":"./RevealPlayer"}],"format":"esm"},"src/meta.ts":{"bytes":1831,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/types.ts":{"bytes":5520,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"src/capabilities/app-graph-builder/app-graph-builder.ts":{"bytes":15847,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/types.ts","kind":"import-statement","original":"../../types"}],"format":"esm"},"src/capabilities/app-graph-builder/index.ts":{"bytes":947,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/app-graph-builder/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"}],"format":"esm"},"src/useExitPresenter.ts":{"bytes":4829,"imports":[{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true}],"format":"esm"},"src/containers/CollectionPresenterContainer/CollectionPresenterContainer.tsx":{"bytes":5296,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/components/index.ts","kind":"import-statement","original":"../../components"},{"path":"src/types.ts","kind":"import-statement","original":"../../types"},{"path":"src/useExitPresenter.ts","kind":"import-statement","original":"../../useExitPresenter"}],"format":"esm"},"src/containers/CollectionPresenterContainer/index.ts":{"bytes":816,"imports":[{"path":"src/containers/CollectionPresenterContainer/CollectionPresenterContainer.tsx","kind":"import-statement","original":"./CollectionPresenterContainer"}],"format":"esm"},"src/containers/DocumentPresenterContainer/DocumentPresenterContainer.tsx":{"bytes":2614,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/components/index.ts","kind":"import-statement","original":"../../components"},{"path":"src/useExitPresenter.ts","kind":"import-statement","original":"../../useExitPresenter"}],"format":"esm"},"src/containers/DocumentPresenterContainer/index.ts":{"bytes":796,"imports":[{"path":"src/containers/DocumentPresenterContainer/DocumentPresenterContainer.tsx","kind":"import-statement","original":"./DocumentPresenterContainer"}],"format":"esm"},"src/containers/MarkdownSlide/MarkdownSlide.tsx":{"bytes":1848,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"src/components/index.ts","kind":"import-statement","original":"../../components"}],"format":"esm"},"src/containers/MarkdownSlide/index.ts":{"bytes":668,"imports":[{"path":"src/containers/MarkdownSlide/MarkdownSlide.tsx","kind":"import-statement","original":"./MarkdownSlide"}],"format":"esm"},"src/containers/PresenterSettings/PresenterSettings.tsx":{"bytes":3856,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/containers/PresenterSettings/index.ts":{"bytes":712,"imports":[{"path":"src/containers/PresenterSettings/PresenterSettings.tsx","kind":"import-statement","original":"./PresenterSettings"}],"format":"esm"},"src/containers/index.ts":{"bytes":1825,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"src/containers/CollectionPresenterContainer/index.ts","kind":"dynamic-import","original":"./CollectionPresenterContainer"},{"path":"src/containers/DocumentPresenterContainer/index.ts","kind":"dynamic-import","original":"./DocumentPresenterContainer"},{"path":"src/containers/MarkdownSlide/index.ts","kind":"dynamic-import","original":"./MarkdownSlide"},{"path":"src/containers/PresenterSettings/index.ts","kind":"dynamic-import","original":"./PresenterSettings"}],"format":"esm"},"src/capabilities/react-surface/react-surface.tsx":{"bytes":9896,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"src/containers/index.ts","kind":"import-statement","original":"../../containers"},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/capabilities/react-surface/index.ts":{"bytes":913,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/react-surface/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"src/capabilities/settings/settings.ts":{"bytes":3270,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/types.ts","kind":"import-statement","original":"../../types"}],"format":"esm"},"src/capabilities/settings/index.ts":{"bytes":929,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/settings/settings.ts","kind":"dynamic-import","original":"./settings"}],"format":"esm"},"src/capabilities/index.ts":{"bytes":687,"imports":[{"path":"src/capabilities/app-graph-builder/index.ts","kind":"import-statement","original":"./app-graph-builder"},{"path":"src/capabilities/react-surface/index.ts","kind":"import-statement","original":"./react-surface"},{"path":"src/capabilities/settings/index.ts","kind":"import-statement","original":"./settings"}],"format":"esm"},"src/translations.ts":{"bytes":1609,"imports":[{"path":"src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"src/PresenterPlugin.tsx":{"bytes":2987,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"src/index.ts":{"bytes":653,"imports":[{"path":"src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/PresenterPlugin.tsx","kind":"import-statement","original":"./PresenterPlugin"}],"format":"esm"}},"outputs":{"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3259},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-BHTOR7TG.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-VQVZVXPJ.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/browser/app-graph-builder-LNUGLW3H.mjs","kind":"dynamic-import"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/browser/react-surface-UCM2KRSP.mjs","kind":"dynamic-import"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/browser/settings-GIQOCH6O.mjs","kind":"dynamic-import"}],"exports":["Container","Layout","PageNumber","Pager","PresenterPlugin","RevealPlayer","Slide","StartButton","meta"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/PresenterPlugin.tsx":{"bytesInOutput":391},"src/capabilities/app-graph-builder/index.ts":{"bytesInOutput":158},"src/capabilities/index.ts":{"bytesInOutput":0},"src/capabilities/react-surface/index.ts":{"bytesInOutput":164},"src/capabilities/settings/index.ts":{"bytesInOutput":169},"src/translations.ts":{"bytesInOutput":286}},"bytes":1710},"dist/lib/browser/app-graph-builder-LNUGLW3H.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7827},"dist/lib/browser/app-graph-builder-LNUGLW3H.mjs":{"imports":[{"path":"dist/lib/browser/chunk-PSOOAW44.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-VQVZVXPJ.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/app-graph-builder/app-graph-builder.ts","inputs":{"src/capabilities/app-graph-builder/app-graph-builder.ts":{"bytesInOutput":4026}},"bytes":4326},"dist/lib/browser/CollectionPresenterContainer-5RJIT3DA.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3050},"dist/lib/browser/CollectionPresenterContainer-5RJIT3DA.mjs":{"imports":[{"path":"dist/lib/browser/chunk-46CHA6Y5.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-BHTOR7TG.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-PSOOAW44.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-VQVZVXPJ.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/containers/CollectionPresenterContainer/index.ts","inputs":{"src/containers/CollectionPresenterContainer/CollectionPresenterContainer.tsx":{"bytesInOutput":1066},"src/containers/CollectionPresenterContainer/index.ts":{"bytesInOutput":73}},"bytes":1627},"dist/lib/browser/DocumentPresenterContainer-ISD6N5FM.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1604},"dist/lib/browser/DocumentPresenterContainer-ISD6N5FM.mjs":{"imports":[{"path":"dist/lib/browser/chunk-46CHA6Y5.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-BHTOR7TG.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/containers/DocumentPresenterContainer/index.ts","inputs":{"src/containers/DocumentPresenterContainer/DocumentPresenterContainer.tsx":{"bytesInOutput":475},"src/containers/DocumentPresenterContainer/index.ts":{"bytesInOutput":69}},"bytes":915},"dist/lib/browser/chunk-46CHA6Y5.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2563},"dist/lib/browser/chunk-46CHA6Y5.mjs":{"imports":[{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true}],"exports":["useExitPresenter"],"inputs":{"src/useExitPresenter.ts":{"bytesInOutput":1106}},"bytes":1209},"dist/lib/browser/MarkdownSlide-Q2XLZTMW.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1155},"dist/lib/browser/MarkdownSlide-Q2XLZTMW.mjs":{"imports":[{"path":"dist/lib/browser/chunk-BHTOR7TG.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/containers/MarkdownSlide/index.ts","inputs":{"src/containers/MarkdownSlide/MarkdownSlide.tsx":{"bytesInOutput":287},"src/containers/MarkdownSlide/index.ts":{"bytesInOutput":43}},"bytes":583},"dist/lib/browser/chunk-BHTOR7TG.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":28080},"dist/lib/browser/chunk-BHTOR7TG.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"hastscript","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-markdown","kind":"import-statement","external":true},{"path":"rehype-add-classes","kind":"import-statement","external":true},{"path":"rehype-highlight","kind":"import-statement","external":true},{"path":"remark-frontmatter","kind":"import-statement","external":true},{"path":"remark-parse-frontmatter","kind":"import-statement","external":true},{"path":"highlight.js/styles/github.css","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"reveal.js/dist/reveal.css","kind":"import-statement","external":true},{"path":"reveal.js/dist/theme/black.css","kind":"import-statement","external":true},{"path":"highlight.js/styles/tokyo-night-dark.css","kind":"import-statement","external":true},{"path":"highlight.js","kind":"import-statement","external":true},{"path":"highlight.js/lib/languages/typescript","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"reveal.js","kind":"import-statement","external":true},{"path":"reveal.js/plugin/highlight/highlight","kind":"import-statement","external":true},{"path":"reveal.js/plugin/markdown/plugin.js","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true}],"exports":["Container","Layout","PageNumber","Pager","RevealPlayer","Slide","StartButton"],"inputs":{"src/components/Markdown/Container.tsx":{"bytesInOutput":1353},"src/components/Markdown/Slide.tsx":{"bytesInOutput":2652},"raw-loader:/__w/dxos/dxos/packages/plugins/plugin-presenter/src/components/Markdown/styles.css?raw":{"bytesInOutput":2101},"src/components/Markdown/theme.ts":{"bytesInOutput":484},"src/components/Presenter/Layout.tsx":{"bytesInOutput":927},"src/components/Presenter/Pager.tsx":{"bytesInOutput":3259},"src/components/RevealPlayer/RevealPlayer.tsx":{"bytesInOutput":4460},"src/components/Markdown/index.ts":{"bytesInOutput":0},"src/components/index.ts":{"bytesInOutput":0},"src/components/Presenter/index.ts":{"bytesInOutput":0},"src/components/RevealPlayer/index.ts":{"bytesInOutput":0}},"bytes":15763},"dist/lib/browser/PresenterSettings-WGQMXH4I.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2310},"dist/lib/browser/PresenterSettings-WGQMXH4I.mjs":{"imports":[{"path":"dist/lib/browser/chunk-VQVZVXPJ.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/containers/PresenterSettings/index.ts","inputs":{"src/containers/PresenterSettings/PresenterSettings.tsx":{"bytesInOutput":806},"src/containers/PresenterSettings/index.ts":{"bytesInOutput":51}},"bytes":1116},"dist/lib/browser/react-surface-UCM2KRSP.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5897},"dist/lib/browser/react-surface-UCM2KRSP.mjs":{"imports":[{"path":"dist/lib/browser/chunk-VQVZVXPJ.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"dist/lib/browser/CollectionPresenterContainer-5RJIT3DA.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/DocumentPresenterContainer-ISD6N5FM.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/MarkdownSlide-Q2XLZTMW.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/PresenterSettings-WGQMXH4I.mjs","kind":"dynamic-import"}],"exports":["default"],"entryPoint":"src/capabilities/react-surface/react-surface.tsx","inputs":{"src/capabilities/react-surface/react-surface.tsx":{"bytesInOutput":2159},"src/containers/index.ts":{"bytesInOutput":382}},"bytes":2821},"dist/lib/browser/settings-GIQOCH6O.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1642},"dist/lib/browser/settings-GIQOCH6O.mjs":{"imports":[{"path":"dist/lib/browser/chunk-PSOOAW44.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-VQVZVXPJ.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/settings/settings.ts","inputs":{"src/capabilities/settings/settings.ts":{"bytesInOutput":636}},"bytes":905},"dist/lib/browser/chunk-PSOOAW44.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2934},"dist/lib/browser/chunk-PSOOAW44.mjs":{"imports":[{"path":"dist/lib/browser/chunk-VQVZVXPJ.mjs","kind":"import-statement"},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true}],"exports":["PresenterCapabilities","PresenterContext","PresenterOperation","PresenterSettingsSchema"],"inputs":{"src/types.ts":{"bytesInOutput":1244}},"bytes":1458},"dist/lib/browser/chunk-VQVZVXPJ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":877},"dist/lib/browser/chunk-VQVZVXPJ.mjs":{"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["meta"],"inputs":{"src/meta.ts":{"bytesInOutput":443}},"bytes":522}}}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
meta
|
|
3
|
-
} from "./chunk-VQVZVXPJ.mjs";
|
|
4
|
-
|
|
5
|
-
// src/capabilities/react-surface/react-surface.tsx
|
|
6
|
-
import * as Effect from "effect/Effect";
|
|
7
|
-
import React from "react";
|
|
8
|
-
import { Capabilities, Capability } from "@dxos/app-framework";
|
|
9
|
-
import { Surface, useSettingsState } from "@dxos/app-framework/ui";
|
|
10
|
-
import { AppCapabilities } from "@dxos/app-toolkit";
|
|
11
|
-
import { Obj } from "@dxos/echo";
|
|
12
|
-
import { Collection } from "@dxos/echo";
|
|
13
|
-
import { Markdown } from "@dxos/plugin-markdown/types";
|
|
14
|
-
|
|
15
|
-
// src/containers/index.ts
|
|
16
|
-
import { lazy } from "react";
|
|
17
|
-
var CollectionPresenterContainer = lazy(() => import("./CollectionPresenterContainer-5RJIT3DA.mjs"));
|
|
18
|
-
var DocumentPresenterContainer = lazy(() => import("./DocumentPresenterContainer-ISD6N5FM.mjs"));
|
|
19
|
-
var MarkdownSlide = lazy(() => import("./MarkdownSlide-Q2XLZTMW.mjs"));
|
|
20
|
-
var PresenterSettings = lazy(() => import("./PresenterSettings-WGQMXH4I.mjs"));
|
|
21
|
-
|
|
22
|
-
// src/capabilities/react-surface/react-surface.tsx
|
|
23
|
-
var react_surface_default = Capability.makeModule(() => Effect.succeed(Capability.contributes(Capabilities.ReactSurface, [
|
|
24
|
-
Surface.create({
|
|
25
|
-
id: `${meta.id}/document`,
|
|
26
|
-
role: "article",
|
|
27
|
-
position: "hoist",
|
|
28
|
-
filter: (data) => !!data.subject && typeof data.subject === "object" && "type" in data.subject && "object" in data.subject && data.subject.type === meta.id && Obj.instanceOf(Markdown.Document, data.subject.object),
|
|
29
|
-
component: ({ data }) => /* @__PURE__ */ React.createElement(DocumentPresenterContainer, {
|
|
30
|
-
document: data.subject.object
|
|
31
|
-
})
|
|
32
|
-
}),
|
|
33
|
-
Surface.create({
|
|
34
|
-
id: `${meta.id}/collection`,
|
|
35
|
-
role: "article",
|
|
36
|
-
position: "hoist",
|
|
37
|
-
filter: (data) => !!data.subject && typeof data.subject === "object" && "type" in data.subject && "object" in data.subject && data.subject.type === meta.id && Obj.instanceOf(Collection.Collection, data.subject.object),
|
|
38
|
-
component: ({ role, data }) => /* @__PURE__ */ React.createElement(CollectionPresenterContainer, {
|
|
39
|
-
role,
|
|
40
|
-
subject: data.subject.object
|
|
41
|
-
})
|
|
42
|
-
}),
|
|
43
|
-
Surface.create({
|
|
44
|
-
id: `${meta.id}/slide`,
|
|
45
|
-
role: "slide",
|
|
46
|
-
filter: (data) => Obj.instanceOf(Markdown.Document, data.subject),
|
|
47
|
-
component: ({ data }) => /* @__PURE__ */ React.createElement(MarkdownSlide, {
|
|
48
|
-
document: data.subject
|
|
49
|
-
})
|
|
50
|
-
}),
|
|
51
|
-
Surface.create({
|
|
52
|
-
id: `${meta.id}/plugin-settings`,
|
|
53
|
-
role: "article",
|
|
54
|
-
filter: (data) => AppCapabilities.isSettings(data.subject) && data.subject.prefix === meta.id,
|
|
55
|
-
component: ({ data: { subject } }) => {
|
|
56
|
-
const { settings, updateSettings } = useSettingsState(subject.atom);
|
|
57
|
-
return /* @__PURE__ */ React.createElement(PresenterSettings, {
|
|
58
|
-
settings,
|
|
59
|
-
onSettingsChange: updateSettings
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
})
|
|
63
|
-
])));
|
|
64
|
-
export {
|
|
65
|
-
react_surface_default as default
|
|
66
|
-
};
|
|
67
|
-
//# sourceMappingURL=react-surface-UCM2KRSP.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/react-surface/react-surface.tsx", "../../../src/containers/index.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Surface, useSettingsState } from '@dxos/app-framework/ui';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { Obj } from '@dxos/echo';\nimport { Collection } from '@dxos/echo';\nimport { Markdown } from '@dxos/plugin-markdown/types';\n\nimport {\n CollectionPresenterContainer,\n DocumentPresenterContainer,\n MarkdownSlide,\n PresenterSettings,\n} from '../../containers';\nimport { meta } from '../../meta';\nimport { type PresenterSettingsProps } from '../../types';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contributes(Capabilities.ReactSurface, [\n Surface.create({\n id: `${meta.id}/document`,\n role: 'article',\n position: 'hoist',\n filter: (data): data is { subject: { type: typeof meta.id; object: Markdown.Document } } =>\n !!data.subject &&\n typeof data.subject === 'object' &&\n 'type' in data.subject &&\n 'object' in data.subject &&\n data.subject.type === meta.id &&\n Obj.instanceOf(Markdown.Document, data.subject.object),\n component: ({ data }) => <DocumentPresenterContainer document={data.subject.object} />,\n }),\n Surface.create({\n id: `${meta.id}/collection`,\n role: 'article',\n position: 'hoist',\n filter: (data): data is { subject: { type: typeof meta.id; object: Collection.Collection } } =>\n !!data.subject &&\n typeof data.subject === 'object' &&\n 'type' in data.subject &&\n 'object' in data.subject &&\n data.subject.type === meta.id &&\n Obj.instanceOf(Collection.Collection, data.subject.object),\n component: ({ role, data }) => <CollectionPresenterContainer role={role} subject={data.subject.object} />,\n }),\n Surface.create({\n id: `${meta.id}/slide`,\n role: 'slide',\n filter: (data): data is { subject: Markdown.Document } => Obj.instanceOf(Markdown.Document, data.subject),\n component: ({ data }) => <MarkdownSlide document={data.subject} />,\n }),\n Surface.create({\n id: `${meta.id}/plugin-settings`,\n role: 'article',\n filter: (data): data is { subject: AppCapabilities.Settings } =>\n AppCapabilities.isSettings(data.subject) && data.subject.prefix === meta.id,\n component: ({ data: { subject } }) => {\n const { settings, updateSettings } = useSettingsState<PresenterSettingsProps>(subject.atom);\n return <PresenterSettings settings={settings} onSettingsChange={updateSettings} />;\n },\n }),\n ]),\n ),\n);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentType, lazy } from 'react';\n\nexport const CollectionPresenterContainer: ComponentType<any> = lazy(() => import('./CollectionPresenterContainer'));\nexport const DocumentPresenterContainer: ComponentType<any> = lazy(() => import('./DocumentPresenterContainer'));\nexport const MarkdownSlide: ComponentType<any> = lazy(() => import('./MarkdownSlide'));\nexport const PresenterSettings: ComponentType<any> = lazy(() => import('./PresenterSettings'));\n"],
|
|
5
|
-
"mappings": ";;;;;AAIA,YAAYA,YAAY;AACxB,OAAOC,WAAW;AAElB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,SAASC,wBAAwB;AAC1C,SAASC,uBAAuB;AAChC,SAASC,WAAW;AACpB,SAASC,kBAAkB;AAC3B,SAASC,gBAAgB;;;ACRzB,SAA6BC,YAAY;AAElC,IAAMC,+BAAmDC,KAAK,MAAM,OAAO,6CAAA,CAAA;AAC3E,IAAMC,6BAAiDD,KAAK,MAAM,OAAO,2CAAA,CAAA;AACzE,IAAME,gBAAoCF,KAAK,MAAM,OAAO,8BAAA,CAAA;AAC5D,IAAMG,oBAAwCH,KAAK,MAAM,OAAO,kCAAA,CAAA;;;ADcvE,IAAA,wBAAeI,WAAWC,WAAW,MAC5BC,eACLF,WAAWG,YAAYC,aAAaC,cAAc;EAChDC,QAAQC,OAAO;IACbC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,UAAU;IACVC,QAAQ,CAACC,SACP,CAAC,CAACA,KAAKC,WACP,OAAOD,KAAKC,YAAY,YACxB,UAAUD,KAAKC,WACf,YAAYD,KAAKC,WACjBD,KAAKC,QAAQC,SAASN,KAAKD,MAC3BQ,IAAIC,WAAWC,SAASC,UAAUN,KAAKC,QAAQM,MAAM;IACvDC,WAAW,CAAC,EAAER,KAAI,MAAO,sBAAA,cAACS,4BAAAA;MAA2BC,UAAUV,KAAKC,QAAQM;;EAC9E,CAAA;EACAd,QAAQC,OAAO;IACbC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,UAAU;IACVC,QAAQ,CAACC,SACP,CAAC,CAACA,KAAKC,WACP,OAAOD,KAAKC,YAAY,YACxB,UAAUD,KAAKC,WACf,YAAYD,KAAKC,WACjBD,KAAKC,QAAQC,SAASN,KAAKD,MAC3BQ,IAAIC,WAAWO,WAAWA,YAAYX,KAAKC,QAAQM,MAAM;IAC3DC,WAAW,CAAC,EAAEX,MAAMG,KAAI,MAAO,sBAAA,cAACY,8BAAAA;MAA6Bf;MAAYI,SAASD,KAAKC,QAAQM;;EACjG,CAAA;EACAd,QAAQC,OAAO;IACbC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNE,QAAQ,CAACC,SAAiDG,IAAIC,WAAWC,SAASC,UAAUN,KAAKC,OAAO;IACxGO,WAAW,CAAC,EAAER,KAAI,MAAO,sBAAA,cAACa,eAAAA;MAAcH,UAAUV,KAAKC;;EACzD,CAAA;EACAR,QAAQC,OAAO;IACbC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNE,QAAQ,CAACC,SACPc,gBAAgBC,WAAWf,KAAKC,OAAO,KAAKD,KAAKC,QAAQe,WAAWpB,KAAKD;IAC3Ea,WAAW,CAAC,EAAER,MAAM,EAAEC,QAAO,EAAE,MAAE;AAC/B,YAAM,EAAEgB,UAAUC,eAAc,IAAKC,iBAAyClB,QAAQmB,IAAI;AAC1F,aAAO,sBAAA,cAACC,mBAAAA;QAAkBJ;QAAoBK,kBAAkBJ;;IAClE;EACF,CAAA;CACD,CAAA,CAAA;",
|
|
6
|
-
"names": ["Effect", "React", "Capabilities", "Capability", "Surface", "useSettingsState", "AppCapabilities", "Obj", "Collection", "Markdown", "lazy", "CollectionPresenterContainer", "lazy", "DocumentPresenterContainer", "MarkdownSlide", "PresenterSettings", "Capability", "makeModule", "succeed", "contributes", "Capabilities", "ReactSurface", "Surface", "create", "id", "meta", "role", "position", "filter", "data", "subject", "type", "Obj", "instanceOf", "Markdown", "Document", "object", "component", "DocumentPresenterContainer", "document", "Collection", "CollectionPresenterContainer", "MarkdownSlide", "AppCapabilities", "isSettings", "prefix", "settings", "updateSettings", "useSettingsState", "atom", "PresenterSettings", "onSettingsChange"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/settings/settings.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability } from '@dxos/app-framework';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { createKvsStore } from '@dxos/effect';\n\nimport { meta } from '../../meta';\nimport { PresenterCapabilities, PresenterSettingsSchema } from '../../types';\n\nexport default Capability.makeModule(() =>\n Effect.sync(() => {\n const settingsAtom = createKvsStore({\n key: meta.id,\n schema: PresenterSettingsSchema,\n defaultValue: () => ({}),\n });\n\n return [\n Capability.contributes(PresenterCapabilities.Settings, settingsAtom),\n Capability.contributes(AppCapabilities.Settings, {\n prefix: meta.id,\n schema: PresenterSettingsSchema,\n atom: settingsAtom,\n }),\n ];\n }),\n);\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,uBAAuB;AAChC,SAASC,sBAAsB;AAK/B,IAAA,mBAAeC,WAAWC,WAAW,MAC5BC,YAAK,MAAA;AACV,QAAMC,eAAeC,eAAe;IAClCC,KAAKC,KAAKC;IACVC,QAAQC;IACRC,cAAc,OAAO,CAAC;EACxB,CAAA;AAEA,SAAO;IACLV,WAAWW,YAAYC,sBAAsBC,UAAUV,YAAAA;IACvDH,WAAWW,YAAYG,gBAAgBD,UAAU;MAC/CE,QAAQT,KAAKC;MACbC,QAAQC;MACRO,MAAMb;IACR,CAAA;;AAEJ,CAAA,CAAA;",
|
|
6
|
-
"names": ["Effect", "Capability", "AppCapabilities", "createKvsStore", "Capability", "makeModule", "sync", "settingsAtom", "createKvsStore", "key", "meta", "id", "schema", "PresenterSettingsSchema", "defaultValue", "contributes", "PresenterCapabilities", "Settings", "AppCapabilities", "prefix", "atom"]
|
|
7
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app-graph-builder.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/app-graph-builder/app-graph-builder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAO/D,OAAO,EAAE,YAAY,EAA0B,MAAM,oBAAoB,CAAC;;AAY1E,wBA+EE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/app-graph-builder/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,eAAe,qIAA0E,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,YAAY,iJAAmE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/react-surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;;AAgB/D,wBA+CE"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { Capability } from '@dxos/app-framework';
|
|
2
|
-
export declare const PresenterSettings: Capability.LazyCapability<void, [Capability.Capability<Capability.InterfaceDef<import("@effect-atom/atom/Atom").Writable<{
|
|
3
|
-
presentCollections?: boolean | undefined;
|
|
4
|
-
}, {
|
|
5
|
-
presentCollections?: boolean | undefined;
|
|
6
|
-
}>>>, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-toolkit").AppCapabilities.Settings>>], Error>;
|
|
7
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/settings/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,iBAAiB;;;;mHAAmE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/settings/settings.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;;;;;;AAMpD,wBAiBE"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import React, { type PropsWithChildren } from 'react';
|
|
2
|
-
import { type ThemedClassName } from '@dxos/react-ui';
|
|
3
|
-
export type ContainerProps = ThemedClassName<PropsWithChildren<{}>>;
|
|
4
|
-
/**
|
|
5
|
-
* Scaled markdown container.
|
|
6
|
-
*/
|
|
7
|
-
export declare const Container: ({ children, classNames }: ContainerProps) => React.JSX.Element;
|
|
8
|
-
//# sourceMappingURL=Container.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../../../../src/components/Markdown/Container.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAAY,MAAM,OAAO,CAAC;AAGhE,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGtD,MAAM,MAAM,cAAc,GAAG,eAAe,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,SAAS,GAAI,0BAA0B,cAAc,sBA4BjE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Container.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/Markdown/Container.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAUjD,QAAA,MAAM,IAAI;;0BAR8B,UAAU;;;;;CAeb,CAAC;AAEtC,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAIrB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,KAIlB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,KAIlB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAIrB,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { type PresenterSettingsProps } from '../../types';
|
|
3
|
-
export type PresenterSettingsComponentProps = {
|
|
4
|
-
settings: PresenterSettingsProps;
|
|
5
|
-
onSettingsChange: (fn: (current: PresenterSettingsProps) => PresenterSettingsProps) => void;
|
|
6
|
-
};
|
|
7
|
-
export declare const PresenterSettings: ({ settings, onSettingsChange }: PresenterSettingsComponentProps) => React.JSX.Element;
|
|
8
|
-
//# sourceMappingURL=PresenterSettings.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PresenterSettings.d.ts","sourceRoot":"","sources":["../../../../../src/containers/PresenterSettings/PresenterSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D,MAAM,MAAM,+BAA+B,GAAG;IAC5C,QAAQ,EAAE,sBAAsB,CAAC;IACjC,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,sBAAsB,KAAK,IAAI,CAAC;CAC7F,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,gCAAgC,+BAA+B,sBAiBhG,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/containers/PresenterSettings/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,eAAe,iBAAiB,CAAC"}
|