@dxos/plugin-markdown 0.8.2 → 0.8.3-main.7f5a14c
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/{MarkdownContainer-5IEINNQB.mjs → MarkdownContainer-3KTC7Q4C.mjs} +132 -18
- package/dist/lib/browser/MarkdownContainer-3KTC7Q4C.mjs.map +7 -0
- package/dist/lib/browser/{MarkdownPreview-YW5CS3ID.mjs → MarkdownPreview-F4PYFW5L.mjs} +15 -22
- package/dist/lib/browser/MarkdownPreview-F4PYFW5L.mjs.map +7 -0
- package/dist/lib/browser/{anchor-sort-VS4OZVPP.mjs → anchor-sort-BMAN2ABT.mjs} +4 -4
- package/dist/lib/browser/anchor-sort-BMAN2ABT.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-serializer-V6RLEHVY.mjs → app-graph-serializer-FLQI6GFL.mjs} +3 -3
- package/dist/lib/browser/{artifact-definition-5NAODQLG.mjs → artifact-definition-FQ2R6KPT.mjs} +6 -6
- package/dist/lib/browser/artifact-definition-FQ2R6KPT.mjs.map +7 -0
- package/dist/lib/browser/{chunk-C5RABVIX.mjs → chunk-CX5GYZYO.mjs} +2 -2
- package/dist/lib/browser/{chunk-ACAID3XF.mjs → chunk-LCMXUTQB.mjs} +7 -7
- package/dist/lib/browser/{chunk-77NGW7EO.mjs → chunk-LXSRQPEP.mjs} +9 -9
- package/dist/lib/browser/chunk-LXSRQPEP.mjs.map +7 -0
- package/dist/lib/browser/{chunk-ECSM56YC.mjs → chunk-N2D26K6W.mjs} +4 -5
- package/dist/lib/browser/chunk-N2D26K6W.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +7 -8
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-4GDYST4Y.mjs → intent-resolver-6ZOABX2J.mjs} +6 -7
- package/dist/lib/browser/intent-resolver-6ZOABX2J.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-QE4SKXBT.mjs → react-surface-RJQKYJJQ.mjs} +8 -8
- package/dist/lib/browser/react-surface-RJQKYJJQ.mjs.map +7 -0
- package/dist/lib/browser/{settings-W5CK4PXP.mjs → settings-PLH54VC7.mjs} +4 -4
- package/dist/lib/browser/settings-PLH54VC7.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +1 -1
- package/dist/lib/node/{MarkdownContainer-LSNNPNRB.cjs → MarkdownContainer-NG4H6AZJ.cjs} +181 -67
- package/dist/lib/node/MarkdownContainer-NG4H6AZJ.cjs.map +7 -0
- package/dist/lib/node/{MarkdownPreview-G34HSQEB.cjs → MarkdownPreview-GCJJCXY6.cjs} +24 -31
- package/dist/lib/node/MarkdownPreview-GCJJCXY6.cjs.map +7 -0
- package/dist/lib/node/{anchor-sort-NHVF23EU.cjs → anchor-sort-V3T4SFFI.cjs} +12 -12
- package/dist/lib/node/anchor-sort-V3T4SFFI.cjs.map +7 -0
- package/dist/lib/node/{app-graph-serializer-CLALIYN3.cjs → app-graph-serializer-BZPM7HHJ.cjs} +9 -9
- package/dist/lib/node/{artifact-definition-VEAHK7BX.cjs → artifact-definition-U27MH5SC.cjs} +16 -16
- package/dist/lib/node/artifact-definition-U27MH5SC.cjs.map +7 -0
- package/dist/lib/node/{chunk-RQS4KBMG.cjs → chunk-3HHV4MM6.cjs} +6 -7
- package/dist/lib/node/chunk-3HHV4MM6.cjs.map +7 -0
- package/dist/lib/node/{chunk-C4HR7UXE.cjs → chunk-4DYNEQG3.cjs} +10 -10
- package/dist/lib/node/{chunk-G7RBJX22.cjs → chunk-CJLYFGPI.cjs} +12 -12
- package/dist/lib/node/chunk-CJLYFGPI.cjs.map +7 -0
- package/dist/lib/node/{chunk-ZDTL47I7.cjs → chunk-SYEFGLXN.cjs} +6 -6
- package/dist/lib/node/index.cjs +26 -27
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/{intent-resolver-AUZVK3NZ.cjs → intent-resolver-OEFLRNEJ.cjs} +14 -15
- package/dist/lib/node/intent-resolver-OEFLRNEJ.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-surface-WJZTEBYO.cjs → react-surface-5RKEWAXS.cjs} +15 -15
- package/dist/lib/node/react-surface-5RKEWAXS.cjs.map +7 -0
- package/dist/lib/node/{settings-IRKU3WPM.cjs → settings-E3NUTXJ4.cjs} +7 -7
- package/dist/lib/node/settings-E3NUTXJ4.cjs.map +7 -0
- package/dist/lib/node/types/index.cjs +7 -7
- package/dist/lib/node/types/index.cjs.map +1 -1
- package/dist/lib/node-esm/{MarkdownContainer-UZSLXMWO.mjs → MarkdownContainer-DZPXCA6J.mjs} +132 -18
- package/dist/lib/node-esm/MarkdownContainer-DZPXCA6J.mjs.map +7 -0
- package/dist/lib/node-esm/{MarkdownPreview-TCV7BI32.mjs → MarkdownPreview-KFDRV4GC.mjs} +15 -22
- package/dist/lib/node-esm/MarkdownPreview-KFDRV4GC.mjs.map +7 -0
- package/dist/lib/node-esm/{anchor-sort-G2HLCYFK.mjs → anchor-sort-BXL7BE67.mjs} +4 -4
- package/dist/lib/node-esm/anchor-sort-BXL7BE67.mjs.map +7 -0
- package/dist/lib/node-esm/{app-graph-serializer-C3RNTQGM.mjs → app-graph-serializer-EBH54X6Z.mjs} +3 -3
- package/dist/lib/node-esm/{artifact-definition-7TIJW2CO.mjs → artifact-definition-NQOHB6S5.mjs} +6 -6
- package/dist/lib/node-esm/artifact-definition-NQOHB6S5.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-6RPARLIK.mjs → chunk-K26TX5V4.mjs} +9 -9
- package/dist/lib/node-esm/chunk-K26TX5V4.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-TCFJNUAE.mjs → chunk-Q7WUBLL3.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-NCMPVEXO.mjs → chunk-T2Y2BT53.mjs} +4 -5
- package/dist/lib/node-esm/chunk-T2Y2BT53.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-EIUTPXGL.mjs → chunk-WANCCPU7.mjs} +7 -7
- package/dist/lib/node-esm/index.mjs +7 -8
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-FTNXUNI2.mjs → intent-resolver-CLMSVF2K.mjs} +6 -7
- package/dist/lib/node-esm/intent-resolver-CLMSVF2K.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-XNM3YDFB.mjs → react-surface-Z3DX37JV.mjs} +8 -8
- package/dist/lib/node-esm/react-surface-Z3DX37JV.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-MK7D7LHQ.mjs → settings-SIY33P3F.mjs} +4 -4
- package/dist/lib/node-esm/settings-SIY33P3F.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +1 -1
- package/dist/types/src/MarkdownPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownContainer.d.ts +1 -1
- package/dist/types/src/components/MarkdownContainer.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +4 -2
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts +1 -1
- package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts +2 -6
- package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts.map +1 -1
- package/dist/types/src/components/Suggestions.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +1 -1
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/types/schema.d.ts.map +1 -1
- package/dist/types/src/util.d.ts.map +1 -1
- package/package.json +38 -39
- package/src/MarkdownPlugin.tsx +3 -5
- package/src/capabilities/anchor-sort.ts +2 -2
- package/src/capabilities/artifact-definition.ts +3 -3
- package/src/capabilities/intent-resolver.ts +4 -5
- package/src/capabilities/react-surface.tsx +4 -4
- package/src/capabilities/settings.ts +2 -2
- package/src/components/MarkdownContainer.tsx +61 -7
- package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +3 -3
- package/src/components/MarkdownEditor/MarkdownEditor.tsx +196 -144
- package/src/components/MarkdownPreview/MarkdownPreview.stories.tsx +8 -7
- package/src/components/MarkdownPreview/MarkdownPreview.tsx +14 -28
- package/src/components/Suggestions.stories.tsx +8 -9
- package/src/components/Toolbar.stories.tsx +3 -3
- package/src/types/schema.ts +2 -3
- package/src/util.tsx +5 -7
- package/dist/lib/browser/MarkdownContainer-5IEINNQB.mjs.map +0 -7
- package/dist/lib/browser/MarkdownPreview-YW5CS3ID.mjs.map +0 -7
- package/dist/lib/browser/anchor-sort-VS4OZVPP.mjs.map +0 -7
- package/dist/lib/browser/artifact-definition-5NAODQLG.mjs.map +0 -7
- package/dist/lib/browser/chunk-77NGW7EO.mjs.map +0 -7
- package/dist/lib/browser/chunk-ECSM56YC.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-4GDYST4Y.mjs.map +0 -7
- package/dist/lib/browser/react-surface-QE4SKXBT.mjs.map +0 -7
- package/dist/lib/browser/settings-W5CK4PXP.mjs.map +0 -7
- package/dist/lib/node/MarkdownContainer-LSNNPNRB.cjs.map +0 -7
- package/dist/lib/node/MarkdownPreview-G34HSQEB.cjs.map +0 -7
- package/dist/lib/node/anchor-sort-NHVF23EU.cjs.map +0 -7
- package/dist/lib/node/artifact-definition-VEAHK7BX.cjs.map +0 -7
- package/dist/lib/node/chunk-G7RBJX22.cjs.map +0 -7
- package/dist/lib/node/chunk-RQS4KBMG.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-AUZVK3NZ.cjs.map +0 -7
- package/dist/lib/node/react-surface-WJZTEBYO.cjs.map +0 -7
- package/dist/lib/node/settings-IRKU3WPM.cjs.map +0 -7
- package/dist/lib/node-esm/MarkdownContainer-UZSLXMWO.mjs.map +0 -7
- package/dist/lib/node-esm/MarkdownPreview-TCV7BI32.mjs.map +0 -7
- package/dist/lib/node-esm/anchor-sort-G2HLCYFK.mjs.map +0 -7
- package/dist/lib/node-esm/artifact-definition-7TIJW2CO.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-6RPARLIK.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-NCMPVEXO.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-FTNXUNI2.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-XNM3YDFB.mjs.map +0 -7
- package/dist/lib/node-esm/settings-MK7D7LHQ.mjs.map +0 -7
- /package/dist/lib/browser/{app-graph-serializer-V6RLEHVY.mjs.map → app-graph-serializer-FLQI6GFL.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-C5RABVIX.mjs.map → chunk-CX5GYZYO.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-ACAID3XF.mjs.map → chunk-LCMXUTQB.mjs.map} +0 -0
- /package/dist/lib/node/{app-graph-serializer-CLALIYN3.cjs.map → app-graph-serializer-BZPM7HHJ.cjs.map} +0 -0
- /package/dist/lib/node/{chunk-C4HR7UXE.cjs.map → chunk-4DYNEQG3.cjs.map} +0 -0
- /package/dist/lib/node/{chunk-ZDTL47I7.cjs.map → chunk-SYEFGLXN.cjs.map} +0 -0
- /package/dist/lib/node-esm/{app-graph-serializer-C3RNTQGM.mjs.map → app-graph-serializer-EBH54X6Z.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-TCFJNUAE.mjs.map → chunk-Q7WUBLL3.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-EIUTPXGL.mjs.map → chunk-WANCCPU7.mjs.map} +0 -0
|
@@ -26,40 +26,39 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var MarkdownPreview_GCJJCXY6_exports = {};
|
|
30
|
+
__export(MarkdownPreview_GCJJCXY6_exports, {
|
|
31
31
|
MarkdownPreview: () => MarkdownPreview,
|
|
32
32
|
default: () => MarkdownPreview_default
|
|
33
33
|
});
|
|
34
|
-
module.exports = __toCommonJS(
|
|
35
|
-
var
|
|
36
|
-
var
|
|
34
|
+
module.exports = __toCommonJS(MarkdownPreview_GCJJCXY6_exports);
|
|
35
|
+
var import_chunk_CJLYFGPI = require("./chunk-CJLYFGPI.cjs");
|
|
36
|
+
var import_chunk_3HHV4MM6 = require("./chunk-3HHV4MM6.cjs");
|
|
37
37
|
var import_chunk_ZU5OIHCY = require("./chunk-ZU5OIHCY.cjs");
|
|
38
38
|
var import_tracking = require("@preact-signals/safe-react/tracking");
|
|
39
39
|
var import_effect = require("effect");
|
|
40
40
|
var import_react = __toESM(require("react"));
|
|
41
41
|
var import_app_framework = require("@dxos/app-framework");
|
|
42
|
-
var
|
|
43
|
-
var
|
|
44
|
-
var import_echo = require("@dxos/react-client/echo");
|
|
42
|
+
var import_echo = require("@dxos/echo");
|
|
43
|
+
var import_echo2 = require("@dxos/react-client/echo");
|
|
45
44
|
var import_react_ui = require("@dxos/react-ui");
|
|
46
|
-
var
|
|
45
|
+
var import_react_ui_stack = require("@dxos/react-ui-stack");
|
|
47
46
|
var import_schema = require("@dxos/schema");
|
|
48
47
|
var getTitle = (subject, fallback) => {
|
|
49
|
-
if (
|
|
50
|
-
return subject.name ?? subject.fallbackName ?? (0,
|
|
51
|
-
} else if (
|
|
52
|
-
return (0,
|
|
48
|
+
if (import_echo.Obj.instanceOf(import_chunk_3HHV4MM6.DocumentType, subject)) {
|
|
49
|
+
return subject.name ?? subject.fallbackName ?? (0, import_chunk_CJLYFGPI.getFallbackName)(subject.content?.target?.content ?? fallback);
|
|
50
|
+
} else if (import_echo.Obj.instanceOf(import_schema.DataType.Text, subject)) {
|
|
51
|
+
return (0, import_chunk_CJLYFGPI.getFallbackName)(subject.content);
|
|
53
52
|
}
|
|
54
53
|
};
|
|
55
54
|
var getSnippet = (subject, fallback) => {
|
|
56
|
-
if (
|
|
57
|
-
return (0,
|
|
58
|
-
} else if (
|
|
59
|
-
return (0,
|
|
55
|
+
if (import_echo.Obj.instanceOf(import_chunk_3HHV4MM6.DocumentType, subject)) {
|
|
56
|
+
return (0, import_chunk_CJLYFGPI.getAbstract)(subject.content?.target?.content ?? fallback);
|
|
57
|
+
} else if (import_echo.Obj.instanceOf(import_schema.DataType.Text, subject)) {
|
|
58
|
+
return (0, import_chunk_CJLYFGPI.getAbstract)(subject.content);
|
|
60
59
|
}
|
|
61
60
|
};
|
|
62
|
-
var MarkdownPreview = ({
|
|
61
|
+
var MarkdownPreview = ({ subject, role }) => {
|
|
63
62
|
var _effect = (0, import_tracking.useSignals)();
|
|
64
63
|
try {
|
|
65
64
|
const { dispatchPromise: dispatch } = (0, import_app_framework.useIntentDispatcher)();
|
|
@@ -75,23 +74,17 @@ var MarkdownPreview = ({ classNames, subject, role }) => {
|
|
|
75
74
|
}), (0, import_app_framework.chain)(import_app_framework.LayoutAction.Open, {
|
|
76
75
|
part: "main",
|
|
77
76
|
subject: [
|
|
78
|
-
(0,
|
|
77
|
+
(0, import_echo2.fullyQualifiedId)(subject)
|
|
79
78
|
]
|
|
80
79
|
}))), [
|
|
81
80
|
dispatch,
|
|
82
81
|
subject
|
|
83
82
|
]);
|
|
84
|
-
return /* @__PURE__ */ import_react.default.createElement(
|
|
85
|
-
role
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
}, getTitle(subject, t("fallback title"))), snippet && /* @__PURE__ */ import_react.default.createElement("p", {
|
|
90
|
-
className: (0, import_react_ui_theme.mx)(import_plugin_preview.previewProse, "line-clamp-3 break-words col-span-2")
|
|
91
|
-
}, snippet), /* @__PURE__ */ import_react.default.createElement("div", {
|
|
92
|
-
role: "none",
|
|
93
|
-
className: import_plugin_preview.previewChrome
|
|
94
|
-
}, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Button, {
|
|
83
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react_ui_stack.Card.Container, {
|
|
84
|
+
role
|
|
85
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_react_ui_stack.Card.Heading, null, getTitle(subject, t("fallback title"))), snippet && /* @__PURE__ */ import_react.default.createElement(import_react_ui_stack.Card.Text, {
|
|
86
|
+
classNames: "line-clamp-3 break-words col-span-2"
|
|
87
|
+
}, snippet), /* @__PURE__ */ import_react.default.createElement(import_react_ui_stack.Card.Chrome, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Button, {
|
|
95
88
|
onClick: handleNavigate
|
|
96
89
|
}, /* @__PURE__ */ import_react.default.createElement("span", {
|
|
97
90
|
className: "grow"
|
|
@@ -107,4 +100,4 @@ var MarkdownPreview_default = MarkdownPreview;
|
|
|
107
100
|
0 && (module.exports = {
|
|
108
101
|
MarkdownPreview
|
|
109
102
|
});
|
|
110
|
-
//# sourceMappingURL=MarkdownPreview-
|
|
103
|
+
//# sourceMappingURL=MarkdownPreview-GCJJCXY6.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/MarkdownPreview/MarkdownPreview.tsx", "../../../src/components/MarkdownPreview/index.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { pipe } from 'effect';\nimport React, { useCallback } from 'react';\n\nimport { chain, createIntent, LayoutAction, useIntentDispatcher } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { type PreviewProps } from '@dxos/plugin-preview';\nimport { fullyQualifiedId } from '@dxos/react-client/echo';\nimport { Button, Icon, useTranslation } from '@dxos/react-ui';\nimport { Card } from '@dxos/react-ui-stack';\nimport { DataType } from '@dxos/schema';\n\nimport { MARKDOWN_PLUGIN } from '../../meta';\nimport { DocumentType } from '../../types';\nimport { getAbstract, getFallbackName } from '../../util';\n\n// TODO(burdon): Factor out.\nconst getTitle = (subject: DocumentType | DataType.Text, fallback: string) => {\n if (Obj.instanceOf(DocumentType, subject)) {\n return subject.name ?? subject.fallbackName ?? getFallbackName(subject.content?.target?.content ?? fallback);\n } else if (Obj.instanceOf(DataType.Text, subject)) {\n return getFallbackName(subject.content);\n }\n};\n\n// TODO(burdon): Factor out.\nconst getSnippet = (subject: DocumentType | DataType.Text, fallback: string) => {\n if (Obj.instanceOf(DocumentType, subject)) {\n return getAbstract(subject.content?.target?.content ?? fallback);\n } else if (Obj.instanceOf(DataType.Text, subject)) {\n return getAbstract(subject.content);\n }\n};\n\nexport const MarkdownPreview = ({ subject, role }: PreviewProps<DocumentType | DataType.Text>) => {\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const { t } = useTranslation(MARKDOWN_PLUGIN);\n const snippet = getSnippet(subject, t('fallback abstract'));\n\n // TODO(wittjosiah): Factor out so this component isn't dependent on the app framework.\n const handleNavigate = useCallback(\n () =>\n dispatch(\n pipe(\n createIntent(LayoutAction.UpdatePopover, {\n part: 'popover',\n subject: null,\n options: { state: false, anchorId: '' },\n }),\n chain(LayoutAction.Open, { part: 'main', subject: [fullyQualifiedId(subject)] }),\n ),\n ),\n [dispatch, subject],\n );\n\n return (\n <Card.Container role={role}>\n <Card.Heading>{getTitle(subject, t('fallback title'))}</Card.Heading>\n {snippet && <Card.Text classNames='line-clamp-3 break-words col-span-2'>{snippet}</Card.Text>}\n <Card.Chrome>\n <Button onClick={handleNavigate}>\n <span className='grow'>{t('navigate to document label')}</span>\n <Icon icon='ph--arrow-right--regular' />\n </Button>\n </Card.Chrome>\n </Card.Container>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { MarkdownPreview } from './MarkdownPreview';\n\nexport * from './MarkdownPreview';\n\nexport default MarkdownPreview;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,oBAAqB;AACrB,mBAAmC;AAEnC,2BAAuE;AACvE,kBAAoB;AAEpB,IAAAA,eAAiC;AACjC,sBAA6C;AAC7C,4BAAqB;AACrB,oBAAyB;AAOzB,IAAMC,WAAW,CAACC,SAAuCC,aAAAA;AACvD,MAAIC,gBAAIC,WAAWC,oCAAcJ,OAAAA,GAAU;AACzC,WAAOA,QAAQK,QAAQL,QAAQM,oBAAgBC,uCAAgBP,QAAQQ,SAASC,QAAQD,WAAWP,QAAAA;EACrG,WAAWC,gBAAIC,WAAWO,uBAASC,MAAMX,OAAAA,GAAU;AACjD,eAAOO,uCAAgBP,QAAQQ,OAAO;EACxC;AACF;AAGA,IAAMI,aAAa,CAACZ,SAAuCC,aAAAA;AACzD,MAAIC,gBAAIC,WAAWC,oCAAcJ,OAAAA,GAAU;AACzC,eAAOa,mCAAYb,QAAQQ,SAASC,QAAQD,WAAWP,QAAAA;EACzD,WAAWC,gBAAIC,WAAWO,uBAASC,MAAMX,OAAAA,GAAU;AACjD,eAAOa,mCAAYb,QAAQQ,OAAO;EACpC;AACF;AAEO,IAAMM,kBAAkB,CAAC,EAAEd,SAASe,KAAI,MAA8C;;;AAC3F,UAAM,EAAEC,iBAAiBC,SAAQ,QAAKC,0CAAAA;AACtC,UAAM,EAAEC,EAAC,QAAKC,gCAAeC,qCAAAA;AAC7B,UAAMC,UAAUV,WAAWZ,SAASmB,EAAE,mBAAA,CAAA;AAGtC,UAAMI,qBAAiBC,0BACrB,MACEP,aACEQ,wBACEC,mCAAaC,kCAAaC,eAAe;MACvCC,MAAM;MACN7B,SAAS;MACT8B,SAAS;QAAEC,OAAO;QAAOC,UAAU;MAAG;IACxC,CAAA,OACAC,4BAAMN,kCAAaO,MAAM;MAAEL,MAAM;MAAQ7B,SAAS;YAACmC,+BAAiBnC,OAAAA;;IAAU,CAAA,CAAA,CAAA,GAGpF;MAACiB;MAAUjB;KAAQ;AAGrB,WACE,6BAAAoC,QAAA,cAACC,2BAAKC,WAAS;MAACvB;OACd,6BAAAqB,QAAA,cAACC,2BAAKE,SAAO,MAAExC,SAASC,SAASmB,EAAE,gBAAA,CAAA,CAAA,GAClCG,WAAW,6BAAAc,QAAA,cAACC,2BAAK1B,MAAI;MAAC6B,YAAW;OAAuClB,OAAAA,GACzE,6BAAAc,QAAA,cAACC,2BAAKI,QAAM,MACV,6BAAAL,QAAA,cAACM,wBAAAA;MAAOC,SAASpB;OACf,6BAAAa,QAAA,cAACQ,QAAAA;MAAKC,WAAU;OAAQ1B,EAAE,4BAAA,CAAA,GAC1B,6BAAAiB,QAAA,cAACU,sBAAAA;MAAKC,MAAK;;;;;AAKrB;AC9DA,IAAA,0BAAejC;",
|
|
6
|
+
"names": ["import_echo", "getTitle", "subject", "fallback", "Obj", "instanceOf", "DocumentType", "name", "fallbackName", "getFallbackName", "content", "target", "DataType", "Text", "getSnippet", "getAbstract", "MarkdownPreview", "role", "dispatchPromise", "dispatch", "useIntentDispatcher", "t", "useTranslation", "MARKDOWN_PLUGIN", "snippet", "handleNavigate", "useCallback", "pipe", "createIntent", "LayoutAction", "UpdatePopover", "part", "options", "state", "anchorId", "chain", "Open", "fullyQualifiedId", "React", "Card", "Container", "Heading", "classNames", "Chrome", "Button", "onClick", "span", "className", "Icon", "icon"]
|
|
7
|
+
}
|
|
@@ -16,28 +16,28 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var anchor_sort_V3T4SFFI_exports = {};
|
|
20
|
+
__export(anchor_sort_V3T4SFFI_exports, {
|
|
21
21
|
default: () => anchor_sort_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
-
var
|
|
23
|
+
module.exports = __toCommonJS(anchor_sort_V3T4SFFI_exports);
|
|
24
|
+
var import_chunk_3HHV4MM6 = require("./chunk-3HHV4MM6.cjs");
|
|
25
25
|
var import_chunk_ZU5OIHCY = require("./chunk-ZU5OIHCY.cjs");
|
|
26
26
|
var import_app_framework = require("@dxos/app-framework");
|
|
27
|
-
var
|
|
28
|
-
var
|
|
27
|
+
var import_echo = require("@dxos/echo");
|
|
28
|
+
var import_echo2 = require("@dxos/react-client/echo");
|
|
29
29
|
var anchor_sort_default = () => (0, import_app_framework.contributes)(import_app_framework.Capabilities.AnchorSort, {
|
|
30
|
-
key:
|
|
30
|
+
key: import_echo.Type.getTypename(import_chunk_3HHV4MM6.DocumentType),
|
|
31
31
|
sort: (anchorA, anchorB) => {
|
|
32
|
-
const doc = (0,
|
|
33
|
-
const accessor = doc.content.target ? (0,
|
|
32
|
+
const doc = (0, import_echo2.getTarget)(anchorA);
|
|
33
|
+
const accessor = doc.content.target ? (0, import_echo2.createDocAccessor)(doc.content.target, [
|
|
34
34
|
"content"
|
|
35
35
|
]) : void 0;
|
|
36
|
-
if (doc !== (0,
|
|
36
|
+
if (doc !== (0, import_echo2.getTarget)(anchorB) || !accessor) {
|
|
37
37
|
return 0;
|
|
38
38
|
}
|
|
39
39
|
const getStartPosition = (cursor) => {
|
|
40
|
-
const range = cursor ? (0,
|
|
40
|
+
const range = cursor ? (0, import_echo2.getRangeFromCursor)(accessor, cursor) : void 0;
|
|
41
41
|
return range?.start ?? Number.MAX_SAFE_INTEGER;
|
|
42
42
|
};
|
|
43
43
|
const posA = getStartPosition(anchorA.anchor);
|
|
@@ -45,4 +45,4 @@ var anchor_sort_default = () => (0, import_app_framework.contributes)(import_app
|
|
|
45
45
|
return posA - posB;
|
|
46
46
|
}
|
|
47
47
|
});
|
|
48
|
-
//# sourceMappingURL=anchor-sort-
|
|
48
|
+
//# sourceMappingURL=anchor-sort-V3T4SFFI.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/anchor-sort.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes } from '@dxos/app-framework';\nimport { Type } from '@dxos/echo';\nimport { createDocAccessor, getRangeFromCursor, getTarget } from '@dxos/react-client/echo';\n\nimport { DocumentType } from '../types';\n\nexport default () =>\n contributes(Capabilities.AnchorSort, {\n key: Type.getTypename(DocumentType)!,\n sort: (anchorA, anchorB) => {\n const doc = getTarget(anchorA) as DocumentType;\n const accessor = doc.content.target ? createDocAccessor(doc.content.target, ['content']) : undefined;\n if (doc !== getTarget(anchorB) || !accessor) {\n return 0;\n }\n\n const getStartPosition = (cursor: string | undefined) => {\n const range = cursor ? getRangeFromCursor(accessor, cursor) : undefined;\n return range?.start ?? Number.MAX_SAFE_INTEGER;\n };\n\n const posA = getStartPosition(anchorA.anchor);\n const posB = getStartPosition(anchorB.anchor);\n return posA - posB;\n },\n });\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAA0C;AAC1C,kBAAqB;AACrB,IAAAA,eAAiE;AAIjE,IAAA,sBAAe,UACbC,kCAAYC,kCAAaC,YAAY;EACnCC,KAAKC,iBAAKC,YAAYC,kCAAAA;EACtBC,MAAM,CAACC,SAASC,YAAAA;AACd,UAAMC,UAAMC,wBAAUH,OAAAA;AACtB,UAAMI,WAAWF,IAAIG,QAAQC,aAASC,gCAAkBL,IAAIG,QAAQC,QAAQ;MAAC;KAAU,IAAIE;AAC3F,QAAIN,YAAQC,wBAAUF,OAAAA,KAAY,CAACG,UAAU;AAC3C,aAAO;IACT;AAEA,UAAMK,mBAAmB,CAACC,WAAAA;AACxB,YAAMC,QAAQD,aAASE,iCAAmBR,UAAUM,MAAAA,IAAUF;AAC9D,aAAOG,OAAOE,SAASC,OAAOC;IAChC;AAEA,UAAMC,OAAOP,iBAAiBT,QAAQiB,MAAM;AAC5C,UAAMC,OAAOT,iBAAiBR,QAAQgB,MAAM;AAC5C,WAAOD,OAAOE;EAChB;AACF,CAAA;",
|
|
6
|
+
"names": ["import_echo", "contributes", "Capabilities", "AnchorSort", "key", "Type", "getTypename", "DocumentType", "sort", "anchorA", "anchorB", "doc", "getTarget", "accessor", "content", "target", "createDocAccessor", "undefined", "getStartPosition", "cursor", "range", "getRangeFromCursor", "start", "Number", "MAX_SAFE_INTEGER", "posA", "anchor", "posB"]
|
|
7
|
+
}
|
package/dist/lib/node/{app-graph-serializer-CLALIYN3.cjs → app-graph-serializer-BZPM7HHJ.cjs}
RENAMED
|
@@ -16,13 +16,13 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var app_graph_serializer_BZPM7HHJ_exports = {};
|
|
20
|
+
__export(app_graph_serializer_BZPM7HHJ_exports, {
|
|
21
21
|
default: () => app_graph_serializer_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
-
var
|
|
25
|
-
var
|
|
23
|
+
module.exports = __toCommonJS(app_graph_serializer_BZPM7HHJ_exports);
|
|
24
|
+
var import_chunk_SYEFGLXN = require("./chunk-SYEFGLXN.cjs");
|
|
25
|
+
var import_chunk_3HHV4MM6 = require("./chunk-3HHV4MM6.cjs");
|
|
26
26
|
var import_chunk_ZU5OIHCY = require("./chunk-ZU5OIHCY.cjs");
|
|
27
27
|
var import_effect = require("effect");
|
|
28
28
|
var import_app_framework = require("@dxos/app-framework");
|
|
@@ -30,14 +30,14 @@ var import_types = require("@dxos/plugin-space/types");
|
|
|
30
30
|
var import_echo = require("@dxos/react-client/echo");
|
|
31
31
|
var app_graph_serializer_default = (context) => (0, import_app_framework.contributes)(import_app_framework.Capabilities.AppGraphSerializer, [
|
|
32
32
|
{
|
|
33
|
-
inputType:
|
|
33
|
+
inputType: import_chunk_3HHV4MM6.DocumentType.typename,
|
|
34
34
|
outputType: "text/markdown",
|
|
35
35
|
// Reconcile with metadata serializers.
|
|
36
36
|
serialize: async (node) => {
|
|
37
37
|
const doc = node.data;
|
|
38
38
|
const content = await doc.content.load();
|
|
39
39
|
return {
|
|
40
|
-
name: doc.name || doc.fallbackName ||
|
|
40
|
+
name: doc.name || doc.fallbackName || import_chunk_SYEFGLXN.translations_default[0]["en-US"][import_chunk_3HHV4MM6.DocumentType.typename]["object name placeholder"],
|
|
41
41
|
data: content.content,
|
|
42
42
|
type: "text/markdown"
|
|
43
43
|
};
|
|
@@ -49,7 +49,7 @@ var app_graph_serializer_default = (context) => (0, import_app_framework.contrib
|
|
|
49
49
|
return;
|
|
50
50
|
}
|
|
51
51
|
const { dispatchPromise: dispatch } = context.getCapability(import_app_framework.Capabilities.IntentDispatcher);
|
|
52
|
-
const result = await dispatch((0, import_effect.pipe)((0, import_app_framework.createIntent)(
|
|
52
|
+
const result = await dispatch((0, import_effect.pipe)((0, import_app_framework.createIntent)(import_chunk_3HHV4MM6.MarkdownAction.Create, {
|
|
53
53
|
spaceId: space.id,
|
|
54
54
|
name: data.name,
|
|
55
55
|
content: data.data
|
|
@@ -60,4 +60,4 @@ var app_graph_serializer_default = (context) => (0, import_app_framework.contrib
|
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
]);
|
|
63
|
-
//# sourceMappingURL=app-graph-serializer-
|
|
63
|
+
//# sourceMappingURL=app-graph-serializer-BZPM7HHJ.cjs.map
|
|
@@ -16,22 +16,22 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var artifact_definition_U27MH5SC_exports = {};
|
|
20
|
+
__export(artifact_definition_U27MH5SC_exports, {
|
|
21
21
|
default: () => artifact_definition_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
-
var
|
|
23
|
+
module.exports = __toCommonJS(artifact_definition_U27MH5SC_exports);
|
|
24
|
+
var import_chunk_3HHV4MM6 = require("./chunk-3HHV4MM6.cjs");
|
|
25
25
|
var import_chunk_ZU5OIHCY = require("./chunk-ZU5OIHCY.cjs");
|
|
26
26
|
var import_effect = require("effect");
|
|
27
27
|
var import_ai = require("@dxos/ai");
|
|
28
28
|
var import_app_framework = require("@dxos/app-framework");
|
|
29
29
|
var import_artifact = require("@dxos/artifact");
|
|
30
30
|
var import_assistant = require("@dxos/assistant");
|
|
31
|
-
var
|
|
31
|
+
var import_echo = require("@dxos/echo");
|
|
32
32
|
var import_invariant = require("@dxos/invariant");
|
|
33
33
|
var import_types = require("@dxos/plugin-space/types");
|
|
34
|
-
var
|
|
34
|
+
var import_echo2 = require("@dxos/react-client/echo");
|
|
35
35
|
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-markdown/src/capabilities/artifact-definition.ts";
|
|
36
36
|
var artifact_definition_default = () => {
|
|
37
37
|
const definition = (0, import_artifact.defineArtifact)({
|
|
@@ -42,7 +42,7 @@ var artifact_definition_default = () => {
|
|
|
42
42
|
- Use these tools to interact with documents, including listing available documents and retrieving their content.
|
|
43
43
|
- Documents are stored in Markdown format.
|
|
44
44
|
`,
|
|
45
|
-
schema:
|
|
45
|
+
schema: import_chunk_3HHV4MM6.DocumentType,
|
|
46
46
|
tools: [
|
|
47
47
|
(0, import_ai.createTool)(import_chunk_ZU5OIHCY.meta.id, {
|
|
48
48
|
name: "create",
|
|
@@ -75,7 +75,7 @@ var artifact_definition_default = () => {
|
|
|
75
75
|
"'No intent dispatcher'"
|
|
76
76
|
]
|
|
77
77
|
});
|
|
78
|
-
const intent = (0, import_effect.pipe)((0, import_app_framework.createIntent)(
|
|
78
|
+
const intent = (0, import_effect.pipe)((0, import_app_framework.createIntent)(import_chunk_3HHV4MM6.MarkdownAction.Create, {
|
|
79
79
|
spaceId: extensions.space.id,
|
|
80
80
|
name,
|
|
81
81
|
content
|
|
@@ -105,19 +105,19 @@ var artifact_definition_default = () => {
|
|
|
105
105
|
]
|
|
106
106
|
});
|
|
107
107
|
const space = extensions.space;
|
|
108
|
-
const { objects: documents } = await space.db.query(
|
|
108
|
+
const { objects: documents } = await space.db.query(import_echo2.Filter.type(import_chunk_3HHV4MM6.DocumentType)).run();
|
|
109
109
|
const documentInfo = documents.map((doc) => {
|
|
110
|
-
(0, import_invariant.invariant)(
|
|
110
|
+
(0, import_invariant.invariant)(import_echo.Obj.instanceOf(import_chunk_3HHV4MM6.DocumentType, doc), void 0, {
|
|
111
111
|
F: __dxlog_file,
|
|
112
112
|
L: 81,
|
|
113
113
|
S: void 0,
|
|
114
114
|
A: [
|
|
115
|
-
"
|
|
115
|
+
"Obj.instanceOf(DocumentType, doc)",
|
|
116
116
|
""
|
|
117
117
|
]
|
|
118
118
|
});
|
|
119
119
|
return {
|
|
120
|
-
id: (0,
|
|
120
|
+
id: (0, import_echo2.fullyQualifiedId)(doc),
|
|
121
121
|
name: doc.name || doc.fallbackName || "Unnamed Document"
|
|
122
122
|
};
|
|
123
123
|
});
|
|
@@ -141,11 +141,11 @@ var artifact_definition_default = () => {
|
|
|
141
141
|
"'No space'"
|
|
142
142
|
]
|
|
143
143
|
});
|
|
144
|
-
const document = await extensions.space.db.query(
|
|
145
|
-
(0, import_invariant.assertArgument)(
|
|
144
|
+
const document = await extensions.space.db.query(import_echo2.Filter.ids(import_artifact.ArtifactId.toDXN(id).toString())).first();
|
|
145
|
+
(0, import_invariant.assertArgument)(import_echo.Obj.instanceOf(import_chunk_3HHV4MM6.DocumentType, document), "Invalid type");
|
|
146
146
|
const { content } = await document.content?.load();
|
|
147
147
|
return import_ai.ToolResult.Success({
|
|
148
|
-
id: (0,
|
|
148
|
+
id: (0, import_echo2.fullyQualifiedId)(document),
|
|
149
149
|
name: document.name || document.fallbackName || "Unnamed Document",
|
|
150
150
|
content
|
|
151
151
|
});
|
|
@@ -155,4 +155,4 @@ var artifact_definition_default = () => {
|
|
|
155
155
|
});
|
|
156
156
|
return (0, import_app_framework.contributes)(import_app_framework.Capabilities.ArtifactDefinition, definition);
|
|
157
157
|
};
|
|
158
|
-
//# sourceMappingURL=artifact-definition-
|
|
158
|
+
//# sourceMappingURL=artifact-definition-U27MH5SC.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/artifact-definition.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { pipe, Schema } from 'effect';\n\nimport { createTool, ToolResult } from '@dxos/ai';\nimport { Capabilities, chain, contributes, createIntent, type PromiseIntentDispatcher } from '@dxos/app-framework';\nimport { ArtifactId, defineArtifact } from '@dxos/artifact';\nimport { createArtifactElement } from '@dxos/assistant';\nimport { Obj } from '@dxos/echo';\nimport { invariant, assertArgument } from '@dxos/invariant';\nimport { SpaceAction } from '@dxos/plugin-space/types';\nimport { Filter, fullyQualifiedId, type Space } from '@dxos/react-client/echo';\n\nimport { meta } from '../meta';\nimport { DocumentType, MarkdownAction } from '../types';\n\n// TODO(burdon): Factor out.\ndeclare global {\n interface ToolContextExtensions {\n space?: Space;\n dispatch?: PromiseIntentDispatcher;\n }\n}\n\nexport default () => {\n const definition = defineArtifact({\n id: `artifact:${meta.id}`,\n name: meta.name,\n instructions: `\n - The markdown plugin allows you to work with text documents in the current space.\n - Use these tools to interact with documents, including listing available documents and retrieving their content.\n - Documents are stored in Markdown format.\n `,\n schema: DocumentType,\n tools: [\n createTool(meta.id, {\n name: 'create',\n description: 'Create a new markdown document',\n caption: 'Creating document...',\n schema: Schema.Struct({\n name: Schema.optional(Schema.String).annotations({\n description: 'Optional name for the document.',\n }),\n content: Schema.String.annotations({\n description: 'The content of the document.',\n }),\n }),\n execute: async ({ name, content }, { extensions }) => {\n invariant(extensions?.space, 'No space');\n invariant(extensions?.dispatch, 'No intent dispatcher');\n\n const intent = pipe(\n createIntent(MarkdownAction.Create, {\n spaceId: extensions.space.id,\n name,\n content,\n }),\n chain(SpaceAction.AddObject, { target: extensions.space }),\n );\n\n const { data, error } = await extensions.dispatch(intent);\n if (!data || error) {\n return ToolResult.Error(error?.message ?? 'Failed to create document');\n }\n\n return ToolResult.Success(createArtifactElement(data.id));\n },\n }),\n createTool(meta.id, {\n name: 'list',\n description: 'List all markdown documents in the current space.',\n caption: 'Listing markdown documents...',\n schema: Schema.Struct({}),\n execute: async (_input, { extensions }) => {\n invariant(extensions?.space, 'No space');\n const space = extensions.space;\n const { objects: documents } = await space.db.query(Filter.type(DocumentType)).run();\n const documentInfo = documents.map((doc) => {\n invariant(Obj.instanceOf(DocumentType, doc));\n return {\n id: fullyQualifiedId(doc),\n name: doc.name || doc.fallbackName || 'Unnamed Document',\n // TODO(ZaymonFC): Include updatedAt?\n };\n });\n\n return ToolResult.Success(documentInfo);\n },\n }),\n createTool(meta.id, {\n name: 'inspect',\n description: 'Read the content of a markdown document.',\n caption: 'Inspecting markdown document...',\n schema: Schema.Struct({\n id: ArtifactId,\n }),\n execute: async ({ id }, { extensions }) => {\n invariant(extensions?.space, 'No space');\n const document = await extensions.space.db.query(Filter.ids(ArtifactId.toDXN(id).toString())).first();\n assertArgument(Obj.instanceOf(DocumentType, document), 'Invalid type');\n\n const { content } = await document.content?.load();\n return ToolResult.Success({\n id: fullyQualifiedId(document),\n name: document.name || document.fallbackName || 'Unnamed Document',\n content,\n });\n },\n }),\n ],\n });\n\n return contributes(Capabilities.ArtifactDefinition, definition);\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,oBAA6B;AAE7B,gBAAuC;AACvC,2BAA6F;AAC7F,sBAA2C;AAC3C,uBAAsC;AACtC,kBAAoB;AACpB,uBAA0C;AAC1C,mBAA4B;AAC5B,IAAAA,eAAqD;;AAarD,IAAA,8BAAe,MAAA;AACb,QAAMC,iBAAaC,gCAAe;IAChCC,IAAI,YAAYC,2BAAKD,EAAE;IACvBE,MAAMD,2BAAKC;IACXC,cAAc;;;;;IAKdC,QAAQC;IACRC,OAAO;UACLC,sBAAWN,2BAAKD,IAAI;QAClBE,MAAM;QACNM,aAAa;QACbC,SAAS;QACTL,QAAQM,qBAAOC,OAAO;UACpBT,MAAMQ,qBAAOE,SAASF,qBAAOG,MAAM,EAAEC,YAAY;YAC/CN,aAAa;UACf,CAAA;UACAO,SAASL,qBAAOG,OAAOC,YAAY;YACjCN,aAAa;UACf,CAAA;QACF,CAAA;QACAQ,SAAS,OAAO,EAAEd,MAAMa,QAAO,GAAI,EAAEE,WAAU,MAAE;AAC/CC,0CAAUD,YAAYE,OAAO,YAAA;;;;;;;;;AAC7BD,0CAAUD,YAAYG,UAAU,wBAAA;;;;;;;;;AAEhC,gBAAMC,aAASC,wBACbC,mCAAaC,qCAAeC,QAAQ;YAClCC,SAAST,WAAWE,MAAMnB;YAC1BE;YACAa;UACF,CAAA,OACAY,4BAAMC,yBAAYC,WAAW;YAAEC,QAAQb,WAAWE;UAAM,CAAA,CAAA;AAG1D,gBAAM,EAAEY,MAAMC,MAAK,IAAK,MAAMf,WAAWG,SAASC,MAAAA;AAClD,cAAI,CAACU,QAAQC,OAAO;AAClB,mBAAOC,qBAAWC,MAAMF,OAAOG,WAAW,2BAAA;UAC5C;AAEA,iBAAOF,qBAAWG,YAAQC,wCAAsBN,KAAK/B,EAAE,CAAA;QACzD;MACF,CAAA;UACAO,sBAAWN,2BAAKD,IAAI;QAClBE,MAAM;QACNM,aAAa;QACbC,SAAS;QACTL,QAAQM,qBAAOC,OAAO,CAAC,CAAA;QACvBK,SAAS,OAAOsB,QAAQ,EAAErB,WAAU,MAAE;AACpCC,0CAAUD,YAAYE,OAAO,YAAA;;;;;;;;;AAC7B,gBAAMA,QAAQF,WAAWE;AACzB,gBAAM,EAAEoB,SAASC,UAAS,IAAK,MAAMrB,MAAMsB,GAAGC,MAAMC,oBAAOC,KAAKvC,kCAAAA,CAAAA,EAAewC,IAAG;AAClF,gBAAMC,eAAeN,UAAUO,IAAI,CAACC,QAAAA;AAClC9B,4CAAU+B,gBAAIC,WAAW7C,oCAAc2C,GAAAA,GAAAA,QAAAA;;;;;;;;;AACvC,mBAAO;cACLhD,QAAImD,+BAAiBH,GAAAA;cACrB9C,MAAM8C,IAAI9C,QAAQ8C,IAAII,gBAAgB;YAExC;UACF,CAAA;AAEA,iBAAOnB,qBAAWG,QAAQU,YAAAA;QAC5B;MACF,CAAA;UACAvC,sBAAWN,2BAAKD,IAAI;QAClBE,MAAM;QACNM,aAAa;QACbC,SAAS;QACTL,QAAQM,qBAAOC,OAAO;UACpBX,IAAIqD;QACN,CAAA;QACArC,SAAS,OAAO,EAAEhB,GAAE,GAAI,EAAEiB,WAAU,MAAE;AACpCC,0CAAUD,YAAYE,OAAO,YAAA;;;;;;;;;AAC7B,gBAAMmC,WAAW,MAAMrC,WAAWE,MAAMsB,GAAGC,MAAMC,oBAAOY,IAAIF,2BAAWG,MAAMxD,EAAAA,EAAIyD,SAAQ,CAAA,CAAA,EAAKC,MAAK;AACnGC,+CAAeV,gBAAIC,WAAW7C,oCAAciD,QAAAA,GAAW,cAAA;AAEvD,gBAAM,EAAEvC,QAAO,IAAK,MAAMuC,SAASvC,SAAS6C,KAAAA;AAC5C,iBAAO3B,qBAAWG,QAAQ;YACxBpC,QAAImD,+BAAiBG,QAAAA;YACrBpD,MAAMoD,SAASpD,QAAQoD,SAASF,gBAAgB;YAChDrC;UACF,CAAA;QACF;MACF,CAAA;;EAEJ,CAAA;AAEA,aAAO8C,kCAAYC,kCAAaC,oBAAoBjE,UAAAA;AACtD;",
|
|
6
|
+
"names": ["import_echo", "definition", "defineArtifact", "id", "meta", "name", "instructions", "schema", "DocumentType", "tools", "createTool", "description", "caption", "Schema", "Struct", "optional", "String", "annotations", "content", "execute", "extensions", "invariant", "space", "dispatch", "intent", "pipe", "createIntent", "MarkdownAction", "Create", "spaceId", "chain", "SpaceAction", "AddObject", "target", "data", "error", "ToolResult", "Error", "message", "Success", "createArtifactElement", "_input", "objects", "documents", "db", "query", "Filter", "type", "run", "documentInfo", "map", "doc", "Obj", "instanceOf", "fullyQualifiedId", "fallbackName", "ArtifactId", "document", "ids", "toDXN", "toString", "first", "assertArgument", "load", "contributes", "Capabilities", "ArtifactDefinition"]
|
|
7
|
+
}
|
|
@@ -16,8 +16,8 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var chunk_3HHV4MM6_exports = {};
|
|
20
|
+
__export(chunk_3HHV4MM6_exports, {
|
|
21
21
|
DocumentSchema: () => DocumentSchema,
|
|
22
22
|
DocumentType: () => DocumentType,
|
|
23
23
|
MarkdownAction: () => MarkdownAction,
|
|
@@ -25,12 +25,11 @@ __export(chunk_RQS4KBMG_exports, {
|
|
|
25
25
|
createDocument: () => createDocument,
|
|
26
26
|
isEditorModel: () => isEditorModel
|
|
27
27
|
});
|
|
28
|
-
module.exports = __toCommonJS(
|
|
28
|
+
module.exports = __toCommonJS(chunk_3HHV4MM6_exports);
|
|
29
29
|
var import_chunk_ZU5OIHCY = require("./chunk-ZU5OIHCY.cjs");
|
|
30
30
|
var import_effect = require("effect");
|
|
31
31
|
var import_echo = require("@dxos/echo");
|
|
32
32
|
var import_echo_schema = require("@dxos/echo-schema");
|
|
33
|
-
var import_live_object = require("@dxos/live-object");
|
|
34
33
|
var import_schema = require("@dxos/schema");
|
|
35
34
|
var import_effect2 = require("effect");
|
|
36
35
|
var import_echo2 = require("@dxos/echo");
|
|
@@ -47,9 +46,9 @@ var DocumentType = DocumentSchema.pipe(import_echo.Type.Obj({
|
|
|
47
46
|
typename: "dxos.org/type/Document",
|
|
48
47
|
version: "0.1.0"
|
|
49
48
|
}));
|
|
50
|
-
var createDocument = ({ name, content }) =>
|
|
49
|
+
var createDocument = ({ name, content }) => import_echo.Obj.make(DocumentType, {
|
|
51
50
|
name,
|
|
52
|
-
content: import_echo.Ref.make(
|
|
51
|
+
content: import_echo.Ref.make(import_echo.Obj.make(import_schema.DataType.Text, {
|
|
53
52
|
content
|
|
54
53
|
}))
|
|
55
54
|
});
|
|
@@ -99,4 +98,4 @@ var MarkdownAction;
|
|
|
99
98
|
createDocument,
|
|
100
99
|
isEditorModel
|
|
101
100
|
});
|
|
102
|
-
//# sourceMappingURL=chunk-
|
|
101
|
+
//# sourceMappingURL=chunk-3HHV4MM6.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/types/schema.ts", "../../../src/types/types.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { Obj, Ref, Type } from '@dxos/echo';\nimport { LabelAnnotation } from '@dxos/echo-schema';\nimport { DataType } from '@dxos/schema';\n\nexport const DocumentSchema = Schema.Struct({\n name: Schema.optional(Schema.String),\n fallbackName: Schema.optional(Schema.String),\n content: Type.Ref(DataType.Text),\n}).pipe(LabelAnnotation.set(['name', 'fallbackName']));\n\nexport const DocumentType = DocumentSchema.pipe(\n Type.Obj({\n typename: 'dxos.org/type/Document',\n version: '0.1.0',\n }),\n);\nexport type DocumentType = Schema.Schema.Type<typeof DocumentType>;\n\n// TODO(burdon): Replace when defaults are supported.\nexport const createDocument = ({ name, content }: { name: string; content: string }) =>\n Obj.make(DocumentType, { name, content: Ref.make(Obj.make(DataType.Text, { content })) });\n\n/**\n * Checks if an object conforms to the interface needed to render an editor.\n */\n// TODO(burdon): Normalize types (from FilesPlugin).\nexport const isEditorModel = (data: any): data is { id: string; text: string } =>\n data &&\n typeof data === 'object' &&\n 'id' in data &&\n typeof data.id === 'string' &&\n 'text' in data &&\n typeof data.text === 'string';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { Type } from '@dxos/echo';\n// TODO(wittjosiah): This pulls in UI code into the types entrypoint.\nimport { type Extension, EditorInputMode, EditorViewMode } from '@dxos/react-ui-editor';\n\nimport { DocumentType } from './schema';\nimport { MARKDOWN_PLUGIN } from '../meta';\n\nconst MARKDOWN_ACTION = `${MARKDOWN_PLUGIN}/action`;\n\nexport namespace MarkdownAction {\n export class Create extends Schema.TaggedClass<Create>()(MARKDOWN_ACTION, {\n input: Schema.Struct({\n spaceId: Type.SpaceId,\n name: Schema.optional(Schema.String),\n content: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: DocumentType,\n }),\n }) {}\n\n export class SetViewMode extends Schema.TaggedClass<SetViewMode>()(`${MARKDOWN_ACTION}/set-view-mode`, {\n input: Schema.Struct({\n id: Schema.String,\n viewMode: EditorViewMode,\n }),\n output: Schema.Void,\n }) {}\n}\n\nexport type MarkdownProperties = Record<string, any>;\n\n// TODO(burdon): Async.\nexport type MarkdownExtensionProvider = (props: { document?: DocumentType }) => Extension | undefined;\n\nexport type OnChange = (text: string) => void;\n\nexport type MarkdownPluginState = {\n // Codemirror extensions provided by other plugins.\n extensionProviders?: MarkdownExtensionProvider[];\n\n // TODO(burdon): Extend view mode per document to include scroll position, etc.\n // View mode per document.\n viewMode: Record<string, EditorViewMode>;\n};\n\nexport const MarkdownSettingsSchema = Schema.mutable(\n Schema.Struct({\n defaultViewMode: EditorViewMode,\n editorInputMode: Schema.optional(EditorInputMode),\n experimental: Schema.optional(Schema.Boolean),\n debug: Schema.optional(Schema.Boolean),\n toolbar: Schema.optional(Schema.Boolean),\n typewriter: Schema.optional(Schema.String),\n // TODO(burdon): Per document settings.\n numberedHeadings: Schema.optional(Schema.Boolean),\n folding: Schema.optional(Schema.Boolean),\n }),\n);\n\nexport type MarkdownSettingsProps = Schema.Schema.Type<typeof MarkdownSettingsSchema>;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,oBAAuB;AAEvB,kBAA+B;AAC/B,yBAAgC;AAChC,oBAAyB;ACJzB,IAAAA,iBAAuB;AAEvB,IAAAC,eAAqB;AAErB,6BAAgE;ADEzD,IAAMC,iBAAiBC,qBAAOC,OAAO;EAC1CC,MAAMF,qBAAOG,SAASH,qBAAOI,MAAM;EACnCC,cAAcL,qBAAOG,SAASH,qBAAOI,MAAM;EAC3CE,SAASC,iBAAKC,IAAIC,uBAASC,IAAI;AACjC,CAAA,EAAGC,KAAKC,mCAAgBC,IAAI;EAAC;EAAQ;CAAe,CAAA;AAE7C,IAAMC,eAAef,eAAeY,KACzCJ,iBAAKQ,IAAI;EACPC,UAAU;EACVC,SAAS;AACX,CAAA,CAAA;AAKK,IAAMC,iBAAiB,CAAC,EAAEhB,MAAMI,QAAO,MAC5CS,gBAAII,KAAKL,cAAc;EAAEZ;EAAMI,SAASE,gBAAIW,KAAKJ,gBAAII,KAAKV,uBAASC,MAAM;IAAEJ;EAAQ,CAAA,CAAA;AAAI,CAAA;AAMlF,IAAMc,gBAAgB,CAACC,SAC5BA,QACA,OAAOA,SAAS,YAChB,QAAQA,QACR,OAAOA,KAAKC,OAAO,YACnB,UAAUD,QACV,OAAOA,KAAKE,SAAS;ACzBvB,IAAMC,kBAAkB,GAAGC,qCAAAA;UAEVC,iBAAAA;EACR,MAAMC,eAAe3B,eAAAA,OAAO4B,YAAW,EAAWJ,iBAAiB;IACxEK,OAAO7B,eAAAA,OAAOC,OAAO;MACnB6B,SAASvB,aAAAA,KAAKwB;MACd7B,MAAMF,eAAAA,OAAOG,SAASH,eAAAA,OAAOI,MAAM;MACnCE,SAASN,eAAAA,OAAOG,SAASH,eAAAA,OAAOI,MAAM;IACxC,CAAA;IACA4B,QAAQhC,eAAAA,OAAOC,OAAO;MACpBgC,QAAQnB;IACV,CAAA;EACF,CAAA,EAAA;EAAI;kBATSa,SAAAA;EAWN,MAAMO,oBAAoBlC,eAAAA,OAAO4B,YAAW,EAAgB,GAAGJ,eAAAA,kBAAiC;IACrGK,OAAO7B,eAAAA,OAAOC,OAAO;MACnBqB,IAAItB,eAAAA,OAAOI;MACX+B,UAAUC;IACZ,CAAA;IACAJ,QAAQhC,eAAAA,OAAOqC;EACjB,CAAA,EAAA;EAAI;kBANSH,cAAAA;AAOf,GAnBiBR,mBAAAA,iBAAAA,CAAAA,EAAAA;AAqCV,IAAMY,yBAAyBtC,eAAAA,OAAOuC,QAC3CvC,eAAAA,OAAOC,OAAO;EACZuC,iBAAiBJ;EACjBK,iBAAiBzC,eAAAA,OAAOG,SAASuC,sCAAAA;EACjCC,cAAc3C,eAAAA,OAAOG,SAASH,eAAAA,OAAO4C,OAAO;EAC5CC,OAAO7C,eAAAA,OAAOG,SAASH,eAAAA,OAAO4C,OAAO;EACrCE,SAAS9C,eAAAA,OAAOG,SAASH,eAAAA,OAAO4C,OAAO;EACvCG,YAAY/C,eAAAA,OAAOG,SAASH,eAAAA,OAAOI,MAAM;;EAEzC4C,kBAAkBhD,eAAAA,OAAOG,SAASH,eAAAA,OAAO4C,OAAO;EAChDK,SAASjD,eAAAA,OAAOG,SAASH,eAAAA,OAAO4C,OAAO;AACzC,CAAA,CAAA;;",
|
|
6
|
+
"names": ["import_effect", "import_echo", "DocumentSchema", "Schema", "Struct", "name", "optional", "String", "fallbackName", "content", "Type", "Ref", "DataType", "Text", "pipe", "LabelAnnotation", "set", "DocumentType", "Obj", "typename", "version", "createDocument", "make", "isEditorModel", "data", "id", "text", "MARKDOWN_ACTION", "MARKDOWN_PLUGIN", "MarkdownAction", "Create", "TaggedClass", "input", "spaceId", "SpaceId", "output", "object", "SetViewMode", "viewMode", "EditorViewMode", "Void", "MarkdownSettingsSchema", "mutable", "defaultViewMode", "editorInputMode", "EditorInputMode", "experimental", "Boolean", "debug", "toolbar", "typewriter", "numberedHeadings", "folding"]
|
|
7
|
+
}
|
|
@@ -26,8 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var chunk_4DYNEQG3_exports = {};
|
|
30
|
+
__export(chunk_4DYNEQG3_exports, {
|
|
31
31
|
AnchorSort: () => AnchorSort,
|
|
32
32
|
AppGraphSerializer: () => AppGraphSerializer,
|
|
33
33
|
ArtifactDefinition: () => ArtifactDefinition,
|
|
@@ -36,14 +36,14 @@ __export(chunk_C4HR7UXE_exports, {
|
|
|
36
36
|
MarkdownState: () => MarkdownState,
|
|
37
37
|
ReactSurface: () => ReactSurface
|
|
38
38
|
});
|
|
39
|
-
module.exports = __toCommonJS(
|
|
39
|
+
module.exports = __toCommonJS(chunk_4DYNEQG3_exports);
|
|
40
40
|
var import_app_framework = require("@dxos/app-framework");
|
|
41
|
-
var AnchorSort = (0, import_app_framework.lazy)(() => import("./anchor-sort-
|
|
42
|
-
var AppGraphSerializer = (0, import_app_framework.lazy)(() => import("./app-graph-serializer-
|
|
43
|
-
var ArtifactDefinition = (0, import_app_framework.lazy)(() => import("./artifact-definition-
|
|
44
|
-
var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-
|
|
45
|
-
var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-
|
|
46
|
-
var MarkdownSettings = (0, import_app_framework.lazy)(() => import("./settings-
|
|
41
|
+
var AnchorSort = (0, import_app_framework.lazy)(() => import("./anchor-sort-V3T4SFFI.cjs"));
|
|
42
|
+
var AppGraphSerializer = (0, import_app_framework.lazy)(() => import("./app-graph-serializer-BZPM7HHJ.cjs"));
|
|
43
|
+
var ArtifactDefinition = (0, import_app_framework.lazy)(() => import("./artifact-definition-U27MH5SC.cjs"));
|
|
44
|
+
var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-OEFLRNEJ.cjs"));
|
|
45
|
+
var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-5RKEWAXS.cjs"));
|
|
46
|
+
var MarkdownSettings = (0, import_app_framework.lazy)(() => import("./settings-E3NUTXJ4.cjs"));
|
|
47
47
|
var MarkdownState = (0, import_app_framework.lazy)(() => import("./state-KKDRAG7X.cjs"));
|
|
48
48
|
// Annotate the CommonJS export names for ESM import in node:
|
|
49
49
|
0 && (module.exports = {
|
|
@@ -55,4 +55,4 @@ var MarkdownState = (0, import_app_framework.lazy)(() => import("./state-KKDRAG7
|
|
|
55
55
|
MarkdownState,
|
|
56
56
|
ReactSurface
|
|
57
57
|
});
|
|
58
|
-
//# sourceMappingURL=chunk-
|
|
58
|
+
//# sourceMappingURL=chunk-4DYNEQG3.cjs.map
|
|
@@ -16,20 +16,20 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var chunk_CJLYFGPI_exports = {};
|
|
20
|
+
__export(chunk_CJLYFGPI_exports, {
|
|
21
21
|
getAbstract: () => getAbstract,
|
|
22
22
|
getFallbackName: () => getFallbackName,
|
|
23
23
|
isMarkdownProperties: () => isMarkdownProperties,
|
|
24
24
|
serializer: () => serializer,
|
|
25
25
|
setFallbackName: () => setFallbackName
|
|
26
26
|
});
|
|
27
|
-
module.exports = __toCommonJS(
|
|
28
|
-
var
|
|
27
|
+
module.exports = __toCommonJS(chunk_CJLYFGPI_exports);
|
|
28
|
+
var import_chunk_3HHV4MM6 = require("./chunk-3HHV4MM6.cjs");
|
|
29
29
|
var import_async = require("@dxos/async");
|
|
30
|
-
var import_echo = require("@dxos/
|
|
30
|
+
var import_echo = require("@dxos/echo");
|
|
31
31
|
var import_schema = require("@dxos/schema");
|
|
32
|
-
var isMarkdownProperties = (data) =>
|
|
32
|
+
var isMarkdownProperties = (data) => import_echo.Obj.isObject(data) ? true : data && typeof data === "object" ? "title" in data && typeof data.title === "string" : false;
|
|
33
33
|
var nonTitleChars = /[^\w ]/g;
|
|
34
34
|
var getFallbackName = (content) => {
|
|
35
35
|
return content.substring(0, 31).split("\n")[0].replaceAll(nonTitleChars, "").trim();
|
|
@@ -45,22 +45,22 @@ var setFallbackName = (0, import_async.debounce)((doc, content) => {
|
|
|
45
45
|
}, 200);
|
|
46
46
|
var serializer = {
|
|
47
47
|
serialize: async ({ object }) => {
|
|
48
|
-
const content = await
|
|
48
|
+
const { content } = await object.content.load();
|
|
49
49
|
return JSON.stringify({
|
|
50
50
|
name: object.name,
|
|
51
51
|
fallbackName: object.fallbackName,
|
|
52
|
-
content
|
|
52
|
+
content
|
|
53
53
|
});
|
|
54
54
|
},
|
|
55
55
|
deserialize: async ({ content: serialized }) => {
|
|
56
56
|
const { name, fallbackName, content } = JSON.parse(serialized);
|
|
57
|
-
return
|
|
57
|
+
return import_echo.Obj.make(import_chunk_3HHV4MM6.DocumentType, {
|
|
58
58
|
name,
|
|
59
59
|
fallbackName,
|
|
60
|
-
content: import_echo.Ref.make(
|
|
60
|
+
content: import_echo.Ref.make(import_echo.Obj.make(import_schema.DataType.Text, {
|
|
61
61
|
content
|
|
62
62
|
}))
|
|
63
|
-
})
|
|
63
|
+
});
|
|
64
64
|
}
|
|
65
65
|
};
|
|
66
66
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -71,4 +71,4 @@ var serializer = {
|
|
|
71
71
|
serializer,
|
|
72
72
|
setFallbackName
|
|
73
73
|
});
|
|
74
|
-
//# sourceMappingURL=chunk-
|
|
74
|
+
//# sourceMappingURL=chunk-CJLYFGPI.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/util.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { debounce } from '@dxos/async';\nimport { Obj, Ref } from '@dxos/echo';\nimport { type TypedObjectSerializer } from '@dxos/plugin-space/types';\nimport { DataType } from '@dxos/schema';\n\nimport { DocumentType, type MarkdownProperties } from './types';\n\nexport const isMarkdownProperties = (data: unknown): data is MarkdownProperties =>\n (Obj.isObject(data) as boolean)\n ? true\n : data && typeof data === 'object'\n ? 'title' in data && typeof data.title === 'string'\n : false;\n\nconst nonTitleChars = /[^\\w ]/g;\n\nexport const getFallbackName = (content: string) => {\n return content.substring(0, 31).split('\\n')[0].replaceAll(nonTitleChars, '').trim();\n};\n\nexport const getAbstract = (content: string) => {\n return content.substring(0, 128).split('\\n')[0].replaceAll(nonTitleChars, '').trim();\n};\n\nexport const setFallbackName = debounce((doc: DocumentType, content: string) => {\n const name = getFallbackName(content);\n if (doc.fallbackName !== name) {\n doc.fallbackName = name;\n }\n}, 200);\n\nexport const serializer: TypedObjectSerializer<DocumentType> = {\n serialize: async ({ object }): Promise<string> => {\n const { content } = await object.content.load();\n return JSON.stringify({ name: object.name, fallbackName: object.fallbackName, content });\n },\n\n deserialize: async ({ content: serialized }) => {\n const { name, fallbackName, content } = JSON.parse(serialized);\n return Obj.make(DocumentType, { name, fallbackName, content: Ref.make(Obj.make(DataType.Text, { content })) });\n },\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,mBAAyB;AACzB,kBAAyB;AAEzB,oBAAyB;AAIlB,IAAMA,uBAAuB,CAACC,SAClCC,gBAAIC,SAASF,IAAAA,IACV,OACAA,QAAQ,OAAOA,SAAS,WACtB,WAAWA,QAAQ,OAAOA,KAAKG,UAAU,WACzC;AAER,IAAMC,gBAAgB;AAEf,IAAMC,kBAAkB,CAACC,YAAAA;AAC9B,SAAOA,QAAQC,UAAU,GAAG,EAAA,EAAIC,MAAM,IAAA,EAAM,CAAA,EAAGC,WAAWL,eAAe,EAAA,EAAIM,KAAI;AACnF;AAEO,IAAMC,cAAc,CAACL,YAAAA;AAC1B,SAAOA,QAAQC,UAAU,GAAG,GAAA,EAAKC,MAAM,IAAA,EAAM,CAAA,EAAGC,WAAWL,eAAe,EAAA,EAAIM,KAAI;AACpF;AAEO,IAAME,sBAAkBC,uBAAS,CAACC,KAAmBR,YAAAA;AAC1D,QAAMS,OAAOV,gBAAgBC,OAAAA;AAC7B,MAAIQ,IAAIE,iBAAiBD,MAAM;AAC7BD,QAAIE,eAAeD;EACrB;AACF,GAAG,GAAA;AAEI,IAAME,aAAkD;EAC7DC,WAAW,OAAO,EAAEC,OAAM,MAAE;AAC1B,UAAM,EAAEb,QAAO,IAAK,MAAMa,OAAOb,QAAQc,KAAI;AAC7C,WAAOC,KAAKC,UAAU;MAAEP,MAAMI,OAAOJ;MAAMC,cAAcG,OAAOH;MAAcV;IAAQ,CAAA;EACxF;EAEAiB,aAAa,OAAO,EAAEjB,SAASkB,WAAU,MAAE;AACzC,UAAM,EAAET,MAAMC,cAAcV,QAAO,IAAKe,KAAKI,MAAMD,UAAAA;AACnD,WAAOvB,gBAAIyB,KAAKC,oCAAc;MAAEZ;MAAMC;MAAcV,SAASsB,gBAAIF,KAAKzB,gBAAIyB,KAAKG,uBAASC,MAAM;QAAExB;MAAQ,CAAA,CAAA;IAAI,CAAA;EAC9G;AACF;",
|
|
6
|
+
"names": ["isMarkdownProperties", "data", "Obj", "isObject", "title", "nonTitleChars", "getFallbackName", "content", "substring", "split", "replaceAll", "trim", "getAbstract", "setFallbackName", "debounce", "doc", "name", "fallbackName", "serializer", "serialize", "object", "load", "JSON", "stringify", "deserialize", "serialized", "parse", "make", "DocumentType", "Ref", "DataType", "Text"]
|
|
7
|
+
}
|
|
@@ -16,17 +16,17 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var chunk_SYEFGLXN_exports = {};
|
|
20
|
+
__export(chunk_SYEFGLXN_exports, {
|
|
21
21
|
translations_default: () => translations_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
-
var
|
|
23
|
+
module.exports = __toCommonJS(chunk_SYEFGLXN_exports);
|
|
24
|
+
var import_chunk_3HHV4MM6 = require("./chunk-3HHV4MM6.cjs");
|
|
25
25
|
var import_chunk_ZU5OIHCY = require("./chunk-ZU5OIHCY.cjs");
|
|
26
26
|
var translations_default = [
|
|
27
27
|
{
|
|
28
28
|
"en-US": {
|
|
29
|
-
[
|
|
29
|
+
[import_chunk_3HHV4MM6.DocumentType.typename]: {
|
|
30
30
|
"typename label": "Document",
|
|
31
31
|
"object name placeholder": "New document"
|
|
32
32
|
},
|
|
@@ -61,4 +61,4 @@ var translations_default = [
|
|
|
61
61
|
0 && (module.exports = {
|
|
62
62
|
translations_default
|
|
63
63
|
});
|
|
64
|
-
//# sourceMappingURL=chunk-
|
|
64
|
+
//# sourceMappingURL=chunk-SYEFGLXN.cjs.map
|