@shadow-garden/bapbong-ui 0.9.0 → 0.10.0

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.
@@ -89,4 +89,59 @@ export interface MarginsDialogOptions {
89
89
  }
90
90
  /** Layout ▸ Margins ▸ Custom margins — the four edges in cm. */
91
91
  export declare function openMarginsDialog(options: MarginsDialogOptions): void;
92
+ export interface PageNumberPickerOptions {
93
+ /** Whether the section currently SHOWS page numbers (its headers/footers
94
+ * contain a PAGE field). Paired with `onToggleShown` it adds a leading
95
+ * checkbox row; when false the format/restart body is disabled. */
96
+ shown?: boolean;
97
+ onToggleShown?: (show: boolean) => void;
98
+ /** The section's current format (raw ST_NumberFormat); undefined or
99
+ * "decimal" both check the decimal row. */
100
+ fmt?: string;
101
+ /** The section's restart value; undefined = continue from the previous
102
+ * section. */
103
+ start?: number;
104
+ /** Caption on the continue row, e.g. the numbers it would produce
105
+ * ("ii, iii…"). */
106
+ continueHint?: string;
107
+ labels?: {
108
+ restart?: string;
109
+ continueFrom?: string;
110
+ shown?: string;
111
+ };
112
+ /** Called with the section's next pageNumbers value — null when the pick
113
+ * lands back on the defaults (decimal, no restart). */
114
+ onPick: (pageNumbers: {
115
+ fmt?: string;
116
+ start?: number;
117
+ } | null) => void;
118
+ }
119
+ /**
120
+ * The section-break marker's page-numbering flyout: one row per display
121
+ * format plus restart / continue rows — same row family as the page-setup
122
+ * pickers, so the marker's menus read like the Layout menu.
123
+ */
124
+ export declare function pageNumberPicker(options: PageNumberPickerOptions): HTMLElement;
125
+ export interface SectionPaperPanelOptions {
126
+ /** Current section geometry in px — drives previews + the active states. */
127
+ page: {
128
+ width: number;
129
+ height: number;
130
+ };
131
+ items: readonly PaperChoice[];
132
+ labels?: {
133
+ orientation?: string;
134
+ pageSize?: string;
135
+ custom?: string;
136
+ };
137
+ onOrientation: (orientation: 'portrait' | 'landscape') => void;
138
+ onPick: (key: string) => void;
139
+ onCustom: () => void;
140
+ }
141
+ /**
142
+ * ONE flat panel: an orientation tile pair, then the paper presets, then the
143
+ * custom row — no submenus, so every option is a single tap (touch-first,
144
+ * same reasoning as the always-expanded section chip).
145
+ */
146
+ export declare function sectionPaperPanel(options: SectionPaperPanelOptions): HTMLElement;
92
147
  //# sourceMappingURL=page-setup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-setup.d.ts","sourceRoot":"","sources":["../../src/lib/page-setup.ts"],"names":[],"mappings":"AAkBA,eAAe;AACf,eAAO,MAAM,MAAM,GAAI,IAAI,MAAM,KAAG,MAAwB,CAAC;AAC7D,mDAAmD;AACnD,eAAO,MAAM,MAAM,GAAI,IAAI,MAAM,KAAG,MAAoC,CAAC;AAOzE,MAAM,WAAW,WAAW;IAC1B,kEAAkE;IAClE,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd;0DACsD;IACtD,EAAE,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,oEAAoE;IACpE,EAAE,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAqJD,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;IAC9B,2CAA2C;IAC3C,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,sDAAsD;IACtD,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,WAAW,CA8B1E;AAED,MAAM,WAAW,wBAAwB;IACvC,4EAA4E;IAC5E,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC,MAAM,EAAE,UAAU,GAAG,WAAW,CAAC;IACjC,MAAM,EAAE,CAAC,WAAW,EAAE,UAAU,GAAG,WAAW,KAAK,IAAI,CAAC;CACzD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,wBAAwB,GAChC,WAAW,CA0Bb;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/B,8EAA8E;IAC9E,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,mBAAmB,GAAG,WAAW,CA0C5E;AAkDD,MAAM,WAAW,qBAAqB;IACpC,0BAA0B;IAC1B,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,0BAA0B;IAC1B,OAAO,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CAC5D;AAED,kEAAkE;AAClE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CA2BvE;AAED,MAAM,WAAW,oBAAoB;IACnC,6BAA6B;IAC7B,OAAO,EAAE,UAAU,CAAC;IACpB,6BAA6B;IAC7B,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;CACvC;AAED,gEAAgE;AAChE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI,CAuCrE"}
1
+ {"version":3,"file":"page-setup.d.ts","sourceRoot":"","sources":["../../src/lib/page-setup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ export interface SectionChipOptions {
2
+ /** Static first segment, e.g. "Next page" / "Trang mới". */
3
+ title: string;
4
+ /** Accessible names for the action segments. */
5
+ ariaPageNumbers?: string;
6
+ ariaPaper?: string;
7
+ ariaDelete?: string;
8
+ /** Open the page-numbering menu; `anchor` is the clicked segment. */
9
+ onPageNumbers(anchor: HTMLElement): void;
10
+ /** Open the orientation / paper-size menu; `anchor` is the clicked segment. */
11
+ onPaper(anchor: HTMLElement): void;
12
+ onDelete(): void;
13
+ }
14
+ export interface SectionChipHandle {
15
+ /** Position with `left`/`top` (the chip centers itself on that point). */
16
+ el: HTMLElement;
17
+ /** Refresh the two data segments' labels. `pageNumbersMuted` styles the
18
+ * numbering segment as inactive ("no page number") — still clickable. */
19
+ update(data: {
20
+ pageNumbers: string;
21
+ pageNumbersMuted?: boolean;
22
+ paper: string;
23
+ }): void;
24
+ destroy(): void;
25
+ }
26
+ export declare function createSectionChip(options: SectionChipOptions): SectionChipHandle;
27
+ //# sourceMappingURL=section-chip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"section-chip.d.ts","sourceRoot":"","sources":["../../src/lib/section-chip.ts"],"names":[],"mappings":"AA8BA,MAAM,WAAW,kBAAkB;IACjC,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IACzC,+EAA+E;IAC/E,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IACnC,QAAQ,IAAI,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,0EAA0E;IAC1E,EAAE,EAAE,WAAW,CAAC;IAChB;8EAC0E;IAC1E,MAAM,CAAC,IAAI,EAAE;QACX,WAAW,EAAE,MAAM,CAAC;QACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,IAAI,CAAC;IACT,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,kBAAkB,GAC1B,iBAAiB,CA6DnB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shadow-garden/bapbong-ui",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "description": "bapbong — framework-agnostic editor UI (toolbar/menubar) that mounts into a host element and binds to editor.commands",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -56,6 +56,6 @@
56
56
  }
57
57
  },
58
58
  "dependencies": {
59
- "@shadow-garden/bapbong-contracts": "^0.8.0"
59
+ "@shadow-garden/bapbong-contracts": "^0.9.0"
60
60
  }
61
61
  }