@payload-onpage/react 0.3.0 → 0.3.2

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/README.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  The editor UI: overlay, row toolbars, settings, dock, preview toolbar, field editors, locators, annotations and client mode. Framework-agnostic; [`@payload-onpage/next`](../next) mounts it for Next.js.
4
4
 
5
+ ![Editing a Payload CMS page in place: click the heading, type, and it autosaves as a draft](https://raw.githubusercontent.com/jellologic/payload-onpage/main/docs/media/edit-text.gif)
6
+
7
+ ![A section toolbar, settings and the block picker](https://raw.githubusercontent.com/jellologic/payload-onpage/main/docs/media/section-toolbar.png)
8
+
5
9
  ```tsx
6
10
  import { editable } from '@payload-onpage/react/annotations' // server-safe
7
11
  import { OnPageClient } from '@payload-onpage/react/client' // client mode, ~1.7 KB
@@ -12,3 +16,5 @@ Entries: `.` (editor, editors, locators, messages), `./annotations`, `./client`,
12
16
  Part of [**payload-onpage**](https://github.com/jellologic/payload-onpage): on-page editing and draft previews for Payload CMS + Next.js. Start with the [getting started guide](https://github.com/jellologic/payload-onpage/blob/main/docs/getting-started.md).
13
17
 
14
18
  MIT licensed.
19
+
20
+ See the **[tour](https://github.com/jellologic/payload-onpage/blob/main/docs/tour.md)** and **[getting started](https://github.com/jellologic/payload-onpage/blob/main/docs/getting-started.md)**.
@@ -16,6 +16,7 @@ export { canEdit, defineEditor } from './registry.ts';
16
16
  export { HIDDEN, UI, caretAt, copyTypography, placeCaret, placeOver, typographyOf, popoverPosition, } from './dom.ts';
17
17
  export { useTrackElement, useLayoutTick, notifyLayout } from './layout.ts';
18
18
  export { useEvent } from './useEvent.ts';
19
+ export { RedoIcon, UndoIcon } from './icons.tsx';
19
20
  export { escapeHtml, sanitizeHtml } from './sanitize.ts';
20
21
  export type { EditorRegistry, FieldEditorDef, FieldEditorProps, GhostInput } from './types.ts';
21
22
  export type { FieldOf } from '@payload-onpage/core';
@@ -1 +1 @@
1
- {"version":3,"file":"editor-kit.d.ts","sourceRoot":"","sources":["../src/editor-kit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACrE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EACL,MAAM,EACN,EAAE,EACF,OAAO,EACP,cAAc,EACd,UAAU,EACV,SAAS,EACT,YAAY,EACZ,eAAe,GAChB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACxD,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC9F,YAAY,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"editor-kit.d.ts","sourceRoot":"","sources":["../src/editor-kit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACrE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EACL,MAAM,EACN,EAAE,EACF,OAAO,EACP,cAAc,EACd,UAAU,EACV,SAAS,EACT,YAAY,EACZ,eAAe,GAChB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACxD,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC9F,YAAY,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA"}
@@ -16,5 +16,6 @@ export { canEdit, defineEditor } from "./registry.js";
16
16
  export { HIDDEN, UI, caretAt, copyTypography, placeCaret, placeOver, typographyOf, popoverPosition, } from "./dom.js";
17
17
  export { useTrackElement, useLayoutTick, notifyLayout } from "./layout.js";
18
18
  export { useEvent } from "./useEvent.js";
19
+ export { RedoIcon, UndoIcon } from "./icons.js";
19
20
  export { escapeHtml, sanitizeHtml } from "./sanitize.js";
20
21
  //# sourceMappingURL=editor-kit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"editor-kit.js","sourceRoot":"","sources":["../src/editor-kit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,MAAM,EAAoB,MAAM,gBAAiB,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAe,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,kBAAmB,CAAA;AACrE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EACL,MAAM,EACN,EAAE,EACF,OAAO,EACP,cAAc,EACd,UAAU,EACV,SAAS,EACT,YAAY,EACZ,eAAe,GAChB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"editor-kit.js","sourceRoot":"","sources":["../src/editor-kit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,MAAM,EAAoB,MAAM,gBAAiB,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAe,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,kBAAmB,CAAA;AACrE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EACL,MAAM,EACN,EAAE,EACF,OAAO,EACP,cAAc,EACd,UAAU,EACV,SAAS,EACT,YAAY,EACZ,eAAe,GAChB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,YAAa,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"RelationshipEditor.d.ts","sourceRoot":"","sources":["../../src/editors/RelationshipEditor.tsx"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,OAAO,EAIL,KAAK,aAAa,EAEnB,MAAM,sBAAsB,CAAA;AAG7B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAInD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,CAAC,aAAa,CAAC,+BAkHxE"}
1
+ {"version":3,"file":"RelationshipEditor.d.ts","sourceRoot":"","sources":["../../src/editors/RelationshipEditor.tsx"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,OAAO,EAIL,KAAK,aAAa,EAEnB,MAAM,sBAAsB,CAAA;AAG7B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAKnD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,CAAC,aAAa,CAAC,+BAkHxE"}
@@ -10,6 +10,7 @@ import { useCallback, useState } from 'react';
10
10
  import { useOnPage } from "../context.js";
11
11
  import { EditorPopover } from "./kit.js";
12
12
  import { useDebouncedSearch } from "./useDebouncedSearch.js";
13
+ import { CloseIcon } from "../icons.js";
13
14
  export function RelationshipEditor(props) {
14
15
  const { docKey, field, value, commit, close, t } = props;
15
16
  const { session, snap } = useOnPage();
@@ -47,6 +48,6 @@ export function RelationshipEditor(props) {
47
48
  : [...current, wrap(hit)]);
48
49
  };
49
50
  const remove = (i) => commit(many ? current.filter((_, j) => j !== i) : null);
50
- return (_jsxs(EditorPopover, { props: props, testId: "onpage-relationship", width: 320, children: [current.map((v, i) => (_jsxs("div", { className: "po-rel-item", children: [relationTitle(v, titleField), (!field.required || many) && (_jsx("button", { type: "button", onClick: () => remove(i), "aria-label": t('common.removeItem', { item: relationTitle(v, titleField) }), children: "\u2715" }))] }, `${String(relationId(v))}-${i}`))), poly && (_jsx("div", { className: "po-seg", role: "radiogroup", "aria-label": field.label, children: targets.map((c) => (_jsx("button", { type: "button", role: "radio", "aria-checked": c === collection, onClick: () => setCollection(c), children: relations[c]?.label ?? c }, c))) })), !ds.search ? (_jsx("p", { className: "po-muted", children: t('search.unsupported') })) : (_jsxs(_Fragment, { children: [_jsx("input", { className: "po-input", "aria-label": t('search.placeholder'), placeholder: t('search.placeholder'), value: results.query, "data-autofocus": true, onChange: (e) => results.setQuery(e.target.value), "data-testid": "onpage-relationship-search" }), results.error && _jsx("p", { className: "po-error", children: results.error }), _jsx("div", { className: "po-pop-list", role: "listbox", "aria-multiselectable": many, "aria-label": field.label, children: results.items.map((h) => (_jsx("button", { type: "button", role: "option", "aria-selected": current.some((v) => same(v, h.id)), onClick: () => pick(h), "data-testid": `onpage-relationship-${h.id}`, children: h.title }, String(h.id)))) })] }))] }));
51
+ return (_jsxs(EditorPopover, { props: props, testId: "onpage-relationship", width: 320, children: [current.map((v, i) => (_jsxs("div", { className: "po-rel-item", children: [relationTitle(v, titleField), (!field.required || many) && (_jsx("button", { type: "button", onClick: () => remove(i), "aria-label": t('common.removeItem', { item: relationTitle(v, titleField) }), children: _jsx(CloseIcon, {}) }))] }, `${String(relationId(v))}-${i}`))), poly && (_jsx("div", { className: "po-seg", role: "radiogroup", "aria-label": field.label, children: targets.map((c) => (_jsx("button", { type: "button", role: "radio", "aria-checked": c === collection, onClick: () => setCollection(c), children: relations[c]?.label ?? c }, c))) })), !ds.search ? (_jsx("p", { className: "po-muted", children: t('search.unsupported') })) : (_jsxs(_Fragment, { children: [_jsx("input", { className: "po-input", "aria-label": t('search.placeholder'), placeholder: t('search.placeholder'), value: results.query, "data-autofocus": true, onChange: (e) => results.setQuery(e.target.value), "data-testid": "onpage-relationship-search" }), results.error && _jsx("p", { className: "po-error", children: results.error }), _jsx("div", { className: "po-pop-list", role: "listbox", "aria-multiselectable": many, "aria-label": field.label, children: results.items.map((h) => (_jsx("button", { type: "button", role: "option", "aria-selected": current.some((v) => same(v, h.id)), onClick: () => pick(h), "data-testid": `onpage-relationship-${h.id}`, children: h.title }, String(h.id)))) })] }))] }));
51
52
  }
52
53
  //# sourceMappingURL=RelationshipEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RelationshipEditor.js","sourceRoot":"","sources":["../../src/editors/RelationshipEditor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RelationshipEditor.js","sourceRoot":"","sources":["../../src/editors/RelationshipEditor.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;GAIG;AACH,OAAO,EACL,MAAM,EACN,UAAU,EACV,aAAa,GAGd,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAgB,CAAA;AAE1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAW,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAc,CAAA;AAExC,MAAM,UAAU,kBAAkB,CAAC,KAAsC;IACvE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,KAAK,CAAA;IACxD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,CAAA;IACrC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IACvF,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IAC5C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,IAAI,EAAE,CAAA;IAC5D,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,EAAE,UAAU,CAAA;IACpD,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAA;IAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAA;IAC7B,MAAM,MAAM,GAAG,WAAW,CACxB,KAAK,EAAE,KAAa,EAAE,KAAa,EAAE,MAAmB,EAAE,EAAE,CAC1D,EAAE,CAAC,MAAM;QACP,CAAC,CAAC;YACE,KAAK,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE;gBACjC,KAAK;gBACL,UAAU;gBACV,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,EAAE;gBACT,MAAM;aACP,CAAC;YACF,OAAO,EAAE,KAAK;SACf;QACH,CAAC,CAAC,EAAE,KAAK,EAAE,EAAiB,EAAE,OAAO,EAAE,KAAK,EAAE,EAClD,CAAC,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAC7C,CAAA;IACD,MAAM,OAAO,GAAG,kBAAkB,CAAY,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAExE,MAAM,IAAI,GAAG,CAAC,GAAc,EAAW,EAAE,CACvC,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAA;IAC7D,MAAM,IAAI,GAAG,CAAC,CAAU,EAAE,EAAmB,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC,CAAA;IACtF,MAAM,IAAI,GAAG,CAAC,GAAc,EAAE,EAAE;QAC9B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;YACjB,KAAK,EAAE,CAAA;YACP,OAAM;QACR,CAAC;QACD,MAAM,CACJ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YAClC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAC5B,CAAA;IACH,CAAC,CAAA;IACD,MAAM,MAAM,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAErF,OAAO,CACL,MAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAC,qBAAqB,EAAC,KAAK,EAAE,GAAG,aACjE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACrB,eAAK,SAAS,EAAC,aAAa,aACzB,aAAa,CAAC,CAAC,EAAE,UAAU,CAAC,EAC5B,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAC5B,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,gBACZ,CAAC,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC,YAE1E,KAAC,SAAS,KAAG,GACN,CACV,KAV+B,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAW3D,CACP,CAAC,EACD,IAAI,IAAI,CACP,cAAK,SAAS,EAAC,QAAQ,EAAC,IAAI,EAAC,YAAY,gBAAa,KAAK,CAAC,KAAK,YAC9D,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAClB,iBAEE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,OAAO,kBACE,CAAC,KAAK,UAAU,EAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,YAE9B,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,IANpB,CAAC,CAOC,CACV,CAAC,GACE,CACP,EACA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CACZ,YAAG,SAAS,EAAC,UAAU,YAAE,CAAC,CAAC,oBAAoB,CAAC,GAAK,CACtD,CAAC,CAAC,CAAC,CACF,8BACE,gBACE,SAAS,EAAC,UAAU,gBACR,CAAC,CAAC,oBAAoB,CAAC,EACnC,WAAW,EAAE,CAAC,CAAC,oBAAoB,CAAC,EACpC,KAAK,EAAE,OAAO,CAAC,KAAK,0BAEpB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,iBACrC,4BAA4B,GACxC,EACD,OAAO,CAAC,KAAK,IAAI,YAAG,SAAS,EAAC,UAAU,YAAE,OAAO,CAAC,KAAK,GAAK,EAC7D,cACE,SAAS,EAAC,aAAa,EACvB,IAAI,EAAC,SAAS,0BACQ,IAAI,gBACd,KAAK,CAAC,KAAK,YAEtB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACxB,iBAEE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,QAAQ,mBACE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EACjD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,iBACT,uBAAuB,CAAC,CAAC,EAAE,EAAE,YAEzC,CAAC,CAAC,KAAK,IAPH,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAQV,CACV,CAAC,GACE,IACL,CACJ,IACa,CACjB,CAAA;AACH,CAAC"}
@@ -16,8 +16,8 @@ export declare const GEOMETRY: {
16
16
  readonly chipMinTop: 22;
17
17
  /** Gap between a list and its "+ Add" button. */
18
18
  readonly addGap: 14;
19
- /** Room left at the bottom for the dock. */
20
- readonly dock: 84;
19
+ /** Room the dock takes above its offset (its height plus a gap). */
20
+ readonly dock: 68;
21
21
  /** "+ Add first section" sits at most this far down an empty list. */
22
22
  readonly emptyListOffset: 160;
23
23
  };
@@ -35,6 +35,12 @@ export declare const toolbarPosition: (r: Rect) => {
35
35
  top: number;
36
36
  right: number;
37
37
  };
38
+ /**
39
+ * How far the dock sits from the bottom: `--po-dock-bottom` (default 16px). A site
40
+ * with its own fixed bottom bar raises the dock by setting it, e.g.
41
+ * `html:has(.cart-bar) { --po-dock-bottom: 88px }`.
42
+ */
43
+ export declare function dockOffset(): number;
38
44
  /** "+ Add" below a list, or pinned above the dock while the list runs past the viewport. */
39
45
  export declare const belowList: (r: Rect) => number;
40
46
  /** A fixed popover below (or, without room, above) an element, kept inside the viewport. */
@@ -1 +1 @@
1
- {"version":3,"file":"geometry.d.ts","sourceRoot":"","sources":["../src/geometry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,KAAK,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAA;AAEnF,eAAO,MAAM,QAAQ;IACnB,yEAAyE;;IAEzE,mDAAmD;;IAEnD,+BAA+B;;IAE/B,kFAAkF;;IAElF,6CAA6C;;IAE7C,iDAAiD;;IAEjD,4CAA4C;;IAE5C,sEAAsE;;CAE9D,CAAA;AAIV,6EAA6E;AAC7E,eAAO,MAAM,UAAU,GAAI,GAAG,IAAI,EAAE,cAAS,KAAG,OACU,CAAA;AAE1D,wCAAwC;AACxC,eAAO,MAAM,UAAU,GAAI,GAAG,IAAI;;;;;CAKhC,CAAA;AAEF,8FAA8F;AAC9F,eAAO,MAAM,eAAe,GAAI,GAAG,IAAI;;;CAGrC,CAAA;AAEF,4FAA4F;AAC5F,eAAO,MAAM,SAAS,GAAI,GAAG,IAAI,KAAG,MAAgE,CAAA;AAEpG,4FAA4F;AAC5F,wBAAgB,eAAe,CAC7B,EAAE,EAAE,OAAO,GAAG,IAAI,EAClB,IAAI;;;CAA8B,GACjC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAS/B"}
1
+ {"version":3,"file":"geometry.d.ts","sourceRoot":"","sources":["../src/geometry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,KAAK,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAA;AAEnF,eAAO,MAAM,QAAQ;IACnB,yEAAyE;;IAEzE,mDAAmD;;IAEnD,+BAA+B;;IAE/B,kFAAkF;;IAElF,6CAA6C;;IAE7C,iDAAiD;;IAEjD,oEAAoE;;IAEpE,sEAAsE;;CAE9D,CAAA;AAIV,6EAA6E;AAC7E,eAAO,MAAM,UAAU,GAAI,GAAG,IAAI,EAAE,cAAS,KAAG,OACU,CAAA;AAE1D,wCAAwC;AACxC,eAAO,MAAM,UAAU,GAAI,GAAG,IAAI;;;;;CAKhC,CAAA;AAEF,8FAA8F;AAC9F,eAAO,MAAM,eAAe,GAAI,GAAG,IAAI;;;CAGrC,CAAA;AAEF;;;;GAIG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAKnC;AAED,4FAA4F;AAC5F,eAAO,MAAM,SAAS,GAAI,GAAG,IAAI,KAAG,MACmC,CAAA;AAEvE,4FAA4F;AAC5F,wBAAgB,eAAe,CAC7B,EAAE,EAAE,OAAO,GAAG,IAAI,EAClB,IAAI;;;CAA8B,GACjC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAS/B"}
package/dist/geometry.js CHANGED
@@ -11,8 +11,8 @@ export const GEOMETRY = {
11
11
  chipMinTop: 22,
12
12
  /** Gap between a list and its "+ Add" button. */
13
13
  addGap: 14,
14
- /** Room left at the bottom for the dock. */
15
- dock: 84,
14
+ /** Room the dock takes above its offset (its height plus a gap). */
15
+ dock: 68,
16
16
  /** "+ Add first section" sits at most this far down an empty list. */
17
17
  emptyListOffset: 160,
18
18
  };
@@ -31,8 +31,17 @@ export const toolbarPosition = (r) => ({
31
31
  top: Math.min(Math.max(r.top + margin, toolbarMinTop), r.bottom - toolbar),
32
32
  right: Math.max(window.innerWidth - r.right + margin, margin),
33
33
  });
34
+ /**
35
+ * How far the dock sits from the bottom: `--po-dock-bottom` (default 16px). A site
36
+ * with its own fixed bottom bar raises the dock by setting it, e.g.
37
+ * `html:has(.cart-bar) { --po-dock-bottom: 88px }`.
38
+ */
39
+ export function dockOffset() {
40
+ const value = parseFloat(getComputedStyle(document.documentElement).getPropertyValue('--po-dock-bottom'));
41
+ return Number.isFinite(value) ? value : 16;
42
+ }
34
43
  /** "+ Add" below a list, or pinned above the dock while the list runs past the viewport. */
35
- export const belowList = (r) => Math.min(r.bottom + addGap, window.innerHeight - dock);
44
+ export const belowList = (r) => Math.min(r.bottom + addGap, window.innerHeight - dockOffset() - dock);
36
45
  /** A fixed popover below (or, without room, above) an element, kept inside the viewport. */
37
46
  export function popoverPosition(el, size = { width: 300, height: 320 }) {
38
47
  const vw = window.innerWidth;
@@ -1 +1 @@
1
- {"version":3,"file":"geometry.js","sourceRoot":"","sources":["../src/geometry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"geometry.js","sourceRoot":"","sources":["../src/geometry.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,yEAAyE;IACzE,MAAM,EAAE,CAAC;IACT,mDAAmD;IACnD,OAAO,EAAE,CAAC;IACV,+BAA+B;IAC/B,OAAO,EAAE,EAAE;IACX,kFAAkF;IAClF,aAAa,EAAE,EAAE;IACjB,6CAA6C;IAC7C,UAAU,EAAE,EAAE;IACd,iDAAiD;IACjD,MAAM,EAAE,EAAE;IACV,oEAAoE;IACpE,IAAI,EAAE,EAAE;IACR,sEAAsE;IACtE,eAAe,EAAE,GAAG;CACZ,CAAA;AAEV,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAA;AAE1E,6EAA6E;AAC7E,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAO,EAAE,KAAK,GAAG,CAAC,EAAW,EAAE,CACxD,CAAC,CAAC,MAAM,IAAI,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,WAAW,GAAG,KAAK,CAAA;AAE1D,wCAAwC;AACxC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAO,EAAE,EAAE,CAAC,CAAC;IACtC,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,OAAO;IACpB,IAAI,EAAE,CAAC,CAAC,IAAI,GAAG,OAAO;IACtB,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,GAAG,OAAO;IAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,OAAO;CAC/B,CAAC,CAAA;AAEF,8FAA8F;AAC9F,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAO,EAAE,EAAE,CAAC,CAAC;IAC3C,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC;IAC1E,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,GAAG,MAAM,EAAE,MAAM,CAAC;CAC9D,CAAC,CAAA;AAEF;;;;GAIG;AACH,MAAM,UAAU,UAAU;IACxB,MAAM,KAAK,GAAG,UAAU,CACtB,gBAAgB,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAChF,CAAA;IACD,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;AAC5C,CAAC;AAED,4FAA4F;AAC5F,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAO,EAAU,EAAE,CAC3C,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,WAAW,GAAG,UAAU,EAAE,GAAG,IAAI,CAAC,CAAA;AAEvE,4FAA4F;AAC5F,MAAM,UAAU,eAAe,CAC7B,EAAkB,EAClB,IAAI,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;IAElC,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,CAAA;IAC5B,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAA;IAC7B,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAA;IAC5E,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAA;IACpC,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,GAAG,MAAM,CAAA;IAC/B,MAAM,GAAG,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,GAAG,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;IAC7F,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,CAAA;IACzE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;AACtB,CAAC"}
@@ -0,0 +1,8 @@
1
+ export declare const UndoIcon: () => import("react").JSX.Element;
2
+ export declare const RedoIcon: () => import("react").JSX.Element;
3
+ export declare const ArrowUpIcon: () => import("react").JSX.Element;
4
+ export declare const ArrowDownIcon: () => import("react").JSX.Element;
5
+ export declare const DuplicateIcon: () => import("react").JSX.Element;
6
+ export declare const SettingsIcon: () => import("react").JSX.Element;
7
+ export declare const CloseIcon: () => import("react").JSX.Element;
8
+ //# sourceMappingURL=icons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../src/icons.tsx"],"names":[],"mappings":"AAaA,eAAO,MAAM,QAAQ,mCAKpB,CAAA;AAED,eAAO,MAAM,QAAQ,mCAKpB,CAAA;AAED,eAAO,MAAM,WAAW,mCAKvB,CAAA;AAED,eAAO,MAAM,aAAa,mCAKzB,CAAA;AAED,eAAO,MAAM,aAAa,mCAKzB,CAAA;AAED,eAAO,MAAM,YAAY,mCAMxB,CAAA;AAED,eAAO,MAAM,SAAS,mCAKrB,CAAA"}
package/dist/icons.js ADDED
@@ -0,0 +1,21 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /** Small inline icons for the editor UI (text glyphs like ↶ render tiny and unevenly across fonts). */
3
+ const svg = {
4
+ width: 16,
5
+ height: 16,
6
+ viewBox: '0 0 24 24',
7
+ fill: 'none',
8
+ stroke: 'currentColor',
9
+ strokeWidth: 2,
10
+ strokeLinecap: 'round',
11
+ strokeLinejoin: 'round',
12
+ 'aria-hidden': true,
13
+ };
14
+ export const UndoIcon = () => (_jsxs("svg", { ...svg, children: [_jsx("path", { d: "M9 14 4 9l5-5" }), _jsx("path", { d: "M4 9h10.5a5.5 5.5 0 0 1 0 11H11" })] }));
15
+ export const RedoIcon = () => (_jsxs("svg", { ...svg, children: [_jsx("path", { d: "m15 14 5-5-5-5" }), _jsx("path", { d: "M20 9H9.5a5.5 5.5 0 0 0 0 11H13" })] }));
16
+ export const ArrowUpIcon = () => (_jsxs("svg", { ...svg, children: [_jsx("path", { d: "M12 19V5" }), _jsx("path", { d: "m5 12 7-7 7 7" })] }));
17
+ export const ArrowDownIcon = () => (_jsxs("svg", { ...svg, children: [_jsx("path", { d: "M12 5v14" }), _jsx("path", { d: "m19 12-7 7-7-7" })] }));
18
+ export const DuplicateIcon = () => (_jsxs("svg", { ...svg, children: [_jsx("rect", { x: "8", y: "8", width: "13", height: "13", rx: "2" }), _jsx("path", { d: "M4 16V5a1 1 0 0 1 1-1h11" })] }));
19
+ export const SettingsIcon = () => (_jsxs("svg", { ...svg, children: [_jsx("path", { d: "M4 7h10M18 7h2M4 17h2M10 17h10" }), _jsx("circle", { cx: "16", cy: "7", r: "2" }), _jsx("circle", { cx: "8", cy: "17", r: "2" })] }));
20
+ export const CloseIcon = () => (_jsxs("svg", { ...svg, children: [_jsx("path", { d: "M18 6 6 18" }), _jsx("path", { d: "m6 6 12 12" })] }));
21
+ //# sourceMappingURL=icons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icons.js","sourceRoot":"","sources":["../src/icons.tsx"],"names":[],"mappings":";AAAA,uGAAuG;AACvG,MAAM,GAAG,GAAG;IACV,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,WAAW;IACpB,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,cAAc;IACtB,WAAW,EAAE,CAAC;IACd,aAAa,EAAE,OAAO;IACtB,cAAc,EAAE,OAAO;IACvB,aAAa,EAAE,IAAI;CACX,CAAA;AAEV,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,CAC5B,kBAAS,GAAG,aACV,eAAM,CAAC,EAAC,eAAe,GAAG,EAC1B,eAAM,CAAC,EAAC,iCAAiC,GAAG,IACxC,CACP,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,CAC5B,kBAAS,GAAG,aACV,eAAM,CAAC,EAAC,gBAAgB,GAAG,EAC3B,eAAM,CAAC,EAAC,iCAAiC,GAAG,IACxC,CACP,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,CAC/B,kBAAS,GAAG,aACV,eAAM,CAAC,EAAC,UAAU,GAAG,EACrB,eAAM,CAAC,EAAC,eAAe,GAAG,IACtB,CACP,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,CACjC,kBAAS,GAAG,aACV,eAAM,CAAC,EAAC,UAAU,GAAG,EACrB,eAAM,CAAC,EAAC,gBAAgB,GAAG,IACvB,CACP,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,CACjC,kBAAS,GAAG,aACV,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,GAAG,EAClD,eAAM,CAAC,EAAC,0BAA0B,GAAG,IACjC,CACP,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,CAChC,kBAAS,GAAG,aACV,eAAM,CAAC,EAAC,gCAAgC,GAAG,EAC3C,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,GAAG,EAC/B,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,GAAG,IAC3B,CACP,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,CAC7B,kBAAS,GAAG,aACV,eAAM,CAAC,EAAC,YAAY,GAAG,EACvB,eAAM,CAAC,EAAC,YAAY,GAAG,IACnB,CACP,CAAA"}
package/dist/styles.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export declare const PO_Z = 2147483000;
2
- export declare const PO_CSS = "\n.po-layer{position:fixed;inset:0;pointer-events:none;z-index:2147483000;font:13px/1.35 system-ui,-apple-system,\"Segoe UI\",sans-serif;color:#0f172a}\n.po-layer *{box-sizing:border-box}\n.po-outline{position:fixed;border:2px solid #4f7cff;border-radius:4px;pointer-events:none;transition:all .06s ease-out}\n.po-outline.is-block{border-style:dashed;border-color:#4f7cff99}\n.po-outline.is-item{border-color:#22a06b}\n.po-chip{position:fixed;transform:translateY(-100%);background:#3b63e0;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px 4px 0 0;white-space:nowrap;pointer-events:none}\n.po-chip.is-item{background:#167a45}\n.po-bar{position:fixed;display:flex;gap:2px;padding:3px;background:#0f172a;border-radius:8px;box-shadow:0 6px 24px #0f172a40;pointer-events:auto}\n.po-bar.is-item{background:#14532d}\n.po-btn{all:unset;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:28px;height:28px;padding:0 8px;border-radius:6px;color:#fff;font:600 12px/1 system-ui,-apple-system,sans-serif;cursor:pointer;white-space:nowrap}\n.po-btn:hover{background:#ffffff1f}\n.po-btn:focus-visible{outline:2px solid #93c5fd;outline-offset:1px}\n.po-btn[disabled]{opacity:.35;cursor:default;background:none}\n.po-btn.is-danger:hover{background:#ef444455}\n.po-add{position:fixed;transform:translate(-50%,-50%);pointer-events:auto}\n.po-add .po-btn{background:#3b63e0;box-shadow:0 2px 10px #4f7cff66;height:24px;font-size:11px}\n.po-add .po-btn:hover{background:#2f5bd9}\n.po-add.is-item .po-btn{background:#167a45;box-shadow:0 2px 10px #167a4555}\n.po-panel{position:fixed;width:320px;max-height:min(70vh,560px);overflow:auto;background:#fff;color:#0f172a;border-radius:12px;box-shadow:0 20px 60px #0f172a40,0 0 0 1px #0f172a14;pointer-events:auto;padding:14px}\n.po-panel .po-h3{margin:0 0 10px;font:700 13px/1.2 system-ui,sans-serif}\n.po-panel .po-h4{margin:14px 0 6px;font:600 11px/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:#64748b}\n.po-row{display:flex;flex-direction:column;gap:4px;margin:0 0 10px}\n.po-row label{font-weight:600;font-size:12px}\n.po-row small{color:#64748b;font-size:11px}\n.po-input,.po-select{all:unset;box-sizing:border-box;width:100%;height:32px;padding:0 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;font:13px system-ui,sans-serif;color:#0f172a}\n.po-select{appearance:auto;-webkit-appearance:auto}\n.po-input:focus,.po-select:focus{border-color:#4f7cff;box-shadow:0 0 0 3px #4f7cff33}\n.po-check{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}\n.po-seg{display:flex;flex-wrap:wrap;gap:4px}\n.po-seg button{all:unset;padding:5px 9px;border:1px solid #cbd5e1;border-radius:7px;font:12px system-ui,sans-serif;cursor:pointer;background:#fff}\n.po-seg button[aria-pressed=\"true\"]{background:#0f172a;color:#fff;border-color:#0f172a}\n.po-modal-bg{position:fixed;inset:0;background:#0f172a66;pointer-events:auto;display:flex;align-items:center;justify-content:center;padding:24px}\n.po-modal{width:min(880px,100%);max-height:85vh;display:flex;flex-direction:column;background:#fff;border-radius:14px;box-shadow:0 30px 80px #0f172a55;overflow:hidden}\n.po-modal header{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid #e2e8f0}\n.po-modal header .po-h3{margin:0;flex:1;font:700 14px system-ui,sans-serif}\n.po-modal .po-body{padding:14px 16px;overflow:auto}\n.po-modal .po-btn{color:#0f172a}\n.po-modal .po-btn:hover{background:#f1f5f9}\n.po-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}\n.po-tile{all:unset;display:flex;flex-direction:column;gap:6px;cursor:pointer;border-radius:10px;padding:6px;border:2px solid transparent}\n.po-tile:hover,.po-tile:focus-visible{border-color:#4f7cff;background:#f8fafc}\n.po-tile img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;background:#f1f5f9}\n.po-tile span{font-size:11px;color:#475569;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n.po-blocks{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}\n.po-blocks button{all:unset;padding:14px;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;font:600 13px system-ui,sans-serif}\n.po-blocks button:hover,.po-blocks button:focus-visible{border-color:#4f7cff;background:#f5f8ff}\n.po-dock{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;gap:4px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}\n.po-dock .po-status{padding:0 10px;font-size:12px;opacity:.85;white-space:nowrap}\n.po-dock .po-status.is-bad{color:#fca5a5;opacity:1}\n.po-dock .po-sep{width:1px;height:20px;background:#ffffff26;margin:0 4px}\n.po-dock .po-primary{background:#3b63e0}\n.po-dock .po-primary:hover{background:#2f5bd9}\n.po-chip-locale{padding:2px 7px;border-radius:999px;background:#ffffff1f;font-size:11px;font-weight:700;text-transform:uppercase}\n.po-notice{position:fixed;left:50%;bottom:72px;transform:translateX(-50%);max-width:min(560px,calc(100vw - 24px));padding:8px 12px;border-radius:10px;background:#fffbeb;color:#78350f;border:1px solid #fcd34d;font-size:12px;pointer-events:auto}\n.po-doc-layer{position:absolute;top:0;left:0;width:0;height:0;overflow:visible;z-index:2147483000;pointer-events:none;font:13px/1.35 system-ui,-apple-system,\"Segoe UI\",sans-serif}\n.po-inline{position:absolute;pointer-events:auto;outline:2px solid #4f7cff;outline-offset:2px;border-radius:2px;background:transparent;white-space:pre-wrap;word-break:break-word;caret-color:currentColor;cursor:text}\n.po-inline:focus{outline-color:#4f7cff}\n.po-rt{position:absolute;pointer-events:auto}\n.po-rt-surface{outline:2px solid #4f7cff;outline-offset:6px;border-radius:2px;min-height:1.5em}\n.po-rt-surface:focus{outline:2px solid #4f7cff}\n.po-rt-toolbar{position:absolute;left:0;top:-48px;display:flex;gap:2px;padding:3px;background:#0f172a;border-radius:8px;box-shadow:0 6px 24px #0f172a40}\n.po-rt-toolbar .po-btn[aria-pressed=\"true\"]{background:#ffffff2e}\n.po-pop{position:fixed;min-width:220px;max-width:340px;background:#fff;color:#0f172a;border-radius:10px;box-shadow:0 14px 40px #0f172a40,0 0 0 1px #0f172a14;pointer-events:auto;padding:10px}\n.po-pop .po-row{margin-bottom:8px}\n.po-pop-list{display:flex;flex-direction:column;gap:2px;max-height:260px;overflow:auto}\n.po-pop-list button{all:unset;padding:7px 9px;border-radius:7px;cursor:pointer;font:13px system-ui,sans-serif}\n.po-pop-list button:hover,.po-pop-list button:focus-visible,.po-pop-list button[aria-selected=\"true\"]{background:#eef2ff}\n.po-ghost{position:absolute;pointer-events:none;white-space:pre-wrap;word-break:break-word}\n.po-docs{font-size:11px;padding:2px 7px;border-radius:999px;background:#ffffff1f}\n.po-frame-bg{position:fixed;inset:0;background:#0f172acc;pointer-events:auto;display:flex;flex-direction:column;align-items:center;padding:56px 16px 16px}\n.po-frame-bg iframe{background:#fff;border:0;border-radius:12px;box-shadow:0 30px 80px #0008;height:100%;max-width:100%}\n.po-badge{padding:2px 8px;border-radius:999px;background:#f59e0b;color:#111;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em}\n.po-b{font-weight:700}.po-i{font-style:italic}.po-u{text-decoration:underline}\n.po-opaque{display:inline-flex;align-items:center;gap:6px;margin:6px 0;padding:6px 10px;border:1px dashed #94a3b8;border-radius:8px;background:#f8fafc;color:#475569;font:12px system-ui,sans-serif;user-select:none}\nhtml[data-onpage-editing] [data-onpage-field]{cursor:pointer}\n[data-onpage-hidden=\"true\"]{visibility:hidden!important}\n.po-preview{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;gap:6px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}\n.po-preview .po-status{padding:0 8px;font-size:12px;opacity:.85}\n.po-rel-item{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:6px;background:#f1f5f9;font-size:12px;margin:0 0 4px}\n.po-rel-item button{all:unset;cursor:pointer;margin-left:auto;padding:0 4px;color:#64748b}\n\n.po-dialog-head{display:flex;align-items:center;gap:8px;margin:0 0 10px}\n.po-modal .po-dialog-head{margin:0;padding:14px 16px;border-bottom:1px solid #e2e8f0}\n.po-dialog-head .po-h3{flex:1;margin:0;font:700 14px/1.2 system-ui,sans-serif}\n.po-close{color:#0f172a;min-width:24px;height:24px}\n.po-close:hover{background:#f1f5f9}\n.po-bar-label{cursor:default;opacity:.8}\n.po-muted{color:#64748b;margin:6px 0}\n.po-error{color:#b91c1c;margin:6px 0}\n.po-center{text-align:center;margin-top:12px}\n.po-actions{display:flex;gap:6px}\n.po-inline-row{flex-direction:row;align-items:center}\n.po-search{width:240px}\n.po-picker{cursor:pointer;display:flex;align-items:center}\n.po-group{border:0;margin:0;padding:0}\n.po-primary,.po-pop .po-primary,.po-panel .po-primary{background:#3b63e0;color:#fff}\n.po-primary:hover{background:#2f5bd9}\n.po-pop .po-btn,.po-panel .po-btn{color:#0f172a}\n.po-pop .po-btn.po-primary,.po-panel .po-btn.po-primary{color:#fff}\n.po-frame-close{all:unset;position:absolute;inset:0;cursor:pointer}\n.po-frame-bg iframe{position:relative}\n.po-input[aria-invalid=\"true\"]{border-color:#dc2626}\nhtml[data-onpage-editing] [data-onpage-focusable]:focus-visible{outline:2px solid #4f7cff;outline-offset:2px}\n@media (prefers-reduced-motion:reduce){.po-outline{transition:none}}\n";
2
+ export declare const PO_CSS = "\n.po-layer{position:fixed;inset:0;pointer-events:none;z-index:2147483000;font:13px/1.35 system-ui,-apple-system,\"Segoe UI\",sans-serif;color:#0f172a}\n.po-layer *{box-sizing:border-box}\n.po-outline{position:fixed;border:2px solid #4f7cff;border-radius:4px;pointer-events:none;transition:all .06s ease-out}\n.po-outline.is-block{border-style:dashed;border-color:#4f7cff99}\n.po-outline.is-item{border-color:#22a06b}\n.po-chip{position:fixed;transform:translateY(-100%);background:#3b63e0;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px 4px 0 0;white-space:nowrap;pointer-events:none}\n.po-chip.is-item{background:#167a45}\n.po-bar{position:fixed;display:flex;gap:2px;padding:3px;background:#0f172a;border-radius:8px;box-shadow:0 6px 24px #0f172a40;pointer-events:auto}\n.po-bar.is-item{background:#14532d}\n.po-btn{all:unset;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:28px;height:28px;padding:0 8px;border-radius:6px;color:#fff;font:600 12px/1 system-ui,-apple-system,sans-serif;cursor:pointer;white-space:nowrap}\n.po-btn:hover{background:#ffffff1f}\n.po-btn:focus-visible{outline:2px solid #93c5fd;outline-offset:1px}\n.po-btn[disabled]{opacity:.35;cursor:default;background:none}\n.po-btn.is-danger:hover{background:#ef444455}\n.po-add{position:fixed;transform:translate(-50%,-50%);pointer-events:auto}\n.po-add .po-btn{background:#3b63e0;box-shadow:0 2px 10px #4f7cff66;height:24px;font-size:11px}\n.po-add .po-btn:hover{background:#2f5bd9}\n.po-add.is-item .po-btn{background:#167a45;box-shadow:0 2px 10px #167a4555}\n.po-panel{position:fixed;width:320px;max-height:min(70vh,560px);overflow:auto;background:#fff;color:#0f172a;border-radius:12px;box-shadow:0 20px 60px #0f172a40,0 0 0 1px #0f172a14;pointer-events:auto;padding:14px}\n.po-panel .po-h3{margin:0 0 10px;font:700 13px/1.2 system-ui,sans-serif}\n.po-panel .po-h4{margin:14px 0 6px;font:600 11px/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:#64748b}\n.po-row{display:flex;flex-direction:column;gap:4px;margin:0 0 10px}\n.po-row label{font-weight:600;font-size:12px}\n.po-row small{color:#64748b;font-size:11px}\n.po-input,.po-select{all:unset;box-sizing:border-box;width:100%;height:32px;padding:0 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;font:13px system-ui,sans-serif;color:#0f172a}\n.po-select{appearance:auto;-webkit-appearance:auto}\n.po-input:focus,.po-select:focus{border-color:#4f7cff;box-shadow:0 0 0 3px #4f7cff33}\n.po-check{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}\n.po-seg{display:flex;flex-wrap:wrap;gap:4px}\n.po-seg button{all:unset;padding:5px 9px;border:1px solid #cbd5e1;border-radius:7px;font:12px system-ui,sans-serif;cursor:pointer;background:#fff}\n.po-seg button[aria-pressed=\"true\"]{background:#0f172a;color:#fff;border-color:#0f172a}\n.po-modal-bg{position:fixed;inset:0;background:#0f172a66;pointer-events:auto;display:flex;align-items:center;justify-content:center;padding:24px}\n.po-modal{width:min(880px,100%);max-height:85vh;display:flex;flex-direction:column;background:#fff;border-radius:14px;box-shadow:0 30px 80px #0f172a55;overflow:hidden}\n.po-modal header{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid #e2e8f0}\n.po-modal header .po-h3{margin:0;flex:1;font:700 14px system-ui,sans-serif}\n.po-modal .po-body{padding:14px 16px;overflow:auto}\n.po-modal .po-btn{color:#0f172a}\n.po-modal .po-btn:hover{background:#f1f5f9}\n.po-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}\n.po-tile{all:unset;display:flex;flex-direction:column;gap:6px;cursor:pointer;border-radius:10px;padding:6px;border:2px solid transparent}\n.po-tile:hover,.po-tile:focus-visible{border-color:#4f7cff;background:#f8fafc}\n.po-tile img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;background:#f1f5f9}\n.po-tile span{font-size:11px;color:#475569;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n.po-blocks{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}\n.po-blocks button{all:unset;padding:14px;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;font:600 13px system-ui,sans-serif}\n.po-blocks button:hover,.po-blocks button:focus-visible{border-color:#4f7cff;background:#f5f8ff}\n.po-btn svg{display:block}\n.po-dock{position:fixed;left:50%;width:max-content;bottom:var(--po-dock-bottom,16px);transform:translateX(-50%);display:flex;align-items:center;gap:4px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}\n.po-dock .po-status{padding:0 10px;font-size:12px;opacity:.85;white-space:nowrap}\n.po-dock .po-status.is-bad{color:#fca5a5;opacity:1}\n.po-dock .po-sep{width:1px;height:20px;background:#ffffff26;margin:0 4px}\n.po-dock .po-primary{background:#3b63e0}\n.po-dock .po-primary:hover{background:#2f5bd9}\n.po-chip-locale{padding:2px 7px;border-radius:999px;background:#ffffff1f;font-size:11px;font-weight:700;text-transform:uppercase}\n.po-notice{position:fixed;left:50%;width:max-content;bottom:calc(var(--po-dock-bottom,16px) + 56px);transform:translateX(-50%);max-width:min(560px,calc(100vw - 24px));padding:8px 12px;border-radius:10px;background:#fffbeb;color:#78350f;border:1px solid #fcd34d;font-size:12px;pointer-events:auto}\n.po-doc-layer{position:absolute;top:0;left:0;width:0;height:0;overflow:visible;z-index:2147483000;pointer-events:none;font:13px/1.35 system-ui,-apple-system,\"Segoe UI\",sans-serif}\n.po-inline{position:absolute;pointer-events:auto;outline:2px solid #4f7cff;outline-offset:2px;border-radius:2px;background:transparent;white-space:pre-wrap;word-break:break-word;caret-color:currentColor;cursor:text}\n.po-inline:focus{outline-color:#4f7cff}\n.po-rt{position:absolute;pointer-events:auto}\n.po-rt-surface{outline:2px solid #4f7cff;outline-offset:6px;border-radius:2px;min-height:1.5em}\n.po-rt-surface:focus{outline:2px solid #4f7cff}\n.po-rt-toolbar{position:absolute;left:0;top:-48px;display:flex;gap:2px;padding:3px;background:#0f172a;border-radius:8px;box-shadow:0 6px 24px #0f172a40}\n.po-rt-toolbar .po-btn[aria-pressed=\"true\"]{background:#ffffff2e}\n.po-pop{position:fixed;min-width:220px;max-width:340px;background:#fff;color:#0f172a;border-radius:10px;box-shadow:0 14px 40px #0f172a40,0 0 0 1px #0f172a14;pointer-events:auto;padding:10px}\n.po-pop .po-row{margin-bottom:8px}\n.po-pop-list{display:flex;flex-direction:column;gap:2px;max-height:260px;overflow:auto}\n.po-pop-list button{all:unset;padding:7px 9px;border-radius:7px;cursor:pointer;font:13px system-ui,sans-serif}\n.po-pop-list button:hover,.po-pop-list button:focus-visible,.po-pop-list button[aria-selected=\"true\"]{background:#eef2ff}\n.po-ghost{position:absolute;pointer-events:none;white-space:pre-wrap;word-break:break-word}\n.po-docs{font-size:11px;padding:2px 7px;border-radius:999px;background:#ffffff1f}\n.po-frame-bg{position:fixed;inset:0;background:#0f172acc;pointer-events:auto;display:flex;flex-direction:column;align-items:center;padding:56px 16px 16px}\n.po-frame-bg iframe{background:#fff;border:0;border-radius:12px;box-shadow:0 30px 80px #0008;height:100%;max-width:100%}\n.po-badge{padding:2px 8px;border-radius:999px;background:#f59e0b;color:#111;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em}\n.po-b{font-weight:700}.po-i{font-style:italic}.po-u{text-decoration:underline}\n.po-opaque{display:inline-flex;align-items:center;gap:6px;margin:6px 0;padding:6px 10px;border:1px dashed #94a3b8;border-radius:8px;background:#f8fafc;color:#475569;font:12px system-ui,sans-serif;user-select:none}\nhtml[data-onpage-editing] [data-onpage-field]{cursor:pointer}\n[data-onpage-hidden=\"true\"]{visibility:hidden!important}\n.po-preview{position:fixed;left:50%;width:max-content;bottom:var(--po-dock-bottom,16px);transform:translateX(-50%);display:flex;align-items:center;gap:6px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}\n.po-preview .po-status{padding:0 8px;font-size:12px;opacity:.85}\n.po-rel-item{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:6px;background:#f1f5f9;font-size:12px;margin:0 0 4px}\n.po-rel-item button{all:unset;cursor:pointer;margin-left:auto;padding:0 4px;color:#64748b}\n\n.po-dialog-head{display:flex;align-items:center;gap:8px;margin:0 0 10px}\n.po-modal .po-dialog-head{margin:0;padding:14px 16px;border-bottom:1px solid #e2e8f0}\n.po-dialog-head .po-h3{flex:1;margin:0;font:700 14px/1.2 system-ui,sans-serif}\n.po-close{color:#0f172a;min-width:24px;height:24px}\n.po-close:hover{background:#f1f5f9}\n.po-bar-label{cursor:default;opacity:.8}\n.po-muted{color:#64748b;margin:6px 0}\n.po-error{color:#b91c1c;margin:6px 0}\n.po-center{text-align:center;margin-top:12px}\n.po-actions{display:flex;gap:6px}\n.po-inline-row{flex-direction:row;align-items:center}\n.po-search{width:240px}\n.po-picker{cursor:pointer;display:flex;align-items:center}\n.po-group{border:0;margin:0;padding:0}\n.po-primary,.po-pop .po-primary,.po-panel .po-primary{background:#3b63e0;color:#fff}\n.po-primary:hover{background:#2f5bd9}\n.po-pop .po-btn,.po-panel .po-btn{color:#0f172a}\n.po-pop .po-btn.po-primary,.po-panel .po-btn.po-primary{color:#fff}\n.po-frame-close{all:unset;position:absolute;inset:0;cursor:pointer}\n.po-frame-bg iframe{position:relative}\n.po-input[aria-invalid=\"true\"]{border-color:#dc2626}\nhtml[data-onpage-editing] [data-onpage-focusable]:focus-visible{outline:2px solid #4f7cff;outline-offset:2px}\n@media (prefers-reduced-motion:reduce){.po-outline{transition:none}}\n";
3
3
  export declare function injectStyles(): void;
4
4
  //# sourceMappingURL=styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../src/styles.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,IAAI,aAAa,CAAA;AAE9B,eAAO,MAAM,MAAM,s5SAyGlB,CAAA;AAGD,wBAAgB,YAAY,SAO3B"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../src/styles.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,IAAI,aAAa,CAAA;AAE9B,eAAO,MAAM,MAAM,ujTA0GlB,CAAA;AAGD,wBAAgB,YAAY,SAO3B"}
package/dist/styles.js CHANGED
@@ -51,14 +51,15 @@ export const PO_CSS = `
51
51
  .po-blocks{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
52
52
  .po-blocks button{all:unset;padding:14px;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;font:600 13px system-ui,sans-serif}
53
53
  .po-blocks button:hover,.po-blocks button:focus-visible{border-color:#4f7cff;background:#f5f8ff}
54
- .po-dock{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;gap:4px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}
54
+ .po-btn svg{display:block}
55
+ .po-dock{position:fixed;left:50%;width:max-content;bottom:var(--po-dock-bottom,16px);transform:translateX(-50%);display:flex;align-items:center;gap:4px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}
55
56
  .po-dock .po-status{padding:0 10px;font-size:12px;opacity:.85;white-space:nowrap}
56
57
  .po-dock .po-status.is-bad{color:#fca5a5;opacity:1}
57
58
  .po-dock .po-sep{width:1px;height:20px;background:#ffffff26;margin:0 4px}
58
59
  .po-dock .po-primary{background:#3b63e0}
59
60
  .po-dock .po-primary:hover{background:#2f5bd9}
60
61
  .po-chip-locale{padding:2px 7px;border-radius:999px;background:#ffffff1f;font-size:11px;font-weight:700;text-transform:uppercase}
61
- .po-notice{position:fixed;left:50%;bottom:72px;transform:translateX(-50%);max-width:min(560px,calc(100vw - 24px));padding:8px 12px;border-radius:10px;background:#fffbeb;color:#78350f;border:1px solid #fcd34d;font-size:12px;pointer-events:auto}
62
+ .po-notice{position:fixed;left:50%;width:max-content;bottom:calc(var(--po-dock-bottom,16px) + 56px);transform:translateX(-50%);max-width:min(560px,calc(100vw - 24px));padding:8px 12px;border-radius:10px;background:#fffbeb;color:#78350f;border:1px solid #fcd34d;font-size:12px;pointer-events:auto}
62
63
  .po-doc-layer{position:absolute;top:0;left:0;width:0;height:0;overflow:visible;z-index:${PO_Z};pointer-events:none;font:13px/1.35 system-ui,-apple-system,"Segoe UI",sans-serif}
63
64
  .po-inline{position:absolute;pointer-events:auto;outline:2px solid #4f7cff;outline-offset:2px;border-radius:2px;background:transparent;white-space:pre-wrap;word-break:break-word;caret-color:currentColor;cursor:text}
64
65
  .po-inline:focus{outline-color:#4f7cff}
@@ -81,7 +82,7 @@ export const PO_CSS = `
81
82
  .po-opaque{display:inline-flex;align-items:center;gap:6px;margin:6px 0;padding:6px 10px;border:1px dashed #94a3b8;border-radius:8px;background:#f8fafc;color:#475569;font:12px system-ui,sans-serif;user-select:none}
82
83
  html[data-onpage-editing] [data-onpage-field]{cursor:pointer}
83
84
  [data-onpage-hidden="true"]{visibility:hidden!important}
84
- .po-preview{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;gap:6px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}
85
+ .po-preview{position:fixed;left:50%;width:max-content;bottom:var(--po-dock-bottom,16px);transform:translateX(-50%);display:flex;align-items:center;gap:6px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}
85
86
  .po-preview .po-status{padding:0 8px;font-size:12px;opacity:.85}
86
87
  .po-rel-item{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:6px;background:#f1f5f9;font-size:12px;margin:0 0 4px}
87
88
  .po-rel-item button{all:unset;cursor:pointer;margin-left:auto;padding:0 4px;color:#64748b}
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../src/styles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACnC,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAAA;AAE9B,MAAM,CAAC,MAAM,MAAM,GAAG;+DACyC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yFAsDsB,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkD5F,CAAA;AAED,IAAI,QAAQ,GAAG,KAAK,CAAA;AACpB,MAAM,UAAU,YAAY;IAC1B,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,WAAW;QAAE,OAAM;IACvD,QAAQ,GAAG,IAAI,CAAA;IACf,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC1C,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACpC,EAAE,CAAC,WAAW,GAAG,MAAM,CAAA;IACvB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;AAC/B,CAAC"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../src/styles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACnC,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAAA;AAE9B,MAAM,CAAC,MAAM,MAAM,GAAG;+DACyC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yFAuDsB,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkD5F,CAAA;AAED,IAAI,QAAQ,GAAG,KAAK,CAAA;AACpB,MAAM,UAAU,YAAY;IAC1B,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,WAAW;QAAE,OAAM;IACvD,QAAQ,GAAG,IAAI,CAAA;IACf,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC1C,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACpC,EAAE,CAAC,WAAW,GAAG,MAAM,CAAA;IACvB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;AAC/B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../src/ui/Dialog.tsx"],"names":[],"mappings":"AAQA,OAAO,EAA0D,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAG9F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,QAAQ,EAAE,SAAS,CAAA;IACnB,CAAC,EAAE,SAAS,CAAA;IACZ,2FAA2F;IAC3F,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAAA;IACvC,MAAM,CAAC,EAAE,MAAM,OAAO,GAAG,IAAI,CAAA;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,kDAAkD;IAClD,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,MAAM,CAAC,EACrB,KAAK,EACL,OAAO,EACP,QAAQ,EACR,CAAC,EACD,OAAiB,EACjB,MAAM,EACN,KAAK,EACL,MAAM,EACN,OAAO,GACR,EAAE,WAAW,+BA6Hb"}
1
+ {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../src/ui/Dialog.tsx"],"names":[],"mappings":"AAQA,OAAO,EAA0D,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAG9F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAG/C,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,QAAQ,EAAE,SAAS,CAAA;IACnB,CAAC,EAAE,SAAS,CAAA;IACZ,2FAA2F;IAC3F,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAAA;IACvC,MAAM,CAAC,EAAE,MAAM,OAAO,GAAG,IAAI,CAAA;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,kDAAkD;IAClD,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,MAAM,CAAC,EACrB,KAAK,EACL,OAAO,EACP,QAAQ,EACR,CAAC,EACD,OAAiB,EACjB,MAAM,EACN,KAAK,EACL,MAAM,EACN,OAAO,GACR,EAAE,WAAW,+BA6Hb"}
package/dist/ui/Dialog.js CHANGED
@@ -9,6 +9,7 @@ import { useEvent } from "../useEvent.js";
9
9
  import { useEffect, useId, useRef, useState } from 'react';
10
10
  import { focusableIn, popoverPosition } from "../dom.js";
11
11
  import { useLayoutTick } from "../layout.js";
12
+ import { CloseIcon } from "../icons.js";
12
13
  export function Dialog({ title, onClose, children, t, variant = 'modal', anchor, width, testId, actions, }) {
13
14
  const box = useRef(null);
14
15
  const titleId = useId();
@@ -72,7 +73,7 @@ export function Dialog({ title, onClose, children, t, variant = 'modal', anchor,
72
73
  document.removeEventListener('pointerdown', onDown, true);
73
74
  };
74
75
  }, [close, variant]);
75
- const header = (_jsxs("header", { className: "po-dialog-head", children: [_jsx("h2", { className: "po-h3", id: titleId, children: title }), actions, _jsx("button", { type: "button", className: "po-btn po-close", onClick: onClose, "aria-label": t('common.close'), children: "\u2715" })] }));
76
+ const header = (_jsxs("header", { className: "po-dialog-head", children: [_jsx("h2", { className: "po-h3", id: titleId, children: title }), actions, _jsx("button", { type: "button", className: "po-btn po-close", onClick: onClose, "aria-label": t('common.close'), children: _jsx(CloseIcon, {}) })] }));
76
77
  if (variant === 'modal') {
77
78
  return (_jsx("div", { className: "po-modal-bg", onPointerDown: (e) => e.target === e.currentTarget && onClose(), "data-testid": testId, children: _jsxs("div", { ref: box, className: "po-modal", role: "dialog", "aria-modal": "true", "aria-labelledby": titleId, tabIndex: -1, style: width ? { width: `min(${width}px, 100%)` } : undefined, children: [header, _jsx("div", { className: "po-body", children: children })] }) }));
78
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../src/ui/Dialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../src/ui/Dialog.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Dock.d.ts","sourceRoot":"","sources":["../../src/ui/Dock.tsx"],"names":[],"mappings":"AA0DA,wBAAgB,IAAI,gCAsMnB"}
1
+ {"version":3,"file":"Dock.d.ts","sourceRoot":"","sources":["../../src/ui/Dock.tsx"],"names":[],"mappings":"AA2DA,wBAAgB,IAAI,gCAsMnB"}
package/dist/ui/Dock.js CHANGED
@@ -11,6 +11,7 @@ import { useOnPage } from "../context.js";
11
11
  import { relativeTime } from "../messages.js";
12
12
  import { PostButton } from "./PostButton.js";
13
13
  import { ToolbarButton } from "./ToolbarButton.js";
14
+ import { RedoIcon, UndoIcon } from "../icons.js";
14
15
  const title = (d) => d.schema?.labels.singular ?? d.ref.slug;
15
16
  /** What the dock says, most urgent first. */
16
17
  function dockStatus(s, t) {
@@ -117,6 +118,6 @@ export function Dock() {
117
118
  notify(t('notify.linkFailed', { message: errorText(e) }), true);
118
119
  }
119
120
  };
120
- return (_jsxs(_Fragment, { children: [nonDefaultLocale && (_jsx("div", { className: "po-notice", role: "note", "data-testid": "onpage-locale-notice", children: t('dock.localeNotice', { locale: session.locale ?? '' }) })), _jsxs("div", { className: "po-dock", role: "toolbar", "aria-label": t('dock.label'), "data-testid": "onpage-dock", children: [_jsx("span", { className: `po-status${(flash?.bad ?? status.bad) ? ' is-bad' : ''}`, role: "status", "aria-live": "polite", "data-testid": "onpage-status", children: flash?.text ?? status.text }), conflict && (_jsx("button", { type: "button", className: "po-btn", disabled: busy, onClick: () => void reload(conflict), "data-testid": "onpage-reload", children: t('dock.reload') })), retryable && (_jsx("button", { type: "button", className: "po-btn", onClick: () => void session.retry(retryable.key), "data-testid": "onpage-retry", children: t('dock.retry') })), docs.length > 1 && (_jsx("span", { className: "po-docs", title: docs.map(title).join(', '), "data-testid": "onpage-doc-count", children: t('dock.documents', { count: docs.length }) })), session.locale && _jsx("span", { className: "po-chip-locale", children: session.locale }), _jsx("span", { className: "po-sep" }), _jsx(ToolbarButton, { label: t('dock.undo'), hint: `${t('dock.undo')} (⌘Z)`, icon: "\u21B6", disabled: !snap.canUndo, onClick: () => session.undo(), testId: "onpage-undo" }), _jsx(ToolbarButton, { label: t('dock.redo'), hint: `${t('dock.redo')} (⇧⌘Z)`, icon: "\u21B7", disabled: !snap.canRedo, onClick: () => session.redo(), testId: "onpage-redo" }), _jsx("span", { className: "po-sep" }), links.mode && (_jsx(PostButton, { action: links.mode('view'), title: t('dock.previewHint'), testId: "onpage-preview", children: t('dock.preview') })), createLink && primary && (_jsx("button", { type: "button", className: "po-btn", onClick: () => void share(), title: t('dock.shareHint'), "data-testid": "onpage-share", children: t('dock.share') })), _jsx("button", { type: "button", className: `po-btn${confirmDiscard ? ' is-danger' : ''}`, disabled: !ready.length || busy, onClick: () => void discard(), onBlur: () => setConfirmDiscard(false), title: t('dock.discardHint'), "data-testid": "onpage-discard", children: t(confirmDiscard ? 'dock.discardConfirm' : 'dock.discard') }), links.admin && primary && (_jsx("a", { className: "po-btn", href: links.admin(primary.ref), target: "_blank", rel: "noopener noreferrer", "data-testid": "onpage-open-admin", children: t('dock.admin') })), _jsx(PostButton, { action: links.exit, testId: "onpage-exit", children: t('dock.exit') }), _jsx("button", { type: "button", className: "po-btn po-primary", disabled: !ready.length || busy || !!conflict, onClick: () => void publish(), "data-testid": "onpage-publish", children: t(busy ? 'dock.publishing' : 'dock.publish') })] })] }));
121
+ return (_jsxs(_Fragment, { children: [nonDefaultLocale && (_jsx("div", { className: "po-notice", role: "note", "data-testid": "onpage-locale-notice", children: t('dock.localeNotice', { locale: session.locale ?? '' }) })), _jsxs("div", { className: "po-dock", role: "toolbar", "aria-label": t('dock.label'), "data-testid": "onpage-dock", children: [_jsx("span", { className: `po-status${(flash?.bad ?? status.bad) ? ' is-bad' : ''}`, role: "status", "aria-live": "polite", "data-testid": "onpage-status", children: flash?.text ?? status.text }), conflict && (_jsx("button", { type: "button", className: "po-btn", disabled: busy, onClick: () => void reload(conflict), "data-testid": "onpage-reload", children: t('dock.reload') })), retryable && (_jsx("button", { type: "button", className: "po-btn", onClick: () => void session.retry(retryable.key), "data-testid": "onpage-retry", children: t('dock.retry') })), docs.length > 1 && (_jsx("span", { className: "po-docs", title: docs.map(title).join(', '), "data-testid": "onpage-doc-count", children: t('dock.documents', { count: docs.length }) })), session.locale && _jsx("span", { className: "po-chip-locale", children: session.locale }), _jsx("span", { className: "po-sep" }), _jsx(ToolbarButton, { label: t('dock.undo'), hint: `${t('dock.undo')} (⌘Z)`, icon: _jsx(UndoIcon, {}), disabled: !snap.canUndo, onClick: () => session.undo(), testId: "onpage-undo" }), _jsx(ToolbarButton, { label: t('dock.redo'), hint: `${t('dock.redo')} (⇧⌘Z)`, icon: _jsx(RedoIcon, {}), disabled: !snap.canRedo, onClick: () => session.redo(), testId: "onpage-redo" }), _jsx("span", { className: "po-sep" }), links.mode && (_jsx(PostButton, { action: links.mode('view'), title: t('dock.previewHint'), testId: "onpage-preview", children: t('dock.preview') })), createLink && primary && (_jsx("button", { type: "button", className: "po-btn", onClick: () => void share(), title: t('dock.shareHint'), "data-testid": "onpage-share", children: t('dock.share') })), _jsx("button", { type: "button", className: `po-btn${confirmDiscard ? ' is-danger' : ''}`, disabled: !ready.length || busy, onClick: () => void discard(), onBlur: () => setConfirmDiscard(false), title: t('dock.discardHint'), "data-testid": "onpage-discard", children: t(confirmDiscard ? 'dock.discardConfirm' : 'dock.discard') }), links.admin && primary && (_jsx("a", { className: "po-btn", href: links.admin(primary.ref), target: "_blank", rel: "noopener noreferrer", "data-testid": "onpage-open-admin", children: t('dock.admin') })), _jsx(PostButton, { action: links.exit, testId: "onpage-exit", children: t('dock.exit') }), _jsx("button", { type: "button", className: "po-btn po-primary", disabled: !ready.length || busy || !!conflict, onClick: () => void publish(), "data-testid": "onpage-publish", children: t(busy ? 'dock.publishing' : 'dock.publish') })] })] }));
121
122
  }
122
123
  //# sourceMappingURL=Dock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dock.js","sourceRoot":"","sources":["../../src/ui/Dock.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dock.js","sourceRoot":"","sources":["../../src/ui/Dock.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Overlay.d.ts","sourceRoot":"","sources":["../../src/ui/Overlay.tsx"],"names":[],"mappings":"AA6OA,wBAAgB,OAAO,gCA2DtB"}
1
+ {"version":3,"file":"Overlay.d.ts","sourceRoot":"","sources":["../../src/ui/Overlay.tsx"],"names":[],"mappings":"AA8OA,wBAAgB,OAAO,gCA2DtB"}
@@ -12,6 +12,7 @@ import { isOurs } from "../dom.js";
12
12
  import { belowList, GEOMETRY, inViewport, outlineBox, toolbarPosition } from "../geometry.js";
13
13
  import { useLayoutTick } from "../layout.js";
14
14
  import { ToolbarButton } from "./ToolbarButton.js";
15
+ import { ArrowDownIcon, ArrowUpIcon, CloseIcon, DuplicateIcon, SettingsIcon } from "../icons.js";
15
16
  import { targetsAt } from "../targets.js";
16
17
  import { insertRow, rowOps } from "../rowOps.js";
17
18
  import { hasSettings } from "../settings.js";
@@ -67,7 +68,7 @@ function RowToolbar({ row, variant }) {
67
68
  if (ops.remove() && selected?.key === key && selected.path.startsWith(path))
68
69
  setSelected(null);
69
70
  };
70
- return (_jsxs("div", { className: `po-bar${variant === 'item' ? ' is-item' : ''}`, style: toolbarPosition(r), role: "toolbar", "aria-label": t('row.toolbar', { label }), "data-testid": `onpage-${variant}-toolbar`, children: [_jsx("span", { className: "po-btn po-bar-label", children: label }), _jsx(ToolbarButton, { label: t('row.moveUp'), icon: "\u2191", disabled: !ops.canMove(-1), onClick: () => move(-1), testId: `onpage-${variant}-up` }), _jsx(ToolbarButton, { label: t('row.moveDown'), icon: "\u2193", disabled: !ops.canMove(1), onClick: () => move(1), testId: `onpage-${variant}-down` }), _jsx(ToolbarButton, { label: t('row.duplicate'), icon: "\u29C9", disabled: !ops.canDuplicate, onClick: duplicate, testId: `onpage-${variant}-duplicate` }), hasSettings(info.rowFields, path, key, targets) && (_jsx(ToolbarButton, { label: t('row.settings'), icon: "\u2699", onClick: () => setPanel({ kind: 'settings', key, path, title: label }), testId: `onpage-${variant}-settings` })), _jsx(ToolbarButton, { label: t('row.delete'), icon: "\u2715", danger: true, disabled: !ops.canRemove, onClick: remove, testId: `onpage-${variant}-delete` })] }));
71
+ return (_jsxs("div", { className: `po-bar${variant === 'item' ? ' is-item' : ''}`, style: toolbarPosition(r), role: "toolbar", "aria-label": t('row.toolbar', { label }), "data-testid": `onpage-${variant}-toolbar`, children: [_jsx("span", { className: "po-btn po-bar-label", children: label }), _jsx(ToolbarButton, { label: t('row.moveUp'), icon: _jsx(ArrowUpIcon, {}), disabled: !ops.canMove(-1), onClick: () => move(-1), testId: `onpage-${variant}-up` }), _jsx(ToolbarButton, { label: t('row.moveDown'), icon: _jsx(ArrowDownIcon, {}), disabled: !ops.canMove(1), onClick: () => move(1), testId: `onpage-${variant}-down` }), _jsx(ToolbarButton, { label: t('row.duplicate'), icon: _jsx(DuplicateIcon, {}), disabled: !ops.canDuplicate, onClick: duplicate, testId: `onpage-${variant}-duplicate` }), hasSettings(info.rowFields, path, key, targets) && (_jsx(ToolbarButton, { label: t('row.settings'), icon: _jsx(SettingsIcon, {}), onClick: () => setPanel({ kind: 'settings', key, path, title: label }), testId: `onpage-${variant}-settings` })), _jsx(ToolbarButton, { label: t('row.delete'), icon: _jsx(CloseIcon, {}), danger: true, disabled: !ops.canRemove, onClick: remove, testId: `onpage-${variant}-delete` })] }));
71
72
  }
72
73
  function InsertPoints({ row }) {
73
74
  const { setPanel, t } = useOnPage();
@@ -1 +1 @@
1
- {"version":3,"file":"Overlay.js","sourceRoot":"","sources":["../../src/ui/Overlay.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Overlay.js","sourceRoot":"","sources":["../../src/ui/Overlay.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payload-onpage/react",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "payload-onpage React editor: overlay, toolbars, field editors, annotations and client mode.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -15,12 +15,23 @@
15
15
  "keywords": [
16
16
  "payload",
17
17
  "payloadcms",
18
+ "payload-cms",
18
19
  "payload-plugin",
19
20
  "nextjs",
21
+ "next.js",
22
+ "app-router",
20
23
  "visual-editing",
21
- "live-preview",
24
+ "visual-editor",
22
25
  "inline-editing",
23
- "cms"
26
+ "front-end-editing",
27
+ "live-preview",
28
+ "draft-preview",
29
+ "preview-links",
30
+ "page-builder",
31
+ "wysiwyg",
32
+ "headless-cms",
33
+ "cms",
34
+ "react"
24
35
  ],
25
36
  "exports": {
26
37
  ".": {
@@ -61,7 +72,7 @@
61
72
  "provenance": true
62
73
  },
63
74
  "dependencies": {
64
- "@payload-onpage/core": "0.3.0"
75
+ "@payload-onpage/core": "0.3.2"
65
76
  },
66
77
  "peerDependencies": {
67
78
  "react": "^19.0.0",
package/src/editor-kit.ts CHANGED
@@ -25,6 +25,7 @@ export {
25
25
  } from './dom.ts'
26
26
  export { useTrackElement, useLayoutTick, notifyLayout } from './layout.ts'
27
27
  export { useEvent } from './useEvent.ts'
28
+ export { RedoIcon, UndoIcon } from './icons.tsx'
28
29
  export { escapeHtml, sanitizeHtml } from './sanitize.ts'
29
30
  export type { EditorRegistry, FieldEditorDef, FieldEditorProps, GhostInput } from './types.ts'
30
31
  export type { FieldOf } from '@payload-onpage/core'
@@ -17,6 +17,7 @@ import { useOnPage } from '../context.tsx'
17
17
  import type { FieldEditorProps } from '../types.ts'
18
18
  import { EditorPopover } from './kit.tsx'
19
19
  import { useDebouncedSearch } from './useDebouncedSearch.ts'
20
+ import { CloseIcon } from '../icons.tsx'
20
21
 
21
22
  export function RelationshipEditor(props: FieldEditorProps<RelationField>) {
22
23
  const { docKey, field, value, commit, close, t } = props
@@ -75,7 +76,7 @@ export function RelationshipEditor(props: FieldEditorProps<RelationField>) {
75
76
  onClick={() => remove(i)}
76
77
  aria-label={t('common.removeItem', { item: relationTitle(v, titleField) })}
77
78
  >
78
- ✕
79
+ <CloseIcon />
79
80
  </button>
80
81
  )}
81
82
  </div>
package/src/geometry.ts CHANGED
@@ -17,8 +17,8 @@ export const GEOMETRY = {
17
17
  chipMinTop: 22,
18
18
  /** Gap between a list and its "+ Add" button. */
19
19
  addGap: 14,
20
- /** Room left at the bottom for the dock. */
21
- dock: 84,
20
+ /** Room the dock takes above its offset (its height plus a gap). */
21
+ dock: 68,
22
22
  /** "+ Add first section" sits at most this far down an empty list. */
23
23
  emptyListOffset: 160,
24
24
  } as const
@@ -43,8 +43,21 @@ export const toolbarPosition = (r: Rect) => ({
43
43
  right: Math.max(window.innerWidth - r.right + margin, margin),
44
44
  })
45
45
 
46
+ /**
47
+ * How far the dock sits from the bottom: `--po-dock-bottom` (default 16px). A site
48
+ * with its own fixed bottom bar raises the dock by setting it, e.g.
49
+ * `html:has(.cart-bar) { --po-dock-bottom: 88px }`.
50
+ */
51
+ export function dockOffset(): number {
52
+ const value = parseFloat(
53
+ getComputedStyle(document.documentElement).getPropertyValue('--po-dock-bottom'),
54
+ )
55
+ return Number.isFinite(value) ? value : 16
56
+ }
57
+
46
58
  /** "+ Add" below a list, or pinned above the dock while the list runs past the viewport. */
47
- export const belowList = (r: Rect): number => Math.min(r.bottom + addGap, window.innerHeight - dock)
59
+ export const belowList = (r: Rect): number =>
60
+ Math.min(r.bottom + addGap, window.innerHeight - dockOffset() - dock)
48
61
 
49
62
  /** A fixed popover below (or, without room, above) an element, kept inside the viewport. */
50
63
  export function popoverPosition(
package/src/icons.tsx ADDED
@@ -0,0 +1,62 @@
1
+ /** Small inline icons for the editor UI (text glyphs like ↶ render tiny and unevenly across fonts). */
2
+ const svg = {
3
+ width: 16,
4
+ height: 16,
5
+ viewBox: '0 0 24 24',
6
+ fill: 'none',
7
+ stroke: 'currentColor',
8
+ strokeWidth: 2,
9
+ strokeLinecap: 'round',
10
+ strokeLinejoin: 'round',
11
+ 'aria-hidden': true,
12
+ } as const
13
+
14
+ export const UndoIcon = () => (
15
+ <svg {...svg}>
16
+ <path d="M9 14 4 9l5-5" />
17
+ <path d="M4 9h10.5a5.5 5.5 0 0 1 0 11H11" />
18
+ </svg>
19
+ )
20
+
21
+ export const RedoIcon = () => (
22
+ <svg {...svg}>
23
+ <path d="m15 14 5-5-5-5" />
24
+ <path d="M20 9H9.5a5.5 5.5 0 0 0 0 11H13" />
25
+ </svg>
26
+ )
27
+
28
+ export const ArrowUpIcon = () => (
29
+ <svg {...svg}>
30
+ <path d="M12 19V5" />
31
+ <path d="m5 12 7-7 7 7" />
32
+ </svg>
33
+ )
34
+
35
+ export const ArrowDownIcon = () => (
36
+ <svg {...svg}>
37
+ <path d="M12 5v14" />
38
+ <path d="m19 12-7 7-7-7" />
39
+ </svg>
40
+ )
41
+
42
+ export const DuplicateIcon = () => (
43
+ <svg {...svg}>
44
+ <rect x="8" y="8" width="13" height="13" rx="2" />
45
+ <path d="M4 16V5a1 1 0 0 1 1-1h11" />
46
+ </svg>
47
+ )
48
+
49
+ export const SettingsIcon = () => (
50
+ <svg {...svg}>
51
+ <path d="M4 7h10M18 7h2M4 17h2M10 17h10" />
52
+ <circle cx="16" cy="7" r="2" />
53
+ <circle cx="8" cy="17" r="2" />
54
+ </svg>
55
+ )
56
+
57
+ export const CloseIcon = () => (
58
+ <svg {...svg}>
59
+ <path d="M18 6 6 18" />
60
+ <path d="m6 6 12 12" />
61
+ </svg>
62
+ )
package/src/styles.ts CHANGED
@@ -52,14 +52,15 @@ export const PO_CSS = `
52
52
  .po-blocks{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
53
53
  .po-blocks button{all:unset;padding:14px;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;font:600 13px system-ui,sans-serif}
54
54
  .po-blocks button:hover,.po-blocks button:focus-visible{border-color:#4f7cff;background:#f5f8ff}
55
- .po-dock{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;gap:4px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}
55
+ .po-btn svg{display:block}
56
+ .po-dock{position:fixed;left:50%;width:max-content;bottom:var(--po-dock-bottom,16px);transform:translateX(-50%);display:flex;align-items:center;gap:4px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}
56
57
  .po-dock .po-status{padding:0 10px;font-size:12px;opacity:.85;white-space:nowrap}
57
58
  .po-dock .po-status.is-bad{color:#fca5a5;opacity:1}
58
59
  .po-dock .po-sep{width:1px;height:20px;background:#ffffff26;margin:0 4px}
59
60
  .po-dock .po-primary{background:#3b63e0}
60
61
  .po-dock .po-primary:hover{background:#2f5bd9}
61
62
  .po-chip-locale{padding:2px 7px;border-radius:999px;background:#ffffff1f;font-size:11px;font-weight:700;text-transform:uppercase}
62
- .po-notice{position:fixed;left:50%;bottom:72px;transform:translateX(-50%);max-width:min(560px,calc(100vw - 24px));padding:8px 12px;border-radius:10px;background:#fffbeb;color:#78350f;border:1px solid #fcd34d;font-size:12px;pointer-events:auto}
63
+ .po-notice{position:fixed;left:50%;width:max-content;bottom:calc(var(--po-dock-bottom,16px) + 56px);transform:translateX(-50%);max-width:min(560px,calc(100vw - 24px));padding:8px 12px;border-radius:10px;background:#fffbeb;color:#78350f;border:1px solid #fcd34d;font-size:12px;pointer-events:auto}
63
64
  .po-doc-layer{position:absolute;top:0;left:0;width:0;height:0;overflow:visible;z-index:${PO_Z};pointer-events:none;font:13px/1.35 system-ui,-apple-system,"Segoe UI",sans-serif}
64
65
  .po-inline{position:absolute;pointer-events:auto;outline:2px solid #4f7cff;outline-offset:2px;border-radius:2px;background:transparent;white-space:pre-wrap;word-break:break-word;caret-color:currentColor;cursor:text}
65
66
  .po-inline:focus{outline-color:#4f7cff}
@@ -82,7 +83,7 @@ export const PO_CSS = `
82
83
  .po-opaque{display:inline-flex;align-items:center;gap:6px;margin:6px 0;padding:6px 10px;border:1px dashed #94a3b8;border-radius:8px;background:#f8fafc;color:#475569;font:12px system-ui,sans-serif;user-select:none}
83
84
  html[data-onpage-editing] [data-onpage-field]{cursor:pointer}
84
85
  [data-onpage-hidden="true"]{visibility:hidden!important}
85
- .po-preview{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;gap:6px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}
86
+ .po-preview{position:fixed;left:50%;width:max-content;bottom:var(--po-dock-bottom,16px);transform:translateX(-50%);display:flex;align-items:center;gap:6px;padding:6px;background:#0f172a;color:#fff;border-radius:12px;box-shadow:0 12px 40px #0f172a55;pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap}
86
87
  .po-preview .po-status{padding:0 8px;font-size:12px;opacity:.85}
87
88
  .po-rel-item{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:6px;background:#f1f5f9;font-size:12px;margin:0 0 4px}
88
89
  .po-rel-item button{all:unset;cursor:pointer;margin-left:auto;padding:0 4px;color:#64748b}
package/src/ui/Dialog.tsx CHANGED
@@ -10,6 +10,7 @@ import { useEffect, useId, useRef, useState, type CSSProperties, type ReactNode
10
10
  import { focusableIn, popoverPosition } from '../dom.ts'
11
11
  import { useLayoutTick } from '../layout.ts'
12
12
  import type { Translate } from '../messages.ts'
13
+ import { CloseIcon } from '../icons.tsx'
13
14
 
14
15
  export interface DialogProps {
15
16
  title: string
@@ -111,7 +112,7 @@ export function Dialog({
111
112
  onClick={onClose}
112
113
  aria-label={t('common.close')}
113
114
  >
114
- ✕
115
+ <CloseIcon />
115
116
  </button>
116
117
  </header>
117
118
  )
package/src/ui/Dock.tsx CHANGED
@@ -12,6 +12,7 @@ import { useOnPage } from '../context.tsx'
12
12
  import { relativeTime, type Translate } from '../messages.ts'
13
13
  import { PostButton } from './PostButton.tsx'
14
14
  import { ToolbarButton } from './ToolbarButton.tsx'
15
+ import { RedoIcon, UndoIcon } from '../icons.tsx'
15
16
  import type { Flash } from '../types.ts'
16
17
 
17
18
  const title = (d: DocumentState) => d.schema?.labels.singular ?? d.ref.slug
@@ -183,7 +184,7 @@ export function Dock() {
183
184
  <ToolbarButton
184
185
  label={t('dock.undo')}
185
186
  hint={`${t('dock.undo')} (⌘Z)`}
186
- icon="↶"
187
+ icon={<UndoIcon />}
187
188
  disabled={!snap.canUndo}
188
189
  onClick={() => session.undo()}
189
190
  testId="onpage-undo"
@@ -191,7 +192,7 @@ export function Dock() {
191
192
  <ToolbarButton
192
193
  label={t('dock.redo')}
193
194
  hint={`${t('dock.redo')} (⇧⌘Z)`}
194
- icon="↷"
195
+ icon={<RedoIcon />}
195
196
  disabled={!snap.canRedo}
196
197
  onClick={() => session.redo()}
197
198
  testId="onpage-redo"
@@ -25,6 +25,7 @@ import { isOurs } from '../dom.ts'
25
25
  import { belowList, GEOMETRY, inViewport, outlineBox, toolbarPosition } from '../geometry.ts'
26
26
  import { useLayoutTick } from '../layout.ts'
27
27
  import { ToolbarButton } from './ToolbarButton.tsx'
28
+ import { ArrowDownIcon, ArrowUpIcon, CloseIcon, DuplicateIcon, SettingsIcon } from '../icons.tsx'
28
29
  import { targetsAt } from '../targets.ts'
29
30
  import { insertRow, rowOps } from '../rowOps.ts'
30
31
  import { hasSettings } from '../settings.ts'
@@ -121,21 +122,21 @@ function RowToolbar({ row, variant }: { row: ActiveRow; variant: 'block' | 'item
121
122
  <span className="po-btn po-bar-label">{label}</span>
122
123
  <ToolbarButton
123
124
  label={t('row.moveUp')}
124
- icon="↑"
125
+ icon={<ArrowUpIcon />}
125
126
  disabled={!ops.canMove(-1)}
126
127
  onClick={() => move(-1)}
127
128
  testId={`onpage-${variant}-up`}
128
129
  />
129
130
  <ToolbarButton
130
131
  label={t('row.moveDown')}
131
- icon="↓"
132
+ icon={<ArrowDownIcon />}
132
133
  disabled={!ops.canMove(1)}
133
134
  onClick={() => move(1)}
134
135
  testId={`onpage-${variant}-down`}
135
136
  />
136
137
  <ToolbarButton
137
138
  label={t('row.duplicate')}
138
- icon="⧉"
139
+ icon={<DuplicateIcon />}
139
140
  disabled={!ops.canDuplicate}
140
141
  onClick={duplicate}
141
142
  testId={`onpage-${variant}-duplicate`}
@@ -143,14 +144,14 @@ function RowToolbar({ row, variant }: { row: ActiveRow; variant: 'block' | 'item
143
144
  {hasSettings(info.rowFields, path, key, targets) && (
144
145
  <ToolbarButton
145
146
  label={t('row.settings')}
146
- icon="⚙"
147
+ icon={<SettingsIcon />}
147
148
  onClick={() => setPanel({ kind: 'settings', key, path, title: label })}
148
149
  testId={`onpage-${variant}-settings`}
149
150
  />
150
151
  )}
151
152
  <ToolbarButton
152
153
  label={t('row.delete')}
153
- icon="✕"
154
+ icon={<CloseIcon />}
154
155
  danger
155
156
  disabled={!ops.canRemove}
156
157
  onClick={remove}