@dxos/plugin-markdown 0.8.2-main.f081794 → 0.8.2-main.f11618f

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 (105) hide show
  1. package/dist/lib/browser/{MarkdownContainer-MH6MMKA5.mjs → MarkdownContainer-5XV7K2NX.mjs} +6 -4
  2. package/dist/lib/browser/MarkdownContainer-5XV7K2NX.mjs.map +7 -0
  3. package/dist/lib/browser/MarkdownPreview-DX5U5LCX.mjs +81 -0
  4. package/dist/lib/browser/MarkdownPreview-DX5U5LCX.mjs.map +7 -0
  5. package/dist/lib/browser/{app-graph-serializer-BF7WSE3D.mjs → app-graph-serializer-OCXP7PCK.mjs} +2 -2
  6. package/dist/lib/browser/chunk-5QXYEKSX.mjs +20 -0
  7. package/dist/lib/browser/chunk-5QXYEKSX.mjs.map +7 -0
  8. package/dist/lib/browser/{chunk-2DKQKSBR.mjs → chunk-LJ2UFBJ2.mjs} +4 -2
  9. package/dist/lib/browser/{chunk-2DKQKSBR.mjs.map → chunk-LJ2UFBJ2.mjs.map} +2 -2
  10. package/dist/lib/browser/{chunk-V54HDI7B.mjs → chunk-QV6ZIXAD.mjs} +6 -19
  11. package/dist/lib/browser/chunk-QV6ZIXAD.mjs.map +7 -0
  12. package/dist/lib/browser/index.mjs +7 -3
  13. package/dist/lib/browser/index.mjs.map +1 -1
  14. package/dist/lib/browser/meta.json +1 -1
  15. package/dist/lib/browser/{react-surface-RONTBOZZ.mjs → react-surface-LBCMSLJ5.mjs} +13 -3
  16. package/dist/lib/browser/react-surface-LBCMSLJ5.mjs.map +7 -0
  17. package/dist/lib/node/{MarkdownContainer-PCHMSPTC.cjs → MarkdownContainer-5EQTBXV3.cjs} +9 -7
  18. package/dist/lib/node/MarkdownContainer-5EQTBXV3.cjs.map +7 -0
  19. package/dist/lib/node/MarkdownPreview-W7QIN2KJ.cjs +104 -0
  20. package/dist/lib/node/MarkdownPreview-W7QIN2KJ.cjs.map +7 -0
  21. package/dist/lib/node/{app-graph-serializer-UVT5EAWW.cjs → app-graph-serializer-KBDLASRP.cjs} +6 -6
  22. package/dist/lib/node/{chunk-6ERKWMAU.cjs → chunk-JO4SBK36.cjs} +7 -5
  23. package/dist/lib/node/{chunk-6ERKWMAU.cjs.map → chunk-JO4SBK36.cjs.map} +2 -2
  24. package/dist/lib/node/chunk-QRE5L6ZC.cjs +58 -0
  25. package/dist/lib/node/chunk-QRE5L6ZC.cjs.map +7 -0
  26. package/dist/lib/node/{chunk-5XQ27MNY.cjs → chunk-WGMVEPB3.cjs} +9 -36
  27. package/dist/lib/node/chunk-WGMVEPB3.cjs.map +7 -0
  28. package/dist/lib/node/index.cjs +18 -15
  29. package/dist/lib/node/index.cjs.map +1 -1
  30. package/dist/lib/node/meta.json +1 -1
  31. package/dist/lib/node/{react-surface-26PWFBBV.cjs → react-surface-DJIZSVMN.cjs} +15 -5
  32. package/dist/lib/node/react-surface-DJIZSVMN.cjs.map +7 -0
  33. package/dist/lib/node-esm/{MarkdownContainer-ERQH4SXI.mjs → MarkdownContainer-LONZOJJX.mjs} +6 -4
  34. package/dist/lib/node-esm/MarkdownContainer-LONZOJJX.mjs.map +7 -0
  35. package/dist/lib/node-esm/MarkdownPreview-T3OW2EN4.mjs +82 -0
  36. package/dist/lib/node-esm/MarkdownPreview-T3OW2EN4.mjs.map +7 -0
  37. package/dist/lib/node-esm/{app-graph-serializer-LPRG2PFZ.mjs → app-graph-serializer-67CO7ST3.mjs} +2 -2
  38. package/dist/lib/node-esm/{chunk-USLC246I.mjs → chunk-4U2F4EB7.mjs} +6 -19
  39. package/dist/lib/node-esm/chunk-4U2F4EB7.mjs.map +7 -0
  40. package/dist/lib/node-esm/chunk-PALFXZBY.mjs +22 -0
  41. package/dist/lib/node-esm/chunk-PALFXZBY.mjs.map +7 -0
  42. package/dist/lib/node-esm/{chunk-IZUCQ5P5.mjs → chunk-VQA6BQGT.mjs} +4 -2
  43. package/dist/lib/node-esm/{chunk-IZUCQ5P5.mjs.map → chunk-VQA6BQGT.mjs.map} +2 -2
  44. package/dist/lib/node-esm/index.mjs +7 -3
  45. package/dist/lib/node-esm/index.mjs.map +1 -1
  46. package/dist/lib/node-esm/meta.json +1 -1
  47. package/dist/lib/node-esm/{react-surface-ZEJSYIRX.mjs → react-surface-737EXAWT.mjs} +13 -3
  48. package/dist/lib/node-esm/react-surface-737EXAWT.mjs.map +7 -0
  49. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  50. package/dist/types/src/components/{MarkdownEditor.d.ts → MarkdownEditor/MarkdownEditor.d.ts} +1 -1
  51. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -0
  52. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -0
  53. package/dist/types/src/components/MarkdownEditor/index.d.ts +2 -0
  54. package/dist/types/src/components/MarkdownEditor/index.d.ts.map +1 -0
  55. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts +6 -0
  56. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts.map +1 -0
  57. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts +191 -0
  58. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts.map +1 -0
  59. package/dist/types/src/components/MarkdownPreview/index.d.ts +4 -0
  60. package/dist/types/src/components/MarkdownPreview/index.d.ts.map +1 -0
  61. package/dist/types/src/components/{MarkdownSettings.d.ts → MarkdownSettings/MarkdownSettings.d.ts} +1 -1
  62. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +1 -0
  63. package/dist/types/src/components/MarkdownSettings/index.d.ts +2 -0
  64. package/dist/types/src/components/MarkdownSettings/index.d.ts.map +1 -0
  65. package/dist/types/src/components/Suggestions.stories.d.ts.map +1 -1
  66. package/dist/types/src/components/index.d.ts +1 -0
  67. package/dist/types/src/components/index.d.ts.map +1 -1
  68. package/dist/types/src/translations.d.ts +6 -0
  69. package/dist/types/src/translations.d.ts.map +1 -1
  70. package/dist/types/src/types/schema.d.ts +363 -39
  71. package/dist/types/src/types/schema.d.ts.map +1 -1
  72. package/dist/types/src/types/types.d.ts +120 -8
  73. package/dist/types/src/types/types.d.ts.map +1 -1
  74. package/dist/types/src/util.d.ts +1 -0
  75. package/dist/types/src/util.d.ts.map +1 -1
  76. package/package.json +37 -36
  77. package/src/capabilities/react-surface.tsx +8 -1
  78. package/src/components/{MarkdownEditor.stories.tsx → MarkdownEditor/MarkdownEditor.stories.tsx} +1 -1
  79. package/src/components/{MarkdownEditor.tsx → MarkdownEditor/MarkdownEditor.tsx} +4 -3
  80. package/src/components/MarkdownEditor/index.ts +5 -0
  81. package/src/components/MarkdownPreview/MarkdownPreview.stories.tsx +68 -0
  82. package/src/components/MarkdownPreview/MarkdownPreview.tsx +85 -0
  83. package/src/components/MarkdownPreview/index.ts +9 -0
  84. package/src/components/{MarkdownSettings.tsx → MarkdownSettings/MarkdownSettings.tsx} +2 -2
  85. package/src/components/MarkdownSettings/index.ts +5 -0
  86. package/src/components/Suggestions.stories.tsx +4 -2
  87. package/src/components/index.ts +1 -0
  88. package/src/translations.ts +2 -0
  89. package/src/util.tsx +4 -0
  90. package/dist/lib/browser/MarkdownContainer-MH6MMKA5.mjs.map +0 -7
  91. package/dist/lib/browser/chunk-V54HDI7B.mjs.map +0 -7
  92. package/dist/lib/browser/react-surface-RONTBOZZ.mjs.map +0 -7
  93. package/dist/lib/node/MarkdownContainer-PCHMSPTC.cjs.map +0 -7
  94. package/dist/lib/node/chunk-5XQ27MNY.cjs.map +0 -7
  95. package/dist/lib/node/react-surface-26PWFBBV.cjs.map +0 -7
  96. package/dist/lib/node-esm/MarkdownContainer-ERQH4SXI.mjs.map +0 -7
  97. package/dist/lib/node-esm/chunk-USLC246I.mjs.map +0 -7
  98. package/dist/lib/node-esm/react-surface-ZEJSYIRX.mjs.map +0 -7
  99. package/dist/types/src/components/MarkdownEditor.d.ts.map +0 -1
  100. package/dist/types/src/components/MarkdownEditor.stories.d.ts.map +0 -1
  101. package/dist/types/src/components/MarkdownSettings.d.ts.map +0 -1
  102. /package/dist/lib/browser/{app-graph-serializer-BF7WSE3D.mjs.map → app-graph-serializer-OCXP7PCK.mjs.map} +0 -0
  103. /package/dist/lib/node/{app-graph-serializer-UVT5EAWW.cjs.map → app-graph-serializer-KBDLASRP.cjs.map} +0 -0
  104. /package/dist/lib/node-esm/{app-graph-serializer-LPRG2PFZ.mjs.map → app-graph-serializer-67CO7ST3.mjs.map} +0 -0
  105. /package/dist/types/src/components/{MarkdownEditor.stories.d.ts → MarkdownEditor/MarkdownEditor.stories.d.ts} +0 -0
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var MarkdownPreview_W7QIN2KJ_exports = {};
30
+ __export(MarkdownPreview_W7QIN2KJ_exports, {
31
+ MarkdownPreview: () => MarkdownPreview,
32
+ default: () => MarkdownPreview_default
33
+ });
34
+ module.exports = __toCommonJS(MarkdownPreview_W7QIN2KJ_exports);
35
+ var import_chunk_WGMVEPB3 = require("./chunk-WGMVEPB3.cjs");
36
+ var import_chunk_YHL4JSA6 = require("./chunk-YHL4JSA6.cjs");
37
+ var import_chunk_ZU5OIHCY = require("./chunk-ZU5OIHCY.cjs");
38
+ var import_effect = require("effect");
39
+ var import_react = __toESM(require("react"));
40
+ var import_app_framework = require("@dxos/app-framework");
41
+ var import_echo_schema = require("@dxos/echo-schema");
42
+ var import_plugin_preview = require("@dxos/plugin-preview");
43
+ var import_echo = require("@dxos/react-client/echo");
44
+ var import_react_ui = require("@dxos/react-ui");
45
+ var import_react_ui_theme = require("@dxos/react-ui-theme");
46
+ var import_schema = require("@dxos/schema");
47
+ var getTitle = (subject, fallback) => {
48
+ if ((0, import_echo_schema.isInstanceOf)(import_chunk_YHL4JSA6.DocumentType, subject)) {
49
+ return subject.name ?? subject.fallbackName ?? (0, import_chunk_WGMVEPB3.getFallbackName)(subject.content?.target?.content ?? fallback);
50
+ } else if ((0, import_echo_schema.isInstanceOf)(import_schema.TextType, subject)) {
51
+ return (0, import_chunk_WGMVEPB3.getFallbackName)(subject.content);
52
+ }
53
+ };
54
+ var getSnippet = (subject, fallback) => {
55
+ if ((0, import_echo_schema.isInstanceOf)(import_chunk_YHL4JSA6.DocumentType, subject)) {
56
+ return (0, import_chunk_WGMVEPB3.getAbstract)(subject.content?.target?.content ?? fallback);
57
+ } else if ((0, import_echo_schema.isInstanceOf)(import_schema.TextType, subject)) {
58
+ return (0, import_chunk_WGMVEPB3.getAbstract)(subject.content);
59
+ }
60
+ };
61
+ var MarkdownPreview = ({ classNames, subject, role }) => {
62
+ const { dispatchPromise: dispatch } = (0, import_app_framework.useIntentDispatcher)();
63
+ const { t } = (0, import_react_ui.useTranslation)(import_chunk_ZU5OIHCY.MARKDOWN_PLUGIN);
64
+ const snippet = getSnippet(subject, t("fallback abstract"));
65
+ const handleNavigate = (0, import_react.useCallback)(() => dispatch((0, import_effect.pipe)((0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdatePopover, {
66
+ part: "popover",
67
+ subject: null,
68
+ options: {
69
+ state: false,
70
+ anchorId: ""
71
+ }
72
+ }), (0, import_app_framework.chain)(import_app_framework.LayoutAction.Open, {
73
+ part: "main",
74
+ subject: [
75
+ (0, import_echo.fullyQualifiedId)(subject)
76
+ ]
77
+ }))), [
78
+ dispatch,
79
+ subject
80
+ ]);
81
+ return /* @__PURE__ */ import_react.default.createElement("div", {
82
+ role: "none",
83
+ className: (0, import_react_ui_theme.mx)(role === "popover" ? import_plugin_preview.popoverCard : role === "card--kanban" ? import_plugin_preview.kanbanCardWithoutPoster : import_plugin_preview.defaultCard, classNames)
84
+ }, /* @__PURE__ */ import_react.default.createElement("h2", {
85
+ className: (0, import_react_ui_theme.mx)(import_plugin_preview.previewTitle, import_plugin_preview.previewProse)
86
+ }, getTitle(subject, t("fallback title"))), snippet && /* @__PURE__ */ import_react.default.createElement("p", {
87
+ className: (0, import_react_ui_theme.mx)(import_plugin_preview.previewProse, "line-clamp-3 break-words col-span-2")
88
+ }, snippet), /* @__PURE__ */ import_react.default.createElement("div", {
89
+ role: "none",
90
+ className: import_plugin_preview.previewChrome
91
+ }, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Button, {
92
+ onClick: handleNavigate
93
+ }, /* @__PURE__ */ import_react.default.createElement("span", {
94
+ className: "grow"
95
+ }, t("navigate to document label")), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Icon, {
96
+ icon: "ph--arrow-right--regular"
97
+ }))));
98
+ };
99
+ var MarkdownPreview_default = MarkdownPreview;
100
+ // Annotate the CommonJS export names for ESM import in node:
101
+ 0 && (module.exports = {
102
+ MarkdownPreview
103
+ });
104
+ //# sourceMappingURL=MarkdownPreview-W7QIN2KJ.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 { isInstanceOf } from '@dxos/echo-schema';\nimport {\n type PreviewProps,\n popoverCard,\n previewTitle,\n previewProse,\n previewChrome,\n defaultCard,\n kanbanCardWithoutPoster,\n} from '@dxos/plugin-preview';\nimport { fullyQualifiedId } from '@dxos/react-client/echo';\nimport { Button, Icon, useTranslation } from '@dxos/react-ui';\nimport { mx } from '@dxos/react-ui-theme';\nimport { TextType } 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 | TextType, fallback: string) => {\n if (isInstanceOf(DocumentType, subject)) {\n return subject.name ?? subject.fallbackName ?? getFallbackName(subject.content?.target?.content ?? fallback);\n } else if (isInstanceOf(TextType, subject)) {\n return getFallbackName(subject.content);\n }\n};\n\n// TODO(burdon): Factor out.\nconst getSnippet = (subject: DocumentType | TextType, fallback: string) => {\n if (isInstanceOf(DocumentType, subject)) {\n return getAbstract(subject.content?.target?.content ?? fallback);\n } else if (isInstanceOf(TextType, subject)) {\n return getAbstract(subject.content);\n }\n};\n\nexport const MarkdownPreview = ({ classNames, subject, role }: PreviewProps<DocumentType | TextType>) => {\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 <div\n role='none'\n className={mx(\n role === 'popover' ? popoverCard : role === 'card--kanban' ? kanbanCardWithoutPoster : defaultCard,\n classNames,\n )}\n >\n <h2 className={mx(previewTitle, previewProse)}>{getTitle(subject, t('fallback title'))}</h2>\n {snippet && <p className={mx(previewProse, 'line-clamp-3 break-words col-span-2')}>{snippet}</p>}\n <div role='none' className={previewChrome}>\n <Button onClick={handleNavigate}>\n <span className='grow'>{t('navigate to document label')}</span>\n <Icon icon='ph--arrow-right--regular' />\n </Button>\n </div>\n </div>\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,yBAA6B;AAC7B,4BAQO;AACP,kBAAiC;AACjC,sBAA6C;AAC7C,4BAAmB;AACnB,oBAAyB;AAOzB,IAAMA,WAAW,CAACC,SAAkCC,aAAAA;AAClD,UAAIC,iCAAaC,oCAAcH,OAAAA,GAAU;AACvC,WAAOA,QAAQI,QAAQJ,QAAQK,oBAAgBC,uCAAgBN,QAAQO,SAASC,QAAQD,WAAWN,QAAAA;EACrG,eAAWC,iCAAaO,wBAAUT,OAAAA,GAAU;AAC1C,eAAOM,uCAAgBN,QAAQO,OAAO;EACxC;AACF;AAGA,IAAMG,aAAa,CAACV,SAAkCC,aAAAA;AACpD,UAAIC,iCAAaC,oCAAcH,OAAAA,GAAU;AACvC,eAAOW,mCAAYX,QAAQO,SAASC,QAAQD,WAAWN,QAAAA;EACzD,eAAWC,iCAAaO,wBAAUT,OAAAA,GAAU;AAC1C,eAAOW,mCAAYX,QAAQO,OAAO;EACpC;AACF;AAEO,IAAMK,kBAAkB,CAAC,EAAEC,YAAYb,SAASc,KAAI,MAAyC;AAClG,QAAM,EAAEC,iBAAiBC,SAAQ,QAAKC,0CAAAA;AACtC,QAAM,EAAEC,EAAC,QAAKC,gCAAeC,qCAAAA;AAC7B,QAAMC,UAAUX,WAAWV,SAASkB,EAAE,mBAAA,CAAA;AAGtC,QAAMI,qBAAiBC,0BACrB,MACEP,aACEQ,wBACEC,mCAAaC,kCAAaC,eAAe;IACvCC,MAAM;IACN5B,SAAS;IACT6B,SAAS;MAAEC,OAAO;MAAOC,UAAU;IAAG;EACxC,CAAA,OACAC,4BAAMN,kCAAaO,MAAM;IAAEL,MAAM;IAAQ5B,SAAS;UAACkC,8BAAiBlC,OAAAA;;EAAU,CAAA,CAAA,CAAA,GAGpF;IAACgB;IAAUhB;GAAQ;AAGrB,SACE,6BAAAmC,QAAA,cAACC,OAAAA;IACCtB,MAAK;IACLuB,eAAWC,0BACTxB,SAAS,YAAYyB,oCAAczB,SAAS,iBAAiB0B,gDAA0BC,mCACvF5B,UAAAA;KAGF,6BAAAsB,QAAA,cAACO,MAAAA;IAAGL,eAAWC,0BAAGK,oCAAcC,kCAAAA;KAAgB7C,SAASC,SAASkB,EAAE,gBAAA,CAAA,CAAA,GACnEG,WAAW,6BAAAc,QAAA,cAACU,KAAAA;IAAER,eAAWC,0BAAGM,oCAAc,qCAAA;KAAyCvB,OAAAA,GACpF,6BAAAc,QAAA,cAACC,OAAAA;IAAItB,MAAK;IAAOuB,WAAWS;KAC1B,6BAAAX,QAAA,cAACY,wBAAAA;IAAOC,SAAS1B;KACf,6BAAAa,QAAA,cAACc,QAAAA;IAAKZ,WAAU;KAAQnB,EAAE,4BAAA,CAAA,GAC1B,6BAAAiB,QAAA,cAACe,sBAAAA;IAAKC,MAAK;;AAKrB;AC5EA,IAAA,0BAAevC;",
6
+ "names": ["getTitle", "subject", "fallback", "isInstanceOf", "DocumentType", "name", "fallbackName", "getFallbackName", "content", "target", "TextType", "getSnippet", "getAbstract", "MarkdownPreview", "classNames", "role", "dispatchPromise", "dispatch", "useIntentDispatcher", "t", "useTranslation", "MARKDOWN_PLUGIN", "snippet", "handleNavigate", "useCallback", "pipe", "createIntent", "LayoutAction", "UpdatePopover", "part", "options", "state", "anchorId", "chain", "Open", "fullyQualifiedId", "React", "div", "className", "mx", "popoverCard", "kanbanCardWithoutPoster", "defaultCard", "h2", "previewTitle", "previewProse", "p", "previewChrome", "Button", "onClick", "span", "Icon", "icon"]
7
+ }
@@ -16,12 +16,12 @@ 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 app_graph_serializer_UVT5EAWW_exports = {};
20
- __export(app_graph_serializer_UVT5EAWW_exports, {
19
+ var app_graph_serializer_KBDLASRP_exports = {};
20
+ __export(app_graph_serializer_KBDLASRP_exports, {
21
21
  default: () => app_graph_serializer_default
22
22
  });
23
- module.exports = __toCommonJS(app_graph_serializer_UVT5EAWW_exports);
24
- var import_chunk_6ERKWMAU = require("./chunk-6ERKWMAU.cjs");
23
+ module.exports = __toCommonJS(app_graph_serializer_KBDLASRP_exports);
24
+ var import_chunk_JO4SBK36 = require("./chunk-JO4SBK36.cjs");
25
25
  var import_chunk_YHL4JSA6 = require("./chunk-YHL4JSA6.cjs");
26
26
  var import_chunk_ZU5OIHCY = require("./chunk-ZU5OIHCY.cjs");
27
27
  var import_effect = require("effect");
@@ -38,7 +38,7 @@ var app_graph_serializer_default = (context) => (0, import_app_framework.contrib
38
38
  const doc = node.data;
39
39
  const content = await doc.content.load();
40
40
  return {
41
- name: doc.name || doc.fallbackName || import_chunk_6ERKWMAU.translations_default[0]["en-US"][import_chunk_YHL4JSA6.DocumentType.typename]["object name placeholder"],
41
+ name: doc.name || doc.fallbackName || import_chunk_JO4SBK36.translations_default[0]["en-US"][import_chunk_YHL4JSA6.DocumentType.typename]["object name placeholder"],
42
42
  data: content.content,
43
43
  type: "text/markdown"
44
44
  };
@@ -61,4 +61,4 @@ var app_graph_serializer_default = (context) => (0, import_app_framework.contrib
61
61
  }
62
62
  }
63
63
  ]);
