@inkandswitch/patchwork-pkg-base 0.0.7 → 0.0.8

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 (48) hide show
  1. package/modules.json +4 -0
  2. package/package.json +1 -1
  3. package/packages/account-history/dist/assets/HistoryRecorder-HO_sxeuE.js +248 -0
  4. package/packages/account-history/dist/assets/HistoryRecorder-HO_sxeuE.js.map +1 -0
  5. package/packages/account-history/dist/assets/HistoryViewer-Ct5g7zek.js +308 -0
  6. package/packages/account-history/dist/assets/HistoryViewer-Ct5g7zek.js.map +1 -0
  7. package/packages/account-history/dist/assets/NotebookViewer-BkYJL6Jc.js +504 -0
  8. package/packages/account-history/dist/assets/NotebookViewer-BkYJL6Jc.js.map +1 -0
  9. package/packages/account-history/dist/assets/index-CFzuSuJg.js +148 -0
  10. package/packages/account-history/dist/assets/index-CFzuSuJg.js.map +1 -0
  11. package/packages/account-history/dist/assets/makeDocumentProjection-DXgEZYyv.js +706 -0
  12. package/packages/account-history/dist/assets/makeDocumentProjection-DXgEZYyv.js.map +1 -0
  13. package/packages/account-history/dist/assets/store-CRmRL4Cv.js +1079 -0
  14. package/packages/account-history/dist/assets/store-CRmRL4Cv.js.map +1 -0
  15. package/packages/account-history/dist/index.js +5 -0
  16. package/packages/account-history/dist/index.js.map +1 -0
  17. package/packages/account-history/package.json +33 -0
  18. package/packages/chat/dist/ChatRoot-BXsklgz7.js +6113 -0
  19. package/packages/chat/dist/context-tool-CenQrztX.js +107 -0
  20. package/packages/chat/dist/datatype-1niKKK-c.js +15 -0
  21. package/packages/chat/dist/index-DYFHDHZ9.js +368 -0
  22. package/packages/chat/dist/index.js +5 -0
  23. package/packages/chat/dist/tool-D9BTS5wc.js +38 -0
  24. package/packages/chat/package.json +42 -0
  25. package/packages/comments-view/dist/assets/comments-D9lwpHOh.js +50 -0
  26. package/packages/comments-view/dist/assets/comments-D9lwpHOh.js.map +1 -0
  27. package/packages/comments-view/dist/assets/datatype-C4SMwWiO.js +22 -0
  28. package/packages/comments-view/dist/assets/datatype-C4SMwWiO.js.map +1 -0
  29. package/packages/comments-view/dist/assets/main-C8GVksuY.js +2973 -0
  30. package/packages/comments-view/dist/assets/main-C8GVksuY.js.map +1 -0
  31. package/packages/comments-view/dist/index.js +115 -0
  32. package/packages/comments-view/dist/index.js.map +1 -0
  33. package/packages/comments-view/package.json +36 -0
  34. package/packages/drafts/dist/assets/DraftDatatype-Dn8VF6oC.js +14 -0
  35. package/packages/drafts/dist/assets/DraftDatatype-Dn8VF6oC.js.map +1 -0
  36. package/packages/drafts/dist/assets/DraftListProvider-DVhUGU1x.js +362 -0
  37. package/packages/drafts/dist/assets/DraftListProvider-DVhUGU1x.js.map +1 -0
  38. package/packages/drafts/dist/assets/DraftOverlayProvider-NMDqnpBV.js +123 -0
  39. package/packages/drafts/dist/assets/DraftOverlayProvider-NMDqnpBV.js.map +1 -0
  40. package/packages/drafts/dist/assets/clone-policy-D4XOfZxs.js +15 -0
  41. package/packages/drafts/dist/assets/clone-policy-D4XOfZxs.js.map +1 -0
  42. package/packages/drafts/dist/assets/index-DAqs20jZ.js +65 -0
  43. package/packages/drafts/dist/assets/index-DAqs20jZ.js.map +1 -0
  44. package/packages/drafts/dist/assets/main-Cdev7z-t.js +2366 -0
  45. package/packages/drafts/dist/assets/main-Cdev7z-t.js.map +1 -0
  46. package/packages/drafts/dist/index.js +140 -0
  47. package/packages/drafts/dist/index.js.map +1 -0
  48. package/packages/drafts/package.json +34 -0
