@inkandswitch/patchwork-pkg-base 0.0.54 → 0.0.56
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/package.json +1 -1
- package/packages/account/dist/{AccountPicker-HMEN6MEN.js → AccountPicker-HB6MDLKN.js} +390 -123
- package/packages/account/dist/AccountPicker-HB6MDLKN.js.map +7 -0
- package/packages/account/dist/{ContactAvatar-KCZOCABR.js → ContactAvatar-KM4BONY5.js} +7 -7
- package/packages/account/dist/ContactAvatar-KM4BONY5.js.map +7 -0
- package/packages/account/dist/{ContactCursor-RLXRAX65.js → ContactCursor-4FYCATG5.js} +6 -6
- package/packages/account/dist/ContactCursor-4FYCATG5.js.map +7 -0
- package/packages/account/dist/index.css +96 -15
- package/packages/account/dist/index.css.map +2 -2
- package/packages/account/dist/index.js +3 -3
- package/packages/codemirror-base/dist/{chunk-H5POLO74.js → chunk-AKNT5U37.js} +43 -28
- package/packages/codemirror-base/dist/chunk-AKNT5U37.js.map +7 -0
- package/packages/codemirror-base/dist/lib/codemirror.js +1 -1
- package/packages/codemirror-base/dist/tool.js +21 -3
- package/packages/codemirror-base/dist/tool.js.map +2 -2
- package/packages/comments-view/dist/assets/main-BPvgT7fH.js +1 -1
- package/packages/tldraw4/dist/tool.js +3 -23
- package/packages/tldraw4/dist/tool.js.map +2 -2
- package/packages/account/dist/AccountPicker-HMEN6MEN.js.map +0 -7
- package/packages/account/dist/ContactAvatar-KCZOCABR.js.map +0 -7
- package/packages/account/dist/ContactCursor-RLXRAX65.js.map +0 -7
- package/packages/account/dist/chunk-3YUNEZX6.js +0 -38
- package/packages/account/dist/chunk-3YUNEZX6.js.map +0 -7
- package/packages/codemirror-base/dist/chunk-H5POLO74.js.map +0 -7
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
try {
|
|
4
4
|
if (typeof document != "undefined") {
|
|
5
5
|
var elementStyle = document.createElement("style");
|
|
6
|
-
elementStyle.appendChild(document.createTextNode("@layer package {\n:root,\n:host,\n[theme] {\n --comments-fg: var(--text-editor-line, var(--studio-line, black));\n --comments-muted-fg: var(--studio-line-offset-50, #999);\n --comments-bg: var(--text-editor-fill, var(--studio-fill, white));\n --comments-border: var(--studio-fill-offset-20, #ccc);\n --comments-hover-bg: var(--studio-fill-offset-10, #f5f5f5);\n --comments-font: var(--studio-family-sans, system-ui, sans-serif);\n --comments-accent: var(--studio-secondary, #33ccf8);\n}\n}\n\n/* The width:100% boxes below (panel, textarea) also carry padding and a\n border, so without border-box they extend past their container and overflow\n it. Scoped to the panel and the thread card so the injected stylesheet never\n touches the host page (it may be injected into document.head, not a shadow\n root). The card is covered on its own because a single thread renders\n standalone too — e.g. in the editor's comment popover, with no panel around\n it — and its draft textarea would otherwise spill out of the card. */\n.comments-panel,\n.comments-panel *,\n.comments-panel *::before,\n.comments-panel *::after,\n.comments-thread-card,\n.comments-thread-card *,\n.comments-thread-card *::before,\n.comments-thread-card *::after {\n box-sizing: border-box;\n}\n\n.comments-panel {\n height: 100%;\n width: 100%;\n overflow: auto;\n display: flex;\n flex-direction: column;\n padding: 0.5rem;\n gap: 0.5rem;\n font-family: var(--comments-font);\n color: var(--comments-fg);\n}\n\n.comments-panel-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n font-size: 0.75rem;\n color: var(--comments-muted-fg);\n}\n\n.comments-panel-header-title {\n font-weight: 500;\n}\n\n.comments-empty {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 1.5rem 0.5rem;\n text-align: center;\n font-size: 0.875rem;\n color: var(--comments-muted-fg);\n}\n\n.comments-thread {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n/* The thread's card + actions are rendered by the `comment-thread` tool into\n its <patchwork-view> host, so that host is the flex column that lays them\n out (a custom element is `display: inline` by default). */\n.comments-thread > patchwork-view {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.comments-thread-card {\n background: var(--comments-bg);\n border: 1px solid var(--comments-border);\n padding: 0.5rem;\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n cursor: pointer;\n transition: box-shadow 0.15s ease;\n}\n\n.comments-thread-card--primary {\n box-shadow:\n 0 10px 15px -3px rgb(0 0 0 / 0.1),\n 0 4px 6px -4px rgb(0 0 0 / 0.1);\n}\n\n.comments-thread-card--secondary {\n box-shadow:\n 0 4px 6px -1px rgb(0 0 0 / 0.1),\n 0 2px 4px -2px rgb(0 0 0 / 0.1);\n}\n\n.comments-thread-card--inactive {\n box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n}\n\n/* Resolved threads are hidden in the sidebar but shown when embedded. Keep\n them clearly readable, just visibly \"settled\": muted fill, dashed border,\n and slightly dimmed so they read as archived rather than active. */\n.comments-thread-card--resolved {\n background: var(--comments-hover-bg);\n border-style: dashed;\n opacity: 0.75;\n}\n\n.comments-thread-resolved-label {\n align-self: flex-start;\n font-size: 0.6875rem;\n font-weight: 500;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n padding: 0.0625rem 0.375rem;\n border-radius: 0.625rem;\n color: var(--comments-muted-fg);\n border: 1px solid var(--comments-border);\n}\n\n.comments-thread-card-body {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.comments-thread-doc-level {\n font-size: 0.6875rem;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n color: var(--comments-muted-fg);\n}\n\n.comments-thread-header {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n}\n\n.comments-thread-actions {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n justify-content: flex-end;\n}\n\n.comment-card {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.comment-header {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n}\n\n.comment-author {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n align-items: center;\n}\n\n.comment-author-name {\n font-size: 0.875rem;\n font-weight: 500;\n white-space: nowrap;\n color: var(--comments-fg);\n}\n\n.comment-timestamp {\n font-size: 0.75rem;\n color: var(--comments-muted-fg);\n}\n\n.comment-content {\n font-size: 1rem;\n color: var(--comments-fg);\n white-space: pre-wrap;\n overflow-wrap: break-word;\n}\n\n/* The draft editor is a cute.txt (CodeMirror) instance; box it like the old\n textarea. Its inner padding/font come from the injected cute.txt styles. */\n.comment-draft-editor {\n height: 6rem;\n min-height: 6rem;\n border: 1px solid var(--comments-border);\n border-radius: 0.5rem;\n color: var(--comments-fg);\n background: var(--comments-bg);\n overflow: hidden;\n}\n\n.comment-draft-editor .cm-content {\n box-sizing: border-box;\n min-height:
|
|
6
|
+
elementStyle.appendChild(document.createTextNode("@layer package {\n:root,\n:host,\n[theme] {\n --comments-fg: var(--text-editor-line, var(--studio-line, black));\n --comments-muted-fg: var(--studio-line-offset-50, #999);\n --comments-bg: var(--text-editor-fill, var(--studio-fill, white));\n --comments-border: var(--studio-fill-offset-20, #ccc);\n --comments-hover-bg: var(--studio-fill-offset-10, #f5f5f5);\n --comments-font: var(--studio-family-sans, system-ui, sans-serif);\n --comments-accent: var(--studio-secondary, #33ccf8);\n}\n}\n\n/* The width:100% boxes below (panel, textarea) also carry padding and a\n border, so without border-box they extend past their container and overflow\n it. Scoped to the panel and the thread card so the injected stylesheet never\n touches the host page (it may be injected into document.head, not a shadow\n root). The card is covered on its own because a single thread renders\n standalone too — e.g. in the editor's comment popover, with no panel around\n it — and its draft textarea would otherwise spill out of the card. */\n.comments-panel,\n.comments-panel *,\n.comments-panel *::before,\n.comments-panel *::after,\n.comments-thread-card,\n.comments-thread-card *,\n.comments-thread-card *::before,\n.comments-thread-card *::after {\n box-sizing: border-box;\n}\n\n.comments-panel {\n height: 100%;\n width: 100%;\n overflow: auto;\n display: flex;\n flex-direction: column;\n padding: 0.5rem;\n gap: 0.5rem;\n font-family: var(--comments-font);\n color: var(--comments-fg);\n}\n\n.comments-panel-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n font-size: 0.75rem;\n color: var(--comments-muted-fg);\n}\n\n.comments-panel-header-title {\n font-weight: 500;\n}\n\n.comments-empty {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 1.5rem 0.5rem;\n text-align: center;\n font-size: 0.875rem;\n color: var(--comments-muted-fg);\n}\n\n.comments-thread {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n/* The thread's card + actions are rendered by the `comment-thread` tool into\n its <patchwork-view> host, so that host is the flex column that lays them\n out (a custom element is `display: inline` by default). */\n.comments-thread > patchwork-view {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.comments-thread-card {\n background: var(--comments-bg);\n border: 1px solid var(--comments-border);\n padding: 0.5rem;\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n cursor: pointer;\n transition: box-shadow 0.15s ease;\n}\n\n.comments-thread-card--primary {\n box-shadow:\n 0 10px 15px -3px rgb(0 0 0 / 0.1),\n 0 4px 6px -4px rgb(0 0 0 / 0.1);\n}\n\n.comments-thread-card--secondary {\n box-shadow:\n 0 4px 6px -1px rgb(0 0 0 / 0.1),\n 0 2px 4px -2px rgb(0 0 0 / 0.1);\n}\n\n.comments-thread-card--inactive {\n box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n}\n\n/* Resolved threads are hidden in the sidebar but shown when embedded. Keep\n them clearly readable, just visibly \"settled\": muted fill, dashed border,\n and slightly dimmed so they read as archived rather than active. */\n.comments-thread-card--resolved {\n background: var(--comments-hover-bg);\n border-style: dashed;\n opacity: 0.75;\n}\n\n.comments-thread-resolved-label {\n align-self: flex-start;\n font-size: 0.6875rem;\n font-weight: 500;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n padding: 0.0625rem 0.375rem;\n border-radius: 0.625rem;\n color: var(--comments-muted-fg);\n border: 1px solid var(--comments-border);\n}\n\n.comments-thread-card-body {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.comments-thread-doc-level {\n font-size: 0.6875rem;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n color: var(--comments-muted-fg);\n}\n\n.comments-thread-header {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n}\n\n.comments-thread-actions {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n justify-content: flex-end;\n}\n\n.comment-card {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.comment-header {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n}\n\n.comment-author {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n align-items: center;\n}\n\n.comment-author-name {\n font-size: 0.875rem;\n font-weight: 500;\n white-space: nowrap;\n color: var(--comments-fg);\n}\n\n.comment-timestamp {\n font-size: 0.75rem;\n color: var(--comments-muted-fg);\n}\n\n.comment-content {\n font-size: 1rem;\n color: var(--comments-fg);\n white-space: pre-wrap;\n overflow-wrap: break-word;\n}\n\n/* The draft editor is a cute.txt (CodeMirror) instance; box it like the old\n textarea. Its inner padding/font come from the injected cute.txt styles. */\n.comment-draft-editor {\n height: 6rem;\n min-height: 6rem;\n min-width: 0;\n width: 100%;\n border: 1px solid var(--comments-border);\n border-radius: 0.5rem;\n color: var(--comments-fg);\n background: var(--comments-bg);\n overflow: hidden;\n}\n\n.comment-draft-editor .cm-content {\n box-sizing: border-box;\n min-height: 0;\n min-width: 0;\n margin: 0;\n padding: 0.5rem;\n}\n\n.comment-draft-editor .cm-line {\n margin: 0;\n padding: 0;\n}\n\n.comment-draft-editor .cm-scroller {\n height: 100%;\n min-width: 0;\n}\n\n.comment-draft-editor:focus-within {\n outline: 2px solid var(--comments-accent);\n outline-offset: 1px;\n}\n\n.comment-btn {\n padding: 0.25rem 0.5rem;\n border-radius: 0.25rem;\n font-family: inherit;\n font-size: 0.875rem;\n cursor: pointer;\n border: none;\n background: transparent;\n color: var(--comments-fg);\n}\n\n.comment-btn:hover {\n background: var(--comments-hover-bg);\n}"));
|
|
7
7
|
document.head.appendChild(elementStyle);
|
|
8
8
|
}
|
|
9
9
|
} catch (e) {
|
|
@@ -8359,26 +8359,6 @@ function urlFromText(line) {
|
|
|
8359
8359
|
|
|
8360
8360
|
// src/CollaboratorCursor.tsx
|
|
8361
8361
|
var import_jsx_runtime4 = __toESM(require_jsx_runtime(), 1);
|
|
8362
|
-
var USER_COLOR_PALETTE = [
|
|
8363
|
-
"hsl(200, 70%, 50%)",
|
|
8364
|
-
"hsl(10, 75%, 58%)",
|
|
8365
|
-
"hsl(145, 70%, 45%)",
|
|
8366
|
-
"hsl(270, 70%, 55%)",
|
|
8367
|
-
"hsl(38, 85%, 50%)",
|
|
8368
|
-
"hsl(350, 70%, 55%)",
|
|
8369
|
-
"hsl(178, 70%, 45%)",
|
|
8370
|
-
"hsl(235, 70%, 58%)",
|
|
8371
|
-
"hsl(85, 70%, 45%)",
|
|
8372
|
-
"hsl(310, 70%, 55%)",
|
|
8373
|
-
"hsl(25, 80%, 52%)",
|
|
8374
|
-
"hsl(188, 75%, 48%)"
|
|
8375
|
-
];
|
|
8376
|
-
function generateColorFromString(str) {
|
|
8377
|
-
const hash = Math.abs(
|
|
8378
|
-
str.split("").reduce((acc, char) => acc + char.charCodeAt(0), 0)
|
|
8379
|
-
);
|
|
8380
|
-
return USER_COLOR_PALETTE[hash % USER_COLOR_PALETTE.length];
|
|
8381
|
-
}
|
|
8382
8362
|
function splitPresenceUserId(userId) {
|
|
8383
8363
|
if (!userId.startsWith("automerge:")) return { actorId: userId };
|
|
8384
8364
|
const i = userId.indexOf("-");
|
|
@@ -8500,9 +8480,9 @@ function useContactInfo() {
|
|
|
8500
8480
|
// this prevents tldraw from hiding local cursors across multiple sessions under the same account.
|
|
8501
8481
|
userId: contactUrl ? `${contactUrl}-${repo.peerId}` : repo.peerId,
|
|
8502
8482
|
name: contactDoc?.name ?? "Anonymous",
|
|
8503
|
-
//
|
|
8504
|
-
//
|
|
8505
|
-
color:
|
|
8483
|
+
// The color chosen in the account picker; it rides along in our presence
|
|
8484
|
+
// record, so the cursor arrow always matches the contact-cursor token.
|
|
8485
|
+
color: contactDoc?.color
|
|
8506
8486
|
};
|
|
8507
8487
|
}
|
|
8508
8488
|
function TldrawTool({
|