64
- //# sourceMappingURL=app-graph-serializer-UVT5EAWW.cjs.map
64
+ //# sourceMappingURL=app-graph-serializer-KBDLASRP.cjs.map
@@ -16,11 +16,11 @@ 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 chunk_6ERKWMAU_exports = {};
20
- __export(chunk_6ERKWMAU_exports, {
19
+ var chunk_JO4SBK36_exports = {};
20
+ __export(chunk_JO4SBK36_exports, {
21
21
  translations_default: () => translations_default
22
22
  });
23
- module.exports = __toCommonJS(chunk_6ERKWMAU_exports);
23
+ module.exports = __toCommonJS(chunk_JO4SBK36_exports);
24
24
  var import_chunk_YHL4JSA6 = require("./chunk-YHL4JSA6.cjs");
25
25
  var import_chunk_ZU5OIHCY = require("./chunk-ZU5OIHCY.cjs");
26
26
  var import_echo_schema = require("@dxos/echo-schema");
@@ -51,7 +51,9 @@ var translations_default = [
51
51
  "settings debug placeholder": "Typewriter script...",
52
52
  "toggle view mode label": "Toggle read-only",
53
53
  "default view mode label": "Default view mode",
54
- "upload image label": "Upload image"
54
+ "upload image label": "Upload image",
55
+ "fallback title": "Untitled",
56
+ "navigate to document label": "Open document"
55
57
  }
56
58
  }
57
59
  }
