@papernote/ui 1.12.0 → 1.13.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.
@@ -1 +1 @@
1
- {"version":3,"file":"AdminModal.d.ts","sourceRoot":"","sources":["../../src/components/AdminModal.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzC,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,aAAa,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,mBAAmB,CAAC,EAAE,SAAS,CAAC;CACjC;AAaD,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAgB,EAChB,IAAI,EACJ,WAAW,EACX,WAAW,EACX,IAAY,EACZ,MAAe,EACf,MAA2B,EAC3B,QAAQ,EACR,mBAAmB,EACpB,EAAE,eAAe,kDAkGjB;AAED,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"AdminModal.d.ts","sourceRoot":"","sources":["../../src/components/AdminModal.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzC,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,aAAa,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,mBAAmB,CAAC,EAAE,SAAS,CAAC;CACjC;AAaD,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAgB,EAChB,IAAI,EACJ,WAAW,EACX,WAAW,EACX,IAAY,EACZ,MAAe,EACf,MAA2B,EAC3B,QAAQ,EACR,mBAAmB,EACpB,EAAE,eAAe,kDAmGjB;AAED,eAAe,UAAU,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../src/components/Sidebar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAI3D,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,+CAA+C;IAC/C,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAuGD,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,eAAsB,EAAE,WAAW,EAAE,EAAE,iBAAiB,2CAoChH;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAC9B,KAAK,EACL,UAAU,EACV,SAAc,EACd,MAAM,EACN,MAAM,EACN,WAAW,EACX,UAAU,EACV,aAAa,EACb,KAAc,GACf,EAAE,YAAY,kDAgLd"}
1
+ {"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../src/components/Sidebar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAI3D,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,+CAA+C;IAC/C,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAuGD,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,eAAsB,EAAE,WAAW,EAAE,EAAE,iBAAiB,2CAoChH;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAC9B,KAAK,EACL,UAAU,EACV,SAAc,EACd,MAAM,EACN,MAAM,EACN,WAAW,EACX,UAAU,EACV,aAAa,EACb,KAAc,GACf,EAAE,YAAY,kDAkMd"}
package/dist/index.esm.js CHANGED
@@ -13185,8 +13185,13 @@ function Sidebar({ items, onNavigate, className = '', header, footer, currentPat
13185
13185
  };
13186
13186
  // Sidebar content (shared between desktop and mobile)
13187
13187
  const sidebarContent = (jsxs("div", { ref: sidebarRef, className: `flex flex-col h-full bg-white border-r border-paper-300 notebook-binding ${width} ${className}`, children: [mobileOpen !== undefined && (jsxs("div", { className: "flex items-center justify-between px-4 pt-4 md:hidden", children: [jsx("div", { className: "flex-1", children: header }), jsx("button", { onClick: onMobileClose, className: "\n flex items-center justify-center\n w-10 h-10 -mr-2\n text-ink-500 hover:text-ink-700\n hover:bg-paper-100 rounded-full\n transition-colors\n ", "aria-label": "Close sidebar", children: jsx(X, { className: "w-5 h-5" }) })] })), header && mobileOpen === undefined && (jsx("div", { className: "px-6 pt-6 pb-4", children: header })), header && mobileOpen !== undefined && (jsx("div", { className: "px-6 pt-2 pb-4 hidden md:block", children: header })), jsx("nav", { className: "flex-1 px-3 py-2 space-y-1 overflow-y-auto", children: items.map((item) => {
13188
- // Render separator
13188
+ // Render separator or section header
13189
13189
  if (item.separator) {
13190
+ // Section header: separator with a label
13191
+ if (item.label) {
13192
+ return (jsx("div", { className: "mt-6 mb-2 px-3", "data-testid": item.dataAttributes?.['data-testid'] || `sidebar-section-${item.id}`, ...item.dataAttributes, children: jsx("div", { className: "border-t border-paper-300 pt-3", children: jsx("span", { className: "text-[10px] font-semibold uppercase tracking-widest text-ink-400", children: item.label }) }) }, item.id));
13193
+ }
13194
+ // Plain separator: just a line
13190
13195
  return (jsx("div", { className: "my-4 border-t border-paper-300", "data-testid": item.dataAttributes?.['data-testid'] || `sidebar-separator-${item.id}`, ...item.dataAttributes }, item.id));
13191
13196
  }
13192
13197
  // Render nav item
@@ -15681,44 +15686,52 @@ function getAugmentedNamespace(n) {
15681
15686
  * (A1, A1:C5, ...)
15682
15687
  */
15683
15688
 
15684
- let Collection$3 = class Collection {
15689
+ var collection;
15690
+ var hasRequiredCollection;
15691
+
15692
+ function requireCollection () {
15693
+ if (hasRequiredCollection) return collection;
15694
+ hasRequiredCollection = 1;
15695
+ class Collection {
15685
15696
 
15686
- constructor(data, refs) {
15687
- if (data == null && refs == null) {
15688
- this._data = [];
15689
- this._refs = [];
15690
- } else {
15691
- if (data.length !== refs.length)
15692
- throw Error('Collection: data length should match references length.');
15693
- this._data = data;
15694
- this._refs = refs;
15695
- }
15696
- }
15697
+ constructor(data, refs) {
15698
+ if (data == null && refs == null) {
15699
+ this._data = [];
15700
+ this._refs = [];
15701
+ } else {
15702
+ if (data.length !== refs.length)
15703
+ throw Error('Collection: data length should match references length.');
15704
+ this._data = data;
15705
+ this._refs = refs;
15706
+ }
15707
+ }
15697
15708
 
15698
- get data() {
15699
- return this._data;
15700
- }
15709
+ get data() {
15710
+ return this._data;
15711
+ }
15701
15712
 
15702
- get refs() {
15703
- return this._refs;
15704
- }
15713
+ get refs() {
15714
+ return this._refs;
15715
+ }
15705
15716
 
15706
- get length() {
15707
- return this._data.length;
15708
- }
15717
+ get length() {
15718
+ return this._data.length;
15719
+ }
15709
15720
 
15710
- /**
15711
- * Add data and references to this collection.
15712
- * @param {{}} obj - data
15713
- * @param {{}} ref - reference
15714
- */
15715
- add(obj, ref) {
15716
- this._data.push(obj);
15717
- this._refs.push(ref);
15718
- }
15719
- };
15721
+ /**
15722
+ * Add data and references to this collection.
15723
+ * @param {{}} obj - data
15724
+ * @param {{}} ref - reference
15725
+ */
15726
+ add(obj, ref) {
15727
+ this._data.push(obj);
15728
+ this._refs.push(ref);
15729
+ }
15730
+ }
15720
15731
 
15721
- var collection = Collection$3;
15732
+ collection = Collection;
15733
+ return collection;
15734
+ }
15722
15735
 
15723
15736
  var helpers;
15724
15737
  var hasRequiredHelpers;
@@ -15727,7 +15740,7 @@ function requireHelpers () {
15727
15740
  if (hasRequiredHelpers) return helpers;
15728
15741
  hasRequiredHelpers = 1;
15729
15742
  const FormulaError = requireError();
15730
- const Collection = collection;
15743
+ const Collection = requireCollection();
15731
15744
 
15732
15745
  const Types = {
15733
15746
  NUMBER: 0,
@@ -25381,7 +25394,7 @@ var engineering = EngineeringFunctions;
25381
25394
 
25382
25395
  const FormulaError$b = requireError();
25383
25396
  const {FormulaHelpers: FormulaHelpers$8, Types: Types$6, WildCard, Address: Address$3} = requireHelpers();
25384
- const Collection$2 = collection;
25397
+ const Collection$2 = requireCollection();
25385
25398
  const H$5 = FormulaHelpers$8;
25386
25399
 
25387
25400
  const ReferenceFunctions$1 = {
@@ -37009,7 +37022,7 @@ var parsing = {
37009
37022
  const FormulaError$4 = requireError();
37010
37023
  const {Address: Address$1} = requireHelpers();
37011
37024
  const {Prefix: Prefix$1, Postfix: Postfix$1, Infix: Infix$1, Operators: Operators$1} = operators;
37012
- const Collection$1 = collection;
37025
+ const Collection$1 = requireCollection();
37013
37026
  const MAX_ROW$1 = 1048576, MAX_COLUMN$1 = 16384;
37014
37027
  const {NotAllInputParsedException} = require$$4;
37015
37028
 
@@ -37771,7 +37784,7 @@ var hooks$1 = {
37771
37784
  const FormulaError$2 = requireError();
37772
37785
  const {FormulaHelpers: FormulaHelpers$1, Types, Address} = requireHelpers();
37773
37786
  const {Prefix, Postfix, Infix, Operators} = operators;
37774
- const Collection = collection;
37787
+ const Collection = requireCollection();
37775
37788
  const MAX_ROW = 1048576, MAX_COLUMN = 16384;
37776
37789
 
37777
37790
  let Utils$1 = class Utils {
@@ -61818,7 +61831,7 @@ function AdminModal({ isOpen, onClose, title, subtitle, onSubmit, isSaving = fal
61818
61831
  };
61819
61832
  return (jsx("div", { className: "fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50 p-4 admin-modal-overlay", children: jsxs("div", { className: `bg-white rounded-lg w-full ${sizeClasses[size]} flex flex-col overflow-hidden shadow-2xl admin-modal-content`, style: { height: height }, children: [jsx("div", { className: "fixed inset-0 pointer-events-none admin-modal-sidebar-placeholder" }), jsxs("div", { className: "px-6 py-4 border-b", children: [jsx("h3", { className: "text-lg font-semibold", children: title }), subtitle && jsx("p", { className: "text-sm text-gray-500 mt-1", children: subtitle })] }), tabs.length > 1 && (jsx("div", { className: "border-b border-gray-200 bg-white", children: jsx("nav", { className: "-mb-px flex items-center px-6 admin-modal-tabs", "aria-label": "Tabs", children: tabs.map((tab, index) => (jsxs(React__default.Fragment, { children: [jsx("button", { type: "button", onClick: () => onTabChange(tab.id), className: `whitespace-nowrap border-b-2 py-3 px-4 text-sm font-medium transition-colors ${activeTabId === tab.id
61820
61833
  ? 'border-blue-500 text-blue-600'
61821
- : 'border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700'}`, "aria-current": activeTabId === tab.id ? 'page' : undefined, children: tab.label }), index < tabs.length - 1 && (jsx("div", { className: "admin-modal-tab-separator" }))] }, tab.id))) }) })), onSubmit ? (jsx("form", { className: "flex-1 overflow-y-auto min-h-0 h-0 px-6 py-6 admin-modal-form", onSubmit: handleFormSubmit, id: formId, children: activeTab?.content || children })) : (jsx("div", { className: "flex-1 overflow-y-auto min-h-0 h-0 px-6 py-6 admin-modal-content-area", children: activeTab?.content || children })), jsxs("div", { className: "px-6 py-4 border-t bg-gray-50 flex justify-between gap-3", children: [jsx("button", { type: "button", onClick: onClose, className: "px-4 py-2 text-sm text-gray-600 hover:text-gray-800", disabled: isSaving, children: "Cancel" }), jsxs("div", { className: "flex gap-3", children: [customFooterActions, onSubmit && (jsx("button", { type: "submit", form: formId, disabled: isSaving, className: "px-4 py-2 text-sm bg-primary-600 text-white rounded hover:bg-primary-700 disabled:opacity-50 disabled:cursor-not-allowed", children: isSaving ? 'Saving...' : 'Save Changes' }))] })] })] }) }));
61834
+ : 'border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700'}`, "aria-current": activeTabId === tab.id ? 'page' : undefined, children: tab.label }), index < tabs.length - 1 && (jsx("div", { className: "admin-modal-tab-separator" }))] }, tab.id))) }) })), onSubmit ? (jsx("form", { className: "flex-1 overflow-y-auto min-h-0 h-0 px-6 py-6 admin-modal-form", onSubmit: handleFormSubmit, id: formId, noValidate: true, children: activeTab?.content || children })) : (jsx("div", { className: "flex-1 overflow-y-auto min-h-0 h-0 px-6 py-6 admin-modal-content-area", children: activeTab?.content || children })), jsxs("div", { className: "px-6 py-4 border-t bg-gray-50 flex justify-between gap-3", children: [jsx("button", { type: "button", onClick: onClose, className: "px-4 py-2 text-sm text-gray-600 hover:text-gray-800", disabled: isSaving, children: "Cancel" }), jsxs("div", { className: "flex gap-3", children: [customFooterActions, onSubmit && (jsx("button", { type: "submit", form: formId, disabled: isSaving, className: "px-4 py-2 text-sm bg-primary-600 text-white rounded hover:bg-primary-700 disabled:opacity-50 disabled:cursor-not-allowed", children: isSaving ? 'Saving...' : 'Save Changes' }))] })] })] }) }));
61822
61835
  }
61823
61836
 
61824
61837
  /**