@@ -0,0 +1,42 @@
1
+ {
2
+ "name": "@patchwork/chat",
3
+ "version": "0.4.0",
4
+ "description": "chitterchatter: chat with emoji reactions, presence/typing indicators, image paste, voice notes, and message replies.",
5
+ "type": "module",
6
+ "main": "./main.js",
7
+ "exports": {
8
+ ".": "./dist/index.js"
9
+ },
10
+ "scripts": {
11
+ "build": "vite build",
12
+ "dev": "vite build --watch",
13
+ "push": "pnpm build && pushwork sync",
14
+ "register": "pw-modules add \"$MODULE_SETTINGS_DOC_URL\" \"$(pushwork url)\""
15
+ },
16
+ "keywords": [
17
+ "chat",
18
+ "reactions",
19
+ "voice-notes",
20
+ "presence"
21
+ ],
22
+ "author": "chee",
23
+ "dependencies": {
24
+ "@automerge/automerge": "^3.2.1",
25
+ "@automerge/automerge-repo": "^2.5.0",
26
+ "@chee/patchwork-llm": "automerge:HaCFnBBADdADqJm4Bu5Sc4abQyE#26oUrk4Jj3kBUbJjGEr1SuQLskBBxxihaWGWL4g7jTPvwM9TM3",
27
+ "@chee/patchwork-transcript": "automerge:2AdvAyQ85NfazBA4TtDyRYCqfvYb#RUCqgHPjqB8fwhZczav5rwJ9J7rBLj3rSfQ9ykaCkR3HrEN2n",
28
+ "@inkandswitch/patchwork-elements": "^0.0.5",
29
+ "@inkandswitch/patchwork-filesystem": "^0.1.2",
30
+ "cute.txt": "^0.0.6",
31
+ "solid-automerge": "^2.0.0",
32
+ "solid-js": "^1.9.11"
33
+ },
34
+ "devDependencies": {
35
+ "@chee/patchwork-bundles": "^0.2.0",
36
+ "@inkandswitch/patchwork-bootloader": "^0.0.3",
37
+ "typescript": "^5.8.3",
38
+ "vite": "^5.4.19",
39
+ "vite-plugin-css-injected-by-js": "^3.5.2",
40
+ "vite-plugin-solid": "^2.10.0"
41
+ }
42
+ }
@@ -0,0 +1,50 @@
1
+ const COMMENT_THREAD_TYPE = "comment-thread";
2
+ function createDocumentThread({
3
+ docHandle,
4
+ contactUrl,
5
+ content
6
+ }) {
7
+ const threadId = crypto.randomUUID();
8
+ const commentId = crypto.randomUUID();
9
+ docHandle.change((doc) => {
10
+ doc["@comments"] ??= { threads: [] };
11
+ const comment = {
12
+ id: commentId,
13
+ contactUrl,
14
+ timestamp: Date.now()
15
+ };
16
+ if (content) comment.content = content;
17
+ doc["@comments"].threads.push({
18
+ id: threadId,
19
+ refs: [docHandle.url],
20
+ isResolved: false,
21
+ comments: [comment],
22
+ "@patchwork": { type: COMMENT_THREAD_TYPE }
23
+ });
24
+ });
25
+ return docHandle.sub("@comments", "threads", {
26
+ id: threadId
27
+ }).sub("comments", { id: commentId });
28
+ }
29
+ function createReply({
30
+ threadHandle: thread,
31
+ content,
32
+ contactUrl
33
+ }) {
34
+ const commentId = crypto.randomUUID();
35
+ thread.change((thread2) => {
36
+ const comment = {
37
+ id: commentId,
38
+ contactUrl,
39
+ timestamp: Date.now()
40
+ };
41
+ thread2.comments.push(comment);
42
+ });
43
+ return thread.sub("comments", { id: commentId });
44
+ }
45
+ export {
46
+ COMMENT_THREAD_TYPE as C,
47
+ createReply as a,
48
+ createDocumentThread as c
49
+ };
50
+ //# sourceMappingURL=comments-D9lwpHOh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"comments-D9lwpHOh.js","sources":["../../src/comments.ts"],"sourcesContent":["import type { AutomergeUrl, DocHandle } from \"@automerge/automerge-repo\";\n\n/**\n * The `@patchwork.type` stamped on a comment thread so a datatype (and thus a\n * relevant tool, e.g. `comment-thread`) can be resolved when the thread's\n * subdocument is opened on its own — for instance in a tiling-frame panel.\n */\nexport const COMMENT_THREAD_TYPE = \"comment-thread\";\n\nexport type DocWithComments = {\n \"@comments\"?: {\n threads: CommentThread[];\n };\n};\n\nexport type CommentThread = {\n id: string;\n refs: AutomergeUrl[];\n isResolved: boolean;\n comments: Comment[];\n \"@patchwork\"?: { type: string; title?: string };\n};\n\nexport type Comment = {\n id: string;\n content?: string;\n draftContent?: string;\n contactUrl: AutomergeUrl;\n timestamp: number;\n // When present, the comment's `content` is treated as a reference (an\n // automerge url) to another document, and the comment renders that document\n // inline via `<patchwork-view>` instead of showing `content` as text. The\n // `type` picks the default tool/view; the user can switch to another.\n \"@patchwork\"?: { type: string; title?: string };\n};\n\n/**\n * Create a document-level comment thread: one that targets the whole\n * document (its only ref is the document's own url) rather than a range or\n * sub-doc within it. Used when the active tool or datatype can't locate\n * comments to a specific spot. Returns a handle to the seeded draft comment.\n */\nexport function createDocumentThread({\n docHandle,\n contactUrl,\n content,\n}: {\n docHandle: DocHandle<DocWithComments>;\n contactUrl: AutomergeUrl;\n content?: string;\n}): DocHandle<Comment> {\n const threadId = crypto.randomUUID();\n const commentId = crypto.randomUUID();\n\n docHandle.change((doc) => {\n doc[\"@comments\"] ??= { threads: [] };\n const comment: Comment = {\n id: commentId,\n contactUrl,\n timestamp: Date.now(),\n };\n if (content) comment.content = content;\n doc[\"@comments\"].threads.push({\n id: threadId,\n refs: [docHandle.url],\n isResolved: false,\n comments: [comment],\n \"@patchwork\": { type: COMMENT_THREAD_TYPE },\n });\n });\n\n return docHandle.sub(\"@comments\", \"threads\", {\n id: threadId,\n }).sub(\"comments\", { id: commentId }) as DocHandle<Comment>;\n}\n\nexport function createReply({\n threadHandle: thread,\n content,\n contactUrl,\n}: {\n threadHandle: DocHandle<CommentThread>;\n content?: string;\n contactUrl: AutomergeUrl;\n}): DocHandle<Comment> {\n const commentId = crypto.randomUUID();\n\n thread.change((thread) => {\n const comment: Comment = {\n id: commentId,\n contactUrl,\n timestamp: Date.now(),\n };\n\n if (content) comment.content = content;\n thread.comments.push(comment);\n });\n\n return thread.sub(\"comments\", { id: commentId }) as DocHandle<Comment>;\n}\n"],"names":["thread"],"mappings":"AAOO,MAAM,sBAAsB;AAmC5B,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AACF,GAIuB;AACrB,QAAM,WAAW,OAAO,WAAA;AACxB,QAAM,YAAY,OAAO,WAAA;AAEzB,YAAU,OAAO,CAAC,QAAQ;AACxB,QAAI,WAAW,MAAM,EAAE,SAAS,CAAA,EAAC;AACjC,UAAM,UAAmB;AAAA,MACvB,IAAI;AAAA,MACJ;AAAA,MACA,WAAW,KAAK,IAAA;AAAA,IAAI;AAEtB,QAAI,iBAAiB,UAAU;AAC/B,QAAI,WAAW,EAAE,QAAQ,KAAK;AAAA,MAC5B,IAAI;AAAA,MACJ,MAAM,CAAC,UAAU,GAAG;AAAA,MACpB,YAAY;AAAA,MACZ,UAAU,CAAC,OAAO;AAAA,MAClB,cAAc,EAAE,MAAM,oBAAA;AAAA,IAAoB,CAC3C;AAAA,EACH,CAAC;AAED,SAAO,UAAU,IAAI,aAAa,WAAW;AAAA,IAC3C,IAAI;AAAA,EAAA,CACL,EAAE,IAAI,YAAY,EAAE,IAAI,WAAW;AACtC;AAEO,SAAS,YAAY;AAAA,EAC1B,cAAc;AAAA,EACd;AAAA,EACA;AACF,GAIuB;AACrB,QAAM,YAAY,OAAO,WAAA;AAEzB,SAAO,OAAO,CAACA,YAAW;AACxB,UAAM,UAAmB;AAAA,MACvB,IAAI;AAAA,MACJ;AAAA,MACA,WAAW,KAAK,IAAA;AAAA,IAAI;AAItBA,YAAO,SAAS,KAAK,OAAO;AAAA,EAC9B,CAAC;AAED,SAAO,OAAO,IAAI,YAAY,EAAE,IAAI,WAAW;AACjD;"}
@@ -0,0 +1,22 @@
1
+ import { C as COMMENT_THREAD_TYPE } from "./comments-D9lwpHOh.js";
2
+ const firstCommentSnippet = (doc) => {
3
+ const first = doc.comments?.find((c) => c.content);
4
+ const text = first?.content?.trim().replace(/\s+/g, " ");
5
+ if (!text) return void 0;
6
+ return text.length > 40 ? `${text.slice(0, 40)}…` : text;
7
+ };
8
+ const CommentThreadDatatype = {
9
+ getTitle: (doc) => {
10
+ if (doc["@patchwork"]?.title) return doc["@patchwork"].title;
11
+ const snippet = firstCommentSnippet(doc);
12
+ return snippet ? `Comment: ${snippet}` : "Comment thread";
13
+ },
14
+ setTitle(doc, title) {
15
+ if (!doc["@patchwork"]) doc["@patchwork"] = { type: COMMENT_THREAD_TYPE };
16
+ doc["@patchwork"].title = title;
17
+ }
18
+ };
19
+ export {
20
+ CommentThreadDatatype
21
+ };
22
+ //# sourceMappingURL=datatype-C4SMwWiO.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datatype-C4SMwWiO.js","sources":["../../src/datatype.ts"],"sourcesContent":["import type { DatatypeImplementation } from \"@inkandswitch/patchwork-plugins\";\nimport { COMMENT_THREAD_TYPE, type CommentThread } from \"./comments\";\n\n/** A short, single-line preview of a thread's first comment. */\nconst firstCommentSnippet = (doc: CommentThread): string | undefined => {\n const first = doc.comments?.find((c) => c.content);\n const text = first?.content?.trim().replace(/\\s+/g, \" \");\n if (!text) return undefined;\n return text.length > 40 ? `${text.slice(0, 40)}…` : text;\n};\n\nexport const CommentThreadDatatype: DatatypeImplementation<CommentThread> = {\n getTitle: (doc) => {\n if (doc[\"@patchwork\"]?.title) return doc[\"@patchwork\"].title;\n const snippet = firstCommentSnippet(doc);\n return snippet ? `Comment: ${snippet}` : \"Comment thread\";\n },\n setTitle(doc, title) {\n if (!doc[\"@patchwork\"]) doc[\"@patchwork\"] = { type: COMMENT_THREAD_TYPE };\n doc[\"@patchwork\"].title = title;\n },\n};\n"],"names":[],"mappings":";AAIA,MAAM,sBAAsB,CAAC,QAA2C;AACtE,QAAM,QAAQ,IAAI,UAAU,KAAK,CAAC,MAAM,EAAE,OAAO;AACjD,QAAM,OAAO,OAAO,SAAS,OAAO,QAAQ,QAAQ,GAAG;AACvD,MAAI,CAAC,KAAM,QAAO;AAClB,SAAO,KAAK,SAAS,KAAK,GAAG,KAAK,MAAM,GAAG,EAAE,CAAC,MAAM;AACtD;AAEO,MAAM,wBAA+D;AAAA,EAC1E,UAAU,CAAC,QAAQ;AACjB,QAAI,IAAI,YAAY,GAAG,MAAO,QAAO,IAAI,YAAY,EAAE;AACvD,UAAM,UAAU,oBAAoB,GAAG;AACvC,WAAO,UAAU,YAAY,OAAO,KAAK;AAAA,EAC3C;AAAA,EACA,SAAS,KAAK,OAAO;AACnB,QAAI,CAAC,IAAI,YAAY,OAAO,YAAY,IAAI,EAAE,MAAM,oBAAA;AACpD,QAAI,YAAY,EAAE,QAAQ;AAAA,EAC5B;AACF;"}