@@ -60,4 +62,4 @@ var translations_default = [
60
62
  0 && (module.exports = {
61
63
  translations_default
62
64
  });
63
- //# sourceMappingURL=chunk-6ERKWMAU.cjs.map
65
+ //# sourceMappingURL=chunk-JO4SBK36.cjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/translations.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { getSchemaTypename } from '@dxos/echo-schema';\n\nimport { MARKDOWN_PLUGIN } from './meta';\nimport { DocumentType } from './types';\n\nexport default [\n {\n 'en-US': {\n [getSchemaTypename(DocumentType)!]: {\n 'typename label': 'Document',\n 'object name placeholder': 'New document',\n },\n [MARKDOWN_PLUGIN]: {\n 'plugin name': 'Editor',\n 'choose markdown from space dialog title': 'Choose one or more documents to add',\n // TODO(burdon): Style-guide for user-facing text (e.g., hints, questions, capitalization, etc.)\n 'empty choose markdown from space message': 'None available; try creating a new one instead?',\n 'chooser done label': 'Add selected',\n 'editor placeholder': '',\n 'editor input mode label': 'Editor input mode',\n 'select editor input mode placeholder': 'Select editor input mode…',\n 'settings editor input mode default label': 'Default',\n 'settings editor input mode vim label': 'Vim',\n 'settings editor input mode vscode label': 'VS Code',\n 'settings toolbar label': 'Show toolbar',\n 'settings numbered headings label': 'Numbered headings',\n 'settings folding label': 'Folding',\n 'settings experimental label': 'Enable experimental features',\n 'settings debug label': 'Enable debugging features',\n 'settings debug placeholder': 'Typewriter script...',\n 'toggle view mode label': 'Toggle read-only',\n 'default view mode label': 'Default view mode',\n 'upload image label': 'Upload image',\n },\n },\n },\n];\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,yBAAkC;AAKlC,IAAA,uBAAe;EACb;IACE,SAAS;MACP,KAACA,sCAAkBC,kCAAAA,CAAAA,GAAiB;QAClC,kBAAkB;QAClB,2BAA2B;MAC7B;MACA,CAACC,qCAAAA,GAAkB;QACjB,eAAe;QACf,2CAA2C;;QAE3C,4CAA4C;QAC5C,sBAAsB;QACtB,sBAAsB;QACtB,2BAA2B;QAC3B,wCAAwC;QACxC,4CAA4C;QAC5C,wCAAwC;QACxC,2CAA2C;QAC3C,0BAA0B;QAC1B,oCAAoC;QACpC,0BAA0B;QAC1B,+BAA+B;QAC/B,wBAAwB;QACxB,8BAA8B;QAC9B,0BAA0B;QAC1B,2BAA2B;QAC3B,sBAAsB;MACxB;IACF;EACF;;",
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { getSchemaTypename } from '@dxos/echo-schema';\n\nimport { MARKDOWN_PLUGIN } from './meta';\nimport { DocumentType } from './types';\n\nexport default [\n {\n 'en-US': {\n [getSchemaTypename(DocumentType)!]: {\n 'typename label': 'Document',\n 'object name placeholder': 'New document',\n },\n [MARKDOWN_PLUGIN]: {\n 'plugin name': 'Editor',\n 'choose markdown from space dialog title': 'Choose one or more documents to add',\n // TODO(burdon): Style-guide for user-facing text (e.g., hints, questions, capitalization, etc.)\n 'empty choose markdown from space message': 'None available; try creating a new one instead?',\n 'chooser done label': 'Add selected',\n 'editor placeholder': '',\n 'editor input mode label': 'Editor input mode',\n 'select editor input mode placeholder': 'Select editor input mode…',\n 'settings editor input mode default label': 'Default',\n 'settings editor input mode vim label': 'Vim',\n 'settings editor input mode vscode label': 'VS Code',\n 'settings toolbar label': 'Show toolbar',\n 'settings numbered headings label': 'Numbered headings',\n 'settings folding label': 'Folding',\n 'settings experimental label': 'Enable experimental features',\n 'settings debug label': 'Enable debugging features',\n 'settings debug placeholder': 'Typewriter script...',\n 'toggle view mode label': 'Toggle read-only',\n 'default view mode label': 'Default view mode',\n 'upload image label': 'Upload image',\n 'fallback title': 'Untitled',\n 'navigate to document label': 'Open document',\n },\n },\n },\n];\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,yBAAkC;AAKlC,IAAA,uBAAe;EACb;IACE,SAAS;MACP,KAACA,sCAAkBC,kCAAAA,CAAAA,GAAiB;QAClC,kBAAkB;QAClB,2BAA2B;MAC7B;MACA,CAACC,qCAAAA,GAAkB;QACjB,eAAe;QACf,2CAA2C;;QAE3C,4CAA4C;QAC5C,sBAAsB;QACtB,sBAAsB;QACtB,2BAA2B;QAC3B,wCAAwC;QACxC,4CAA4C;QAC5C,wCAAwC;QACxC,2CAA2C;QAC3C,0BAA0B;QAC1B,oCAAoC;QACpC,0BAA0B;QAC1B,+BAA+B;QAC/B,wBAAwB;QACxB,8BAA8B;QAC9B,0BAA0B;QAC1B,2BAA2B;QAC3B,sBAAsB;QACtB,kBAAkB;QAClB,8BAA8B;MAChC;IACF;EACF;;",
6
6
  "names": ["getSchemaTypename", "DocumentType", "MARKDOWN_PLUGIN"]
7
7
  }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var chunk_QRE5L6ZC_exports = {};
30
+ __export(chunk_QRE5L6ZC_exports, {
31
+ AppGraphSerializer: () => AppGraphSerializer,
32
+ ArtifactDefinition: () => ArtifactDefinition,
33
+ IntentResolver: () => IntentResolver,
34
+ MarkdownSettings: () => MarkdownSettings,
35
+ MarkdownState: () => MarkdownState,
36
+ ReactSurface: () => ReactSurface,
37
+ Thread: () => Thread
38
+ });
39
+ module.exports = __toCommonJS(chunk_QRE5L6ZC_exports);
40
+ var import_app_framework = require("@dxos/app-framework");
41
+ var AppGraphSerializer = (0, import_app_framework.lazy)(() => import("./app-graph-serializer-KBDLASRP.cjs"));
42
+ var ArtifactDefinition = (0, import_app_framework.lazy)(() => import("./artifact-definition-ADEN2KD6.cjs"));
43
+ var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-NX5QNRYF.cjs"));
44
+ var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-DJIZSVMN.cjs"));
45
+ var MarkdownSettings = (0, import_app_framework.lazy)(() => import("./settings-2JXASSLU.cjs"));
46
+ var MarkdownState = (0, import_app_framework.lazy)(() => import("./state-PC7IVXFP.cjs"));
47
+ var Thread = (0, import_app_framework.lazy)(() => import("./thread-MXEGV6HS.cjs"));
48
+ // Annotate the CommonJS export names for ESM import in node:
49
+ 0 && (module.exports = {
50
+ AppGraphSerializer,
51
+ ArtifactDefinition,
52
+ IntentResolver,
53
+ MarkdownSettings,
54
+ MarkdownState,
55
+ ReactSurface,
56
+ Thread
57
+ });
58
+ //# sourceMappingURL=chunk-QRE5L6ZC.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const AppGraphSerializer = lazy(() => import('./app-graph-serializer'));\nexport const ArtifactDefinition = lazy(() => import('./artifact-definition'));\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\nexport const MarkdownSettings = lazy(() => import('./settings'));\nexport const MarkdownState = lazy(() => import('./state'));\nexport const Thread = lazy(() => import('./thread'));\n\nexport * from './capabilities';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAAqB;AAEd,IAAMA,yBAAqBC,2BAAK,MAAM,OAAO,qCAAA,CAAA;AAC7C,IAAMC,yBAAqBD,2BAAK,MAAM,OAAO,oCAAA,CAAA;AAC7C,IAAME,qBAAiBF,2BAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAMG,mBAAeH,2BAAK,MAAM,OAAO,8BAAA,CAAA;AACvC,IAAMI,uBAAmBJ,2BAAK,MAAM,OAAO,yBAAA,CAAA;AAC3C,IAAMK,oBAAgBL,2BAAK,MAAM,OAAO,sBAAA,CAAA;AACxC,IAAMM,aAASN,2BAAK,MAAM,OAAO,uBAAA,CAAA;",
6
+ "names": ["AppGraphSerializer", "lazy", "ArtifactDefinition", "IntentResolver", "ReactSurface", "MarkdownSettings", "MarkdownState", "Thread"]
7
+ }
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,40 +15,28 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_5XQ27MNY_exports = {};
30
- __export(chunk_5XQ27MNY_exports, {
31
- AppGraphSerializer: () => AppGraphSerializer,
32
- ArtifactDefinition: () => ArtifactDefinition,
33
- IntentResolver: () => IntentResolver,
34
- MarkdownSettings: () => MarkdownSettings,
35
- MarkdownState: () => MarkdownState,
36
- ReactSurface: () => ReactSurface,
37
- Thread: () => Thread,
19
+ var chunk_WGMVEPB3_exports = {};
20
+ __export(chunk_WGMVEPB3_exports, {
21
+ getAbstract: () => getAbstract,
38
22
  getFallbackName: () => getFallbackName,
39
23
  isMarkdownProperties: () => isMarkdownProperties,
40
24
  serializer: () => serializer,
41
25
  setFallbackName: () => setFallbackName
42
26
  });
43
- module.exports = __toCommonJS(chunk_5XQ27MNY_exports);
27
+ module.exports = __toCommonJS(chunk_WGMVEPB3_exports);
44
28
  var import_chunk_YHL4JSA6 = require("./chunk-YHL4JSA6.cjs");
45
29
  var import_async = require("@dxos/async");
46
30
  var import_echo = require("@dxos/react-client/echo");
47
31
  var import_schema = require("@dxos/schema");
48
- var import_app_framework = require("@dxos/app-framework");
49
32
  var isMarkdownProperties = (data) => (0, import_echo.isEchoObject)(data) ? true : data && typeof data === "object" ? "title" in data && typeof data.title === "string" : false;
50
33
  var nonTitleChars = /[^\w ]/g;
51
34
  var getFallbackName = (content) => {
52
35
  return content.substring(0, 31).split("\n")[0].replaceAll(nonTitleChars, "").trim();
53
36
  };
37
+ var getAbstract = (content) => {
38
+ return content.substring(0, 128).split("\n")[0].replaceAll(nonTitleChars, "").trim();
39
+ };
54
40
  var setFallbackName = (0, import_async.debounce)((doc, content) => {
55
41
  const name = getFallbackName(content);
56
42
  if (doc.fallbackName !== name) {
@@ -78,25 +64,12 @@ var serializer = {
78
64
  }));
79
65
  }
80
66
  };
81
- var AppGraphSerializer = (0, import_app_framework.lazy)(() => import("./app-graph-serializer-UVT5EAWW.cjs"));
82
- var ArtifactDefinition = (0, import_app_framework.lazy)(() => import("./artifact-definition-ADEN2KD6.cjs"));
83
- var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-NX5QNRYF.cjs"));
84
- var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-26PWFBBV.cjs"));
85
- var MarkdownSettings = (0, import_app_framework.lazy)(() => import("./settings-2JXASSLU.cjs"));
86
- var MarkdownState = (0, import_app_framework.lazy)(() => import("./state-PC7IVXFP.cjs"));
87
- var Thread = (0, import_app_framework.lazy)(() => import("./thread-MXEGV6HS.cjs"));
88
67
  // Annotate the CommonJS export names for ESM import in node:
89
68
  0 && (module.exports = {
90
- AppGraphSerializer,
91
- ArtifactDefinition,
92
- IntentResolver,
93
- MarkdownSettings,
94
- MarkdownState,
95
- ReactSurface,
96
- Thread,
69
+ getAbstract,
97
70
  getFallbackName,
98
71
  isMarkdownProperties,
99
72
  serializer,
100
73
  setFallbackName
101
74
  });
102
- //# sourceMappingURL=chunk-5XQ27MNY.cjs.map
75
+ //# sourceMappingURL=chunk-WGMVEPB3.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 { type TypedObjectSerializer } from '@dxos/plugin-space/types';\nimport { live, createObject, isEchoObject, loadObjectReferences, makeRef } from '@dxos/react-client/echo';\nimport { TextType } from '@dxos/schema';\n\nimport { DocumentType, type MarkdownProperties } from './types';\n\nexport const isMarkdownProperties = (data: unknown): data is MarkdownProperties =>\n isEchoObject(data)\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 loadObjectReferences(object, (doc) => doc.content);\n return JSON.stringify({ name: object.name, fallbackName: object.fallbackName, content: content.target?.content });\n },\n\n deserialize: async ({ content: serialized }) => {\n const { name, fallbackName, content } = JSON.parse(serialized);\n return createObject(\n live(DocumentType, { name, fallbackName, content: makeRef(live(TextType, { content })), threads: [] }),\n );\n },\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,mBAAyB;AAEzB,kBAAgF;AAChF,oBAAyB;AAIlB,IAAMA,uBAAuB,CAACC,aACnCC,0BAAaD,IAAAA,IACT,OACAA,QAAQ,OAAOA,SAAS,WACtB,WAAWA,QAAQ,OAAOA,KAAKE,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,UAAMb,UAAU,UAAMc,kCAAqBD,QAAQ,CAACL,QAAQA,IAAIR,OAAO;AACvE,WAAOe,KAAKC,UAAU;MAAEP,MAAMI,OAAOJ;MAAMC,cAAcG,OAAOH;MAAcV,SAASA,QAAQiB,QAAQjB;IAAQ,CAAA;EACjH;EAEAkB,aAAa,OAAO,EAAElB,SAASmB,WAAU,MAAE;AACzC,UAAM,EAAEV,MAAMC,cAAcV,QAAO,IAAKe,KAAKK,MAAMD,UAAAA;AACnD,eAAOE,8BACLC,kBAAKC,oCAAc;MAAEd;MAAMC;MAAcV,aAASwB,yBAAQF,kBAAKG,wBAAU;QAAEzB;MAAQ,CAAA,CAAA;MAAK0B,SAAS,CAAA;IAAG,CAAA,CAAA;EAExG;AACF;",
6
+ "names": ["isMarkdownProperties", "data", "isEchoObject", "title", "nonTitleChars", "getFallbackName", "content", "substring", "split", "replaceAll", "trim", "getAbstract", "setFallbackName", "debounce", "doc", "name", "fallbackName", "serializer", "serialize", "object", "loadObjectReferences", "JSON", "stringify", "target", "deserialize", "serialized", "parse", "createObject", "live", "DocumentType", "makeRef", "TextType", "threads"]
7
+ }
@@ -22,15 +22,17 @@ __export(node_exports, {
22
22
  MarkdownCapabilities: () => import_chunk_DZXTXSXX.MarkdownCapabilities,
23
23
  MarkdownEvents: () => MarkdownEvents,
24
24
  MarkdownPlugin: () => MarkdownPlugin,
25
- getFallbackName: () => import_chunk_5XQ27MNY.getFallbackName,
26
- isMarkdownProperties: () => import_chunk_5XQ27MNY.isMarkdownProperties,
25
+ getAbstract: () => import_chunk_WGMVEPB3.getAbstract,
26
+ getFallbackName: () => import_chunk_WGMVEPB3.getFallbackName,
27
+ isMarkdownProperties: () => import_chunk_WGMVEPB3.isMarkdownProperties,
27
28
  meta: () => import_chunk_ZU5OIHCY.meta,
28
- serializer: () => import_chunk_5XQ27MNY.serializer,
29
- setFallbackName: () => import_chunk_5XQ27MNY.setFallbackName
29
+ serializer: () => import_chunk_WGMVEPB3.serializer,
30
+ setFallbackName: () => import_chunk_WGMVEPB3.setFallbackName
30
31
  });
31
32
  module.exports = __toCommonJS(node_exports);
32
- var import_chunk_6ERKWMAU = require("./chunk-6ERKWMAU.cjs");
33
- var import_chunk_5XQ27MNY = require("./chunk-5XQ27MNY.cjs");
33
+ var import_chunk_JO4SBK36 = require("./chunk-JO4SBK36.cjs");
34
+ var import_chunk_QRE5L6ZC = require("./chunk-QRE5L6ZC.cjs");
35
+ var import_chunk_WGMVEPB3 = require("./chunk-WGMVEPB3.cjs");
34
36
  var import_chunk_DZXTXSXX = require("./chunk-DZXTXSXX.cjs");
35
37
  var import_chunk_YHL4JSA6 = require("./chunk-YHL4JSA6.cjs");
36
38
  var import_chunk_ZU5OIHCY = require("./chunk-ZU5OIHCY.cjs");
@@ -52,14 +54,14 @@ var MarkdownPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_
52
54
  id: `${import_chunk_ZU5OIHCY.meta.id}/module/translations`,
53
55
  activatesOn: import_app_framework2.Events.SetupTranslations,
54
56
  activate: () => (0, import_app_framework2.contributes)(import_app_framework2.Capabilities.Translations, [
55
- ...import_chunk_6ERKWMAU.translations_default,
57
+ ...import_chunk_JO4SBK36.translations_default,
56
58
  ...import_react_ui_editor.translations
57
59
  ])
58
60
  }),
59
61
  (0, import_app_framework2.defineModule)({
60
62
  id: `${import_chunk_ZU5OIHCY.meta.id}/module/settings`,
61
63
  activatesOn: import_app_framework2.Events.SetupSettings,
62
- activate: import_chunk_5XQ27MNY.MarkdownSettings
64
+ activate: import_chunk_QRE5L6ZC.MarkdownSettings
63
65
  }),
64
66
  (0, import_app_framework2.defineModule)({
65
67
  id: `${import_chunk_ZU5OIHCY.meta.id}/module/state`,
@@ -67,7 +69,7 @@ var MarkdownPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_
67
69
  // Should this be a different event?
68
70
  // Should settings store be renamed to be more generic?
69
71
  activatesOn: import_app_framework2.Events.SetupSettings,
70
- activate: import_chunk_5XQ27MNY.MarkdownState
72
+ activate: import_chunk_QRE5L6ZC.MarkdownState
71
73
  }),
72
74
  (0, import_app_framework2.defineModule)({
73
75
  id: `${import_chunk_ZU5OIHCY.meta.id}/module/metadata`,
@@ -85,7 +87,7 @@ var MarkdownPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_
85
87
  doc.content,
86
88
  ...doc.threads
87
89
  ]),
88
- serializer: import_chunk_5XQ27MNY.serializer
90
+ serializer: import_chunk_WGMVEPB3.serializer
89
91
  }
