@dxos/plugin-presenter 0.8.4-main.bc674ce → 0.8.4-main.bcb3aa67d6

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.
Files changed (150) hide show
  1. package/dist/lib/browser/PresenterSettings-DSPIGNOL.mjs +32 -0
  2. package/dist/lib/browser/PresenterSettings-DSPIGNOL.mjs.map +7 -0
  3. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  4. package/dist/lib/browser/chunk-J5LGTIGS.mjs.map +7 -0
  5. package/dist/lib/browser/index.mjs +528 -34
  6. package/dist/lib/browser/index.mjs.map +4 -4
  7. package/dist/lib/browser/meta.json +1 -1
  8. package/dist/lib/browser/operations/index.mjs +30 -0
  9. package/dist/lib/browser/operations/index.mjs.map +7 -0
  10. package/dist/types/src/PresenterPlugin.d.ts.map +1 -1
  11. package/dist/types/src/capabilities/app-graph-builder.d.ts +6 -0
  12. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  13. package/dist/types/src/capabilities/index.d.ts +8 -3
  14. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  15. package/dist/types/src/capabilities/react-surface.d.ts +5 -0
  16. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  17. package/dist/types/src/capabilities/settings.d.ts +10 -0
  18. package/dist/types/src/capabilities/settings.d.ts.map +1 -0
  19. package/dist/types/src/components/Markdown/Panel.d.ts +8 -0
  20. package/dist/types/src/components/Markdown/Panel.d.ts.map +1 -0
  21. package/dist/types/src/components/Markdown/{Container.stories.d.ts → Panel.stories.d.ts} +1 -1
  22. package/dist/types/src/components/Markdown/Panel.stories.d.ts.map +1 -0
  23. package/dist/types/src/components/Markdown/index.d.ts +1 -1
  24. package/dist/types/src/components/Markdown/index.d.ts.map +1 -1
  25. package/dist/types/src/components/Presenter/Layout.d.ts +9 -5
  26. package/dist/types/src/components/Presenter/Layout.d.ts.map +1 -1
  27. package/dist/types/src/components/PresenterSettings/PresenterSettings.d.ts +6 -0
  28. package/dist/types/src/components/PresenterSettings/PresenterSettings.d.ts.map +1 -0
  29. package/dist/types/src/components/PresenterSettings/PresenterSettings.stories.d.ts +25 -0
  30. package/dist/types/src/components/PresenterSettings/PresenterSettings.stories.d.ts.map +1 -0
  31. package/dist/types/src/components/PresenterSettings/index.d.ts +3 -0
  32. package/dist/types/src/components/PresenterSettings/index.d.ts.map +1 -0
  33. package/dist/types/src/components/RevealPlayer/RevealPlayer.d.ts +9 -4
  34. package/dist/types/src/components/RevealPlayer/RevealPlayer.d.ts.map +1 -1
  35. package/dist/types/src/components/RevealPlayer/RevealPlayer.stories.d.ts +12 -5
  36. package/dist/types/src/components/RevealPlayer/RevealPlayer.stories.d.ts.map +1 -1
  37. package/dist/types/src/components/index.d.ts +5 -28
  38. package/dist/types/src/components/index.d.ts.map +1 -1
  39. package/dist/types/src/containers/CollectionPresenterContainer/CollectionPresenterContainer.d.ts +7 -0
  40. package/dist/types/src/containers/CollectionPresenterContainer/CollectionPresenterContainer.d.ts.map +1 -0
  41. package/dist/types/src/containers/CollectionPresenterContainer/index.d.ts +3 -0
  42. package/dist/types/src/containers/CollectionPresenterContainer/index.d.ts.map +1 -0
  43. package/dist/types/src/containers/DocumentPresenterContainer/DocumentPresenterContainer.d.ts +6 -0
  44. package/dist/types/src/containers/DocumentPresenterContainer/DocumentPresenterContainer.d.ts.map +1 -0
  45. package/dist/types/src/containers/DocumentPresenterContainer/index.d.ts +3 -0
  46. package/dist/types/src/containers/DocumentPresenterContainer/index.d.ts.map +1 -0
  47. package/dist/types/src/containers/MarkdownSlide/MarkdownSlide.d.ts +8 -0
  48. package/dist/types/src/containers/MarkdownSlide/MarkdownSlide.d.ts.map +1 -0
  49. package/dist/types/src/containers/MarkdownSlide/index.d.ts +3 -0
  50. package/dist/types/src/containers/MarkdownSlide/index.d.ts.map +1 -0
  51. package/dist/types/src/containers/index.d.ts +5 -0
  52. package/dist/types/src/containers/index.d.ts.map +1 -0
  53. package/dist/types/src/operations/definitions.d.ts +17 -0
  54. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  55. package/dist/types/src/operations/index.d.ts +2 -0
  56. package/dist/types/src/operations/index.d.ts.map +1 -0
  57. package/dist/types/src/translations.d.ts +6 -5
  58. package/dist/types/src/translations.d.ts.map +1 -1
  59. package/dist/types/src/types/Settings.d.ts +6 -0
  60. package/dist/types/src/types/Settings.d.ts.map +1 -0
  61. package/dist/types/src/types/index.d.ts +18 -0
  62. package/dist/types/src/types/index.d.ts.map +1 -0
  63. package/dist/types/src/useExitPresenter.d.ts +1 -1
  64. package/dist/types/src/useExitPresenter.d.ts.map +1 -1
  65. package/dist/types/tsconfig.tsbuildinfo +1 -1
  66. package/package.json +51 -35
  67. package/src/PresenterPlugin.tsx +9 -7
  68. package/src/capabilities/{app-graph-builder/app-graph-builder.ts → app-graph-builder.ts} +26 -27
  69. package/src/capabilities/index.ts +5 -3
  70. package/src/capabilities/{react-surface/react-surface.tsx → react-surface.tsx} +20 -23
  71. package/src/capabilities/{settings/settings.ts → settings.ts} +7 -6
  72. package/src/components/Markdown/{Container.stories.tsx → Panel.stories.tsx} +7 -7
  73. package/src/components/Markdown/{Container.tsx → Panel.tsx} +5 -5
  74. package/src/components/Markdown/Slide.stories.tsx +4 -4
  75. package/src/components/Markdown/index.ts +1 -1
  76. package/src/components/Markdown/theme.ts +6 -6
  77. package/src/components/Presenter/Layout.tsx +24 -23
  78. package/src/components/Presenter/Pager.stories.tsx +2 -2
  79. package/src/components/PresenterSettings/PresenterSettings.stories.tsx +32 -0
  80. package/src/components/PresenterSettings/PresenterSettings.tsx +32 -0
  81. package/src/components/PresenterSettings/index.ts +7 -0
  82. package/src/components/RevealPlayer/RevealPlayer.stories.tsx +3 -3
  83. package/src/components/RevealPlayer/RevealPlayer.tsx +104 -103
  84. package/src/components/index.ts +5 -5
  85. package/src/containers/CollectionPresenterContainer/CollectionPresenterContainer.tsx +43 -0
  86. package/src/containers/CollectionPresenterContainer/index.ts +7 -0
  87. package/src/containers/DocumentPresenterContainer/DocumentPresenterContainer.tsx +23 -0
  88. package/src/containers/DocumentPresenterContainer/index.ts +7 -0
  89. package/src/{components → containers/MarkdownSlide}/MarkdownSlide.tsx +4 -6
  90. package/src/containers/MarkdownSlide/index.ts +7 -0
  91. package/src/containers/index.ts +9 -0
  92. package/src/meta.ts +1 -1
  93. package/src/operations/definitions.ts +23 -0
  94. package/src/operations/index.ts +5 -0
  95. package/src/translations.ts +6 -5
  96. package/src/types/Settings.ts +15 -0
  97. package/src/types/index.ts +30 -0
  98. package/src/useExitPresenter.ts +11 -9
  99. package/dist/lib/browser/CollectionPresenterContainer-IHDZWP3U.mjs +0 -176
  100. package/dist/lib/browser/CollectionPresenterContainer-IHDZWP3U.mjs.map +0 -7
  101. package/dist/lib/browser/DocumentPresenterContainer-74M6XAAI.mjs +0 -173
  102. package/dist/lib/browser/DocumentPresenterContainer-74M6XAAI.mjs.map +0 -7
  103. package/dist/lib/browser/MarkdownSlide-GIYJABHE.mjs +0 -200
  104. package/dist/lib/browser/MarkdownSlide-GIYJABHE.mjs.map +0 -7
  105. package/dist/lib/browser/app-graph-builder-2QAQR34J.mjs +0 -112
  106. package/dist/lib/browser/app-graph-builder-2QAQR34J.mjs.map +0 -7
  107. package/dist/lib/browser/chunk-4PZXJXBO.mjs +0 -50
  108. package/dist/lib/browser/chunk-4PZXJXBO.mjs.map +0 -7
  109. package/dist/lib/browser/chunk-5MC4V23G.mjs +0 -38
  110. package/dist/lib/browser/chunk-5MC4V23G.mjs.map +0 -7
  111. package/dist/lib/browser/chunk-GM4KOXJY.mjs +0 -41
  112. package/dist/lib/browser/chunk-GM4KOXJY.mjs.map +0 -7
  113. package/dist/lib/browser/chunk-VQVZVXPJ.mjs +0 -18
  114. package/dist/lib/browser/chunk-VQVZVXPJ.mjs.map +0 -7
  115. package/dist/lib/browser/react-surface-2VP2M4Z7.mjs +0 -63
  116. package/dist/lib/browser/react-surface-2VP2M4Z7.mjs.map +0 -7
  117. package/dist/lib/browser/settings-RDHXCCT4.mjs +0 -31
  118. package/dist/lib/browser/settings-RDHXCCT4.mjs.map +0 -7
  119. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +0 -6
  120. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +0 -1
  121. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +0 -3
  122. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +0 -1
  123. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  124. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  125. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
  126. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  127. package/dist/types/src/capabilities/settings/index.d.ts +0 -7
  128. package/dist/types/src/capabilities/settings/index.d.ts.map +0 -1
  129. package/dist/types/src/capabilities/settings/settings.d.ts +0 -9
  130. package/dist/types/src/capabilities/settings/settings.d.ts.map +0 -1
  131. package/dist/types/src/components/CollectionPresenterContainer.d.ts +0 -7
  132. package/dist/types/src/components/CollectionPresenterContainer.d.ts.map +0 -1
  133. package/dist/types/src/components/DocumentPresenterContainer.d.ts +0 -7
  134. package/dist/types/src/components/DocumentPresenterContainer.d.ts.map +0 -1
  135. package/dist/types/src/components/Markdown/Container.d.ts +0 -8
  136. package/dist/types/src/components/Markdown/Container.d.ts.map +0 -1
  137. package/dist/types/src/components/Markdown/Container.stories.d.ts.map +0 -1
  138. package/dist/types/src/components/MarkdownSlide.d.ts +0 -8
  139. package/dist/types/src/components/MarkdownSlide.d.ts.map +0 -1
  140. package/dist/types/src/components/PresenterSettings.d.ts +0 -8
  141. package/dist/types/src/components/PresenterSettings.d.ts.map +0 -1
  142. package/dist/types/src/types.d.ts +0 -49
  143. package/dist/types/src/types.d.ts.map +0 -1
  144. package/src/capabilities/app-graph-builder/index.ts +0 -7
  145. package/src/capabilities/react-surface/index.ts +0 -7
  146. package/src/capabilities/settings/index.ts +0 -7
  147. package/src/components/CollectionPresenterContainer.tsx +0 -43
  148. package/src/components/DocumentPresenterContainer.tsx +0 -23
  149. package/src/components/PresenterSettings.tsx +0 -35
  150. package/src/types.ts +0 -54
