ugly-app 0.1.671 → 0.1.672
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/cli/version.d.ts +1 -1
- package/dist/cli/version.js +1 -1
- package/dist/markdown/client/MarkdownTheme.css +0 -6
- package/dist/markdown/client/ProseMirrorEditor/plugins/collabCursor.d.ts +3 -4
- package/dist/markdown/client/ProseMirrorEditor/plugins/collabCursor.d.ts.map +1 -1
- package/dist/markdown/client/ProseMirrorEditor/plugins/collabCursor.js +4 -18
- package/dist/markdown/client/ProseMirrorEditor/plugins/collabCursor.js.map +1 -1
- package/package.json +1 -1
- package/src/cli/version.ts +1 -1
- package/src/markdown/client/MarkdownTheme.css +0 -6
- package/src/markdown/client/ProseMirrorEditor/plugins/collabCursor.ts +5 -18
package/dist/cli/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const CLI_VERSION = "0.1.
|
|
1
|
+
export declare const CLI_VERSION = "0.1.672";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/cli/version.js
CHANGED
|
@@ -402,12 +402,6 @@ ol:has(> .task-list-item) {
|
|
|
402
402
|
pointer-events: auto;
|
|
403
403
|
user-select: none;
|
|
404
404
|
}
|
|
405
|
-
.ufx-caret-dot img {
|
|
406
|
-
width: 100%;
|
|
407
|
-
height: 100%;
|
|
408
|
-
border-radius: 50%;
|
|
409
|
-
object-fit: cover;
|
|
410
|
-
}
|
|
411
405
|
.ufx-caret-name {
|
|
412
406
|
position: absolute;
|
|
413
407
|
bottom: calc(100% + 5px);
|
|
@@ -2,14 +2,13 @@
|
|
|
2
2
|
* Custom remote-cursor element for y-prosemirror's `yCursorPlugin`.
|
|
3
3
|
*
|
|
4
4
|
* Renders a Figma/Docs-style caret: a thin vertical line at the cursor with a
|
|
5
|
-
* small circle floating just above it showing the peer's
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* small circle floating just above it showing the peer's initials, and their
|
|
6
|
+
* name on hover. The wrapper is zero-size with absolutely-positioned children,
|
|
7
|
+
* so inserting it NEVER shifts the surrounding text layout.
|
|
8
8
|
*/
|
|
9
9
|
type CursorUser = {
|
|
10
10
|
name?: string;
|
|
11
11
|
color?: string;
|
|
12
|
-
avatar?: string;
|
|
13
12
|
};
|
|
14
13
|
export declare function collabCursorBuilder(user: CursorUser): HTMLElement;
|
|
15
14
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collabCursor.d.ts","sourceRoot":"","sources":["../../../../../src/markdown/client/ProseMirrorEditor/plugins/collabCursor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,KAAK,UAAU,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"collabCursor.d.ts","sourceRoot":"","sources":["../../../../../src/markdown/client/ProseMirrorEditor/plugins/collabCursor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,KAAK,UAAU,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAQpD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAuBjE"}
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Custom remote-cursor element for y-prosemirror's `yCursorPlugin`.
|
|
3
3
|
*
|
|
4
4
|
* Renders a Figma/Docs-style caret: a thin vertical line at the cursor with a
|
|
5
|
-
* small circle floating just above it showing the peer's
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* small circle floating just above it showing the peer's initials, and their
|
|
6
|
+
* name on hover. The wrapper is zero-size with absolutely-positioned children,
|
|
7
|
+
* so inserting it NEVER shifts the surrounding text layout.
|
|
8
8
|
*/
|
|
9
9
|
function caretInitials(name) {
|
|
10
10
|
const parts = name.trim().split(/\s+/).filter(Boolean);
|
|
@@ -23,21 +23,7 @@ export function collabCursorBuilder(user) {
|
|
|
23
23
|
wrap.appendChild(line);
|
|
24
24
|
const dot = document.createElement('span');
|
|
25
25
|
dot.className = 'ufx-caret-dot';
|
|
26
|
-
|
|
27
|
-
const img = document.createElement('img');
|
|
28
|
-
img.src = user.avatar;
|
|
29
|
-
img.alt = '';
|
|
30
|
-
img.referrerPolicy = 'no-referrer';
|
|
31
|
-
// On a broken avatar URL, fall back to initials.
|
|
32
|
-
img.addEventListener('error', () => {
|
|
33
|
-
img.remove();
|
|
34
|
-
dot.insertBefore(document.createTextNode(caretInitials(name)), dot.firstChild);
|
|
35
|
-
});
|
|
36
|
-
dot.appendChild(img);
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
dot.appendChild(document.createTextNode(caretInitials(name)));
|
|
40
|
-
}
|
|
26
|
+
dot.appendChild(document.createTextNode(caretInitials(name)));
|
|
41
27
|
const label = document.createElement('span');
|
|
42
28
|
label.className = 'ufx-caret-name';
|
|
43
29
|
label.textContent = name;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collabCursor.js","sourceRoot":"","sources":["../../../../../src/markdown/client/ProseMirrorEditor/plugins/collabCursor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvD,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5E,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAgB;IAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC;IACnC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC;IAEjC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC;IAC7B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IAE7C,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,SAAS,GAAG,gBAAgB,CAAC;IAClC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEvB,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC3C,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC;IAChC,
|
|
1
|
+
{"version":3,"file":"collabCursor.js","sourceRoot":"","sources":["../../../../../src/markdown/client/ProseMirrorEditor/plugins/collabCursor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvD,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5E,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAgB;IAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC;IACnC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC;IAEjC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC;IAC7B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IAE7C,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,SAAS,GAAG,gBAAgB,CAAC;IAClC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEvB,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC3C,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC;IAChC,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE9D,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,KAAK,CAAC,SAAS,GAAG,gBAAgB,CAAC;IACnC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;IACzB,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAEvB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACtB,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ugly-app",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.672",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"comment:files": "Allowlist what ships to npm. dist = runtime; src = sourcemap targets (dist/*.js.map reference ../../src/); templates = CLI scaffold. Everything else at repo root (.pgdata local Postgres, coverage, assets/icons sources, test/, test-results/) is excluded by omission. The !negations strip the scaffold's installed deps + cruft (templates/node_modules is 200MB+ and must never ship). package.json/README/LICENSE ship automatically.",
|
|
6
6
|
"files": [
|
package/src/cli/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Auto-generated by prebuild — do not edit manually
|
|
2
|
-
export const CLI_VERSION = "0.1.
|
|
2
|
+
export const CLI_VERSION = "0.1.672";
|
|
@@ -402,12 +402,6 @@ ol:has(> .task-list-item) {
|
|
|
402
402
|
pointer-events: auto;
|
|
403
403
|
user-select: none;
|
|
404
404
|
}
|
|
405
|
-
.ufx-caret-dot img {
|
|
406
|
-
width: 100%;
|
|
407
|
-
height: 100%;
|
|
408
|
-
border-radius: 50%;
|
|
409
|
-
object-fit: cover;
|
|
410
|
-
}
|
|
411
405
|
.ufx-caret-name {
|
|
412
406
|
position: absolute;
|
|
413
407
|
bottom: calc(100% + 5px);
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
* Custom remote-cursor element for y-prosemirror's `yCursorPlugin`.
|
|
3
3
|
*
|
|
4
4
|
* Renders a Figma/Docs-style caret: a thin vertical line at the cursor with a
|
|
5
|
-
* small circle floating just above it showing the peer's
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* small circle floating just above it showing the peer's initials, and their
|
|
6
|
+
* name on hover. The wrapper is zero-size with absolutely-positioned children,
|
|
7
|
+
* so inserting it NEVER shifts the surrounding text layout.
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
-
type CursorUser = { name?: string; color?: string
|
|
10
|
+
type CursorUser = { name?: string; color?: string };
|
|
11
11
|
|
|
12
12
|
function caretInitials(name: string): string {
|
|
13
13
|
const parts = name.trim().split(/\s+/).filter(Boolean);
|
|
@@ -29,20 +29,7 @@ export function collabCursorBuilder(user: CursorUser): HTMLElement {
|
|
|
29
29
|
|
|
30
30
|
const dot = document.createElement('span');
|
|
31
31
|
dot.className = 'ufx-caret-dot';
|
|
32
|
-
|
|
33
|
-
const img = document.createElement('img');
|
|
34
|
-
img.src = user.avatar;
|
|
35
|
-
img.alt = '';
|
|
36
|
-
img.referrerPolicy = 'no-referrer';
|
|
37
|
-
// On a broken avatar URL, fall back to initials.
|
|
38
|
-
img.addEventListener('error', () => {
|
|
39
|
-
img.remove();
|
|
40
|
-
dot.insertBefore(document.createTextNode(caretInitials(name)), dot.firstChild);
|
|
41
|
-
});
|
|
42
|
-
dot.appendChild(img);
|
|
43
|
-
} else {
|
|
44
|
-
dot.appendChild(document.createTextNode(caretInitials(name)));
|
|
45
|
-
}
|
|
32
|
+
dot.appendChild(document.createTextNode(caretInitials(name)));
|
|
46
33
|
|
|
47
34
|
const label = document.createElement('span');
|
|
48
35
|
label.className = 'ufx-caret-name';
|