90
92
  })
91
93
  }),
@@ -113,27 +115,27 @@ var MarkdownPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_
113
115
  activatesBefore: [
114
116
  MarkdownEvents.SetupExtensions
115
117
  ],
116
- activate: import_chunk_5XQ27MNY.ReactSurface
118
+ activate: import_chunk_QRE5L6ZC.ReactSurface
117
119
  }),
118
120
  (0, import_app_framework2.defineModule)({
119
121
  id: `${import_chunk_ZU5OIHCY.meta.id}/module/intent-resolver`,
120
122
  activatesOn: import_app_framework2.Events.SetupIntentResolver,
121
- activate: import_chunk_5XQ27MNY.IntentResolver
123
+ activate: import_chunk_QRE5L6ZC.IntentResolver
122
124
  }),
123
125
  (0, import_app_framework2.defineModule)({
124
126
  id: `${import_chunk_ZU5OIHCY.meta.id}/module/app-graph-serializer`,
125
127
  activatesOn: import_app_framework2.Events.AppGraphReady,
126
- activate: import_chunk_5XQ27MNY.AppGraphSerializer
128
+ activate: import_chunk_QRE5L6ZC.AppGraphSerializer
127
129
  }),
128
130
  (0, import_app_framework2.defineModule)({
129
131
  id: `${import_chunk_ZU5OIHCY.meta.id}/module/thread`,
130
132
  activatesOn: import_plugin_space.ThreadEvents.SetupThread,
131
- activate: import_chunk_5XQ27MNY.Thread
133
+ activate: import_chunk_QRE5L6ZC.Thread
132
134
  }),