@@ -1,112 +0,0 @@
1
- import {
2
- PresenterCapabilities,
3
- PresenterOperation
4
- } from "./chunk-4PZXJXBO.mjs";
5
- import {
6
- meta
7
- } from "./chunk-VQVZVXPJ.mjs";
8
-
9
- // src/capabilities/app-graph-builder/app-graph-builder.ts
10
- import * as Effect from "effect/Effect";
11
- import * as Option from "effect/Option";
12
- import { Capability, Common } from "@dxos/app-framework";
13
- import { Obj } from "@dxos/echo";
14
- import { Operation } from "@dxos/operation";
15
- import { DeckCapabilities } from "@dxos/plugin-deck";
16
- import { ATTENDABLE_PATH_SEPARATOR, DeckOperation } from "@dxos/plugin-deck/types";
17
- import { GraphBuilder, NodeMatcher } from "@dxos/plugin-graph";
18
- import { Markdown } from "@dxos/plugin-markdown/types";
19
- import { Collection } from "@dxos/schema";
20
- var whenPresentable = (node) => Option.orElse(NodeMatcher.whenEchoType(Collection.Collection)(node), () => NodeMatcher.whenEchoType(Markdown.Document)(node));
21
- var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function* () {
22
- const capabilities = yield* Capability.Service;
23
- const extensions = yield* GraphBuilder.createExtension({
24
- id: `${meta.id}/root`,
25
- // TODO(wittjosiah): This is a hack to work around presenter previously relying on "variant". Remove.
26
- match: whenPresentable,
27
- connector: (object, get) => {
28
- const settingsAtom = capabilities.get(PresenterCapabilities.Settings);
29
- const settings = get(settingsAtom);
30
- const isPresentable = settings?.presentCollections ? Obj.instanceOf(Collection.Collection, object) || Obj.instanceOf(Markdown.Document, object) : Obj.instanceOf(Markdown.Document, object);
31
- if (!isPresentable) {
32
- return Effect.succeed([]);
33
- }
34
- const id = Obj.getDXN(object).toString();
35
- return Effect.succeed([
36
- {
37
- id: [
38
- id,
39
- "presenter"
40
- ].join(ATTENDABLE_PATH_SEPARATOR),
41
- data: {
42
- type: meta.id,
43
- object
44
- },
45
- type: meta.id,
46
- properties: {
47
- label: "Presenter",
48
- icon: "ph--presentation--regular",
49
- disposition: "hidden"
50
- }
51
- }
52
- ]);
53
- },
54
- actions: (object, get) => {
55
- const settingsAtom = capabilities.get(PresenterCapabilities.Settings);
56
- const settings = get(settingsAtom);
57
- const isPresentable = settings?.presentCollections ? Obj.instanceOf(Collection.Collection, object) || Obj.instanceOf(Markdown.Document, object) : Obj.instanceOf(Markdown.Document, object);
58
- if (!isPresentable) {
59
- return Effect.succeed([]);
60
- }
61
- const dxn = Obj.getDXN(object);
62
- const id = dxn.toString();
63
- const { spaceId } = dxn.asEchoDXN();
64
- return Effect.succeed([
65
- {
66
- id: `${PresenterOperation.TogglePresentation.meta.key}/${id}`,
67
- // TODO(burdon): Allow function so can generate state when activated.
68
- // So can set explicit fullscreen state coordinated with current presenter state.
69
- data: Effect.fnUntraced(function* () {
70
- const deckState = yield* Common.Capability.getAtomValue(DeckCapabilities.State);
71
- const deck = deckState.decks[deckState.activeDeck];
72
- const presenterId = [
73
- id,
74
- "presenter"
75
- ].join(ATTENDABLE_PATH_SEPARATOR);
76
- if (!deck?.fullscreen) {
77
- yield* Operation.invoke(DeckOperation.Adjust, {
78
- type: "solo--fullscreen",
79
- id: presenterId
80
- });
81
- }
82
- yield* Operation.invoke(Common.LayoutOperation.Open, {
83
- subject: [
84
- presenterId
85
- ],
86
- workspace: spaceId
87
- });
88
- }),
89
- properties: {
90
- label: [
91
- "toggle presentation label",
92
- {
93
- ns: meta.id
94
- }
95
- ],
96
- icon: "ph--presentation--regular",
97
- disposition: "list-item",
98
- keyBinding: {
99
- macos: "shift+meta+p",
100
- windows: "shift+alt+p"
101
- }
102
- }
103
- }
104
- ]);
105
- }
106
- });
107
- return Capability.contributes(Common.Capability.AppGraphBuilder, extensions);
108
- }));
109
- export {
110
- app_graph_builder_default as default
111
- };
112
- //# sourceMappingURL=app-graph-builder-2QAQR34J.mjs.map
@@ -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 { Capability, Common } from '@dxos/app-framework';\nimport { Obj } 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';\nimport { Collection } from '@dxos/schema';\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* Common.Capability.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(Common.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(Common.Capability.AppGraphBuilder, extensions);\n }),\n);\n"],
5
- "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AACxB,YAAYC,YAAY;AAExB,SAASC,YAAYC,cAAc;AACnC,SAASC,WAAW;AACpB,SAASC,iBAAiB;AAC1B,SAASC,wBAAwB;AACjC,SAASC,2BAA2BC,qBAAqB;AACzD,SAASC,cAAyBC,mBAAmB;AACrD,SAASC,gBAAgB;AACzB,SAASC,kBAAkB;AAM3B,IAAMC,kBAAkB,CAACC,SAChBC,cAAOC,YAAYC,aAAaC,WAAWA,UAAU,EAAEJ,IAAAA,GAAO,MACnEE,YAAYC,aAAaE,SAASC,QAAQ,EAAEN,IAAAA,CAAAA;AAGhD,IAAA,4BAAeO,WAAWC,WACjBC,kBAAW,aAAA;AAChB,QAAMC,eAAe,OAAOH,WAAWI;AAEvC,QAAMC,aAAa,OAAOC,aAAaC,gBAAgB;IACrDC,IAAI,GAAGC,KAAKD,EAAE;;IAEdE,OAAOlB;IACPmB,WAAW,CAACC,QAAQC,QAAAA;AAClB,YAAMC,eAAeX,aAAaU,IAAIE,sBAAsBC,QAAQ;AACpE,YAAMC,WAAWJ,IAAIC,YAAAA;AACrB,YAAMI,gBAAgBD,UAAUE,qBAC5BC,IAAIC,WAAWxB,WAAWA,YAAYe,MAAAA,KAAWQ,IAAIC,WAAWvB,SAASC,UAAUa,MAAAA,IACnFQ,IAAIC,WAAWvB,SAASC,UAAUa,MAAAA;AACtC,UAAI,CAACM,eAAe;AAClB,eAAcI,eAAQ,CAAA,CAAE;MAC1B;AACA,YAAMd,KAAKY,IAAIG,OAAOX,MAAAA,EAAQY,SAAQ;AACtC,aAAcF,eAAQ;QACpB;UACEd,IAAI;YAACA;YAAI;YAAaiB,KAAKC,yBAAAA;UAC3BC,MAAM;YAAEC,MAAMnB,KAAKD;YAAII;UAAO;UAC9BgB,MAAMnB,KAAKD;UACXqB,YAAY;YACVC,OAAO;YACPC,MAAM;YACNC,aAAa;UACf;QACF;OACD;IACH;IACAC,SAAS,CAACrB,QAAQC,QAAAA;AAChB,YAAMC,eAAeX,aAAaU,IAAIE,sBAAsBC,QAAQ;AACpE,YAAMC,WAAWJ,IAAIC,YAAAA;AACrB,YAAMI,gBAAgBD,UAAUE,qBAC5BC,IAAIC,WAAWxB,WAAWA,YAAYe,MAAAA,KAAWQ,IAAIC,WAAWvB,SAASC,UAAUa,MAAAA,IACnFQ,IAAIC,WAAWvB,SAASC,UAAUa,MAAAA;AACtC,UAAI,CAACM,eAAe;AAClB,eAAcI,eAAQ,CAAA,CAAE;MAC1B;AACA,YAAMY,MAAMd,IAAIG,OAAOX,MAAAA;AACvB,YAAMJ,KAAK0B,IAAIV,SAAQ;AACvB,YAAM,EAAEW,QAAO,IAAKD,IAAIE,UAAS;AACjC,aAAcd,eAAQ;QACpB;UACEd,IAAI,GAAG6B,mBAAmBC,mBAAmB7B,KAAK8B,GAAG,IAAI/B,EAAAA;;;UAGzDmB,MAAazB,kBAAW,aAAA;AACtB,kBAAMsC,YAAY,OAAOC,OAAOzC,WAAW0C,aAAaC,iBAAiBC,KAAK;AAC9E,kBAAMC,OAAOL,UAAUM,MAAMN,UAAUO,UAAU;AACjD,kBAAMC,cAAc;cAACxC;cAAI;cAAaiB,KAAKC,yBAAAA;AAC3C,gBAAI,CAACmB,MAAMI,YAAY;AACrB,qBAAOC,UAAUC,OAAOC,cAAcC,QAAQ;gBAC5CzB,MAAM;gBACNpB,IAAIwC;cACN,CAAA;YACF;AACA,mBAAOE,UAAUC,OAAOV,OAAOa,gBAAgBC,MAAM;cACnDC,SAAS;gBAACR;;cACVS,WAAWtB;YACb,CAAA;UACF,CAAA;UACAN,YAAY;YACVC,OAAO;cAAC;cAA6B;gBAAE4B,IAAIjD,KAAKD;cAAG;;YACnDuB,MAAM;YACNC,aAAa;YACb2B,YAAY;cACVC,OAAO;cACPC,SAAS;YACX;UACF;QACF;OACD;IACH;EACF,CAAA;AAEA,SAAO7D,WAAW8D,YAAYrB,OAAOzC,WAAW+D,iBAAiB1D,UAAAA;AACnE,CAAA,CAAA;",
6
- "names": ["Effect", "Option", "Capability", "Common", "Obj", "Operation", "DeckCapabilities", "ATTENDABLE_PATH_SEPARATOR", "DeckOperation", "GraphBuilder", "NodeMatcher", "Markdown", "Collection", "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", "Common", "getAtomValue", "DeckCapabilities", "State", "deck", "decks", "activeDeck", "presenterId", "fullscreen", "Operation", "invoke", "DeckOperation", "Adjust", "LayoutOperation", "Open", "subject", "workspace", "ns", "keyBinding", "macos", "windows", "contributes", "AppGraphBuilder"]
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 { Operation } from "@dxos/operation";
10
- import { Markdown } from "@dxos/plugin-markdown/types";
11
- import { Collection } from "@dxos/schema";
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-4PZXJXBO.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 { Operation } from '@dxos/operation';\nimport { Markdown } from '@dxos/plugin-markdown/types';\nimport { Collection } from '@dxos/schema';\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,iBAAiB;AAC1B,SAASC,gBAAgB;AACzB,SAASC,kBAAkB;AAI3B,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", "Operation", "Markdown", "Collection", "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,38 +0,0 @@
1
- import {
2
- meta
3
- } from "./chunk-VQVZVXPJ.mjs";
4
-
5
- // src/components/PresenterSettings.tsx
6
- import React from "react";
7
- import { Input, useTranslation } from "@dxos/react-ui";
8
- import { ControlGroup, ControlItemInput, ControlPage, ControlSection } from "@dxos/react-ui-form";
9
- var PresenterSettings = ({ settings, onSettingsChange }) => {
10
- const { t } = useTranslation(meta.id);
11
- return /* @__PURE__ */ React.createElement(ControlPage, null, /* @__PURE__ */ React.createElement(ControlSection, {
12
- title: t("settings title", {
13
- ns: meta.id
14
- })
15
- }, /* @__PURE__ */ React.createElement(ControlGroup, null, /* @__PURE__ */ React.createElement(ControlItemInput, {
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/components/index.ts
27
- import { lazy } from "react";
28
- var MarkdownSlide = lazy(() => import("./MarkdownSlide-GIYJABHE.mjs"));
29
- var DocumentPresenterContainer = lazy(() => import("./DocumentPresenterContainer-74M6XAAI.mjs"));
30
- var CollectionPresenterContainer = lazy(() => import("./CollectionPresenterContainer-IHDZWP3U.mjs"));
31
-
32
- export {
33
- PresenterSettings,
34
- MarkdownSlide,
35
- DocumentPresenterContainer,
36
- CollectionPresenterContainer
37
- };
38
- //# sourceMappingURL=chunk-5MC4V23G.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/PresenterSettings.tsx", "../../../src/components/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Input, useTranslation } from '@dxos/react-ui';\nimport { ControlGroup, ControlItemInput, ControlPage, ControlSection } 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 <ControlPage>\n <ControlSection title={t('settings title', { ns: meta.id })}>\n <ControlGroup>\n <ControlItemInput title={t('present collections label')}>\n <Input.Switch\n checked={settings.presentCollections}\n onCheckedChange={(checked) => onSettingsChange((s) => ({ ...s, presentCollections: !!checked }))}\n />\n </ControlItemInput>\n </ControlGroup>\n </ControlSection>\n </ControlPage>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\n\nexport * from './PresenterSettings';\n\nexport const MarkdownSlide = lazy(() => import('./MarkdownSlide'));\nexport const DocumentPresenterContainer = lazy(() => import('./DocumentPresenterContainer'));\nexport const CollectionPresenterContainer = lazy(() => import('./CollectionPresenterContainer'));\n"],
5
- "mappings": ";;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,OAAOC,sBAAsB;AACtC,SAASC,cAAcC,kBAAkBC,aAAaC,sBAAsB;AAUrE,IAAMC,oBAAoB,CAAC,EAAEC,UAAUC,iBAAgB,MAAmC;AAC/F,QAAM,EAAEC,EAAC,IAAKC,eAAeC,KAAKC,EAAE;AAEpC,SACE,sBAAA,cAACC,aAAAA,MACC,sBAAA,cAACC,gBAAAA;IAAeC,OAAON,EAAE,kBAAkB;MAAEO,IAAIL,KAAKC;IAAG,CAAA;KACvD,sBAAA,cAACK,cAAAA,MACC,sBAAA,cAACC,kBAAAA;IAAiBH,OAAON,EAAE,2BAAA;KACzB,sBAAA,cAACU,MAAMC,QAAM;IACXC,SAASd,SAASe;IAClBC,iBAAiB,CAACF,YAAYb,iBAAiB,CAACgB,OAAO;MAAE,GAAGA;MAAGF,oBAAoB,CAAC,CAACD;IAAQ,EAAA;;AAO3G;;;AC9BA,SAASI,YAAY;AAId,IAAMC,gBAAgBC,KAAK,MAAM,OAAO,8BAAA,CAAA;AACxC,IAAMC,6BAA6BD,KAAK,MAAM,OAAO,2CAAA,CAAA;AACrD,IAAME,+BAA+BF,KAAK,MAAM,OAAO,6CAAA,CAAA;",
6
- "names": ["React", "Input", "useTranslation", "ControlGroup", "ControlItemInput", "ControlPage", "ControlSection", "PresenterSettings", "settings", "onSettingsChange", "t", "useTranslation", "meta", "id", "ControlPage", "ControlSection", "title", "ns", "ControlGroup", "ControlItemInput", "Input", "Switch", "checked", "presentCollections", "onCheckedChange", "s", "lazy", "MarkdownSlide", "lazy", "DocumentPresenterContainer", "CollectionPresenterContainer"]
7
- }
@@ -1,41 +0,0 @@
1
- // src/useExitPresenter.ts
2
- import { useAtomValue } from "@effect-atom/atom-react";
3
- import { useCallback, useMemo } from "react";
4
- import { Common } from "@dxos/app-framework";
5
- import { useCapability, useOperationInvoker } from "@dxos/app-framework/react";
6
- import { Obj } from "@dxos/echo";
7
- import { DeckCapabilities } from "@dxos/plugin-deck";
8
- import { DeckOperation } from "@dxos/plugin-deck/types";
9
- var useExitPresenter = (object) => {
10
- const { invokePromise } = useOperationInvoker();
11
- const stateAtom = useCapability(DeckCapabilities.State);
12
- const state = useAtomValue(stateAtom);
13
- const deck = useMemo(() => state.decks[state.activeDeck], [
14
- state.decks,
15
- state.activeDeck
16
- ]);
17
- return useCallback(() => {
18
- const objectId = Obj.getDXN(object).toString();
19
- if (deck?.fullscreen) {
20
- void invokePromise(DeckOperation.Adjust, {
21
- type: "solo--fullscreen",
22
- id: objectId
23
- });
24
- }
25
- return invokePromise(Common.LayoutOperation.Open, {
26
- subject: [
27
- objectId
28
- ],
29
- workspace: Obj.getDatabase(object)?.spaceId
30
- });
31
- }, [
32
- invokePromise,
33
- object,
34
- deck
35
- ]);
36
- };
37
-
38
- export {
39
- useExitPresenter
40
- };
41
- //# sourceMappingURL=chunk-GM4KOXJY.mjs.map
@@ -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 { Common } from '@dxos/app-framework';\nimport { useCapability, useOperationInvoker } from '@dxos/app-framework/react';\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(Common.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,cAAc;AACvB,SAASC,eAAeC,2BAA2B;AACnD,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,OAAOC,gBAAgBC,MAAM;MAChDC,SAAS;QAACZ;;MACVa,WAAWZ,IAAIa,YAAY5B,MAAAA,GAAS6B;IACtC,CAAA;EACF,GAAG;IAAC5B;IAAeD;IAAQS;GAAK;AAClC;",
6
- "names": ["useAtomValue", "useCallback", "useMemo", "Common", "useCapability", "useOperationInvoker", "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", "Common", "LayoutOperation", "Open", "subject", "workspace", "getDatabase", "spaceId"]
7
- }
@@ -1,18 +0,0 @@
1
- // src/meta.ts
2
- import { trim } from "@dxos/util";
3
- var meta = {
4
- id: "dxos.org/plugin/presenter",
5
- name: "Presenter",
6
- description: trim`
7
- Transform markdown documents into interactive presentation slideshows.
8
- Navigate between slides with keyboard controls and present content in full-screen mode.
9
- `,
10
- icon: "ph--presentation--regular",
11
- iconHue: "indigo",
12
- source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-presenter"
13
- };
14
-
15
- export {
16
- meta
17
- };
18
- //# sourceMappingURL=chunk-VQVZVXPJ.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/meta.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Plugin } from '@dxos/app-framework';\nimport { trim } from '@dxos/util';\n\nexport const meta: Plugin.Meta = {\n id: 'dxos.org/plugin/presenter',\n name: 'Presenter',\n description: trim`\n Transform markdown documents into interactive presentation slideshows.\n Navigate between slides with keyboard controls and present content in full-screen mode.\n `,\n icon: 'ph--presentation--regular',\n iconHue: 'indigo',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-presenter',\n};\n"],
5
- "mappings": ";AAKA,SAASA,YAAY;AAEd,IAAMC,OAAoB;EAC/BC,IAAI;EACJC,MAAM;EACNC,aAAaC;;;;EAIbC,MAAM;EACNC,SAAS;EACTC,QAAQ;AACV;",
6
- "names": ["trim", "meta", "id", "name", "description", "trim", "icon", "iconHue", "source"]
7
- }
@@ -1,63 +0,0 @@
1
- import {
2
- CollectionPresenterContainer,
3
- DocumentPresenterContainer,
4
- MarkdownSlide,
5
- PresenterSettings
6
- } from "./chunk-5MC4V23G.mjs";
7
- import {
8
- meta
9
- } from "./chunk-VQVZVXPJ.mjs";
10
-
11
- // src/capabilities/react-surface/react-surface.tsx
12
- import * as Effect from "effect/Effect";
13
- import React from "react";
14
- import { Capability, Common } from "@dxos/app-framework";
15
- import { useSettingsState } from "@dxos/app-framework/react";
16
- import { Obj } from "@dxos/echo";
17
- import { Markdown } from "@dxos/plugin-markdown/types";
18
- import { Collection } from "@dxos/schema";
19
- var react_surface_default = Capability.makeModule(() => Effect.succeed(Capability.contributes(Common.Capability.ReactSurface, [
20
- Common.createSurface({
21
- id: `${meta.id}/document`,
22
- role: "article",
23
- position: "hoist",
24
- 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),
25
- component: ({ data }) => /* @__PURE__ */ React.createElement(DocumentPresenterContainer, {
26
- document: data.subject.object
27
- })
28
- }),
29
- Common.createSurface({
30
- id: `${meta.id}/collection`,
31
- role: "article",
32
- position: "hoist",
33
- 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),
34
- component: ({ role, data }) => /* @__PURE__ */ React.createElement(CollectionPresenterContainer, {
35
- role,
36
- subject: data.subject.object
37
- })
38
- }),
39
- Common.createSurface({
40
- id: `${meta.id}/slide`,
41
- role: "slide",
42
- filter: (data) => Obj.instanceOf(Markdown.Document, data.subject),
43
- component: ({ data }) => /* @__PURE__ */ React.createElement(MarkdownSlide, {
44
- document: data.subject
45
- })
46
- }),
47
- Common.createSurface({
48
- id: `${meta.id}/plugin-settings`,
49
- role: "article",
50
- filter: (data) => Common.Capability.isSettings(data.subject) && data.subject.prefix === meta.id,
51
- component: ({ data: { subject } }) => {
52
- const { settings, updateSettings } = useSettingsState(subject.atom);
53
- return /* @__PURE__ */ React.createElement(PresenterSettings, {
54
- settings,
55
- onSettingsChange: updateSettings
56
- });
57
- }
58
- })
59
- ])));
60
- export {
61
- react_surface_default as default
62
- };
63
- //# sourceMappingURL=react-surface-2VP2M4Z7.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/react-surface/react-surface.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport { Capability, Common } from '@dxos/app-framework';\nimport { useSettingsState } from '@dxos/app-framework/react';\nimport { Obj } from '@dxos/echo';\nimport { Markdown } from '@dxos/plugin-markdown/types';\nimport { Collection } from '@dxos/schema';\n\nimport {\n CollectionPresenterContainer,\n DocumentPresenterContainer,\n MarkdownSlide,\n PresenterSettings,\n} from '../../components';\nimport { meta } from '../../meta';\nimport { type PresenterSettingsProps } from '../../types';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contributes(Common.Capability.ReactSurface, [\n Common.createSurface({\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 Common.createSurface({\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 Common.createSurface({\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 Common.createSurface({\n id: `${meta.id}/plugin-settings`,\n role: 'article',\n filter: (data): data is { subject: Common.Capability.Settings } =>\n Common.Capability.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"],
5
- "mappings": ";;;;;;;;;;;AAIA,YAAYA,YAAY;AACxB,OAAOC,WAAW;AAElB,SAASC,YAAYC,cAAc;AACnC,SAASC,wBAAwB;AACjC,SAASC,WAAW;AACpB,SAASC,gBAAgB;AACzB,SAASC,kBAAkB;AAW3B,IAAA,wBAAeC,WAAWC,WAAW,MAC5BC,eACLF,WAAWG,YAAYC,OAAOJ,WAAWK,cAAc;EACrDD,OAAOE,cAAc;IACnBC,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;EACAf,OAAOE,cAAc;IACnBC,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;EACAf,OAAOE,cAAc;IACnBC,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;EACAT,OAAOE,cAAc;IACnBC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNE,QAAQ,CAACC,SACPR,OAAOJ,WAAW0B,WAAWd,KAAKC,OAAO,KAAKD,KAAKC,QAAQc,WAAWnB,KAAKD;IAC7Ea,WAAW,CAAC,EAAER,MAAM,EAAEC,QAAO,EAAE,MAAE;AAC/B,YAAM,EAAEe,UAAUC,eAAc,IAAKC,iBAAyCjB,QAAQkB,IAAI;AAC1F,aAAO,sBAAA,cAACC,mBAAAA;QAAkBJ;QAAoBK,kBAAkBJ;;IAClE;EACF,CAAA;CACD,CAAA,CAAA;",
6
- "names": ["Effect", "React", "Capability", "Common", "useSettingsState", "Obj", "Markdown", "Collection", "Capability", "makeModule", "succeed", "contributes", "Common", "ReactSurface", "createSurface", "id", "meta", "role", "position", "filter", "data", "subject", "type", "Obj", "instanceOf", "Markdown", "Document", "object", "component", "DocumentPresenterContainer", "document", "Collection", "CollectionPresenterContainer", "MarkdownSlide", "isSettings", "prefix", "settings", "updateSettings", "useSettingsState", "atom", "PresenterSettings", "onSettingsChange"]
7
- }
@@ -1,31 +0,0 @@
1
- import {
2
- PresenterCapabilities,
3
- PresenterSettingsSchema
4
- } from "./chunk-4PZXJXBO.mjs";
5
- import {
6
- meta
7
- } from "./chunk-VQVZVXPJ.mjs";
8
-
9
- // src/capabilities/settings/settings.ts
10
- import * as Effect from "effect/Effect";
11
- import { Capability, Common } from "@dxos/app-framework";
12
- import { createKvsStore } from "@dxos/effect";
13
- var settings_default = Capability.makeModule(() => Effect.sync(() => {
14
- const settingsAtom = createKvsStore({
15
- key: meta.id,
16
- schema: PresenterSettingsSchema,
17
- defaultValue: () => ({})
18
- });
19
- return [
20
- Capability.contributes(PresenterCapabilities.Settings, settingsAtom),
21
- Capability.contributes(Common.Capability.Settings, {
22
- prefix: meta.id,
23
- schema: PresenterSettingsSchema,
24
- atom: settingsAtom
25
- })
26
- ];
27
- }));
28
- export {
29
- settings_default as default
30
- };
31
- //# sourceMappingURL=settings-RDHXCCT4.mjs.map
@@ -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, Common } from '@dxos/app-framework';\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(Common.Capability.Settings, {\n prefix: meta.id,\n schema: PresenterSettingsSchema,\n atom: settingsAtom,\n }),\n ];\n }),\n);\n"],
5
- "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,YAAYC,cAAc;AACnC,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,OAAOd,WAAWa,UAAU;MACjDE,QAAQT,KAAKC;MACbC,QAAQC;MACRO,MAAMb;IACR,CAAA;;AAEJ,CAAA,CAAA;",
6
- "names": ["Effect", "Capability", "Common", "createKvsStore", "Capability", "makeModule", "sync", "settingsAtom", "createKvsStore", "key", "meta", "id", "schema", "PresenterSettingsSchema", "defaultValue", "contributes", "PresenterCapabilities", "Settings", "Common", "prefix", "atom"]
7
- }
@@ -1,6 +0,0 @@
1
- import * as Effect from 'effect/Effect';
2
- import { Capability } from '@dxos/app-framework';
3
- import { GraphBuilder } from '@dxos/plugin-graph';
4
- declare const _default: (props?: void | undefined) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<GraphBuilder.BuilderExtensions>>, never, Capability.Service>;
5
- export default _default;
6
- //# sourceMappingURL=app-graph-builder.d.ts.map
@@ -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,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAC;AAKzD,OAAO,EAAE,YAAY,EAA0B,MAAM,oBAAoB,CAAC;;AAa1E,wBA+EE"}
@@ -1,3 +0,0 @@
1
- import { Capability } from '@dxos/app-framework';
2
- export declare const AppGraphBuilder: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-graph").BuilderExtensions>>, Error>;
3
- //# sourceMappingURL=index.d.ts.map
@@ -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,3 +0,0 @@
1
- import { Capability } from '@dxos/app-framework';
2
- export declare const ReactSurface: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-framework/Common").Capability.ReactSurface>>, Error>;
3
- //# sourceMappingURL=index.d.ts.map
@@ -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,sJAAmE,CAAC"}
@@ -1,5 +0,0 @@
1
- import * as Effect from 'effect/Effect';
2
- import { Capability, Common } from '@dxos/app-framework';
3
- declare const _default: (props?: void | undefined) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<Common.Capability.ReactSurface>>, never, never>;
4
- export default _default;
5
- //# sourceMappingURL=react-surface.d.ts.map
@@ -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,UAAU,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;;AAezD,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-framework/Common").Capability.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;;;;uHAAmE,CAAC"}
@@ -1,9 +0,0 @@
1
- import * as Effect from 'effect/Effect';
2
- import { Capability, Common } from '@dxos/app-framework';
3
- declare const _default: (props?: void | undefined) => Effect.Effect<[Capability.Capability<Capability.InterfaceDef<import("@effect-atom/atom/Atom").Writable<{
4
- presentCollections?: boolean | undefined;
5
- }, {
6
- presentCollections?: boolean | undefined;
7
- }>>>, Capability.Capability<Capability.InterfaceDef<Common.Capability.Settings>>], never, never>;
8
- export default _default;
9
- //# sourceMappingURL=settings.d.ts.map
@@ -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,EAAE,MAAM,qBAAqB,CAAC;;;;;;AAMzD,wBAiBE"}
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- import { type SurfaceComponentProps } from '@dxos/app-framework/react';
3
- import { type Collection } from '@dxos/schema';
4
- type CollectionPresenterContainerProps = SurfaceComponentProps<Collection.Collection>;
5
- declare const CollectionPresenterContainer: ({ role, subject: collection }: CollectionPresenterContainerProps) => React.JSX.Element;
6
- export default CollectionPresenterContainer;
7
- //# sourceMappingURL=CollectionPresenterContainer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CollectionPresenterContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/CollectionPresenterContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAW,KAAK,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAEhF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAO/C,KAAK,iCAAiC,GAAG,qBAAqB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAEtF,QAAA,MAAM,4BAA4B,GAAI,+BAA+B,iCAAiC,sBAuBrG,CAAC;AAEF,eAAe,4BAA4B,CAAC"}
@@ -1,7 +0,0 @@
1
- import { type FC } from 'react';
2
- import { type Markdown } from '@dxos/plugin-markdown/types';
3
- declare const DocumentPresenterContainer: FC<{
4
- document: Markdown.Document;
5
- }>;
6
- export default DocumentPresenterContainer;
7
- //# sourceMappingURL=DocumentPresenterContainer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocumentPresenterContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/DocumentPresenterContainer.tsx"],"names":[],"mappings":"AAGA,OAAc,EAAE,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAO5D,QAAA,MAAM,0BAA0B,EAAE,EAAE,CAAC;IAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAA;CAAE,CAQnE,CAAC;AAEF,eAAe,0BAA0B,CAAC"}
@@ -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 Markdown } from '@dxos/plugin-markdown/types';
3
- type MarkdownSlideProps = {
4
- document: Markdown.Document;
5
- };
6
- declare const MarkdownSlide: ({ document }: MarkdownSlideProps) => React.JSX.Element | null;
7
- export default MarkdownSlide;
8
- //# sourceMappingURL=MarkdownSlide.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MarkdownSlide.d.ts","sourceRoot":"","sources":["../../../../src/components/MarkdownSlide.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAI5D,KAAK,kBAAkB,GAAG;IACxB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC;CAC7B,CAAC;AAEF,QAAA,MAAM,aAAa,GAAI,cAAc,kBAAkB,6BAWtD,CAAC;AAEF,eAAe,aAAa,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/components/PresenterSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAEvD,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"}