133
135
  (0, import_app_framework2.defineModule)({
134
136
  id: `${import_chunk_ZU5OIHCY.meta.id}/module/artifact-definition`,
135
137
  activatesOn: import_app_framework2.Events.SetupArtifactDefinition,
136
- activate: import_chunk_5XQ27MNY.ArtifactDefinition
138
+ activate: import_chunk_QRE5L6ZC.ArtifactDefinition
137
139
  })
138
140
  ]);
139
141
  // Annotate the CommonJS export names for ESM import in node:
@@ -142,6 +144,7 @@ var MarkdownPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_
142
144
  MarkdownCapabilities,
143
145
  MarkdownEvents,
144
146
  MarkdownPlugin,
147
+ getAbstract,
145
148
  getFallbackName,
146
149
  isMarkdownProperties,
147
150
  meta,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/events.ts", "../../../src/MarkdownPlugin.tsx"],
4
4
  "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Events } from '@dxos/app-framework';\n\nimport { MARKDOWN_PLUGIN } from './meta';\n\nexport namespace MarkdownEvents {\n export const SetupExtensions = Events.createStateEvent(`${MARKDOWN_PLUGIN}/setup-extensions`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { isInstanceOf, type BaseObject } from '@dxos/echo-schema';\nimport { RefArray } from '@dxos/live-object';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { SpaceCapabilities, ThreadEvents } from '@dxos/plugin-space';\nimport { defineObjectForm } from '@dxos/plugin-space/types';\nimport { translations as editorTranslations } from '@dxos/react-ui-editor';\nimport { TextType } from '@dxos/schema';\n\nimport {\n AppGraphSerializer,\n ArtifactDefinition,\n IntentResolver,\n MarkdownState,\n MarkdownSettings,\n ReactSurface,\n Thread,\n} from './capabilities';\nimport { MarkdownEvents } from './events';\nimport { meta } from './meta';\nimport translations from './translations';\nimport { DocumentType, MarkdownAction } from './types';\nimport { serializer } from './util';\n\nexport const MarkdownPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, [...translations, ...editorTranslations]),\n }),\n defineModule({\n id: `${meta.id}/module/settings`,\n activatesOn: Events.SetupSettings,\n activate: MarkdownSettings,\n }),\n defineModule({\n id: `${meta.id}/module/state`,\n // TODO(wittjosiah): Does not integrate with settings store.\n // Should this be a different event?\n // Should settings store be renamed to be more generic?\n activatesOn: Events.SetupSettings,\n activate: MarkdownState,\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: DocumentType.typename,\n metadata: {\n label: (object: any) =>\n isInstanceOf(DocumentType, object) ? object.name || object.fallbackName : undefined,\n icon: 'ph--text-aa--regular',\n graphProps: {\n managesAutofocus: true,\n },\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: async (doc: DocumentType) =>\n await RefArray.loadAll<BaseObject>([doc.content, ...doc.threads]),\n serializer,\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/object-form`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () =>\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: DocumentType,\n getIntent: (_, { space }) => createIntent(MarkdownAction.Create, { spaceId: space.id }),\n }),\n ),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => contributes(ClientCapabilities.Schema, [TextType]),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n // TODO(wittjosiah): Should occur before the editor is loaded when surfaces activation is more granular.\n activatesBefore: [MarkdownEvents.SetupExtensions],\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-serializer`,\n activatesOn: Events.AppGraphReady,\n activate: AppGraphSerializer,\n }),\n defineModule({\n id: `${meta.id}/module/thread`,\n activatesOn: ThreadEvents.SetupThread,\n activate: Thread,\n }),\n defineModule({\n id: `${meta.id}/module/artifact-definition`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: ArtifactDefinition,\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAAuB;ACAvB,IAAAA,wBAA4F;AAC5F,yBAA8C;AAC9C,yBAAyB;AACzB,2BAAiD;AACjD,0BAAgD;AAChD,mBAAiC;AACjC,6BAAmD;AACnD,oBAAyB;;UDHRC,iBAAAA;kBACFC,kBAAkBC,4BAAOC,iBAAiB,GAAGC,qCAAAA,mBAAkC;AAC9F,GAFiBJ,mBAAAA,iBAAAA,CAAAA,EAAAA;ACoBV,IAAMK,iBAAiB,UAC5BC,oCAAaC,4BAAM;MACjBC,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAOS;IACpBC,UAAU,UAAMC,mCAAYC,mCAAaC,cAAc;SAAIC;SAAiBC,uBAAAA;KAAmB;EACjG,CAAA;MACAT,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAOgB;IACpBN,UAAUO;EACZ,CAAA;MACAX,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;;;;IAIdC,aAAaR,sBAAAA,OAAOgB;IACpBN,UAAUQ;EACZ,CAAA;MACAZ,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAOmB;IACpBT,UAAU,UACRC,mCAAYC,mCAAaQ,UAAU;MACjCb,IAAIc,mCAAaC;MACjBC,UAAU;QACRC,OAAO,CAACC,eACNC,iCAAaL,oCAAcI,MAAAA,IAAUA,OAAOE,QAAQF,OAAOG,eAAeC;QAC5EC,MAAM;QACNC,YAAY;UACVC,kBAAkB;QACpB;;QAEAC,gBAAgB,OAAOC,QACrB,MAAMC,4BAASC,QAAoB;UAACF,IAAIG;aAAYH,IAAII;SAAQ;QAClEC;MACF;IACF,CAAA;EACJ,CAAA;MACAjC,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAagC,kCAAaC;IAC1B/B,UAAU,UACRC,mCACE+B,sCAAkBC,gBAClBC,+BAAiB;MACfC,cAAcxB;MACdyB,WAAW,CAACC,GAAG,EAAEC,MAAK,UAAOC,oCAAaC,qCAAeC,QAAQ;QAAEC,SAASJ,MAAMzC;MAAG,CAAA;IACvF,CAAA,CAAA;EAEN,CAAA;MACAD,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAagC,kCAAaC;IAC1B/B,UAAU,UAAMC,mCAAY0C,wCAAmBC,QAAQ;MAACC;KAAS;EACnE,CAAA;MACAjD,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAOwD;;IAEpBC,iBAAiB;MAAC3D,eAAeC;;IACjCW,UAAUgD;EACZ,CAAA;MACApD,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAO2D;IACpBjD,UAAUkD;EACZ,CAAA;MACAtD,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAO6D;IACpBnD,UAAUoD;EACZ,CAAA;MACAxD,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAauD,iCAAaC;IAC1BtD,UAAUuD;EACZ,CAAA;MACA3D,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAOkE;IACpBxD,UAAUyD;EACZ,CAAA;CACD;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAAuB;ACAvB,IAAAA,wBAA4F;AAC5F,yBAA8C;AAC9C,yBAAyB;AACzB,2BAAiD;AACjD,0BAAgD;AAChD,mBAAiC;AACjC,6BAAmD;AACnD,oBAAyB;;UDHRC,iBAAAA;kBACFC,kBAAkBC,4BAAOC,iBAAiB,GAAGC,qCAAAA,mBAAkC;AAC9F,GAFiBJ,mBAAAA,iBAAAA,CAAAA,EAAAA;ACoBV,IAAMK,iBAAiB,UAC5BC,oCAAaC,4BAAM;MACjBC,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAOS;IACpBC,UAAU,UAAMC,mCAAYC,mCAAaC,cAAc;SAAIC;SAAiBC,uBAAAA;KAAmB;EACjG,CAAA;MACAT,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAOgB;IACpBN,UAAUO;EACZ,CAAA;MACAX,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;;;;IAIdC,aAAaR,sBAAAA,OAAOgB;IACpBN,UAAUQ;EACZ,CAAA;MACAZ,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAOmB;IACpBT,UAAU,UACRC,mCAAYC,mCAAaQ,UAAU;MACjCb,IAAIc,mCAAaC;MACjBC,UAAU;QACRC,OAAO,CAACC,eACNC,iCAAaL,oCAAcI,MAAAA,IAAUA,OAAOE,QAAQF,OAAOG,eAAeC;QAC5EC,MAAM;QACNC,YAAY;UACVC,kBAAkB;QACpB;;QAEAC,gBAAgB,OAAOC,QACrB,MAAMC,4BAASC,QAAoB;UAACF,IAAIG;aAAYH,IAAII;SAAQ;QAClEC;MACF;IACF,CAAA;EACJ,CAAA;MACAjC,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAagC,kCAAaC;IAC1B/B,UAAU,UACRC,mCACE+B,sCAAkBC,gBAClBC,+BAAiB;MACfC,cAAcxB;MACdyB,WAAW,CAACC,GAAG,EAAEC,MAAK,UAAOC,oCAAaC,qCAAeC,QAAQ;QAAEC,SAASJ,MAAMzC;MAAG,CAAA;IACvF,CAAA,CAAA;EAEN,CAAA;MACAD,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAagC,kCAAaC;IAC1B/B,UAAU,UAAMC,mCAAY0C,wCAAmBC,QAAQ;MAACC;KAAS;EACnE,CAAA;MACAjD,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAOwD;;IAEpBC,iBAAiB;MAAC3D,eAAeC;;IACjCW,UAAUgD;EACZ,CAAA;MACApD,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAO2D;IACpBjD,UAAUkD;EACZ,CAAA;MACAtD,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAO6D;IACpBnD,UAAUoD;EACZ,CAAA;MACAxD,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAauD,iCAAaC;IAC1BtD,UAAUuD;EACZ,CAAA;MACA3D,oCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaR,sBAAAA,OAAOkE;IACpBxD,UAAUyD;EACZ,CAAA;CACD;",
6
6
  "names": ["import_app_framework", "MarkdownEvents", "SetupExtensions", "Events", "createStateEvent", "MARKDOWN_PLUGIN", "MarkdownPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "editorTranslations", "SetupSettings", "MarkdownSettings", "MarkdownState", "SetupMetadata", "Metadata", "DocumentType", "typename", "metadata", "label", "object", "isInstanceOf", "name", "fallbackName", "undefined", "icon", "graphProps", "managesAutofocus", "loadReferences", "doc", "RefArray", "loadAll", "content", "threads", "serializer", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "getIntent", "_", "space", "createIntent", "MarkdownAction", "Create", "spaceId", "ClientCapabilities", "Schema", "TextType", "SetupReactSurface", "activatesBefore", "ReactSurface", "SetupIntentResolver", "IntentResolver", "AppGraphReady", "AppGraphSerializer", "ThreadEvents", "SetupThread", "Thread", "SetupArtifactDefinition", "ArtifactDefinition"]
7
7
  }