@ishibashi0112/spreadsheet-grid 0.35.0 → 0.37.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.
- package/dist/controllers/clipboardController.d.ts +31 -0
- package/dist/controllers/columnAutosizeRunner.d.ts +20 -0
- package/dist/controllers/columnHeaderDragController.d.ts +44 -0
- package/dist/controllers/columnMenuController.d.ts +49 -0
- package/dist/controllers/contextMenuController.d.ts +30 -0
- package/dist/controllers/editController.d.ts +27 -0
- package/dist/controllers/filterPopoverController.d.ts +53 -0
- package/dist/controllers/globalFilteredOrder.d.ts +38 -0
- package/dist/controllers/historyController.d.ts +28 -0
- package/dist/controllers/keyboardController.d.ts +36 -0
- package/dist/controllers/panelHeaderDragController.d.ts +21 -0
- package/dist/controllers/pointerInteractionsController.d.ts +74 -0
- package/dist/controllers/popoverSupport.d.ts +18 -0
- package/dist/controllers/rowDragController.d.ts +40 -0
- package/dist/controllers/selectOptionsCollector.d.ts +31 -0
- package/dist/controllers/serverSideRowModel.d.ts +36 -0
- package/dist/controllers/systemColorSchemeStore.d.ts +5 -0
- package/dist/controllers/toolPanelController.d.ts +36 -0
- package/dist/controllers/tooltipController.d.ts +6 -0
- package/dist/controllers/viewportSyncController.d.ts +30 -0
- package/dist/hooks/useCellContextMenuController.d.ts +7 -13
- package/dist/hooks/useColumnAutosizeRunner.d.ts +3 -13
- package/dist/hooks/useColumnHeaderDragController.d.ts +5 -16
- package/dist/hooks/useColumnMenuController.d.ts +10 -12
- package/dist/hooks/useColumnSelectOptionsCollector.d.ts +2 -10
- package/dist/hooks/useController.d.ts +5 -0
- package/dist/hooks/useFilterPopoverController.d.ts +16 -25
- package/dist/hooks/useGlobalFilteredOrder.d.ts +4 -8
- package/dist/hooks/useGridClipboardController.d.ts +4 -21
- package/dist/hooks/useGridEditController.d.ts +5 -20
- package/dist/hooks/useGridHistoryController.d.ts +2 -15
- package/dist/hooks/useGridKeyboardInteractions.d.ts +3 -23
- package/dist/hooks/useGridPointerInteractions.d.ts +15 -39
- package/dist/hooks/useGridStore.d.ts +7 -0
- package/dist/hooks/useGridViewportSync.d.ts +3 -19
- package/dist/hooks/useResolvedGridTheme.d.ts +2 -1
- package/dist/hooks/useRowDragController.d.ts +4 -13
- package/dist/hooks/useServerSideRowModel.d.ts +5 -18
- package/dist/hooks/useToolPanelController.d.ts +7 -9
- package/dist/index.cjs +8 -8
- package/dist/index.js +4044 -4037
- package/dist/logic/chunkedLoop.d.ts +8 -0
- package/dist/logic/theme.d.ts +3 -0
- package/dist/logic/valueStore.d.ts +6 -0
- package/dist/model/gridStore.d.ts +24 -0
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("react"),t=require("react-dom"),n=require("@tanstack/virtual-core"),r=require("react/jsx-runtime");function i(...e){return e.filter(Boolean).join(` `)}var a=Object.freeze({});function o(e){if(!e)return a;if(typeof e==`string`)return{className:e};let t=e.className||void 0,n=e.style??void 0;return t===void 0&&n===void 0?a:{className:t,style:n}}function s(...e){let t;for(let n of e)n&&(t=t===void 0?{...n}:Object.assign(t,n));return t}function c(e,t){if(e===t)return!0;if(!e||!t)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;let i=e,a=t;for(let e of n)if(!Object.is(i[e],a[e]))return!1;return!0}function l(e,t,n){let r=Object.keys(e),i=Object.keys(t);if(r.length!==i.length)return!1;for(let r of i){if(!Object.prototype.hasOwnProperty.call(e,r))return!1;let i=e[r],a=t[r];if(n.has(r)){if(!c(i,a))return!1}else if(!Object.is(i,a))return!1}return!0}function u(e){let t={};if(!e)return t;for(let n of Object.keys(e)){let r=o(e[n]);(r.className!==void 0||r.style!==void 0)&&(t[n]=r)}return t}function d(e){return JSON.stringify(e??null)}function f(e){return u(JSON.parse(e))}function p(e){return o(JSON.parse(e))}function m(t){let n=d(t);return(0,e.useMemo)(()=>f(n),[n])}function h(t){let n=d(t);return(0,e.useMemo)(()=>p(n),[n])}var g=typeof document<`u`?e.useLayoutEffect:e.useEffect;function _(r){let{useFlushSync:i=!0,...a}=r,o=(0,e.useReducer)(e=>e+1,0)[1],s={observeElementRect:n.observeElementRect,observeElementOffset:n.observeElementOffset,scrollToFn:n.elementScroll,...a,onChange:(e,n)=>{i&&n?(0,t.flushSync)(o):o(),a.onChange?.(e,n)}},[c]=(0,e.useState)(()=>new n.Virtualizer(s));return c.setOptions(s),g(()=>c._didMount(),[c]),g(()=>{c._willUpdate()}),c}var v={activateCell:e=>({type:`cell/activate`,cell:e}),startSelection:e=>({type:`selection/start`,cell:e}),updateSelection:e=>({type:`selection/update`,cell:e}),startRowSelection:e=>({type:`rowSelection/start`,row:e}),updateRowSelection:e=>({type:`rowSelection/update`,row:e}),startColumnSelection:e=>({type:`columnSelection/start`,col:e}),updateColumnSelection:e=>({type:`columnSelection/update`,col:e}),endSelection:()=>({type:`selection/end`}),clearSelection:()=>({type:`selection/clear`}),startEdit:e=>({type:`edit/start`,cell:e}),stopEdit:()=>({type:`edit/stop`}),startColumnResize:(e,t,n,r,i)=>({type:`column/resizeStart`,columnKey:e,startX:t,startWidth:n,minWidth:r,maxWidth:i}),updateColumnResize:e=>({type:`column/resizeUpdate`,clientX:e}),endColumnResize:()=>({type:`column/resizeEnd`}),syncColumnWidths:e=>({type:`columnWidths/sync`,widths:e}),resetColumnWidths:e=>({type:`columnWidths/reset`,widths:e}),setGlobalFilter:e=>({type:`filter/setGlobal`,value:e}),setColumnFilter:(e,t)=>({type:`filter/setColumn`,columnKey:e,value:t}),clearColumnFilter:e=>({type:`filter/clearColumn`,columnKey:e}),resetAllFilters:()=>({type:`filter/resetAll`}),setAllFilters:e=>({type:`filter/setAll`,filters:e}),setSort:e=>({type:`sort/set`,entries:e}),clearSort:()=>({type:`sort/clear`}),setRowSelectionState:e=>({type:`rowSelect/set`,state:e}),toggleGroupCollapsed:e=>({type:`group/toggleCollapsed`,groupKey:e}),setGroupCollapsed:(e,t)=>({type:`group/setCollapsed`,groupKey:e,collapsed:t}),setCollapsedGroupKeys:e=>({type:`group/setCollapsedKeys`,keys:e}),toggleDetailRow:e=>({type:`detail/toggle`,rowKey:e}),setDetailRowExpanded:(e,t)=>({type:`detail/setExpanded`,rowKey:e,expanded:t}),setExpandedDetailRowKeys:e=>({type:`detail/setKeys`,keys:e})},y=(e,t,n)=>Math.min(Math.max(e,t),n),b=(e,t)=>{let n=0;return e.map((e,r)=>{let i=t[e.key]??e.width,a={index:r,column:e,start:n,size:i,end:n+i};return n+=i,a})},x=e=>e.pinned===`left`?`left`:e.pinned===`right`?`right`:`center`,S=e=>{let t=[],n=[],r=[];for(let i of e){let e=x(i);e===`left`?t.push(i):e===`right`?r.push(i):n.push(i)}return[...t,...n,...r]},C=e=>{let t={left:[],center:[],right:[]};return e.forEach((e,n)=>{let r=x(e);t[r].push({column:e,logicalIndex:n})}),t},w=(e,t)=>e.map(({column:e})=>t[e.key]??e.width),T=(e,t)=>w(e,t).join(`,`),E=e=>e===``?[]:e.split(`,`).map(Number),D=(e,t,n)=>{let r=0;return{pane:e,entries:t.map(({column:e,logicalIndex:t},i)=>{let a=n[i]??e.width,o={column:e,logicalIndex:t,paneLocalStart:r,paneLocalSize:a,paneLocalEnd:r+a};return r+=a,o}),totalWidth:r}},O=(e,t,n)=>D(e,t,E(n)),k=(e,t)=>{let n=[[`left`,e.left],[`center`,e.center],[`right`,e.right]];for(let[e,r]of n){let n=r.entries.find(e=>e.logicalIndex===t);if(n)return{pane:e,entry:n}}return null},A=(e,t)=>{let{entries:n}=e;if(n.length===0)return-1;if(t<=0)return n[0].logicalIndex;let r=0,i=n.length-1;for(;r<=i;){let e=Math.floor((r+i)/2),a=n[e];if(t<a.paneLocalStart){i=e-1;continue}if(t>=a.paneLocalEnd){r=e+1;continue}return a.logicalIndex}return n[Math.max(0,Math.min(r,n.length-1))].logicalIndex},j=(e,t)=>{let{entries:n}=e;for(let e=0;e<n.length;e+=1){let r=n[e];if(t<r.paneLocalStart+r.paneLocalSize/2)return e}return n.length},M=(e,t)=>{let{entries:n,totalWidth:r}=e;return n.length===0?0:t<=0?n[0].paneLocalStart:t>=n.length?r:n[t].paneLocalStart},N=(e,t,n)=>{let r=Math.min(t,n),i=Math.max(t,n),a=1/0,o=-1/0,s=!1;for(let t of e.entries)t.logicalIndex<r||t.logicalIndex>i||(s=!0,t.paneLocalStart<a&&(a=t.paneLocalStart),t.paneLocalEnd>o&&(o=t.paneLocalEnd));return s?{start:a,end:o,width:o-a}:null},P=(e,t,n)=>({left:N(e.left,t,n),center:N(e.center,t,n),right:N(e.right,t,n)}),F=e=>{let t=e=>e.entries.length===0?null:{start:0,end:e.totalWidth,width:e.totalWidth};return{left:t(e.left),center:t(e.center),right:t(e.right)}},ee=(e,t)=>{let n=k(e,t);if(!n)return null;let{pane:r,entry:i}=n;return{pane:r,extent:{start:i.paneLocalStart,end:i.paneLocalEnd,width:i.paneLocalSize}}},te=e=>e.flex!=null&&e.flex>0&&x(e)===`center`,I=(e,t)=>{let n=new Map,r=e,i=t;for(;;){let e=r.reduce((e,t)=>e+t.flex,0);if(r.length===0||e<=0)break;let t=null;for(let a of r){let r=i*a.flex/e;if(r<a.min){n.set(a.key,a.min),i-=a.min,t=a.key;break}if(r>a.max){n.set(a.key,a.max),i-=a.max,t=a.key;break}}if(t!==null){r=r.filter(e=>e.key!==t);continue}let a=0;r.forEach((t,o)=>{if(o===r.length-1)n.set(t.key,i-a);else{let r=i*t.flex/e;n.set(t.key,r),a+=r}});break}return n},ne=(e,t,n)=>{let r=[],i=0;for(let n of e){let e=t[n.key];if(e!=null){i+=e;continue}let a=n.flex;if(a!=null&&a>0&&x(n)===`center`){r.push({key:n.key,flex:a,min:n.minWidth??50,max:n.maxWidth??1/0});continue}i+=n.width}if(r.length===0)return{};let a=n-i;return Object.fromEntries(I(r,a))},L=()=>({mode:`include`,keys:new Set}),re=(e,t)=>e.mode===`exclude`?!e.keys.has(t):e.keys.has(t),ie=(e,t)=>{let n=new Set(e.keys);return n.has(t)?n.delete(t):n.add(t),{mode:e.mode,keys:n}},ae=e=>({mode:`include`,keys:new Set([e])}),oe=e=>({mode:`include`,keys:new Set(e)}),se=()=>({mode:`exclude`,keys:new Set}),ce=()=>L(),le=(e,t)=>e.mode===`exclude`?Math.max(0,t-e.keys.size):e.keys.size,ue=(e,t)=>{let n=le(e,t);return n<=0?`none`:t>0&&n>=t?`all`:`some`},de=e=>({type:e.mode,rowKeys:Array.from(e.keys)}),fe=e=>({mode:e.type,keys:new Set(e.rowKeys)}),pe=(e,t)=>{if(e.mode!==t.mode||e.keys.size!==t.keys.size)return!1;for(let n of e.keys)if(!t.keys.has(n))return!1;return!0},me=60,he=(e,t,n)=>Math.min(Math.max(e,t),n),ge=e=>e.reduce((e,t)=>(te(t)||(e[t.key]=t.width),e),{}),_e=e=>({activeCell:null,selection:null,rowSelection:L(),editingCell:null,dragState:null,columnWidths:ge(e),filters:{globalText:``,columnFilters:{}},sort:[],collapsedGroupKeys:new Set,expandedDetailRowKeys:new Set}),ve=(e,t)=>{switch(t.type){case`cell/activate`:return{...e,activeCell:t.cell};case`selection/start`:return{...e,activeCell:t.cell,selection:{type:`cell`,range:{start:t.cell,end:t.cell}},dragState:{type:`selection`,selectionKind:`cell`,anchor:t.cell}};case`rowSelection/start`:return{...e,activeCell:{row:t.row,col:e.activeCell?.col??0},selection:{type:`row`,startRow:t.row,endRow:t.row},dragState:{type:`selection`,selectionKind:`row`,anchorRow:t.row}};case`rowSelection/update`:return e.dragState?.type!==`selection`||e.dragState.selectionKind!==`row`||e.selection?.type===`row`&&e.selection.endRow===t.row?e:{...e,selection:{type:`row`,startRow:e.dragState.anchorRow,endRow:t.row}};case`selection/update`:return e.dragState?.type!==`selection`||e.dragState.selectionKind!==`cell`||e.selection?.type===`cell`&&e.selection.range.end.row===t.cell.row&&e.selection.range.end.col===t.cell.col?e:{...e,selection:{type:`cell`,range:{start:e.dragState.anchor,end:t.cell}}};case`columnSelection/start`:return{...e,activeCell:{row:e.activeCell?.row??0,col:t.col},selection:{type:`col`,startCol:t.col,endCol:t.col},dragState:{type:`selection`,selectionKind:`col`,anchorCol:t.col}};case`columnSelection/update`:return e.dragState?.type!==`selection`||e.dragState.selectionKind!==`col`||e.selection?.type===`col`&&e.selection.endCol===t.col?e:{...e,selection:{type:`col`,startCol:e.dragState.anchorCol,endCol:t.col}};case`selection/end`:return e.dragState?.type===`selection`?{...e,dragState:null}:e;case`selection/clear`:return{...e,selection:null,dragState:null};case`edit/start`:return{...e,editingCell:t.cell,activeCell:t.cell};case`edit/stop`:return{...e,editingCell:null};case`column/resizeStart`:return{...e,dragState:{type:`columnResize`,columnKey:t.columnKey,startX:t.startX,startWidth:t.startWidth,minWidth:t.minWidth||me,maxWidth:t.maxWidth??1/0}};case`column/resizeUpdate`:{if(e.dragState?.type!==`columnResize`)return e;let n=he(e.dragState.startWidth+(t.clientX-e.dragState.startX),e.dragState.minWidth,e.dragState.maxWidth);return e.columnWidths[e.dragState.columnKey]===n?e:{...e,columnWidths:{...e.columnWidths,[e.dragState.columnKey]:n}}}case`column/resizeEnd`:return e.dragState?.type===`columnResize`?{...e,dragState:null}:e;case`columnWidths/sync`:return{...e,columnWidths:{...e.columnWidths,...t.widths}};case`columnWidths/reset`:return{...e,columnWidths:t.widths};case`filter/setGlobal`:return{...e,filters:{...e.filters,globalText:t.value}};case`filter/setColumn`:return{...e,filters:{...e.filters,columnFilters:{...e.filters.columnFilters,[t.columnKey]:t.value}}};case`filter/clearColumn`:{let n={...e.filters.columnFilters};return delete n[t.columnKey],{...e,filters:{...e.filters,columnFilters:n}}}case`filter/resetAll`:return{...e,filters:{globalText:``,columnFilters:{}}};case`filter/setAll`:return{...e,filters:t.filters};case`sort/set`:return{...e,sort:t.entries};case`sort/clear`:return{...e,sort:[]};case`rowSelect/set`:return pe(e.rowSelection,t.state)?e:{...e,rowSelection:t.state};case`group/toggleCollapsed`:{let n=new Set(e.collapsedGroupKeys);return n.has(t.groupKey)?n.delete(t.groupKey):n.add(t.groupKey),{...e,collapsedGroupKeys:n}}case`group/setCollapsed`:{if(e.collapsedGroupKeys.has(t.groupKey)===t.collapsed)return e;let n=new Set(e.collapsedGroupKeys);return t.collapsed?n.add(t.groupKey):n.delete(t.groupKey),{...e,collapsedGroupKeys:n}}case`group/setCollapsedKeys`:return t.keys===e.collapsedGroupKeys||t.keys.size===0&&e.collapsedGroupKeys.size===0?e:{...e,collapsedGroupKeys:t.keys};case`detail/toggle`:{let n=new Set(e.expandedDetailRowKeys);return n.has(t.rowKey)?n.delete(t.rowKey):n.add(t.rowKey),{...e,expandedDetailRowKeys:n}}case`detail/setExpanded`:{if(e.expandedDetailRowKeys.has(t.rowKey)===t.expanded)return e;let n=new Set(e.expandedDetailRowKeys);return t.expanded?n.add(t.rowKey):n.delete(t.rowKey),{...e,expandedDetailRowKeys:n}}case`detail/setKeys`:return t.keys===e.expandedDetailRowKeys||t.keys.size===0&&e.expandedDetailRowKeys.size===0?e:{...e,expandedDetailRowKeys:t.keys};default:return e}},ye=e=>({start:{row:Math.min(e.start.row,e.end.row),col:Math.min(e.start.col,e.end.col)},end:{row:Math.max(e.start.row,e.end.row),col:Math.max(e.start.col,e.end.col)}}),be=(e,t)=>({startRow:Math.min(e,t),endRow:Math.max(e,t)}),xe=(e,t)=>({startCol:Math.min(e,t),endCol:Math.max(e,t)}),Se=e=>e.filters.globalText,Ce=e=>{if(!e)return{kind:`none`};if(e.type===`cell`){let t=ye(e.range);return{kind:`cell`,startRow:t.start.row,endRow:t.end.row,startCol:t.start.col,endCol:t.end.col}}if(e.type===`row`){let t=be(e.startRow,e.endRow);return{kind:`row`,startRow:t.startRow,endRow:t.endRow}}let t=xe(e.startCol,e.endCol);return{kind:`col`,startCol:t.startCol,endCol:t.endCol}};function we({rect:e,headerHeight:t,leadingWidth:n,baseOffset:a=0,slot:o}){if(!e)return null;let s={position:`absolute`,left:n+e.left,top:t+e.top-a,width:e.width,height:e.height};return(0,r.jsx)(`div`,{className:i(`ssg-selection-overlay`,o?.className),style:{...o?.style,...s}})}function Te({rect:e,headerHeight:t,leadingWidth:n,baseOffset:a=0,slot:o}){if(!e)return null;let s={position:`absolute`,left:n+e.left,top:t+e.top-a,width:e.width,height:e.height};return(0,r.jsx)(`div`,{className:i(`ssg-active-cell-overlay`,o?.className),style:{...o?.style,...s}})}var Ee=e=>{let t=e??`down`;return t===`none`?void 0:t},De=({value:e,onCommit:t,onCancel:n,onRejected:r,enterMove:i})=>a=>{if(a.nativeEvent.isComposing)return;let o=n=>{let i=t(e,n);i&&i.status===`rejected`&&r?.(i.message)};if(a.key===`Enter`){a.preventDefault(),o(Ee(i));return}if(a.key===`Escape`){a.preventDefault(),n();return}a.key===`Tab`&&(a.preventDefault(),o(a.shiftKey?`left`:`right`))};function Oe({message:t}){let[n,a]=(0,e.useState)(!1);return(0,r.jsx)(`div`,{ref:(0,e.useCallback)(e=>{e&&a(e.getBoundingClientRect().bottom>window.innerHeight-4)},[]),role:`alert`,className:i(`ssg-cell-editor-error`,n&&`ssg-cell-editor-error--above`),children:t})}function ke({initialValue:t,onCommit:n,onCancel:a,align:o,enterMove:s}){let c=(0,e.useRef)(null),[l,u]=(0,e.useState)(t),[d,f]=(0,e.useState)(null);return(0,e.useEffect)(()=>{let e=c.current;if(!e)return;e.focus();let t=e.value.length;e.setSelectionRange(t,t)},[]),(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:c,type:`text`,value:l,onChange:e=>{u(e.target.value),f(null)},onKeyDown:De({value:l,onCommit:n,onCancel:a,onRejected:f,enterMove:s}),onBlur:()=>{let e=n(l);e&&e.status===`rejected`&&a()},className:i(`ssg-cell-editor-input`,d!==null&&`ssg-cell-editor-input--invalid`),style:o?{textAlign:o}:void 0}),d===null?null:(0,r.jsx)(Oe,{message:d})]})}function Ae({initialValue:t,min:n,max:a,step:o,onCommit:s,onCancel:c,align:l,enterMove:u}){let d=(0,e.useRef)(null),[f,p]=(0,e.useState)(t),[m,h]=(0,e.useState)(null);return(0,e.useEffect)(()=>{d.current?.focus()},[]),(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:d,type:`number`,value:f,min:n,max:a,step:o,onChange:e=>{p(e.target.value),h(null)},onKeyDown:De({value:f,onCommit:s,onCancel:c,onRejected:h,enterMove:u}),onBlur:()=>{let e=s(f);e&&e.status===`rejected`&&c()},className:i(`ssg-cell-editor-input`,m!==null&&`ssg-cell-editor-input--invalid`),style:l?{textAlign:l}:void 0}),m===null?null:(0,r.jsx)(Oe,{message:m})]})}var je=8,Me=8,Ne=2,Pe=(e,t)=>{let n=String(t??``),r=e.findIndex(e=>e.value===n);return r>=0?r:0},Fe=(e,t,n)=>{if(n<=0)return 0;let r=e+t;return r<0?0:r>n-1?n-1:r},Ie=()=>({buffer:``,lastInputTime:0}),Le=(e,t,n,r)=>{let i=(n-e.lastInputTime>700?``:e.buffer)+t.toLocaleLowerCase(),a=r.findIndex(e=>e.label.toLocaleLowerCase().startsWith(i));return{state:{buffer:i,lastInputTime:n},index:a>=0?a:null}},Re=(e,t,n,r)=>{let i=Math.max(e.width,180),a=Math.max(Me,n-i-Me),o=Math.min(Math.max(e.left,Me),a),s=Math.min(Math.max(t,1),je)*28+8,c=e.bottom+Ne;return{left:o,top:c+s<=r-Me?c:Math.max(Me,e.top-Ne-s),width:i,maxHeight:s}};function ze({options:n,value:a,onCommit:o,onCancel:s,align:c,themeClassName:l,popoverSlot:u,enterMove:d}){let f=(0,e.useRef)(null),p=(0,e.useRef)(null),m=(0,e.useRef)(Ie()),[h,g]=(0,e.useState)(()=>Pe(n,a)),[_,v]=(0,e.useState)(null),[y,b]=(0,e.useState)(null),x=(0,e.useCallback)(e=>{f.current=e,e&&(e.focus(),v(Re(e.getBoundingClientRect(),n.length,window.innerWidth,window.innerHeight)))},[n.length]);(0,e.useEffect)(()=>{let e=()=>{let e=f.current;e&&v(Re(e.getBoundingClientRect(),n.length,window.innerWidth,window.innerHeight))};return window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0)}},[n.length]),(0,e.useEffect)(()=>{let e=p.current;e&&e.children[h]?.scrollIntoView?.({block:`nearest`})},[h]);let S=(e,t)=>{let n=o(e,t);n&&n.status===`rejected`&&b(n.message)},C=e=>{let t=n[h];if(!t){s();return}S(t.value,e)},w=e=>{if(!e.nativeEvent.isComposing){if(e.key===`ArrowDown`||e.key===`ArrowUp`){e.preventDefault();let t=e.key===`ArrowDown`?1:-1;g(e=>Fe(e,t,n.length)),b(null);return}if(e.key===`Enter`){e.preventDefault(),C(Ee(d));return}if(e.key===`Escape`){e.preventDefault(),s();return}if(e.key===`Tab`){e.preventDefault(),C(e.shiftKey?`left`:`right`);return}if(e.key.length===1&&!e.ctrlKey&&!e.metaKey&&!e.altKey){e.preventDefault();let t=Le(m.current,e.key,Date.now(),n);m.current=t.state,t.index!==null&&(g(t.index),b(null))}}},T=n[h];return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:x,type:`text`,readOnly:!0,value:T?.label??String(a??``),onKeyDown:w,onBlur:()=>s(),className:i(`ssg-cell-editor-input ssg-cell-editor-input--select`,y!==null&&`ssg-cell-editor-input--invalid`),style:c?{textAlign:c}:void 0}),y===null?null:(0,r.jsx)(Oe,{message:y}),_?(0,t.createPortal)((0,r.jsx)(`div`,{ref:p,role:`listbox`,className:i(`ssg-select-editor-popover`,l,u?.className),style:{...u?.style,left:_.left,top:_.top,width:_.width,maxHeight:_.maxHeight},onPointerDown:e=>e.preventDefault(),children:n.length===0?(0,r.jsx)(`div`,{className:`ssg-select-editor-empty`,children:`候補がありません`}):n.map((e,t)=>(0,r.jsx)(`div`,{role:`option`,"aria-selected":t===h,className:i(`ssg-select-editor-option`,t===h&&`ssg-select-editor-option--highlighted`),onClick:()=>S(e.value),onPointerEnter:()=>g(t),children:e.label},`${e.value}-${t}`))}),document.body):null]})}function Be({initialValue:t,onCommit:n,onCancel:a,align:o,enterMove:s}){let c=(0,e.useRef)(null),[l,u]=(0,e.useState)(t),[d,f]=(0,e.useState)(null);return(0,e.useEffect)(()=>{c.current?.focus()},[]),(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:c,type:`date`,value:l,onChange:e=>{u(e.target.value),f(null)},onKeyDown:De({value:l,onCommit:n,onCancel:a,onRejected:f,enterMove:s}),onBlur:()=>{let e=n(l);e&&e.status===`rejected`&&a()},className:i(`ssg-cell-editor-input`,d!==null&&`ssg-cell-editor-input--invalid`),style:o?{textAlign:o}:void 0}),d===null?null:(0,r.jsx)(Oe,{message:d})]})}function Ve({render:e,context:t}){return(0,r.jsx)(r.Fragment,{children:e(t)})}var He=(e,t,n,r,i)=>e.readOnly||i.readOnly||i.editable===!1?!1:e.canEditCell?e.canEditCell(t,n,r,i):!0,R=(e,t)=>t.getValue?t.getValue(e):e[t.key],Ue=(e,t,n)=>t.setValue?t.setValue(e,n):{...e,[t.key]:n},We=e=>({checkedValue:e.checkedValue??!0,uncheckedValue:e.uncheckedValue??!1}),Ge=(e,t)=>Object.is(e,We(t).checkedValue),Ke=(e,t)=>{let{checkedValue:n,uncheckedValue:r}=We(t);return Object.is(e,n)?r:n},qe=(e,t)=>{let{checkedValue:n,uncheckedValue:r}=We(t);if(e===``)return r;if(e===String(n))return n;if(e===String(r))return r;let i=e.toLowerCase();return i===`true`||i===`1`?n:r},Je=e=>{if(e===``)return null;let t=Number(e);return Number.isFinite(t)?t:e},Ye=e=>`${String(e.getFullYear()).padStart(4,`0`)}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`,Xe=e=>{if(e instanceof Date)return Number.isNaN(e.getTime())?``:Ye(e);if(typeof e==`string`&&e.trim()!==``){let t=/^(\d{4}-\d{2}-\d{2})/.exec(e);if(t)return t[1];let n=new Date(e);if(!Number.isNaN(n.getTime()))return Ye(n)}return``},Ze=e=>{if(e===``)return null;let t=Xe(e);return t===``?e:t},Qe=e=>{if(e.parseClipboardValue)return e.parseClipboardValue;if(e.editor?.type===`number`)return Je;if(e.editor?.type===`date`)return Ze;if(e.editor?.type===`checkbox`){let t=e.editor;return e=>qe(e,t)}return e=>e},$e=(e,t,n)=>typeof t==`string`?Qe(e)(t,n):t,et=(e,t,n,r)=>e.map((e,i)=>i===t?Ue(e,n,r):e);function tt({rect:t,headerHeight:n,leadingWidth:a,baseOffset:o=0,initialValue:s,editor:c,editorSession:l,themeClassName:u,slots:d,onCommit:f,onCancel:p,align:m,enterMove:h}){let g=t!==null,[_,v]=(0,e.useState)(!1),[y,b]=(0,e.useState)(0);if(g!==_&&(v(g),g&&b(y+1)),!t)return null;let x={position:`absolute`,left:a+t.left,top:n+t.top-o,width:t.width,height:t.height},S;if(c?.type===`number`)S=(0,r.jsx)(Ae,{enterMove:h,initialValue:s,min:c.min,max:c.max,step:c.step,onCommit:f,onCancel:p,align:m},y);else if(c?.type===`date`)S=(0,r.jsx)(Be,{enterMove:h,initialValue:Xe(l?l.value:s),onCommit:f,onCancel:p,align:m},y);else if(c?.type===`custom`)S=l?(0,r.jsx)(Ve,{render:c.render,context:{row:l.row,rowIndex:l.rowIndex,sourceRowIndex:l.sourceRowIndex,rowKey:l.rowKey,colIndex:l.colIndex,column:l.column,value:l.value,initialText:s,align:m,commit:(e,t)=>f(e,t)??{status:`noop`},cancel:p}},y):null;else if(c?.type===`select`){let e=typeof c.options==`function`?l?c.options(l.row):[]:c.options;S=(0,r.jsx)(ze,{popoverSlot:d?.popover,enterMove:h,options:e,value:l?.value,onCommit:f,onCancel:p,align:m,themeClassName:u},y)}else S=(0,r.jsx)(ke,{enterMove:h,initialValue:s,onCommit:f,onCancel:p,align:m},y);return(0,r.jsx)(`div`,{className:i(`ssg-cell-editor`,d?.cellEditor?.className),style:{...d?.cellEditor?.style,...x},children:S})}var nt=[{value:`today`,label:`今日`},{value:`thisMonth`,label:`今月`},{value:`last30days`,label:`過去 30 日`}],rt=e=>nt.some(t=>t.value===e),it=e=>nt.find(t=>t.value===e)?.label??e,at=e=>e===!1?[]:e===void 0?nt.map(({value:e,label:t})=>({id:e,label:t})):e.map(e=>typeof e==`string`?{id:e,label:it(e)}:{id:e.id,label:e.label,resolve:e.resolve}),ot=(e,t)=>{let n=t?.find(t=>t.id===e)?.label;return n===void 0?rt(e)?it(e):e:n},st=e=>{let t=new Int32Array(e);for(let n=0;n<e;n+=1)t[n]=n;return t},ct=e=>e?.kind===`set`,lt=e=>e?.kind===`numberSet`,ut=e=>e?.kind===`textSet`,dt=e=>e?.kind===`dateSet`,ft=e=>e==null||String(e).trim()===``,pt=e=>{if(!e)return!1;switch(e.kind){case`set`:case`number`:case`custom`:return!0;case`numberSet`:case`textSet`:case`dateSet`:return e.condition!==null||e.set!==null;case`select`:return e.value.length>0;case`text`:case`date`:return e.value.trim().length>0}},mt=e=>e==null||typeof e==`string`&&e.trim()===``?NaN:Number(e),ht=(e,t)=>{if(e.mode===`blank`||e.mode===`notBlank`)return ft(t)===(e.mode===`blank`);let n=mt(t);if(!Number.isFinite(n))return!1;if(e.mode===`range`)return n>=e.min&&n<=e.max;switch(e.operator){case`>`:return n>e.value;case`>=`:return n>=e.value;case`<`:return n<e.value;case`<=`:return n<=e.value;case`!=`:return n!==e.value;default:return n===e.value}},gt=(e,t)=>{if(e.mode===`blank`||e.mode===`notBlank`)return ft(t)===(e.mode===`blank`);let n=String(t??``).toLowerCase(),r=e.value.toLowerCase();switch(e.mode){case`equals`:return n===r;case`startsWith`:return n.startsWith(r);case`endsWith`:return n.endsWith(r);default:return n.includes(r)}},_t=e=>String(e).padStart(2,`0`),vt=e=>`${e.getFullYear()}-${_t(e.getMonth()+1)}-${_t(e.getDate())}`,yt=e=>{if(e==null)return null;if(e instanceof Date)return Number.isNaN(e.getTime())?null:vt(e);let t=String(e).trim();if(!t)return null;let n=t.match(/^(\d{4})[-/](\d{1,2})[-/](\d{1,2})(?:[T ].*)?$/);if(!n)return null;let r=Number(n[2]),i=Number(n[3]);return r<1||r>12||i<1||i>31?null:`${n[1]}-${_t(r)}-${_t(i)}`},bt=e=>{let t=yt(e);return t===null?ft(e)?``:String(e):t},xt=(e,t)=>{let n=vt(t);switch(e){case`today`:return{from:n,to:n};case`thisMonth`:{let e=new Date(t.getFullYear(),t.getMonth(),1),n=new Date(t.getFullYear(),t.getMonth()+1,0);return{from:vt(e),to:vt(n)}}default:return{from:vt(new Date(t.getFullYear(),t.getMonth(),t.getDate()-29)),to:n}}},St=e=>e===void 0?null:yt(e),Ct=(e,t,n)=>{if(e.mode!==`preset`)return e;let r=n?.find(t=>t.id===e.preset);if(r?.resolve){let e=r.resolve(t),n=St(e.from),i=St(e.to);return n!==null&&i!==null?n<=i?{mode:`range`,from:n,to:i}:{mode:`range`,from:i,to:n}:n===null?i===null?null:{mode:`onOrBefore`,value:i}:{mode:`onOrAfter`,value:n}}return rt(e.preset)?{mode:`range`,...xt(e.preset,t)}:null},wt=(e,t,n,r)=>{let i=Ct(e,n,r);if(i===null)return!0;if(i.mode===`blank`||i.mode===`notBlank`)return ft(t)===(i.mode===`blank`);let a=yt(t);if(a===null)return!1;switch(i.mode){case`range`:return a>=i.from&&a<=i.to;case`onOrAfter`:return a>=i.value;case`onOrBefore`:return a<=i.value;case`notEquals`:return a!==i.value;default:return a===i.value}},Tt=e=>{let t=e?.kind===`number`?e.parsed:e?.kind===`numberSet`?e.condition:null;return t?.mode===`comparison`||t?.mode===`range`},Et=e=>e?.kind===`number`,Dt=e=>{if(!e)return``;switch(e.kind){case`number`:return e.raw;case`text`:case`date`:case`select`:return e.value;case`set`:case`numberSet`:case`textSet`:case`dateSet`:case`custom`:return``}},Ot=(e,t,n)=>{if(e.mode===`blank`||e.mode===`notBlank`){let n=e.mode===`blank`;return e=>ft(R(e,t))===n}if(e.mode===`range`){let{min:r,max:i}=e;return(e,a)=>{let o=n?n[a]:mt(R(e,t));return Number.isFinite(o)&&o>=r&&o<=i}}let{operator:r,value:i}=e;return(e,a)=>{let o=n?n[a]:mt(R(e,t));if(!Number.isFinite(o))return!1;switch(r){case`>`:return o>i;case`>=`:return o>=i;case`<`:return o<i;case`<=`:return o<=i;case`!=`:return o!==i;default:return o===i}}},kt=(e,t)=>{if(e.mode===`blank`||e.mode===`notBlank`){let n=e.mode===`blank`;return e=>ft(R(e,t))===n}let n=e.value.toLowerCase(),r=e.mode;return e=>{let i=String(R(e,t)??``).toLowerCase();switch(r){case`equals`:return i===n;case`startsWith`:return i.startsWith(n);case`endsWith`:return i.endsWith(n);default:return i.includes(n)}}},At=(e,t,n)=>{let r=new Set(t);return e===`exclude`?e=>!r.has(String(R(e,n)??``)):e=>r.has(String(R(e,n)??``))},jt=(e,t,n)=>{let r=new Set(t);return e===`exclude`?e=>!r.has(bt(R(e,n))):e=>r.has(bt(R(e,n)))},Mt=(e,t,n)=>{let r=Ct(e,n,at(t.dateFilterPresets));if(r===null)return()=>!0;if(r.mode===`blank`||r.mode===`notBlank`){let e=r.mode===`blank`;return n=>ft(R(n,t))===e}if(r.mode===`range`){let{from:e,to:n}=r;return r=>{let i=yt(R(r,t));return i!==null&&i>=e&&i<=n}}let{mode:i,value:a}=r;return e=>{let n=yt(R(e,t));if(n===null)return!1;switch(i){case`onOrAfter`:return n>=a;case`onOrBefore`:return n<=a;case`notEquals`:return n!==a;default:return n===a}}},Nt=(e,t,n,r)=>{if(!pt(t))return null;let i=t;if(e.filterFn){let t=e.filterFn;return e=>t(e,i)}switch(i.kind){case`set`:return At(i.mode,i.values,e);case`number`:{let t=i.parsed;if(t===null){let t=i.raw.toLowerCase();return n=>String(R(n,e)??``).toLowerCase().includes(t)}return Ot(t,e,n)}case`numberSet`:case`textSet`:case`dateSet`:{let t=i.kind===`numberSet`?i.condition?Ot(i.condition,e,n):null:i.kind===`textSet`?i.condition?kt(i.condition,e):null:i.condition?Mt(i.condition,e,r??new Date):null,a=i.set?i.kind===`dateSet`?jt(i.set.mode,i.set.values,e):At(i.set.mode,i.set.values,e):null;return t&&a?(e,n)=>t(e,n)&&a(e,n):t??a}case`select`:{let t=i.value;return n=>String(R(n,e)??``)===t}case`text`:case`date`:{let t=i.value.trim().toLowerCase();return n=>String(R(n,e)??``).toLowerCase().includes(t)}case`custom`:{let t=String(i.value??``).trim().toLowerCase();return n=>String(R(n,e)??``).toLowerCase().includes(t)}}},Pt=(e,t,n)=>{let r=t.length;for(let i=0;i<r;i+=1){let r=R(e,t[i]);if(String(r??``).toLowerCase().includes(n))return!0}return!1},Ft=(e,t,n,r)=>{let i=r.trim().toLowerCase();if(!i)return t;let a=t.length,o=new Int32Array(a),s=0;for(let r=0;r<a;r+=1){let a=t[r];Pt(e[a],n,i)&&(o[s]=a,s+=1)}return s===a?t:o.slice(0,s)},It=(e,t,n,r,i,a)=>{let o=[],s=a??new Date;for(let e of n){let t=Nt(e,r[e.key],i?.get(e.key),s);t&&o.push(t)}if(o.length===0)return t;let c=t.length,l=o.length,u=new Int32Array(c),d=0;for(let n=0;n<c;n+=1){let r=t[n],i=e[r],a=!0;for(let e=0;e<l;e+=1)if(!o[e](i,r)){a=!1;break}a&&(u[d]=r,d+=1)}return d===c?t:u.slice(0,d)},Lt={operator:`gte`,value1:``,value2:``},Rt=[{value:`gte`,label:`以上`},{value:`gt`,label:`より大きい`},{value:`lte`,label:`以下`},{value:`lt`,label:`未満`},{value:`eq`,label:`に等しい`},{value:`ne`,label:`に等しくない`},{value:`between`,label:`範囲`},{value:`blank`,label:`空白`},{value:`notBlank`,label:`空白でない`}],zt=e=>e===`blank`||e===`notBlank`?0:e===`between`?2:1,Bt=e=>{let t=e.trim();if(!t)return null;let n=Number(t);return Number.isFinite(n)?n:null},Vt={gte:`>=`,gt:`>`,lte:`<=`,lt:`<`,eq:`=`,ne:`!=`},Ht=e=>{if(e.operator===`blank`||e.operator===`notBlank`)return{mode:e.operator};if(e.operator===`between`){let t=Bt(e.value1),n=Bt(e.value2);return t!==null&&n!==null?{mode:`range`,min:Math.min(t,n),max:Math.max(t,n)}:t===null?n===null?null:{mode:`comparison`,operator:`<=`,value:n}:{mode:`comparison`,operator:`>=`,value:t}}let t=Bt(e.value1);return t===null?null:{mode:`comparison`,operator:Vt[e.operator],value:t}},z=e=>{switch(e.mode){case`comparison`:switch(e.operator){case`>=`:return`${e.value} 以上`;case`>`:return`${e.value} より大きい`;case`<=`:return`${e.value} 以下`;case`<`:return`${e.value} 未満`;case`!=`:return`${e.value} に等しくない`;default:return`${e.value} に等しい`}case`range`:return`${e.min} 〜 ${e.max}`;case`blank`:return`(空白)`;case`notBlank`:return`(空白でない)`}},Ut=e=>{let t=Ht(e);return t===null?null:{kind:`number`,raw:z(t),parsed:t}},B=(e,t)=>t?e.filter(e=>ht(t,e.value)):e,Wt={">=":`gte`,">":`gt`,"<=":`lte`,"<":`lt`,"=":`eq`,"!=":`ne`},V=e=>{if(!e)return Lt;switch(e.mode){case`comparison`:return{operator:Wt[e.operator],value1:String(e.value),value2:``};case`range`:return{operator:`between`,value1:String(e.min),value2:String(e.max)};case`blank`:case`notBlank`:return{operator:e.mode,value1:``,value2:``}}},Gt=e=>V(e?.parsed),Kt={operator:`contains`,value:``},qt=[{value:`contains`,label:`を含む`},{value:`equals`,label:`に等しい`},{value:`startsWith`,label:`で始まる`},{value:`endsWith`,label:`で終わる`},{value:`blank`,label:`空白`},{value:`notBlank`,label:`空白でない`}],Jt=e=>e===`blank`||e===`notBlank`?0:1,Yt=e=>{if(e.operator===`blank`||e.operator===`notBlank`)return{mode:e.operator};let t=e.value.trim();return t?{mode:e.operator,value:t}:null},Xt=e=>{switch(e.mode){case`contains`:return`"${e.value}" を含む`;case`equals`:return`"${e.value}" に等しい`;case`startsWith`:return`"${e.value}" で始まる`;case`endsWith`:return`"${e.value}" で終わる`;case`blank`:return`(空白)`;case`notBlank`:return`(空白でない)`}},Zt=e=>e?e.mode===`blank`||e.mode===`notBlank`?{operator:e.mode,value:``}:{operator:e.mode,value:e.value}:Kt,Qt=(e,t)=>t?e.filter(e=>gt(t,e.value)):e,$t={operator:`range`,value1:``,value2:``,preset:null},en=[{value:`range`,label:`範囲`},{value:`onOrAfter`,label:`以降`},{value:`onOrBefore`,label:`以前`},{value:`equals`,label:`に等しい`},{value:`notEquals`,label:`に等しくない`},{value:`blank`,label:`空白`},{value:`notBlank`,label:`空白でない`}],tn=e=>e===`blank`||e===`notBlank`?0:e===`range`?2:1,nn=e=>{let t=e.trim();return/^\d{4}-\d{2}-\d{2}$/.test(t)?t:null},rn=e=>e===null||e instanceof Date?e===null?``:yt(e)??``:e.trim()===``?``:yt(e)??``,an=e=>{if(e.preset!==null)return{mode:`preset`,preset:e.preset};if(e.operator===`blank`||e.operator===`notBlank`)return{mode:e.operator};if(e.operator===`range`){let t=nn(e.value1),n=nn(e.value2);return t!==null&&n!==null?t<=n?{mode:`range`,from:t,to:n}:{mode:`range`,from:n,to:t}:t===null?n===null?null:{mode:`onOrBefore`,value:n}:{mode:`onOrAfter`,value:t}}let t=nn(e.value1);return t===null?null:{mode:e.operator,value:t}},on=(e,t)=>{switch(e.mode){case`range`:return`${e.from} 〜 ${e.to}`;case`onOrAfter`:return`${e.value} 以降`;case`onOrBefore`:return`${e.value} 以前`;case`equals`:return`${e.value} に等しい`;case`notEquals`:return`${e.value} に等しくない`;case`blank`:return`(空白)`;case`notBlank`:return`(空白でない)`;case`preset`:return ot(e.preset,t)}},sn=e=>{if(!e)return $t;switch(e.mode){case`preset`:return{...$t,preset:e.preset};case`range`:return{operator:`range`,value1:e.from,value2:e.to,preset:null};case`blank`:case`notBlank`:return{operator:e.mode,value1:``,value2:``,preset:null};default:return{operator:e.mode,value1:e.value,value2:``,preset:null}}},cn=(e,t,n,r)=>t?e.filter(e=>wt(t,e.value,n,r)):e,ln=({anchorTop:e,anchorBottom:t,anchorRight:n,viewportWidth:r,viewportHeight:i,popupWidth:a,popupHeight:o,offsetY:s,viewportMargin:c})=>{let l=Math.max(0,i-c*2),u=Math.min(o,l),d=n-a;d=Math.max(c,d),d=Math.min(d,r-a-c);let f=t+s;return f+u>i-c&&(f=e-u-s),f=Math.min(f,i-c-u),f=Math.max(c,f),{top:f,left:d,maxHeight:l}},un=(e,t)=>!(!e||t?.contains(e)||(e instanceof Element?e:e.parentElement)?.closest(`[data-ssg-filter-keep-open]`)),dn=[`sum`,`min`,`max`,`avg`,`count`],fn=e=>typeof e==`string`&&dn.includes(e),pn=()=>({count:0,numericCount:0,sum:0,min:1/0,max:-1/0}),mn=(e,t)=>{if(e.count+=1,t==null||t===``)return;let n=Number(t);Number.isFinite(n)&&(e.numericCount+=1,e.sum+=n,n<e.min&&(e.min=n),n>e.max&&(e.max=n))},hn=(e,t)=>{switch(e){case`count`:return t.count;case`sum`:return t.numericCount>0?t.sum:void 0;case`avg`:return t.numericCount>0?t.sum/t.numericCount:void 0;case`min`:return t.numericCount>0?t.min:void 0;case`max`:return t.numericCount>0?t.max:void 0}},gn=`(空白)`,_n=`__ssg-group__:`,vn=`__ssg_group__`,yn=e=>_n+e.groupKey,bn=e=>e<0,xn=e=>-e-1,Sn=e=>{if(e==null||e===``)return`e`;let t=typeof e;return`${t===`number`?`n`:t===`boolean`?`b`:t===`string`?`s`:`o`}:${String(e)}`},Cn=e=>({groupColumns:e.filter(e=>e.rowGroup===!0),aggColumns:e.filter(e=>e.aggFunc!=null)}),wn=(e,t,n,r)=>{let i=n.length,a=r.length,o=r.map(e=>typeof e.aggFunc==`function`),s=o.includes(!0),c=[],l=new Map,u=0,d=(e,t,n,i,a)=>{let s=`${t.key}\u0001${n}`,c=n===`e`;return u+=1,{groupRow:{kind:`group`,groupKey:e===null?s:`${e}\u0000${s}`,columnKey:t.key,value:c?null:i,label:c?gn:String(i),level:a,leafCount:0,aggregates:{}},children:[],childIndex:new Map,leafSourceIndexes:[],accumulators:r.map(()=>pn()),customValues:o.map(e=>e?[]:null),customRows:[]}},f=t.length;for(let o=0;o<f;o+=1){let u=t[o],f=e[u],p=null;if(a>0){p=Array(a);for(let e=0;e<a;e+=1)p[e]=R(f,r[e])}let m=c,h=l,g=null;for(let e=0;e<i;e+=1){let t=n[e],r=R(f,t),o=Sn(r),c=h.get(o);if(c||(c=d(g,t,o,r,e),m.push(c),h.set(o,c)),c.groupRow.leafCount+=1,p!==null){for(let e=0;e<a;e+=1){mn(c.accumulators[e],p[e]);let t=c.customValues[e];t!==null&&t.push(p[e])}s&&c.customRows.push(f)}e===i-1&&c.leafSourceIndexes.push(u),m=c.children,h=c.childIndex,g=c.groupRow.groupKey}}let p=e=>{for(let t=0;t<a;t+=1){let n=r[t];o[t]?e.groupRow.aggregates[n.key]=n.aggFunc({values:e.customValues[t]??[],rows:e.customRows,column:n}):fn(n.aggFunc)&&(e.groupRow.aggregates[n.key]=hn(n.aggFunc,e.accumulators[t]))}for(let t of e.children)p(t)};for(let e of c)p(e);return{roots:c,groupCount:u}},Tn=(e,t)=>{let n=[],r=[],i=e=>{if(r.push(e.groupRow),n.push(-r.length),!t.has(e.groupRow.groupKey)){if(e.children.length>0){for(let t of e.children)i(t);return}for(let t of e.leafSourceIndexes)n.push(t)}};for(let t of e.roots)i(t);return{displayOrder:Int32Array.from(n),groups:r}},En=e=>{let t=[],n=e=>{t.push(e.groupRow);for(let t of e.children)n(t)};for(let t of e.roots)n(t);return t},Dn=e=>En(e).map(e=>e.groupKey),On=`__ssg_row_drag_handle__`,kn=(e,t,n)=>{let r=e.length;if(!Number.isInteger(t)||!Number.isInteger(n)||t<0||t>=r||n<0||n>=r||t===n)return e;let i=e.slice(),[a]=i.splice(t,1);return i.splice(n,0,a),i},An=(e,t)=>t===e||t===e+1?null:t>e?t-1:t,jn=(e,t)=>{let{rowCount:n}=t;if(n<=0||e<=0)return 0;if(e>=t.totalBodyHeight)return n;let r=t.rowAtContentY(e);return e-t.rowTop(r)<t.cellHeight(r)/2?r:r+1},Mn=(e,t)=>{let{rowCount:n}=t;return n<=0||e<=0?0:e>=n?t.totalBodyHeight:t.rowTop(e)},Nn=(e,t)=>{if(e.length!==t)return!1;for(let n=0;n<t;n+=1)if(e[n]!==n)return!1;return!0},Pn=({enableRowDrag:e,isServerSide:t,rowGroupingActive:n,hasRowsChange:r})=>e&&!t&&!n&&r,Fn=(e,t)=>e&&t,In=`ソート / フィルター適用中は行を並び替えできません`,Ln=`ドラッグで行を移動`,Rn=`__ssg_detail_toggle__`,zn=e=>e===`__ssg_group__`||e===`__ssg_detail_toggle__`||e===`__ssg_row_drag_handle__`,Bn=e=>e!=null&&typeof e.closest==`function`&&e.closest(`[data-ssg-detail]`)!==null,Vn=()=>typeof document<`u`&&Bn(document.activeElement),Hn=(e,t)=>{if(typeof t.closest!=`function`)return!1;let n=t.closest(`[data-ssg-detail]`);return n!==null&&n!==e&&e.contains(n)},Un=()=>({indexByKey:new Map,unresolvedFor:null,unresolved:new Set}),Wn=(e,t,n,r)=>{let i=e.getRowCount(),a=n.indexByKey.get(t);if(a!==void 0&&a>=0&&a<i&&e.getRowKey(a)===t)return a;if(!r)return-1;for(let r=0;r<i;r+=1)if(e.getRowKey(r)===t)return n.indexByKey.set(t,r),r;return-1},Gn=({expandedKeys:e,rowModel:t,height:n,isExpandable:r,cache:i,allowScan:a})=>{if(e.size===0||n<=0)return[];let o=t.getRowCount(),s=new Map,c=null;for(let n of e){let e=i.indexByKey.get(n);if(e!==void 0&&e>=0&&e<o&&t.getRowKey(e)===n){s.set(n,e);continue}i.unresolvedFor===t&&i.unresolved.has(n)||(c??=new Set).add(n)}if(c&&c.size>0){if(a)for(let e=0;e<o&&c.size>0;e+=1){let n=t.getRowKey(e);c.has(n)&&(i.indexByKey.set(n,e),s.set(n,e),c.delete(n))}if(c.size>0){i.unresolvedFor!==t&&(i.unresolvedFor=t,i.unresolved.clear());for(let e of c)i.unresolved.add(e)}}let l=[];for(let[e,i]of s){let a=t.getRow(i);a!==void 0&&(r&&!r(a,{rowKey:e,sourceRowIndex:t.getSourceIndex(i)})||l.push({index:i,height:n}))}return l.sort((e,t)=>e.index-t.index),l},Kn=(e,t,n)=>{e.indexByKey.set(t,n),e.unresolved.delete(t)},qn=(e,t,n,r)=>{let i=[],a=e;for(let o of r){if(o.index<e)continue;if(o.index>t)break;let r=n.rowTop(a),s=n.rowTop(o.index)+n.cellHeight(o.index);i.push({top:r,height:s-r}),a=o.index+1}return a<=t&&i.push({top:n.rowTop(a),height:n.rowsHeight(a,t)}),i},Jn=240,Yn=8,H=8,U=230,Xn=340,W=480,Zn=({visibleColumns:t,columnFilterValues:n,enableColumnFilter:r,gridRootRef:i,resolveColumnFilterType:a})=>{let[o,s]=(0,e.useState)(null),[c,l]=(0,e.useState)(null),u=(0,e.useRef)(null),d=(0,e.useRef)(null),f=(0,e.useRef)(null),p=(0,e.useRef)(null),m=(0,e.useRef)(null),h=o!==null,g=o?.columnKey??null,_=o?.filterType??null,v=(0,e.useMemo)(()=>{if(!g)return null;let e=t.find(e=>e.key===g)??null;return!e||!_||e.filterType===_?e:{...e,filterType:_}},[g,t,_]),y=(0,e.useCallback)(()=>{if(!g||!d.current){l(null);return}let e=d.current.getBoundingClientRect(),t=v?.filterType===`numberSet`||v?.filterType===`textSet`||v?.filterType===`dateSet`?W:v?.filterType===`set`?Xn:U,{top:n,left:r,maxHeight:i}=ln({anchorTop:e.top,anchorBottom:e.bottom,anchorRight:e.right,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,popupWidth:Jn,popupHeight:m.current??t,offsetY:H,viewportMargin:Yn});l(e=>e&&e.top===n&&e.left===r&&e.width===Jn&&e.maxHeight===i?e:{top:n,left:r,width:Jn,maxHeight:i})},[g,v]),b=(0,e.useCallback)(e=>{if(!r)return;document.activeElement instanceof HTMLElement&&document.activeElement.blur(),i.current?.blur();let t=i.current,o=t?.querySelectorAll(`[data-ssg-col-key]`),c=t&&o?Array.from(o).find(n=>n.dataset.ssgColKey===e.key&&!Hn(t,n))??null:null;d.current=c;let l=e.filterType===`auto`&&a?a(e):e.filterType??`text`,u=n[e.key],f=l===`number`?Gt(Et(u)?u:void 0):l===`numberSet`?V(lt(u)?u.condition:void 0):null,p=l===`textSet`?Zt(ut(u)?u.condition:void 0):null,m=l===`dateSet`?sn(dt(u)?u.condition:void 0):null;s({columnKey:e.key,filterType:l,draftValue:Dt(u),numberDraft:f,textDraft:p,dateDraft:m})},[n,r,i,a]),x=(0,e.useCallback)(()=>{s(null),l(null),d.current=null,f.current=null,p.current=null,m.current=null,requestAnimationFrame(()=>{Vn()||i.current?.focus()})},[i]),S=(0,e.useCallback)(e=>{s(t=>t&&{...t,draftValue:e})},[]),C=(0,e.useCallback)(e=>{s(t=>t&&{...t,numberDraft:e})},[]),w=(0,e.useCallback)(e=>{s(t=>t&&{...t,textDraft:e})},[]),T=(0,e.useCallback)(e=>{s(t=>t&&{...t,dateDraft:e})},[]);(0,e.useEffect)(()=>{if(!g)return;y();let e=()=>{y()};return window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0)}},[g,y]);let E=c!==null;return(0,e.useEffect)(()=>{let e=u.current;if(!E||!e||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(()=>{let e=u.current?.getBoundingClientRect().height??null;e===null||e===m.current||(m.current=e,y())});return t.observe(e),()=>{t.disconnect()}},[E,y]),(0,e.useEffect)(()=>{if(!v||!c)return;let e=v.filterType??`text`,t=0,n=0;return t=requestAnimationFrame(()=>{n=requestAnimationFrame(()=>{if(e===`select`){p.current?.focus();return}let t=f.current;if(t&&(t.focus(),t.type===`text`)){let e=t.value.length;t.setSelectionRange(e,e)}})}),()=>{cancelAnimationFrame(t),cancelAnimationFrame(n)}},[v,c?.top,c?.left,c?.width]),(0,e.useEffect)(()=>{if(!h)return;let e=e=>{let t=e.target;un(t,u.current)&&x()};return window.addEventListener(`pointerdown`,e),()=>{window.removeEventListener(`pointerdown`,e)}},[x,h]),{filterPopoverState:o,filterPopoverLayout:c,filterPopoverRef:u,filterTextInputRef:f,filterSelectRef:p,isFilterPopoverOpen:h,openedFilterColumn:v,openedFilterType:_,openColumnFilterPopover:b,closeColumnFilterPopover:x,updateFilterPopoverDraft:S,updateFilterPopoverNumberDraft:C,updateFilterPopoverTextDraft:w,updateFilterPopoverDateDraft:T}},Qn=`入力値が不正です`,$n=e=>e===!0?{valid:!0,message:``}:e===!1?{valid:!1,message:Qn}:typeof e==`string`?{valid:!1,message:e||`入力値が不正です`}:{valid:!1,message:e.message||`入力値が不正です`},er=(e,t,n)=>{if(!e.validate)return null;let r=$n(e.validate({value:n,row:t,column:e}));return r.valid?null:r.message},tr=(e,t,n)=>{if((e.validationMode??`mark`)!==`reject`)return{action:`write`};let r=er(e,t,n);return r===null?{action:`write`}:{action:`reject`,message:r}},nr=(e,t,n)=>{let r=t.filter(e=>e.validate);if(r.length===0)return[];let i=[];return e.forEach((e,t)=>{for(let a of r){let r=er(a,e,R(e,a));r!==null&&i.push({rowKey:n(e,t)??t,sourceRowIndex:t,columnKey:a.key,message:r})}}),i},G=e=>{let t=e.replace(/\r\n/g,`
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("react"),t=require("react-dom"),n=require("@tanstack/virtual-core"),r=require("react/jsx-runtime");function i(...e){return e.filter(Boolean).join(` `)}var a=Object.freeze({});function o(e){if(!e)return a;if(typeof e==`string`)return{className:e};let t=e.className||void 0,n=e.style??void 0;return t===void 0&&n===void 0?a:{className:t,style:n}}function s(...e){let t;for(let n of e)n&&(t=t===void 0?{...n}:Object.assign(t,n));return t}function c(e,t){if(e===t)return!0;if(!e||!t)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;let i=e,a=t;for(let e of n)if(!Object.is(i[e],a[e]))return!1;return!0}function l(e,t,n){let r=Object.keys(e),i=Object.keys(t);if(r.length!==i.length)return!1;for(let r of i){if(!Object.prototype.hasOwnProperty.call(e,r))return!1;let i=e[r],a=t[r];if(n.has(r)){if(!c(i,a))return!1}else if(!Object.is(i,a))return!1}return!0}function u(e){let t={};if(!e)return t;for(let n of Object.keys(e)){let r=o(e[n]);(r.className!==void 0||r.style!==void 0)&&(t[n]=r)}return t}function d(e){return JSON.stringify(e??null)}function f(e){return u(JSON.parse(e))}function p(e){return o(JSON.parse(e))}function m(t){let n=d(t);return(0,e.useMemo)(()=>f(n),[n])}function h(t){let n=d(t);return(0,e.useMemo)(()=>p(n),[n])}var g=typeof document<`u`?e.useLayoutEffect:e.useEffect;function _(r){let{useFlushSync:i=!0,...a}=r,o=(0,e.useReducer)(e=>e+1,0)[1],s={observeElementRect:n.observeElementRect,observeElementOffset:n.observeElementOffset,scrollToFn:n.elementScroll,...a,onChange:(e,n)=>{i&&n?(0,t.flushSync)(o):o(),a.onChange?.(e,n)}},[c]=(0,e.useState)(()=>new n.Virtualizer(s));return c.setOptions(s),g(()=>c._didMount(),[c]),g(()=>{c._willUpdate()}),c}var v={activateCell:e=>({type:`cell/activate`,cell:e}),startSelection:e=>({type:`selection/start`,cell:e}),updateSelection:e=>({type:`selection/update`,cell:e}),startRowSelection:e=>({type:`rowSelection/start`,row:e}),updateRowSelection:e=>({type:`rowSelection/update`,row:e}),startColumnSelection:e=>({type:`columnSelection/start`,col:e}),updateColumnSelection:e=>({type:`columnSelection/update`,col:e}),endSelection:()=>({type:`selection/end`}),clearSelection:()=>({type:`selection/clear`}),startEdit:e=>({type:`edit/start`,cell:e}),stopEdit:()=>({type:`edit/stop`}),startColumnResize:(e,t,n,r,i)=>({type:`column/resizeStart`,columnKey:e,startX:t,startWidth:n,minWidth:r,maxWidth:i}),updateColumnResize:e=>({type:`column/resizeUpdate`,clientX:e}),endColumnResize:()=>({type:`column/resizeEnd`}),syncColumnWidths:e=>({type:`columnWidths/sync`,widths:e}),resetColumnWidths:e=>({type:`columnWidths/reset`,widths:e}),setGlobalFilter:e=>({type:`filter/setGlobal`,value:e}),setColumnFilter:(e,t)=>({type:`filter/setColumn`,columnKey:e,value:t}),clearColumnFilter:e=>({type:`filter/clearColumn`,columnKey:e}),resetAllFilters:()=>({type:`filter/resetAll`}),setAllFilters:e=>({type:`filter/setAll`,filters:e}),setSort:e=>({type:`sort/set`,entries:e}),clearSort:()=>({type:`sort/clear`}),setRowSelectionState:e=>({type:`rowSelect/set`,state:e}),toggleGroupCollapsed:e=>({type:`group/toggleCollapsed`,groupKey:e}),setGroupCollapsed:(e,t)=>({type:`group/setCollapsed`,groupKey:e,collapsed:t}),setCollapsedGroupKeys:e=>({type:`group/setCollapsedKeys`,keys:e}),toggleDetailRow:e=>({type:`detail/toggle`,rowKey:e}),setDetailRowExpanded:(e,t)=>({type:`detail/setExpanded`,rowKey:e,expanded:t}),setExpandedDetailRowKeys:e=>({type:`detail/setKeys`,keys:e})},y=(e,t,n)=>Math.min(Math.max(e,t),n),b=(e,t)=>{let n=0;return e.map((e,r)=>{let i=t[e.key]??e.width,a={index:r,column:e,start:n,size:i,end:n+i};return n+=i,a})},x=e=>e.pinned===`left`?`left`:e.pinned===`right`?`right`:`center`,S=e=>{let t=[],n=[],r=[];for(let i of e){let e=x(i);e===`left`?t.push(i):e===`right`?r.push(i):n.push(i)}return[...t,...n,...r]},C=e=>{let t={left:[],center:[],right:[]};return e.forEach((e,n)=>{let r=x(e);t[r].push({column:e,logicalIndex:n})}),t},w=(e,t)=>e.map(({column:e})=>t[e.key]??e.width),T=(e,t)=>w(e,t).join(`,`),E=e=>e===``?[]:e.split(`,`).map(Number),D=(e,t,n)=>{let r=0;return{pane:e,entries:t.map(({column:e,logicalIndex:t},i)=>{let a=n[i]??e.width,o={column:e,logicalIndex:t,paneLocalStart:r,paneLocalSize:a,paneLocalEnd:r+a};return r+=a,o}),totalWidth:r}},O=(e,t,n)=>D(e,t,E(n)),k=(e,t)=>{let n=[[`left`,e.left],[`center`,e.center],[`right`,e.right]];for(let[e,r]of n){let n=r.entries.find(e=>e.logicalIndex===t);if(n)return{pane:e,entry:n}}return null},A=(e,t)=>{let{entries:n}=e;if(n.length===0)return-1;if(t<=0)return n[0].logicalIndex;let r=0,i=n.length-1;for(;r<=i;){let e=Math.floor((r+i)/2),a=n[e];if(t<a.paneLocalStart){i=e-1;continue}if(t>=a.paneLocalEnd){r=e+1;continue}return a.logicalIndex}return n[Math.max(0,Math.min(r,n.length-1))].logicalIndex},ee=(e,t)=>{let{entries:n}=e;for(let e=0;e<n.length;e+=1){let r=n[e];if(t<r.paneLocalStart+r.paneLocalSize/2)return e}return n.length},j=(e,t)=>{let{entries:n,totalWidth:r}=e;return n.length===0?0:t<=0?n[0].paneLocalStart:t>=n.length?r:n[t].paneLocalStart},te=(e,t,n)=>{let r=Math.min(t,n),i=Math.max(t,n),a=1/0,o=-1/0,s=!1;for(let t of e.entries)t.logicalIndex<r||t.logicalIndex>i||(s=!0,t.paneLocalStart<a&&(a=t.paneLocalStart),t.paneLocalEnd>o&&(o=t.paneLocalEnd));return s?{start:a,end:o,width:o-a}:null},ne=(e,t,n)=>({left:te(e.left,t,n),center:te(e.center,t,n),right:te(e.right,t,n)}),M=e=>{let t=e=>e.entries.length===0?null:{start:0,end:e.totalWidth,width:e.totalWidth};return{left:t(e.left),center:t(e.center),right:t(e.right)}},re=(e,t)=>{let n=k(e,t);if(!n)return null;let{pane:r,entry:i}=n;return{pane:r,extent:{start:i.paneLocalStart,end:i.paneLocalEnd,width:i.paneLocalSize}}},ie=e=>e.flex!=null&&e.flex>0&&x(e)===`center`,N=(e,t)=>{let n=new Map,r=e,i=t;for(;;){let e=r.reduce((e,t)=>e+t.flex,0);if(r.length===0||e<=0)break;let t=null;for(let a of r){let r=i*a.flex/e;if(r<a.min){n.set(a.key,a.min),i-=a.min,t=a.key;break}if(r>a.max){n.set(a.key,a.max),i-=a.max,t=a.key;break}}if(t!==null){r=r.filter(e=>e.key!==t);continue}let a=0;r.forEach((t,o)=>{if(o===r.length-1)n.set(t.key,i-a);else{let r=i*t.flex/e;n.set(t.key,r),a+=r}});break}return n},ae=(e,t,n)=>{let r=[],i=0;for(let n of e){let e=t[n.key];if(e!=null){i+=e;continue}let a=n.flex;if(a!=null&&a>0&&x(n)===`center`){r.push({key:n.key,flex:a,min:n.minWidth??50,max:n.maxWidth??1/0});continue}i+=n.width}if(r.length===0)return{};let a=n-i;return Object.fromEntries(N(r,a))},P=()=>({mode:`include`,keys:new Set}),oe=(e,t)=>e.mode===`exclude`?!e.keys.has(t):e.keys.has(t),se=(e,t)=>{let n=new Set(e.keys);return n.has(t)?n.delete(t):n.add(t),{mode:e.mode,keys:n}},ce=e=>({mode:`include`,keys:new Set([e])}),le=e=>({mode:`include`,keys:new Set(e)}),ue=()=>({mode:`exclude`,keys:new Set}),de=()=>P(),fe=(e,t)=>e.mode===`exclude`?Math.max(0,t-e.keys.size):e.keys.size,pe=(e,t)=>{let n=fe(e,t);return n<=0?`none`:t>0&&n>=t?`all`:`some`},me=e=>({type:e.mode,rowKeys:Array.from(e.keys)}),he=e=>({mode:e.type,keys:new Set(e.rowKeys)}),ge=(e,t)=>{if(e.mode!==t.mode||e.keys.size!==t.keys.size)return!1;for(let n of e.keys)if(!t.keys.has(n))return!1;return!0},_e=60,ve=(e,t,n)=>Math.min(Math.max(e,t),n),ye=e=>e.reduce((e,t)=>(ie(t)||(e[t.key]=t.width),e),{}),be=e=>({activeCell:null,selection:null,rowSelection:P(),editingCell:null,dragState:null,columnWidths:ye(e),filters:{globalText:``,columnFilters:{}},sort:[],collapsedGroupKeys:new Set,expandedDetailRowKeys:new Set}),xe=(e,t)=>{switch(t.type){case`cell/activate`:return{...e,activeCell:t.cell};case`selection/start`:return{...e,activeCell:t.cell,selection:{type:`cell`,range:{start:t.cell,end:t.cell}},dragState:{type:`selection`,selectionKind:`cell`,anchor:t.cell}};case`rowSelection/start`:return{...e,activeCell:{row:t.row,col:e.activeCell?.col??0},selection:{type:`row`,startRow:t.row,endRow:t.row},dragState:{type:`selection`,selectionKind:`row`,anchorRow:t.row}};case`rowSelection/update`:return e.dragState?.type!==`selection`||e.dragState.selectionKind!==`row`||e.selection?.type===`row`&&e.selection.endRow===t.row?e:{...e,selection:{type:`row`,startRow:e.dragState.anchorRow,endRow:t.row}};case`selection/update`:return e.dragState?.type!==`selection`||e.dragState.selectionKind!==`cell`||e.selection?.type===`cell`&&e.selection.range.end.row===t.cell.row&&e.selection.range.end.col===t.cell.col?e:{...e,selection:{type:`cell`,range:{start:e.dragState.anchor,end:t.cell}}};case`columnSelection/start`:return{...e,activeCell:{row:e.activeCell?.row??0,col:t.col},selection:{type:`col`,startCol:t.col,endCol:t.col},dragState:{type:`selection`,selectionKind:`col`,anchorCol:t.col}};case`columnSelection/update`:return e.dragState?.type!==`selection`||e.dragState.selectionKind!==`col`||e.selection?.type===`col`&&e.selection.endCol===t.col?e:{...e,selection:{type:`col`,startCol:e.dragState.anchorCol,endCol:t.col}};case`selection/end`:return e.dragState?.type===`selection`?{...e,dragState:null}:e;case`selection/clear`:return{...e,selection:null,dragState:null};case`edit/start`:return{...e,editingCell:t.cell,activeCell:t.cell};case`edit/stop`:return{...e,editingCell:null};case`column/resizeStart`:return{...e,dragState:{type:`columnResize`,columnKey:t.columnKey,startX:t.startX,startWidth:t.startWidth,minWidth:t.minWidth||_e,maxWidth:t.maxWidth??1/0}};case`column/resizeUpdate`:{if(e.dragState?.type!==`columnResize`)return e;let n=ve(e.dragState.startWidth+(t.clientX-e.dragState.startX),e.dragState.minWidth,e.dragState.maxWidth);return e.columnWidths[e.dragState.columnKey]===n?e:{...e,columnWidths:{...e.columnWidths,[e.dragState.columnKey]:n}}}case`column/resizeEnd`:return e.dragState?.type===`columnResize`?{...e,dragState:null}:e;case`columnWidths/sync`:return{...e,columnWidths:{...e.columnWidths,...t.widths}};case`columnWidths/reset`:return{...e,columnWidths:t.widths};case`filter/setGlobal`:return{...e,filters:{...e.filters,globalText:t.value}};case`filter/setColumn`:return{...e,filters:{...e.filters,columnFilters:{...e.filters.columnFilters,[t.columnKey]:t.value}}};case`filter/clearColumn`:{let n={...e.filters.columnFilters};return delete n[t.columnKey],{...e,filters:{...e.filters,columnFilters:n}}}case`filter/resetAll`:return{...e,filters:{globalText:``,columnFilters:{}}};case`filter/setAll`:return{...e,filters:t.filters};case`sort/set`:return{...e,sort:t.entries};case`sort/clear`:return{...e,sort:[]};case`rowSelect/set`:return ge(e.rowSelection,t.state)?e:{...e,rowSelection:t.state};case`group/toggleCollapsed`:{let n=new Set(e.collapsedGroupKeys);return n.has(t.groupKey)?n.delete(t.groupKey):n.add(t.groupKey),{...e,collapsedGroupKeys:n}}case`group/setCollapsed`:{if(e.collapsedGroupKeys.has(t.groupKey)===t.collapsed)return e;let n=new Set(e.collapsedGroupKeys);return t.collapsed?n.add(t.groupKey):n.delete(t.groupKey),{...e,collapsedGroupKeys:n}}case`group/setCollapsedKeys`:return t.keys===e.collapsedGroupKeys||t.keys.size===0&&e.collapsedGroupKeys.size===0?e:{...e,collapsedGroupKeys:t.keys};case`detail/toggle`:{let n=new Set(e.expandedDetailRowKeys);return n.has(t.rowKey)?n.delete(t.rowKey):n.add(t.rowKey),{...e,expandedDetailRowKeys:n}}case`detail/setExpanded`:{if(e.expandedDetailRowKeys.has(t.rowKey)===t.expanded)return e;let n=new Set(e.expandedDetailRowKeys);return t.expanded?n.add(t.rowKey):n.delete(t.rowKey),{...e,expandedDetailRowKeys:n}}case`detail/setKeys`:return t.keys===e.expandedDetailRowKeys||t.keys.size===0&&e.expandedDetailRowKeys.size===0?e:{...e,expandedDetailRowKeys:t.keys};default:return e}},Se=()=>({scrollTop:0,viewportWidth:0,viewportHeight:0,hoveredRowIndex:null,hoveredColumnIndex:null,isCornerHovered:!1}),Ce=(e,t)=>typeof e==`function`?e(t):e,we=(e,t=xe,n=Se())=>{let r=e,i=n,a=new Set,o=()=>{for(let e of Array.from(a))e()};return{getState:()=>r,dispatch:e=>{let n=t(r,e);Object.is(n,r)||(r=n,o())},getViewState:()=>i,setViewState:e=>{let t=typeof e==`function`?e(i):e,n=!1;for(let e of Object.keys(t))if(!Object.is(t[e],i[e])){n=!0;break}n&&(i={...i,...t},o())},subscribe:e=>(a.add(e),()=>{a.delete(e)})}};function Te(t){return[(0,e.useSyncExternalStore)(t.subscribe,t.getState,t.getState),t.dispatch]}function Ee(t){return[(0,e.useSyncExternalStore)(t.subscribe,t.getViewState,t.getViewState),(0,e.useMemo)(()=>{let e=e=>n=>{t.setViewState(t=>({[e]:Ce(n,t[e])}))};return{setScrollTop:e(`scrollTop`),setViewportWidth:e(`viewportWidth`),setViewportHeight:e(`viewportHeight`),setHoveredRowIndex:e(`hoveredRowIndex`),setHoveredColumnIndex:e(`hoveredColumnIndex`),setIsCornerHovered:e(`isCornerHovered`)}},[t])]}var De=e=>({start:{row:Math.min(e.start.row,e.end.row),col:Math.min(e.start.col,e.end.col)},end:{row:Math.max(e.start.row,e.end.row),col:Math.max(e.start.col,e.end.col)}}),Oe=(e,t)=>({startRow:Math.min(e,t),endRow:Math.max(e,t)}),ke=(e,t)=>({startCol:Math.min(e,t),endCol:Math.max(e,t)}),Ae=e=>e.filters.globalText,je=e=>{if(!e)return{kind:`none`};if(e.type===`cell`){let t=De(e.range);return{kind:`cell`,startRow:t.start.row,endRow:t.end.row,startCol:t.start.col,endCol:t.end.col}}if(e.type===`row`){let t=Oe(e.startRow,e.endRow);return{kind:`row`,startRow:t.startRow,endRow:t.endRow}}let t=ke(e.startCol,e.endCol);return{kind:`col`,startCol:t.startCol,endCol:t.endCol}};function Me({rect:e,headerHeight:t,leadingWidth:n,baseOffset:a=0,slot:o}){if(!e)return null;let s={position:`absolute`,left:n+e.left,top:t+e.top-a,width:e.width,height:e.height};return(0,r.jsx)(`div`,{className:i(`ssg-selection-overlay`,o?.className),style:{...o?.style,...s}})}function Ne({rect:e,headerHeight:t,leadingWidth:n,baseOffset:a=0,slot:o}){if(!e)return null;let s={position:`absolute`,left:n+e.left,top:t+e.top-a,width:e.width,height:e.height};return(0,r.jsx)(`div`,{className:i(`ssg-active-cell-overlay`,o?.className),style:{...o?.style,...s}})}var Pe=e=>{let t=e??`down`;return t===`none`?void 0:t},Fe=({value:e,onCommit:t,onCancel:n,onRejected:r,enterMove:i})=>a=>{if(a.nativeEvent.isComposing)return;let o=n=>{let i=t(e,n);i&&i.status===`rejected`&&r?.(i.message)};if(a.key===`Enter`){a.preventDefault(),o(Pe(i));return}if(a.key===`Escape`){a.preventDefault(),n();return}a.key===`Tab`&&(a.preventDefault(),o(a.shiftKey?`left`:`right`))};function Ie({message:t}){let[n,a]=(0,e.useState)(!1);return(0,r.jsx)(`div`,{ref:(0,e.useCallback)(e=>{e&&a(e.getBoundingClientRect().bottom>window.innerHeight-4)},[]),role:`alert`,className:i(`ssg-cell-editor-error`,n&&`ssg-cell-editor-error--above`),children:t})}function Le({initialValue:t,onCommit:n,onCancel:a,align:o,enterMove:s}){let c=(0,e.useRef)(null),[l,u]=(0,e.useState)(t),[d,f]=(0,e.useState)(null);return(0,e.useEffect)(()=>{let e=c.current;if(!e)return;e.focus();let t=e.value.length;e.setSelectionRange(t,t)},[]),(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:c,type:`text`,value:l,onChange:e=>{u(e.target.value),f(null)},onKeyDown:Fe({value:l,onCommit:n,onCancel:a,onRejected:f,enterMove:s}),onBlur:()=>{let e=n(l);e&&e.status===`rejected`&&a()},className:i(`ssg-cell-editor-input`,d!==null&&`ssg-cell-editor-input--invalid`),style:o?{textAlign:o}:void 0}),d===null?null:(0,r.jsx)(Ie,{message:d})]})}function Re({initialValue:t,min:n,max:a,step:o,onCommit:s,onCancel:c,align:l,enterMove:u}){let d=(0,e.useRef)(null),[f,p]=(0,e.useState)(t),[m,h]=(0,e.useState)(null);return(0,e.useEffect)(()=>{d.current?.focus()},[]),(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:d,type:`number`,value:f,min:n,max:a,step:o,onChange:e=>{p(e.target.value),h(null)},onKeyDown:Fe({value:f,onCommit:s,onCancel:c,onRejected:h,enterMove:u}),onBlur:()=>{let e=s(f);e&&e.status===`rejected`&&c()},className:i(`ssg-cell-editor-input`,m!==null&&`ssg-cell-editor-input--invalid`),style:l?{textAlign:l}:void 0}),m===null?null:(0,r.jsx)(Ie,{message:m})]})}var ze=8,Be=8,Ve=2,He=(e,t)=>{let n=String(t??``),r=e.findIndex(e=>e.value===n);return r>=0?r:0},Ue=(e,t,n)=>{if(n<=0)return 0;let r=e+t;return r<0?0:r>n-1?n-1:r},We=()=>({buffer:``,lastInputTime:0}),Ge=(e,t,n,r)=>{let i=(n-e.lastInputTime>700?``:e.buffer)+t.toLocaleLowerCase(),a=r.findIndex(e=>e.label.toLocaleLowerCase().startsWith(i));return{state:{buffer:i,lastInputTime:n},index:a>=0?a:null}},Ke=(e,t,n,r)=>{let i=Math.max(e.width,180),a=Math.max(Be,n-i-Be),o=Math.min(Math.max(e.left,Be),a),s=Math.min(Math.max(t,1),ze)*28+8,c=e.bottom+Ve;return{left:o,top:c+s<=r-Be?c:Math.max(Be,e.top-Ve-s),width:i,maxHeight:s}};function qe({options:n,value:a,onCommit:o,onCancel:s,align:c,themeClassName:l,popoverSlot:u,enterMove:d}){let f=(0,e.useRef)(null),p=(0,e.useRef)(null),m=(0,e.useRef)(We()),[h,g]=(0,e.useState)(()=>He(n,a)),[_,v]=(0,e.useState)(null),[y,b]=(0,e.useState)(null),x=(0,e.useCallback)(e=>{f.current=e,e&&(e.focus(),v(Ke(e.getBoundingClientRect(),n.length,window.innerWidth,window.innerHeight)))},[n.length]);(0,e.useEffect)(()=>{let e=()=>{let e=f.current;e&&v(Ke(e.getBoundingClientRect(),n.length,window.innerWidth,window.innerHeight))};return window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0)}},[n.length]),(0,e.useEffect)(()=>{let e=p.current;e&&e.children[h]?.scrollIntoView?.({block:`nearest`})},[h]);let S=(e,t)=>{let n=o(e,t);n&&n.status===`rejected`&&b(n.message)},C=e=>{let t=n[h];if(!t){s();return}S(t.value,e)},w=e=>{if(!e.nativeEvent.isComposing){if(e.key===`ArrowDown`||e.key===`ArrowUp`){e.preventDefault();let t=e.key===`ArrowDown`?1:-1;g(e=>Ue(e,t,n.length)),b(null);return}if(e.key===`Enter`){e.preventDefault(),C(Pe(d));return}if(e.key===`Escape`){e.preventDefault(),s();return}if(e.key===`Tab`){e.preventDefault(),C(e.shiftKey?`left`:`right`);return}if(e.key.length===1&&!e.ctrlKey&&!e.metaKey&&!e.altKey){e.preventDefault();let t=Ge(m.current,e.key,Date.now(),n);m.current=t.state,t.index!==null&&(g(t.index),b(null))}}},T=n[h];return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:x,type:`text`,readOnly:!0,value:T?.label??String(a??``),onKeyDown:w,onBlur:()=>s(),className:i(`ssg-cell-editor-input ssg-cell-editor-input--select`,y!==null&&`ssg-cell-editor-input--invalid`),style:c?{textAlign:c}:void 0}),y===null?null:(0,r.jsx)(Ie,{message:y}),_?(0,t.createPortal)((0,r.jsx)(`div`,{ref:p,role:`listbox`,className:i(`ssg-select-editor-popover`,l,u?.className),style:{...u?.style,left:_.left,top:_.top,width:_.width,maxHeight:_.maxHeight},onPointerDown:e=>e.preventDefault(),children:n.length===0?(0,r.jsx)(`div`,{className:`ssg-select-editor-empty`,children:`候補がありません`}):n.map((e,t)=>(0,r.jsx)(`div`,{role:`option`,"aria-selected":t===h,className:i(`ssg-select-editor-option`,t===h&&`ssg-select-editor-option--highlighted`),onClick:()=>S(e.value),onPointerEnter:()=>g(t),children:e.label},`${e.value}-${t}`))}),document.body):null]})}function Je({initialValue:t,onCommit:n,onCancel:a,align:o,enterMove:s}){let c=(0,e.useRef)(null),[l,u]=(0,e.useState)(t),[d,f]=(0,e.useState)(null);return(0,e.useEffect)(()=>{c.current?.focus()},[]),(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:c,type:`date`,value:l,onChange:e=>{u(e.target.value),f(null)},onKeyDown:Fe({value:l,onCommit:n,onCancel:a,onRejected:f,enterMove:s}),onBlur:()=>{let e=n(l);e&&e.status===`rejected`&&a()},className:i(`ssg-cell-editor-input`,d!==null&&`ssg-cell-editor-input--invalid`),style:o?{textAlign:o}:void 0}),d===null?null:(0,r.jsx)(Ie,{message:d})]})}function Ye({render:e,context:t}){return(0,r.jsx)(r.Fragment,{children:e(t)})}var Xe=(e,t,n,r,i)=>e.readOnly||i.readOnly||i.editable===!1?!1:e.canEditCell?e.canEditCell(t,n,r,i):!0,F=(e,t)=>t.getValue?t.getValue(e):e[t.key],Ze=(e,t,n)=>t.setValue?t.setValue(e,n):{...e,[t.key]:n},Qe=e=>({checkedValue:e.checkedValue??!0,uncheckedValue:e.uncheckedValue??!1}),$e=(e,t)=>Object.is(e,Qe(t).checkedValue),et=(e,t)=>{let{checkedValue:n,uncheckedValue:r}=Qe(t);return Object.is(e,n)?r:n},tt=(e,t)=>{let{checkedValue:n,uncheckedValue:r}=Qe(t);if(e===``)return r;if(e===String(n))return n;if(e===String(r))return r;let i=e.toLowerCase();return i===`true`||i===`1`?n:r},nt=e=>{if(e===``)return null;let t=Number(e);return Number.isFinite(t)?t:e},rt=e=>`${String(e.getFullYear()).padStart(4,`0`)}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`,it=e=>{if(e instanceof Date)return Number.isNaN(e.getTime())?``:rt(e);if(typeof e==`string`&&e.trim()!==``){let t=/^(\d{4}-\d{2}-\d{2})/.exec(e);if(t)return t[1];let n=new Date(e);if(!Number.isNaN(n.getTime()))return rt(n)}return``},at=e=>{if(e===``)return null;let t=it(e);return t===``?e:t},ot=e=>{if(e.parseClipboardValue)return e.parseClipboardValue;if(e.editor?.type===`number`)return nt;if(e.editor?.type===`date`)return at;if(e.editor?.type===`checkbox`){let t=e.editor;return e=>tt(e,t)}return e=>e},st=(e,t,n)=>typeof t==`string`?ot(e)(t,n):t,ct=(e,t,n,r)=>e.map((e,i)=>i===t?Ze(e,n,r):e);function lt({rect:t,headerHeight:n,leadingWidth:a,baseOffset:o=0,initialValue:s,editor:c,editorSession:l,themeClassName:u,slots:d,onCommit:f,onCancel:p,align:m,enterMove:h}){let g=t!==null,[_,v]=(0,e.useState)(!1),[y,b]=(0,e.useState)(0);if(g!==_&&(v(g),g&&b(y+1)),!t)return null;let x={position:`absolute`,left:a+t.left,top:n+t.top-o,width:t.width,height:t.height},S;if(c?.type===`number`)S=(0,r.jsx)(Re,{enterMove:h,initialValue:s,min:c.min,max:c.max,step:c.step,onCommit:f,onCancel:p,align:m},y);else if(c?.type===`date`)S=(0,r.jsx)(Je,{enterMove:h,initialValue:it(l?l.value:s),onCommit:f,onCancel:p,align:m},y);else if(c?.type===`custom`)S=l?(0,r.jsx)(Ye,{render:c.render,context:{row:l.row,rowIndex:l.rowIndex,sourceRowIndex:l.sourceRowIndex,rowKey:l.rowKey,colIndex:l.colIndex,column:l.column,value:l.value,initialText:s,align:m,commit:(e,t)=>f(e,t)??{status:`noop`},cancel:p}},y):null;else if(c?.type===`select`){let e=typeof c.options==`function`?l?c.options(l.row):[]:c.options;S=(0,r.jsx)(qe,{popoverSlot:d?.popover,enterMove:h,options:e,value:l?.value,onCommit:f,onCancel:p,align:m,themeClassName:u},y)}else S=(0,r.jsx)(Le,{enterMove:h,initialValue:s,onCommit:f,onCancel:p,align:m},y);return(0,r.jsx)(`div`,{className:i(`ssg-cell-editor`,d?.cellEditor?.className),style:{...d?.cellEditor?.style,...x},children:S})}var ut=[{value:`today`,label:`今日`},{value:`thisMonth`,label:`今月`},{value:`last30days`,label:`過去 30 日`}],dt=e=>ut.some(t=>t.value===e),ft=e=>ut.find(t=>t.value===e)?.label??e,pt=e=>e===!1?[]:e===void 0?ut.map(({value:e,label:t})=>({id:e,label:t})):e.map(e=>typeof e==`string`?{id:e,label:ft(e)}:{id:e.id,label:e.label,resolve:e.resolve}),mt=(e,t)=>{let n=t?.find(t=>t.id===e)?.label;return n===void 0?dt(e)?ft(e):e:n},ht=e=>{let t=new Int32Array(e);for(let n=0;n<e;n+=1)t[n]=n;return t},gt=e=>e?.kind===`set`,_t=e=>e?.kind===`numberSet`,vt=e=>e?.kind===`textSet`,yt=e=>e?.kind===`dateSet`,bt=e=>e==null||String(e).trim()===``,xt=e=>{if(!e)return!1;switch(e.kind){case`set`:case`number`:case`custom`:return!0;case`numberSet`:case`textSet`:case`dateSet`:return e.condition!==null||e.set!==null;case`select`:return e.value.length>0;case`text`:case`date`:return e.value.trim().length>0}},St=e=>e==null||typeof e==`string`&&e.trim()===``?NaN:Number(e),Ct=(e,t)=>{if(e.mode===`blank`||e.mode===`notBlank`)return bt(t)===(e.mode===`blank`);let n=St(t);if(!Number.isFinite(n))return!1;if(e.mode===`range`)return n>=e.min&&n<=e.max;switch(e.operator){case`>`:return n>e.value;case`>=`:return n>=e.value;case`<`:return n<e.value;case`<=`:return n<=e.value;case`!=`:return n!==e.value;default:return n===e.value}},wt=(e,t)=>{if(e.mode===`blank`||e.mode===`notBlank`)return bt(t)===(e.mode===`blank`);let n=String(t??``).toLowerCase(),r=e.value.toLowerCase();switch(e.mode){case`equals`:return n===r;case`startsWith`:return n.startsWith(r);case`endsWith`:return n.endsWith(r);default:return n.includes(r)}},Tt=e=>String(e).padStart(2,`0`),Et=e=>`${e.getFullYear()}-${Tt(e.getMonth()+1)}-${Tt(e.getDate())}`,Dt=e=>{if(e==null)return null;if(e instanceof Date)return Number.isNaN(e.getTime())?null:Et(e);let t=String(e).trim();if(!t)return null;let n=t.match(/^(\d{4})[-/](\d{1,2})[-/](\d{1,2})(?:[T ].*)?$/);if(!n)return null;let r=Number(n[2]),i=Number(n[3]);return r<1||r>12||i<1||i>31?null:`${n[1]}-${Tt(r)}-${Tt(i)}`},Ot=e=>{let t=Dt(e);return t===null?bt(e)?``:String(e):t},kt=(e,t)=>{let n=Et(t);switch(e){case`today`:return{from:n,to:n};case`thisMonth`:{let e=new Date(t.getFullYear(),t.getMonth(),1),n=new Date(t.getFullYear(),t.getMonth()+1,0);return{from:Et(e),to:Et(n)}}default:return{from:Et(new Date(t.getFullYear(),t.getMonth(),t.getDate()-29)),to:n}}},At=e=>e===void 0?null:Dt(e),jt=(e,t,n)=>{if(e.mode!==`preset`)return e;let r=n?.find(t=>t.id===e.preset);if(r?.resolve){let e=r.resolve(t),n=At(e.from),i=At(e.to);return n!==null&&i!==null?n<=i?{mode:`range`,from:n,to:i}:{mode:`range`,from:i,to:n}:n===null?i===null?null:{mode:`onOrBefore`,value:i}:{mode:`onOrAfter`,value:n}}return dt(e.preset)?{mode:`range`,...kt(e.preset,t)}:null},Mt=(e,t,n,r)=>{let i=jt(e,n,r);if(i===null)return!0;if(i.mode===`blank`||i.mode===`notBlank`)return bt(t)===(i.mode===`blank`);let a=Dt(t);if(a===null)return!1;switch(i.mode){case`range`:return a>=i.from&&a<=i.to;case`onOrAfter`:return a>=i.value;case`onOrBefore`:return a<=i.value;case`notEquals`:return a!==i.value;default:return a===i.value}},Nt=e=>{let t=e?.kind===`number`?e.parsed:e?.kind===`numberSet`?e.condition:null;return t?.mode===`comparison`||t?.mode===`range`},Pt=e=>e?.kind===`number`,Ft=e=>{if(!e)return``;switch(e.kind){case`number`:return e.raw;case`text`:case`date`:case`select`:return e.value;case`set`:case`numberSet`:case`textSet`:case`dateSet`:case`custom`:return``}},It=(e,t,n)=>{if(e.mode===`blank`||e.mode===`notBlank`){let n=e.mode===`blank`;return e=>bt(F(e,t))===n}if(e.mode===`range`){let{min:r,max:i}=e;return(e,a)=>{let o=n?n[a]:St(F(e,t));return Number.isFinite(o)&&o>=r&&o<=i}}let{operator:r,value:i}=e;return(e,a)=>{let o=n?n[a]:St(F(e,t));if(!Number.isFinite(o))return!1;switch(r){case`>`:return o>i;case`>=`:return o>=i;case`<`:return o<i;case`<=`:return o<=i;case`!=`:return o!==i;default:return o===i}}},Lt=(e,t)=>{if(e.mode===`blank`||e.mode===`notBlank`){let n=e.mode===`blank`;return e=>bt(F(e,t))===n}let n=e.value.toLowerCase(),r=e.mode;return e=>{let i=String(F(e,t)??``).toLowerCase();switch(r){case`equals`:return i===n;case`startsWith`:return i.startsWith(n);case`endsWith`:return i.endsWith(n);default:return i.includes(n)}}},Rt=(e,t,n)=>{let r=new Set(t);return e===`exclude`?e=>!r.has(String(F(e,n)??``)):e=>r.has(String(F(e,n)??``))},zt=(e,t,n)=>{let r=new Set(t);return e===`exclude`?e=>!r.has(Ot(F(e,n))):e=>r.has(Ot(F(e,n)))},Bt=(e,t,n)=>{let r=jt(e,n,pt(t.dateFilterPresets));if(r===null)return()=>!0;if(r.mode===`blank`||r.mode===`notBlank`){let e=r.mode===`blank`;return n=>bt(F(n,t))===e}if(r.mode===`range`){let{from:e,to:n}=r;return r=>{let i=Dt(F(r,t));return i!==null&&i>=e&&i<=n}}let{mode:i,value:a}=r;return e=>{let n=Dt(F(e,t));if(n===null)return!1;switch(i){case`onOrAfter`:return n>=a;case`onOrBefore`:return n<=a;case`notEquals`:return n!==a;default:return n===a}}},Vt=(e,t,n,r)=>{if(!xt(t))return null;let i=t;if(e.filterFn){let t=e.filterFn;return e=>t(e,i)}switch(i.kind){case`set`:return Rt(i.mode,i.values,e);case`number`:{let t=i.parsed;if(t===null){let t=i.raw.toLowerCase();return n=>String(F(n,e)??``).toLowerCase().includes(t)}return It(t,e,n)}case`numberSet`:case`textSet`:case`dateSet`:{let t=i.kind===`numberSet`?i.condition?It(i.condition,e,n):null:i.kind===`textSet`?i.condition?Lt(i.condition,e):null:i.condition?Bt(i.condition,e,r??new Date):null,a=i.set?i.kind===`dateSet`?zt(i.set.mode,i.set.values,e):Rt(i.set.mode,i.set.values,e):null;return t&&a?(e,n)=>t(e,n)&&a(e,n):t??a}case`select`:{let t=i.value;return n=>String(F(n,e)??``)===t}case`text`:case`date`:{let t=i.value.trim().toLowerCase();return n=>String(F(n,e)??``).toLowerCase().includes(t)}case`custom`:{let t=String(i.value??``).trim().toLowerCase();return n=>String(F(n,e)??``).toLowerCase().includes(t)}}},Ht=(e,t,n)=>{let r=t.length;for(let i=0;i<r;i+=1){let r=F(e,t[i]);if(String(r??``).toLowerCase().includes(n))return!0}return!1},Ut=(e,t,n,r)=>{let i=r.trim().toLowerCase();if(!i)return t;let a=t.length,o=new Int32Array(a),s=0;for(let r=0;r<a;r+=1){let a=t[r];Ht(e[a],n,i)&&(o[s]=a,s+=1)}return s===a?t:o.slice(0,s)},Wt=(e,t,n,r,i,a)=>{let o=[],s=a??new Date;for(let e of n){let t=Vt(e,r[e.key],i?.get(e.key),s);t&&o.push(t)}if(o.length===0)return t;let c=t.length,l=o.length,u=new Int32Array(c),d=0;for(let n=0;n<c;n+=1){let r=t[n],i=e[r],a=!0;for(let e=0;e<l;e+=1)if(!o[e](i,r)){a=!1;break}a&&(u[d]=r,d+=1)}return d===c?t:u.slice(0,d)},Gt={operator:`gte`,value1:``,value2:``},Kt=[{value:`gte`,label:`以上`},{value:`gt`,label:`より大きい`},{value:`lte`,label:`以下`},{value:`lt`,label:`未満`},{value:`eq`,label:`に等しい`},{value:`ne`,label:`に等しくない`},{value:`between`,label:`範囲`},{value:`blank`,label:`空白`},{value:`notBlank`,label:`空白でない`}],I=e=>e===`blank`||e===`notBlank`?0:e===`between`?2:1,L=e=>{let t=e.trim();if(!t)return null;let n=Number(t);return Number.isFinite(n)?n:null},qt={gte:`>=`,gt:`>`,lte:`<=`,lt:`<`,eq:`=`,ne:`!=`},Jt=e=>{if(e.operator===`blank`||e.operator===`notBlank`)return{mode:e.operator};if(e.operator===`between`){let t=L(e.value1),n=L(e.value2);return t!==null&&n!==null?{mode:`range`,min:Math.min(t,n),max:Math.max(t,n)}:t===null?n===null?null:{mode:`comparison`,operator:`<=`,value:n}:{mode:`comparison`,operator:`>=`,value:t}}let t=L(e.value1);return t===null?null:{mode:`comparison`,operator:qt[e.operator],value:t}},R=e=>{switch(e.mode){case`comparison`:switch(e.operator){case`>=`:return`${e.value} 以上`;case`>`:return`${e.value} より大きい`;case`<=`:return`${e.value} 以下`;case`<`:return`${e.value} 未満`;case`!=`:return`${e.value} に等しくない`;default:return`${e.value} に等しい`}case`range`:return`${e.min} 〜 ${e.max}`;case`blank`:return`(空白)`;case`notBlank`:return`(空白でない)`}},Yt=e=>{let t=Jt(e);return t===null?null:{kind:`number`,raw:R(t),parsed:t}},Xt=(e,t)=>t?e.filter(e=>Ct(t,e.value)):e,Zt={">=":`gte`,">":`gt`,"<=":`lte`,"<":`lt`,"=":`eq`,"!=":`ne`},Qt=e=>{if(!e)return Gt;switch(e.mode){case`comparison`:return{operator:Zt[e.operator],value1:String(e.value),value2:``};case`range`:return{operator:`between`,value1:String(e.min),value2:String(e.max)};case`blank`:case`notBlank`:return{operator:e.mode,value1:``,value2:``}}},$t=e=>Qt(e?.parsed),en={operator:`contains`,value:``},tn=[{value:`contains`,label:`を含む`},{value:`equals`,label:`に等しい`},{value:`startsWith`,label:`で始まる`},{value:`endsWith`,label:`で終わる`},{value:`blank`,label:`空白`},{value:`notBlank`,label:`空白でない`}],nn=e=>e===`blank`||e===`notBlank`?0:1,rn=e=>{if(e.operator===`blank`||e.operator===`notBlank`)return{mode:e.operator};let t=e.value.trim();return t?{mode:e.operator,value:t}:null},an=e=>{switch(e.mode){case`contains`:return`"${e.value}" を含む`;case`equals`:return`"${e.value}" に等しい`;case`startsWith`:return`"${e.value}" で始まる`;case`endsWith`:return`"${e.value}" で終わる`;case`blank`:return`(空白)`;case`notBlank`:return`(空白でない)`}},on=e=>e?e.mode===`blank`||e.mode===`notBlank`?{operator:e.mode,value:``}:{operator:e.mode,value:e.value}:en,sn=(e,t)=>t?e.filter(e=>wt(t,e.value)):e,cn={operator:`range`,value1:``,value2:``,preset:null},ln=[{value:`range`,label:`範囲`},{value:`onOrAfter`,label:`以降`},{value:`onOrBefore`,label:`以前`},{value:`equals`,label:`に等しい`},{value:`notEquals`,label:`に等しくない`},{value:`blank`,label:`空白`},{value:`notBlank`,label:`空白でない`}],un=e=>e===`blank`||e===`notBlank`?0:e===`range`?2:1,dn=e=>{let t=e.trim();return/^\d{4}-\d{2}-\d{2}$/.test(t)?t:null},fn=e=>e===null||e instanceof Date?e===null?``:Dt(e)??``:e.trim()===``?``:Dt(e)??``,pn=e=>{if(e.preset!==null)return{mode:`preset`,preset:e.preset};if(e.operator===`blank`||e.operator===`notBlank`)return{mode:e.operator};if(e.operator===`range`){let t=dn(e.value1),n=dn(e.value2);return t!==null&&n!==null?t<=n?{mode:`range`,from:t,to:n}:{mode:`range`,from:n,to:t}:t===null?n===null?null:{mode:`onOrBefore`,value:n}:{mode:`onOrAfter`,value:t}}let t=dn(e.value1);return t===null?null:{mode:e.operator,value:t}},mn=(e,t)=>{switch(e.mode){case`range`:return`${e.from} 〜 ${e.to}`;case`onOrAfter`:return`${e.value} 以降`;case`onOrBefore`:return`${e.value} 以前`;case`equals`:return`${e.value} に等しい`;case`notEquals`:return`${e.value} に等しくない`;case`blank`:return`(空白)`;case`notBlank`:return`(空白でない)`;case`preset`:return mt(e.preset,t)}},hn=e=>{if(!e)return cn;switch(e.mode){case`preset`:return{...cn,preset:e.preset};case`range`:return{operator:`range`,value1:e.from,value2:e.to,preset:null};case`blank`:case`notBlank`:return{operator:e.mode,value1:``,value2:``,preset:null};default:return{operator:e.mode,value1:e.value,value2:``,preset:null}}},gn=(e,t,n,r)=>t?e.filter(e=>Mt(t,e.value,n,r)):e,_n=({anchorTop:e,anchorBottom:t,anchorRight:n,viewportWidth:r,viewportHeight:i,popupWidth:a,popupHeight:o,offsetY:s,viewportMargin:c})=>{let l=Math.max(0,i-c*2),u=Math.min(o,l),d=n-a;d=Math.max(c,d),d=Math.min(d,r-a-c);let f=t+s;return f+u>i-c&&(f=e-u-s),f=Math.min(f,i-c-u),f=Math.max(c,f),{top:f,left:d,maxHeight:l}},z=(e,t)=>!(!e||t?.contains(e)||(e instanceof Element?e:e.parentElement)?.closest(`[data-ssg-filter-keep-open]`)),B=[`sum`,`min`,`max`,`avg`,`count`],vn=e=>typeof e==`string`&&B.includes(e),V=()=>({count:0,numericCount:0,sum:0,min:1/0,max:-1/0}),yn=(e,t)=>{if(e.count+=1,t==null||t===``)return;let n=Number(t);Number.isFinite(n)&&(e.numericCount+=1,e.sum+=n,n<e.min&&(e.min=n),n>e.max&&(e.max=n))},bn=(e,t)=>{switch(e){case`count`:return t.count;case`sum`:return t.numericCount>0?t.sum:void 0;case`avg`:return t.numericCount>0?t.sum/t.numericCount:void 0;case`min`:return t.numericCount>0?t.min:void 0;case`max`:return t.numericCount>0?t.max:void 0}},xn=`(空白)`,Sn=`__ssg-group__:`,Cn=`__ssg_group__`,wn=e=>Sn+e.groupKey,Tn=e=>e<0,En=e=>-e-1,H=e=>{if(e==null||e===``)return`e`;let t=typeof e;return`${t===`number`?`n`:t===`boolean`?`b`:t===`string`?`s`:`o`}:${String(e)}`},Dn=e=>({groupColumns:e.filter(e=>e.rowGroup===!0),aggColumns:e.filter(e=>e.aggFunc!=null)}),On=(e,t,n,r)=>{let i=n.length,a=r.length,o=r.map(e=>typeof e.aggFunc==`function`),s=o.includes(!0),c=[],l=new Map,u=0,d=(e,t,n,i,a)=>{let s=`${t.key}\u0001${n}`,c=n===`e`;return u+=1,{groupRow:{kind:`group`,groupKey:e===null?s:`${e}\u0000${s}`,columnKey:t.key,value:c?null:i,label:c?xn:String(i),level:a,leafCount:0,aggregates:{}},children:[],childIndex:new Map,leafSourceIndexes:[],accumulators:r.map(()=>V()),customValues:o.map(e=>e?[]:null),customRows:[]}},f=t.length;for(let o=0;o<f;o+=1){let u=t[o],f=e[u],p=null;if(a>0){p=Array(a);for(let e=0;e<a;e+=1)p[e]=F(f,r[e])}let m=c,h=l,g=null;for(let e=0;e<i;e+=1){let t=n[e],r=F(f,t),o=H(r),c=h.get(o);if(c||(c=d(g,t,o,r,e),m.push(c),h.set(o,c)),c.groupRow.leafCount+=1,p!==null){for(let e=0;e<a;e+=1){yn(c.accumulators[e],p[e]);let t=c.customValues[e];t!==null&&t.push(p[e])}s&&c.customRows.push(f)}e===i-1&&c.leafSourceIndexes.push(u),m=c.children,h=c.childIndex,g=c.groupRow.groupKey}}let p=e=>{for(let t=0;t<a;t+=1){let n=r[t];o[t]?e.groupRow.aggregates[n.key]=n.aggFunc({values:e.customValues[t]??[],rows:e.customRows,column:n}):vn(n.aggFunc)&&(e.groupRow.aggregates[n.key]=bn(n.aggFunc,e.accumulators[t]))}for(let t of e.children)p(t)};for(let e of c)p(e);return{roots:c,groupCount:u}},kn=(e,t)=>{let n=[],r=[],i=e=>{if(r.push(e.groupRow),n.push(-r.length),!t.has(e.groupRow.groupKey)){if(e.children.length>0){for(let t of e.children)i(t);return}for(let t of e.leafSourceIndexes)n.push(t)}};for(let t of e.roots)i(t);return{displayOrder:Int32Array.from(n),groups:r}},An=e=>{let t=[],n=e=>{t.push(e.groupRow);for(let t of e.children)n(t)};for(let t of e.roots)n(t);return t},jn=e=>An(e).map(e=>e.groupKey),Mn=`__ssg_row_drag_handle__`,Nn=(e,t,n)=>{let r=e.length;if(!Number.isInteger(t)||!Number.isInteger(n)||t<0||t>=r||n<0||n>=r||t===n)return e;let i=e.slice(),[a]=i.splice(t,1);return i.splice(n,0,a),i},U=(e,t)=>t===e||t===e+1?null:t>e?t-1:t,Pn=(e,t)=>{let{rowCount:n}=t;if(n<=0||e<=0)return 0;if(e>=t.totalBodyHeight)return n;let r=t.rowAtContentY(e);return e-t.rowTop(r)<t.cellHeight(r)/2?r:r+1},Fn=(e,t)=>{let{rowCount:n}=t;return n<=0||e<=0?0:e>=n?t.totalBodyHeight:t.rowTop(e)},In=(e,t)=>{if(e.length!==t)return!1;for(let n=0;n<t;n+=1)if(e[n]!==n)return!1;return!0},Ln=({enableRowDrag:e,isServerSide:t,rowGroupingActive:n,hasRowsChange:r})=>e&&!t&&!n&&r,Rn=(e,t)=>e&&t,zn=`ソート / フィルター適用中は行を並び替えできません`,Bn=`ドラッグで行を移動`,Vn=`__ssg_detail_toggle__`,Hn=e=>e===`__ssg_group__`||e===`__ssg_detail_toggle__`||e===`__ssg_row_drag_handle__`,Un=e=>e!=null&&typeof e.closest==`function`&&e.closest(`[data-ssg-detail]`)!==null,Wn=()=>typeof document<`u`&&Un(document.activeElement),Gn=(e,t)=>{if(typeof t.closest!=`function`)return!1;let n=t.closest(`[data-ssg-detail]`);return n!==null&&n!==e&&e.contains(n)},Kn=()=>({indexByKey:new Map,unresolvedFor:null,unresolved:new Set}),qn=(e,t,n,r)=>{let i=e.getRowCount(),a=n.indexByKey.get(t);if(a!==void 0&&a>=0&&a<i&&e.getRowKey(a)===t)return a;if(!r)return-1;for(let r=0;r<i;r+=1)if(e.getRowKey(r)===t)return n.indexByKey.set(t,r),r;return-1},Jn=({expandedKeys:e,rowModel:t,height:n,isExpandable:r,cache:i,allowScan:a})=>{if(e.size===0||n<=0)return[];let o=t.getRowCount(),s=new Map,c=null;for(let n of e){let e=i.indexByKey.get(n);if(e!==void 0&&e>=0&&e<o&&t.getRowKey(e)===n){s.set(n,e);continue}i.unresolvedFor===t&&i.unresolved.has(n)||(c??=new Set).add(n)}if(c&&c.size>0){if(a)for(let e=0;e<o&&c.size>0;e+=1){let n=t.getRowKey(e);c.has(n)&&(i.indexByKey.set(n,e),s.set(n,e),c.delete(n))}if(c.size>0){i.unresolvedFor!==t&&(i.unresolvedFor=t,i.unresolved.clear());for(let e of c)i.unresolved.add(e)}}let l=[];for(let[e,i]of s){let a=t.getRow(i);a!==void 0&&(r&&!r(a,{rowKey:e,sourceRowIndex:t.getSourceIndex(i)})||l.push({index:i,height:n}))}return l.sort((e,t)=>e.index-t.index),l},Yn=(e,t,n)=>{e.indexByKey.set(t,n),e.unresolved.delete(t)},Xn=(e,t,n,r)=>{let i=[],a=e;for(let o of r){if(o.index<e)continue;if(o.index>t)break;let r=n.rowTop(a),s=n.rowTop(o.index)+n.cellHeight(o.index);i.push({top:r,height:s-r}),a=o.index+1}return a<=t&&i.push({top:n.rowTop(a),height:n.rowsHeight(a,t)}),i},Zn=e=>{let t=e,n=new Set;return{getSnapshot:()=>t,setSnapshot:e=>{if(!Object.is(e,t)){t=e;for(let e of Array.from(n))e()}},subscribe:e=>(n.add(e),()=>{n.delete(e)})}},Qn=e=>{document.activeElement instanceof HTMLElement&&document.activeElement.blur(),e?.blur()},$n=e=>{requestAnimationFrame(()=>{Wn()||e.current?.focus()})},er=e=>{let t=!1,n=()=>e.onResize?.(),r=t=>e.onScroll?.(t),i=t=>{let n=t.target;n&&(e.isInside(n)||e.onOutsidePointerDown())},a=t=>e.onKeyDown?.(t);return{attach:()=>{t||(t=!0,window.addEventListener(`resize`,n),window.addEventListener(`scroll`,r,!0),window.addEventListener(`pointerdown`,i),window.addEventListener(`keydown`,a,!0))},detach:()=>{t&&(t=!1,window.removeEventListener(`resize`,n),window.removeEventListener(`scroll`,r,!0),window.removeEventListener(`pointerdown`,i),window.removeEventListener(`keydown`,a,!0))},isAttached:()=>t}},tr=240,nr=8,rr=8,ir=230,ar=340,or=480,sr=(e,t)=>{if(!t)return null;let n=e.find(e=>e.key===t.columnKey)??null;return!n||n.filterType===t.filterType?n:{...n,filterType:t.filterType}},cr=()=>{let e=null,t=Zn({state:null,layout:null}),n={current:null},r={current:null},i={current:null},a=null,o=null,s=null,c=null,l=null,u=null,d=null,f=null,p=e=>{let n=t.getSnapshot(),r=n.layout;r===e||r!==null&&e!==null&&r.top===e.top&&r.left===e.left&&r.width===e.width&&r.maxHeight===e.maxHeight||t.setSnapshot({...n,layout:e})},m=()=>e===null?null:sr(e.visibleColumns,t.getSnapshot().state),h=()=>{if(!t.getSnapshot().state||!a){p(null);return}let e=a.getBoundingClientRect(),n=m()?.filterType,r=n===`numberSet`||n===`textSet`||n===`dateSet`?or:n===`set`?ar:ir,{top:i,left:s,maxHeight:c}=_n({anchorTop:e.top,anchorBottom:e.bottom,anchorRight:e.right,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,popupWidth:tr,popupHeight:o??r,offsetY:rr,viewportMargin:nr});p({top:i,left:s,width:tr,maxHeight:c})},g=()=>{l!==null&&(cancelAnimationFrame(l),l=null),u!==null&&(cancelAnimationFrame(u),u=null)},_=()=>{s?.disconnect(),s=null,c=null},v=()=>{t.setSnapshot({state:null,layout:null}),a=null,r.current=null,i.current=null,o=null,y.detach(),_(),g(),d=null,e!==null&&$n(e.gridRootRef)},y=er({onResize:h,onScroll:h,isInside:e=>!z(e,n.current),onOutsidePointerDown:v}),b=n=>{if(e===null||!e.enableColumnFilter)return;let{gridRootRef:r,resolveColumnFilterType:i,columnFilterValues:o}=e;Qn(r.current);let s=r.current,c=s?.querySelectorAll(`[data-ssg-col-key]`);a=s&&c?Array.from(c).find(e=>e.dataset.ssgColKey===n.key&&!Gn(s,e))??null:null;let l=n.filterType===`auto`&&i?i(n):n.filterType??`text`,u=o[n.key],d=l===`number`?$t(Pt(u)?u:void 0):l===`numberSet`?Qt(_t(u)?u.condition:void 0):null,f=l===`textSet`?on(vt(u)?u.condition:void 0):null,p=l===`dateSet`?hn(yt(u)?u.condition:void 0):null;t.setSnapshot({...t.getSnapshot(),state:{columnKey:n.key,filterType:l,draftValue:Ft(u),numberDraft:d,textDraft:f,dateDraft:p}}),h(),y.attach()},x=e=>{let n=t.getSnapshot();n.state&&t.setSnapshot({...n,state:{...n.state,...e}})},S=()=>{let e=n.current;if(!(t.getSnapshot().layout!==null&&e!==null)||typeof ResizeObserver>`u`){_();return}c!==e&&(_(),s=new ResizeObserver(()=>{let e=n.current?.getBoundingClientRect().height??null;e===null||e===o||(o=e,h())}),s.observe(e),c=e)},C=()=>{let{state:n,layout:a}=t.getSnapshot(),o=m();if(!n||!o||!a){g(),d=null;return}let s=f!==e?.visibleColumns,c=`${n.columnKey}|${n.filterType}|${a.top}|${a.left}|${a.width}`;if(!s&&d===c)return;d=c,f=e?.visibleColumns??null,g();let p=o.filterType??`text`;l=requestAnimationFrame(()=>{l=null,u=requestAnimationFrame(()=>{if(u=null,p===`select`){i.current?.focus();return}let e=r.current;if(e&&(e.focus(),e.type===`text`)){let t=e.value.length;e.setSelectionRange(t,t)}})})};return{update:t=>{e=t,S(),C()},subscribe:t.subscribe,getSnapshot:t.getSnapshot,panelRef:n,textInputRef:r,selectRef:i,open:b,close:v,updateDraft:e=>x({draftValue:e}),updateNumberDraft:e=>x({numberDraft:e}),updateTextDraft:e=>x({textDraft:e}),updateDateDraft:e=>x({dateDraft:e}),dispose:()=>{y.detach(),_(),g()}}},lr=typeof document<`u`?e.useLayoutEffect:e.useEffect;function ur(t,n){let[r]=(0,e.useState)(t);return lr(()=>{r.update(n)}),(0,e.useEffect)(()=>()=>{r.dispose?.()},[r]),r}var dr=t=>{let n=ur(()=>cr(),t),r=(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot),{visibleColumns:i}=t,a=r.state,o=(0,e.useMemo)(()=>sr(i,a),[i,a]);return{filterPopoverState:a,filterPopoverLayout:r.layout,filterPopoverRef:n.panelRef,filterTextInputRef:n.textInputRef,filterSelectRef:n.selectRef,isFilterPopoverOpen:a!==null,openedFilterColumn:o,openedFilterType:a?.filterType??null,openColumnFilterPopover:n.open,closeColumnFilterPopover:n.close,updateFilterPopoverDraft:n.updateDraft,updateFilterPopoverNumberDraft:n.updateNumberDraft,updateFilterPopoverTextDraft:n.updateTextDraft,updateFilterPopoverDateDraft:n.updateDateDraft}},fr=`入力値が不正です`,pr=e=>e===!0?{valid:!0,message:``}:e===!1?{valid:!1,message:fr}:typeof e==`string`?{valid:!1,message:e||`入力値が不正です`}:{valid:!1,message:e.message||`入力値が不正です`},mr=(e,t,n)=>{if(!e.validate)return null;let r=pr(e.validate({value:n,row:t,column:e}));return r.valid?null:r.message},hr=(e,t,n)=>{if((e.validationMode??`mark`)!==`reject`)return{action:`write`};let r=mr(e,t,n);return r===null?{action:`write`}:{action:`reject`,message:r}},gr=(e,t,n)=>{let r=t.filter(e=>e.validate);if(r.length===0)return[];let i=[];return e.forEach((e,t)=>{for(let a of r){let r=mr(a,e,F(e,a));r!==null&&i.push({rowKey:n(e,t)??t,sourceRowIndex:t,columnKey:a.key,message:r})}}),i},_r=e=>{let t=e.replace(/\r\n/g,`
|
|
2
2
|
`).replace(/\r/g,`
|
|
3
3
|
`);return t?t.split(`
|
|
4
|
-
`).filter(e=>e.length>0).map(e=>e.split(` `)):[]},
|
|
5
|
-
`)}if(r.type===`row`){let t=
|
|
6
|
-
`)}let o=
|
|
7
|
-
`)},
|
|
8
|
-
`)},[g,n,r]);return{isWholeGridSelected:h,handleCopy:(0,e.useCallback)(async()=>{let e=h?_():K(n.getRow,n.getRowCount(),r,i.selection,g);e&&await or(e)},[g,h,n,_,i.selection,r]),handlePaste:(0,e.useCallback)(e=>{if(a||!l&&!d||!i.activeCell)return;let f=e.clipboardData.getData(`text/plain`);if(!f)return;e.preventDefault();let m=G(f);if(m.length===0)return;let h=m.reduce((e,t)=>Math.max(e,t.length),0);if(h===0)return;let g=i.activeCell.row,_=i.activeCell.col;if(d){let e=ir(e=>n.getRow(e),r,m,g,_,(e,t,n,r)=>He({readOnly:a,canEditCell:o},e,t,n,r));e.length>0&&d(e);let t=y(i.activeCell.row+Math.max(m.length-1,0),0,Math.max(n.getRowCount()-1,0)),s=y(i.activeCell.col+Math.max(h-1,0),0,Math.max(r.length-1,0));p(v.startSelection(i.activeCell)),p(v.updateSelection({row:t,col:s})),p(v.endSelection()),p(v.activateCell(i.activeCell));return}if(!l)return;let b=n.getSourceIndex(g);if(b===void 0)return;let x=i.activeCell.col,S=[...t],C=[...r],w=n.getRowCount(),T=S.length,E=e=>e<w?n.getSourceIndex(e):T+(e-w),D=b+m.length;if(D>S.length&&s)for(;S.length<D;)S.push(s());let O=x+h;if(O>C.length&&u&&c){for(;C.length<O;)C.push(c(C.length));u(C)}let k=rr(S,E,C,m,g,x,(e,t,n,r)=>He({readOnly:a,canEditCell:o},e,t,n,r)),A=y(i.activeCell.row+Math.max(m.length-1,0),0,Math.max(Math.max(n.getRowCount()-1,0),g+m.length-1)),j=y(i.activeCell.col+Math.max((m[0]?.length??1)-1,0),0,Math.max(Math.max(C.length-1,0),x+h-1));l(k),p(v.startSelection(i.activeCell)),p(v.updateSelection({row:A,col:j})),p(v.endSelection()),p(v.activateCell(i.activeCell))},[d,o,c,s,p,u,l,a,n,t,i.activeCell,r])}},cr=e=>{if(e<0)return``;let t=e,n=``;for(;t>=0;)n=String.fromCharCode(t%26+65)+n,t=Math.floor(t/26)-1;return n},lr=(e,t,n)=>e?e(t):n,ur=(e,t=16)=>e.length<=t?e:`${e.slice(0,t)}…`,dr=e=>e?`${cr(e.col)}${e.row+1}`:`なし`,fr=e=>{if(!e)return`なし`;if(e.type===`cell`){let t=Math.min(e.range.start.row,e.range.end.row),n=Math.max(e.range.start.row,e.range.end.row),r=Math.min(e.range.start.col,e.range.end.col),i=Math.max(e.range.start.col,e.range.end.col);return`${cr(r)}${t+1} - ${cr(i)}${n+1}`}if(e.type===`row`){let t=Math.min(e.startRow,e.endRow),n=Math.max(e.startRow,e.endRow);return`Row ${t+1} - ${n+1}`}let t=Math.min(e.startCol,e.endCol),n=Math.max(e.startCol,e.endCol);return`Col ${cr(t)} - ${cr(n)}`},pr=(e,t)=>`Rows: ${t} / ${e.rows.length}`,mr=e=>`Columns: ${e.visibleColumns.length} / ${e.columns.length}`,hr=(e,t)=>{let n=e.selection;if(!n)return{selectedCellCount:0,selectedRowCount:0,selectedColumnCount:0};if(n.type===`cell`){let e=Math.min(n.range.start.row,n.range.end.row),t=Math.max(n.range.start.row,n.range.end.row),r=Math.min(n.range.start.col,n.range.end.col),i=Math.max(n.range.start.col,n.range.end.col),a=t-e+1,o=i-r+1;return{selectedCellCount:a*o,selectedRowCount:a,selectedColumnCount:o}}if(n.type===`row`){let t=Math.min(n.startRow,n.endRow),r=Math.max(n.startRow,n.endRow)-t+1,i=e.visibleColumns.length;return{selectedCellCount:r*i,selectedRowCount:r,selectedColumnCount:i}}let r=Math.min(n.startCol,n.endCol),i=Math.max(n.startCol,n.endCol)-r+1,a=t;return{selectedCellCount:a*i,selectedRowCount:a,selectedColumnCount:i}},gr=(e,t)=>{let n=hr(e,t);return`Cells: ${n.selectedCellCount} / Rows: ${n.selectedRowCount}`},_r=e=>Object.values(e).filter(e=>pt(e)).length,vr=e=>{let t=e.globalFilterText.trim().length>0,n=t?ur(e.globalFilterText.trim()):null,r=_r(e.columnFilterValues);return!t&&r===0?`Filter: なし`:t&&r===0?`Filter: Global("${n}")`:!t&&r>0?`Filter: ${r}列`:`Filter: Global("${n}") + ${r}列`},yr=(e,t)=>{let n=e.find(e=>e.key===t);return n?.title||n?.key||t},br=e=>e.sortState.length===0?`Sort: なし`:`Sort: ${e.sortState.map(t=>`${yr(e.columns,t.columnKey)} (${t.direction===`asc`?`昇順`:`降順`})`).join(`, `)}`,xr=(e,t)=>{let n=hr(e,t),r=e.globalFilterText.trim().length>0,i=r?ur(e.globalFilterText.trim()):null,a=_r(e.columnFilterValues),o=r||a>0,s=e.sortState.length>0,c=s?yr(e.columns,e.sortState[0].columnKey):null;return{rowSummaryText:pr(e,t),columnSummaryText:mr(e),filterSummaryText:vr(e),sortSummaryText:br(e),activeCellLabel:dr(e.activeCell),selectionLabel:fr(e.selection),selectionStatsText:gr(e,t),selectionStats:n,hasGlobalFilter:r,globalFilterPreview:i,activeColumnFilterCount:a,hasAnyFilter:o,hasSorting:s,sortedColumnLabel:c}},Sr=({rows:t,viewRowCount:n,getFilteredRows:r,columns:i,visibleColumns:a,uiState:o,setGlobalFilterText:s,globalFilterStatus:c,globalFilterProgress:l})=>{let u=Se(o),d=o.filters.columnFilters,f=o.sort,p=o.activeCell,m=o.selection,h=(0,e.useMemo)(()=>({rows:t,columns:i,visibleColumns:a,globalFilterText:u,columnFilterValues:d,sortState:f,activeCell:p,selection:m}),[t,i,a,u,d,f,p,m]),g=(0,e.useMemo)(()=>xr(h,n),[h,n]);return{slotContextBase:h,derivedSummary:g,slotContext:(0,e.useMemo)(()=>({...h,get filteredRows(){return r()},setGlobalFilterText:s,derivedSummary:g,globalFilterStatus:c,globalFilterProgress:l}),[g,r,s,h,c,l])}},Cr=({uiState:t,rows:n,visibleColumns:r,rowModel:i,setEditorInitialValue:a,onRowsChange:o,applyServerSideCellEdits:s,dispatch:c,gridRootRef:l,editorActionGuardRef:u})=>{let d=(0,e.useRef)({rowCount:0,colCount:0});(0,e.useEffect)(()=>{d.current={rowCount:i.getRowCount(),colCount:r.length}});let f=(0,e.useCallback)(e=>{c(v.startSelection(e)),c(v.endSelection()),c(v.activateCell(e))},[c]);return{activateSingleCell:f,startEditWithValue:(0,e.useCallback)((e,t)=>{a(t),c(v.startEdit(e))},[c,a]),commitEdit:(0,e.useCallback)((e,a)=>{if(u.current||!t.editingCell)return{status:`noop`};let p=t.editingCell,m=a===`down`?{row:p.row+1,col:p.col}:a===`up`?{row:p.row-1,col:p.col}:a===`right`?{row:p.row,col:p.col+1}:a===`left`?{row:p.row,col:p.col-1}:p,h=r[p.col],g=i.getSourceIndex(p.row),_=s?i.getRow(p.row):n[g];if(!h||!_)return c(v.stopEdit()),{status:`noop`};if(s){let t=$e(h,e,_),n=tr(h,_,t);if(n.action===`reject`)return{status:`rejected`,message:n.message};s([{viewIndex:p.row,column:h,value:t}])}else if(o){let t=$e(h,e,_),r=tr(h,_,t);if(r.action===`reject`)return{status:`rejected`,message:r.message};o(et(n,g,h,t))}return u.current=!0,requestAnimationFrame(()=>{Vn()||l.current?.focus();let{rowCount:e,colCount:t}=d.current;f({row:y(m.row,0,Math.max(e-1,0)),col:y(m.col,0,Math.max(t-1,0))}),u.current=!1}),c(v.stopEdit()),{status:`committed`}},[f,s,c,u,i,l,o,n,t.editingCell,r]),cancelEdit:(0,e.useCallback)(()=>{u.current||(u.current=!0,c(v.stopEdit()),requestAnimationFrame(()=>{Vn()||l.current?.focus(),u.current=!1}))},[c,u,l])}},wr=()=>({past:[],future:[]}),Tr=e=>e.past.length>0,Er=e=>e.future.length>0,Dr=(e,t,n)=>{if(n<=0)return e;let r=[...e.past,t];return{past:r.length>n?r.slice(r.length-n):r,future:[]}},Or=(e,t)=>{if(e.past.length===0)return null;let n=e.past[e.past.length-1];return{stack:{past:e.past.slice(0,-1),future:[...e.future,t]},snapshot:n}},kr=(e,t)=>{if(e.future.length===0)return null;let n=e.future[e.future.length-1];return{stack:{past:[...e.past,t],future:e.future.slice(0,-1)},snapshot:n}},Ar=({rows:t,selection:n,activeCell:r,onRowsChange:i,dispatch:a,enabled:o,limit:s,onUndoRedoStateChange:c,onAfterRestore:l})=>{let u=(0,e.useRef)(wr()),d=(0,e.useRef)(null),f=(0,e.useRef)(t),p=(0,e.useRef)({canUndo:!1,canRedo:!1}),m=(0,e.useCallback)(()=>{let e={canUndo:o&&i!=null&&Tr(u.current),canRedo:o&&i!=null&&Er(u.current)};e.canUndo===p.current.canUndo&&e.canRedo===p.current.canRedo||(p.current=e,c?.(e))},[o,i,c]);(0,e.useEffect)(()=>{m()},[m]),(0,e.useEffect)(()=>{if(t!==f.current){if(f.current=t,d.current===t){d.current=null;return}d.current=null,u.current=wr(),m()}},[t,m]);let h=(0,e.useCallback)(e=>{let t=e.selection;t?.type===`cell`?(a(v.startSelection(t.range.start)),a(v.updateSelection(t.range.end)),a(v.endSelection())):t?.type===`row`?(a(v.startRowSelection(t.startRow)),a(v.updateRowSelection(t.endRow)),a(v.endSelection())):t?.type===`col`?(a(v.startColumnSelection(t.startCol)),a(v.updateColumnSelection(t.endCol)),a(v.endSelection())):a(v.clearSelection()),a(v.activateCell(e.activeCell))},[a]);return{handleRowsChange:(0,e.useMemo)(()=>{if(i)return e=>{o&&(u.current=Dr(u.current,{rows:t,selection:n,activeCell:r},s),d.current=e,m()),i(e)}},[r,o,s,m,i,t,n]),undo:(0,e.useCallback)(()=>{if(!o||!i)return;let e=Or(u.current,{rows:t,selection:n,activeCell:r});e&&(u.current=e.stack,d.current=e.snapshot.rows,i(e.snapshot.rows),h(e.snapshot),l?.(e.snapshot.activeCell),m())},[r,o,m,l,i,h,t,n]),redo:(0,e.useCallback)(()=>{if(!o||!i)return;let e=kr(u.current,{rows:t,selection:n,activeCell:r});e&&(u.current=e.stack,d.current=e.snapshot.rows,i(e.snapshot.rows),h(e.snapshot),l?.(e.snapshot.activeCell),m())},[r,o,m,l,i,h,t,n]),canUndo:(0,e.useCallback)(()=>o&&i!=null&&Tr(u.current),[o,i]),canRedo:(0,e.useCallback)(()=>o&&i!=null&&Er(u.current),[o,i]),clearHistory:(0,e.useCallback)(()=>{u.current=wr(),m()},[m])}},jr=e=>e.key.length===1&&!e.ctrlKey&&!e.metaKey&&!e.altKey,Mr=e=>e instanceof HTMLElement?e.closest(`input, textarea, select, button, [contenteditable="true"]`)!==null:!1,Nr=({uiState:t,rowModel:n,visibleColumns:r,readOnly:i,canEditCell:a,setEditorInitialValue:o,dispatch:s,handleCopy:c,handleCellDoubleClick:l,isWholeGridSelected:u,selectEntireGrid:d,onUndo:f,onRedo:p,onClearSelection:m,enableClearOnDelete:h,onToggleCheckboxCell:g,onToggleGroup:_})=>{let b=n.getRowCount(),x=(0,e.useCallback)((e,n,i)=>{if(b===0||r.length===0)return;let a=t.activeCell??{row:0,col:0},o={row:y(a.row+e,0,b-1),col:y(a.col+n,0,r.length-1)};if(i){let e=t.selection?.type===`cell`?t.selection.range.start:a;s(v.startSelection(e)),s(v.updateSelection(o)),s(v.endSelection()),s(v.activateCell(o));return}s(v.startSelection(o)),s(v.endSelection()),s(v.activateCell(o))},[s,b,t.activeCell,t.selection,r.length]);return{handleKeyDown:(0,e.useCallback)(async e=>{if(!Mr(e.target)&&!t.editingCell){if((e.ctrlKey||e.metaKey)&&e.key.toLowerCase()===`c`){e.preventDefault(),await c();return}if((e.ctrlKey||e.metaKey)&&e.key.toLowerCase()===`a`){if(e.preventDefault(),u){s(v.clearSelection()),s(v.activateCell(null));return}d();return}if((e.ctrlKey||e.metaKey)&&!e.nativeEvent.isComposing){if(e.key.toLowerCase()===`z`){e.preventDefault(),e.shiftKey?p():f();return}if(e.key.toLowerCase()===`y`&&!e.shiftKey){e.preventDefault(),p();return}}if(e.key===`ArrowUp`){e.preventDefault(),x(-1,0,e.shiftKey);return}if(e.key===`ArrowDown`){e.preventDefault(),x(1,0,e.shiftKey);return}if(e.key===`ArrowLeft`){e.preventDefault(),x(0,-1,e.shiftKey);return}if(e.key===`ArrowRight`){e.preventDefault(),x(0,1,e.shiftKey);return}if(e.key===`Tab`){e.preventDefault(),x(0,e.shiftKey?-1:1,!1);return}if(e.key===`Escape`){e.preventDefault(),s(v.clearSelection());return}if((e.key===`Delete`||e.key===`Backspace`)&&h){e.preventDefault(),m();return}if((e.key===`Enter`||e.key===` `)&&t.activeCell){let r=n.getGroupRow?.(t.activeCell.row);if(r){e.preventDefault(),_(r.groupKey);return}}if(e.key===`Enter`||e.key===`F2`){e.preventDefault(),t.activeCell&&l(t.activeCell);return}if(jr(e)&&t.activeCell){let c=n.getRow(t.activeCell.row),l=r[t.activeCell.col];if(!c||!l||!He({readOnly:i,canEditCell:a},t.activeCell.row,t.activeCell.col,c,l))return;if(l.editor?.type===`checkbox`){e.preventDefault(),e.key===` `&&g(t.activeCell);return}e.preventDefault(),o(e.key),s(v.startEdit(t.activeCell))}}},[a,s,n,l,c,u,x,m,h,p,g,_,f,i,d,o,t.activeCell,t.editingCell,r])}},Pr=new Intl.Collator(`ja`,{numeric:!0,sensitivity:`base`}),Fr=(e,t)=>{let n=Number(e),r=Number(t);return Number.isFinite(n)&&Number.isFinite(r)?n-r:Pr.compare(String(e??``),String(t??``))},Ir=(e,t,n,r)=>{if(!r)return e.length===1&&e[0].columnKey===t&&e[0].direction===n?[]:[{columnKey:t,direction:n}];let i=e.findIndex(e=>e.columnKey===t);return i===-1?[...e,{columnKey:t,direction:n}]:e[i].direction===n?e.filter((e,t)=>t!==i):e.map((e,r)=>r===i?{columnKey:t,direction:n}:e)},Lr=(e,t,n)=>e.some(e=>e.columnKey===t)?e:[...e,{columnKey:t,direction:n}],Rr=(e,t,n)=>t<0||t>=e.length||e[t].direction===n?e:e.map((e,r)=>r===t?{...e,direction:n}:e),zr=(e,t,n)=>t<0||t>=e.length||e[t].columnKey===n?e:e.map((e,r)=>r===t?{...e,columnKey:n}:e).filter((e,r)=>r===t||e.columnKey!==n),Br=(e,t)=>t<0||t>=e.length?e:e.filter((e,n)=>n!==t),Vr=(e,t,n)=>{if(t<0||t>=e.length||n<0||n>=e.length||t===n)return e;let r=[...e],[i]=r.splice(t,1);return r.splice(n,0,i),r},Hr=(e,t,n,r)=>{if(r.length===0)return t;let i=r.map(e=>{let t=n.find(t=>t.key===e.columnKey);return t?{column:t,multiplier:e.direction===`asc`?1:-1}:null}).filter(e=>e!==null);if(i.length===0)return t;let a=t.length,o=i.length,s=i.map(e=>e.multiplier),c=Array(o),l=!0;for(let n=0;n<o;n+=1){let r=i[n].column,o=new Float64Array(a),s=!0;for(let n=0;n<a;n+=1){let i=Number(R(e[t[n]],r));if(!Number.isFinite(i)){s=!1;break}o[n]=i}if(!s){l=!1;break}c[n]=o}let u=Array(a);for(let e=0;e<a;e+=1)u[e]=e;if(l)if(o===1){let e=c[0],n=s[0];u.sort((r,i)=>{let a=e[r]-e[i];return a===0?t[r]-t[i]:a*n})}else u.sort((e,n)=>{for(let t=0;t<o;t+=1){let r=c[t][e]-c[t][n];if(r!==0)return r*s[t]}return t[e]-t[n]});else{let n=i.map(({column:n})=>{let r=Array(a);for(let i=0;i<a;i+=1)r[i]=R(e[t[i]],n);return r});u.sort((e,r)=>{for(let t=0;t<o;t+=1){let i=Fr(n[t][e],n[t][r]);if(i!==0)return i*s[t]}return t[e]-t[r]})}let d=new Int32Array(a);for(let e=0;e<a;e+=1)d[e]=t[u[e]];return d},Ur=15e6,Wr=(e,t,n,r)=>e&&t&&n>0&&n<=r,Gr=1<<20,Kr=(e,t)=>({rowCount:e,rowTop:e=>e*t,rowsHeight:(e,n)=>(n-e+1)*t,totalBodyHeight:e*t,rowAtContentY:n=>Math.min(Math.max(Math.floor(n/t),0),Math.max(e-1,0)),cellHeight:()=>t,detailHeight:()=>0}),qr=(e,t)=>{let n=t.filter(t=>t.height>0&&t.index>=0&&t.index<e.rowCount).sort((e,t)=>e.index-t.index),r=n.length,i=new Float64Array(r),a=new Float64Array(r+1);for(let e=0;e<r;e+=1)i[e]=n[e].index,a[e+1]=a[e]+n[e].height;let o=a[r],{rowCount:s}=e,c=e=>{let t=0,n=r;for(;t<n;){let r=t+n>>>1;i[r]<e?t=r+1:n=r}return t},l=t=>{let n=Math.min(Math.max(t,0),s);return(n===s?e.totalBodyHeight:e.rowTop(n))+a[c(n)]};return{rowCount:s,rowTop:l,rowsHeight:(e,t)=>l(t+1)-l(e),totalBodyHeight:e.totalBodyHeight+o,rowAtContentY:e=>{if(s<=0||e<=0)return 0;let t=0,n=s-1;for(;t<n;){let r=t+n+1>>>1;l(r)<=e?t=r:n=r-1}return t},cellHeight:t=>e.cellHeight(t),detailHeight:e=>{let t=c(e);return t<r&&i[t]===e?a[t+1]-a[t]:0}}},Jr=(e,t,n,r)=>{if(r<n)return null;let i=Math.max(e,n),a=Math.min(t,r);return i>a?null:{start:i,end:a}},Yr=(e,t)=>e*t,Xr=(e,t)=>t===1?e:e/t,Zr=(e,t,n,r)=>{let i=t*(1-n);return r.rowAtContentY(e-i)},Qr=({rowCount:e,rowHeight:t,headerHeight:n,viewportHeight:r,scrollTop:i,overscan:a,maxBodyPx:o})=>{let s=e*t,c=Math.min(s,o),l=Math.max(n+s-r,0),u=Math.max(n+c-r,0),d=u>0&&s>c?l/u:1,f=Math.min(Math.max(i,0),u),p=f*d,m=Math.ceil(r/t)+1,h=Math.floor(p/t),g=Math.max(h-a,0),_=Math.min(h+m+a,e),v=d===1?0:Math.floor(g*t/Gr)*Gr,y=f-p+v,b=[],x=new Set;for(let e=g;e<_;e+=1)b.push({index:e,start:n+e*t-v}),x.add(e);return{physicalBodyHeight:c,logicalBodyHeight:s,scaleFactor:d,translateY:y,windowBaseOffsetPx:v,rows:b,rowIndexSet:x}},$r=({headerHeight:e,viewportHeight:t,scrollTop:n,overscan:r},i)=>{let a=i.rowCount,o=i.totalBodyHeight,s=o,c=Math.max(e+o-t,0),l=Math.min(Math.max(n,0),c),u=i.rowAtContentY(l),d=i.rowAtContentY(l+t),f=Math.max(u-r,0),p=Math.min(d+r+1,a),m=[],h=new Set;for(let t=f;t<p;t+=1){let n={index:t,start:e+i.rowTop(t),size:i.cellHeight(t)},r=i.detailHeight(t);r>0&&(n.detailSize=r),m.push(n),h.add(t)}return{physicalBodyHeight:s,logicalBodyHeight:o,scaleFactor:1,translateY:0,windowBaseOffsetPx:0,rows:m,rowIndexSet:h}},q=({rectLeft:e,rectTop:t,clientLeft:n,clientTop:r,clientWidth:i,clientHeight:a})=>{let o=e+n,s=t+r;return{left:o,top:s,right:o+i,bottom:s+a}},ei=(e,t,n,r)=>e<t+r?-1:+(e>n-r),ti=(e,t,n,r)=>{if(t===0)return e;let i=Math.max(r,0),a=e+t*n;return a<0?0:a>i?i:a},ni=(e,t,n)=>{let r=t.x-e.x,i=t.y-e.y;return r*r+i*i>=n*n},ri=({gridRootRef:t,bodyScrollRef:n,scrollContainerRef:r,leftPaneScrollRef:i,rightPaneScrollRef:a,pointerClientRef:o,autoScrollFrameRef:s,uiState:c,dispatch:l,enableRangeSelection:u,enableSorting:d,orderedColumns:f,filteredRowsLength:p,visibleColumnsLength:m,paneLayout:h,leftLeadingWidth:g,centerLeadingWidth:_,rightLeadingWidth:b,headerHeight:x,rowMetrics:S,verticalScaleFactor:C,setHoveredRowIndex:w,setHoveredColumnIndex:T,enableRowHover:E,enableColumnHeaderHover:D,enableRowSelection:O,onGutterRowSelect:k,onGutterRowSelectDrag:j,onCellDoubleClickRef:M})=>{let N=(0,e.useRef)(c.dragState);N.current=c.dragState;let P=(0,e.useRef)(!1),F=(0,e.useRef)(null),ee=(0,e.useRef)(null),te=(0,e.useRef)(`mouse`),I=(0,e.useRef)(null),ne=(0,e.useRef)(null),L=(0,e.useRef)(!1),re=(0,e.useRef)(c.sort);re.current=c.sort;let ie=(0,e.useRef)(f);ie.current=f;let ae=(0,e.useRef)(d);ae.current=d;let oe=c.dragState?.type??null,se=(0,e.useCallback)((e,t)=>{let o=n.current;if(!o||p===0||m===0)return null;let s=o.getBoundingClientRect(),c=Zr(o.scrollTop+t-s.top-x,r.current?.scrollTop??0,C,S),l=null,u=i.current;if(l===null&&u&&h.left.entries.length>0){let t=u.getBoundingClientRect();if(e<t.right){let n=e-t.left-g;l=A(h.left,n)}}let d=a.current;if(l===null&&d&&h.right.entries.length>0){let t=d.getBoundingClientRect();if(e>=t.left){let n=e-t.left-b;l=A(h.right,n)}}if(l===null&&h.center.entries.length>0){let t=o.scrollLeft+e-s.left-_;l=A(h.center,Math.max(t,0))}return l===null?null:{row:c,col:y(l,0,m-1)}},[n,i,a,r,p,m,h,g,_,b,x,S,C]),ce=(0,e.useRef)(se);(0,e.useEffect)(()=>{ce.current=se},[se]);let le=(0,e.useCallback)((e,t)=>{let n=N.current;if(!n||n.type!==`selection`)return;let r=se(e,t);if(r){if(n.selectionKind===`cell`){l(v.updateSelection(r));return}if(n.selectionKind===`row`){l(v.updateRowSelection(r.row));return}n.selectionKind===`col`&&l(v.updateColumnSelection(r.col))}},[l,se]),ue=(0,e.useCallback)((e,n)=>{t.current?.focus({preventScroll:!0});let{target:r}=e;if(r.kind===`cell`){let e=ee.current;if(e&&e.cell.row===r.cell.row&&e.cell.col===r.cell.col&&n-e.time<300){ee.current=null,M.current(r.cell);return}ee.current={cell:r.cell,time:n},l(v.activateCell(r.cell)),u&&(l(v.startSelection(r.cell)),l(v.endSelection()));return}if(ee.current=null,r.kind===`row`){if(O){k(r.rowIndex,{shiftKey:!1});return}l(v.startRowSelection(r.rowIndex)),l(v.endSelection());return}l(v.startColumnSelection(r.colIndex)),l(v.endSelection())},[l,u,O,t,M,k]);(0,e.useEffect)(()=>{let e=e=>{o.current={x:e.clientX,y:e.clientY},oe===`columnResize`&&l(v.updateColumnResize(e.clientX))},t=()=>{P.current=!1,l(v.endSelection()),l(v.endColumnResize())},n=e=>{let n=F.current;n&&(F.current=null,e.pointerId===n.pointerId&&Math.abs(e.clientX-n.x)<10&&Math.abs(e.clientY-n.y)<10&&ue(n,e.timeStamp)),t()},r=()=>{F.current=null,t()};return window.addEventListener(`pointermove`,e),window.addEventListener(`pointerup`,n),window.addEventListener(`pointercancel`,r),()=>{window.removeEventListener(`pointermove`,e),window.removeEventListener(`pointerup`,n),window.removeEventListener(`pointercancel`,r)}},[l,o,oe,ue]),(0,e.useEffect)(()=>{if(oe!==`selection`){s.current!==null&&(cancelAnimationFrame(s.current),s.current=null);return}let e=()=>{let t=r.current,n=o.current;if(!t||!n){s.current=requestAnimationFrame(e);return}if(!L.current){let t=ne.current;if(t&&!ni(t,n,6)){s.current=requestAnimationFrame(e);return}L.current=!0}let i=t.getBoundingClientRect(),a=q({rectLeft:i.left,rectTop:i.top,clientLeft:t.clientLeft,clientTop:t.clientTop,clientWidth:t.clientWidth,clientHeight:t.clientHeight}),c=N.current?.type===`selection`&&N.current.selectionKind===`col`,l=N.current?.type===`selection`&&N.current.selectionKind===`row`,u=c?0:ei(n.y,a.top,a.bottom,24),d=l?0:ei(n.x,a.left,a.right,24),f=ti(t.scrollTop,u,18,t.scrollHeight-t.clientHeight),p=ti(t.scrollLeft,d,18,t.scrollWidth-t.clientWidth);(f!==t.scrollTop||p!==t.scrollLeft)&&(t.scrollTo({top:f,left:p,behavior:`auto`}),le(n.x,n.y)),s.current=requestAnimationFrame(e)};return s.current=requestAnimationFrame(e),()=>{s.current!==null&&(cancelAnimationFrame(s.current),s.current=null)}},[s,r,o,oe,le]);let de=(0,e.useCallback)((e,n)=>{if(n.preventDefault(),n.button===0){if(te.current=n.pointerType,n.pointerType===`touch`){F.current={pointerId:n.pointerId,x:n.clientX,y:n.clientY,target:{kind:`cell`,cell:e}};return}t.current?.focus({preventScroll:!0}),o.current={x:n.clientX,y:n.clientY},ne.current={x:n.clientX,y:n.clientY},L.current=!1,l(v.activateCell(e)),u&&l(v.startSelection(e))}},[l,u,t,o]),fe=(0,e.useCallback)((e,t)=>{if(E&&w(e.row),!u)return;let n=N.current;n?.type!==`selection`||n.selectionKind!==`cell`||(o.current={x:t.clientX,y:t.clientY},l(v.updateSelection(e)))},[l,u,o,w,E]),pe=(0,e.useCallback)(e=>{e.preventDefault()},[]),me=(0,e.useCallback)(()=>{if(I.current!==null)return;let e=()=>{if(!P.current){I.current=null;return}let t=r.current,n=o.current;if(!t||!n){I.current=requestAnimationFrame(e);return}if(!L.current){let t=ne.current;if(t&&!ni(t,n,6)){I.current=requestAnimationFrame(e);return}L.current=!0}let i=t.getBoundingClientRect(),a=q({rectLeft:i.left,rectTop:i.top,clientLeft:t.clientLeft,clientTop:t.clientTop,clientWidth:t.clientWidth,clientHeight:t.clientHeight}),s=ei(n.y,a.top,a.bottom,24),c=ti(t.scrollTop,s,18,t.scrollHeight-t.clientHeight);if(c!==t.scrollTop){t.scrollTo({top:c,left:t.scrollLeft,behavior:`auto`});let e=ce.current(n.x,n.y);e&&j(e.row)}I.current=requestAnimationFrame(e)};I.current=requestAnimationFrame(e)},[r,o,j]);(0,e.useEffect)(()=>()=>{I.current!==null&&(cancelAnimationFrame(I.current),I.current=null)},[]);let he=(0,e.useCallback)((e,n)=>{if(n.preventDefault(),n.button===0){if(te.current=n.pointerType,n.pointerType===`touch`){F.current={pointerId:n.pointerId,x:n.clientX,y:n.clientY,target:{kind:`row`,rowIndex:e}};return}if(t.current?.focus({preventScroll:!0}),o.current={x:n.clientX,y:n.clientY},ne.current={x:n.clientX,y:n.clientY},L.current=!1,O){P.current=!0,k(e,{shiftKey:n.shiftKey}),me();return}l(v.startRowSelection(e))}},[l,t,O,k,me,o]),ge=(0,e.useCallback)((e,t)=>{if(E&&w(e),P.current){o.current={x:t.clientX,y:t.clientY},j(e);return}let n=N.current;n?.type!==`selection`||n.selectionKind!==`row`||(o.current={x:t.clientX,y:t.clientY},l(v.updateRowSelection(e)))},[l,o,w,E,j]),_e=(0,e.useCallback)((e,n)=>{if(n.preventDefault(),n.button===0){if(te.current=n.pointerType,n.pointerType===`touch`){F.current={pointerId:n.pointerId,x:n.clientX,y:n.clientY,target:{kind:`col`,colIndex:e}};return}if(t.current?.focus({preventScroll:!0}),o.current={x:n.clientX,y:n.clientY},ne.current={x:n.clientX,y:n.clientY},L.current=!1,n.shiftKey&&ae.current){let t=ie.current[e];if(t&&!zn(t.key)){let e=re.current,n=e.find(e=>e.columnKey===t.key)?.direction?`desc`:`asc`,r=Ir(e,t.key,n,!0);l(r.length===0?v.clearSort():v.setSort(r))}return}l(v.startColumnSelection(e))}},[l,t,o]),ve=(0,e.useCallback)((e,t)=>{w(null),D&&T(e);let n=N.current;n?.type!==`selection`||n.selectionKind!==`col`||(o.current={x:t.clientX,y:t.clientY},l(v.updateColumnSelection(e)))},[l,o,w,T,D]);return{updateSelectionFromPointer:le,handleCellPointerDown:de,handleCellDoubleClick:(0,e.useCallback)(e=>{te.current!==`touch`&&M.current(e)},[M]),handleCellPointerEnter:fe,handleNativeDragStart:pe,handleRowHeaderPointerDown:he,handleRowHeaderPointerEnter:ge,handleColumnHeaderPointerDown:_e,handleColumnHeaderPointerEnter:ve}},ii=({scrollRef:t,columnVirtualizer:n,columnMeasurements:r,totalScrollWidth:i,physicalBodyHeight:a,headerHeight:o,leftPaneWidth:s,rightPaneWidth:c,centerLeadingWidth:l,activeCellRect:u,activeCell:d,verticalScaleFactor:f})=>{(0,e.useEffect)(()=>{n.measure()},[n,r]),(0,e.useEffect)(()=>{if(!t.current)return;let e=t.current,n=Math.max(i-e.clientWidth,0),r=Math.max(o+a-e.clientHeight,0);e.scrollLeft>n&&(e.scrollLeft=n),e.scrollTop>r&&(e.scrollTop=r)},[t,i,a,o]);let p=(0,e.useRef)(null);(0,e.useEffect)(()=>{let e=p.current,n=e!==null&&d!==null&&e.row===d.row&&e.col===d.col;if(p.current=d,n||!t.current||!u)return;let r=t.current,i=o+u.top,a=i+u.height,m=s+l+u.left,h=m+u.width,g=Yr(r.scrollTop,f),_=r.scrollLeft,v=r.clientHeight,y=r.clientWidth,b=g,x=_,S=g+o,C=g+v;i<S?b=Math.max(i-o,0):a>C&&(b=Math.max(a-v,0));let w=_+s,T=_+y-c;m<w?x=Math.max(m-s,0):h>T&&(x=Math.max(h-y+c,0)),(b!==g||x!==_)&&r.scrollTo({top:Xr(b,f),left:x,behavior:`auto`})},[t,u,d,o,s,c,l,f])};function ai(e){let{targetRect:t,tipWidth:n,tipHeight:r,viewportWidth:i}=e,a=t.left+t.width/2,o=Math.max(8,Math.min(Math.round(a-n/2),i-n-8)),s=Math.round(t.top-r-7);return s<8?{top:Math.round(t.bottom+7),left:o,below:!0}:{top:s,left:o,below:!1}}var oi=e=>e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`);function si(e,t,n){if(n){for(let t of n.classNames)e.classList.remove(t);for(let t of n.styleKeys)e.style.removeProperty(t)}let r=t?.className?t.className.split(/\s+/).filter(Boolean):[];r.length>0&&e.classList.add(...r);let i=[];if(t?.style)for(let[n,r]of Object.entries(t.style)){if(r==null)continue;let t=n.startsWith(`--`)?n:oi(n);e.style.setProperty(t,String(r)),i.push(t)}return{classNames:r,styleKeys:i}}var ci=`data-ssg-tooltip`,li=`[${ci}], [data-ssg-tooltip-overflow]`,ui=350,di=800,fi=0,J=null,pi=null,mi=0,hi=null,gi,_i;function vi(e){_i=si(e,gi,_i)}function yi(){if(J!==null)return J;let e=document.createElement(`div`);return e.className=`ssg-tooltip`,e.setAttribute(`aria-hidden`,`true`),_i=void 0,vi(e),document.body.appendChild(e),J=e,e}function bi(){pi!==null&&(window.clearTimeout(pi),pi=null)}function xi(){bi(),hi!==null&&(mi=Date.now()+di),hi=null,J!==null&&J.classList.remove(`ssg-tooltip--visible`)}function Si(e){let t=e.getAttribute(ci),n=t!==null&&t!==``?t:(e.textContent??``).trim();if(n===``)return;let r=yi();r.classList.toggle(`ssg-theme-dark`,e.closest(`.ssg-theme-dark`)!==null),r.textContent=n,r.style.left=`0px`,r.style.top=`0px`;let i=ai({targetRect:e.getBoundingClientRect(),tipWidth:r.offsetWidth,tipHeight:r.offsetHeight,viewportWidth:window.innerWidth});r.style.left=`${i.left}px`,r.style.top=`${i.top}px`,r.classList.add(`ssg-tooltip--visible`),hi=e}function Ci(e){let t=e.target;if(!(t instanceof Element))return;let n=t.closest(li);if(n===null||n===hi||!n.hasAttribute(ci)&&n.scrollWidth<=n.clientWidth+1)return;let r=hi!==null;xi(),r||Date.now()<mi?Si(n):pi=window.setTimeout(()=>{pi=null,Si(n)},ui)}function wi(e){let t=e.target;if(!(t instanceof Element))return;let n=t.closest(li);if(n===null)return;let r=e.relatedTarget;r instanceof Node&&n.contains(r)||xi()}function Ti(){xi()}function Ei(e){e.key===`Escape`&&xi()}function Di(){window.addEventListener(`pointerover`,Ci,!0),window.addEventListener(`pointerout`,wi,!0),window.addEventListener(`focusin`,Ci,!0),window.addEventListener(`focusout`,wi,!0),window.addEventListener(`pointerdown`,Ti,!0),window.addEventListener(`scroll`,Ti,!0),window.addEventListener(`keydown`,Ei,!0)}function Oi(){window.removeEventListener(`pointerover`,Ci,!0),window.removeEventListener(`pointerout`,wi,!0),window.removeEventListener(`focusin`,Ci,!0),window.removeEventListener(`focusout`,wi,!0),window.removeEventListener(`pointerdown`,Ti,!0),window.removeEventListener(`scroll`,Ti,!0),window.removeEventListener(`keydown`,Ei,!0)}function ki(t){(0,e.useEffect)(()=>{gi=t,J!==null&&vi(J)},[t]),(0,e.useEffect)(()=>(fi+=1,fi===1&&Di(),()=>{--fi,fi===0&&(Oi(),bi(),hi=null,J!==null&&(J.remove(),J=null))}),[])}var Ai=`(prefers-color-scheme: dark)`;function ji(e){if(typeof window.matchMedia!=`function`)return()=>{};let t=window.matchMedia(Ai);return t.addEventListener(`change`,e),()=>{t.removeEventListener(`change`,e)}}function Mi(){return typeof window.matchMedia==`function`?window.matchMedia(Ai).matches:!1}function Ni(){return!1}function Pi(t){let n=(0,e.useSyncExternalStore)(ji,Mi,Ni);return t===`dark`||t===`auto`&&n?`dark`:`light`}function Fi(e,t,n,r){let i=e.find(e=>e.key===t);if(!i)return null;let a=x(i),o={left:[],center:[],right:[]},s=new Map;for(let t of e)o[x(t)].push(t.key),s.set(t.key,t.visible!==!1);let c=o[n].filter(e=>s.get(e)).indexOf(t),l=o[a].indexOf(t);if(l<0)return null;o[a].splice(l,1);let u=r;a===n&&c>=0&&u>c&&--u;let d=o[n].filter(e=>s.get(e));if(u=Math.max(0,Math.min(u,d.length)),a===n&&c>=0&&u===c)return null;let f;return f=u>=d.length?o[n].length:o[n].indexOf(d[u]),o[n].splice(f,0,t),[...o.left,...o.center,...o.right]}var Ii=32,Li=2,Ri=14,zi=12,Bi=`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="5 9 2 12 5 15"/><polyline points="9 5 12 2 15 5"/><polyline points="15 19 12 22 9 19"/><polyline points="19 9 22 12 19 15"/><line x1="2" y1="12" x2="22" y2="12"/><line x1="12" y1="2" x2="12" y2="22"/></svg>`,Vi=`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="17" x2="12" y2="22"/><path d="M5 17h14v-1.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V6h1a2 2 0 0 0 0-4H8a2 2 0 0 0 0 4h1v4.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24Z"/></svg>`,Hi=`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><line x1="4.9" y1="4.9" x2="19.1" y2="19.1"/></svg>`,Ui=`0.5`,Wi=200,Gi=`cubic-bezier(0.2, 0.7, 0.3, 1)`,Ki=()=>typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches,qi=e=>{if(!e)return null;let t=new Map;return e.querySelectorAll(`[data-ssg-col-key]`).forEach(n=>{if(Hn(e,n))return;let r=n.dataset.ssgColKey;r&&!t.has(r)&&t.set(r,n.getBoundingClientRect().left)}),t},Ji=t=>{let n=(0,e.useRef)(t);n.current=t;let r=(0,e.useRef)(null),i=(0,e.useRef)(null),a=(0,e.useRef)(null),o=(0,e.useRef)(null),s=(0,e.useRef)(null),c=(0,e.useRef)(null),l=(0,e.useRef)({x:0,y:0}),u=(0,e.useRef)(null),d=(0,e.useRef)(!1),f=(0,e.useRef)(null),p=(0,e.useRef)(null),m=(0,e.useRef)(null),h=(0,e.useRef)(null),g=(0,e.useRef)(null),_=(0,e.useCallback)(()=>{for(let e of[r,i,a])e.current&&(e.current.style.display=`none`)},[]),v=(0,e.useCallback)(e=>{if(m.current)return;let t=document.createElement(`div`);t.setAttribute(`data-grid-drag-ghost`,``),n.current.scrollContainerRef.current?.closest(`.ssg-theme-dark`)!=null&&t.classList.add(`ssg-theme-dark`),t.style.cssText=[`position:fixed`,`top:0`,`left:0`,`display:inline-flex`,`align-items:center`,`gap:7px`,`padding:7px 12px 7px 10px`,`border-radius:9px`,`border:1px solid var(--ssg-ghost-border)`,`background:var(--ssg-ghost-bg)`,`color:var(--ssg-ghost-text)`,`font-size:12px`,`font-weight:600`,`line-height:1`,`white-space:nowrap`,`box-shadow:var(--ssg-ghost-shadow)`,`pointer-events:none`,`user-select:none`,`z-index:9999`,`will-change:transform`,`transform:translate(-9999px,-9999px)`].join(`;`),si(t,n.current.ghostSlot);let r=document.createElement(`span`);r.style.cssText=`display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex:none`;let i=document.createElement(`span`);i.textContent=e,t.appendChild(r),t.appendChild(i),document.body.appendChild(t),m.current=t,h.current=r,g.current=null},[]),y=(0,e.useCallback)(e=>{let t=m.current;if(!t)return;let{x:n,y:r}=l.current;t.style.transform=`translate(`+(n+Ri)+`px,`+(r+zi)+`px)`;let i=e??`out`;if(g.current===i)return;g.current=i;let a=h.current;i===`out`?(t.style.opacity=Ui,a&&(a.innerHTML=Hi)):(t.style.opacity=`1`,a&&(a.innerHTML=i===`center`?Bi:Vi))},[]),b=(0,e.useCallback)(()=>{let e=m.current;e&&e.parentNode&&e.parentNode.removeChild(e),m.current=null,h.current=null,g.current=null},[]),S=(0,e.useCallback)((e,t)=>{let{paneLayout:r,leftPaneScrollRef:i,rightPaneScrollRef:a,bodyScrollRef:o,scrollContainerRef:s,leftLeadingWidth:c,centerLeadingWidth:l,rightLeadingWidth:u}=n.current,d=s.current;if(d){let n=d.getBoundingClientRect();if(e<n.left||e>n.right||t<n.top||t>n.bottom)return null}let f=i.current,p=a.current;if(f&&r.left.entries.length===0&&e<=f.getBoundingClientRect().left+Ii)return{pane:`left`,slot:0,leftPx:Li};if(f&&r.left.entries.length>0){let t=f.getBoundingClientRect();if(e<t.right){let n=e-t.left-c,i=j(r.left,n);return{pane:`left`,slot:i,leftPx:c+M(r.left,i)}}}if(p&&r.right.entries.length===0&&e>=p.getBoundingClientRect().left-Ii)return{pane:`right`,slot:0,leftPx:-2};if(p&&r.right.entries.length>0){let t=p.getBoundingClientRect();if(e>=t.left){let n=e-t.left-u,i=j(r.right,n);return{pane:`right`,slot:i,leftPx:u+M(r.right,i)}}}let m=o.current;if(m&&r.center.entries.length>0){let t=m.getBoundingClientRect(),n=m.scrollLeft+e-t.left-l,i=j(r.center,Math.max(n,0));return{pane:`center`,slot:i,leftPx:l+M(r.center,i)}}return null},[]),C=(0,e.useCallback)(()=>{let e=S(l.current.x,l.current.y);if(y(e?e.pane:null),!e){s.current=null,_();return}s.current={pane:e.pane,slot:e.slot};let t={left:r.current,center:i.current,right:a.current};for(let n of[`left`,`center`,`right`]){let r=t[n];r&&(n===e.pane?(r.style.left=`${e.leftPx}px`,r.style.display=`block`):r.style.display=`none`)}},[S,_,y]),w=(0,e.useRef)(()=>{});w.current=(0,e.useCallback)(()=>{if(o.current===null){p.current=null;return}let e=n.current.scrollContainerRef.current;if(e){let t=l.current;if(!d.current){let e=u.current;(!e||ni(e,t,6))&&(d.current=!0)}if(d.current){let n=e.getBoundingClientRect(),r=q({rectLeft:n.left,rectTop:n.top,clientLeft:e.clientLeft,clientTop:e.clientTop,clientWidth:e.clientWidth,clientHeight:e.clientHeight}),i=ei(t.x,r.left,r.right,24),a=ti(e.scrollLeft,i,18,e.scrollWidth-e.clientWidth);a!==e.scrollLeft&&e.scrollTo({left:a,behavior:`auto`})}}C(),p.current=requestAnimationFrame(w.current)},[C]);let T=(0,e.useCallback)(e=>{p.current!==null&&(cancelAnimationFrame(p.current),p.current=null),document.body.style.cursor=``,_(),b();let t=o.current,r=s.current;if(o.current=null,s.current=null,!e||!t||!r)return;let{columns:i,applyColumnOrderAndPin:a,scrollContainerRef:l}=n.current,u=Fi(i,t,r.pane,r.slot);if(!u)return;let d=i.find(e=>e.key===t),f=d?x(d):null,m=f!==null&&f===r.pane;c.current=m&&!Ki()?qi(l.current):null,a(u,new Map([[t,r.pane===`center`?void 0:r.pane]]))},[_,b]),E=(0,e.useCallback)(()=>{let e=c.current;if(c.current=null,!e)return;let t=n.current.scrollContainerRef.current;if(!t)return;let r=new Map,i=new Map;t.querySelectorAll(`[data-ssg-col-key]`).forEach(n=>{if(Hn(t,n))return;let a=n.dataset.ssgColKey;if(!a||!e.has(a))return;let o=r.get(a);o?o.push(n):(r.set(a,[n]),i.set(a,n.getBoundingClientRect().left))});let a=[];if(r.forEach((t,n)=>{let r=e.get(n),o=i.get(n);if(r===void 0||o===void 0)return;let s=r-o;if(!(Math.abs(s)<.5))for(let e of t)e.style.transition=`none`,e.style.transform=`translateX(${s}px)`,e.style.willChange=`transform`,a.push(e)}),a.length!==0){t.getBoundingClientRect();for(let e of a)e.style.transition=`transform ${Wi}ms ${Gi}`,e.style.transform=`translateX(0)`;window.setTimeout(()=>{for(let e of a)e.style.transition=``,e.style.transform=``,e.style.willChange=``},280)}},[]),D=(0,e.useCallback)((e,t)=>{if(!n.current.enabled||t.button!==0)return;t.stopPropagation(),t.preventDefault(),o.current=e.key,l.current={x:t.clientX,y:t.clientY},u.current={x:t.clientX,y:t.clientY},d.current=!1,document.body.style.cursor=`grabbing`,v(e.title||e.key);let r=t.currentTarget,i=t.pointerId;try{r.setPointerCapture(i)}catch{}let a=e=>{e.pointerId===i&&(l.current={x:e.clientX,y:e.clientY},C())};function s(e){e.pointerId===i&&(m(),T(!0))}function c(e){e.pointerId===i&&(m(),T(!1))}let m=()=>{window.removeEventListener(`pointermove`,a),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,c),f.current=null;try{r.releasePointerCapture(i)}catch{}};window.addEventListener(`pointermove`,a),window.addEventListener(`pointerup`,s),window.addEventListener(`pointercancel`,c),f.current=m,C(),p.current=requestAnimationFrame(w.current)},[C,T,v]);return(0,e.useEffect)(()=>()=>{f.current?.(),f.current=null,p.current!==null&&(cancelAnimationFrame(p.current),p.current=null),document.body.style.cursor=``;let e=m.current;e&&e.parentNode&&e.parentNode.removeChild(e),m.current=null,h.current=null,g.current=null},[]),{onColumnDragHandlePointerDown:D,leftIndicatorRef:r,centerIndicatorRef:i,rightIndicatorRef:a,applyReorderSettle:E}},Yi=14,Xi=12,Zi=`0.5`,Qi=`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="8 6 12 2 16 6"/><polyline points="16 18 12 22 8 18"/><line x1="12" y1="2" x2="12" y2="22"/></svg>`,$i=`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><line x1="4.9" y1="4.9" x2="19.1" y2="19.1"/></svg>`,ea=200,ta=`cubic-bezier(0.2, 0.7, 0.3, 1)`,na=`data-ssg-row-dragging`,ra=()=>typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches,ia=/translateY\((-?[\d.]+)px\)/,aa=e=>{let t=[];return e.querySelectorAll(`.ssg-body-row[data-row-index]`).forEach(n=>{Hn(e,n)||t.push(n)}),t},oa=t=>{let n=(0,e.useRef)(t);n.current=t;let r=(0,e.useRef)(null),i=(0,e.useRef)(null),a=(0,e.useRef)(null),o=(0,e.useRef)(null),s=(0,e.useRef)(null),c=(0,e.useRef)({x:0,y:0}),l=(0,e.useRef)(null),u=(0,e.useRef)(!1),d=(0,e.useRef)(null),f=(0,e.useRef)(null),p=(0,e.useRef)(null),m=(0,e.useRef)(null),h=(0,e.useRef)(null),g=(0,e.useRef)(null),_=(0,e.useCallback)(()=>{for(let e of[r,i,a])e.current&&(e.current.style.display=`none`)},[]),v=(0,e.useCallback)(e=>{if(m.current)return;let t=document.createElement(`div`);t.setAttribute(`data-grid-drag-ghost`,``),n.current.scrollContainerRef.current?.closest(`.ssg-theme-dark`)!=null&&t.classList.add(`ssg-theme-dark`),t.style.cssText=[`position:fixed`,`top:0`,`left:0`,`display:inline-flex`,`align-items:center`,`gap:7px`,`padding:7px 12px 7px 10px`,`border-radius:9px`,`border:1px solid var(--ssg-ghost-border)`,`background:var(--ssg-ghost-bg)`,`color:var(--ssg-ghost-text)`,`font-size:12px`,`font-weight:600`,`line-height:1`,`white-space:nowrap`,`max-width:280px`,`overflow:hidden`,`text-overflow:ellipsis`,`box-shadow:var(--ssg-ghost-shadow)`,`pointer-events:none`,`user-select:none`,`z-index:9999`,`will-change:transform`,`transform:translate(-9999px,-9999px)`].join(`;`),si(t,n.current.ghostSlot);let r=document.createElement(`span`);r.style.cssText=`display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex:none`;let i=document.createElement(`span`);i.style.cssText=`overflow:hidden;text-overflow:ellipsis`,i.textContent=e,t.appendChild(r),t.appendChild(i),document.body.appendChild(t),m.current=t,h.current=r,g.current=null},[]),y=(0,e.useCallback)(e=>{let t=m.current;if(!t)return;let{x:n,y:r}=c.current;t.style.transform=`translate(`+(n+Yi)+`px,`+(r+Xi)+`px)`;let i=e?`move`:`out`;if(g.current===i)return;g.current=i;let a=h.current;i===`out`?(t.style.opacity=Zi,a&&(a.innerHTML=$i)):(t.style.opacity=`1`,a&&(a.innerHTML=Qi))},[]),b=(0,e.useCallback)(()=>{let e=m.current;e&&e.parentNode&&e.parentNode.removeChild(e),m.current=null,h.current=null,g.current=null},[]),x=(0,e.useCallback)((e,t)=>{let r=n.current.scrollContainerRef.current;!r||e===null||r.querySelectorAll(`.ssg-body-row[data-row-index="${e}"]`).forEach(e=>{Hn(r,e)||(t?e.setAttribute(na,``):e.removeAttribute(na))})},[]),S=(0,e.useCallback)((e,t)=>{let{scrollContainerRef:r,bodyScrollRef:i,rowMetrics:a,headerHeight:o,verticalScaleFactor:s,windowBaseOffsetPx:c}=n.current,l=r.current,u=i.current;if(!l||!u)return null;let d=l.getBoundingClientRect();if(e<d.left||e>d.right||t<d.top||t>d.bottom)return null;let f=u.getBoundingClientRect(),p=jn(u.scrollTop+t-f.top-o-l.scrollTop*(1-s),a);return{slot:p,top:o+Mn(p,a)-c}},[]),C=(0,e.useCallback)(()=>{let e=S(c.current.x,c.current.y);y(e);let t=o.current;if(!e||t===null||An(t,e.slot)===null){s.current=null,_();return}s.current=e.slot;for(let t of[r,i,a]){let n=t.current;n&&(n.style.top=`${e.top}px`,n.style.display=`block`)}},[S,_,y]),w=(0,e.useRef)(()=>{});w.current=(0,e.useCallback)(()=>{if(o.current===null){f.current=null;return}let e=n.current.scrollContainerRef.current;if(e){let t=c.current;if(!u.current){let e=l.current;(!e||ni(e,t,6))&&(u.current=!0)}if(u.current){let n=e.getBoundingClientRect(),r=q({rectLeft:n.left,rectTop:n.top,clientLeft:e.clientLeft,clientTop:e.clientTop,clientWidth:e.clientWidth,clientHeight:e.clientHeight}),i=ei(t.y,r.top,r.bottom,24),a=ti(e.scrollTop,i,18,e.scrollHeight-e.clientHeight);a!==e.scrollTop&&e.scrollTo({top:a,behavior:`auto`})}}C(),f.current=requestAnimationFrame(w.current)},[C]);let T=(0,e.useCallback)(()=>{let e=n.current.scrollContainerRef.current;if(!e)return null;let t=new Map;for(let n of aa(e))t.set(n,n.getBoundingClientRect().top);return t},[]),E=(0,e.useCallback)(e=>{f.current!==null&&(cancelAnimationFrame(f.current),f.current=null),document.body.style.cursor=``,_(),b();let t=o.current,r=s.current;if(x(t,!1),o.current=null,s.current=null,l.current=null,!e||t===null||r===null)return;let i=An(t,r);i!==null&&(p.current=ra()?null:T(),n.current.commitRowMove(t,i))},[_,b,x,T]),D=(0,e.useCallback)(()=>{let e=p.current;if(p.current=null,!e)return;let t=n.current.scrollContainerRef.current;if(!t)return;let r=[],i=new Map;if(e.forEach((e,t)=>{if(!t.isConnected)return;let n=e-t.getBoundingClientRect().top;if(Math.abs(n)<.5)return;let a=ia.exec(t.style.transform);if(!a)return;let o=parseFloat(a[1]);i.set(t,o),t.style.transition=`none`,t.style.transform=`translateY(${o+n}px)`,t.style.willChange=`transform`,r.push(t)}),r.length!==0){t.getBoundingClientRect();for(let e of r)e.style.transition=`transform ${ea}ms ${ta}`,e.style.transform=`translateY(${i.get(e)??0}px)`;window.setTimeout(()=>{for(let e of r)e.style.transition=``,e.style.willChange=``},280)}},[]),O=(0,e.useCallback)((e,t)=>{if(!n.current.enabled||t.button!==0)return;t.stopPropagation(),t.preventDefault(),o.current=e,s.current=null,c.current={x:t.clientX,y:t.clientY},l.current={x:t.clientX,y:t.clientY},u.current=!1,document.body.style.cursor=`grabbing`,v(n.current.getRowDragLabel(e)),x(e,!0);let r=t.currentTarget,i=t.pointerId;try{r.setPointerCapture(i)}catch{}let a=e=>{e.pointerId===i&&(c.current={x:e.clientX,y:e.clientY},C())};function p(e){e.pointerId===i&&(g(),E(!0))}function m(e){e.pointerId===i&&(g(),E(!1))}function h(e){e.key===`Escape`&&(g(),E(!1))}let g=()=>{window.removeEventListener(`pointermove`,a),window.removeEventListener(`pointerup`,p),window.removeEventListener(`pointercancel`,m),window.removeEventListener(`keydown`,h),d.current=null;try{r.releasePointerCapture(i)}catch{}};window.addEventListener(`pointermove`,a),window.addEventListener(`pointerup`,p),window.addEventListener(`pointercancel`,m),window.addEventListener(`keydown`,h),d.current=g,C(),f.current=requestAnimationFrame(w.current)},[C,E,v,x]);return(0,e.useEffect)(()=>()=>{d.current?.(),d.current=null,f.current!==null&&(cancelAnimationFrame(f.current),f.current=null),document.body.style.cursor=``;let e=m.current;e&&e.parentNode&&e.parentNode.removeChild(e),m.current=null,o.current=null},[]),{onRowDragHandlePointerDown:O,leftIndicatorRef:r,centerIndicatorRef:i,rightIndicatorRef:a,applyReorderSettle:D}},sa=e=>e===``?`(空白)`:`"${e}"`,ca=(e,t)=>(e??`include`)===`exclude`?`${t.length} 件を除外`:t.length>0&&t.length<=2?t.map(sa).join(`, `):`${t.length} 件を選択`,la=(e,t)=>{switch(e.kind){case`text`:case`date`:return`"${e.value.trim()}" を含む`;case`select`:return`"${e.value}" に一致`;case`number`:return e.raw;case`set`:return ca(e.mode,e.values);case`numberSet`:case`textSet`:case`dateSet`:{let n=e.condition?e.kind===`numberSet`?z(e.condition):e.kind===`textSet`?Xt(e.condition):on(e.condition,t):null,r=e.set?ca(e.set.mode,e.set.values):null;return n&&r?`${n} かつ ${r}`:n??r??`フィルターなし`}case`custom`:return typeof e.value==`string`&&e.value.trim().length>0?`"${e.value.trim()}"`:`カスタム条件`}},ua=/^\d{4}-\d{2}-\d{2}$/,da=e=>{let t=new Set;for(let n of e)t.add(bt(n.value));let n=[],r=[],i=!1;for(let e of t)e===``?i=!0:ua.test(e)?n.push(e):r.push(e);n.sort(),r.sort();let a=n.map(e=>({label:e,value:e}));for(let e of r)a.push({label:e,value:e});return i&&a.push({label:`(空白)`,value:``}),a},fa=(e,t)=>{let n=new Map,r=[];for(let t of e){if(!ua.test(t.value)){r.push(t);continue}let e=t.value.slice(0,4),i=t.value.slice(0,7),a=n.get(e);a||(a=new Map,n.set(e,a));let o=a.get(i);o||(o=[],a.set(i,o)),o.push(t.value)}let i=[];for(let[e,r]of n){let n=`y:${e}`,a=[];for(let e of r.values())a.push(...e);let o=t.has(n);if(i.push({type:`group`,key:n,label:`${e} 年`,depth:0,leafKeys:a,expanded:o}),o)for(let[e,n]of r){let r=`m:${e}`,a=t.has(r);if(i.push({type:`group`,key:r,label:`${Number(e.slice(5,7))} 月`,depth:1,leafKeys:[...n],expanded:a}),a)for(let e of n)i.push({type:`leaf`,key:e,label:`${Number(e.slice(8,10))} 日`,depth:2,leafKeys:[e],expanded:!1})}}for(let e of r)i.push({type:`leaf`,key:e.value,label:e.label,depth:0,leafKeys:[e.value],expanded:!1});return i},pa=1e3,ma=2e4,ha=e=>{if(typeof e==`number`)return Number.isFinite(e);if(typeof e!=`string`)return!1;let t=e.trim();return!t||/^-?0\d/.test(t)?!1:Number.isFinite(Number(t))},ga=e=>yt(e)!==null,_a=({editorType:e,isServerSide:t=!1,rowCount:n,getRawValueAt:r,sampleLimit:i=pa,scanLimit:a=ma})=>{if(e===`number`)return{filterType:`numberSet`,source:`editor`,conclusive:!0};if(e===`date`)return{filterType:`dateSet`,source:`editor`,conclusive:!0};if(t)return{filterType:`text`,source:`fallback`,conclusive:!0};let o=Math.min(n,a),s=0,c=0,l=0;for(let e=0;e<o&&s<i;e+=1){let t=r(e);if(!ft(t)){if(s+=1,ga(t)){c+=1;continue}ha(t)&&(l+=1)}}return s===0?{filterType:`textSet`,source:`fallback`,conclusive:!1}:c===s?{filterType:`dateSet`,source:`values`,conclusive:!0}:l===s?{filterType:`numberSet`,source:`values`,conclusive:!0}:{filterType:`textSet`,source:`values`,conclusive:!0}},va=(e,t,n,r)=>{if(n===0||r===0)return null;let i=n-1,a=r-1;if(e?.type===`cell`){let t=ye(e.range);return{startRow:y(t.start.row,0,i),endRow:y(t.end.row,0,i),startCol:y(t.start.col,0,a),endCol:y(t.end.col,0,a)}}if(e?.type===`row`){let t=be(e.startRow,e.endRow);return{startRow:y(t.startRow,0,i),endRow:y(t.endRow,0,i),startCol:0,endCol:a}}if(e?.type===`col`){let t=xe(e.startCol,e.endCol);return{startRow:0,endRow:i,startCol:y(t.startCol,0,a),endCol:y(t.endCol,0,a)}}return t?t.row>i||t.col>a?null:{startRow:t.row,endRow:t.row,startCol:t.col,endCol:t.col}:null},ya=({rows:e,resolveSourceIndex:t,columns:n,selection:r,activeCell:i,viewRowCount:a,canWriteCell:o})=>{let s=va(r,i,a,n.length);if(!s)return{nextRows:e,changed:!1};let c=[...e],l=!1;for(let e=s.startRow;e<=s.endRow;e+=1){let r=t(e);if(r===void 0)continue;let i=c[r];if(!i)continue;let a=i,u=!1;for(let e=s.startCol;e<=s.endCol;e+=1){let t=n[e];if(!t||!o(r,e,i,t))continue;let s=Qe(t)(``,i);Object.is(R(a,t),s)||tr(t,i,s).action!==`reject`&&(a=Ue(a,t,s),u=!0)}u&&(c[r]=a,l=!0)}return l?{nextRows:c,changed:l}:{nextRows:e,changed:!1}},ba=({getRow:e,columns:t,selection:n,activeCell:r,viewRowCount:i,canWriteCell:a})=>{let o=va(n,r,i,t.length);if(!o)return[];let s=[];for(let n=o.startRow;n<=o.endRow;n+=1){let r=e(n);if(r)for(let e=o.startCol;e<=o.endCol;e+=1){let i=t[e];if(!i||!a(n,e,r,i))continue;let o=Qe(i)(``,r);Object.is(R(r,i),o)||tr(i,r,o).action!==`reject`&&s.push({viewIndex:n,column:i,value:o})}}return s},xa=e=>{let{mode:t,isServerSide:n,rowCount:r,hasAutoSizedOnMount:i}=e;return t===!1||n||r===0?{shouldRun:!1,nextHasAutoSizedOnMount:i}:t===`onMount`?i?{shouldRun:!1,nextHasAutoSizedOnMount:!0}:{shouldRun:!0,nextHasAutoSizedOnMount:!0}:{shouldRun:!0,nextHasAutoSizedOnMount:i}},Sa=(e,t,n)=>{let r=!1,i=e.map(e=>{let i=n[e.key]??e.width,a=t.get(e.key);if(!a)return i===e.width?e:{...e,width:i};let o=a.pinned??void 0,s=i!==a.width,c=(e.pinned??void 0)!==o,l=e.visible!==!1!=(a.visible!==!1);return(s||c||l)&&(r=!0),{...e,width:a.width,pinned:a.pinned,visible:a.visible}}),a=new Map(i.map(e=>[e.key,e])),o=[];for(let e of t.keys()){let t=a.get(e);t&&o.push(t)}let s=i.filter(e=>!t.has(e.key)),c=[...o,...s],l=c.some((t,n)=>e[n].key!==t.key);return!r&&!l?null:c},Ca=(e,t)=>e.includes(t)||e.includes(`"`)||e.includes(`
|
|
9
|
-
`)||e.includes(`\r`)?`"${e.replace(/"/g,`""`)}"`:e,
|
|
10
|
-
`);return o?`\uFEFF${l}`:l},Ea=({getRow:e,startRow:t,endRow:n,columns:r,isRowIncluded:i})=>{let a=r.map(e=>({key:e.key,title:e.title??e.key})),o=[];for(let a=t;a<n;a+=1){let t=e(a);t&&(i&&!i(t,a)||o.push(r.map(e=>{let n=R(t,e);return{value:n,text:e.formatClipboardValue?e.formatClipboardValue(n,t):String(n??``)}})))}return{columns:a,rows:o}},Da=e=>e===`all`?`view`:e===`visible`?`rendered`:e,Oa=e=>{switch(e.kind){case`set`:return{...e,values:[...e.values]};case`number`:return{...e,parsed:e.parsed?{...e.parsed}:null};case`numberSet`:return{...e,condition:e.condition?{...e.condition}:null,set:e.set?{...e.set,values:[...e.set.values]}:null};case`textSet`:return{...e,condition:e.condition?{...e.condition}:null,set:e.set?{...e.set,values:[...e.set.values]}:null};case`dateSet`:return{...e,condition:e.condition?{...e.condition}:null,set:e.set?{...e.set,values:[...e.set.values]}:null};case`text`:case`date`:case`select`:return{...e};case`custom`:return{...e}}},ka=e=>{let t={};for(let n of Object.keys(e))t[n]=Oa(e[n]);return t},Aa=e=>{let t={key:e.key};return e.visible!==void 0&&(t.visible=e.visible),e.pinned!==void 0&&(t.pinned=e.pinned),t},ja=e=>e.map(e=>{let t={key:e.key};return e.visible!==void 0&&(t.visible=e.visible),e.pinned!==void 0&&(t.pinned=e.pinned),t}),Ma=(e,t,n,r=[],i=2)=>({version:i,columnWidths:{...e},filters:{globalText:t.globalText,columnFilters:ka(t.columnFilters)},sort:n.map(e=>({...e})),columns:r.map(Aa)}),Na=e=>{let t=e&&typeof e==`object`?e:{},n={},r=t.columnWidths;if(r&&typeof r==`object`){let e=r;for(let t of Object.keys(e)){let r=e[t];typeof r==`number`&&Number.isFinite(r)&&(n[t]=r)}}let i=t.filters&&typeof t.filters==`object`?t.filters:{},a=typeof i.globalText==`string`?i.globalText:``,o={},s=i.columnFilters;if(s&&typeof s==`object`){let e=s;for(let t of Object.keys(e)){let n=e[t];n&&typeof n==`object`&&`kind`in n&&(o[t]=Oa(n))}}let c=[],l=t.sort;if(Array.isArray(l)){for(let e of l)if(e&&typeof e==`object`){let t=e;typeof t.columnKey==`string`&&(t.direction===`asc`||t.direction===`desc`)&&c.push({columnKey:t.columnKey,direction:t.direction})}}let u,d=t.columns;if(Array.isArray(d)){let e=[];for(let t of d){if(!t||typeof t!=`object`)continue;let n=t;if(typeof n.key!=`string`)continue;let r={key:n.key};typeof n.visible==`boolean`&&(r.visible=n.visible),(n.pinned===`left`||n.pinned===`right`)&&(r.pinned=n.pinned),e.push(r)}u=e}return{version:2,columnWidths:n,filters:{globalText:a,columnFilters:o},sort:c,columns:u}},Pa=(e,t,n)=>{let r=new Map(e.map(e=>[e.key,e])),i=new Set,a=(e,t)=>{let r=n[e.key],i=typeof r==`number`;if(!t&&!i)return e;let a={...e};return t&&(a.visible=t.visible,a.pinned=t.pinned),i&&(a.width=r),a},o=[];for(let e of t){let t=r.get(e.key);t&&(i.add(e.key),o.push(a(t,e)))}for(let t of e)i.has(t.key)||o.push(a(t,void 0));return S(o)},Fa=(e,t)=>e===null||t===null?e===t:e.mode===`blank`||e.mode===`notBlank`||t.mode===`blank`||t.mode===`notBlank`?e.mode===t.mode:e.mode===t.mode&&e.value===t.value,Ia=(e,t)=>e===null||t===null?e===t:e.mode===t.mode?e.mode===`range`&&t.mode===`range`?e.from===t.from&&e.to===t.to:e.mode===`preset`&&t.mode===`preset`?e.preset===t.preset:e.mode===`blank`||e.mode===`notBlank`?!0:`value`in e&&`value`in t&&e.value===t.value:!1,La=(e,t)=>e===null||t===null?e===t:(e.mode??`include`)===(t.mode??`include`)&&e.values.length===t.values.length&&e.values.every((e,n)=>e===t.values[n]),Ra=(e,t)=>e===null||t===null?e===t:e.mode===`comparison`&&t.mode===`comparison`?e.operator===t.operator&&e.value===t.value:e.mode===`range`&&t.mode===`range`?e.min===t.min&&e.max===t.max:e.mode===`blank`||e.mode===`notBlank`?e.mode===t.mode:!1,za=(e,t)=>{switch(e.kind){case`set`:return t.kind===`set`&&(e.mode??`include`)===(t.mode??`include`)&&e.values.length===t.values.length&&e.values.every((e,n)=>e===t.values[n]);case`number`:return t.kind===`number`&&e.raw===t.raw&&Ra(e.parsed,t.parsed);case`numberSet`:return t.kind===`numberSet`&&Ra(e.condition,t.condition)&&La(e.set,t.set);case`textSet`:return t.kind===`textSet`&&Fa(e.condition,t.condition)&&La(e.set,t.set);case`dateSet`:return t.kind===`dateSet`&&Ia(e.condition,t.condition)&&La(e.set,t.set);case`text`:return t.kind===`text`&&e.value===t.value;case`date`:return t.kind===`date`&&e.value===t.value;case`select`:return t.kind===`select`&&e.value===t.value;case`custom`:return t.kind===`custom`&&Object.is(e.value,t.value)}},Y=(e,t)=>{let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!(r in t)||e[r]!==t[r])return!1;return!0},Ba=(e,t)=>{let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!(r in t)||!za(e[r],t[r]))return!1;return!0},Va=(e,t)=>{if(e===void 0||t===void 0)return e===t;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n].key!==t[n].key||e[n].visible!==t[n].visible||e[n].pinned!==t[n].pinned)return!1;return!0},Ha=(e,t)=>{if(e.version!==t.version||!Y(e.columnWidths,t.columnWidths)||e.filters.globalText!==t.filters.globalText||!Ba(e.filters.columnFilters,t.filters.columnFilters)||e.sort.length!==t.sort.length)return!1;for(let n=0;n<e.sort.length;n+=1)if(e.sort[n].columnKey!==t.sort[n].columnKey||e.sort[n].direction!==t.sort[n].direction)return!1;return!!Va(e.columns,t.columns)},Ua=(e,t,n)=>n?{emit:!1,nextLast:e}:e===null||Ha(e,t)?{emit:!1,nextLast:t}:{emit:!0,nextLast:t},Wa=({rowTop:e,rowHeight:t,headerHeight:n,viewportHeight:r,currentScrollTop:i,align:a,maxScrollTop:o})=>{let s=n+e,c=s+t,l;if(a===`start`)l=s-n;else if(a===`end`)l=c-r;else if(a===`center`)l=(s+c)/2-(n+r)/2;else{let e=i+n,t=i+r;l=s>=e&&c<=t?i:s<e?s-n:c-r}return Math.min(Math.max(l,0),Math.max(o??1/0,0))},Ga=({cellLeft:e,cellWidth:t,leftPaneWidth:n,rightPaneWidth:r,viewportWidth:i,currentScrollLeft:a,align:o,maxScrollLeft:s})=>{let c=e+t,l=i-n-r,u;if(o===`start`)u=e-n;else if(o===`end`)u=c-i+r;else if(o===`center`)u=(e+c)/2-n-l/2;else{let t=a+n,o=a+i-r;u=e>=t&&c<=o?a:e<t?e-n:c-i+r}return Math.min(Math.max(u,0),Math.max(s??1/0,0))},Ka=(e,t)=>{let{heights:n,prefix:r,rowCount:i}=e,a=Math.max(t,0);for(let e=a;e<i;e+=1)r[e+1]=r[e]+n[e]},qa=(e,t,n,r)=>{let i=r??new Map,a=Math.max(e,0),o=new Float64Array(a);for(let e=0;e<a;e+=1){let r=i.get(n(e));o[e]=r===void 0?t:r}let s={rowCount:a,estimate:t,heights:o,prefix:new Float64Array(a+1),measured:i};return Ka(s,0),s},Ja=(e,t,n,r)=>t<0||t>=e.rowCount||(e.measured.set(n,r),e.heights[t]===r)?!1:(e.heights[t]=r,!0),Ya=(e,t,n)=>{if(t<=0||n<=0)return 0;if(n>=e[t])return t-1;let r=0,i=t;for(;r<i;){let t=r+i+1>>1;e[t]<=n?r=t:i=t-1}return Math.min(Math.max(r,0),t-1)},Xa=e=>{let{prefix:t,rowCount:n}=e;return{rowCount:n,rowTop:e=>t[Math.min(Math.max(e,0),n)],rowsHeight:(e,r)=>t[Math.min(Math.max(r+1,0),n)]-t[Math.min(Math.max(e,0),n)],totalBodyHeight:t[n],rowAtContentY:e=>Ya(t,n,e),cellHeight:e=>t[Math.min(Math.max(e+1,0),n)]-t[Math.min(Math.max(e,0),n)],detailHeight:()=>0}},Za=21,Qa=4,$a=41,eo=13,X=600,to=60,no=16,ro=null,io=()=>ro||(typeof document>`u`?null:(ro=document.createElement(`canvas`).getContext(`2d`),ro)),ao=`system-ui, sans-serif`,oo=e=>{let t=ao,n=13,r=`400`;if(e&&typeof window<`u`){let i=window.getComputedStyle(e);i.fontFamily&&(t=i.fontFamily);let a=Number.parseFloat(i.fontSize);Number.isFinite(a)&&a>0&&(n=a),i.fontWeight&&(r=i.fontWeight)}return{cellFont:`${r} ${n}px ${t}`,headerFont:`${X} ${eo}px ${t}`}},so=(e,t,n)=>Math.min(Math.max(e,t),n),co=e=>e>=4352&&e<=4447||e>=11904&&e<=12350||e>=12353&&e<=13311||e>=13312&&e<=19903||e>=19968&&e<=40959||e>=40960&&e<=42191||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65072&&e<=65103||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=127744&&e<=129791||e>=131072&&e<=262141,lo=e=>{let t=0;for(let n of e){let e=n.codePointAt(0)??0;t+=co(e)?2:1}return t},uo=(e,t)=>{let n=R(e,t);return t.valueFormatter?t.valueFormatter({value:n,row:e,column:t}):String(n??``)},fo=e=>{if(!e||typeof document>`u`)return null;let t=document.createElement(`div`);return t.setAttribute(`aria-hidden`,`true`),t.style.cssText=`position:absolute;top:-99999px;left:-99999px;visibility:hidden;pointer-events:none;width:auto;height:auto;contain:layout style;`,e.appendChild(t),t},po=e=>{let t=document.createElement(`div`);return t.className=`ssg-body-cell`,t.style.cssText=`display:inline-block;position:static;top:auto;left:auto;width:auto;height:auto;white-space:nowrap;overflow:visible;`,t.textContent=e,t},mo=e=>e.suppressAutoSize===!0||e.autoHeight===!0;function ho(e){let t=e.map(()=>[]),n=e.map(()=>[]),r=e.map(()=>1/0),i=e.map(()=>0);return{collect:a=>{for(let o=0;o<e.length;o+=1){if(mo(e[o]))continue;let s=e[o].estimateCellWidth;if(s){let t=s(a,e[o]);t>i[o]&&(i[o]=t);continue}let c=String(R(a,e[o])??``);if(c===``)continue;let l=t[o],u=n[o];if(l.length===no&&2*c.length<=r[o])continue;let d=lo(c);if(l.length<no){if(l.push(a),u.push(d),l.length===no){let e=u[0];for(let t=1;t<no;t+=1)u[t]<e&&(e=u[t]);r[o]=e}continue}if(d<=r[o])continue;let f=0;for(let e=1;e<no;e+=1)u[e]<u[f]&&(f=e);l[f]=a,u[f]=d;let p=u[0];for(let e=1;e<no;e+=1)u[e]<p&&(p=u[e]);r[o]=p}},finalize:({gridRoot:n,currentWidths:r})=>{let a=io();if(!a||e.length===0)return{};let{cellFont:o,headerFont:s}=oo(n),c={},l=fo(n);try{let n=null;if(l){let r=[];for(let n=0;n<e.length;n+=1){if(mo(e[n])){r.push([]);continue}if(e[n].estimateCellWidth){r.push([]);continue}let i=t[n],a=[];for(let t=0;t<i.length;t+=1){let r=uo(i[t],e[n]);if(r===``)continue;let o=po(r);l.appendChild(o),a.push(o)}r.push(a)}n=r.map(e=>{let t=0;for(let n=0;n<e.length;n+=1){let r=e[n].offsetWidth;r>t&&(t=r)}return t})}for(let l=0;l<e.length;l+=1){let u=e[l];if(mo(u))continue;a.font=s;let d=u.title||u.key,f=a.measureText(d).width+Qa+$a,p;if(u.estimateCellWidth)p=i[l]>0?i[l]+Za:0;else if(n)p=n[l];else{a.font=o;let e=0,n=t[l];for(let t=0;t<n.length;t+=1){let r=uo(n[t],u);if(r===``)continue;let i=a.measureText(r).width;i>e&&(e=i)}p=e>0?e+Qa+Za:0}let m=Math.ceil(so(Math.max(f,p),u.minWidth??to,u.maxWidth??1/0));r[u.key]!==m&&(c[u.key]=m)}}finally{l&&l.parentNode&&l.parentNode.removeChild(l)}return c}}}function go(){return io()!==null}var _o=()=>new Promise(e=>{if(typeof MessageChannel>`u`){setTimeout(e,0);return}let t=new MessageChannel;t.port1.onmessage=()=>{t.port1.close(),e()},t.port2.postMessage(null)}),vo=10,yo=180,bo=()=>typeof performance<`u`?performance.now():Date.now(),xo=({rowModelRef:t,gridRootRef:n,columnWidthsRef:r,dispatch:i})=>{let[a,o]=(0,e.useState)(!1),s=(0,e.useRef)(0),c=(0,e.useRef)(null),l=()=>{c.current!==null&&(clearTimeout(c.current),c.current=null)};return(0,e.useEffect)(()=>()=>{s.current+=1,l()},[]),{isAutosizing:a,runAutosize:(0,e.useCallback)(async e=>{if(e.length===0||!go())return;let a=s.current+=1;l();let u=t.current,d=u.getRowCount(),f=n.current,p=r.current,m=ho(e);c.current=setTimeout(()=>{s.current===a&&o(!0)},yo);try{let e=0;for(;e<d;){let n=bo();for(;e<d&&bo()-n<vo;){let t=u.getRow(e);t&&m.collect(t),e+=1}if(e<d&&(await _o(),s.current!==a||t.current!==u))return}let n=m.finalize({gridRoot:f,currentWidths:p});Object.keys(n).length>0&&i(v.syncColumnWidths(n))}finally{s.current===a&&(l(),o(!1))}},[r,i,n,t])}},So=()=>{let e=new Set,t=[];return{collect(n){let r=String(n??``);e.has(r)||(e.add(r),t.push({value:r,label:r||`(空白)`}))},finalize(){return t.sort((e,t)=>Pr.compare(e.label,t.label))}}},Co=(e,t)=>{let n=So();for(let r=0;r<e;r+=1)n.collect(t(r));return n.finalize()},wo=10,To=()=>typeof performance<`u`?performance.now():Date.now(),Eo=[],Do=new Set,Oo={status:`idle`,options:Eo,allValues:Do,progress:0},ko={status:`collecting`,options:Eo,allValues:Do,progress:0},Ao=e=>new Set(e.map(e=>e.value)),jo={source:null,rowCount:0,result:Oo},Mo=({column:t,rowCount:n,getRawValueAt:r})=>{let i=t?.filterType??null,a=i===`select`||i===`set`||i===`numberSet`||i===`textSet`||i===`dateSet`,o=t?.filterOptions&&t.filterOptions.length>0?t.filterOptions:null,s=a&&o===null&&n>5e4,c=(0,e.useMemo)(()=>{if(!t||!a)return Oo;if(o){let e=o;return{status:`ready`,options:e,allValues:Ao(e),progress:1}}if(!s){let e=Co(n,r);return{status:`ready`,options:e,allValues:Ao(e),progress:1}}return null},[t,a,o,s,n,r]),[l,u]=(0,e.useState)(jo);(0,e.useEffect)(()=>{if(c!==null)return;let e=r,t=n,i=So(),a=!1;return(async()=>{let n=0;for(;n<t;){let r=To();for(;n<t&&To()-r<wo;)i.collect(e(n)),n+=1;if(n<t){if(await _o(),a)return;u({source:e,rowCount:t,result:{status:`collecting`,options:Eo,allValues:Do,progress:n/t}})}}if(a)return;let r=i.finalize();u({source:e,rowCount:t,result:{status:`ready`,options:r,allValues:Ao(r),progress:1}})})(),()=>{a=!0}},[c,n,r]);let d=l.source===r&&l.rowCount===n?l.result:ko;return c??d},No=10,Po=()=>typeof performance<`u`?performance.now():Date.now(),Fo=({rows:t,baseOrder:n,columns:r,globalText:i,enabled:a})=>{let o=(0,e.useDeferredValue)(i),s=o.trim().toLowerCase(),c=a&&s.length>0,l=c&&t.length>5e4,u=(0,e.useMemo)(()=>c?l?null:{order:Ft(t,n,r,o),status:`ready`,progress:1}:{order:n,status:`idle`,progress:1},[c,l,t,n,r,o]),[d,f]=(0,e.useState)(null),[p,m]=(0,e.useState)(null);(0,e.useEffect)(()=>{if(!l)return;let e=t,i=n,a=r,o=s,c=i.length,u=new Int32Array(c),d=!1;return(async()=>{let t=0,n=0;for(;n<c;){let r=Po();for(;n<c&&Po()-r<No;){let r=i[n];Pt(e[r],a,o)&&(u[t]=r,t+=1),n+=1}if(n<c){if(await _o(),d)return;m({rows:e,baseOrder:i,columns:a,needle:o,progress:n/c})}}if(d)return;let r=t===c?i:u.slice(0,t);f({rows:e,baseOrder:i,columns:a,needle:o,order:r,rowsLength:e.length})})(),()=>{d=!0}},[l,t,n,r,s]);let h;return h=u||(d!==null&&d.rows===t&&d.baseOrder===n&&d.columns===r&&d.needle===s?{order:d.order,status:`ready`,progress:1}:{order:d!==null&&d.rowsLength===t.length?d.order:n,status:`filtering`,progress:p!==null&&p.rows===t&&p.baseOrder===n&&p.columns===r&&p.needle===s?p.progress:0}),h};function Io(e){let t=e.blockSize,n=e.maxBlocks,r=new Map,i=e=>{let t=r.get(e);t!==void 0&&(r.delete(e),r.set(e,t))},a=()=>{for(;r.size>n;){let e=r.keys().next().value;if(e===void 0)break;r.delete(e)}};return{getRow:e=>{if(t<=0||e<0)return;let n=Math.floor(e/t),i=r.get(n);if(i!==void 0)return i[e-n*t]},hasBlock:e=>r.has(e),setBlock:(e,t)=>{r.has(e)&&r.delete(e),r.set(e,t),a()},updateRow:(e,n)=>{if(t<=0||e<0)return!1;let i=Math.floor(e/t),a=r.get(i);if(a===void 0)return!1;let o=e-i*t;if(o>=a.length)return!1;let s=a.slice();return s[o]=n,r.set(i,s),!0},touchBlocks:e=>{for(let t of e)i(t)},clear:()=>{r.clear()},loadedBlockIndexes:()=>Array.from(r.keys())}}function Lo(e,t){return Math.floor(e/t)}function Ro(e,t,n,r){if(n<=0||r<=0)return[];let i=Math.max(0,Math.floor(e)),a=Math.min(r,Math.floor(t));if(a<=i)return[];let o=Lo(i,n),s=Lo(a-1,n),c=[];for(let e=o;e<=s;e+=1)c.push(e);return c}var zo=()=>{let e=new Map,t=1,n=t=>e.get(t)?.row,r=(n,r)=>{let i=t;return t+=1,e.set(n,{row:r,writeId:i}),i},i=(t,n)=>e.get(t)?.writeId===n;return{getRow:n,beginWrite:r,isLatestWrite:i,settleWrite:(t,n)=>{i(t,n)&&e.delete(t)},clear:()=>{e.clear()},pendingCount:()=>e.size}},Bo=(e,t,n)=>{let r=new Map;for(let i of e){let e=r.get(i.viewIndex);if(e===void 0){let a=t(i.viewIndex);if(a===void 0)continue;e={rowKey:n(a,i.viewIndex),rowIndex:i.viewIndex,row:a,previousRow:a,changes:[]},r.set(i.viewIndex,e)}e.changes.push({columnKey:i.column.key,previousValue:R(e.row,i.column),newValue:i.value}),e.row=Ue(e.row,i.column,i.value)}return Array.from(r.values())},Vo=100,Ho=64,Uo=120;function Wo(t){let{dataSource:n,rowKeyGetter:r,query:i,queryKey:a,refreshToken:o,onLoadError:s,onWriteError:c}=t,l=n?.blockSize??Vo,u=n?.maxCachedBlocks??Ho,d=t.debounceMs??Uo,[f]=(0,e.useState)(()=>Io({blockSize:l,maxBlocks:u})),[p,m]=(0,e.useState)(n?.initialRowCount??0),[h,g]=(0,e.useState)(0),_=(0,e.useRef)(p),v=(0,e.useRef)(!1),y=(0,e.useRef)(new Map),b=(0,e.useRef)(new Set),[x,S]=(0,e.useState)(null),C=(0,e.useRef)(s);(0,e.useEffect)(()=>{C.current=s},[s]);let[w]=(0,e.useState)(()=>zo()),T=(0,e.useRef)(0),[E,D]=(0,e.useState)(null),O=(0,e.useRef)(c);(0,e.useEffect)(()=>{O.current=c},[c]);let k=(0,e.useCallback)(e=>w.getRow(e)??f.getRow(e),[f,w]),A=(0,e.useCallback)(()=>{T.current+=1,w.clear(),D(null)},[w]),j=(0,e.useCallback)(()=>{let e=b.current.size;S(t=>e===0?t===null?t:null:{failedBlockCount:e})},[]),M=(0,e.useRef)(null),N=(0,e.useRef)({start:0,end:0}),P=(0,e.useCallback)(e=>{if(n==null||f.hasBlock(e)||y.current.has(e))return;let t=new AbortController;y.current.set(e,t);let r=e*l,a=r+l;n.getRows({startIndex:r,endIndex:a,query:i,signal:t.signal}).then(n=>{t.signal.aborted||y.current.get(e)===t&&(y.current.delete(e),f.setBlock(e,n.rows),b.current.delete(e)&&j(),n.totalRowCount!==_.current&&(_.current=n.totalRowCount,m(n.totalRowCount)),g(e=>e+1))}).catch(n=>{t.signal.aborted||y.current.get(e)===t&&(y.current.delete(e),b.current.add(e),j(),C.current?.(n,{startIndex:r,endIndex:a}))})},[f,l,n,i,j]),F=(0,e.useCallback)(()=>{let{start:e,end:t}=N.current,n=Ro(e,t,l,_.current),r=new Set(n);for(let[e,t]of y.current)r.has(e)||(t.abort(),y.current.delete(e));for(let e of n)P(e)},[l,P]),ee=(0,e.useCallback)(()=>{M.current!==null&&clearTimeout(M.current),M.current=setTimeout(()=>{M.current=null,F()},d)},[d,F]),te=(0,e.useCallback)((e,t)=>{n!=null&&(N.current={start:e,end:t},f.touchBlocks(Ro(e,t,l,_.current)),ee())},[f,l,n,ee]);(0,e.useEffect)(()=>{if(n==null)return;for(let[,e]of y.current)e.abort();y.current.clear(),M.current!==null&&(clearTimeout(M.current),M.current=null),f.clear(),b.current.clear(),j(),A();let e=!v.current;v.current=!0,g(e=>e+1),e?(n.initialRowCount??0)<=0&&P(0):P(0)},[a]);let I=(0,e.useCallback)(()=>{if(n==null)return;for(let[,e]of y.current)e.abort();y.current.clear(),M.current!==null&&(clearTimeout(M.current),M.current=null),f.clear(),b.current.clear(),j(),A(),g(e=>e+1);let{start:e,end:t}=N.current;if(Ro(e,t,l,_.current).length===0){P(0);return}F()},[f,n,l,P,F,j,A]),ne=(0,e.useCallback)(()=>{if(n==null||b.current.size===0)return;let e=Array.from(b.current);b.current.clear(),j();for(let t of e)P(t)},[n,P,j]),L=(0,e.useCallback)(e=>{let t=n?.updateRows;if(t===void 0||e.length===0)return 0;let i=Bo(e,k,r);if(i.length===0)return 0;let a=T.current,o=i.map(e=>({viewIndex:e.rowIndex,row:e.row,writeId:w.beginWrite(e.rowIndex,e.row)}));return g(e=>e+1),t({updates:i}).then(e=>{if(T.current!==a)return;let t=e===void 0?void 0:e.rows;o.forEach((e,n)=>{f.updateRow(e.viewIndex,t?.[n]??e.row),w.settleWrite(e.viewIndex,e.writeId)}),g(e=>e+1)}).catch(e=>{if(T.current===a){for(let e of o)w.settleWrite(e.viewIndex,e.writeId);D({failedRowCount:i.length}),O.current?.(e,{updates:i}),g(e=>e+1)}}),i.length},[f,n,k,w,r]),re=(0,e.useRef)(o);(0,e.useEffect)(()=>{if(n==null||o===void 0){re.current=o;return}if(re.current===void 0){re.current=o;return}re.current!==o&&(re.current=o,I())},[o]),(0,e.useEffect)(()=>{let e=y.current,t=M,n=T;return()=>{for(let[,t]of e)t.abort();e.clear(),t.current!==null&&(clearTimeout(t.current),t.current=null),n.current+=1,w.clear()}},[w]);let ie=(0,e.useCallback)(e=>k(e)!==void 0,[k]);return{rowModel:(0,e.useMemo)(()=>({getRowCount:()=>_.current,getRow:e=>k(e),getSourceIndex:e=>e,getRowKey:e=>{let t=k(e);return t===void 0?e:r(t,e)}}),[k,r,h]),rowCount:p,isRowLoaded:ie,requestRange:te,refresh:I,loadError:x,retryFailedBlocks:ne,canUpdateRows:n?.updateRows!==void 0,applyCellEdits:L,writeError:E}}var Go=e=>{let t={},n=e.globalText.trim();n.length>0&&(t.globalText=n);let r={},i=!1;for(let t of Object.keys(e.columnFilters)){let n=e.columnFilters[t];pt(n)&&(r[t]=n,i=!0)}return i&&(t.columnFilters=r),e.sort.length>0&&(t.sort=e.sort),t},Ko=e=>{let t=e.columnFilters??{},n=Object.keys(t).sort().map(e=>[e,t[e]]),r=e.sort??[];return JSON.stringify({g:e.globalText??``,s:r.map(e=>[e.columnKey,e.direction]),c:n})};function qo({state:e,disabled:t=!1,slot:n}){return(0,r.jsx)(`span`,{"aria-hidden":`true`,className:i(`ssg-row-checkbox`,n?.className),style:n?.style,"data-state":e,"data-disabled":t?`true`:void 0})}var Jo=(0,e.memo)(qo);function Yo({checked:e,readOnly:t,onToggle:n,slot:i}){return(0,r.jsx)(`span`,{role:`checkbox`,"aria-checked":e,"aria-disabled":t||void 0,className:`ssg-cell-checkbox`,onClick:()=>{t||n()},children:(0,r.jsx)(Jo,{slot:i,state:e?`checked`:`unchecked`,disabled:t})})}var Xo=(e,t)=>{let n=t.trim().toLowerCase();return n?e.filter(e=>e.label.toLowerCase().includes(n)):e},Zo=(e,t)=>{if(!t.trim())return{kind:`close`};let n=Xo(e,t);return n.length===0?{kind:`none`}:{kind:`replace`,values:n.map(e=>e.value)}},Qo=(e,t)=>e===null?!0:e.mode===`include`?e.values.has(t):!e.values.has(t),$o=[`日`,`月`,`火`,`水`,`木`,`金`,`土`],es=[`1月`,`2月`,`3月`,`4月`,`5月`,`6月`,`7月`,`8月`,`9月`,`10月`,`11月`,`12月`],ts=(e,t)=>{let n=new Date(e,t,1).getDay(),r=[];for(let i=0;i<42;i+=1){let a=new Date(e,t,1-n+i);r.push({key:vt(a),day:a.getDate(),inCurrentMonth:a.getMonth()===t})}return r},ns=e=>e===``?``:e.replaceAll(`-`,`/`),rs=(e,t)=>`${e}年 ${t+1}月`,is=e=>e-e%12,as=e=>{let t=is(e),n=[];for(let e=0;e<12;e+=1)n.push(t+e);return n};function os({value:t,onCommit:n,ariaLabel:a,inputRef:o,onRequestClose:s,align:c=`left`}){let[l,u]=(0,e.useState)(null),[d,f]=(0,e.useState)(!1),[p,m]=(0,e.useState)(!1),[h,g]=(0,e.useState)(`days`),[_,v]=(0,e.useState)(()=>new Date().getFullYear()),[y,b]=(0,e.useState)(()=>new Date().getMonth()),x=(0,e.useRef)(null),S=l??ns(t),C=yt(new Date)??``,w=()=>{if(l===null)return;let e=l.trim();if(e===``){n(``),u(null),f(!1);return}let t=yt(e);if(t===null){f(!0);return}n(t),u(null),f(!1)},T=()=>{let[e,n]=(t===``?C:t).split(`-`);v(Number(e)),b(Number(n)-1),g(`days`),m(!0)},E=()=>{m(!1)},D=e=>{n(e),u(null),f(!1),E()};(0,e.useEffect)(()=>{if(!p)return;let e=e=>{let t=e.target;t&&x.current?.contains(t)||m(!1)};return document.addEventListener(`pointerdown`,e,!0),()=>{document.removeEventListener(`pointerdown`,e,!0)}},[p]);let O=e=>{if(e.stopPropagation(),e.key===`Enter`){if(e.nativeEvent.isComposing)return;e.preventDefault(),w(),E();return}if(e.key===`Escape`){if(e.preventDefault(),p){E();return}s()}},k=e=>t=>{t.preventDefault(),t.stopPropagation(),e()},A=e=>{if(h===`days`){let t=new Date(_,y+e,1);v(t.getFullYear()),b(t.getMonth());return}if(h===`months`){v(t=>t+e);return}v(t=>t+e*12)},j=()=>{g(e=>e===`days`?`months`:`years`)},M=()=>{g(e=>e===`years`?`months`:`days`)},N=h===`days`?rs(_,y):h===`months`?`${_}年`:`${is(_)} – ${is(_)+11}`;return(0,r.jsxs)(`div`,{ref:x,className:`ssg-dp-root`,children:[(0,r.jsxs)(`div`,{className:i(`ssg-dp-field`,p&&`ssg-dp-field--open`,d&&`ssg-dp-field--invalid`),children:[(0,r.jsx)(`input`,{ref:o,type:`text`,inputMode:`numeric`,value:S,placeholder:`yyyy/mm/dd`,"aria-label":a,"aria-invalid":d||void 0,className:`ssg-dp-input`,onChange:e=>{u(e.target.value),f(!1)},onKeyDown:O,onBlur:w}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-cal-btn`,"aria-label":p?`カレンダーを閉じる`:`カレンダーを開く`,onPointerDown:k(()=>{p?E():T()}),onKeyDown:e=>{e.stopPropagation()},children:(0,r.jsxs)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 16 16`,"aria-hidden":`true`,children:[(0,r.jsx)(`rect`,{x:`1.5`,y:`2.5`,width:`13`,height:`12`,rx:`1.5`,fill:`none`,stroke:`currentColor`}),(0,r.jsx)(`line`,{x1:`1.5`,y1:`6`,x2:`14.5`,y2:`6`,stroke:`currentColor`}),(0,r.jsx)(`line`,{x1:`5`,y1:`1`,x2:`5`,y2:`4`,stroke:`currentColor`}),(0,r.jsx)(`line`,{x1:`11`,y1:`1`,x2:`11`,y2:`4`,stroke:`currentColor`})]})})]}),p&&(0,r.jsxs)(`div`,{className:i(`ssg-dp-panel`,c===`right`&&`ssg-dp-panel--right`),children:[(0,r.jsxs)(`div`,{className:`ssg-dp-nav`,children:[(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-nav-btn`,"aria-label":`前へ`,onPointerDown:k(()=>A(-1)),children:`‹`}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-nav-title`,disabled:h===`years`,"aria-label":`表示単位を切り替える`,onPointerDown:k(j),children:N}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-nav-btn`,"aria-label":`次へ`,onPointerDown:k(()=>A(1)),children:`›`})]}),h===`days`&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`div`,{className:`ssg-dp-dow`,children:$o.map((e,t)=>(0,r.jsx)(`span`,{className:i(t===0&&`ssg-dp-dow--sun`,t===6&&`ssg-dp-dow--sat`),children:e},e))}),(0,r.jsx)(`div`,{className:`ssg-dp-days`,children:ts(_,y).map(e=>(0,r.jsx)(`button`,{type:`button`,className:i(`ssg-dp-day`,!e.inCurrentMonth&&`ssg-dp-day--out`,e.key===C&&`ssg-dp-day--today`,e.key===t&&`ssg-dp-day--selected`),"aria-label":e.key,onPointerDown:k(()=>D(e.key)),children:e.day},e.key))})]}),h===`months`&&(0,r.jsx)(`div`,{className:`ssg-dp-grid`,children:es.map((e,t)=>(0,r.jsx)(`button`,{type:`button`,className:i(`ssg-dp-cell`,t===y&&`ssg-dp-cell--selected`),onPointerDown:k(()=>{b(t),g(`days`)}),children:e},e))}),h===`years`&&(0,r.jsx)(`div`,{className:`ssg-dp-grid`,children:as(_).map(e=>(0,r.jsx)(`button`,{type:`button`,className:i(`ssg-dp-cell`,e===_&&`ssg-dp-cell--selected`),onPointerDown:k(()=>{v(e),g(`months`)}),children:e},e))}),(0,r.jsxs)(`div`,{className:`ssg-dp-foot`,children:[h!==`days`&&(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-foot-btn`,onPointerDown:k(M),children:`← 戻る`}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-foot-btn`,onPointerDown:k(()=>D(C)),children:`今日`}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-foot-btn ssg-dp-foot-btn--muted`,onPointerDown:k(()=>D(``)),children:`クリア`})]})]})]})}var ss=24;function cs({options:t,setSelection:n,searchInputRef:i,onValueToggle:a,onSelectAllChange:o,onReplaceSelection:s,onRequestClose:c,isServerSide:l,selectAllUsesExplicitScope:u=!1}){let[d,f]=(0,e.useState)(``),p=(0,e.useDeferredValue)(d),m=(0,e.useMemo)(()=>Xo(t,p),[t,p]),h=p.trim().length>0,g=(0,e.useRef)(null),v=_({count:m.length,getScrollElement:()=>g.current,estimateSize:()=>ss,overscan:10}),y=(0,e.useMemo)(()=>{if(n===null)return m.length;let e=0;for(let t of m)Qo(n,t.value)&&(e+=1);return e},[n,m]),b=m.length>0&&y===m.length,x=y>0&&!b,S=(0,e.useMemo)(()=>new Set(t.map(e=>e.value)),[t]),C=(0,e.useMemo)(()=>{if(n===null)return t.length;let e=0;for(let t of n.values)S.has(t)&&(e+=1);return n.mode===`include`?e:t.length-e},[n,S,t.length]);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:i,type:`text`,value:d,onChange:e=>f(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Escape`&&(e.preventDefault(),c()),e.key===`Enter`){if(e.nativeEvent.isComposing)return;e.preventDefault();let n=Zo(t,d);if(n.kind===`none`)return;n.kind===`replace`&&s(n.values),c()}},placeholder:`検索(Enter で確定)`,className:`ssg-filter-input`}),(0,r.jsxs)(`label`,{className:`ssg-filter-selectall`,children:[(0,r.jsx)(`input`,{type:`checkbox`,checked:b,ref:e=>{e&&(e.indeterminate=x)},onChange:()=>{o(h||u?m.map(e=>e.value):`all`,!b)}}),(0,r.jsx)(`span`,{className:`ssg-filter-selectall-label`,children:h?`(検索結果をすべて選択)`:`(すべて選択)`})]}),(0,r.jsx)(`div`,{ref:g,className:`ssg-filter-list`,children:m.length===0?(0,r.jsx)(`div`,{className:`ssg-filter-empty`,children:t.length===0?l?`候補が未指定です(serverSide では列に filterOptions などの候補供給が必要)`:`候補がありません`:`一致する候補がありません`}):(0,r.jsx)(`div`,{className:`ssg-filter-virt`,style:{height:v.getTotalSize()},children:v.getVirtualItems().map(e=>{let t=m[e.index];if(!t)return null;let i=Qo(n,t.value);return(0,r.jsxs)(`label`,{className:`ssg-filter-option`,style:{transform:`translateY(${e.start}px)`,height:e.size},children:[(0,r.jsx)(`input`,{type:`checkbox`,checked:i,onChange:()=>a(t.value)}),(0,r.jsx)(`span`,{className:`ssg-filter-option-label`,children:t.label})]},t.value)})})}),(0,r.jsxs)(`div`,{className:`ssg-filter-meta`,children:[`選択中: `,C,` / `,t.length,` 件`,h?`(表示中 ${m.length} 件)`:``]})]})}function ls({draft:e,valueInputRef:t,onDraftChange:n,onKeyDown:i}){let a=zt(e.operator);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`select`,{value:e.operator,onChange:t=>n({...e,operator:t.target.value}),onKeyDown:i,className:`ssg-filter-select`,"aria-label":`条件の演算子`,children:Rt.map(e=>(0,r.jsx)(`option`,{value:e.value,children:e.label},e.value))}),a>0?(0,r.jsxs)(`div`,{className:`ssg-filter-cond-values`,children:[(0,r.jsx)(`input`,{ref:t,type:`text`,inputMode:`decimal`,value:e.value1,onChange:t=>n({...e,value1:t.target.value}),onKeyDown:i,placeholder:a===2?`下限`:`値`,className:`ssg-filter-input`,"aria-label":a===2?`下限`:`条件の値`}),a===2&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`span`,{className:`ssg-filter-cond-tilde`,children:`〜`}),(0,r.jsx)(`input`,{type:`text`,inputMode:`decimal`,value:e.value2,onChange:t=>n({...e,value2:t.target.value}),onKeyDown:i,placeholder:`上限`,className:`ssg-filter-input`,"aria-label":`上限`})]})]}):(0,r.jsx)(`div`,{className:`ssg-filter-meta`,children:`この演算子は値入力を使いません`})]})}function Z({draft:e,valueInputRef:t,onDraftChange:n,onKeyDown:i}){let a=Jt(e.operator);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`select`,{value:e.operator,onChange:t=>n({...e,operator:t.target.value}),onKeyDown:i,className:`ssg-filter-select`,"aria-label":`条件の演算子`,children:qt.map(e=>(0,r.jsx)(`option`,{value:e.value,children:e.label},e.value))}),a>0?(0,r.jsx)(`div`,{className:`ssg-filter-cond-values`,children:(0,r.jsx)(`input`,{ref:t,type:`text`,value:e.value,onChange:t=>n({...e,value:t.target.value}),onKeyDown:i,placeholder:`値`,className:`ssg-filter-input`,"aria-label":`条件の値`})}):(0,r.jsx)(`div`,{className:`ssg-filter-meta`,children:`この演算子は値入力を使いません`})]})}function us({draft:e,valueInputRef:t,onDraftChange:n,onKeyDown:a,presets:o,renderDateInput:s,onRequestClose:c}){let l=e.preset===null?tn(e.operator):0,u=(t,r)=>{n({...e,[t]:rn(r),preset:null})};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`select`,{value:e.operator,onChange:t=>n({...e,operator:t.target.value,preset:null}),onKeyDown:a,className:`ssg-filter-select`,"aria-label":`条件の演算子`,children:en.map(e=>(0,r.jsx)(`option`,{value:e.value,children:e.label},e.value))}),l>0?(0,r.jsxs)(`div`,{className:`ssg-filter-cond-values`,children:[s?s({value:e.value1,onChange:e=>u(`value1`,e),ariaLabel:l===2?`開始日`:`条件の日付`,slot:l===2?`from`:`single`}):(0,r.jsx)(os,{value:e.value1,onCommit:t=>n({...e,value1:t,preset:null}),ariaLabel:l===2?`開始日`:`条件の日付`,inputRef:t,onRequestClose:c}),l===2&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`span`,{className:`ssg-filter-cond-tilde`,children:`〜`}),s?s({value:e.value2,onChange:e=>u(`value2`,e),ariaLabel:`終了日`,slot:`to`}):(0,r.jsx)(os,{value:e.value2,onCommit:t=>n({...e,value2:t,preset:null}),ariaLabel:`終了日`,onRequestClose:c,align:`right`})]})]}):e.preset===null?(0,r.jsx)(`div`,{className:`ssg-filter-meta`,children:`この演算子は値入力を使いません`}):null,o.length>0&&(0,r.jsx)(`div`,{className:`ssg-filter-presets`,children:o.map(t=>(0,r.jsx)(`button`,{type:`button`,onPointerDown:r=>{r.preventDefault(),r.stopPropagation(),n({...e,preset:e.preset===t.id?null:t.id})},onKeyDown:e=>{e.stopPropagation()},className:i(`ssg-filter-preset-chip`,e.preset===t.id&&`ssg-filter-preset-chip--active`),children:t.label},t.id))})]})}function ds({options:t,setSelection:n,searchInputRef:i,onValueToggle:a,onSelectAllChange:o,onReplaceSelection:s,onRequestClose:c,isServerSide:l}){let[u,d]=(0,e.useState)(``),f=(0,e.useDeferredValue)(u),[p,m]=(0,e.useState)(()=>new Set),h=f.trim().length>0,g=(0,e.useMemo)(()=>Xo(t,f),[t,f]),v=(0,e.useMemo)(()=>fa(t,p),[t,p]),y=(0,e.useRef)(null),b=h?g.length:v.length,x=_({count:b,getScrollElement:()=>y.current,estimateSize:()=>ss,overscan:10}),S=(0,e.useMemo)(()=>(h?g:t).map(e=>e.value),[h,g,t]),C=(0,e.useMemo)(()=>{let e=0;for(let t of S)Qo(n,t)&&(e+=1);return e},[S,n]),w=S.length>0&&C===S.length,T=C>0&&!w,E=(0,e.useMemo)(()=>new Set(t.map(e=>e.value)),[t]),D=(0,e.useMemo)(()=>{if(n===null)return t.length;let e=0;for(let t of n.values)E.has(t)&&(e+=1);return n.mode===`include`?e:t.length-e},[n,E,t.length]),O=e=>{m(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},k=e=>{let t=0;for(let r of e)Qo(n,r)&&(t+=1);return t},A=e=>{let t=k(e.leafKeys),n=e.leafKeys.length>0&&t===e.leafKeys.length,i=t>0&&!n;return(0,r.jsxs)(r.Fragment,{children:[e.type===`group`?(0,r.jsx)(`button`,{type:`button`,onPointerDown:t=>{t.preventDefault(),t.stopPropagation(),O(e.key)},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-tree-toggle`,"aria-label":e.expanded?`折りたたむ`:`展開する`,children:e.expanded?`▾`:`▸`}):(0,r.jsx)(`span`,{className:`ssg-filter-tree-toggle ssg-filter-tree-toggle--placeholder`}),(0,r.jsx)(`input`,{type:`checkbox`,checked:n,ref:e=>{e&&(e.indeterminate=i)},onChange:()=>{if(e.type===`leaf`){a(e.key);return}o(e.leafKeys,!n)}}),(0,r.jsx)(`span`,{className:`ssg-filter-option-label`,children:e.label})]})};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:i,type:`text`,value:u,onChange:e=>d(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Escape`&&(e.preventDefault(),c()),e.key===`Enter`){if(e.nativeEvent.isComposing)return;e.preventDefault();let n=Zo(t,u);if(n.kind===`none`)return;n.kind===`replace`&&s(n.values),c()}},placeholder:`検索(Enter で確定)`,className:`ssg-filter-input`}),(0,r.jsxs)(`label`,{className:`ssg-filter-selectall`,children:[(0,r.jsx)(`input`,{type:`checkbox`,checked:w,ref:e=>{e&&(e.indeterminate=T)},onChange:()=>o(S,!w)}),(0,r.jsx)(`span`,{className:`ssg-filter-selectall-label`,children:h?`(検索結果をすべて選択)`:`(すべて選択)`})]}),(0,r.jsx)(`div`,{ref:y,className:`ssg-filter-list`,children:b===0?(0,r.jsx)(`div`,{className:`ssg-filter-empty`,children:t.length===0?l?`候補が未指定です(serverSide では列に filterOptions などの候補供給が必要)`:`候補がありません`:`一致する候補がありません`}):(0,r.jsx)(`div`,{className:`ssg-filter-virt`,style:{height:x.getTotalSize()},children:x.getVirtualItems().map(e=>{if(h){let t=g[e.index];return t?(0,r.jsxs)(`label`,{className:`ssg-filter-option`,style:{transform:`translateY(${e.start}px)`,height:e.size},children:[(0,r.jsx)(`input`,{type:`checkbox`,checked:Qo(n,t.value),onChange:()=>a(t.value)}),(0,r.jsx)(`span`,{className:`ssg-filter-option-label`,children:t.label})]},t.value):null}let t=v[e.index];return t?(0,r.jsx)(`div`,{className:`ssg-filter-option`,style:{transform:`translateY(${e.start}px)`,height:e.size,paddingLeft:8+t.depth*16},children:A(t)},t.key):null})})}),(0,r.jsxs)(`div`,{className:`ssg-filter-meta`,children:[`選択中: `,D,` / `,t.length,` 件`,h?`(表示中 ${g.length} 件)`:``]})]})}function fs({conditionEditor:e,conditionActive:t,onConditionClear:n,options:i,setSelection:a,onSelectionClear:o,summaryText:s,children:c}){return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`div`,{className:`ssg-filter-sec-head`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-sec-label`,children:`条件`}),(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),n()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-sec-clear`,disabled:!t,children:`クリア`})]}),e,(0,r.jsx)(`div`,{className:`ssg-filter-sep`}),(0,r.jsxs)(`div`,{className:`ssg-filter-sec-head`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-sec-label`,children:`値`}),(0,r.jsx)(`span`,{className:`ssg-filter-sec-meta`,children:t?`一致 ${i.length} 件`:`全 ${i.length} 件`}),(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),o()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-sec-clear`,disabled:a===null,children:`クリア`})]}),c,(0,r.jsxs)(`div`,{className:`ssg-filter-summary`,children:[`🔽 `,s]})]})}function ps({isOpen:n,themeClassName:a,popoverSlot:o,title:s,filterType:c,draftValue:l,numberConditionDraft:u,onNumberConditionDraftChange:d,textConditionDraft:f,onTextConditionDraftChange:p,dateConditionDraft:m,onDateConditionDraftChange:h,datePresets:g,renderDateInput:_,onComboConditionClear:v,onComboSelectionClear:y,comboSummaryText:b,currentValueText:x,layout:S,selectOptions:C,optionsStatus:w,optionsProgress:T,setSelection:E,popoverRef:D,textInputRef:O,selectRef:k,onRequestClose:A,onDraftChange:j,onApply:M,onClear:N,onSetValueToggle:P,onSetSelectAllChange:F,onSetClear:ee,onSetReplaceSelection:te,isServerSide:I=!1}){let ne=(0,e.useRef)(null),[L]=(0,e.useState)(()=>new Date);if(typeof document>`u`||!n||!S)return null;let re={top:S.top,left:S.left,width:S.width,maxHeight:S.maxHeight},ie=e=>{e.stopPropagation()},ae=e=>{e.stopPropagation()},oe=c===`set`,se=c===`numberSet`,ce=c===`textSet`,le=c===`dateSet`,ue=se||ce||le,de=oe||ue,fe=u??Lt,pe=f??Kt,me=m??$t,he=g??at(void 0),ge=se?Ht(fe):null,_e=ce?Yt(pe):null,ve=le?an(me):null,ye=ge!==null||_e!==null||ve!==null,be=se?B(C,ge):ce?Qt(C,_e):le?cn(C,ve,L,he):C,xe=e=>{if(e.stopPropagation(),e.key===`Enter`){e.preventDefault(),M();return}e.key===`Escape`&&(e.preventDefault(),A())};return(0,t.createPortal)((0,r.jsxs)(`div`,{ref:D,onPointerDown:ae,onKeyDown:ie,onPasteCapture:e=>{e.stopPropagation()},className:i(`ssg-filter-popover`,a,o?.className),style:{...o?.style,...re},children:[(0,r.jsxs)(`div`,{className:`ssg-filter-title`,children:[`列フィルター: `,s]}),(de||c===`select`)&&w===`collecting`?(0,r.jsxs)(`div`,{className:`ssg-filter-collecting`,children:[`候補を収集中… `,Math.round(T*100),`%`]}):ue?(0,r.jsx)(fs,{conditionEditor:se?(0,r.jsx)(ls,{draft:fe,valueInputRef:O,onDraftChange:d,onKeyDown:xe}):ce?(0,r.jsx)(Z,{draft:pe,valueInputRef:O,onDraftChange:p,onKeyDown:xe}):(0,r.jsx)(us,{draft:me,valueInputRef:O,onDraftChange:h,onKeyDown:xe,presets:he,renderDateInput:_,onRequestClose:A}),conditionActive:ye,onConditionClear:v,options:be,setSelection:E,onSelectionClear:y,summaryText:b,children:le?(0,r.jsx)(ds,{options:be,setSelection:E,searchInputRef:ne,onValueToggle:P,onSelectAllChange:F,onReplaceSelection:te,onRequestClose:A,isServerSide:I}):(0,r.jsx)(cs,{options:be,setSelection:E,searchInputRef:ne,onValueToggle:P,onSelectAllChange:F,onReplaceSelection:te,onRequestClose:A,isServerSide:I,selectAllUsesExplicitScope:!0})}):oe?(0,r.jsx)(cs,{options:C,setSelection:E,searchInputRef:O,onValueToggle:P,onSelectAllChange:F,onReplaceSelection:te,onRequestClose:A,isServerSide:I}):c===`number`?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`div`,{className:`ssg-filter-hint`,children:`フィルター種別: number`}),(0,r.jsx)(ls,{draft:fe,valueInputRef:O,onDraftChange:d,onKeyDown:xe})]}):c===`select`?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`div`,{className:`ssg-filter-hint`,children:`フィルター種別: select`}),(0,r.jsxs)(`select`,{ref:k,value:l,onChange:e=>j(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Enter`){e.preventDefault(),M();return}e.key===`Escape`&&(e.preventDefault(),A())},className:`ssg-filter-select`,children:[(0,r.jsx)(`option`,{value:``,children:`(すべて)`}),C.map(e=>(0,r.jsx)(`option`,{value:e.value,children:e.label},`${s}-${e.value}`))]}),(0,r.jsxs)(`div`,{className:`ssg-filter-meta`,children:[`候補数: `,C.length]})]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`div`,{className:`ssg-filter-hint`,children:[`フィルター種別: `,c]}),(0,r.jsx)(`input`,{ref:O,type:`text`,value:l,onChange:e=>j(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Enter`){e.preventDefault(),M();return}e.key===`Escape`&&(e.preventDefault(),A())},placeholder:`部分一致で絞り込み`,className:`ssg-filter-input`}),(0,r.jsx)(`div`,{className:`ssg-filter-meta ssg-filter-meta--ellipsis`,children:`部分一致検索です`})]}),!de&&(0,r.jsxs)(`div`,{className:`ssg-filter-meta ssg-filter-meta--ellipsis`,children:[`現在値: `,x]}),(0,r.jsx)(`div`,{className:`ssg-filter-footer`,children:de?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),ee()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-secondary`,children:`クリア`}),(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),A()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-primary`,children:`閉じる`})]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),N()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-secondary`,children:`クリア`}),(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),M()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-primary`,children:`適用`})]})})]}),document.body)}function ms({context:e,showCounts:t=!0,slot:n}){let{derivedSummary:a}=e;return(0,r.jsx)(`div`,{className:i(`ssg-bar--bottom`,n?.className),style:n?.style,children:(0,r.jsxs)(`div`,{className:`ssg-bar-container`,children:[t?(0,r.jsxs)(`div`,{className:`ssg-bar-group`,children:[(0,r.jsx)(`span`,{className:`ssg-bar-chip`,children:a.rowSummaryText}),(0,r.jsx)(`span`,{className:`ssg-bar-chip`,children:a.columnSummaryText})]}):null,(0,r.jsxs)(`div`,{className:`ssg-bar-group`,children:[(0,r.jsxs)(`span`,{className:`ssg-bar-chip`,children:[`Active: `,a.activeCellLabel]}),(0,r.jsxs)(`span`,{className:`ssg-bar-chip`,children:[`Selection: `,a.selectionLabel]}),(0,r.jsx)(`span`,{className:`ssg-bar-chip`,children:a.selectionStatsText}),(0,r.jsxs)(`span`,{className:`ssg-bar-chip`,children:[`Cols: `,a.selectionStats.selectedColumnCount]})]})]})})}var hs=(0,r.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,r.jsx)(`circle`,{cx:`7`,cy:`7`,r:`4.5`}),(0,r.jsx)(`line`,{x1:`10.6`,y1:`10.6`,x2:`14.5`,y2:`14.5`})]}),gs=(0,r.jsxs)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,"aria-hidden":`true`,children:[(0,r.jsx)(`line`,{x1:`4`,y1:`4`,x2:`12`,y2:`12`}),(0,r.jsx)(`line`,{x1:`12`,y1:`4`,x2:`4`,y2:`12`})]});function _s({context:e,showSummary:t=!0,showFilter:n=!0,showCounts:a=!0,globalFilterPlaceholder:o=`グローバルフィルター`,globalFilterIcon:s,onFilterSummaryClick:c,slot:l}){let{derivedSummary:u}=e,d=s===void 0?hs:s,f=e.globalFilterText.trim().length>0;return(0,r.jsx)(`div`,{className:i(`ssg-bar--top`,l?.className),style:l?.style,children:(0,r.jsxs)(`div`,{className:`ssg-bar-container`,children:[t?(0,r.jsxs)(`div`,{className:`ssg-bar-group ssg-bar-leading`,children:[(0,r.jsx)(`span`,{className:`ssg-bar-title`,children:`Toolbar`}),a?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.rowSummaryText}),(0,r.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.columnSummaryText})]}):null,c?(0,r.jsx)(`button`,{type:`button`,className:`ssg-bar-chip ssg-bar-chip--emphasis ssg-bar-chip--action`,onPointerDown:e=>{e.stopPropagation()},onClick:c,"data-ssg-tooltip":`フィルター管理パネルを開閉`,"aria-label":`フィルター管理パネルを開閉`,children:u.filterSummaryText}):(0,r.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.filterSummaryText}),(0,r.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.sortSummaryText})]}):null,n?(0,r.jsxs)(`div`,{className:`ssg-bar-input-group`,children:[d?(0,r.jsx)(`span`,{className:`ssg-bar-input-icon`,"aria-hidden":`true`,children:d}):null,(0,r.jsx)(`input`,{type:`text`,value:e.globalFilterText,onChange:t=>e.setGlobalFilterText(t.target.value),placeholder:o,className:`ssg-bar-input`}),f?(0,r.jsx)(`button`,{type:`button`,onClick:()=>e.setGlobalFilterText(``),className:`ssg-bar-input-clear`,"aria-label":`フィルターをクリア`,"data-ssg-tooltip":`クリア`,children:gs}):null]}):null]})})}var vs=e=>e.enabled&&!e.isAutoHeightCell&&!e.hasRenderCell;function ys({pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:a,rowKey:s,sourceRowIndex:c,row:l,top:u,renderEntries:d,rowHeight:f,autoHeight:p,showCellOverflowTooltip:m,showValidationMarks:h,autoHeightMinHeight:g,rowHeaderCellStyle:_,isRowHovered:v,isWholeGridSelected:y,isRowSelected:b,showRowCheckbox:x,isRowChecked:S,activeColInRow:C,editingColInRow:w,selectedColStart:T,selectedColEnd:E,readOnly:D,canEditCell:O,onRowHeaderPointerDown:k,onRowHeaderPointerEnter:A,onRowHeaderPointerLeave:j,onCellPointerDown:M,onCellPointerEnter:N,onCellDoubleClick:P,renderCellContent:F,rowClassName:ee,rowStyle:te,slots:I}){return(0,r.jsxs)(`div`,{"data-pane":e,"data-row-index":a,className:i(`ssg-body-row`,S&&`ssg-body-row--checked`,ee,I?.bodyRow?.className),style:{...I?.bodyRow?.style,...te,height:f,transform:`translateY(${u}px)`},children:[t&&(0,r.jsx)(`div`,{role:x?`checkbox`:void 0,"aria-checked":x?S:void 0,onPointerDown:e=>k(a,e),onPointerEnter:e=>A(a,e),onPointerLeave:()=>j(a),className:i(`ssg-header-cell`,`ssg-row-header-cell`,x&&`ssg-row-header-cell--checkbox`,(y||b)&&`ssg-header-cell--selected`,v&&`ssg-header-cell--hovered`,ee,I?.rowHeaderCell?.className),style:{...I?.rowHeaderCell?.style,...te,..._,height:f},children:x?(0,r.jsx)(Jo,{slot:I?.checkbox,state:S?`checked`:`unchecked`}):a+1}),d.map(e=>{if(!e)return null;let t=e.logicalIndex,u=e.column,d=n+e.paneLocalStart,_=e.paneLocalSize,y=t===C,x=t===w,S=b||T>=0&&t>=T&&t<=E,k=!He({readOnly:D,canEditCell:O},a,t,l,u),A=p&&u.autoHeight===!0,j,ne=u.cellClassName;ne&&(j=typeof ne==`function`?ne({row:l,rowIndex:a,sourceRowIndex:c,rowKey:s,colIndex:t,value:R(l,u),column:u,isActive:y,isSelected:S,isEditing:x,readOnly:k}):ne);let L=o(j),re=h&&u.validate?er(u,l,R(l,u)):null,ie=i(`ssg-body-cell`,u.align===`center`&&`ssg-body-cell--align-center`,u.align===`right`&&`ssg-body-cell--align-right`,A&&`ssg-body-cell--autoheight`,k&&!S&&`ssg-body-cell--readonly`,re!==null&&`ssg-body-cell--invalid`,v&&`ssg-body-cell--row-hovered`,ee,L.className,I?.bodyCell?.className),ae={};u.wordBreak!==void 0&&(ae.wordBreak=u.wordBreak),u.lineBreak!==void 0&&(ae.lineBreak=u.lineBreak);let oe=vs({enabled:m,isAutoHeightCell:A,hasRenderCell:u.renderCell!==void 0});return(0,r.jsx)(`div`,{"data-ssg-col-key":u.key,"data-autoheight-cell":A?``:void 0,"data-ssg-tooltip":re??void 0,"data-ssg-tooltip-overflow":oe?``:void 0,className:ie,onPointerDown:e=>M({row:a,col:t},e),onPointerEnter:e=>N({row:a,col:t},e),onDoubleClick:()=>P({row:a,col:t}),style:{...I?.bodyCell?.style,...te,...L.style,left:d,width:_,minWidth:_,...A?{minHeight:g}:{height:f},...ae,zIndex:y?3:1},children:F(l,a,u,t,{isActive:y,isSelected:S,isEditing:x,readOnly:k})},`${String(s)}-${u.key}`)})]})}var bs=new Set([`rowStyle`]),xs=(0,e.memo)(ys,(e,t)=>l(e,t,bs)),Ss=[`62%`,`46%`,`78%`,`54%`];function Cs({pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:a,top:o,rowHeight:s,renderEntries:c,rowHeaderCellStyle:l,isRowHovered:u,showRowCheckbox:d,onRowHeaderPointerDown:f,onRowHeaderPointerEnter:p,onRowHeaderPointerLeave:m,onCellPointerDown:h,onCellPointerEnter:g,slots:_}){return(0,r.jsxs)(`div`,{"data-pane":e,"data-row-index":a,"data-skeleton-row":``,className:i(`ssg-body-row`,_?.bodyRow?.className),style:{..._?.bodyRow?.style,height:s,transform:`translateY(${o}px)`},children:[t&&(0,r.jsx)(`div`,{onPointerDown:e=>f(a,e),onPointerEnter:e=>p(a,e),onPointerLeave:()=>m(a),className:i(`ssg-header-cell`,`ssg-row-header-cell`,`ssg-skeleton-rowheader`,d&&`ssg-row-header-cell--checkbox`,u&&`ssg-header-cell--hovered`,_?.rowHeaderCell?.className),style:{..._?.rowHeaderCell?.style,...l,height:s},children:d?(0,r.jsx)(Jo,{slot:_?.checkbox,state:`unchecked`,disabled:!0}):a+1}),c.map(t=>{if(!t)return null;let o=t.logicalIndex,c=n+t.paneLocalStart,l=t.paneLocalSize,d=Ss[o%Ss.length];return(0,r.jsx)(`div`,{className:i(`ssg-body-cell`,u&&`ssg-body-cell--row-hovered`,_?.bodyCell?.className),onPointerDown:e=>h({row:a,col:o},e),onPointerEnter:e=>g({row:a,col:o},e),style:{..._?.bodyCell?.style,left:c,width:l,minWidth:l,height:s,zIndex:1},children:(0,r.jsx)(`div`,{"aria-hidden":`true`,className:`ssg-skeleton-bar`,style:{width:d}})},`skeleton-${e}-${o}`)})]})}var ws=(0,e.memo)(Cs),Ts=(e,t)=>t==null?``:e.valueFormatter?e.valueFormatter({value:t,row:void 0,column:e}):String(t),Es=16;function Ds({pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:a,top:o,rowHeight:s,renderEntries:c,rowHeaderCellStyle:l,isRowHovered:u,showRowCheckbox:d,groupRow:f,isCollapsed:p,onGroupToggle:m,onRowHeaderPointerEnter:h,onRowHeaderPointerLeave:g,slots:_}){return(0,r.jsxs)(`div`,{"data-pane":e,"data-row-index":a,"data-ssg-group-row":``,className:i(`ssg-body-row`,_?.bodyRow?.className,_?.groupRow?.className),style:{..._?.bodyRow?.style,..._?.groupRow?.style,height:s,transform:`translateY(${o}px)`},onDoubleClick:()=>m(f.groupKey),children:[t&&(0,r.jsx)(`div`,{onPointerEnter:e=>h(a,e),onPointerLeave:()=>g(a),className:i(`ssg-header-cell`,`ssg-row-header-cell`,d&&`ssg-row-header-cell--checkbox`,u&&`ssg-header-cell--hovered`,_?.rowHeaderCell?.className),style:{..._?.rowHeaderCell?.style,...l,height:s},children:d?null:a+1}),c.map(t=>{if(!t)return null;let a=t.column,o=n+t.paneLocalStart,c=t.paneLocalSize,l=a.key===vn,d=!l&&Object.prototype.hasOwnProperty.call(f.aggregates,a.key)?Ts(a,f.aggregates[a.key]):null;return(0,r.jsx)(`div`,{"data-ssg-col-key":a.key,className:i(`ssg-body-cell`,`ssg-group-cell`,a.align===`center`&&`ssg-body-cell--align-center`,a.align===`right`&&`ssg-body-cell--align-right`,u&&`ssg-body-cell--row-hovered`,_?.bodyCell?.className,_?.groupCell?.className),style:{..._?.bodyCell?.style,..._?.groupCell?.style,left:o,width:c,minWidth:c,height:s,zIndex:1},children:l?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`span`,{"aria-hidden":`true`,className:`ssg-group-indent`,style:{width:f.level*Es}}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-group-toggle`,"aria-expanded":!p,"aria-label":`${f.label} を${p?`展開`:`折りたたみ`}`,onClick:()=>m(f.groupKey),onDoubleClick:e=>e.stopPropagation(),children:p?`▸`:`▾`}),(0,r.jsx)(`span`,{className:`ssg-group-label`,children:f.label}),(0,r.jsxs)(`span`,{className:`ssg-group-count`,children:[`(`,f.leafCount,`件)`]})]}):d},`group-${e}-${a.key}`)})]})}var Os=(0,e.memo)(Ds);function ks({pane:e,ownsRowHeader:t,leadingWidth:n,rowModel:i,virtualRows:a,virtualRowIndexes:s,renderEntries:c,rowHeight:l,autoHeight:u=!1,showCellOverflowTooltip:d=!1,showValidationMarks:f=!0,isServerSide:p=!1,collapsedGroupKeys:m,onGroupToggle:h,rowHeaderCellStyle:g,hoveredRowIndex:_,isWholeGridSelected:v,enableRowSelection:y,rowSelectionState:b,activeCell:x,editingCell:S,selectionSnapshot:C,readOnly:w,canEditCell:T,onRowHeaderPointerDown:E,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,onCellPointerDown:k,onCellPointerEnter:A,onCellDoubleClick:j,renderCellContent:M,getRowClassName:N,slots:P}){return(0,r.jsx)(r.Fragment,{children:a.map(a=>{let F=a.index;if(!s.has(F))return null;let ee=a.size??l,te=i.getGroupRow?.(F);if(te&&h)return(0,r.jsx)(Os,{pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:F,top:a.start,rowHeight:ee,renderEntries:c,rowHeaderCellStyle:g,isRowHovered:_===F,showRowCheckbox:y,groupRow:te,isCollapsed:m?.has(te.groupKey)===!0,onGroupToggle:h,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,slots:P},String(yn(te)));let I=i.getRow(F);if(!I){if(!p)return null;let o=i.getRowKey(F)??F;return(0,r.jsx)(ws,{pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:F,top:a.start,rowHeight:ee,renderEntries:c,rowHeaderCellStyle:g,isRowHovered:_===F,showRowCheckbox:y,onRowHeaderPointerDown:E,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,onCellPointerDown:k,onCellPointerEnter:A,slots:P},String(o))}let ne=i.getRowKey(F)??F,L=i.getSourceIndex(F)??F,ie=y?re(b,ne):!1,ae=C.kind===`row`&&F>=C.startRow&&F<=C.endRow,oe=C.kind===`cell`&&F>=C.startRow&&F<=C.endRow,se=C.kind===`col`||oe?C.startCol:-1,ce=C.kind===`col`||oe?C.endCol:-1,le=x&&x.row===F?x.col:-1,ue=S&&S.row===F?S.col:-1,de=o(N?.(I,F,{row:I,rowIndex:F,sourceRowIndex:L,rowKey:ne,isSelected:ie}));return(0,r.jsx)(xs,{pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:F,rowKey:ne,sourceRowIndex:L,row:I,top:a.start,renderEntries:c,rowHeight:ee,autoHeight:u,showCellOverflowTooltip:d,showValidationMarks:f,autoHeightMinHeight:l,rowHeaderCellStyle:g,isRowHovered:_===F,isWholeGridSelected:v,isRowSelected:ae,showRowCheckbox:y,isRowChecked:ie,activeColInRow:le,editingColInRow:ue,selectedColStart:se,selectedColEnd:ce,readOnly:w,canEditCell:T,onRowHeaderPointerDown:E,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,onCellPointerDown:k,onCellPointerEnter:A,onCellDoubleClick:j,renderCellContent:M,rowClassName:de.className,rowStyle:de.style,slots:P},String(ne))})})}var As=e=>{e.stopPropagation()};function js({entries:e,mode:t,paneWidth:n,baseOffset:a,cardStickyLeft:o,cardWidth:c,cardSlot:l,slots:u,renderCard:d}){return e.length===0?null:(0,r.jsx)(r.Fragment,{children:e.map(e=>{let{virtualRow:f}=e,p=f.detailSize??0;if(p<=0)return null;let m={position:`absolute`,left:0,top:f.start+(f.size??0)-a,width:n,height:p};return(0,r.jsx)(`div`,{className:i(`ssg-detail-band`,u?.detailBand?.className),"data-detail-row-index":f.index,style:{...u?.detailBand?.style,...m},children:t===`center`&&(0,r.jsx)(`div`,{className:`ssg-detail-card-holder`,style:{left:o,width:c},children:(0,r.jsx)(`div`,{className:i(`ssg-detail-card`,u?.detailCard?.className,l?.className),style:s(u?.detailCard?.style,l?.style),"data-ssg-detail":``,onKeyDown:As,onKeyUp:As,onPaste:As,onCopy:As,onCut:As,onContextMenu:As,onDragStart:As,onDoubleClick:As,children:d(e)})})},e.rowKey)})})}var Ms=(0,e.memo)(js);function Ns({isActive:e,title:t,className:n,style:a,onPointerDown:o,onClick:s,children:c}){return(0,r.jsx)(`button`,{type:`button`,"data-ssg-tooltip":t,"aria-label":t,onPointerDown:o,onClick:s,className:i(`ssg-icon-btn`,e&&`ssg-icon-btn--active`,n),style:a,children:c})}function Ps({pane:e,ownsRowHeader:t,leadingWidth:n,headerHeight:a,rowHeaderCellStyle:o,slots:s,isCornerHovered:c,isWholeGridSelected:l,showSelectAllCheckbox:u,selectAllState:d,filteredRowsLength:f,visibleColumnsLength:p,renderEntries:m,hoveredColumnIndex:h,selectionSnapshot:g,columnFilterValues:_,sortState:v,onCornerPointerDown:y,onCornerPointerEnter:b,onCornerPointerLeave:x,onColumnHeaderPointerDown:S,onColumnHeaderPointerEnter:C,onColumnHeaderPointerLeave:w,onColumnResizePointerDown:T,enableColumnResize:E,enableColumnMenu:D,openedMenuColumnKey:O,onColumnMenuButtonPointerDown:k,onColumnMenuButtonClick:A,onColumnHeaderContextMenu:j,onColumnDragHandlePointerDown:M}){return(0,r.jsxs)(`div`,{"data-pane":e,className:i(`ssg-header-row`,s?.headerRow?.className),style:{...s?.headerRow?.style,height:a},children:[t&&(0,r.jsx)(`div`,{role:u?`checkbox`:void 0,"aria-checked":u?d===`all`?!0:d===`some`?`mixed`:!1:void 0,onPointerDown:y,onPointerEnter:b,onPointerLeave:x,className:i(`ssg-header-cell`,`ssg-corner-cell`,u&&`ssg-corner-cell--checkbox`,l&&`ssg-header-cell--selected`,c&&`ssg-header-cell--hovered`,s?.rowHeaderCell?.className,s?.cornerCell?.className),style:{...s?.rowHeaderCell?.style,...s?.cornerCell?.style,...o,height:a,cursor:f>0&&p>0?`pointer`:`default`},children:u?(0,r.jsx)(Jo,{slot:s?.checkbox,state:d===`all`?`checked`:d===`some`?`indeterminate`:`unchecked`}):`#`}),m.map(e=>{if(!e)return null;let t=e.logicalIndex,o=e.column,c=n+e.paneLocalStart,u=e.paneLocalSize,d=pt(_[o.key]),f=g.kind===`col`&&t>=g.startCol&&t<=g.endCol,p=v.findIndex(e=>e.columnKey===o.key),m=p===-1?null:v[p],y=O===o.key,b=zn(o.key),x=o.key===`__ssg_detail_toggle__`||o.key===`__ssg_row_drag_handle__`,N=D&&!b;return(0,r.jsxs)(`div`,{"data-ssg-col-key":o.key,onPointerDown:e=>S(t,e),onPointerEnter:e=>C(t,e),onPointerLeave:()=>w(t),onContextMenu:e=>{if(b){e.preventDefault();return}j(o,e)},className:i(`ssg-header-cell`,(l||f)&&`ssg-header-cell--selected`,h===t&&`ssg-header-cell--hovered`,s?.headerCell?.className),style:{...s?.headerCell?.style,left:c,width:u,minWidth:u,height:a},children:[(0,r.jsx)(`div`,{className:i(`ssg-header-label`,d&&`ssg-header-label--filtered`),"data-ssg-tooltip":o.renderHeader||x?void 0:o.title||o.key,children:o.renderHeader?o.renderHeader({colIndex:t,width:u,column:o,filterValue:_[o.key],isFiltered:d}):x?``:o.title||o.key}),(0,r.jsxs)(`div`,{className:`ssg-header-status`,children:[m&&(0,r.jsxs)(`span`,{"aria-hidden":`true`,"data-ssg-tooltip":(m.direction===`asc`?`昇順で並び替え中`:`降順で並び替え中`)+(v.length>1?` (優先度 ${p+1})`:``),className:`ssg-header-sort`,children:[m.direction===`asc`?`↑`:`↓`,v.length>1&&(0,r.jsx)(`span`,{className:`ssg-header-sort-priority`,children:p+1})]}),d&&(0,r.jsx)(`span`,{"aria-hidden":`true`,"data-ssg-tooltip":`フィルター適用中`,className:`ssg-header-filtered-mark`,children:(0,r.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 16 16`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:(0,r.jsx)(`path`,{d:`M2 4 L14 4 L9.2 9.2 L9.2 13 L6.8 13 L6.8 9.2 Z`})})})]}),(0,r.jsxs)(`div`,{className:`ssg-header-actions`,children:[M&&!b&&(0,r.jsx)(`span`,{onPointerDown:e=>M(o,e),"data-ssg-tooltip":`ドラッグで列を移動`,"aria-hidden":`true`,className:`ssg-header-grip`,children:(0,r.jsxs)(`svg`,{width:`8`,height:`14`,viewBox:`0 0 8 14`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:[(0,r.jsx)(`circle`,{cx:`2`,cy:`3`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`3`,r:`1`}),(0,r.jsx)(`circle`,{cx:`2`,cy:`7`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`7`,r:`1`}),(0,r.jsx)(`circle`,{cx:`2`,cy:`11`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`11`,r:`1`})]})}),N&&(0,r.jsx)(Ns,{title:`列メニュー`,isActive:y,className:s?.iconButton?.className,style:s?.iconButton?.style,onPointerDown:e=>k(o,e),onClick:e=>A(o,e),children:`⋮`})]}),(o.resizable??E)&&(0,r.jsx)(`div`,{onPointerDown:e=>T(o,e),className:`ssg-header-resize`})]},o.key)})]})}var Fs=(0,e.memo)(Ps),Is=200,Ls=8,Rs=6,zs=289,Bs=({visibleColumns:t,enableColumnMenu:n,gridRootRef:r})=>{let[i,a]=(0,e.useState)(null),[o,s]=(0,e.useState)(null),c=(0,e.useRef)(null),l=(0,e.useRef)(null),u=(0,e.useRef)(null),d=(0,e.useRef)(null),f=(0,e.useRef)(i);f.current=i;let p=i!==null,m=i?.columnKey??null,h=(0,e.useMemo)(()=>m?t.find(e=>e.key===m)??null:null,[m,t]),g=(0,e.useCallback)(()=>{if(!m){s(null);return}let e,t,n,r=c.current,i=r?r.scrollHeight+(r.offsetHeight-r.clientHeight):zs,o=l.current,d=u.current;if(o){if(!o.isConnected){s(null),a(null),l.current=null;return}let r=o.getBoundingClientRect();t=r.right-Is,e=r.bottom+Rs,n=r.top-i-Rs}else if(d)t=d.x,e=d.y,n=d.y-i;else{s(null);return}t=Math.max(Ls,t),t=Math.min(t,window.innerWidth-Is-Ls);let f=window.innerHeight-Ls;e+i>f&&n>=Ls&&(e=n),e=Math.max(Ls,e);let p=f-e,h=i>p?Math.max(p,0):void 0;s(n=>n&&n.top===e&&n.left===t&&n.width===Is&&n.maxHeight===h?n:{top:e,left:t,width:Is,maxHeight:h})},[m]),_=(0,e.useCallback)(()=>{a(null),s(null),l.current=null,u.current=null,requestAnimationFrame(()=>{Vn()||r.current?.focus()})},[r]),v=(0,e.useCallback)((e,t)=>{document.activeElement instanceof HTMLElement&&document.activeElement.blur(),r.current?.blur(),l.current=t,u.current=null,a({columnKey:e.key})},[r]),y=(0,e.useCallback)((e,t)=>{if(t.preventDefault(),t.stopPropagation(),!n||t.button!==0)return;let r=t.currentTarget;if(f.current?.columnKey===e.key&&l.current===r){_();return}if(t.pointerType===`touch`){d.current=r;return}v(e,r)},[_,n,v]),b=(0,e.useCallback)((e,t)=>{let r=d.current;d.current=null,!(!n||r!==t.currentTarget)&&(t.preventDefault(),t.stopPropagation(),v(e,t.currentTarget))},[n,v]),x=(0,e.useCallback)((e,t)=>{n&&(t.preventDefault(),t.stopPropagation(),document.activeElement instanceof HTMLElement&&document.activeElement.blur(),r.current?.blur(),l.current=null,u.current={x:t.clientX,y:t.clientY},a({columnKey:e.key}),g())},[n,r,g]);return(0,e.useEffect)(()=>{if(!m)return;g();let e=requestAnimationFrame(()=>{g()}),t=()=>{g()},n=()=>{if(u.current){_();return}g()};return window.addEventListener(`resize`,t),window.addEventListener(`scroll`,n,!0),()=>{cancelAnimationFrame(e),window.removeEventListener(`resize`,t),window.removeEventListener(`scroll`,n,!0)}},[m,g,_]),(0,e.useEffect)(()=>{if(!p)return;let e=e=>{let t=e.target;t&&(c.current?.contains(t)||l.current?.contains(t)||_())};return window.addEventListener(`pointerdown`,e),()=>{window.removeEventListener(`pointerdown`,e)}},[_,p]),(0,e.useEffect)(()=>{if(!p)return;let e=e=>{e.key===`Escape`&&(e.preventDefault(),_())};return window.addEventListener(`keydown`,e,!0),()=>{window.removeEventListener(`keydown`,e,!0)}},[_,p]),{columnMenuLayout:o,columnMenuRef:c,isColumnMenuOpen:p,openedMenuColumnKey:m,openedMenuColumn:h,openColumnMenuFromButton:y,openColumnMenuFromButtonClick:b,openColumnMenuFromContextMenu:x,closeColumnMenu:_}},Vs=[{value:void 0,label:`固定しない`},{value:`left`,label:`左に固定`},{value:`right`,label:`右に固定`}],Hs=180,Us=4,Ws=8,Gs=`pin`;function Ks({isOpen:n,themeClassName:a,slots:o,title:s,columnKey:c,canFilter:l,onOpenFilter:u,canSort:d,sortDirection:f,onSortChange:p,onOpenSortManager:m,canManageFilters:h,onOpenFilterManager:g,pinned:_,canChangePinned:v,layout:y,popoverRef:b,onPinnedChange:x,onAutosizeColumn:S,onAutosizeAllColumns:C,onOpenColumnChooser:w,canResetColumns:T,onResetColumns:E,onRequestClose:D}){let[O,k]=(0,e.useState)(null);if((0,e.useEffect)(()=>{k(null)},[c,n]),!n||!y)return null;let A=O===Gs,j=y.left+y.width+Us+Hs>window.innerWidth-Ws,M={position:`fixed`,top:y.top,left:y.left,width:y.width,zIndex:1e3,...y.maxHeight===void 0?{}:{maxHeight:y.maxHeight,overflowY:`auto`}},N={position:`absolute`,top:-9,...j?{right:`calc(100% + ${Us}px)`}:{left:`calc(100% + ${Us}px)`},width:Hs,zIndex:1};return(0,t.createPortal)((0,r.jsxs)(`div`,{ref:b,onPointerDown:e=>{e.stopPropagation()},onKeyDown:e=>{e.stopPropagation()},onContextMenu:e=>{e.preventDefault()},className:i(`ssg-menu-panel`,a,o?.popover?.className),style:{...o?.popover?.style,...M},children:[(0,r.jsx)(`div`,{className:`ssg-menu-title`,children:s}),l&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{u()},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`フィルター…`})]}),(0,r.jsx)(`div`,{className:`ssg-menu-separator`})]}),d&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{p(`asc`)},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:i(`ssg-menu-sort-icon`,f===`asc`&&`ssg-menu-sort-icon--active`),children:f===`asc`?`✓`:`↑`}),(0,r.jsx)(`span`,{className:i(`ssg-menu-label`,f===`asc`&&`ssg-menu-label--sorted`),children:`昇順で並び替え`})]}),(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{p(`desc`)},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:i(`ssg-menu-sort-icon`,f===`desc`&&`ssg-menu-sort-icon--active`),children:f===`desc`?`✓`:`↓`}),(0,r.jsx)(`span`,{className:i(`ssg-menu-label`,f===`desc`&&`ssg-menu-label--sorted`),children:`降順で並び替え`})]}),(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{m()},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`並び替えを管理…`})]})]}),h&&(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{g()},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`フィルターを管理…`})]}),(d||h)&&(0,r.jsx)(`div`,{className:`ssg-menu-separator`}),(0,r.jsxs)(`div`,{className:`ssg-menu-submenu-anchor`,children:[(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(Gs)},onClick:()=>{k(e=>e===Gs?null:Gs)},className:i(`ssg-menu-item`,A&&`ssg-menu-item--active`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`列の固定`}),(0,r.jsx)(`span`,{className:`ssg-menu-caret`,children:`›`})]}),A&&(0,r.jsxs)(`div`,{className:i(`ssg-menu-panel`,a,o?.popover?.className),style:{...o?.popover?.style,...N},children:[Vs.map(e=>{let t=_===e.value;return(0,r.jsxs)(`button`,{type:`button`,disabled:!v,onClick:()=>{v&&x(c,e.value)},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:i(`ssg-menu-check`,!t&&`ssg-menu-check--hidden`),children:`✓`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:e.label})]},e.label)}),!v&&(0,r.jsx)(`div`,{className:`ssg-menu-note`,children:`onColumnsChange 未指定のため固定状態を変更できません`})]})]}),(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{S(c)},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`この列の幅を自動調整`})]}),(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{C()},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`すべての列の幅を自動調整`})]}),(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{w()},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`列の表示`})]}),(0,r.jsxs)(`button`,{type:`button`,"aria-disabled":!T,tabIndex:T?0:-1,"data-ssg-tooltip":T?`すべての列の幅・固定・表示・並び順を初期状態に戻します`:`onColumnsChange 未指定のため列をリセットできません`,onPointerEnter:()=>{k(null)},onClick:()=>{T&&E()},className:i(`ssg-menu-item`,!T&&`ssg-menu-item--disabled`),children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`列のリセット`})]}),(0,r.jsx)(`div`,{className:`ssg-menu-footer`,children:(0,r.jsx)(`button`,{type:`button`,onClick:D,className:`ssg-menu-close-btn`,children:`閉じる`})})]}),document.body)}var qs=({top:e,left:t,panelWidth:n,viewportWidth:r,viewportHeight:i})=>{let a=Math.max(8,Math.min(t,r-n-8));return{top:Math.max(8,Math.min(e,i-40)),left:a}},Q=360,Js=8,Ys=12,Xs=[`filter`,`columns`,`sort`],Zs=({canUseFilterTab:t,canUseColumnsTab:n,canUseSortTab:r,gridRootRef:i,alliedRef:a,suppressEscape:o=!1,onSuppressedEscape:s})=>{let[c,l]=(0,e.useState)(null),[u,d]=(0,e.useState)(null),[f,p]=(0,e.useState)(0),m=(0,e.useRef)(null),h=(0,e.useRef)(null),g=(0,e.useMemo)(()=>{let e={filter:t,columns:n,sort:r};return Xs.filter(t=>e[t])},[t,n,r]),_=c===null?null:g.includes(c)?c:g[0]??null,v=_!==null,y=(0,e.useCallback)(()=>{let e=h.current;if(e){let t=qs({top:e.top,left:e.left,panelWidth:Q,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight});d(e=>e&&e.top===t.top&&e.left===t.left&&e.width===Q?e:{top:t.top,left:t.left,width:Q});return}let t=i.current;if(!t){d(null);return}let n=t.getBoundingClientRect(),r=n.right-Q-Ys,a=n.top+Ys;r=Math.max(Js,r),r=Math.min(r,window.innerWidth-Q-Js),a=Math.max(Js,a),d(e=>e&&e.top===a&&e.left===r&&e.width===Q?e:{top:a,left:r,width:Q})},[i]),b=(0,e.useCallback)(e=>{({filter:t,columns:n,sort:r})[e]&&(c!==null&&p(e=>e+1),document.activeElement instanceof HTMLElement&&document.activeElement.blur(),i.current?.blur(),l(e))},[t,n,r,i,c]),x=(0,e.useCallback)(()=>{l(null),d(null),requestAnimationFrame(()=>{Vn()||i.current?.focus()})},[i]),S=(0,e.useCallback)((e,t)=>{let n=qs({top:e,left:t,panelWidth:Q,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight});h.current=n,d({top:n.top,left:n.left,width:Q})},[]);return(0,e.useEffect)(()=>{if(!v)return;y();let e=()=>{y()};return window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0)}},[v,y]),(0,e.useEffect)(()=>{if(!v)return;let e=e=>{let t=e.target;t&&(m.current?.contains(t)||a?.current?.contains(t)||x())};return window.addEventListener(`pointerdown`,e),()=>{window.removeEventListener(`pointerdown`,e)}},[a,x,v]),(0,e.useEffect)(()=>{if(!v)return;let e=e=>{if(e.key===`Escape`){if(o){s?.();return}e.preventDefault(),x()}};return window.addEventListener(`keydown`,e,!0),()=>{window.removeEventListener(`keydown`,e,!0)}},[x,v,s,o]),{activeToolPanelTab:_,availableToolPanelTabs:g,toolPanelLayout:u,toolPanelFlashTick:f,toolPanelRef:m,openToolPanel:b,closeToolPanel:x,moveToolPanel:S}},Qs=({layout:t,onPanelMove:n})=>{let r=(0,e.useRef)(null);return(0,e.useEffect)(()=>()=>{r.current?.()},[]),{handleHeaderPointerDown:(0,e.useCallback)(e=>{if(e.button!==0||!t||e.target?.closest(`button, input, select, textarea`)||r.current)return;e.preventDefault();let i={pointerId:e.pointerId,startX:e.clientX,startY:e.clientY,startTop:t.top,startLeft:t.left};function a(e){e.pointerId===i.pointerId&&n(i.startTop+(e.clientY-i.startY),i.startLeft+(e.clientX-i.startX))}function o(e){e.pointerId===i.pointerId&&s()}function s(){window.removeEventListener(`pointermove`,a),window.removeEventListener(`pointerup`,o),window.removeEventListener(`pointercancel`,o),r.current=null}window.addEventListener(`pointermove`,a),window.addEventListener(`pointerup`,o),window.addEventListener(`pointercancel`,o),r.current=s},[t,n])}};function $s({themeClassName:n,popoverSlot:a,activeTab:o,flashTick:s,tabs:c,layout:l,panelRef:u,onSelectTab:d,onRequestClose:f,onPanelMove:p,children:m}){let{handleHeaderPointerDown:h}=Qs({layout:l,onPanelMove:p});if((0,e.useEffect)(()=>{let e=u.current;if(!e||s===0)return;e.classList.remove(`ssg-toolpanel--flash`),e.offsetWidth,e.classList.add(`ssg-toolpanel--flash`);let t=()=>{e.classList.remove(`ssg-toolpanel--flash`)};return e.addEventListener(`animationend`,t),()=>{e.removeEventListener(`animationend`,t)}},[s,u]),o===null||!l)return null;let g=Math.max(0,c.findIndex(e=>e.tab===o)),_={top:l.top,left:l.left,width:l.width},v=e=>{e.stopPropagation()},y=e=>{e.stopPropagation()},b={"--ssg-seg-count":c.length,"--ssg-seg-index":g};return(0,t.createPortal)((0,r.jsxs)(`div`,{ref:u,onPointerDown:v,onKeyDown:y,onContextMenu:e=>{e.preventDefault()},className:i(`ssg-popover`,`ssg-toolpanel`,n,a?.className),style:{...a?.style,..._},children:[(0,r.jsxs)(`div`,{className:`ssg-toolpanel-header ssg-popover-header--draggable`,onPointerDown:h,children:[(0,r.jsxs)(`div`,{className:`ssg-toolpanel-seg`,role:`tablist`,style:b,children:[(0,r.jsx)(`span`,{className:`ssg-toolpanel-seg-indicator`,"aria-hidden":!0}),c.map(e=>{let t=e.tab===o;return(0,r.jsxs)(`button`,{type:`button`,role:`tab`,"aria-selected":t,onClick:()=>{t||d(e.tab)},className:i(`ssg-toolpanel-seg-btn`,t&&`ssg-toolpanel-seg-btn--active`),children:[e.label,e.badge?(0,r.jsx)(`span`,{className:`ssg-toolpanel-seg-badge`,children:e.badge}):null]},e.tab)})]}),(0,r.jsx)(`button`,{type:`button`,onClick:f,"aria-label":`閉じる`,className:`ssg-popover-close`,children:`×`})]}),(0,r.jsx)(`div`,{className:`ssg-toolpanel-body`,children:m})]}),document.body)}var ec=28,tc=12,nc=[`left`,`center`,`right`],rc={left:`左固定`,center:`固定なし`,right:`右固定`};function ic(e,t,n){let r=e.find(e=>e.key===t);if(!r)return null;let i=r.pane,a={left:[],center:[],right:[]};for(let t of e)a[t.pane].push(t.key);let o=a[i],s=o.indexOf(t);if(s<0)return null;let c=n;if(c>s&&--c,c=Math.max(0,Math.min(c,o.length-1)),c===s)return null;let[l]=o.splice(s,1);return o.splice(c,0,l),[...a.left,...a.center,...a.right]}function ac({state:e,disabled:t}){return(0,r.jsxs)(`span`,{className:i(`ssg-checkbox`,(e===`checked`||e===`indeterminate`)&&`ssg-checkbox--filled`,t&&`ssg-checkbox--disabled`),"aria-hidden":!0,children:[e===`checked`&&(0,r.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 12 12`,fill:`none`,children:(0,r.jsx)(`path`,{d:`M2.5 6.2 4.7 8.4 9.5 3.6`,style:{stroke:`var(--ssg-panel-accent-contrast)`},strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`})}),e===`indeterminate`&&(0,r.jsx)(`span`,{className:`ssg-checkbox-dash`})]})}function oc({disabled:e}){return(0,r.jsx)(`svg`,{width:`10`,height:`16`,viewBox:`0 0 10 16`,style:{fill:e?`var(--ssg-panel-text-disabled)`:`var(--ssg-panel-text-faint)`},"aria-hidden":!0,children:[3,8,13].map(e=>[3,7].map(t=>(0,r.jsx)(`circle`,{cx:t,cy:e,r:`1.2`},`${t}-${e}`)))})}function sc({items:t,canToggle:n,onToggleColumnVisibility:a,onShowAllColumns:o,onHideAllColumns:s,onResetColumns:c,onReorderColumns:l}){let[u,d]=(0,e.useState)(``),f=(0,e.useRef)(null);(0,e.useEffect)(()=>{let e=requestAnimationFrame(()=>{f.current?.focus()});return()=>cancelAnimationFrame(e)},[]);let p=(0,e.useMemo)(()=>t.filter(e=>e.visible).length,[t]),m=p===t.length&&t.length>0,h=m?`checked`:`indeterminate`,g=m?`すべての列を非表示(先頭の列は残ります)`:`すべての列を表示`,_=(0,e.useMemo)(()=>{let e=u.trim().toLowerCase();return e?t.filter(t=>t.title.toLowerCase().includes(e)):t},[t,u]),v=(0,e.useMemo)(()=>{let e={left:[],center:[],right:[]};for(let t of _)e[t.pane].push(t);return nc.map(t=>({pane:t,items:e[t]})).filter(e=>e.items.length>0)},[_]),y=v.length>=2,b=n&&u.trim()===``,x=(0,e.useRef)(null),[S,C]=(0,e.useState)(null),w=(0,e.useRef)(!1),T=(0,e.useRef)(null),[E,D]=(0,e.useState)(null),O=(0,e.useRef)(0),k=(0,e.useRef)(null),A=(0,e.useCallback)(()=>{let e=x.current,t=T.current;if(!e||!t)return;let n=e.querySelectorAll(`[data-chooser-row][data-chooser-pane="${t}"]`),r=O.current,i=n.length;for(let e=0;e<n.length;e+=1){let t=n[e].getBoundingClientRect();if(r<t.top+t.height/2){i=e;break}}D(i)},[]),j=(0,e.useCallback)(function e(){let t=x.current;if(!t||!w.current){k.current=null;return}let n=t.getBoundingClientRect(),r=O.current,i=0;if(r<n.top+ec?i=-12:r>n.bottom-ec&&(i=tc),i!==0){let e=t.scrollTop;t.scrollTop+=i,t.scrollTop!==e&&A()}k.current=requestAnimationFrame(e)},[A]),M=(0,e.useCallback)(e=>{k.current!==null&&(cancelAnimationFrame(k.current),k.current=null);let n=S,r=E;if(w.current=!1,T.current=null,C(null),D(null),e&&n!==null&&r!==null){let e=ic(t,n,r);e&&l(e)}},[S,E,t,l]),N=(0,e.useCallback)((e,t,n)=>{b&&(n.preventDefault(),n.stopPropagation(),n.currentTarget.setPointerCapture(n.pointerId),w.current=!0,T.current=t,O.current=n.clientY,C(e),A(),k.current===null&&(k.current=requestAnimationFrame(j)))},[b,A,j]),P=(0,e.useCallback)(e=>{w.current&&(O.current=e.clientY,A())},[A]),F=(0,e.useCallback)(()=>{w.current&&M(!0)},[M]),ee=(0,e.useCallback)(()=>{w.current&&M(!1)},[M]);(0,e.useEffect)(()=>()=>{k.current!==null&&(cancelAnimationFrame(k.current),k.current=null)},[]);let te=()=>{n&&(m?s():o())},I=S===null?null:t.find(e=>e.key===S)?.pane??null,ne=(e,t,o)=>{let s=e.visible&&p===1,c=!n||s,l=S===e.key;return(0,r.jsxs)(`div`,{"data-chooser-row":``,"data-chooser-pane":o,className:i(`ssg-chooser-row`,S!==null&&I===o&&E===t&&`ssg-chooser-row--drop-before`,l&&`ssg-chooser-row--dragging`),children:[(0,r.jsx)(`span`,{role:`button`,"aria-label":`ドラッグして並べ替え`,"data-ssg-tooltip":n?u.trim()===``?`ドラッグして並べ替え(同じセクション内のみ)`:`検索中は並べ替えできません`:`onColumnsChange 未指定のため並べ替えできません`,onPointerDown:t=>N(e.key,o,t),onPointerMove:P,onPointerUp:F,onPointerCancel:ee,className:i(`ssg-chooser-handle`,!b&&`ssg-chooser-handle--disabled`,l&&`ssg-chooser-handle--dragging`),children:(0,r.jsx)(oc,{disabled:!b})}),(0,r.jsxs)(`button`,{type:`button`,disabled:c,onClick:()=>{c||a(e.key,!e.visible)},className:`ssg-chooser-toggle`,children:[(0,r.jsx)(ac,{state:e.visible?`checked`:`unchecked`,disabled:c}),(0,r.jsx)(`span`,{className:i(`ssg-chooser-label`,c&&!e.visible&&`ssg-chooser-label--muted`),children:e.title})]})]},e.key)};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`div`,{className:`ssg-chooser-search-row`,children:[(0,r.jsx)(`button`,{type:`button`,disabled:!n,onClick:te,"aria-label":g,"data-ssg-tooltip":g,className:`ssg-chooser-master-btn`,children:(0,r.jsx)(ac,{state:h,disabled:!n})}),(0,r.jsxs)(`div`,{className:`ssg-chooser-search-field`,children:[(0,r.jsx)(`span`,{"aria-hidden":!0,className:`ssg-chooser-search-icon`,children:`⌕`}),(0,r.jsx)(`input`,{ref:f,type:`text`,value:u,onChange:e=>d(e.target.value),placeholder:`検索...`,className:`ssg-chooser-search-input`})]})]}),(0,r.jsx)(`div`,{ref:x,className:`ssg-chooser-list`,children:_.length===0?(0,r.jsx)(`div`,{className:`ssg-chooser-empty`,children:`該当する列がありません`}):v.map(e=>(0,r.jsxs)(`div`,{"data-chooser-section":e.pane,children:[y&&(0,r.jsx)(`div`,{className:`ssg-chooser-section-heading`,children:rc[e.pane]}),e.items.map((t,n)=>ne(t,n,e.pane)),S!==null&&I===e.pane&&E===e.items.length&&(0,r.jsx)(`div`,{className:`ssg-chooser-drop-end`})]},e.pane))}),(0,r.jsxs)(`div`,{className:`ssg-chooser-footer`,children:[(0,r.jsx)(`button`,{type:`button`,disabled:!n,onClick:()=>{n&&c()},"data-ssg-tooltip":`すべての列の幅・固定・表示・並び順を初期状態に戻します`,className:`ssg-chooser-reset-btn`,children:`すべての列を初期状態に戻す`}),!n&&(0,r.jsx)(`div`,{className:`ssg-chooser-note`,children:`onColumnsChange 未指定のため表示/非表示・リセットを変更できません`})]})]})}function cc({disabled:e}){return(0,r.jsx)(`svg`,{width:`10`,height:`16`,viewBox:`0 0 10 16`,style:{fill:e?`var(--ssg-panel-text-disabled)`:`var(--ssg-panel-text-faint)`},"aria-hidden":!0,children:[3,8,13].map(e=>[3,7].map(t=>(0,r.jsx)(`circle`,{cx:t,cy:e,r:`1.2`},`${t}-${e}`)))})}function lc({entries:t,columns:n,canSort:a,onAddLevel:o,onChangeDirection:s,onChangeColumn:c,onRemoveLevel:l,onClearAll:u,onMove:d}){let f=(0,e.useMemo)(()=>new Set(t.map(e=>e.columnKey)),[t]),p=(0,e.useMemo)(()=>n.find(e=>!f.has(e.key))??null,[n,f]),m=e=>n.find(t=>t.key===e)?.title??e,h=a&&t.length>=2,g=(0,e.useRef)(null),[_,v]=(0,e.useState)(null),y=(0,e.useRef)(!1),[b,x]=(0,e.useState)(null),S=(0,e.useRef)(0),C=(0,e.useCallback)(()=>{let e=g.current;if(!e)return;let t=e.querySelectorAll(`[data-sort-level]`),n=S.current,r=t.length;for(let e=0;e<t.length;e+=1){let i=t[e].getBoundingClientRect();if(n<i.top+i.height/2){r=e;break}}x(r)},[]),w=(0,e.useCallback)(e=>{let t=_,n=b;if(y.current=!1,v(null),x(null),e&&t!==null&&n!==null){let e=n;e>t&&--e,d(t,e)}},[_,b,d]),T=(0,e.useCallback)((e,t)=>{h&&(t.preventDefault(),t.stopPropagation(),t.currentTarget.setPointerCapture(t.pointerId),y.current=!0,S.current=t.clientY,v(e),C())},[h,C]),E=(0,e.useCallback)(e=>{y.current&&(S.current=e.clientY,C())},[C]),D=(0,e.useCallback)(()=>{y.current&&w(!0)},[w]),O=(0,e.useCallback)(()=>{y.current&&w(!1)},[w]),k=a&&p!==null;return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`div`,{ref:g,className:`ssg-sort-list`,children:[t.length===0?(0,r.jsx)(`div`,{className:`ssg-sort-empty`,children:`並び替えは設定されていません`}):t.map((e,o)=>{let u=n.filter(t=>t.key===e.columnKey||!f.has(t.key)),d=u.some(t=>t.key===e.columnKey)?u:[{key:e.columnKey,title:m(e.columnKey)},...u],p=_===o;return(0,r.jsxs)(`div`,{"data-sort-level":``,className:i(`ssg-sort-level`,_!==null&&b===o&&`ssg-sort-level--drop-before`,p&&`ssg-sort-level--dragging`),children:[(0,r.jsx)(`span`,{role:`button`,"aria-label":`ドラッグして優先順位を変更`,"data-ssg-tooltip":a?t.length<2?`レベルが 2 件以上のとき並べ替えできます`:`ドラッグして優先順位を変更`:`並び替えが無効です`,onPointerDown:e=>T(o,e),onPointerMove:E,onPointerUp:D,onPointerCancel:O,className:i(`ssg-sort-handle`,!h&&`ssg-sort-handle--disabled`,p&&`ssg-sort-handle--dragging`),children:(0,r.jsx)(cc,{disabled:!h})}),(0,r.jsx)(`span`,{"aria-hidden":!0,className:`ssg-sort-badge`,children:o+1}),(0,r.jsx)(`select`,{value:e.columnKey,disabled:!a,onChange:e=>c(o,e.target.value),className:`ssg-sort-select`,children:d.map(e=>(0,r.jsx)(`option`,{value:e.key,children:e.title},e.key))}),(0,r.jsxs)(`div`,{className:`ssg-sort-dir-group`,children:[(0,r.jsx)(`button`,{type:`button`,disabled:!a,onClick:()=>s(o,`asc`),"data-ssg-tooltip":`昇順`,className:i(`ssg-sort-dir-btn`,e.direction===`asc`&&`ssg-sort-dir-btn--active`),children:`↑ 昇順`}),(0,r.jsx)(`button`,{type:`button`,disabled:!a,onClick:()=>s(o,`desc`),"data-ssg-tooltip":`降順`,className:i(`ssg-sort-dir-btn`,e.direction===`desc`&&`ssg-sort-dir-btn--active`),children:`↓ 降順`})]}),(0,r.jsx)(`button`,{type:`button`,disabled:!a,onClick:()=>l(o),"aria-label":`このレベルを削除`,"data-ssg-tooltip":`このレベルを削除`,className:`ssg-sort-delete`,children:`×`})]},e.columnKey)}),_!==null&&b===t.length&&(0,r.jsx)(`div`,{className:`ssg-sort-drop-end`})]}),(0,r.jsxs)(`div`,{className:`ssg-popover-footer`,children:[(0,r.jsx)(`button`,{type:`button`,disabled:!k,onClick:()=>{!k||!p||o(p.key,`asc`)},"data-ssg-tooltip":a?p===null?`すべての列が並び替えに使われています`:`並び替えの基準を追加します`:`並び替えが無効です`,className:`ssg-sort-footer-btn ssg-sort-footer-btn--add`,children:`+ 基準を追加`}),(0,r.jsx)(`button`,{type:`button`,disabled:!a||t.length===0,onClick:()=>{!a||t.length===0||u()},"data-ssg-tooltip":`すべての並び替えを解除します`,className:`ssg-sort-footer-btn ssg-sort-footer-btn--clear`,children:`すべてクリア`})]}),!a&&(0,r.jsx)(`div`,{className:`ssg-sort-note`,children:`並び替えが無効のため編集できません`})]})}function uc(){return(0,r.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 16 16`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:(0,r.jsx)(`path`,{d:`M2 4 L14 4 L9.2 9.2 L9.2 13 L6.8 13 L6.8 9.2 Z`})})}function dc(){return(0,r.jsxs)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.4`,"aria-hidden":`true`,focusable:`false`,children:[(0,r.jsx)(`circle`,{cx:`11`,cy:`11`,r:`7`}),(0,r.jsx)(`path`,{d:`m20 20-3.5-3.5`})]})}function fc({entries:e,addableColumns:t,showGlobalFilterRow:n,globalFilterText:i,canFilter:a,onEditFilter:o,onAddFilter:s,onClearFilter:c,onClearAllFilters:l,onClearGlobalFilter:u}){let d=a&&e.length>0,f=a&&t.length>0;return(0,r.jsxs)(r.Fragment,{children:[n&&(0,r.jsxs)(`div`,{className:`ssg-filter-manage-row ssg-filter-manage-row--global`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-manage-glyph ssg-filter-manage-glyph--global`,"aria-hidden":`true`,children:(0,r.jsx)(dc,{})}),(0,r.jsxs)(`span`,{className:`ssg-filter-manage-main`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-manage-name`,children:`グローバルフィルター`}),(0,r.jsxs)(`span`,{className:`ssg-filter-manage-summary`,"data-ssg-tooltip":i,children:[`"`,i,`" を含む行`]})]}),(0,r.jsx)(`span`,{className:`ssg-filter-manage-actions`,children:(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-icon-btn ssg-filter-manage-icon-btn--danger`,disabled:!a,"data-ssg-tooltip":`グローバルフィルターをクリア`,"aria-label":`グローバルフィルターをクリア`,onClick:u,children:`×`})})]}),(0,r.jsx)(`div`,{className:`ssg-filter-manage-list`,children:e.length===0?(0,r.jsx)(`div`,{className:`ssg-filter-manage-empty`,children:`適用中の列フィルターはありません`}):e.map(e=>(0,r.jsxs)(`div`,{className:`ssg-filter-manage-row`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-manage-glyph`,"aria-hidden":`true`,children:(0,r.jsx)(uc,{})}),(0,r.jsxs)(`span`,{className:`ssg-filter-manage-main`,children:[(0,r.jsxs)(`span`,{className:`ssg-filter-manage-name`,children:[e.title,e.isHidden&&(0,r.jsx)(`span`,{className:`ssg-filter-manage-hidden-note`,children:`(非表示列)`})]}),(0,r.jsx)(`span`,{className:`ssg-filter-manage-summary`,"data-ssg-tooltip":e.summaryText,children:e.summaryText})]}),(0,r.jsxs)(`span`,{className:`ssg-filter-manage-actions`,children:[(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-icon-btn`,disabled:!a||e.isHidden,"data-ssg-tooltip":e.isHidden?`非表示列のためジャンプ編集できません(× でクリアは可能)`:`この列へジャンプして編集`,"aria-label":`${e.title} のフィルターを編集`,onClick:()=>{o(e.columnKey)},children:`✎`}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-icon-btn ssg-filter-manage-icon-btn--danger`,disabled:!a,"data-ssg-tooltip":`この列のフィルターをクリア`,"aria-label":`${e.title} のフィルターをクリア`,onClick:()=>{c(e.columnKey)},children:`×`})]})]},e.columnKey))}),(0,r.jsxs)(`div`,{className:`ssg-popover-footer`,children:[(0,r.jsxs)(`select`,{className:`ssg-filter-manage-add`,value:``,disabled:!f,"aria-label":`フィルターを追加する列を選択`,onChange:e=>{let t=e.target.value;t&&s(t)},children:[(0,r.jsx)(`option`,{value:``,children:f?`+ フィルターを追加…`:`+ 追加できる列がありません`}),t.map(e=>(0,r.jsx)(`option`,{value:e.key,children:e.title},e.key))]}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-clear-all`,disabled:!d,onClick:l,children:`すべてクリア`})]})]})}function pc({entries:e,canFilter:t,onEditFilter:n,onClearFilter:a,onClearAllFilters:o,slot:s}){return e.length===0?null:(0,r.jsxs)(`div`,{className:i(`ssg-filter-chip-bar`,s?.className),style:s?.style,children:[e.map(e=>(0,r.jsxs)(`div`,{className:e.isHidden?`ssg-filter-chip ssg-filter-chip--hidden`:`ssg-filter-chip`,children:[(0,r.jsxs)(`button`,{type:`button`,className:`ssg-filter-chip-label`,disabled:!t||e.isHidden,"data-ssg-tooltip":e.isHidden?`非表示列のためジャンプ編集できません(× でクリアは可能)`:`この列へジャンプして編集`,"aria-label":`${e.title} のフィルターを編集`,onClick:()=>{n(e.columnKey)},children:[(0,r.jsxs)(`span`,{className:`ssg-filter-chip-name`,children:[e.title,e.isHidden?`(非表示列)`:``]}),(0,r.jsx)(`span`,{className:`ssg-filter-chip-summary`,children:e.summaryText})]}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-chip-clear`,disabled:!t,"data-ssg-tooltip":`この列のフィルターをクリア`,"aria-label":`${e.title} のフィルターをクリア`,onClick:()=>{a(e.columnKey)},children:`×`})]},e.columnKey)),(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-chip-bar-clear-all`,disabled:!t,onClick:o,children:`すべてクリア`})]})}var mc=e=>{if(e===void 0||e===!1)return null;let t=e===!0?{}:e,n=t.bubble??!0,r=t.ruler??!0,i=t.scrollbar??!0;return!n&&!r&&!i?null:{bubble:n,ruler:r,scrollbar:i,trigger:t.trigger??`scroll`,minRows:t.minRows??0,hintColumn:t.hintColumn,renderHint:t.renderHint}},hc=({scrollTop:e,contentHeight:t,viewportHeight:n,trackHeight:r=n})=>{let i=t-n;if(n<=0||r<=0||i<=0)return null;let a=Math.min(Math.max(r*n/t,30),r),o=Math.min(Math.max(e,0),i)/i*(r-a);return{maxScroll:i,thumbTop:o,thumbHeight:a,centerY:o+a/2}},gc=e=>{let t=Math.max(e,1),n=10**Math.floor(Math.log10(t)),r=n<10?[1,2,5,10]:[1,2,2.5,5,10];for(let e of r){let r=n*e;if(r>=t)return r}return n*10},_c=(e,t=e>=1e4&&e%1e4==0)=>e!==0&&t?`${(e/1e4).toLocaleString()}万`:e.toLocaleString(),vc=({rowCount:e,rulerHeight:t,minTickSpacingPx:n=44})=>{if(e<=0||t<=0)return[];let r=gc(e/Math.max(Math.floor(t/n),2)),i=r%1e4==0,a=[];for(let n=0;n<=e;n+=r)a.push({row:n,y:n/e*t,label:_c(n,i)});return a},yc=(e,t,n)=>{let r=n-t.thumbHeight;return r<=0?0:Math.min(Math.max((e-t.thumbHeight/2)/r,0),1)*t.maxScroll},bc=(e,t)=>{if(e.renderHint!==void 0){let n=e.renderHint(t);return n==null||n===!1?null:n}if(e.hintColumn!==void 0&&t.rowData!==void 0){let n=t.rowData[e.hintColumn];return n==null||n===``?null:String(n)}return null},xc=1e3,Sc=8,Cc=18,wc=28;function Tc({options:t,scrollContainerRef:n,scrollTop:a,viewportHeight:o,headerHeight:s,physicalBodyHeight:c,verticalScaleFactor:l,rowMetrics:u,rowModel:d,slot:f}){let[p,m]=(0,e.useState)(!1),[h,g]=(0,e.useState)(!1),[_,v]=(0,e.useState)(0),[y,b]=(0,e.useState)(null),[x,S]=(0,e.useState)(!1),C=(0,e.useRef)(null),w=(0,e.useRef)(null),T=(0,e.useRef)(null),E=t.scrollbar?s:0,D=Math.max(t.scrollbar?o-s:o,0),O=hc({scrollTop:a,contentHeight:s+c,viewportHeight:o,trackHeight:D}),k=O!==null&&u.rowCount>0;(0,e.useEffect)(()=>{let e=n.current;if(!e)return;let r=()=>{m(!0),C.current!==null&&window.clearTimeout(C.current),C.current=window.setTimeout(()=>{C.current=null,m(!1)},xc)},i=()=>g(!0),a=()=>{g(!1),b(null)},o=t=>{let n=e.getBoundingClientRect(),r=t.clientX-n.left,i=e.offsetWidth-Math.max(e.offsetWidth-e.clientWidth,0)-Cc;b(r>=i?t.clientY-n.top:null)},s=new ResizeObserver(()=>{v(Math.max(e.offsetWidth-e.clientWidth,0))});return e.addEventListener(`scroll`,r,{passive:!0}),e.addEventListener(`pointerenter`,i),e.addEventListener(`pointerleave`,a),t.scrollbar||e.addEventListener(`pointermove`,o,{passive:!0}),s.observe(e),()=>{e.removeEventListener(`scroll`,r),e.removeEventListener(`pointerenter`,i),e.removeEventListener(`pointerleave`,a),e.removeEventListener(`pointermove`,o),s.disconnect(),C.current!==null&&(window.clearTimeout(C.current),C.current=null)}},[n,t.scrollbar]),(0,e.useEffect)(()=>{if(!t.scrollbar||!k)return;let e=T.current,r=n.current;if(!e||!r)return;let i=e=>{e.preventDefault(),r.scrollTop+=e.deltaY};return e.addEventListener(`wheel`,i,{passive:!1}),()=>{e.removeEventListener(`wheel`,i)}},[n,t.scrollbar,k]);let A=Math.max(o-s,0),j=(0,e.useMemo)(()=>t.ruler?vc({rowCount:u.rowCount,rulerHeight:A}):[],[t.ruler,u.rowCount,A]);if(O===null||u.rowCount<=0)return null;let M=t.trigger===`always`||p||t.trigger===`hover`&&h,N=M||y!==null,P=t.scrollbar?14:_,F=Yr(Math.min(Math.max(a,0),O.maxScroll),l),ee=u.rowAtContentY(F),te=bc(t,{rowIndex:ee,rowData:d.getRow(ee)}),I=null;if(t.ruler&&y!==null&&!x){let e=yc(y,O,D),n=u.rowAtContentY(Yr(e,l));I={lineY:Math.min(Math.max(E+y,s),o),rowIndex:n,detail:bc(t,{rowIndex:n,rowData:d.getRow(n)})}}let ne=e=>{let t=T.current;return t===null?0:e.clientY-t.getBoundingClientRect().top},L=(e,t)=>{let r=n.current;if(r===null)return;let i=D-O.thumbHeight;i<=0||(r.scrollTop=Math.min(Math.max((e-t)/i,0),1)*O.maxScroll)};return(0,r.jsxs)(`div`,{className:i(`ssg-scroll-hint`,f?.className),style:f?.style,"aria-hidden":`true`,children:[t.ruler&&j.length>0&&(0,r.jsx)(`div`,{className:i(`ssg-scroll-hint-ruler`,N&&`ssg-scroll-hint-ruler--visible`),style:{top:s,right:P},children:j.map(e=>(0,r.jsx)(`div`,{className:`ssg-scroll-hint-ruler-tick`,style:{top:Math.min(Math.max(e.y,6),Math.max(A-6,6))},children:(0,r.jsx)(`span`,{className:`ssg-scroll-hint-ruler-label`,children:e.label})},e.row))}),I!==null&&(0,r.jsx)(`div`,{className:`ssg-scroll-hint-jumpline`,style:{top:I.lineY,right:P},children:(0,r.jsxs)(`span`,{className:i(`ssg-scroll-hint-jumpline-label`,I.lineY<s+wc&&`ssg-scroll-hint-jumpline-label--below`),children:[`行 `,(I.rowIndex+1).toLocaleString(),` へ`,I.detail!==null&&(0,r.jsxs)(`span`,{className:`ssg-scroll-hint-jumpline-detail`,children:[` `,`・ `,I.detail]})]})}),t.bubble&&(0,r.jsxs)(`div`,{className:i(`ssg-scroll-hint-bubble`,M&&`ssg-scroll-hint-bubble--visible`),style:{top:E+O.centerY,right:P+Sc},children:[(0,r.jsxs)(`span`,{className:`ssg-scroll-hint-bubble-main`,children:[`行 `,(ee+1).toLocaleString(),(0,r.jsxs)(`span`,{className:`ssg-scroll-hint-bubble-total`,children:[` `,`/ `,u.rowCount.toLocaleString()]})]}),te!==null&&(0,r.jsx)(`span`,{className:`ssg-scroll-hint-bubble-detail`,children:te})]}),t.scrollbar&&(0,r.jsx)(`div`,{ref:T,className:i(`ssg-scroll-hint-scrollbar`,x&&`ssg-scroll-hint-scrollbar--dragging`),style:{top:s,height:D,width:14},onPointerDown:e=>{e.preventDefault();let t=ne(e),n=t>=O.thumbTop&&t<=O.thumbTop+O.thumbHeight?t-O.thumbTop:O.thumbHeight/2;w.current=n,S(!0),b(null),T.current?.setPointerCapture(e.pointerId),L(t,n)},onPointerMove:e=>{let t=ne(e);if(w.current!==null){L(t,w.current);return}b(t)},onPointerUp:e=>{w.current=null,S(!1),T.current?.releasePointerCapture(e.pointerId)},onPointerEnter:()=>g(!0),onPointerLeave:()=>{g(!1),w.current===null&&b(null)},children:(0,r.jsx)(`div`,{className:`ssg-scroll-hint-scrollbar-thumb`,style:{top:O.thumbTop,height:O.thumbHeight}})})]})}var Ec=(e,t)=>e.findIndex(e=>e.key===t),Dc=(e,t,n)=>{if(!e)return!1;if(e.type===`row`)return t>=e.startRow&&t<=e.endRow;if(e.type===`col`)return n>=e.startCol&&n<=e.endCol;let{start:r,end:i}=e.range,a=Math.min(r.row,i.row),o=Math.max(r.row,i.row),s=Math.min(r.col,i.col),c=Math.max(r.col,i.col);return t>=a&&t<=o&&n>=s&&n<=c},Oc=(e,t)=>{if(!e)return!1;if(e.type===`row`)return t>=e.startRow&&t<=e.endRow;if(e.type===`cell`){let{start:n,end:r}=e.range,i=Math.min(n.row,r.row),a=Math.max(n.row,r.row);return t>=i&&t<=a}return!1},kc=220,Ac=8,jc=34,Mc=16,Nc=({gridRootRef:t})=>{let[n,r]=(0,e.useState)(null),[i,a]=(0,e.useState)(null),o=(0,e.useRef)(null),s=(0,e.useRef)(null),c=(0,e.useRef)(0),l=n!==null,u=(0,e.useCallback)(()=>{let e=s.current;if(!e){a(null);return}let t=c.current*jc+Mc,n=e.x,r=e.y,i=e.y-t;n=Math.max(Ac,n),n=Math.min(n,window.innerWidth-kc-Ac),r+t>window.innerHeight-Ac&&(r=i),r=Math.max(Ac,r),a(e=>e&&e.top===r&&e.left===n&&e.width===kc?e:{top:r,left:n,width:kc})},[]),d=(0,e.useCallback)(()=>{r(null),a(null),s.current=null,c.current=0,requestAnimationFrame(()=>{Vn()||t.current?.focus()})},[t]),f=(0,e.useCallback)((e,n)=>{document.activeElement instanceof HTMLElement&&document.activeElement.blur(),t.current?.blur(),s.current={x:e.clientX,y:e.clientY},c.current=n.length,r({params:e,items:n}),u()},[t,u]);return(0,e.useEffect)(()=>{if(!l)return;u();let e=()=>{u()},t=()=>{d()};return window.addEventListener(`resize`,e),window.addEventListener(`scroll`,t,!0),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,t,!0)}},[l,u,d]),(0,e.useEffect)(()=>{if(!l)return;let e=e=>{let t=e.target;t&&(o.current?.contains(t)||d())};return window.addEventListener(`pointerdown`,e),()=>{window.removeEventListener(`pointerdown`,e)}},[l,d]),(0,e.useEffect)(()=>{if(!l)return;let e=e=>{e.key===`Escape`&&(e.preventDefault(),d())};return window.addEventListener(`keydown`,e,!0),()=>{window.removeEventListener(`keydown`,e,!0)}},[l,d]),{contextMenuState:n,contextMenuLayout:i,contextMenuRef:o,isContextMenuOpen:l,openContextMenu:f,closeContextMenu:d}};function Pc({isOpen:e,themeClassName:n,slots:a,items:o,layout:s,popoverRef:c,onRequestClose:l}){if(!e||!s)return null;let u={position:`fixed`,top:s.top,left:s.left,width:s.width,zIndex:1e3};return(0,t.createPortal)((0,r.jsx)(`div`,{ref:c,role:`menu`,onPointerDown:e=>{e.stopPropagation()},onKeyDown:e=>{e.stopPropagation()},onContextMenu:e=>{e.preventDefault()},className:i(`ssg-menu-panel`,n,a?.popover?.className),style:{...a?.popover?.style,...u},children:o.map((e,t)=>e.kind===`separator`?(0,r.jsx)(`div`,{className:`ssg-menu-separator`},e.id??`sep-${t}`):e.kind===`label`?(0,r.jsx)(`div`,{className:`ssg-menu-section-label`,role:`presentation`,children:e.label},e.id??`label-${t}`):e.kind===`custom`?(0,r.jsx)(`div`,{role:`none`,children:e.render({close:l})},e.id??`custom-${t}`):(0,r.jsxs)(`button`,{type:`button`,role:`menuitem`,disabled:e.disabled,onClick:()=>{e.onSelect(),l()},className:i(`ssg-menu-item`,e.danger&&`ssg-menu-item--danger`,e.disabled&&`ssg-menu-item--disabled`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`,children:e.icon}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:e.label})]},e.id??`action-${t}`))}),document.body)}var Fc=(e,t)=>{let n=new Set(e);return n.add(t),n},Ic=(e,t)=>{let n=new Set(e);return n.delete(t),n},Lc=(e,t)=>{let n=new Set(e);for(let e of t)n.add(e);return n},Rc=(e,t)=>{let n=new Set(e);for(let e of t)n.delete(e);return n},zc=[],Bc={},Vc={},Hc=[],Uc={compact:{rowHeight:28,headerHeight:32},standard:{rowHeight:36,headerHeight:40},comfortable:{rowHeight:44,headerHeight:48}},Wc={},Gc=[],Kc=[],qc=[],Jc=300,Yc=4,Xc=300;function Zc({rows:t=zc,dataSource:n,serverSideRefreshToken:a,onServerSideLoadError:o,onServerSideWriteError:c,columns:l,onRowsChange:u,onColumnsChange:d,rowKeyGetter:f,isRowExportable:p,createRow:g,createOverflowColumn:y,rowHeight:w,autoHeight:E=!1,estimateRowHeight:D,headerHeight:k,density:A=`standard`,theme:j=`light`,rowHeaderWidth:M=56,height:N,maxHeight:I,readOnly:L=!1,dimReadOnlyCells:me=!1,canEditCell:he,enableUndoRedo:ge=!0,enableClearOnDelete:Se=!0,editorEnterMove:Ee=`down`,undoHistoryLimit:De=100,onUndoRedoStateChange:Oe,enableRangeSelection:ke=!0,enableRowSelection:Ae=!1,rowSelectionMode:je=`multiple`,enableSelectAllRows:Me,rowSelection:Ne,selectedRowKeys:Pe,onRowSelectionChange:Fe,enableGlobalFilter:Ie=!0,enableColumnFilter:Le=!0,renderFilterDateInput:Re,enableSorting:ze=!0,enableColumnResize:Be=!0,autoSizeColumns:Ve=!1,showCellOverflowTooltip:Ue=!1,showValidationMarks:We=!0,enableRowHover:qe=!0,enableColumnHeaderHover:Je=!0,hoveredRowIndex:Ye,onHoveredRowChange:Xe,enableColumnMenu:Ze=!0,noMatchingRowsText:Qe=`一致する行がありません`,noRowsText:$e=`表示する行がありません`,showTopBar:nt=!0,showBottomBar:rt=!0,showTopBarSummary:it=!0,showTopBarFilter:ot=!0,globalFilterPlaceholder:ft,globalFilterIcon:ht,showTopBarCounts:gt=!0,showBottomBarCounts:_t=!0,showFilterChipBar:vt=!1,renderTopBar:yt,renderBottomBar:bt,className:xt,style:St,classNames:Ct,getRowClassName:wt,detailRow:Ot,onExpandedDetailRowKeysChange:kt,enableRowDrag:At=!1,isRowDraggable:jt,onRowMove:Mt,enableContextMenu:Nt=!1,getContextMenuItems:Pt,onContextMenuOpen:Ft,scrollHint:Rt,ref:zt,onStateChange:Bt,onScroll:Vt}){let z=t,B=l,Wt=w??Uc[A].rowHeight,V=k??Uc[A].headerHeight,Gt=(0,e.useMemo)(()=>mc(Rt),[Rt]),qt=(0,e.useRef)(null),Jt=(0,e.useRef)(null),Xt=(0,e.useRef)(null),Zt=(0,e.useRef)(null),Qt=(0,e.useRef)(!1),en=(0,e.useRef)(null),tn=(0,e.useRef)(null),nn=(0,e.useRef)(null),[rn,on]=(0,e.useState)(``),[sn,cn]=(0,e.useState)(!1),[ln,un]=(0,e.useState)(null),[dn,fn]=(0,e.useState)(null),pn=Ye!==void 0,mn=(0,e.useRef)(null),hn=(0,e.useRef)(Xe),gn=(0,e.useRef)(qe),_n=(0,e.useRef)(pn);(0,e.useEffect)(()=>{hn.current=Xe,gn.current=qe,_n.current=pn});let Sn=(0,e.useCallback)(e=>{if(!gn.current)return;let t=mn.current,n=typeof e==`function`?e(t):e;n!==t&&(mn.current=n,_n.current||un(n),hn.current?.(n,{source:`pointer`}))},[]),An=qe?Ye===void 0?ln:Ye:null,{groupColumns:jn,aggColumns:Mn}=(0,e.useMemo)(()=>Cn(B),[B]),Bn=n==null&&jn.length>0,Vn=Ot!=null&&Ot.showToggleColumn!==!1,Jn=Pn({enableRowDrag:At,isServerSide:n!=null,rowGroupingActive:Bn,hasRowsChange:u!=null}),Yn=(0,e.useMemo)(()=>{let e=B.some(e=>e.pinned===`left`),t=Jn?{key:On,title:``,width:28,minWidth:28,readOnly:!0,suppressAutoSize:!0,resizable:!1,pinned:e?`left`:void 0,cellClassName:`ssg-body-cell--row-drag-handle`,renderCell:()=>null}:null,n=Vn?{key:Rn,title:``,width:28,minWidth:28,readOnly:!0,suppressAutoSize:!0,resizable:!1,pinned:e?`left`:void 0,cellClassName:`ssg-body-cell--detail-toggle`,renderCell:e=>{let t=e.detail;return!t||!t.expandable?null:(0,r.jsx)(`button`,{type:`button`,className:`ssg-detail-toggle`,"aria-expanded":t.expanded,"aria-label":t.expanded?`詳細を閉じる`:`詳細を開く`,onClick:t.toggle,onDoubleClick:e=>e.stopPropagation(),children:t.expanded?`▾`:`▸`})}}:null,i=[];if(t&&i.push(t),n&&i.push(n),!Bn)return i.length>0?[...i,...B]:B;let a=[{key:vn,title:jn.map(e=>e.title||e.key).join(` › `),width:240,minWidth:120,readOnly:!0,suppressAutoSize:!0},...B.filter(e=>e.rowGroup!==!0)];return i.length>0?[...i,...a]:a},[Jn,Vn,Bn,B,jn]),H=(0,e.useMemo)(()=>Yn.filter(e=>e.visible!==!1),[Yn]),U=(0,e.useMemo)(()=>S(H),[H]),Xn=(0,e.useMemo)(()=>f??((e,t)=>t),[f]),W=n!=null,Qn=ze,$n=Le,er=Ie,[G,K]=(0,e.useReducer)(ve,H,_e),rr=(0,e.useRef)(kt);(0,e.useEffect)(()=>{rr.current=kt});let ir=(0,e.useRef)(!1);(0,e.useEffect)(()=>{if(!ir.current){ir.current=!0;return}rr.current?.(Array.from(G.expandedDetailRowKeys))},[G.expandedDetailRowKeys]);let ar=Ot!=null,or=(0,e.useRef)(Un()),cr=(0,e.useCallback)((e,t)=>{Kn(or.current,e,t),K(v.toggleDetailRow(e))},[K]),ur=(0,e.useCallback)((e,t,n)=>{Kn(or.current,e,t),K(v.setDetailRowExpanded(e,n))},[K]),dr=(0,e.useRef)(G.columnWidths),fr=(0,e.useRef)(null),pr=(0,e.useRef)(null);pr.current===null&&(pr.current=new Map(B.map(e=>[e.key,{width:e.width,pinned:e.pinned,visible:e.visible}])));let mr=(0,e.useMemo)(()=>Ce(G.selection),[G.selection]),hr=(0,e.useMemo)(()=>C(U),[U]),[gr,_r]=(0,e.useState)(0),vr=hr.left.reduce((e,{column:t})=>e+(G.columnWidths[t.key]??t.width),0),yr=hr.right.reduce((e,{column:t})=>e+(G.columnWidths[t.key]??t.width),0),br=hr.left.length>0,xr=br?M+vr:0,wr=br?0:M,Tr=(0,e.useMemo)(()=>hr.center.map(({column:e})=>e),[hr.center]),Er=(0,e.useMemo)(()=>Tr.some(te),[Tr]),Dr=gr-xr-yr-wr,Or=(0,e.useMemo)(()=>!Er||gr<=0?Wc:ne(Tr,G.columnWidths,Dr),[Er,gr,Tr,G.columnWidths,Dr]),kr=(0,e.useMemo)(()=>Or===Wc?G.columnWidths:{...Or,...G.columnWidths},[Or,G.columnWidths]);dr.current=kr;let jr=T(hr.left,G.columnWidths),Mr=T(hr.center,kr),Pr=T(hr.right,G.columnWidths),Fr=(0,e.useMemo)(()=>O(`left`,hr.left,jr),[hr.left,jr]),Gr=(0,e.useMemo)(()=>O(`center`,hr.center,Mr),[hr.center,Mr]),Zr=(0,e.useMemo)(()=>O(`right`,hr.right,Pr),[hr.right,Pr]),q=(0,e.useMemo)(()=>({left:Fr,center:Gr,right:Zr}),[Fr,Gr,Zr]),ei=q.left.entries.length>0,ti=q.right.entries.length>0,ni=!ei,ai=M,oi=ni?M:0,si=ei?ai+q.left.totalWidth:0,ci=q.right.totalWidth,li=oi+q.center.totalWidth,ui=si+li+ci,di=(0,e.useRef)(new Map),fi=(0,e.useCallback)(e=>{let t=G.filters.columnFilters[e.key];if(t?.kind===`numberSet`||t?.kind===`textSet`||t?.kind===`dateSet`||t?.kind===`text`)return t.kind;let n=di.current.get(e.key);if(n)return n;let r=_a({editorType:e.editor?.type,isServerSide:W,rowCount:z.length,getRawValueAt:t=>R(z[t],e)});return r.conclusive&&di.current.set(e.key,r.filterType),r.filterType},[G.filters.columnFilters,W,z]),{filterPopoverState:J,filterPopoverLayout:pi,filterPopoverRef:mi,filterTextInputRef:hi,filterSelectRef:gi,isFilterPopoverOpen:_i,openedFilterColumn:vi,openedFilterType:yi,openColumnFilterPopover:bi,closeColumnFilterPopover:xi,updateFilterPopoverDraft:Si,updateFilterPopoverNumberDraft:Ci,updateFilterPopoverTextDraft:wi,updateFilterPopoverDateDraft:Ti}=Zn({visibleColumns:H,columnFilterValues:G.filters.columnFilters,enableColumnFilter:$n,gridRootRef:qt,resolveColumnFilterType:fi}),{columnMenuLayout:Ei,columnMenuRef:Di,isColumnMenuOpen:Oi,openedMenuColumnKey:Ai,openedMenuColumn:ji,openColumnMenuFromButton:Mi,openColumnMenuFromButtonClick:Ni,openColumnMenuFromContextMenu:Fi,closeColumnMenu:Ii}=Bs({visibleColumns:H,enableColumnMenu:Ze,gridRootRef:qt}),{activeToolPanelTab:Li,availableToolPanelTabs:Ri,toolPanelLayout:zi,toolPanelFlashTick:Bi,toolPanelRef:Vi,openToolPanel:Hi,closeToolPanel:Ui,moveToolPanel:Wi}=Zs({canUseFilterTab:$n,canUseColumnsTab:Ze,canUseSortTab:Qn,gridRootRef:qt,alliedRef:mi,suppressEscape:_i,onSuppressedEscape:xi}),{contextMenuState:Gi,contextMenuLayout:Ki,contextMenuRef:qi,isContextMenuOpen:Yi,openContextMenu:Xi,closeContextMenu:Zi}=Nc({gridRootRef:qt});(0,e.useEffect)(()=>{let e=H.reduce((e,t)=>(te(t)||(e[t.key]=t.width),e),{});K(v.resetColumnWidths(e))},[H]);let Qi=G.filters.globalText,$i=G.filters.columnFilters,ea=(0,e.useDeferredValue)($i),{order:ta,status:na,progress:ra}=Fo({rows:z,baseOrder:(0,e.useMemo)(()=>st(z.length),[z.length]),columns:H,globalText:Qi,enabled:er}),ia=(0,e.useMemo)(()=>{let e=[];for(let t of H)Tt(ea[t.key])&&e.push(t.key);return e.join(`\0`)},[H,ea]),aa=(0,e.useMemo)(()=>{let e=new Map;if(ia.length===0)return e;let t=new Set(ia.split(`\0`)),n=z.length;for(let r of H){if(!t.has(r.key))continue;let i=new Float64Array(n);for(let e=0;e<n;e+=1)i[e]=mt(R(z[e],r));e.set(r.key,i)}return e},[z,H,ia]),sa=(0,e.useMemo)(()=>It(z,ta,H,ea,aa),[z,ta,H,ea,aa]),ca=(0,e.useMemo)(()=>Hr(z,sa,H,G.sort),[z,sa,H,G.sort]),ua=Fn(Jn,(0,e.useMemo)(()=>Jn&&Nn(ca,z.length),[Jn,ca,z.length]));(0,e.useEffect)(()=>{},[W,jn.length]);let fa=(0,e.useMemo)(()=>Bn?wn(z,ca,jn,Mn):null,[Bn,z,ca,jn,Mn]),pa=(0,e.useMemo)(()=>fa?Tn(fa,G.collapsedGroupKeys):null,[fa,G.collapsedGroupKeys]),ma=(0,e.useCallback)(e=>{K(v.toggleGroupCollapsed(e))},[K]),ha=(0,e.useMemo)(()=>{if(pa){let{displayOrder:e,groups:t}=pa;return{getRowCount:()=>e.length,getRow:t=>z[e[t]],getSourceIndex:t=>{let n=e[t];return n>=0?n:void 0},getRowKey:n=>{let r=e[n];return bn(r)?yn(t[xn(r)]):Xn(z[r],r)},getGroupRow:n=>{let r=e[n];return bn(r)?t[xn(r)]:void 0}}}return{getRowCount:()=>ca.length,getRow:e=>z[ca[e]],getSourceIndex:e=>ca[e],getRowKey:e=>Xn(z[ca[e]],ca[e])}},[pa,ca,z,Xn]),ga=(0,e.useMemo)(()=>W?Go({globalText:er?Qi:``,columnFilters:$n?$i:Vc,sort:Qn?G.sort:Hc}):Bc,[W,er,Qi,$n,$i,Qn,G.sort]),va=(0,e.useMemo)(()=>W?Ko(ga):``,[W,ga]),[Ca,wa]=(0,e.useState)(ga),[Oa,ka]=(0,e.useState)(va);(0,e.useEffect)(()=>{if(!W)return;let e=setTimeout(()=>{wa(ga),ka(va)},Xc);return()=>clearTimeout(e)},[W,va,ga]);let Aa=Wo({dataSource:n,rowKeyGetter:Xn,query:Ca,queryKey:Oa,refreshToken:a,onLoadError:o,onWriteError:c}),[Fa,Ia]=(0,e.useState)(null),[La,Ra]=(0,e.useState)(null),za=Aa.requestRange,Y=W?Aa.rowModel:ha,Ba=(0,e.useMemo)(()=>W&&!Aa.canUpdateRows?()=>!1:he,[W,Aa.canUpdateRows,he]),Va=W&&Aa.canUpdateRows?Aa.applyCellEdits:void 0,Ha=(0,e.useRef)(Y);Ha.current=Y;let Ya=(0,e.useCallback)(e=>{if(!Nt||!Pt)return;let t=e.target;if(!t)return;let n=t.closest(`[data-row-index]`);if(!n)return;let r=n.dataset.rowIndex;if(r===void 0)return;let i=Number(r);if(!Number.isInteger(i))return;let a=Y.getRow(i);if(!a)return;let o=Y.getRowKey(i)??i,s,c,l=t.closest(`[data-ssg-col-key]`),u=l?.dataset.ssgColKey;if(l&&u!==void 0){let e=Ec(U,u);if(e<0)return;let t=U[e];s={type:`cell`,rowIndex:i,colIndex:e,rowKey:o,row:a,column:t,value:R(a,t)},c=Dc(G.selection,i,e)}else s={type:`rowHeader`,rowIndex:i,rowKey:o,row:a},c=Oc(G.selection,i);let d={target:s,clientX:e.clientX,clientY:e.clientY,selection:G.selection,activeCell:G.activeCell,isTargetSelected:c},f=Pt(d);!f||f.length===0||(e.preventDefault(),Ft?.(d),Xi(d,f))},[Nt,Pt,Ft,Y,U,G.selection,G.activeCell,Xi]),{isAutosizing:Za,runAutosize:Qa}=xo({rowModelRef:Ha,gridRootRef:qt,columnWidthsRef:dr,dispatch:K}),$a=(0,e.useRef)(H);$a.current=H;let eo=(0,e.useRef)(!1);(0,e.useEffect)(()=>{let{shouldRun:e,nextHasAutoSizedOnMount:t}=xa({mode:Ve,isServerSide:W,rowCount:z.length,hasAutoSizedOnMount:eo.current});eo.current=t,e&&Qa($a.current)},[Ve,z,W,Qa]);let X=Y.getRowCount(),to=pa?ca.length:X,no=Gt!==null&&X>=Gt.minRows?Gt:null,ro=(0,e.useMemo)(()=>{let e=null;return()=>e??=Array.from(ca,e=>z[e])},[ca,z]),io=(0,e.useMemo)(()=>b(H,kr),[H,kr]),[ao,oo]=(0,e.useState)(0),[so,co]=(0,e.useState)(0),lo=(0,e.useRef)(null);(0,e.useEffect)(()=>{lo.current=Vt??null},[Vt]);let uo=(0,e.useRef)(0),fo=(0,e.useRef)(null);(0,e.useEffect)(()=>{let e=en.current;if(!e)return;oo(e.scrollTop),co(e.clientHeight),_r(e.clientWidth);let t=null,n=()=>{t=null;let e=fo.current;fo.current=null,e&&lo.current?.(e)},r=()=>{oo(e.scrollTop);let r=uo.current>0?`api`:`user`;r===`api`&&--uo.current;let i=fo.current;fo.current={top:e.scrollTop,left:e.scrollLeft,source:i?.source===`user`?`user`:r},lo.current&&t===null&&(t=requestAnimationFrame(n))};e.addEventListener(`scroll`,r,{passive:!0});let i=new ResizeObserver(()=>{co(e.clientHeight),_r(e.clientWidth)});return i.observe(e),()=>{e.removeEventListener(`scroll`,r),t!==null&&cancelAnimationFrame(t),i.disconnect()}},[]);let po=q.center.entries,mo=_({horizontal:!0,count:po.length,getScrollElement:()=>en.current,estimateSize:e=>po[e]?.paneLocalSize??po[e]?.column.width??120,overscan:8,useFlushSync:!1,scrollMargin:si}),ho=mo.getVirtualItems(),go=D??Wt,_o=(0,e.useMemo)(()=>H.some(e=>e.autoHeight===!0),[H]),vo=!W&&Wr(E,_o,X,5e4);(0,e.useEffect)(()=>{},[E,_o,X,W]);let yo=(0,e.useRef)(new Map),[bo,So]=(0,e.useState)(0),[Co,wo]=(0,e.useState)(0),To=(0,e.useRef)(null),Eo=(0,e.useRef)(new Set),Do=(0,e.useMemo)(()=>vo?qa(X,go,Y.getRowKey,yo.current):null,[vo,X,go,Y]),Oo=(0,e.useMemo)(()=>vo&&Do?Xa(Do):Kr(X,Wt),[vo,Do,bo,X,Wt]),ko=Ot?.height??200,Ao=Ot?.isExpandable,jo=(0,e.useMemo)(()=>ar?Gn({expandedKeys:G.expandedDetailRowKeys,rowModel:Y,height:ko,isExpandable:Ao,cache:or.current,allowScan:!W}):Kc,[ar,G.expandedDetailRowKeys,Y,ko,Ao,W]),No=jo.length>0&&Oo.totalBodyHeight+jo.reduce((e,t)=>e+t.height,0)<=15e6;(0,e.useEffect)(()=>{},[ar,jo,No]);let Po=(0,e.useMemo)(()=>No?qr(Oo,jo):Oo,[No,Oo,jo]),Io=vo||No,Lo=(0,e.useMemo)(()=>Io?$r({headerHeight:V,viewportHeight:so,scrollTop:ao,overscan:20},Po):Qr({rowCount:X,rowHeight:Wt,headerHeight:V,viewportHeight:so,scrollTop:ao,overscan:20,maxBodyPx:Ur}),[Io,Po,X,Wt,V,so,ao]),Ro=Lo.rows,zo=Lo.rowIndexSet,Bo=(0,e.useMemo)(()=>{if(!No)return qc;let e=[];for(let t of Ro)t.detailSize!==void 0&&t.detailSize>0&&e.push({rowKey:Y.getRowKey(t.index)??t.index,virtualRow:t});return e},[No,Ro,Y]),Vo=Ot?.render,Ho=(0,e.useCallback)(e=>{if(!Vo)return null;let t=e.virtualRow.index,n=Y.getRow(t);if(n===void 0)return null;let r={row:n,rowKey:e.rowKey,rowIndex:t,sourceRowIndex:Y.getSourceIndex(t)??t,collapse:()=>ur(e.rowKey,t,!1)};return Vo(r)},[Vo,Y,ur]),Uo=si+oi,qo=Math.max(Math.min(gr-Uo-ci,q.center.totalWidth),0),Jo=Ro.length>0?Ro[0].index:0,Xo=Ro.length>0?Ro[Ro.length-1].index:-1;(0,e.useEffect)(()=>{if(!W)return;let e=en.current;e&&(e.scrollTop=0),oo(0)},[W,Oa]),(0,e.useEffect)(()=>{!W||!ar||(or.current=Un(),K(v.setExpandedDetailRowKeys(new Set)))},[W,ar,Oa,K]),(0,e.useEffect)(()=>{W&&(Xo<Jo||za(Jo,Xo+1))},[W,Jo,Xo,za,Oa]);let Zo=Lo.physicalBodyHeight,$o=Lo.translateY===0?void 0:`translateY(${Lo.translateY}px)`,es=Lo.scaleFactor,ts=Lo.windowBaseOffsetPx;(0,e.useLayoutEffect)(()=>{if(!vo||!Do){To.current?.disconnect(),To.current=null,Eo.current.clear();return}let e=en.current;if(!e)return;let t=e.querySelectorAll(`[data-autoheight-cell]`);if(t.length>0){let n=new Map;t.forEach(t=>{if(Hn(e,t))return;let r=t.closest(`[data-row-index]`);if(!r)return;let i=Number(r.dataset.rowIndex);if(!Number.isFinite(i))return;let a=Math.ceil(t.getBoundingClientRect().height),o=n.get(i);(o===void 0||a>o)&&n.set(i,a)});let r=!1,i=1/0;if(n.forEach((e,t)=>{let n=Y.getRowKey(t)??t;Ja(Do,t,n,e)&&(r=!0,t<i&&(i=t))}),r){let t=e.scrollTop,n=Po.rowAtContentY(t),r=t-Po.rowTop(n);Ka(Do,i),e.scrollTop=Do.prefix[n]+r,So(e=>e+1)}}let n=To.current??new ResizeObserver(()=>wo(e=>e+1));To.current=n;let r=Eo.current,i=new Set;t.forEach(e=>{i.add(e),r.has(e)||(n.observe(e),r.add(e))});let a=[];r.forEach(e=>{i.has(e)||a.push(e)}),a.forEach(e=>{n.unobserve(e),r.delete(e)})},[vo,Do,Po,Y,Ro,so,bo,Co]),(0,e.useEffect)(()=>{let e=Eo.current;return()=>{To.current?.disconnect(),To.current=null,e.clear()}},[]);let ns=(0,e.useMemo)(()=>ho.map(e=>po[e.index]).filter(e=>!!e),[ho,po]),rs=q.left.entries,is=q.right.entries,as=(0,e.useMemo)(()=>{if(!G.activeCell)return null;let{row:e,col:t}=G.activeCell;if(e<0||e>=X)return null;let n=ee(q,t);return n?{pane:n.pane,rect:{left:n.extent.start,top:Po.rowTop(e),width:n.extent.width,height:Po.cellHeight(e)}}:null},[G.activeCell,X,q,Po]),os=(0,e.useMemo)(()=>as&&as.pane===`center`?as.rect:null,[as]),ss=(0,e.useCallback)(e=>as&&as.pane===e?as.rect:null,[as]),cs=(0,e.useCallback)(e=>G.editingCell?ss(e):null,[G.editingCell,ss]),ls=Pi(j)===`dark`?`ssg-theme-dark`:void 0,Z=m(Ct),us=h(Ot?.className);ki(Z.tooltip),ii({scrollRef:en,columnVirtualizer:mo,columnMeasurements:io,totalScrollWidth:ui,physicalBodyHeight:Zo,headerHeight:V,leftPaneWidth:si,rightPaneWidth:ci,centerLeadingWidth:oi,activeCellRect:os,activeCell:G.activeCell,verticalScaleFactor:es});let ds=(0,e.useMemo)(()=>{if(Ne!==void 0)return Ne;if(Pe!==void 0)return{type:`include`,rowKeys:Pe}},[Ne,Pe]),fs=ds!==void 0,hs=Me??(Ae&&je===`multiple`),gs=G.rowSelection,vs=ue(gs,to),ys=(0,e.useRef)(gs);ys.current=gs;let bs=(0,e.useRef)(je);bs.current=je;let xs=(0,e.useRef)(Fe);xs.current=Fe;let Ss=(0,e.useRef)(fs);Ss.current=fs;let Cs=(0,e.useRef)(null),ws=(0,e.useCallback)(e=>{pe(ys.current,e)||xs.current?.(de(e)),Ss.current||K(v.setRowSelectionState(e))},[K]),Ts=(0,e.useRef)(ws);Ts.current=ws;let Es=(0,e.useCallback)((e,t)=>{let n=Ha.current,r=Math.min(e,t),i=Math.max(e,t),a=[];for(let e=r;e<=i;e+=1)n.getRow(e)&&a.push(n.getRowKey(e)??e);return a},[]),Ds=(0,e.useCallback)((e,t)=>{let n=Ha.current;if(!n.getRow(e))return;let r=n.getRowKey(e)??e;if(bs.current===`single`){Cs.current=e,ws(ae(r));return}if(t.shiftKey&&Cs.current!==null){ws(oe(Es(Cs.current,e)));return}Cs.current=e,ws(ie(ys.current,r))},[ws,Es]),Os=(0,e.useCallback)(e=>{let t=Ha.current;if(t.getRow(e)){if(bs.current===`single`){ws(ae(t.getRowKey(e)??e));return}Cs.current!==null&&ws(oe(Es(Cs.current,e)))}},[ws,Es]),As=(0,e.useCallback)(()=>{let e=ue(ys.current,to);ws(e===`all`?ce():se())},[ws,to]);(0,e.useEffect)(()=>{if(!fs||!ds)return;let e=fe(ds);pe(ys.current,e)||K(v.setRowSelectionState(e))},[fs,ds,K]);let js=(0,e.useRef)(()=>{}),{updateSelectionFromPointer:Ns,handleCellPointerDown:Ps,handleCellDoubleClick:Is,handleCellPointerEnter:Ls,handleNativeDragStart:Rs,handleRowHeaderPointerDown:zs,handleRowHeaderPointerEnter:Vs,handleColumnHeaderPointerDown:Hs,handleColumnHeaderPointerEnter:Us}=ri({gridRootRef:qt,bodyScrollRef:Zt,onCellDoubleClickRef:js,scrollContainerRef:en,leftPaneScrollRef:tn,rightPaneScrollRef:nn,pointerClientRef:Jt,autoScrollFrameRef:Xt,uiState:G,dispatch:K,enableRangeSelection:ke,enableSorting:Qn,orderedColumns:U,filteredRowsLength:X,visibleColumnsLength:H.length,paneLayout:q,leftLeadingWidth:ai,centerLeadingWidth:oi,rightLeadingWidth:0,headerHeight:V,rowMetrics:Po,verticalScaleFactor:es,setHoveredRowIndex:Sn,setHoveredColumnIndex:fn,enableRowHover:qe,enableColumnHeaderHover:Je,enableRowSelection:Ae,onGutterRowSelect:Ds,onGutterRowSelectDrag:Os}),Ws=(0,e.useRef)(()=>{}),Gs=(0,e.useCallback)(e=>{e&&requestAnimationFrame(()=>{Ws.current(e.row,e.col,`auto`)})},[]),qs=ge&&!L&&!W,{handleRowsChange:Q,undo:Js,redo:Ys,canUndo:Xs,canRedo:Qs,clearHistory:ec}=Ar({rows:z,selection:G.selection,activeCell:G.activeCell,onRowsChange:u,dispatch:K,enabled:qs,limit:De,onUndoRedoStateChange:Oe,onAfterRestore:Gs}),tc=(0,e.useCallback)(()=>{if(Va){let e=ba({getRow:e=>Y.getRow(e),columns:U,selection:G.selection,activeCell:G.activeCell,viewRowCount:X,canWriteCell:(e,t,n,r)=>He({readOnly:L,canEditCell:Ba},e,t,n,r)});e.length>0&&Va(e);return}if(!Q)return;let{nextRows:e,changed:t}=ya({rows:z,resolveSourceIndex:e=>Y.getSourceIndex(e),columns:U,selection:G.selection,activeCell:G.activeCell,viewRowCount:X,canWriteCell:(e,t,n,r)=>He({readOnly:L,canEditCell:Ba},e,t,n,r)});t&&Q(e)},[Va,Ba,Q,U,L,Y,z,G.activeCell,G.selection,X]),{isWholeGridSelected:nc,handleCopy:rc,handlePaste:ic}=sr({rows:z,rowModel:Y,visibleColumns:U,uiState:G,readOnly:L,canEditCell:Ba,createRow:g,createOverflowColumn:y,onRowsChange:Q,onColumnsChange:d,applyServerSideCellEdits:Va,isRowExportable:p,dispatch:K}),ac=(0,e.useCallback)(()=>{if(X===0||H.length===0)return;let e={row:0,col:0},t={row:X-1,col:H.length-1};K(v.startSelection(e)),K(v.updateSelection(t)),K(v.endSelection()),K(v.activateCell(e))},[K,X,H.length]),oc=(0,e.useCallback)(e=>{let t=Y.getRow(e.row),n=U[e.col];if(!t||!n||!He({readOnly:L,canEditCell:Ba},e.row,e.col,t,n)||n.editor?.type===`checkbox`)return;let r=R(t,n);on(String(r??``)),K(v.startEdit(e))},[Ba,K,Y,L,U]),cc=(0,e.useCallback)(e=>{if(!Q&&!Va)return;let t=Y.getRow(e.row),n=U[e.col];if(!t||!n||n.editor?.type!==`checkbox`||!He({readOnly:L,canEditCell:Ba},e.row,e.col,t,n))return;let r=Ke(R(t,n),n.editor);if(tr(n,t,r).action===`reject`)return;if(Va){Va([{viewIndex:e.row,column:n,value:r}]);return}if(!Q)return;let i=Y.getSourceIndex(e.row);i!==void 0&&Q(et(z,i,n,r))},[Va,Ba,Q,U,L,Y,z]),{handleKeyDown:uc}=Nr({uiState:G,rowModel:Y,visibleColumns:U,readOnly:L,canEditCell:Ba,setEditorInitialValue:on,dispatch:K,handleCopy:rc,handleCellDoubleClick:oc,isWholeGridSelected:nc,selectEntireGrid:ac,onUndo:Js,onRedo:Ys,onClearSelection:tc,enableClearOnDelete:Se,onToggleCheckboxCell:cc,onToggleGroup:ma}),{startEditWithValue:dc,commitEdit:hc,cancelEdit:gc}=Cr({uiState:G,rows:z,visibleColumns:U,rowModel:Y,setEditorInitialValue:on,onRowsChange:Q,applyServerSideCellEdits:Va,dispatch:K,gridRootRef:qt,editorActionGuardRef:Qt}),_c=G.editingCell?U[G.editingCell.col]:void 0,vc=G.editingCell?Y.getRow(G.editingCell.row):void 0,yc=G.editingCell&&_c&&vc?{row:vc,rowIndex:G.editingCell.row,sourceRowIndex:Y.getSourceIndex(G.editingCell.row)??G.editingCell.row,rowKey:Y.getRowKey(G.editingCell.row)??G.editingCell.row,colIndex:G.editingCell.col,column:_c,value:R(vc,_c)}:null,bc=(0,e.useCallback)(e=>{let t=Y.getRow(e.row),n=U[e.col];if(!t||!n||!He({readOnly:L,canEditCell:Ba},e.row,e.col,t,n)||n.editor?.type===`checkbox`)return;let r=R(t,n);dc(e,String(r??``))},[Ba,Y,L,dc,U]);(0,e.useEffect)(()=>{js.current=bc},[bc]);let xc=(0,e.useMemo)(()=>{if(!G.selection)return null;if(G.selection.type===`cell`){let e=ye(G.selection.range);return{extents:P(q,e.start.col,e.end.col),startRow:e.start.row,endRow:e.end.row}}if(G.selection.type===`row`){let e=be(G.selection.startRow,G.selection.endRow);return{extents:F(q),startRow:e.startRow,endRow:e.endRow}}let e=xe(G.selection.startCol,G.selection.endCol);return{extents:P(q,e.startCol,e.endCol),startRow:0,endRow:Math.max(X-1,0)}},[G.selection,q,X]),Sc=(0,e.useMemo)(()=>{if(!xc)return null;let e=Jr(xc.startRow,xc.endRow,Jo,Xo);return e?{top:Po.rowTop(e.start),height:Po.rowsHeight(e.start,e.end)}:null},[xc,Po,Jo,Xo]),Cc=(0,e.useMemo)(()=>{if(!No||!xc)return null;let e=Jr(xc.startRow,xc.endRow,Jo,Xo);return e?qn(e.start,e.end,Po,jo):null},[No,xc,Po,jo,Jo,Xo]),wc=(0,e.useCallback)(e=>{if(!xc||!Sc)return null;let t=xc.extents[e];return t?{left:t.start,top:Sc.top,width:t.width,height:Sc.height}:null},[xc,Sc]),kc=(0,e.useCallback)(e=>{if(!Cc||!xc)return null;let t=xc.extents[e];return t?Cc.map(e=>({left:t.start,top:e.top,width:t.width,height:e.height})):null},[Cc,xc]),Ac=(0,e.useCallback)(e=>{if(e.preventDefault(),e.button===0&&!(X===0||H.length===0)){if(qt.current?.focus({preventScroll:!0}),hs){As();return}if(nc){K(v.clearSelection()),K(v.activateCell(null));return}ac()}},[K,X,nc,ac,H.length,hs,As]),jc=(0,e.useCallback)(e=>{Sn(t=>t===e?null:t)},[Sn]),Mc=(0,e.useCallback)(e=>{fn(t=>t===e?null:t)},[]),Zc=(0,e.useCallback)(()=>{cn(!0)},[]),Qc=(0,e.useCallback)(()=>{cn(!1)},[]),$c=(0,e.useCallback)((e,t)=>{t.preventDefault(),t.stopPropagation();let n=t.timeStamp,r=fr.current;if(r&&r.key===e.key&&n-r.time<Jc&&Math.abs(t.clientX-r.x)<Yc){fr.current=null,Qa([e]);return}fr.current={key:e.key,time:n,x:t.clientX},K(v.startColumnResize(e.key,t.clientX,dr.current[e.key]??e.width,e.minWidth??60,e.maxWidth))},[K,Qa]),el=(0,e.useCallback)((e,t)=>{if(Ii(),!d)return;let n=B.find(t=>t.key===e);n&&(n.pinned??void 0)!==t&&(d(B.map(n=>{let r=dr.current[n.key]??n.width;return n.key===e?{...n,width:r,pinned:t}:r===n.width?n:{...n,width:r}})),K(v.stopEdit()),K(v.clearSelection()),K(v.activateCell(null)))},[Ii,B,K,d]),tl=(0,e.useCallback)(e=>{Ii();let t=H.find(t=>t.key===e);t&&Qa([t])},[Ii,Qa,H]),nl=(0,e.useCallback)(()=>{Ii(),Qa(H)},[Ii,Qa,H]),rl=(0,e.useMemo)(()=>B.map(e=>({key:e.key,title:e.title??e.key,visible:e.visible!==!1,pane:x(e)})),[B]),il=(0,e.useCallback)(()=>{Ii(),Hi(`columns`)},[Ii,Hi]),al=(0,e.useMemo)(()=>H.filter(e=>e.key!==`__ssg_detail_toggle__`&&e.key!==`__ssg_row_drag_handle__`).map(e=>({key:e.key,title:e.title??e.key})),[H]),ol=(0,e.useCallback)(()=>{Ii(),Hi(`sort`)},[Ii,Hi]),sl=(0,e.useCallback)(e=>{Ii(),bi(e)},[Ii,bi]),cl=(0,e.useMemo)(()=>{let e=[],t=(t,n)=>{let r=$i[t.key];!r||!pt(r)||e.push({columnKey:t.key,title:t.title||t.key,summaryText:la(r,r.kind===`dateSet`?at(t.dateFilterPresets):void 0),isHidden:n})};for(let e of U)t(e,!1);for(let e of B)e.visible===!1&&t(e,!0);return e},[$i,B,U]),ll=(0,e.useMemo)(()=>H.filter(e=>!!e.filterType&&!pt($i[e.key])).map(e=>({key:e.key,title:e.title||e.key})),[$i,H]),ul=(0,e.useCallback)(()=>{Ii(),Hi(`filter`)},[Ii,Hi]),dl=(0,e.useCallback)(()=>{Li===`filter`?Ui():Hi(`filter`)},[Li,Ui,Hi]),fl=(0,e.useCallback)(e=>{let t=$.current,n=en.current;if(!t)return;let r=t.orderedColumns.findIndex(t=>t.key===e);if(r<0)return;let i=t.orderedColumns[r];if(n){let e=ee(t.paneLayout,r);if(e&&e.pane===`center`){let r=Ga({cellLeft:t.leftPaneTotalWidth+t.centerLeadingWidth+e.extent.start,cellWidth:e.extent.width,leftPaneWidth:t.leftPaneTotalWidth,rightPaneWidth:t.rightPaneTotalWidth,viewportWidth:n.clientWidth,currentScrollLeft:n.scrollLeft,align:`auto`,maxScrollLeft:n.scrollWidth-n.clientWidth});r!==n.scrollLeft&&n.scrollTo({left:r,behavior:`auto`})}}let a=()=>{let t=qt.current,n=t?.querySelectorAll(`[data-ssg-col-key]`);return!t||!n?null:Array.from(n).find(n=>n.dataset.ssgColKey===e&&!Hn(t,n))??null},o=e=>{if(!qt.current)return;let t=a();if(t===null){e<8&&requestAnimationFrame(()=>o(e+1));return}bi(i),t.classList.remove(`ssg-header-cell--jump-flash`),t.offsetWidth,t.classList.add(`ssg-header-cell--jump-flash`),t.addEventListener(`animationend`,()=>{t.classList.remove(`ssg-header-cell--jump-flash`)},{once:!0})};requestAnimationFrame(()=>{o(0)})},[qt,bi]),pl=(0,e.useCallback)(e=>{K(v.clearColumnFilter(e))},[K]),ml=(0,e.useCallback)(()=>{K(v.setAllFilters({globalText:G.filters.globalText,columnFilters:{}}))},[K,G.filters.globalText]),hl=(0,e.useCallback)(()=>{K(v.setGlobalFilter(``))},[K]),gl=(0,e.useCallback)((e,t)=>{if(!d)return;let n=B.find(t=>t.key===e);n&&n.visible!==!1!==t&&(!t&&B.filter(e=>e.visible!==!1).length<=1||(d(B.map(n=>{let r=dr.current[n.key]??n.width;return n.key===e?{...n,width:r,visible:t}:r===n.width?n:{...n,width:r}})),K(v.stopEdit()),K(v.clearSelection()),K(v.activateCell(null))))},[B,K,d]),_l=(0,e.useCallback)(()=>{d&&B.some(e=>e.visible===!1)&&(d(B.map(e=>{let t=dr.current[e.key]??e.width,n=t!==e.width,r=e.visible===!1;return!n&&!r?e:r?{...e,width:t,visible:!0}:{...e,width:t}})),K(v.stopEdit()),K(v.clearSelection()),K(v.activateCell(null)))},[B,K,d]),vl=(0,e.useCallback)(()=>{if(!d)return;let e=U[0]?.key;e!==void 0&&B.some(t=>t.visible!==!1&&t.key!==e)&&(d(B.map(t=>{let n=dr.current[t.key]??t.width,r=n!==t.width,i=t.visible!==!1&&t.key!==e;return!r&&!i?t:i?{...t,width:n,visible:!1}:{...t,width:n}})),K(v.stopEdit()),K(v.clearSelection()),K(v.activateCell(null)))},[B,K,d,U]),yl=(0,e.useCallback)((e,t)=>{if(!d||e.length!==B.length)return;let n=new Map(B.map(e=>[e.key,e]));if(!e.every(e=>n.has(e)))return;let r=S(e.map(e=>{let r=n.get(e),i=dr.current[r.key]??r.width,a=t?.has(e)?t.get(e):r.pinned,o=i!==r.width,s=(r.pinned??void 0)!==(a??void 0);return o||s?{...r,width:i,pinned:a}:r}));r.length===B.length&&r.every((e,t)=>{let n=B[t];return!!n&&n.key===e.key&&n.width===e.width&&(n.pinned??void 0)===(e.pinned??void 0)})||(d(r),K(v.stopEdit()),K(v.clearSelection()),K(v.activateCell(null)))},[B,K,d]),bl=(0,e.useCallback)(e=>{yl(e)},[yl]),{onColumnDragHandlePointerDown:xl,leftIndicatorRef:Sl,centerIndicatorRef:Cl,rightIndicatorRef:wl,applyReorderSettle:Tl}=Ji({enabled:!!d,columns:B,paneLayout:q,leftPaneScrollRef:tn,rightPaneScrollRef:nn,bodyScrollRef:Zt,scrollContainerRef:en,leftLeadingWidth:ai,centerLeadingWidth:oi,rightLeadingWidth:0,applyColumnOrderAndPin:yl,ghostSlot:Z.dragGhost});(0,e.useLayoutEffect)(()=>{Tl()},[q,Tl]);let El=(0,e.useCallback)((e,t)=>{if(!Q)return;let n=kn(z,e,t);if(n===z)return;let r=z[e],i=n;Q(i),Mt?.({rowKey:Xn(r,e),fromIndex:e,toIndex:t,rows:i})},[z,Q,Mt,Xn]),Dl=(0,e.useCallback)((e,t)=>{if(W){console.warn(`[SpreadsheetGrid] moveRow() は clientSide(rows + onRowsChange)専用です。serverSide では無効です。`);return}let n=z.findIndex((t,n)=>Xn(t,n)===e);n<0||El(n,t)},[W,z,Xn,El]),{onRowDragHandlePointerDown:Ol,leftIndicatorRef:kl,centerIndicatorRef:Al,rightIndicatorRef:jl,applyReorderSettle:Ml}=oa({enabled:ua,rowMetrics:Po,headerHeight:V,verticalScaleFactor:es,windowBaseOffsetPx:ts,scrollContainerRef:en,bodyScrollRef:Zt,getRowDragLabel:(0,e.useCallback)(e=>{let t=`行 ${e+1}`,n=Y.getRow(e);if(!n)return t;let r=H.find(e=>!zn(e.key));if(!r)return t;let i=R(n,r),a=r.valueFormatter?r.valueFormatter({value:i,row:n,column:r}):String(i??``);return a.trim().length>0?a:t},[Y,H]),commitRowMove:El,ghostSlot:Z.dragGhost});(0,e.useLayoutEffect)(()=>{Ml()},[Y,Ml]);let Nl=d?xl:void 0,Pl={position:`absolute`,top:0,height:V+Zo,transform:`translateX(-1px)`,pointerEvents:`none`,zIndex:8,display:`none`},Fl=(0,e.useCallback)(()=>{if(!d)return;let e=pr.current;if(!e)return;let t=Sa(B,e,dr.current);t!==null&&(d(t),K(v.stopEdit()),K(v.clearSelection()),K(v.activateCell(null)))},[B,K,d]),Il=(0,e.useCallback)(()=>{Ii(),Fl()},[Ii,Fl]),Ll=(0,e.useCallback)(e=>vi?R(z[e],vi):void 0,[z,vi]),{options:Rl,allValues:zl,status:Bl,progress:Vl}=Mo({column:vi,rowCount:z.length,getRawValueAt:Ll}),Hl=yi===`dateSet`,Ul=(0,e.useMemo)(()=>Hl?da(Rl):Rl,[Hl,Rl]),Wl=(0,e.useMemo)(()=>Hl?new Set(Ul.map(e=>e.value)):zl,[Hl,Ul,zl]),Gl=vi?G.filters.columnFilters[vi.key]:void 0,Kl=(0,e.useMemo)(()=>{let e=ct(Gl)?Gl:lt(Gl)||ut(Gl)||dt(Gl)?Gl.set:null;return e?{mode:e.mode===`exclude`?`exclude`:`include`,values:new Set(e.values)}:null},[Gl]),ql=!(vi?.filterOptions&&vi.filterOptions.length>0),Jl=(0,e.useCallback)((e,t)=>{let n=vi?.key===e?yi:void 0,r=G.filters.columnFilters[e];if(n===`numberSet`){let e=lt(r)?r.condition:null;return!e&&!t?null:{kind:`numberSet`,condition:e,set:t}}if(n===`textSet`){let e=ut(r)?r.condition:null;return!e&&!t?null:{kind:`textSet`,condition:e,set:t}}if(n===`dateSet`){let e=dt(r)?r.condition:null;return!e&&!t?null:{kind:`dateSet`,condition:e,set:t}}return null},[vi,G.filters.columnFilters,yi]),Yl=yi===`numberSet`||yi===`textSet`||yi===`dateSet`,Xl=(0,e.useCallback)((e,t,n)=>{let r=vi?.key===e&&Yl,i=t.mode===`include`?t.values.size:n-t.values.size;if(i>=n){if(r){let t=Jl(e,null);if(t){K(v.setColumnFilter(e,t));return}}K(v.clearColumnFilter(e));return}let a=i<=0?{mode:`include`,values:[]}:{mode:t.mode,values:Array.from(t.values)};if(r){let t=Jl(e,a);if(t){K(v.setColumnFilter(e,t));return}}let o={kind:`set`,...a};K(v.setColumnFilter(e,o))},[K,vi,Yl,Jl]),Zl=(0,e.useCallback)(e=>{if(!J)return;let t=Ul.length,n=Kl,r;r=Qo(n,e)?n===null?ql?{mode:`exclude`,values:new Set([e])}:{mode:`include`,values:Ic(Wl,e)}:n.mode===`include`?{mode:`include`,values:Ic(n.values,e)}:{mode:`exclude`,values:Fc(n.values,e)}:n.mode===`include`?{mode:`include`,values:Fc(n.values,e)}:{mode:`exclude`,values:Ic(n.values,e)},Xl(J.columnKey,r,t)},[J,Kl,ql,Wl,Ul,Xl]),Ql=(0,e.useCallback)((e,t)=>{if(!J)return;let n=J.columnKey,r=Ul.length;if(e===`all`){Xl(n,t?{mode:`exclude`,values:new Set}:{mode:`include`,values:new Set},r);return}let i=Kl,a;if(t){if(i===null){Xl(n,{mode:`exclude`,values:new Set},r);return}a=i.mode===`include`?{mode:`include`,values:Lc(i.values,e)}:{mode:`exclude`,values:Rc(i.values,e)}}else a=i===null?ql?{mode:`exclude`,values:new Set(e)}:{mode:`include`,values:Rc(Wl,e)}:i.mode===`include`?{mode:`include`,values:Rc(i.values,e)}:{mode:`exclude`,values:Lc(i.values,e)};Xl(n,a,r)},[J,Kl,ql,Wl,Ul,Xl]),$l=(0,e.useCallback)(e=>{J&&Xl(J.columnKey,{mode:`include`,values:new Set(e)},Ul.length)},[J,Xl,Ul]),eu=(0,e.useCallback)(()=>{J&&(K(v.clearColumnFilter(J.columnKey)),yi===`numberSet`&&Ci(Lt),yi===`textSet`&&wi(Kt),yi===`dateSet`&&Ti($t))},[K,J,Ci,wi,Ti,yi]),tu=(0,e.useCallback)(e=>{let t=G.filters.columnFilters[e];return lt(t)||ut(t)||dt(t)?t.set:ct(t)?{mode:t.mode,values:t.values}:null},[G.filters.columnFilters]),nu=(0,e.useCallback)(e=>{if(Ci(e),!J||yi!==`numberSet`)return;let t=J.columnKey,n=Ht(e),r=tu(t);if(!n&&!r){G.filters.columnFilters[t]&&K(v.clearColumnFilter(t));return}K(v.setColumnFilter(t,{kind:`numberSet`,condition:n,set:r}))},[Ci,J,tu,G.filters.columnFilters,K,yi]),ru=(0,e.useCallback)(e=>{if(wi(e),!J||yi!==`textSet`)return;let t=J.columnKey,n=Yt(e),r=tu(t);if(!n&&!r){G.filters.columnFilters[t]&&K(v.clearColumnFilter(t));return}K(v.setColumnFilter(t,{kind:`textSet`,condition:n,set:r}))},[wi,J,tu,G.filters.columnFilters,K,yi]),iu=(0,e.useCallback)(e=>{if(Ti(e),!J||yi!==`dateSet`)return;let t=J.columnKey,n=an(e),r=tu(t);if(!n&&!r){G.filters.columnFilters[t]&&K(v.clearColumnFilter(t));return}K(v.setColumnFilter(t,{kind:`dateSet`,condition:n,set:r}))},[Ti,J,tu,G.filters.columnFilters,K,yi]),au=(0,e.useCallback)(()=>{if(yi===`textSet`){ru(Kt);return}if(yi===`dateSet`){iu($t);return}nu(Lt)},[ru,iu,nu,yi]),ou=(0,e.useCallback)(()=>{if(!J)return;let e=J.columnKey,t=Jl(e,null);if(t){K(v.setColumnFilter(e,t));return}K(v.clearColumnFilter(e))},[J,Jl,K]),su=(0,e.useCallback)(()=>{if(!J)return;let e=yi??`text`;if(e===`set`||e===`numberSet`||e===`textSet`||e===`dateSet`){xi();return}if(e===`number`){let e=J.numberDraft?Ut(J.numberDraft):null;if(!e){K(v.clearColumnFilter(J.columnKey)),xi();return}K(v.setColumnFilter(J.columnKey,e)),xi();return}let t=e===`select`?J.draftValue:J.draftValue.trim();if(!t){K(v.clearColumnFilter(J.columnKey)),xi();return}let n=e===`select`?{kind:`select`,value:t}:e===`date`?{kind:`date`,value:t}:e===`custom`?{kind:`custom`,value:t}:{kind:`text`,value:t};K(v.setColumnFilter(J.columnKey,n)),xi()},[xi,K,J,yi]),cu=(0,e.useCallback)(()=>{J&&(K(v.clearColumnFilter(J.columnKey)),xi())},[xi,K,J]),lu=(0,e.useCallback)((e,t)=>{if(Ii(),!ze)return;let n=Ir(G.sort,e,t,!1);K(n.length===0?v.clearSort():v.setSort(n))},[Ii,K,ze,G.sort]),uu=(0,e.useCallback)((e,t)=>{if(!ze)return;let n=Lr(G.sort,e,t);K(v.setSort(n))},[K,ze,G.sort]),du=(0,e.useCallback)((e,t)=>{if(!ze)return;let n=Rr(G.sort,e,t);K(v.setSort(n))},[K,ze,G.sort]),fu=(0,e.useCallback)((e,t)=>{if(!ze)return;let n=zr(G.sort,e,t);K(v.setSort(n))},[K,ze,G.sort]),pu=(0,e.useCallback)(e=>{if(!ze)return;let t=Br(G.sort,e);K(t.length===0?v.clearSort():v.setSort(t))},[K,ze,G.sort]),mu=(0,e.useCallback)(()=>{ze&&K(v.clearSort())},[K,ze]),hu=(0,e.useCallback)((e,t)=>{if(!ze)return;let n=Vr(G.sort,e,t);K(v.setSort(n))},[K,ze,G.sort]),gu=G.expandedDetailRowKeys,_u=(0,e.useCallback)((e,t,n,a,o)=>{let s=R(e,n);if(n.key===`__ssg_row_drag_handle__`){if(jt){let n=Y.getSourceIndex(t)??t;if(!jt(e,{rowKey:Y.getRowKey(t)??t,sourceRowIndex:n}))return null}return(0,r.jsx)(`span`,{className:i(`ssg-row-drag-handle`,!ua&&`ssg-row-drag-handle--disabled`),"data-ssg-tooltip":ua?Ln:In,"aria-hidden":`true`,onPointerDown:ua?e=>Ol(t,e):void 0,children:(0,r.jsxs)(`svg`,{width:`8`,height:`14`,viewBox:`0 0 8 14`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:[(0,r.jsx)(`circle`,{cx:`2`,cy:`3`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`3`,r:`1`}),(0,r.jsx)(`circle`,{cx:`2`,cy:`7`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`7`,r:`1`}),(0,r.jsx)(`circle`,{cx:`2`,cy:`11`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`11`,r:`1`})]})})}if(n.renderCell){let r=Y.getSourceIndex(t)??t,i=Y.getRowKey(t)??t,c=ar?{expanded:gu.has(i),expandable:Ao?Ao(e,{rowKey:i,sourceRowIndex:r}):!0,toggle:()=>cr(i,t),setExpanded:e=>ur(i,t,e)}:void 0;return n.renderCell({row:e,rowIndex:t,sourceRowIndex:r,rowKey:i,colIndex:a,...c?{detail:c}:null,value:s,column:n,isActive:o.isActive,isSelected:o.isSelected,isEditing:o.isEditing,readOnly:o.readOnly,setValue:r=>{if(tr(n,e,r).action===`reject`)return;if(Va){Va([{viewIndex:t,column:n,value:r}]);return}if(!Q)return;let i=Y.getSourceIndex(t);if(i===void 0)return;let a=et(z,i,n,r);Q(a)}})}return n.editor?.type===`checkbox`?(0,r.jsx)(Yo,{slot:Z.checkbox,checked:Ge(s,n.editor),readOnly:o.readOnly,onToggle:()=>cc({row:t,col:a})}):(0,r.jsx)(`span`,{children:n.valueFormatter?n.valueFormatter({value:s,row:e,column:n}):String(s??``)})},[Y,Q,z,cc,Z.checkbox,Va,ar,gu,Ao,cr,ur,jt,ua,Ol]),{slotContext:vu}=Sr({rows:z,viewRowCount:to,getFilteredRows:ro,columns:B,visibleColumns:H,uiState:G,setGlobalFilterText:(0,e.useCallback)(e=>{K(v.setGlobalFilter(e))},[K]),globalFilterStatus:na,globalFilterProgress:ra}),yu=(0,e.useMemo)(()=>({width:M,minWidth:M}),[M]),bu=X===0,xu=(e,t,n)=>({position:`sticky`,...e===`left`?{left:0}:{right:0},width:t,minWidth:t,flexShrink:0,alignSelf:`stretch`,zIndex:2,...n?e===`left`?{borderRight:`1px solid var(--ssg-pane-border)`,boxShadow:`var(--ssg-pane-shadow-left)`}:{borderLeft:`1px solid var(--ssg-pane-border)`,boxShadow:`var(--ssg-pane-shadow-right)`}:{}}),Su=(()=>{if(!vi)return`(なし)`;let e=G.filters.columnFilters[vi.key];if(ct(e))return e.mode===`exclude`?`${e.values.length}件を除外中`:`${e.values.length}件を選択中`;if(Et(e))return e.raw;let t=Dt(e);return t.trim()?t:`(なし)`})(),Cu=vi?at(vi.dateFilterPresets):void 0,wu=Gl&&pt(Gl)?la(Gl,Cu):`フィルターなし`,Tu=vi?(0,r.jsx)(ps,{popoverSlot:Z.popover,themeClassName:ls,isOpen:!!J,title:vi.title||vi.key,filterType:yi??`text`,isServerSide:W,draftValue:J?.draftValue??``,numberConditionDraft:J?.numberDraft??null,onNumberConditionDraftChange:nu,textConditionDraft:J?.textDraft??null,onTextConditionDraftChange:ru,dateConditionDraft:J?.dateDraft??null,onDateConditionDraftChange:iu,datePresets:Cu,renderDateInput:Re?e=>Re({...e,columnKey:vi.key}):void 0,onComboConditionClear:au,onComboSelectionClear:ou,comboSummaryText:wu,currentValueText:Su,layout:pi,selectOptions:Ul,setSelection:Kl,optionsStatus:Bl,optionsProgress:Vl,popoverRef:mi,textInputRef:hi,selectRef:gi,onRequestClose:xi,onDraftChange:Si,onApply:su,onClear:cu,onSetValueToggle:Zl,onSetSelectAllChange:Ql,onSetClear:eu,onSetReplaceSelection:$l}):null,Eu=ji?(0,r.jsx)(Ks,{slots:Z,themeClassName:ls,isOpen:Oi,title:ji.title||ji.key,columnKey:ji.key,canFilter:$n&&!!ji.filterType,onOpenFilter:()=>sl(ji),canSort:Qn,sortDirection:G.sort.find(e=>e.columnKey===ji.key)?.direction??null,onSortChange:e=>lu(ji.key,e),onOpenSortManager:ol,canManageFilters:$n,onOpenFilterManager:ul,pinned:ji.pinned,canChangePinned:!!d,layout:Ei,popoverRef:Di,onPinnedChange:el,onAutosizeColumn:tl,onAutosizeAllColumns:nl,onOpenColumnChooser:il,canResetColumns:!!d,onResetColumns:Il,onRequestClose:Ii}):null,Du=er&&Qi.trim().length>0,Ou=cl.length+ +!!Du,ku=Ri.map(e=>e===`filter`?{tab:e,label:`フィルター`,badge:Ou}:e===`sort`?{tab:e,label:`並び替え`,badge:G.sort.length}:{tab:e,label:`列`}),Au=(0,r.jsx)($s,{popoverSlot:Z.popover,themeClassName:ls,activeTab:Li,flashTick:Bi,tabs:ku,layout:zi,panelRef:Vi,onSelectTab:Hi,onRequestClose:Ui,onPanelMove:Wi,children:Li===null?null:{filter:()=>(0,r.jsx)(fc,{entries:cl,addableColumns:ll,showGlobalFilterRow:Du,globalFilterText:Qi,canFilter:$n,onEditFilter:fl,onAddFilter:fl,onClearFilter:pl,onClearAllFilters:ml,onClearGlobalFilter:hl}),columns:()=>(0,r.jsx)(sc,{items:rl,canToggle:!!d,onToggleColumnVisibility:gl,onShowAllColumns:_l,onHideAllColumns:vl,onResetColumns:Fl,onReorderColumns:bl}),sort:()=>(0,r.jsx)(lc,{entries:G.sort,columns:al,canSort:Qn,onAddLevel:uu,onChangeDirection:du,onChangeColumn:fu,onRemoveLevel:pu,onClearAll:mu,onMove:hu})}[Li]()}),ju=(0,r.jsx)(Pc,{slots:Z,themeClassName:ls,isOpen:Yi,items:Gi?.items??Gc,layout:Ki,popoverRef:qi,onRequestClose:Zi}),Mu=_i||Oi||Li!==null||Yi,Nu=it,Pu=ot&&er,Fu=Nu||Pu?(0,r.jsx)(_s,{slot:Z.toolbar,context:vu,showSummary:Nu,showFilter:Pu,showCounts:gt,globalFilterPlaceholder:ft,globalFilterIcon:ht,onFilterSummaryClick:$n?dl:void 0}):null,Iu=nt?lr(yt,vu,Fu):null,Lu=rt?lr(bt,vu,(0,r.jsx)(ms,{slot:Z.statusBar,context:vu,showCounts:_t})):null,Ru=N===void 0&&I===void 0?void 0:{...N===void 0?{}:{height:N},maxHeight:I??(N===void 0?void 0:`none`)},$=(0,e.useRef)(null);$.current={dispatch:K,rowModel:Y,viewRowCount:X,leafRowCount:to,groupTree:fa,rowMetrics:Po,paneLayout:q,orderedColumns:U,columns:B,onColumnsChange:d,uiState:G,headerHeight:V,verticalScaleFactor:es,leftPaneTotalWidth:si,rightPaneTotalWidth:ci,centerLeadingWidth:oi,windowFirstRow:Jo,windowLastRow:Xo,physicalBodyHeight:Zo,rows:z,isServerSide:W,serverSideRefresh:Aa.refresh,resolvedRowKeyGetter:Xn,isRowExportable:p,openFilterManager:()=>{Hi(`filter`)},closeFilterManager:()=>{Li===`filter`&&Ui()},undoRows:Js,redoRows:Ys,canUndoRows:Xs,canRedoRows:Qs,clearUndoHistory:ec,detailRowEnabled:Ot!=null,detailIsExpandable:Ao,moveRowByKey:Dl};let zu=(0,e.useCallback)((e,t,n=`auto`)=>{let r=Math.max(e.scrollHeight-e.clientHeight,0),i=Math.max(e.scrollWidth-e.clientWidth,0),a=Math.min(Math.max(t.top,0),r),o=Math.min(Math.max(t.left,0),i);(Math.round(a)!==Math.round(e.scrollTop)||Math.round(o)!==Math.round(e.scrollLeft))&&(uo.current+=1),e.scrollTo({top:a,left:o,behavior:n})},[]),Bu=(0,e.useCallback)((e,t)=>{let n=en.current,r=$.current;!n||!r||zu(n,{top:e===null?n.scrollTop:Xr(e,r.verticalScaleFactor),left:t===null?n.scrollLeft:t})},[zu]),Vu=(0,e.useCallback)((e,t)=>{let n=en.current,r=$.current;if(!n||!r||r.viewRowCount===0)return null;let i=Math.min(Math.max(e,0),r.viewRowCount-1);return Wa({rowTop:r.rowMetrics.rowTop(i),rowHeight:r.rowMetrics.cellHeight(i),headerHeight:r.headerHeight,viewportHeight:n.clientHeight,currentScrollTop:Yr(n.scrollTop,r.verticalScaleFactor),align:t})},[]),Hu=(0,e.useCallback)((e,t)=>{let n=en.current,r=$.current;if(!n||!r)return null;let i=ee(r.paneLayout,e);return!i||i.pane!==`center`?null:Ga({cellLeft:r.leftPaneTotalWidth+r.centerLeadingWidth+i.extent.start,cellWidth:i.extent.width,leftPaneWidth:r.leftPaneTotalWidth,rightPaneWidth:r.rightPaneTotalWidth,viewportWidth:n.clientWidth,currentScrollLeft:n.scrollLeft,align:t})},[]),Uu=(0,e.useCallback)((e,t,n)=>{Bu(Vu(e,n),Hu(t,n))},[Bu,Hu,Vu]);(0,e.useEffect)(()=>{Ws.current=Uu},[Uu]),(0,e.useImperativeHandle)(zt,()=>{let e=e=>{let t=$.current;if(!t)return null;let n=e=>t.rowModel.getRow(e),r=t.isRowExportable,i=r?(e,n)=>r(e,{viewRowIndex:n,rowKey:t.rowModel.getRowKey(n)??n}):void 0,a=r?(e,n)=>r(e,{viewRowIndex:n,rowKey:t.resolvedRowKeyGetter(e,n)}):void 0,o=Da(e);if(o===`raw`)return t.isServerSide?(console.warn(`SpreadsheetGrid: scope 'raw' は serverSide では未ロード行を取得できないため、'view'(ロード済みビュー行)として扱います。全件エクスポートはサーバ側での実施を推奨します。`),{getRow:n,startRow:0,endRow:t.viewRowCount,columns:t.orderedColumns,isRowIncluded:i}):{getRow:e=>t.rows[e],startRow:0,endRow:t.rows.length,columns:t.orderedColumns,isRowIncluded:a};if(o===`rendered`)return{getRow:n,startRow:t.windowFirstRow,endRow:t.windowLastRow>=t.windowFirstRow?t.windowLastRow+1:t.windowFirstRow,columns:t.orderedColumns,isRowIncluded:i};if(o===`selection`){let e=t.uiState.selection;if(!e)return null;if(e.type===`cell`){let r=ye(e.range);return{getRow:n,startRow:r.start.row,endRow:r.end.row+1,columns:t.orderedColumns.slice(r.start.col,r.end.col+1),isRowIncluded:i}}if(e.type===`row`){let r=be(e.startRow,e.endRow);return{getRow:n,startRow:r.startRow,endRow:r.endRow+1,columns:t.orderedColumns,isRowIncluded:i}}let r=xe(e.startCol,e.endCol);return{getRow:n,startRow:0,endRow:t.viewRowCount,columns:t.orderedColumns.slice(r.startCol,r.endCol+1),isRowIncluded:i}}return{getRow:n,startRow:0,endRow:t.viewRowCount,columns:t.orderedColumns,isRowIncluded:i}},t=e=>e.filter(e=>!zn(e.key)),n=n=>{let r=e(n?.scope??`view`);return r?Ta({getRow:r.getRow,startRow:r.startRow,endRow:r.endRow,columns:t(r.columns),delimiter:n?.delimiter,includeHeaders:n?.includeHeaders,bom:n?.bom,isRowIncluded:r.isRowIncluded}):n?.bom?``:``},r=n=>{let r=e(n?.scope??`view`);return r?Ea({getRow:r.getRow,startRow:r.startRow,endRow:r.endRow,columns:t(r.columns),isRowIncluded:r.isRowIncluded}):{columns:[],rows:[]}};return{scrollToRow:(e,t)=>Bu(Vu(e,t?.align??`auto`),null),scrollToCell:(e,t,n)=>Uu(e,t,n?.align??`auto`),scrollToTop:()=>{let e=en.current;e&&zu(e,{top:0,left:e.scrollLeft})},scrollToBottom:()=>{let e=en.current,t=$.current;!e||!t||zu(e,{top:Math.max(t.headerHeight+t.physicalBodyHeight-e.clientHeight,0),left:e.scrollLeft})},getScrollPosition:()=>{let e=en.current;return e?{top:e.scrollTop,left:e.scrollLeft}:null},setScrollPosition:(e,t)=>{let n=en.current;n&&zu(n,{top:e.top??n.scrollTop,left:e.left??n.scrollLeft},t?.behavior??`auto`)},getVisibleRowRange:()=>{let e=$.current;return!e||e.windowLastRow<e.windowFirstRow?null:{startIndex:e.windowFirstRow,endIndex:e.windowLastRow+1}},getActiveCell:()=>{let e=$.current?.uiState.activeCell;return e?{row:e.row,col:e.col}:null},setActiveCell:(e,t)=>{let n=$.current;n&&(n.dispatch(v.activateCell(e)),e&&t?.scrollIntoView&&Uu(e.row,e.col,`auto`))},getSelection:()=>$.current?.uiState.selection??null,selectCell:(e,t,n)=>{let r=$.current;if(!r)return;let i={row:e,col:t};r.dispatch(v.startSelection(i)),r.dispatch(v.endSelection()),n?.scrollIntoView&&Uu(e,t,`auto`)},selectRange:(e,t)=>{let n=$.current;n&&(n.dispatch(v.startSelection(e.start)),n.dispatch(v.updateSelection(e.end)),n.dispatch(v.endSelection()),t?.scrollIntoView&&Uu(e.end.row,e.end.col,`auto`))},clearSelection:()=>{$.current?.dispatch(v.clearSelection())},getSelectedRows:()=>{let e=$.current;if(!e)return[];let t=e.uiState.selection;if(!t)return[];let n=[],r=t=>{let r=e.rowModel.getRow(t);r&&n.push(r)};if(t.type===`cell`){let e=ye(t.range);for(let t=e.start.row;t<=e.end.row;t+=1)r(t)}else if(t.type===`row`){let e=be(t.startRow,t.endRow);for(let t=e.startRow;t<=e.endRow;t+=1)r(t)}else for(let t=0;t<e.viewRowCount;t+=1)r(t);return n},exportCsv:e=>n(e),downloadCsv:(e,t)=>{if(typeof document>`u`)return;let r=n({...t,bom:t?.bom??!0}),i=new Blob([r],{type:`text/csv;charset=utf-8;`}),a=URL.createObjectURL(i),o=document.createElement(`a`);o.href=a,o.download=e??`export.csv`,document.body.appendChild(o),o.click(),document.body.removeChild(o),URL.revokeObjectURL(a)},getExportData:e=>r(e),getState:()=>{let e=$.current;return e?Ma(e.uiState.columnWidths,e.uiState.filters,e.uiState.sort,ja(e.columns)):Ma({},{globalText:``,columnFilters:{}},[],[])},applyState:e=>{let t=$.current;if(!t)return;let n=Na(e);t.onColumnsChange&&n.columns&&t.onColumnsChange(Pa(t.columns,n.columns,n.columnWidths)),t.dispatch(v.resetColumnWidths(n.columnWidths)),t.dispatch(v.setAllFilters(n.filters)),t.dispatch(v.setSort(n.sort))},getRowSelection:()=>{let e=$.current;return e?de(e.uiState.rowSelection):{type:`include`,rowKeys:[]}},setRowSelection:e=>{Ts.current(fe(e))},getSelectedRowKeys:()=>{let e=$.current;if(!e)return[];let t=e.uiState.rowSelection;if(t.mode===`include`)return Array.from(t.keys);let n=[],r=e.rowModel.getRowCount();for(let i=0;i<r;i+=1){if(!e.rowModel.getRow(i))continue;let r=e.rowModel.getRowKey(i)??i;t.keys.has(r)||n.push(r)}return n},getSelectedRowData:()=>{let e=$.current;if(!e)return[];let t=e.uiState.rowSelection,n=[],r=e.rowModel.getRowCount();for(let i=0;i<r;i+=1){let r=e.rowModel.getRow(i);r&&re(t,e.rowModel.getRowKey(i)??i)&&n.push(r)}return n},getSelectedRowCount:()=>{let e=$.current;return e?le(e.uiState.rowSelection,e.leafRowCount):0},isRowSelected:e=>{let t=$.current;return t?re(t.uiState.rowSelection,e):!1},selectAllRows:()=>{Ts.current(se())},clearRowSelection:()=>{Ts.current(ce())},undo:()=>{$.current?.undoRows()},redo:()=>{$.current?.redoRows()},canUndo:()=>$.current?.canUndoRows()??!1,canRedo:()=>$.current?.canRedoRows()??!1,clearUndoHistory:()=>{$.current?.clearUndoHistory()},setGroupCollapsed:(e,t)=>{$.current?.dispatch(v.setGroupCollapsed(e,t))},expandAllGroups:()=>{$.current?.dispatch(v.setCollapsedGroupKeys(new Set))},collapseAllGroups:()=>{let e=$.current;!e||!e.groupTree||e.dispatch(v.setCollapsedGroupKeys(new Set(Dn(e.groupTree))))},getGroupRows:()=>{let e=$.current;return e?.groupTree?En(e.groupTree):[]},setDetailRowExpanded:(e,t)=>{let n=$.current;if(!(!n||!n.detailRowEnabled)){if(t&&n.detailIsExpandable){let t=Wn(n.rowModel,e,or.current,!n.isServerSide);if(t>=0){let r=n.rowModel.getRow(t);if(r!=null&&!n.detailIsExpandable(r,{rowKey:e,sourceRowIndex:n.rowModel.getSourceIndex(t)}))return}}n.dispatch(v.setDetailRowExpanded(e,t))}},getExpandedDetailRowKeys:()=>{let e=$.current;return e&&e.detailRowEnabled?Array.from(e.uiState.expandedDetailRowKeys):[]},collapseAllDetailRows:()=>{let e=$.current;!e||!e.detailRowEnabled||e.dispatch(v.setExpandedDetailRowKeys(new Set))},moveRow:(e,t)=>{$.current?.moveRowByKey(e,t)},getInvalidCells:()=>{let e=$.current;return e?e.isServerSide?(console.warn(`[SpreadsheetGrid] getInvalidCells は serverSide モードでは利用できません(空配列を返します)。`),[]):nr(e.rows,e.columns,e.resolvedRowKeyGetter):[]},refreshServerSide:()=>{let e=$.current;if(e){if(!e.isServerSide){console.warn(`[SpreadsheetGrid] refreshServerSide は clientSide(rows)モードでは何もしません(dataSource 指定時のみ有効です)。`);return}e.serverSideRefresh()}},openFilterManager:()=>{$.current?.openFilterManager()},closeFilterManager:()=>{$.current?.closeFilterManager()}}},[zu,Bu,Uu,Vu]);let Wu=(0,e.useRef)(Bt);Wu.current=Bt;let Gu=(0,e.useRef)(null);return(0,e.useEffect)(()=>{if(!Wu.current)return;let e=Ma(G.columnWidths,G.filters,G.sort,ja(B)),t=Ua(Gu.current,e,G.dragState!==null);Gu.current=t.nextLast,t.emit&&Wu.current(e)},[G.columnWidths,G.filters,G.sort,G.dragState,B]),(0,r.jsxs)(`div`,{className:i(`ssg-root`,A!==`standard`&&`ssg-root--density-${A}`,ls,me&&`ssg-root--dim-readonly`,xt,Z.root?.className),style:s(Z.root?.style,St),children:[Iu,vt&&(0,r.jsx)(pc,{slot:Z.filterChipBar,entries:cl,canFilter:$n,onEditFilter:fl,onClearFilter:pl,onClearAllFilters:ml}),(0,r.jsxs)(`div`,{ref:qt,className:`ssg-shell`,style:{cursor:Za?`progress`:void 0},onDragStart:Rs,onPointerLeave:()=>Sn(null),onPointerMoveCapture:e=>{Jt.current={x:e.clientX,y:e.clientY},Ns(e.clientX,e.clientY)},tabIndex:Mu?-1:0,onKeyDown:Mu?void 0:uc,onPaste:Mu?void 0:ic,onContextMenu:Ya,children:[(0,r.jsxs)(`div`,{ref:en,className:i(`ssg-scroll-container`,no?.scrollbar===!0&&`ssg-scroll-container--custom-scrollbar`),style:Ru,children:[(0,r.jsxs)(`div`,{className:`ssg-inner-row`,style:{width:ui,minWidth:ui,height:V+Zo},children:[(0,r.jsxs)(`div`,{ref:tn,style:xu(`left`,si,ei),children:[ei&&(0,r.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:si,minWidth:si,height:V+Zo},children:[(0,r.jsx)(Fs,{pane:`left`,ownsRowHeader:!0,leadingWidth:ai,headerHeight:V,rowHeaderCellStyle:yu,slots:Z,isCornerHovered:sn,isWholeGridSelected:nc,showSelectAllCheckbox:hs,selectAllState:vs,filteredRowsLength:X,visibleColumnsLength:H.length,renderEntries:rs,hoveredColumnIndex:dn,selectionSnapshot:mr,columnFilterValues:G.filters.columnFilters,sortState:G.sort,onCornerPointerDown:Ac,onCornerPointerEnter:Zc,onCornerPointerLeave:Qc,onColumnHeaderPointerDown:Hs,onColumnHeaderPointerEnter:Us,onColumnHeaderPointerLeave:Mc,onColumnResizePointerDown:$c,enableColumnMenu:Ze,enableColumnResize:Be,openedMenuColumnKey:Ai,onColumnMenuButtonPointerDown:Mi,onColumnMenuButtonClick:Ni,onColumnHeaderContextMenu:Fi,onColumnDragHandlePointerDown:Nl}),(0,r.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:si,height:V+Zo,transform:$o},children:[(kc(`left`)??[wc(`left`)]).map((e,t)=>(0,r.jsx)(we,{slot:Z.selectionOverlay,rect:e,headerHeight:V,baseOffset:ts,leadingWidth:ai},t)),(0,r.jsx)(Te,{slot:Z.activeCellOverlay,rect:ss(`left`),headerHeight:V,baseOffset:ts,leadingWidth:ai}),(0,r.jsx)(tt,{slots:Z,rect:cs(`left`),headerHeight:V,baseOffset:ts,leadingWidth:ai,initialValue:rn,editor:_c?.editor,editorSession:yc,themeClassName:ls,onCommit:hc,onCancel:gc,align:_c?.align,enterMove:Ee}),(0,r.jsx)(ks,{pane:`left`,ownsRowHeader:!0,leadingWidth:ai,rowModel:Y,virtualRows:Ro,virtualRowIndexes:zo,renderEntries:rs,rowHeight:Wt,autoHeight:vo,showCellOverflowTooltip:Ue,showValidationMarks:We,isServerSide:W,collapsedGroupKeys:G.collapsedGroupKeys,onGroupToggle:ma,rowHeaderCellStyle:yu,hoveredRowIndex:An,isWholeGridSelected:nc,enableRowSelection:Ae,rowSelectionState:gs,activeCell:G.activeCell,editingCell:G.editingCell,selectionSnapshot:mr,readOnly:L,canEditCell:Ba,onRowHeaderPointerDown:zs,onRowHeaderPointerEnter:Vs,onRowHeaderPointerLeave:jc,onCellPointerDown:Ps,onCellPointerEnter:Ls,onCellDoubleClick:Is,renderCellContent:_u,getRowClassName:wt,slots:Z}),(0,r.jsx)(Ms,{slots:Z,entries:Bo,mode:`band`,paneWidth:si,baseOffset:ts,cardStickyLeft:0,cardWidth:0,renderCard:Ho}),Jn&&(0,r.jsx)(`div`,{ref:kl,className:`ssg-row-drop-indicator ssg-row-drop-indicator--cap`})]})]}),(0,r.jsx)(`div`,{ref:Sl,className:`ssg-col-drop-indicator`,style:Pl})]}),(0,r.jsx)(`div`,{ref:Zt,className:`ssg-center-pane`,style:{width:li,minWidth:li},children:(0,r.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:li,minWidth:li,height:V+Zo},children:[(0,r.jsx)(Fs,{pane:`center`,ownsRowHeader:ni,leadingWidth:oi,headerHeight:V,rowHeaderCellStyle:yu,slots:Z,isCornerHovered:sn,isWholeGridSelected:nc,showSelectAllCheckbox:hs,selectAllState:vs,filteredRowsLength:X,visibleColumnsLength:H.length,renderEntries:ns,hoveredColumnIndex:dn,selectionSnapshot:mr,columnFilterValues:G.filters.columnFilters,sortState:G.sort,onCornerPointerDown:Ac,onCornerPointerEnter:Zc,onCornerPointerLeave:Qc,onColumnHeaderPointerDown:Hs,onColumnHeaderPointerEnter:Us,onColumnHeaderPointerLeave:Mc,onColumnResizePointerDown:$c,enableColumnMenu:Ze,enableColumnResize:Be,openedMenuColumnKey:Ai,onColumnMenuButtonPointerDown:Mi,onColumnMenuButtonClick:Ni,onColumnHeaderContextMenu:Fi,onColumnDragHandlePointerDown:Nl}),(0,r.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:li,height:V+Zo,transform:$o},children:[(kc(`center`)??[wc(`center`)]).map((e,t)=>(0,r.jsx)(we,{slot:Z.selectionOverlay,rect:e,headerHeight:V,baseOffset:ts,leadingWidth:oi},t)),(0,r.jsx)(Te,{slot:Z.activeCellOverlay,rect:ss(`center`),headerHeight:V,baseOffset:ts,leadingWidth:oi}),(0,r.jsx)(tt,{slots:Z,rect:cs(`center`),headerHeight:V,baseOffset:ts,leadingWidth:oi,initialValue:rn,editor:_c?.editor,editorSession:yc,themeClassName:ls,onCommit:hc,onCancel:gc,align:_c?.align,enterMove:Ee}),(0,r.jsx)(ks,{pane:`center`,ownsRowHeader:ni,leadingWidth:oi,rowModel:Y,virtualRows:Ro,virtualRowIndexes:zo,renderEntries:ns,rowHeight:Wt,autoHeight:vo,showCellOverflowTooltip:Ue,showValidationMarks:We,isServerSide:W,collapsedGroupKeys:G.collapsedGroupKeys,onGroupToggle:ma,rowHeaderCellStyle:yu,hoveredRowIndex:An,isWholeGridSelected:nc,enableRowSelection:Ae,rowSelectionState:gs,activeCell:G.activeCell,editingCell:G.editingCell,selectionSnapshot:mr,readOnly:L,canEditCell:Ba,onRowHeaderPointerDown:zs,onRowHeaderPointerEnter:Vs,onRowHeaderPointerLeave:jc,onCellPointerDown:Ps,onCellPointerEnter:Ls,onCellDoubleClick:Is,renderCellContent:_u,getRowClassName:wt,slots:Z}),(0,r.jsx)(Ms,{slots:Z,entries:Bo,mode:`center`,paneWidth:li,baseOffset:ts,cardStickyLeft:Uo,cardWidth:qo,cardSlot:us,renderCard:Ho}),Jn&&(0,r.jsx)(`div`,{ref:Al,className:i(`ssg-row-drop-indicator`,ni&&`ssg-row-drop-indicator--cap`)})]}),(0,r.jsx)(`div`,{ref:Cl,className:`ssg-col-drop-indicator`,style:Pl})]})}),(0,r.jsxs)(`div`,{ref:nn,style:xu(`right`,ci,ti),children:[ti&&(0,r.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:ci,minWidth:ci,height:V+Zo},children:[(0,r.jsx)(Fs,{pane:`right`,ownsRowHeader:!1,leadingWidth:0,headerHeight:V,rowHeaderCellStyle:yu,slots:Z,isCornerHovered:sn,isWholeGridSelected:nc,showSelectAllCheckbox:hs,selectAllState:vs,filteredRowsLength:X,visibleColumnsLength:H.length,renderEntries:is,hoveredColumnIndex:dn,selectionSnapshot:mr,columnFilterValues:G.filters.columnFilters,sortState:G.sort,onCornerPointerDown:Ac,onCornerPointerEnter:Zc,onCornerPointerLeave:Qc,onColumnHeaderPointerDown:Hs,onColumnHeaderPointerEnter:Us,onColumnHeaderPointerLeave:Mc,onColumnResizePointerDown:$c,enableColumnMenu:Ze,enableColumnResize:Be,openedMenuColumnKey:Ai,onColumnMenuButtonPointerDown:Mi,onColumnMenuButtonClick:Ni,onColumnHeaderContextMenu:Fi,onColumnDragHandlePointerDown:Nl}),(0,r.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:ci,height:V+Zo,transform:$o},children:[(kc(`right`)??[wc(`right`)]).map((e,t)=>(0,r.jsx)(we,{slot:Z.selectionOverlay,rect:e,headerHeight:V,baseOffset:ts,leadingWidth:0},t)),(0,r.jsx)(Te,{slot:Z.activeCellOverlay,rect:ss(`right`),headerHeight:V,baseOffset:ts,leadingWidth:0}),(0,r.jsx)(tt,{slots:Z,rect:cs(`right`),headerHeight:V,baseOffset:ts,leadingWidth:0,initialValue:rn,editor:_c?.editor,editorSession:yc,themeClassName:ls,onCommit:hc,onCancel:gc,align:_c?.align,enterMove:Ee}),(0,r.jsx)(ks,{pane:`right`,ownsRowHeader:!1,leadingWidth:0,rowModel:Y,virtualRows:Ro,virtualRowIndexes:zo,renderEntries:is,rowHeight:Wt,autoHeight:vo,showCellOverflowTooltip:Ue,showValidationMarks:We,isServerSide:W,collapsedGroupKeys:G.collapsedGroupKeys,onGroupToggle:ma,rowHeaderCellStyle:yu,hoveredRowIndex:An,isWholeGridSelected:nc,enableRowSelection:Ae,rowSelectionState:gs,activeCell:G.activeCell,editingCell:G.editingCell,selectionSnapshot:mr,readOnly:L,canEditCell:Ba,onRowHeaderPointerDown:zs,onRowHeaderPointerEnter:Vs,onRowHeaderPointerLeave:jc,onCellPointerDown:Ps,onCellPointerEnter:Ls,onCellDoubleClick:Is,renderCellContent:_u,getRowClassName:wt,slots:Z}),(0,r.jsx)(Ms,{slots:Z,entries:Bo,mode:`band`,paneWidth:ci,baseOffset:ts,cardStickyLeft:0,cardWidth:0,renderCard:Ho}),Jn&&(0,r.jsx)(`div`,{ref:jl,className:`ssg-row-drop-indicator`})]})]}),(0,r.jsx)(`div`,{ref:wl,className:`ssg-col-drop-indicator`,style:Pl})]})]}),bu&&(0,r.jsx)(`div`,{className:i(`ssg-empty-state`,Z.emptyState?.className),style:Z.emptyState?.style,children:z.length===0?$e:Qe})]}),no!==null&&(0,r.jsx)(Tc,{slot:Z.scrollHint,options:no,scrollContainerRef:en,scrollTop:ao,viewportHeight:so,headerHeight:V,physicalBodyHeight:Zo,verticalScaleFactor:es,rowMetrics:Po,rowModel:Y}),Za&&(0,r.jsx)(`div`,{className:`ssg-autosize-overlay`,children:(0,r.jsx)(`span`,{className:`ssg-autosize-pill`,children:`列幅を計算中…`})}),na===`filtering`&&(0,r.jsx)(`div`,{className:`ssg-filter-overlay`,children:(0,r.jsxs)(`span`,{className:`ssg-filter-overlay-chip`,role:`status`,"aria-live":`polite`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-spinner`,"aria-hidden":`true`}),(0,r.jsxs)(`span`,{className:`ssg-filter-overlay-text`,children:[`適用中 `,Math.round(ra*100),`%`]})]})}),W&&(Aa.loadError!==null&&Aa.loadError!==Fa||Aa.writeError!==null&&Aa.writeError!==La)&&(0,r.jsxs)(`div`,{className:`ssg-ssrm-error-bars`,children:[Aa.loadError!==null&&Aa.loadError!==Fa&&(0,r.jsxs)(`div`,{className:i(`ssg-ssrm-error-bar`,Z.errorBar?.className),style:Z.errorBar?.style,role:`alert`,children:[(0,r.jsx)(`span`,{className:`ssg-ssrm-error-bar-dot`,"aria-hidden":`true`}),(0,r.jsxs)(`span`,{className:`ssg-ssrm-error-bar-msg`,children:[`行の取得に失敗しました(`,Aa.loadError.failedBlockCount,` ブロック)`]}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-retry`,onClick:Aa.retryFailedBlocks,children:`再試行`}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-close`,"aria-label":`エラー通知を閉じる`,onClick:()=>Ia(Aa.loadError),children:`×`})]}),Aa.writeError!==null&&Aa.writeError!==La&&(0,r.jsxs)(`div`,{className:i(`ssg-ssrm-error-bar`,Z.errorBar?.className),style:Z.errorBar?.style,role:`alert`,children:[(0,r.jsx)(`span`,{className:`ssg-ssrm-error-bar-dot`,"aria-hidden":`true`}),(0,r.jsxs)(`span`,{className:`ssg-ssrm-error-bar-msg`,children:[`変更の保存に失敗しました(`,Aa.writeError.failedRowCount,` 行)。値を元に戻しました`]}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-close`,"aria-label":`保存エラー通知を閉じる`,onClick:()=>Ra(Aa.writeError),children:`×`})]})]})]}),Lu,Tu,Eu,Au,ju]})}function Qc(e={}){let{locale:t,useGrouping:n=!0,minimumFractionDigits:r,maximumFractionDigits:i,emptyText:a=``}=e;return({value:e})=>{if(e==null||e===``)return a;let o=typeof e==`number`?e:Number(e);if(!Number.isFinite(o))return String(e);let s=Math.abs(o).toString(),c=s.indexOf(`.`),l=c===-1?0:s.length-c-1,u=r??0,d=Math.max(u,i??Math.min(l,20));return new Intl.NumberFormat(t,{useGrouping:n,minimumFractionDigits:u,maximumFractionDigits:d}).format(o)}}exports.SpreadsheetGrid=Zc,exports.numberFormatter=Qc;
|
|
4
|
+
`).filter(e=>e.length>0).map(e=>e.split(` `)):[]},vr=(e,t,n,r,i)=>{if(!r)return``;let a=[];if(r.type===`cell`){let t=De(r.range);for(let r=t.start.row;r<=t.end.row;r+=1){let o=e(r);if(!o||i&&!i(o,r))continue;let s=[];for(let e=t.start.col;e<=t.end.col;e+=1){let t=n[e];if(!t)continue;let r=F(o,t),i=t.formatClipboardValue?t.formatClipboardValue(r,o):String(r??``);s.push(i)}a.push(s.join(` `))}return a.join(`
|
|
5
|
+
`)}if(r.type===`row`){let t=Oe(r.startRow,r.endRow);for(let r=t.startRow;r<=t.endRow;r+=1){let t=e(r);if(!t||i&&!i(t,r))continue;let o=n.map(e=>{let n=F(t,e);return e.formatClipboardValue?e.formatClipboardValue(n,t):String(n??``)});a.push(o.join(` `))}return a.join(`
|
|
6
|
+
`)}let o=ke(r.startCol,r.endCol);for(let r=0;r<t;r+=1){let t=e(r);if(!t||i&&!i(t,r))continue;let s=[];for(let e=o.startCol;e<=o.endCol;e+=1){let r=n[e];if(!r)continue;let i=F(t,r),a=r.formatClipboardValue?r.formatClipboardValue(i,t):String(i??``);s.push(a)}a.push(s.join(` `))}return a.join(`
|
|
7
|
+
`)},yr=(e,t,n,r,i,a,o)=>{if(r.length===0)return e;let s=[...e];for(let e=0;e<r.length;e+=1){let c=t(i+e);if(c===void 0)continue;let l=s[c];if(!l)continue;let u=l,d=!1;for(let t=0;t<r[e].length;t+=1){let i=a+t,s=n[i];if(!s||!o(c,i,l,s))continue;let f=r[e][t],p=ot(s)(f,l);hr(s,l,p).action!==`reject`&&(u=Ze(u,s,p),d=!0)}d&&(s[c]=u)}return s},br=(e,t,n,r,i,a)=>{let o=[];for(let s=0;s<n.length;s+=1){let c=r+s,l=e(c);if(l)for(let e=0;e<n[s].length;e+=1){let r=i+e,u=t[r];if(!u||!a(c,r,l,u))continue;let d=ot(u)(n[s][e],l);hr(u,l,d).action!==`reject`&&o.push({viewIndex:c,column:u,value:d})}}return o},xr=e=>{let{body:t,activeElement:n}=document;if(!t)return!1;let r=document.createElement(`textarea`);r.value=e,r.setAttribute(`readonly`,``),r.style.position=`fixed`,r.style.top=`0`,r.style.left=`-9999px`,r.style.opacity=`0`,t.appendChild(r);let i;try{r.select(),i=document.execCommand(`copy`)}catch{i=!1}finally{t.removeChild(r),n instanceof HTMLElement&&n.focus()}return i},Sr=async e=>{if(navigator.clipboard?.writeText)try{return await navigator.clipboard.writeText(e),!0}catch{}return xr(e)?!0:(console.warn(`[SpreadsheetGrid] クリップボードへのコピーに失敗しました(navigator.clipboard が利用できず、execCommand フォールバックも失敗)。`),!1)},Cr=(e,t,n)=>{if(t===0||n===0||e?.type!==`cell`)return!1;let{start:r,end:i}=e.range,a=Math.min(r.row,i.row),o=Math.min(r.col,i.col),s=Math.max(r.row,i.row),c=Math.max(r.col,i.col);return a===0&&o===0&&s===t-1&&c===n-1},wr=()=>{let e=null,t=t=>{e=t},n=e=>{let{isRowExportable:t,rowModel:n}=e;if(t)return(e,r)=>t(e,{viewRowIndex:r,rowKey:n.getRowKey(r)??r})},r=e=>{let{rowModel:t,visibleColumns:r}=e,i=t.getRowCount();if(i===0||r.length===0)return``;let a=n(e),o=[];for(let e=0;e<i;e+=1){let n=t.getRow(e);if(!n||a&&!a(n,e))continue;let i=r.map(e=>{let t=F(n,e);return e.formatClipboardValue?e.formatClipboardValue(t,n):String(t??``)});o.push(i.join(` `))}return o.join(`
|
|
8
|
+
`)};return{update:t,handleCopy:async()=>{if(e===null)return;let t=e,{rowModel:i,visibleColumns:a,uiState:o}=t,s=Cr(o.selection,i.getRowCount(),a.length)?r(t):vr(i.getRow,i.getRowCount(),a,o.selection,n(t));s&&await Sr(s)},handlePaste:t=>{if(e===null)return;let{rows:n,rowModel:r,visibleColumns:i,uiState:a,readOnly:o,canEditCell:s,createRow:c,createOverflowColumn:l,onRowsChange:u,onColumnsChange:d,applyServerSideCellEdits:f,dispatch:p}=e;if(o||!u&&!f||!a.activeCell)return;let m=t.clipboardData?.getData(`text/plain`)??``;if(!m)return;t.preventDefault();let h=_r(m);if(h.length===0)return;let g=h.reduce((e,t)=>Math.max(e,t.length),0);if(g===0)return;let _=a.activeCell.row,b=a.activeCell.col;if(f){let e=br(e=>r.getRow(e),i,h,_,b,(e,t,n,r)=>Xe({readOnly:o,canEditCell:s},e,t,n,r));e.length>0&&f(e);let t=y(a.activeCell.row+Math.max(h.length-1,0),0,Math.max(r.getRowCount()-1,0)),n=y(a.activeCell.col+Math.max(g-1,0),0,Math.max(i.length-1,0));p(v.startSelection(a.activeCell)),p(v.updateSelection({row:t,col:n})),p(v.endSelection()),p(v.activateCell(a.activeCell));return}if(!u)return;let x=r.getSourceIndex(_);if(x===void 0)return;let S=a.activeCell.col,C=[...n],w=[...i],T=r.getRowCount(),E=C.length,D=e=>e<T?r.getSourceIndex(e):E+(e-T),O=x+h.length;if(O>C.length&&c)for(;C.length<O;)C.push(c());let k=S+g;if(k>w.length&&d&&l){for(;w.length<k;)w.push(l(w.length));d(w)}let A=yr(C,D,w,h,_,S,(e,t,n,r)=>Xe({readOnly:o,canEditCell:s},e,t,n,r)),ee=y(a.activeCell.row+Math.max(h.length-1,0),0,Math.max(Math.max(r.getRowCount()-1,0),_+h.length-1)),j=y(a.activeCell.col+Math.max((h[0]?.length??1)-1,0),0,Math.max(Math.max(w.length-1,0),S+g-1));u(A),p(v.startSelection(a.activeCell)),p(v.updateSelection({row:ee,col:j})),p(v.endSelection()),p(v.activateCell(a.activeCell))}}},Tr=t=>{let n=ur(()=>wr(),t),r=Cr(t.uiState.selection,t.rowModel.getRowCount(),t.visibleColumns.length),i=(0,e.useCallback)(e=>n.handlePaste({clipboardData:e.clipboardData,preventDefault:()=>e.preventDefault()}),[n]);return{isWholeGridSelected:r,handleCopy:n.handleCopy,handlePaste:i}},Er=e=>{if(e<0)return``;let t=e,n=``;for(;t>=0;)n=String.fromCharCode(t%26+65)+n,t=Math.floor(t/26)-1;return n},Dr=(e,t,n)=>e?e(t):n,Or=(e,t=16)=>e.length<=t?e:`${e.slice(0,t)}…`,kr=e=>e?`${Er(e.col)}${e.row+1}`:`なし`,Ar=e=>{if(!e)return`なし`;if(e.type===`cell`){let t=Math.min(e.range.start.row,e.range.end.row),n=Math.max(e.range.start.row,e.range.end.row),r=Math.min(e.range.start.col,e.range.end.col),i=Math.max(e.range.start.col,e.range.end.col);return`${Er(r)}${t+1} - ${Er(i)}${n+1}`}if(e.type===`row`){let t=Math.min(e.startRow,e.endRow),n=Math.max(e.startRow,e.endRow);return`Row ${t+1} - ${n+1}`}let t=Math.min(e.startCol,e.endCol),n=Math.max(e.startCol,e.endCol);return`Col ${Er(t)} - ${Er(n)}`},jr=(e,t)=>`Rows: ${t} / ${e.rows.length}`,Mr=e=>`Columns: ${e.visibleColumns.length} / ${e.columns.length}`,Nr=(e,t)=>{let n=e.selection;if(!n)return{selectedCellCount:0,selectedRowCount:0,selectedColumnCount:0};if(n.type===`cell`){let e=Math.min(n.range.start.row,n.range.end.row),t=Math.max(n.range.start.row,n.range.end.row),r=Math.min(n.range.start.col,n.range.end.col),i=Math.max(n.range.start.col,n.range.end.col),a=t-e+1,o=i-r+1;return{selectedCellCount:a*o,selectedRowCount:a,selectedColumnCount:o}}if(n.type===`row`){let t=Math.min(n.startRow,n.endRow),r=Math.max(n.startRow,n.endRow)-t+1,i=e.visibleColumns.length;return{selectedCellCount:r*i,selectedRowCount:r,selectedColumnCount:i}}let r=Math.min(n.startCol,n.endCol),i=Math.max(n.startCol,n.endCol)-r+1,a=t;return{selectedCellCount:a*i,selectedRowCount:a,selectedColumnCount:i}},Pr=(e,t)=>{let n=Nr(e,t);return`Cells: ${n.selectedCellCount} / Rows: ${n.selectedRowCount}`},Fr=e=>Object.values(e).filter(e=>xt(e)).length,Ir=e=>{let t=e.globalFilterText.trim().length>0,n=t?Or(e.globalFilterText.trim()):null,r=Fr(e.columnFilterValues);return!t&&r===0?`Filter: なし`:t&&r===0?`Filter: Global("${n}")`:!t&&r>0?`Filter: ${r}列`:`Filter: Global("${n}") + ${r}列`},Lr=(e,t)=>{let n=e.find(e=>e.key===t);return n?.title||n?.key||t},Rr=e=>e.sortState.length===0?`Sort: なし`:`Sort: ${e.sortState.map(t=>`${Lr(e.columns,t.columnKey)} (${t.direction===`asc`?`昇順`:`降順`})`).join(`, `)}`,zr=(e,t)=>{let n=Nr(e,t),r=e.globalFilterText.trim().length>0,i=r?Or(e.globalFilterText.trim()):null,a=Fr(e.columnFilterValues),o=r||a>0,s=e.sortState.length>0,c=s?Lr(e.columns,e.sortState[0].columnKey):null;return{rowSummaryText:jr(e,t),columnSummaryText:Mr(e),filterSummaryText:Ir(e),sortSummaryText:Rr(e),activeCellLabel:kr(e.activeCell),selectionLabel:Ar(e.selection),selectionStatsText:Pr(e,t),selectionStats:n,hasGlobalFilter:r,globalFilterPreview:i,activeColumnFilterCount:a,hasAnyFilter:o,hasSorting:s,sortedColumnLabel:c}},Br=({rows:t,viewRowCount:n,getFilteredRows:r,columns:i,visibleColumns:a,uiState:o,setGlobalFilterText:s,globalFilterStatus:c,globalFilterProgress:l})=>{let u=Ae(o),d=o.filters.columnFilters,f=o.sort,p=o.activeCell,m=o.selection,h=(0,e.useMemo)(()=>({rows:t,columns:i,visibleColumns:a,globalFilterText:u,columnFilterValues:d,sortState:f,activeCell:p,selection:m}),[t,i,a,u,d,f,p,m]),g=(0,e.useMemo)(()=>zr(h,n),[h,n]);return{slotContextBase:h,derivedSummary:g,slotContext:(0,e.useMemo)(()=>({...h,get filteredRows(){return r()},setGlobalFilterText:s,derivedSummary:g,globalFilterStatus:c,globalFilterProgress:l}),[g,r,s,h,c,l])}},Vr=()=>{let e=null,t=t=>{e=t},n=t=>{e!==null&&(e.dispatch(v.startSelection(t)),e.dispatch(v.endSelection()),e.dispatch(v.activateCell(t)))},r=(t,n)=>{e!==null&&(e.setEditorInitialValue(n),e.dispatch(v.startEdit(t)))},i=t=>{let r=e;r!==null&&requestAnimationFrame(()=>{if(Wn()||r.gridRootRef.current?.focus(),t!==null&&e!==null){let r=e.rowModel.getRowCount(),i=e.visibleColumns.length;n({row:y(t.row,0,Math.max(r-1,0)),col:y(t.col,0,Math.max(i-1,0))})}r.editorActionGuardRef.current=!1})};return{update:t,activateSingleCell:n,startEditWithValue:r,commitEdit:(t,n)=>{if(e===null)return{status:`noop`};let{uiState:r,visibleColumns:a,rowModel:o,rows:s,applyServerSideCellEdits:c,onRowsChange:l,dispatch:u,editorActionGuardRef:d}=e;if(d.current||!r.editingCell)return{status:`noop`};let f=r.editingCell,p=n===`down`?{row:f.row+1,col:f.col}:n===`up`?{row:f.row-1,col:f.col}:n===`right`?{row:f.row,col:f.col+1}:n===`left`?{row:f.row,col:f.col-1}:f,m=a[f.col],h=o.getSourceIndex(f.row),g=c?o.getRow(f.row):s[h];if(!m||!g)return u(v.stopEdit()),{status:`noop`};if(c){let e=st(m,t,g),n=hr(m,g,e);if(n.action===`reject`)return{status:`rejected`,message:n.message};c([{viewIndex:f.row,column:m,value:e}])}else if(l){let e=st(m,t,g),n=hr(m,g,e);if(n.action===`reject`)return{status:`rejected`,message:n.message};l(ct(s,h,m,e))}return d.current=!0,i(p),u(v.stopEdit()),{status:`committed`}},cancelEdit:()=>{e===null||e.editorActionGuardRef.current||(e.editorActionGuardRef.current=!0,e.dispatch(v.stopEdit()),i(null))}}},Hr=e=>{let t=ur(()=>Vr(),e);return{activateSingleCell:t.activateSingleCell,startEditWithValue:t.startEditWithValue,commitEdit:t.commitEdit,cancelEdit:t.cancelEdit}},Ur=()=>({past:[],future:[]}),W=e=>e.past.length>0,Wr=e=>e.future.length>0,Gr=(e,t,n)=>{if(n<=0)return e;let r=[...e.past,t];return{past:r.length>n?r.slice(r.length-n):r,future:[]}},Kr=(e,t)=>{if(e.past.length===0)return null;let n=e.past[e.past.length-1];return{stack:{past:e.past.slice(0,-1),future:[...e.future,t]},snapshot:n}},qr=(e,t)=>{if(e.future.length===0)return null;let n=e.future[e.future.length-1];return{stack:{past:[...e.past,t],future:e.future.slice(0,-1)},snapshot:n}},Jr=()=>{let e=null,t=Ur(),n=null,r=null,i={canUndo:!1,canRedo:!1},a=()=>e!==null&&e.enabled&&e.onRowsChange!=null,o=()=>a()&&W(t),s=()=>a()&&Wr(t),c=()=>{let t={canUndo:o(),canRedo:s()};t.canUndo===i.canUndo&&t.canRedo===i.canRedo||(i=t,e?.onUndoRedoStateChange?.(t))},l=i=>{e=i,r===null?r=i.rows:i.rows!==r&&(r=i.rows,n===i.rows?n=null:(n=null,t=Ur())),c()},u=t=>{if(e===null)return;let{dispatch:n}=e,r=t.selection;r?.type===`cell`?(n(v.startSelection(r.range.start)),n(v.updateSelection(r.range.end)),n(v.endSelection())):r?.type===`row`?(n(v.startRowSelection(r.startRow)),n(v.updateRowSelection(r.endRow)),n(v.endSelection())):r?.type===`col`?(n(v.startColumnSelection(r.startCol)),n(v.updateColumnSelection(r.endCol)),n(v.endSelection())):n(v.clearSelection()),n(v.activateCell(t.activeCell))},d=r=>{e===null||!e.onRowsChange||(e.enabled&&(t=Gr(t,{rows:e.rows,selection:e.selection,activeCell:e.activeCell},e.limit),n=r,c()),e.onRowsChange(r))},f=r=>{r===null||e===null||!e.onRowsChange||(t=r.stack,n=r.snapshot.rows,e.onRowsChange(r.snapshot.rows),u(r.snapshot),e.onAfterRestore?.(r.snapshot.activeCell),c())},p=()=>e===null?null:{rows:e.rows,selection:e.selection,activeCell:e.activeCell};return{update:l,handleRowsChange:d,undo:()=>{let e=p();!a()||e===null||f(Kr(t,e))},redo:()=>{let e=p();!a()||e===null||f(qr(t,e))},canUndo:o,canRedo:s,clearHistory:()=>{t=Ur(),c()}}},Yr=t=>{let n=ur(()=>Jr(),t),r=t.onRowsChange!=null;return{handleRowsChange:(0,e.useMemo)(()=>r?n.handleRowsChange:void 0,[n,r]),undo:n.undo,redo:n.redo,canUndo:n.canUndo,canRedo:n.canRedo,clearHistory:n.clearHistory}},Xr=e=>e.key.length===1&&!e.ctrlKey&&!e.metaKey&&!e.altKey,Zr=e=>e instanceof HTMLElement?e.closest(`input, textarea, select, button, [contenteditable="true"]`)!==null:!1,Qr=()=>{let e=null,t=t=>{e=t},n=(t,n,r)=>{if(e===null)return;let{uiState:i,rowModel:a,visibleColumns:o,dispatch:s}=e,c=a.getRowCount();if(c===0||o.length===0)return;let l=i.activeCell??{row:0,col:0},u={row:y(l.row+t,0,c-1),col:y(l.col+n,0,o.length-1)};if(r){let e=i.selection?.type===`cell`?i.selection.range.start:l;s(v.startSelection(e)),s(v.updateSelection(u)),s(v.endSelection()),s(v.activateCell(u));return}s(v.startSelection(u)),s(v.endSelection()),s(v.activateCell(u))};return{update:t,handleKeyDown:async t=>{if(e===null)return;let{uiState:r,rowModel:i,visibleColumns:a,readOnly:o,canEditCell:s,setEditorInitialValue:c,dispatch:l,handleCopy:u,handleCellDoubleClick:d,isWholeGridSelected:f,selectEntireGrid:p,onUndo:m,onRedo:h,onClearSelection:g,enableClearOnDelete:_,onToggleCheckboxCell:y,onToggleGroup:b}=e;if(!Zr(t.target)&&!r.editingCell){if((t.ctrlKey||t.metaKey)&&t.key.toLowerCase()===`c`){t.preventDefault(),await u();return}if((t.ctrlKey||t.metaKey)&&t.key.toLowerCase()===`a`){if(t.preventDefault(),f){l(v.clearSelection()),l(v.activateCell(null));return}p();return}if((t.ctrlKey||t.metaKey)&&!t.isComposing){if(t.key.toLowerCase()===`z`){t.preventDefault(),t.shiftKey?h():m();return}if(t.key.toLowerCase()===`y`&&!t.shiftKey){t.preventDefault(),h();return}}if(t.key===`ArrowUp`){t.preventDefault(),n(-1,0,t.shiftKey);return}if(t.key===`ArrowDown`){t.preventDefault(),n(1,0,t.shiftKey);return}if(t.key===`ArrowLeft`){t.preventDefault(),n(0,-1,t.shiftKey);return}if(t.key===`ArrowRight`){t.preventDefault(),n(0,1,t.shiftKey);return}if(t.key===`Tab`){t.preventDefault(),n(0,t.shiftKey?-1:1,!1);return}if(t.key===`Escape`){t.preventDefault(),l(v.clearSelection());return}if((t.key===`Delete`||t.key===`Backspace`)&&_){t.preventDefault(),g();return}if((t.key===`Enter`||t.key===` `)&&r.activeCell){let e=i.getGroupRow?.(r.activeCell.row);if(e){t.preventDefault(),b(e.groupKey);return}}if(t.key===`Enter`||t.key===`F2`){t.preventDefault(),r.activeCell&&d(r.activeCell);return}if(Xr(t)&&r.activeCell){let e=i.getRow(r.activeCell.row),n=a[r.activeCell.col];if(!e||!n||!Xe({readOnly:o,canEditCell:s},r.activeCell.row,r.activeCell.col,e,n))return;if(n.editor?.type===`checkbox`){t.preventDefault(),t.key===` `&&y(r.activeCell);return}t.preventDefault(),c(t.key),l(v.startEdit(r.activeCell))}}}}},$r=t=>{let n=ur(()=>Qr(),t);return{handleKeyDown:(0,e.useCallback)(e=>n.handleKeyDown({key:e.key,ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey,altKey:e.altKey,isComposing:e.nativeEvent.isComposing,target:e.target,preventDefault:()=>e.preventDefault()}),[n])}},ei=new Intl.Collator(`ja`,{numeric:!0,sensitivity:`base`}),ti=(e,t)=>{let n=Number(e),r=Number(t);return Number.isFinite(n)&&Number.isFinite(r)?n-r:ei.compare(String(e??``),String(t??``))},ni=(e,t,n,r)=>{if(!r)return e.length===1&&e[0].columnKey===t&&e[0].direction===n?[]:[{columnKey:t,direction:n}];let i=e.findIndex(e=>e.columnKey===t);return i===-1?[...e,{columnKey:t,direction:n}]:e[i].direction===n?e.filter((e,t)=>t!==i):e.map((e,r)=>r===i?{columnKey:t,direction:n}:e)},ri=(e,t,n)=>e.some(e=>e.columnKey===t)?e:[...e,{columnKey:t,direction:n}],ii=(e,t,n)=>t<0||t>=e.length||e[t].direction===n?e:e.map((e,r)=>r===t?{...e,direction:n}:e),ai=(e,t,n)=>t<0||t>=e.length||e[t].columnKey===n?e:e.map((e,r)=>r===t?{...e,columnKey:n}:e).filter((e,r)=>r===t||e.columnKey!==n),oi=(e,t)=>t<0||t>=e.length?e:e.filter((e,n)=>n!==t),si=(e,t,n)=>{if(t<0||t>=e.length||n<0||n>=e.length||t===n)return e;let r=[...e],[i]=r.splice(t,1);return r.splice(n,0,i),r},ci=(e,t,n,r)=>{if(r.length===0)return t;let i=r.map(e=>{let t=n.find(t=>t.key===e.columnKey);return t?{column:t,multiplier:e.direction===`asc`?1:-1}:null}).filter(e=>e!==null);if(i.length===0)return t;let a=t.length,o=i.length,s=i.map(e=>e.multiplier),c=Array(o),l=!0;for(let n=0;n<o;n+=1){let r=i[n].column,o=new Float64Array(a),s=!0;for(let n=0;n<a;n+=1){let i=Number(F(e[t[n]],r));if(!Number.isFinite(i)){s=!1;break}o[n]=i}if(!s){l=!1;break}c[n]=o}let u=Array(a);for(let e=0;e<a;e+=1)u[e]=e;if(l)if(o===1){let e=c[0],n=s[0];u.sort((r,i)=>{let a=e[r]-e[i];return a===0?t[r]-t[i]:a*n})}else u.sort((e,n)=>{for(let t=0;t<o;t+=1){let r=c[t][e]-c[t][n];if(r!==0)return r*s[t]}return t[e]-t[n]});else{let n=i.map(({column:n})=>{let r=Array(a);for(let i=0;i<a;i+=1)r[i]=F(e[t[i]],n);return r});u.sort((e,r)=>{for(let t=0;t<o;t+=1){let i=ti(n[t][e],n[t][r]);if(i!==0)return i*s[t]}return t[e]-t[r]})}let d=new Int32Array(a);for(let e=0;e<a;e+=1)d[e]=t[u[e]];return d},li=15e6,ui=(e,t,n,r)=>e&&t&&n>0&&n<=r,di=1<<20,fi=(e,t)=>({rowCount:e,rowTop:e=>e*t,rowsHeight:(e,n)=>(n-e+1)*t,totalBodyHeight:e*t,rowAtContentY:n=>Math.min(Math.max(Math.floor(n/t),0),Math.max(e-1,0)),cellHeight:()=>t,detailHeight:()=>0}),pi=(e,t)=>{let n=t.filter(t=>t.height>0&&t.index>=0&&t.index<e.rowCount).sort((e,t)=>e.index-t.index),r=n.length,i=new Float64Array(r),a=new Float64Array(r+1);for(let e=0;e<r;e+=1)i[e]=n[e].index,a[e+1]=a[e]+n[e].height;let o=a[r],{rowCount:s}=e,c=e=>{let t=0,n=r;for(;t<n;){let r=t+n>>>1;i[r]<e?t=r+1:n=r}return t},l=t=>{let n=Math.min(Math.max(t,0),s);return(n===s?e.totalBodyHeight:e.rowTop(n))+a[c(n)]};return{rowCount:s,rowTop:l,rowsHeight:(e,t)=>l(t+1)-l(e),totalBodyHeight:e.totalBodyHeight+o,rowAtContentY:e=>{if(s<=0||e<=0)return 0;let t=0,n=s-1;for(;t<n;){let r=t+n+1>>>1;l(r)<=e?t=r:n=r-1}return t},cellHeight:t=>e.cellHeight(t),detailHeight:e=>{let t=c(e);return t<r&&i[t]===e?a[t+1]-a[t]:0}}},mi=(e,t,n,r)=>{if(r<n)return null;let i=Math.max(e,n),a=Math.min(t,r);return i>a?null:{start:i,end:a}},hi=(e,t)=>e*t,gi=(e,t)=>t===1?e:e/t,G=(e,t,n,r)=>{let i=t*(1-n);return r.rowAtContentY(e-i)},_i=({rowCount:e,rowHeight:t,headerHeight:n,viewportHeight:r,scrollTop:i,overscan:a,maxBodyPx:o})=>{let s=e*t,c=Math.min(s,o),l=Math.max(n+s-r,0),u=Math.max(n+c-r,0),d=u>0&&s>c?l/u:1,f=Math.min(Math.max(i,0),u),p=f*d,m=Math.ceil(r/t)+1,h=Math.floor(p/t),g=Math.max(h-a,0),_=Math.min(h+m+a,e),v=d===1?0:Math.floor(g*t/di)*di,y=f-p+v,b=[],x=new Set;for(let e=g;e<_;e+=1)b.push({index:e,start:n+e*t-v}),x.add(e);return{physicalBodyHeight:c,logicalBodyHeight:s,scaleFactor:d,translateY:y,windowBaseOffsetPx:v,rows:b,rowIndexSet:x}},vi=({headerHeight:e,viewportHeight:t,scrollTop:n,overscan:r},i)=>{let a=i.rowCount,o=i.totalBodyHeight,s=o,c=Math.max(e+o-t,0),l=Math.min(Math.max(n,0),c),u=i.rowAtContentY(l),d=i.rowAtContentY(l+t),f=Math.max(u-r,0),p=Math.min(d+r+1,a),m=[],h=new Set;for(let t=f;t<p;t+=1){let n={index:t,start:e+i.rowTop(t),size:i.cellHeight(t)},r=i.detailHeight(t);r>0&&(n.detailSize=r),m.push(n),h.add(t)}return{physicalBodyHeight:s,logicalBodyHeight:o,scaleFactor:1,translateY:0,windowBaseOffsetPx:0,rows:m,rowIndexSet:h}},yi=({rectLeft:e,rectTop:t,clientLeft:n,clientTop:r,clientWidth:i,clientHeight:a})=>{let o=e+n,s=t+r;return{left:o,top:s,right:o+i,bottom:s+a}},bi=(e,t,n,r)=>e<t+r?-1:+(e>n-r),xi=(e,t,n,r)=>{if(t===0)return e;let i=Math.max(r,0),a=e+t*n;return a<0?0:a>i?i:a},Si=(e,t,n)=>{let r=t.x-e.x,i=t.y-e.y;return r*r+i*i>=n*n},Ci=()=>{let e=null,t=!1,n=!1,r=null,i=null,a=`mouse`,o=null,s=null,c=!1,l=!1,u=()=>e?.uiState.dragState??null,d=(t,n)=>{if(e===null)return null;let{bodyScrollRef:r,scrollContainerRef:i,leftPaneScrollRef:a,rightPaneScrollRef:o,filteredRowsLength:s,visibleColumnsLength:c,paneLayout:l,leftLeadingWidth:u,centerLeadingWidth:d,rightLeadingWidth:f,headerHeight:p,rowMetrics:m,verticalScaleFactor:h}=e,g=r.current;if(!g||s===0||c===0)return null;let _=g.getBoundingClientRect(),v=G(g.scrollTop+n-_.top-p,i.current?.scrollTop??0,h,m),b=null,x=a.current;if(b===null&&x&&l.left.entries.length>0){let e=x.getBoundingClientRect();if(t<e.right){let n=t-e.left-u;b=A(l.left,n)}}let S=o.current;if(b===null&&S&&l.right.entries.length>0){let e=S.getBoundingClientRect();if(t>=e.left){let n=t-e.left-f;b=A(l.right,n)}}if(b===null&&l.center.entries.length>0){let e=g.scrollLeft+t-_.left-d;b=A(l.center,Math.max(e,0))}return b===null?null:{row:v,col:y(b,0,c-1)}},f=(t,n)=>{let r=u();if(e===null||!r||r.type!==`selection`)return;let i=d(t,n);if(i){if(r.selectionKind===`cell`){e.dispatch(v.updateSelection(i));return}if(r.selectionKind===`row`){e.dispatch(v.updateRowSelection(i.row));return}r.selectionKind===`col`&&e.dispatch(v.updateColumnSelection(i.col))}},p=(t,n)=>{if(e===null)return;let{gridRootRef:r,dispatch:a,enableRangeSelection:o,enableRowSelection:s,onGutterRowSelect:c,onCellDoubleClickRef:l}=e;r.current?.focus({preventScroll:!0});let{target:u}=t;if(u.kind===`cell`){let e=i;if(e&&e.cell.row===u.cell.row&&e.cell.col===u.cell.col&&n-e.time<300){i=null,l.current(u.cell);return}i={cell:u.cell,time:n},a(v.activateCell(u.cell)),o&&(a(v.startSelection(u.cell)),a(v.endSelection()));return}if(i=null,u.kind===`row`){if(s){c(u.rowIndex,{shiftKey:!1});return}a(v.startRowSelection(u.rowIndex)),a(v.endSelection());return}a(v.startColumnSelection(u.colIndex)),a(v.endSelection())},m=()=>{e!==null&&(n=!1,e.dispatch(v.endSelection()),e.dispatch(v.endColumnResize()))},h=t=>{e!==null&&(e.pointerClientRef.current={x:t.clientX,y:t.clientY},u()?.type===`columnResize`&&e.dispatch(v.updateColumnResize(t.clientX)))},g=e=>{let t=r;t&&(r=null,e.pointerId===t.pointerId&&Math.abs(e.clientX-t.x)<10&&Math.abs(e.clientY-t.y)<10&&p(t,e.timeStamp)),m()},_=()=>{r=null,m()},b=()=>{t||(t=!0,window.addEventListener(`pointermove`,h),window.addEventListener(`pointerup`,g),window.addEventListener(`pointercancel`,_))},x=()=>{t&&(t=!1,window.removeEventListener(`pointermove`,h),window.removeEventListener(`pointerup`,g),window.removeEventListener(`pointercancel`,_))},S=()=>{l=!1,e!==null&&e.autoScrollFrameRef.current!==null&&(cancelAnimationFrame(e.autoScrollFrameRef.current),e.autoScrollFrameRef.current=null)},C=()=>{if(e===null||!l)return;let{scrollContainerRef:t,pointerClientRef:n,autoScrollFrameRef:r}=e,i=t.current,a=n.current;if(!i||!a){r.current=requestAnimationFrame(C);return}if(!c){let e=s;if(e&&!Si(e,a,6)){r.current=requestAnimationFrame(C);return}c=!0}let o=i.getBoundingClientRect(),d=yi({rectLeft:o.left,rectTop:o.top,clientLeft:i.clientLeft,clientTop:i.clientTop,clientWidth:i.clientWidth,clientHeight:i.clientHeight}),p=u(),m=p?.type===`selection`&&p.selectionKind===`col`,h=p?.type===`selection`&&p.selectionKind===`row`,g=m?0:bi(a.y,d.top,d.bottom,24),_=h?0:bi(a.x,d.left,d.right,24),v=xi(i.scrollTop,g,18,i.scrollHeight-i.clientHeight),y=xi(i.scrollLeft,_,18,i.scrollWidth-i.clientWidth);(v!==i.scrollTop||y!==i.scrollLeft)&&(i.scrollTo({top:v,left:y,behavior:`auto`}),f(a.x,a.y)),r.current=requestAnimationFrame(C)},w=()=>{let t=u()?.type===`selection`;t&&!l?(l=!0,e!==null&&(e.autoScrollFrameRef.current=requestAnimationFrame(C))):!t&&l&&S()},T=()=>{if(o!==null)return;let t=()=>{if(!n||e===null){o=null;return}let{scrollContainerRef:r,pointerClientRef:i,onGutterRowSelectDrag:a}=e,l=r.current,u=i.current;if(!l||!u){o=requestAnimationFrame(t);return}if(!c){let e=s;if(e&&!Si(e,u,6)){o=requestAnimationFrame(t);return}c=!0}let f=l.getBoundingClientRect(),p=yi({rectLeft:f.left,rectTop:f.top,clientLeft:l.clientLeft,clientTop:l.clientTop,clientWidth:l.clientWidth,clientHeight:l.clientHeight}),m=bi(u.y,p.top,p.bottom,24),h=xi(l.scrollTop,m,18,l.scrollHeight-l.clientHeight);if(h!==l.scrollTop){l.scrollTo({top:h,left:l.scrollLeft,behavior:`auto`});let e=d(u.x,u.y);e&&a(e.row)}o=requestAnimationFrame(t)};o=requestAnimationFrame(t)},E=(t,n)=>(t.preventDefault(),e===null||t.button!==0?!1:(a=t.pointerType,t.pointerType===`touch`?(r={pointerId:t.pointerId,x:t.clientX,y:t.clientY,target:n},!1):(e.gridRootRef.current?.focus({preventScroll:!0}),e.pointerClientRef.current={x:t.clientX,y:t.clientY},s={x:t.clientX,y:t.clientY},c=!1,!0)));return{update:t=>{e=t,b(),w()},updateSelectionFromPointer:f,handleCellPointerDown:(t,n)=>{!E(n,{kind:`cell`,cell:t})||e===null||(e.dispatch(v.activateCell(t)),e.enableRangeSelection&&e.dispatch(v.startSelection(t)))},handleCellDoubleClick:t=>{a===`touch`||e===null||e.onCellDoubleClickRef.current(t)},handleCellPointerEnter:(t,n)=>{if(e===null||(e.enableRowHover&&e.setHoveredRowIndex(t.row),!e.enableRangeSelection))return;let r=u();r?.type!==`selection`||r.selectionKind!==`cell`||(e.pointerClientRef.current={x:n.clientX,y:n.clientY},e.dispatch(v.updateSelection(t)))},handleNativeDragStart:e=>{e.preventDefault()},handleRowHeaderPointerDown:(t,r)=>{if(!(!E(r,{kind:`row`,rowIndex:t})||e===null)){if(e.enableRowSelection){n=!0,e.onGutterRowSelect(t,{shiftKey:r.shiftKey}),T();return}e.dispatch(v.startRowSelection(t))}},handleRowHeaderPointerEnter:(t,r)=>{if(e===null)return;if(e.enableRowHover&&e.setHoveredRowIndex(t),n){e.pointerClientRef.current={x:r.clientX,y:r.clientY},e.onGutterRowSelectDrag(t);return}let i=u();i?.type!==`selection`||i.selectionKind!==`row`||(e.pointerClientRef.current={x:r.clientX,y:r.clientY},e.dispatch(v.updateRowSelection(t)))},handleColumnHeaderPointerDown:(t,n)=>{if(!(!E(n,{kind:`col`,colIndex:t})||e===null)){if(n.shiftKey&&e.enableSorting){let n=e.orderedColumns[t];if(n&&!Hn(n.key)){let t=e.uiState.sort,r=t.find(e=>e.columnKey===n.key)?.direction?`desc`:`asc`,i=ni(t,n.key,r,!0);e.dispatch(i.length===0?v.clearSort():v.setSort(i))}return}e.dispatch(v.startColumnSelection(t))}},handleColumnHeaderPointerEnter:(t,n)=>{if(e===null)return;e.setHoveredRowIndex(null),e.enableColumnHeaderHover&&e.setHoveredColumnIndex(t);let r=u();r?.type!==`selection`||r.selectionKind!==`col`||(e.pointerClientRef.current={x:n.clientX,y:n.clientY},e.dispatch(v.updateColumnSelection(t)))},dispose:()=>{x(),S(),o!==null&&(cancelAnimationFrame(o),o=null)}}},wi=e=>{let t=ur(()=>Ci(),e);return{updateSelectionFromPointer:t.updateSelectionFromPointer,handleCellPointerDown:t.handleCellPointerDown,handleCellDoubleClick:t.handleCellDoubleClick,handleCellPointerEnter:t.handleCellPointerEnter,handleNativeDragStart:t.handleNativeDragStart,handleRowHeaderPointerDown:t.handleRowHeaderPointerDown,handleRowHeaderPointerEnter:t.handleRowHeaderPointerEnter,handleColumnHeaderPointerDown:t.handleColumnHeaderPointerDown,handleColumnHeaderPointerEnter:t.handleColumnHeaderPointerEnter}},K=(e,t)=>{let n=Math.max(t.totalScrollWidth-e.clientWidth,0),r=Math.max(t.headerHeight+t.physicalBodyHeight-e.clientHeight,0);e.scrollLeft>n&&(e.scrollLeft=n),e.scrollTop>r&&(e.scrollTop=r)},q=(e,t,n)=>{let r=n.headerHeight+t.top,i=r+t.height,a=n.leftPaneWidth+n.centerLeadingWidth+t.left,o=a+t.width,s=hi(e.scrollTop,n.verticalScaleFactor),c=e.scrollLeft,l=e.clientHeight,u=e.clientWidth,d=s,f=c,p=s+n.headerHeight,m=s+l;r<p?d=Math.max(r-n.headerHeight,0):i>m&&(d=Math.max(i-l,0));let h=c+n.leftPaneWidth,g=c+u-n.rightPaneWidth;a<h?f=Math.max(a-n.leftPaneWidth,0):o>g&&(f=Math.max(o-u+n.rightPaneWidth,0)),(d!==s||f!==c)&&e.scrollTo({top:gi(d,n.verticalScaleFactor),left:f,behavior:`auto`})},Ti=(e,t,n)=>e===null||n.some(n=>!Object.is(e[n],t[n])),Ei=()=>{let e=null,t=null;return{update:n=>{if(Ti(e,n,[`columnVirtualizer`,`columnMeasurements`])&&n.columnVirtualizer.measure(),Ti(e,n,[`scrollElement`,`totalScrollWidth`,`physicalBodyHeight`,`headerHeight`])&&n.scrollElement&&K(n.scrollElement,n),Ti(e,n,[`scrollElement`,`activeCellRect`,`activeCell`,`headerHeight`,`leftPaneWidth`,`rightPaneWidth`,`centerLeadingWidth`,`verticalScaleFactor`])){let e=t,{activeCell:r}=n,i=e!==null&&r!==null&&e.row===r.row&&e.col===r.col;t=r,!i&&n.scrollElement&&n.activeCellRect&&q(n.scrollElement,n.activeCellRect,n)}e=n}}},Di=({scrollRef:t,...n})=>{let[r]=(0,e.useState)(()=>Ei());(0,e.useEffect)(()=>{r.update({...n,scrollElement:t.current})})};function Oi(e){let{targetRect:t,tipWidth:n,tipHeight:r,viewportWidth:i}=e,a=t.left+t.width/2,o=Math.max(8,Math.min(Math.round(a-n/2),i-n-8)),s=Math.round(t.top-r-7);return s<8?{top:Math.round(t.bottom+7),left:o,below:!0}:{top:s,left:o,below:!1}}var ki=e=>e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`);function Ai(e,t,n){if(n){for(let t of n.classNames)e.classList.remove(t);for(let t of n.styleKeys)e.style.removeProperty(t)}let r=t?.className?t.className.split(/\s+/).filter(Boolean):[];r.length>0&&e.classList.add(...r);let i=[];if(t?.style)for(let[n,r]of Object.entries(t.style)){if(r==null)continue;let t=n.startsWith(`--`)?n:ki(n);e.style.setProperty(t,String(r)),i.push(t)}return{classNames:r,styleKeys:i}}var ji=`data-ssg-tooltip`,Mi=`[${ji}], [data-ssg-tooltip-overflow]`,Ni=350,Pi=800,Fi=0,Ii=null,Li=null,Ri=0,zi=null,J,Bi;function Vi(e){Bi=Ai(e,J,Bi)}function Hi(){if(Ii!==null)return Ii;let e=document.createElement(`div`);return e.className=`ssg-tooltip`,e.setAttribute(`aria-hidden`,`true`),Bi=void 0,Vi(e),document.body.appendChild(e),Ii=e,e}function Ui(){Li!==null&&(window.clearTimeout(Li),Li=null)}function Wi(){Ui(),zi!==null&&(Ri=Date.now()+Pi),zi=null,Ii!==null&&Ii.classList.remove(`ssg-tooltip--visible`)}function Gi(e){let t=e.getAttribute(ji),n=t!==null&&t!==``?t:(e.textContent??``).trim();if(n===``)return;let r=Hi();r.classList.toggle(`ssg-theme-dark`,e.closest(`.ssg-theme-dark`)!==null),r.textContent=n,r.style.left=`0px`,r.style.top=`0px`;let i=Oi({targetRect:e.getBoundingClientRect(),tipWidth:r.offsetWidth,tipHeight:r.offsetHeight,viewportWidth:window.innerWidth});r.style.left=`${i.left}px`,r.style.top=`${i.top}px`,r.classList.add(`ssg-tooltip--visible`),zi=e}function Ki(e){let t=e.target;if(!(t instanceof Element))return;let n=t.closest(Mi);if(n===null||n===zi||!n.hasAttribute(ji)&&n.scrollWidth<=n.clientWidth+1)return;let r=zi!==null;Wi(),r||Date.now()<Ri?Gi(n):Li=window.setTimeout(()=>{Li=null,Gi(n)},Ni)}function qi(e){let t=e.target;if(!(t instanceof Element))return;let n=t.closest(Mi);if(n===null)return;let r=e.relatedTarget;r instanceof Node&&n.contains(r)||Wi()}function Ji(){Wi()}function Yi(e){e.key===`Escape`&&Wi()}function Xi(){window.addEventListener(`pointerover`,Ki,!0),window.addEventListener(`pointerout`,qi,!0),window.addEventListener(`focusin`,Ki,!0),window.addEventListener(`focusout`,qi,!0),window.addEventListener(`pointerdown`,Ji,!0),window.addEventListener(`scroll`,Ji,!0),window.addEventListener(`keydown`,Yi,!0)}function Zi(){window.removeEventListener(`pointerover`,Ki,!0),window.removeEventListener(`pointerout`,qi,!0),window.removeEventListener(`focusin`,Ki,!0),window.removeEventListener(`focusout`,qi,!0),window.removeEventListener(`pointerdown`,Ji,!0),window.removeEventListener(`scroll`,Ji,!0),window.removeEventListener(`keydown`,Yi,!0)}function Qi(e){Fi+=1,Fi===1&&Xi();let t=!1,n=e=>{J=e,Ii!==null&&Vi(Ii)};return n(e),{setSlot:n,dispose:()=>{t||(t=!0,--Fi,Fi===0&&(Zi(),Ui(),zi=null,Ii!==null&&(Ii.remove(),Ii=null)))}}}function $i(t){let n=(0,e.useRef)(null);(0,e.useEffect)(()=>{let e=Qi();return n.current=e,()=>{e.dispose(),n.current=null}},[]),(0,e.useEffect)(()=>{n.current?.setSlot(t)},[t])}var ea=`(prefers-color-scheme: dark)`,ta=()=>typeof window<`u`&&typeof window.matchMedia==`function`,na={subscribe(e){if(!ta())return()=>{};let t=window.matchMedia(ea);return t.addEventListener(`change`,e),()=>{t.removeEventListener(`change`,e)}},getSnapshot(){return ta()?window.matchMedia(ea).matches:!1},getServerSnapshot(){return!1}},ra=(e,t)=>e===`dark`||e===`auto`&&t?`dark`:`light`;function ia(t){return ra(t,(0,e.useSyncExternalStore)(na.subscribe,na.getSnapshot,na.getServerSnapshot))}function aa(e,t,n,r){let i=e.find(e=>e.key===t);if(!i)return null;let a=x(i),o={left:[],center:[],right:[]},s=new Map;for(let t of e)o[x(t)].push(t.key),s.set(t.key,t.visible!==!1);let c=o[n].filter(e=>s.get(e)).indexOf(t),l=o[a].indexOf(t);if(l<0)return null;o[a].splice(l,1);let u=r;a===n&&c>=0&&u>c&&--u;let d=o[n].filter(e=>s.get(e));if(u=Math.max(0,Math.min(u,d.length)),a===n&&c>=0&&u===c)return null;let f;return f=u>=d.length?o[n].length:o[n].indexOf(d[u]),o[n].splice(f,0,t),[...o.left,...o.center,...o.right]}var oa=32,sa=2,ca=14,la=12,ua=`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="5 9 2 12 5 15"/><polyline points="9 5 12 2 15 5"/><polyline points="15 19 12 22 9 19"/><polyline points="19 9 22 12 19 15"/><line x1="2" y1="12" x2="22" y2="12"/><line x1="12" y1="2" x2="12" y2="22"/></svg>`,da=`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="17" x2="12" y2="22"/><path d="M5 17h14v-1.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V6h1a2 2 0 0 0 0-4H8a2 2 0 0 0 0 4h1v4.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24Z"/></svg>`,fa=`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><line x1="4.9" y1="4.9" x2="19.1" y2="19.1"/></svg>`,pa=`0.5`,ma=200,ha=`cubic-bezier(0.2, 0.7, 0.3, 1)`,ga=()=>typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches,_a=e=>{if(!e)return null;let t=new Map;return e.querySelectorAll(`[data-ssg-col-key]`).forEach(n=>{if(Gn(e,n))return;let r=n.dataset.ssgColKey;r&&!t.has(r)&&t.set(r,n.getBoundingClientRect().left)}),t},va=()=>{let e=null,t=null,n=null,r=null,i={x:0,y:0},a=null,o=!1,s=null,c=null,l=null,u=null,d=null,f=()=>({left:e?.leftIndicatorRef.current??null,center:e?.centerIndicatorRef.current??null,right:e?.rightIndicatorRef.current??null}),p=()=>{for(let e of Object.values(f()))e&&(e.style.display=`none`)},m=t=>{if(l)return;let n=document.createElement(`div`);n.setAttribute(`data-grid-drag-ghost`,``),e?.scrollContainerRef.current?.closest(`.ssg-theme-dark`)!=null&&n.classList.add(`ssg-theme-dark`),n.style.cssText=[`position:fixed`,`top:0`,`left:0`,`display:inline-flex`,`align-items:center`,`gap:7px`,`padding:7px 12px 7px 10px`,`border-radius:9px`,`border:1px solid var(--ssg-ghost-border)`,`background:var(--ssg-ghost-bg)`,`color:var(--ssg-ghost-text)`,`font-size:12px`,`font-weight:600`,`line-height:1`,`white-space:nowrap`,`box-shadow:var(--ssg-ghost-shadow)`,`pointer-events:none`,`user-select:none`,`z-index:9999`,`will-change:transform`,`transform:translate(-9999px,-9999px)`].join(`;`),Ai(n,e?.ghostSlot);let r=document.createElement(`span`);r.style.cssText=`display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex:none`;let i=document.createElement(`span`);i.textContent=t,n.appendChild(r),n.appendChild(i),document.body.appendChild(n),l=n,u=r,d=null},h=e=>{let t=l;if(!t)return;t.style.transform=`translate(`+(i.x+ca)+`px,`+(i.y+la)+`px)`;let n=e??`out`;if(d===n)return;d=n;let r=u;n===`out`?(t.style.opacity=pa,r&&(r.innerHTML=fa)):(t.style.opacity=`1`,r&&(r.innerHTML=n===`center`?ua:da))},g=()=>{l&&l.parentNode&&l.parentNode.removeChild(l),l=null,u=null,d=null},_=(t,n)=>{if(e===null)return null;let{paneLayout:r,leftPaneScrollRef:i,rightPaneScrollRef:a,bodyScrollRef:o,scrollContainerRef:s,leftLeadingWidth:c,centerLeadingWidth:l,rightLeadingWidth:u}=e,d=s.current;if(d){let e=d.getBoundingClientRect();if(t<e.left||t>e.right||n<e.top||n>e.bottom)return null}let f=i.current,p=a.current;if(f&&r.left.entries.length===0&&t<=f.getBoundingClientRect().left+oa)return{pane:`left`,slot:0,leftPx:sa};if(f&&r.left.entries.length>0){let e=f.getBoundingClientRect();if(t<e.right){let n=t-e.left-c,i=ee(r.left,n);return{pane:`left`,slot:i,leftPx:c+j(r.left,i)}}}if(p&&r.right.entries.length===0&&t>=p.getBoundingClientRect().left-oa)return{pane:`right`,slot:0,leftPx:-2};if(p&&r.right.entries.length>0){let e=p.getBoundingClientRect();if(t>=e.left){let n=t-e.left-u,i=ee(r.right,n);return{pane:`right`,slot:i,leftPx:u+j(r.right,i)}}}let m=o.current;if(m&&r.center.entries.length>0){let e=m.getBoundingClientRect(),n=m.scrollLeft+t-e.left-l,i=ee(r.center,Math.max(n,0));return{pane:`center`,slot:i,leftPx:l+j(r.center,i)}}return null},v=()=>{let e=_(i.x,i.y);if(h(e?e.pane:null),!e){n=null,p();return}n={pane:e.pane,slot:e.slot};let t=f();for(let n of[`left`,`center`,`right`]){let r=t[n];r&&(n===e.pane?(r.style.left=`${e.leftPx}px`,r.style.display=`block`):r.style.display=`none`)}},y=()=>{if(t===null){c=null;return}let n=e?.scrollContainerRef.current??null;if(n&&(o||(!a||Si(a,i,6))&&(o=!0),o)){let e=n.getBoundingClientRect(),t=yi({rectLeft:e.left,rectTop:e.top,clientLeft:n.clientLeft,clientTop:n.clientTop,clientWidth:n.clientWidth,clientHeight:n.clientHeight}),r=bi(i.x,t.left,t.right,24),a=xi(n.scrollLeft,r,18,n.scrollWidth-n.clientWidth);a!==n.scrollLeft&&n.scrollTo({left:a,behavior:`auto`})}v(),c=requestAnimationFrame(y)},b=i=>{c!==null&&(cancelAnimationFrame(c),c=null),document.body.style.cursor=``,p(),g();let a=t,o=n;if(t=null,n=null,!i||!a||!o||e===null)return;let{columns:s,applyColumnOrderAndPin:l,scrollContainerRef:u}=e,d=aa(s,a,o.pane,o.slot);if(!d)return;let f=s.find(e=>e.key===a),m=f?x(f):null;r=m!==null&&m===o.pane&&!ga()?_a(u.current):null,l(d,new Map([[a,o.pane===`center`?void 0:o.pane]]))};return{update:t=>{e=t},onColumnDragHandlePointerDown:(n,r)=>{if(e===null||!e.enabled||r.button!==0)return;r.stopPropagation(),r.preventDefault(),t=n.key,i={x:r.clientX,y:r.clientY},a={x:r.clientX,y:r.clientY},o=!1,document.body.style.cursor=`grabbing`,m(n.title||n.key);let l=r.currentTarget,u=r.pointerId;try{l.setPointerCapture(u)}catch{}let d=e=>{e.pointerId===u&&(i={x:e.clientX,y:e.clientY},v())},f=()=>{window.removeEventListener(`pointermove`,d),window.removeEventListener(`pointerup`,p),window.removeEventListener(`pointercancel`,h),s=null;try{l.releasePointerCapture(u)}catch{}};function p(e){e.pointerId===u&&(f(),b(!0))}function h(e){e.pointerId===u&&(f(),b(!1))}window.addEventListener(`pointermove`,d),window.addEventListener(`pointerup`,p),window.addEventListener(`pointercancel`,h),s=f,v(),c=requestAnimationFrame(y)},applyReorderSettle:()=>{let t=r;if(r=null,!t)return;let n=e?.scrollContainerRef.current??null;if(!n)return;let i=new Map,a=new Map;n.querySelectorAll(`[data-ssg-col-key]`).forEach(e=>{if(Gn(n,e))return;let r=e.dataset.ssgColKey;if(!r||!t.has(r))return;let o=i.get(r);o?o.push(e):(i.set(r,[e]),a.set(r,e.getBoundingClientRect().left))});let o=[];if(i.forEach((e,n)=>{let r=t.get(n),i=a.get(n);if(r===void 0||i===void 0)return;let s=r-i;if(!(Math.abs(s)<.5))for(let t of e)t.style.transition=`none`,t.style.transform=`translateX(${s}px)`,t.style.willChange=`transform`,o.push(t)}),o.length!==0){n.getBoundingClientRect();for(let e of o)e.style.transition=`transform ${ma}ms ${ha}`,e.style.transform=`translateX(0)`;window.setTimeout(()=>{for(let e of o)e.style.transition=``,e.style.transform=``,e.style.willChange=``},280)}},dispose:()=>{s?.(),s=null,c!==null&&(cancelAnimationFrame(c),c=null),t=null,n=null,document.body.style.cursor=``,g()}}},ya=t=>{let n=(0,e.useRef)(null),r=(0,e.useRef)(null),i=(0,e.useRef)(null),a=ur(()=>va(),{...t,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i});return{onColumnDragHandlePointerDown:a.onColumnDragHandlePointerDown,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i,applyReorderSettle:a.applyReorderSettle}},ba=14,xa=12,Sa=`0.5`,Ca=`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="8 6 12 2 16 6"/><polyline points="16 18 12 22 8 18"/><line x1="12" y1="2" x2="12" y2="22"/></svg>`,Y=`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><line x1="4.9" y1="4.9" x2="19.1" y2="19.1"/></svg>`,wa=200,Ta=`cubic-bezier(0.2, 0.7, 0.3, 1)`,Ea=`data-ssg-row-dragging`,Da=()=>typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches,Oa=/translateY\((-?[\d.]+)px\)/,X=e=>{let t=[];return e.querySelectorAll(`.ssg-body-row[data-row-index]`).forEach(n=>{Gn(e,n)||t.push(n)}),t},ka=()=>{let e=null,t=null,n=null,r={x:0,y:0},i=null,a=!1,o=null,s=null,c=null,l=null,u=null,d=null,f=()=>[e?.leftIndicatorRef.current??null,e?.centerIndicatorRef.current??null,e?.rightIndicatorRef.current??null],p=()=>{for(let e of f())e&&(e.style.display=`none`)},m=t=>{if(l)return;let n=document.createElement(`div`);n.setAttribute(`data-grid-drag-ghost`,``),e?.scrollContainerRef.current?.closest(`.ssg-theme-dark`)!=null&&n.classList.add(`ssg-theme-dark`),n.style.cssText=[`position:fixed`,`top:0`,`left:0`,`display:inline-flex`,`align-items:center`,`gap:7px`,`padding:7px 12px 7px 10px`,`border-radius:9px`,`border:1px solid var(--ssg-ghost-border)`,`background:var(--ssg-ghost-bg)`,`color:var(--ssg-ghost-text)`,`font-size:12px`,`font-weight:600`,`line-height:1`,`white-space:nowrap`,`max-width:280px`,`overflow:hidden`,`text-overflow:ellipsis`,`box-shadow:var(--ssg-ghost-shadow)`,`pointer-events:none`,`user-select:none`,`z-index:9999`,`will-change:transform`,`transform:translate(-9999px,-9999px)`].join(`;`),Ai(n,e?.ghostSlot);let r=document.createElement(`span`);r.style.cssText=`display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex:none`;let i=document.createElement(`span`);i.style.cssText=`overflow:hidden;text-overflow:ellipsis`,i.textContent=t,n.appendChild(r),n.appendChild(i),document.body.appendChild(n),l=n,u=r,d=null},h=e=>{let t=l;if(!t)return;t.style.transform=`translate(`+(r.x+ba)+`px,`+(r.y+xa)+`px)`;let n=e?`move`:`out`;if(d===n)return;d=n;let i=u;n===`out`?(t.style.opacity=Sa,i&&(i.innerHTML=Y)):(t.style.opacity=`1`,i&&(i.innerHTML=Ca))},g=()=>{l&&l.parentNode&&l.parentNode.removeChild(l),l=null,u=null,d=null},_=(t,n)=>{let r=e?.scrollContainerRef.current??null;!r||t===null||r.querySelectorAll(`.ssg-body-row[data-row-index="${t}"]`).forEach(e=>{Gn(r,e)||(n?e.setAttribute(Ea,``):e.removeAttribute(Ea))})},v=(t,n)=>{if(e===null)return null;let{scrollContainerRef:r,bodyScrollRef:i,rowMetrics:a,headerHeight:o,verticalScaleFactor:s,windowBaseOffsetPx:c}=e,l=r.current,u=i.current;if(!l||!u)return null;let d=l.getBoundingClientRect();if(t<d.left||t>d.right||n<d.top||n>d.bottom)return null;let f=u.getBoundingClientRect(),p=Pn(u.scrollTop+n-f.top-o-l.scrollTop*(1-s),a);return{slot:p,top:o+Fn(p,a)-c}},y=()=>{let e=v(r.x,r.y);h(e);let i=t;if(!e||i===null||U(i,e.slot)===null){n=null,p();return}n=e.slot;for(let t of f())t&&(t.style.top=`${e.top}px`,t.style.display=`block`)},b=()=>{if(t===null){s=null;return}let n=e?.scrollContainerRef.current??null;if(n&&(a||(!i||Si(i,r,6))&&(a=!0),a)){let e=n.getBoundingClientRect(),t=yi({rectLeft:e.left,rectTop:e.top,clientLeft:n.clientLeft,clientTop:n.clientTop,clientWidth:n.clientWidth,clientHeight:n.clientHeight}),i=bi(r.y,t.top,t.bottom,24),a=xi(n.scrollTop,i,18,n.scrollHeight-n.clientHeight);a!==n.scrollTop&&n.scrollTo({top:a,behavior:`auto`})}y(),s=requestAnimationFrame(b)},x=()=>{let t=e?.scrollContainerRef.current??null;if(!t)return null;let n=new Map;for(let e of X(t))n.set(e,e.getBoundingClientRect().top);return n},S=r=>{s!==null&&(cancelAnimationFrame(s),s=null),document.body.style.cursor=``,p(),g();let a=t,o=n;if(_(a,!1),t=null,n=null,i=null,!r||a===null||o===null||e===null)return;let l=U(a,o);l!==null&&(c=Da()?null:x(),e.commitRowMove(a,l))};return{update:t=>{e=t},onRowDragHandlePointerDown:(c,l)=>{if(e===null||!e.enabled||l.button!==0)return;l.stopPropagation(),l.preventDefault(),t=c,n=null,r={x:l.clientX,y:l.clientY},i={x:l.clientX,y:l.clientY},a=!1,document.body.style.cursor=`grabbing`,m(e.getRowDragLabel(c)),_(c,!0);let u=l.currentTarget,d=l.pointerId;try{u.setPointerCapture(d)}catch{}let f=e=>{e.pointerId===d&&(r={x:e.clientX,y:e.clientY},y())},p=()=>{window.removeEventListener(`pointermove`,f),window.removeEventListener(`pointerup`,h),window.removeEventListener(`pointercancel`,g),window.removeEventListener(`keydown`,v),o=null;try{u.releasePointerCapture(d)}catch{}};function h(e){e.pointerId===d&&(p(),S(!0))}function g(e){e.pointerId===d&&(p(),S(!1))}function v(e){e.key===`Escape`&&(p(),S(!1))}window.addEventListener(`pointermove`,f),window.addEventListener(`pointerup`,h),window.addEventListener(`pointercancel`,g),window.addEventListener(`keydown`,v),o=p,y(),s=requestAnimationFrame(b)},applyReorderSettle:()=>{let t=c;if(c=null,!t)return;let n=e?.scrollContainerRef.current??null;if(!n)return;let r=[],i=new Map;if(t.forEach((e,t)=>{if(!t.isConnected)return;let n=e-t.getBoundingClientRect().top;if(Math.abs(n)<.5)return;let a=Oa.exec(t.style.transform);if(!a)return;let o=parseFloat(a[1]);i.set(t,o),t.style.transition=`none`,t.style.transform=`translateY(${o+n}px)`,t.style.willChange=`transform`,r.push(t)}),r.length!==0){n.getBoundingClientRect();for(let e of r)e.style.transition=`transform ${wa}ms ${Ta}`,e.style.transform=`translateY(${i.get(e)??0}px)`;window.setTimeout(()=>{for(let e of r)e.style.transition=``,e.style.willChange=``},280)}},dispose:()=>{o?.(),o=null,s!==null&&(cancelAnimationFrame(s),s=null),document.body.style.cursor=``,g(),_(t,!1),t=null,n=null}}},Aa=t=>{let n=(0,e.useRef)(null),r=(0,e.useRef)(null),i=(0,e.useRef)(null),a=ur(ka,{...t,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i});return{onRowDragHandlePointerDown:a.onRowDragHandlePointerDown,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i,applyReorderSettle:a.applyReorderSettle}},ja=e=>e===``?`(空白)`:`"${e}"`,Ma=(e,t)=>(e??`include`)===`exclude`?`${t.length} 件を除外`:t.length>0&&t.length<=2?t.map(ja).join(`, `):`${t.length} 件を選択`,Na=(e,t)=>{switch(e.kind){case`text`:case`date`:return`"${e.value.trim()}" を含む`;case`select`:return`"${e.value}" に一致`;case`number`:return e.raw;case`set`:return Ma(e.mode,e.values);case`numberSet`:case`textSet`:case`dateSet`:{let n=e.condition?e.kind===`numberSet`?R(e.condition):e.kind===`textSet`?an(e.condition):mn(e.condition,t):null,r=e.set?Ma(e.set.mode,e.set.values):null;return n&&r?`${n} かつ ${r}`:n??r??`フィルターなし`}case`custom`:return typeof e.value==`string`&&e.value.trim().length>0?`"${e.value.trim()}"`:`カスタム条件`}},Pa=/^\d{4}-\d{2}-\d{2}$/,Fa=e=>{let t=new Set;for(let n of e)t.add(Ot(n.value));let n=[],r=[],i=!1;for(let e of t)e===``?i=!0:Pa.test(e)?n.push(e):r.push(e);n.sort(),r.sort();let a=n.map(e=>({label:e,value:e}));for(let e of r)a.push({label:e,value:e});return i&&a.push({label:`(空白)`,value:``}),a},Ia=(e,t)=>{let n=new Map,r=[];for(let t of e){if(!Pa.test(t.value)){r.push(t);continue}let e=t.value.slice(0,4),i=t.value.slice(0,7),a=n.get(e);a||(a=new Map,n.set(e,a));let o=a.get(i);o||(o=[],a.set(i,o)),o.push(t.value)}let i=[];for(let[e,r]of n){let n=`y:${e}`,a=[];for(let e of r.values())a.push(...e);let o=t.has(n);if(i.push({type:`group`,key:n,label:`${e} 年`,depth:0,leafKeys:a,expanded:o}),o)for(let[e,n]of r){let r=`m:${e}`,a=t.has(r);if(i.push({type:`group`,key:r,label:`${Number(e.slice(5,7))} 月`,depth:1,leafKeys:[...n],expanded:a}),a)for(let e of n)i.push({type:`leaf`,key:e,label:`${Number(e.slice(8,10))} 日`,depth:2,leafKeys:[e],expanded:!1})}}for(let e of r)i.push({type:`leaf`,key:e.value,label:e.label,depth:0,leafKeys:[e.value],expanded:!1});return i},La=1e3,Ra=2e4,za=e=>{if(typeof e==`number`)return Number.isFinite(e);if(typeof e!=`string`)return!1;let t=e.trim();return!t||/^-?0\d/.test(t)?!1:Number.isFinite(Number(t))},Z=e=>Dt(e)!==null,Ba=({editorType:e,isServerSide:t=!1,rowCount:n,getRawValueAt:r,sampleLimit:i=La,scanLimit:a=Ra})=>{if(e===`number`)return{filterType:`numberSet`,source:`editor`,conclusive:!0};if(e===`date`)return{filterType:`dateSet`,source:`editor`,conclusive:!0};if(t)return{filterType:`text`,source:`fallback`,conclusive:!0};let o=Math.min(n,a),s=0,c=0,l=0;for(let e=0;e<o&&s<i;e+=1){let t=r(e);if(!bt(t)){if(s+=1,Z(t)){c+=1;continue}za(t)&&(l+=1)}}return s===0?{filterType:`textSet`,source:`fallback`,conclusive:!1}:c===s?{filterType:`dateSet`,source:`values`,conclusive:!0}:l===s?{filterType:`numberSet`,source:`values`,conclusive:!0}:{filterType:`textSet`,source:`values`,conclusive:!0}},Va=(e,t,n,r)=>{if(n===0||r===0)return null;let i=n-1,a=r-1;if(e?.type===`cell`){let t=De(e.range);return{startRow:y(t.start.row,0,i),endRow:y(t.end.row,0,i),startCol:y(t.start.col,0,a),endCol:y(t.end.col,0,a)}}if(e?.type===`row`){let t=Oe(e.startRow,e.endRow);return{startRow:y(t.startRow,0,i),endRow:y(t.endRow,0,i),startCol:0,endCol:a}}if(e?.type===`col`){let t=ke(e.startCol,e.endCol);return{startRow:0,endRow:i,startCol:y(t.startCol,0,a),endCol:y(t.endCol,0,a)}}return t?t.row>i||t.col>a?null:{startRow:t.row,endRow:t.row,startCol:t.col,endCol:t.col}:null},Ha=({rows:e,resolveSourceIndex:t,columns:n,selection:r,activeCell:i,viewRowCount:a,canWriteCell:o})=>{let s=Va(r,i,a,n.length);if(!s)return{nextRows:e,changed:!1};let c=[...e],l=!1;for(let e=s.startRow;e<=s.endRow;e+=1){let r=t(e);if(r===void 0)continue;let i=c[r];if(!i)continue;let a=i,u=!1;for(let e=s.startCol;e<=s.endCol;e+=1){let t=n[e];if(!t||!o(r,e,i,t))continue;let s=ot(t)(``,i);Object.is(F(a,t),s)||hr(t,i,s).action!==`reject`&&(a=Ze(a,t,s),u=!0)}u&&(c[r]=a,l=!0)}return l?{nextRows:c,changed:l}:{nextRows:e,changed:!1}},Ua=({getRow:e,columns:t,selection:n,activeCell:r,viewRowCount:i,canWriteCell:a})=>{let o=Va(n,r,i,t.length);if(!o)return[];let s=[];for(let n=o.startRow;n<=o.endRow;n+=1){let r=e(n);if(r)for(let e=o.startCol;e<=o.endCol;e+=1){let i=t[e];if(!i||!a(n,e,r,i))continue;let o=ot(i)(``,r);Object.is(F(r,i),o)||hr(i,r,o).action!==`reject`&&s.push({viewIndex:n,column:i,value:o})}}return s},Wa=e=>{let{mode:t,isServerSide:n,rowCount:r,hasAutoSizedOnMount:i}=e;return t===!1||n||r===0?{shouldRun:!1,nextHasAutoSizedOnMount:i}:t===`onMount`?i?{shouldRun:!1,nextHasAutoSizedOnMount:!0}:{shouldRun:!0,nextHasAutoSizedOnMount:!0}:{shouldRun:!0,nextHasAutoSizedOnMount:i}},Ga=(e,t,n)=>{let r=!1,i=e.map(e=>{let i=n[e.key]??e.width,a=t.get(e.key);if(!a)return i===e.width?e:{...e,width:i};let o=a.pinned??void 0,s=i!==a.width,c=(e.pinned??void 0)!==o,l=e.visible!==!1!=(a.visible!==!1);return(s||c||l)&&(r=!0),{...e,width:a.width,pinned:a.pinned,visible:a.visible}}),a=new Map(i.map(e=>[e.key,e])),o=[];for(let e of t.keys()){let t=a.get(e);t&&o.push(t)}let s=i.filter(e=>!t.has(e.key)),c=[...o,...s],l=c.some((t,n)=>e[n].key!==t.key);return!r&&!l?null:c},Ka=(e,t)=>e.includes(t)||e.includes(`"`)||e.includes(`
|
|
9
|
+
`)||e.includes(`\r`)?`"${e.replace(/"/g,`""`)}"`:e,qa=(e,t)=>{let n=F(e,t);return t.formatClipboardValue?t.formatClipboardValue(n,e):String(n??``)},Ja=({getRow:e,startRow:t,endRow:n,columns:r,delimiter:i=`,`,includeHeaders:a=!0,bom:o=!1,isRowIncluded:s})=>{let c=[];a&&c.push(r.map(e=>Ka(e.title??e.key,i)).join(i));for(let a=t;a<n;a+=1){let t=e(a);if(!t||s&&!s(t,a))continue;let n=r.map(e=>Ka(qa(t,e),i));c.push(n.join(i))}let l=c.join(`\r
|
|
10
|
+
`);return o?`\uFEFF${l}`:l},Ya=({getRow:e,startRow:t,endRow:n,columns:r,isRowIncluded:i})=>{let a=r.map(e=>({key:e.key,title:e.title??e.key})),o=[];for(let a=t;a<n;a+=1){let t=e(a);t&&(i&&!i(t,a)||o.push(r.map(e=>{let n=F(t,e);return{value:n,text:e.formatClipboardValue?e.formatClipboardValue(n,t):String(n??``)}})))}return{columns:a,rows:o}},Xa=e=>e===`all`?`view`:e===`visible`?`rendered`:e,Za=e=>{switch(e.kind){case`set`:return{...e,values:[...e.values]};case`number`:return{...e,parsed:e.parsed?{...e.parsed}:null};case`numberSet`:return{...e,condition:e.condition?{...e.condition}:null,set:e.set?{...e.set,values:[...e.set.values]}:null};case`textSet`:return{...e,condition:e.condition?{...e.condition}:null,set:e.set?{...e.set,values:[...e.set.values]}:null};case`dateSet`:return{...e,condition:e.condition?{...e.condition}:null,set:e.set?{...e.set,values:[...e.set.values]}:null};case`text`:case`date`:case`select`:return{...e};case`custom`:return{...e}}},Qa=e=>{let t={};for(let n of Object.keys(e))t[n]=Za(e[n]);return t},$a=e=>{let t={key:e.key};return e.visible!==void 0&&(t.visible=e.visible),e.pinned!==void 0&&(t.pinned=e.pinned),t},eo=e=>e.map(e=>{let t={key:e.key};return e.visible!==void 0&&(t.visible=e.visible),e.pinned!==void 0&&(t.pinned=e.pinned),t}),to=(e,t,n,r=[],i=2)=>({version:i,columnWidths:{...e},filters:{globalText:t.globalText,columnFilters:Qa(t.columnFilters)},sort:n.map(e=>({...e})),columns:r.map($a)}),no=e=>{let t=e&&typeof e==`object`?e:{},n={},r=t.columnWidths;if(r&&typeof r==`object`){let e=r;for(let t of Object.keys(e)){let r=e[t];typeof r==`number`&&Number.isFinite(r)&&(n[t]=r)}}let i=t.filters&&typeof t.filters==`object`?t.filters:{},a=typeof i.globalText==`string`?i.globalText:``,o={},s=i.columnFilters;if(s&&typeof s==`object`){let e=s;for(let t of Object.keys(e)){let n=e[t];n&&typeof n==`object`&&`kind`in n&&(o[t]=Za(n))}}let c=[],l=t.sort;if(Array.isArray(l)){for(let e of l)if(e&&typeof e==`object`){let t=e;typeof t.columnKey==`string`&&(t.direction===`asc`||t.direction===`desc`)&&c.push({columnKey:t.columnKey,direction:t.direction})}}let u,d=t.columns;if(Array.isArray(d)){let e=[];for(let t of d){if(!t||typeof t!=`object`)continue;let n=t;if(typeof n.key!=`string`)continue;let r={key:n.key};typeof n.visible==`boolean`&&(r.visible=n.visible),(n.pinned===`left`||n.pinned===`right`)&&(r.pinned=n.pinned),e.push(r)}u=e}return{version:2,columnWidths:n,filters:{globalText:a,columnFilters:o},sort:c,columns:u}},ro=(e,t,n)=>{let r=new Map(e.map(e=>[e.key,e])),i=new Set,a=(e,t)=>{let r=n[e.key],i=typeof r==`number`;if(!t&&!i)return e;let a={...e};return t&&(a.visible=t.visible,a.pinned=t.pinned),i&&(a.width=r),a},o=[];for(let e of t){let t=r.get(e.key);t&&(i.add(e.key),o.push(a(t,e)))}for(let t of e)i.has(t.key)||o.push(a(t,void 0));return S(o)},io=(e,t)=>e===null||t===null?e===t:e.mode===`blank`||e.mode===`notBlank`||t.mode===`blank`||t.mode===`notBlank`?e.mode===t.mode:e.mode===t.mode&&e.value===t.value,ao=(e,t)=>e===null||t===null?e===t:e.mode===t.mode?e.mode===`range`&&t.mode===`range`?e.from===t.from&&e.to===t.to:e.mode===`preset`&&t.mode===`preset`?e.preset===t.preset:e.mode===`blank`||e.mode===`notBlank`?!0:`value`in e&&`value`in t&&e.value===t.value:!1,oo=(e,t)=>e===null||t===null?e===t:(e.mode??`include`)===(t.mode??`include`)&&e.values.length===t.values.length&&e.values.every((e,n)=>e===t.values[n]),so=(e,t)=>e===null||t===null?e===t:e.mode===`comparison`&&t.mode===`comparison`?e.operator===t.operator&&e.value===t.value:e.mode===`range`&&t.mode===`range`?e.min===t.min&&e.max===t.max:e.mode===`blank`||e.mode===`notBlank`?e.mode===t.mode:!1,co=(e,t)=>{switch(e.kind){case`set`:return t.kind===`set`&&(e.mode??`include`)===(t.mode??`include`)&&e.values.length===t.values.length&&e.values.every((e,n)=>e===t.values[n]);case`number`:return t.kind===`number`&&e.raw===t.raw&&so(e.parsed,t.parsed);case`numberSet`:return t.kind===`numberSet`&&so(e.condition,t.condition)&&oo(e.set,t.set);case`textSet`:return t.kind===`textSet`&&io(e.condition,t.condition)&&oo(e.set,t.set);case`dateSet`:return t.kind===`dateSet`&&ao(e.condition,t.condition)&&oo(e.set,t.set);case`text`:return t.kind===`text`&&e.value===t.value;case`date`:return t.kind===`date`&&e.value===t.value;case`select`:return t.kind===`select`&&e.value===t.value;case`custom`:return t.kind===`custom`&&Object.is(e.value,t.value)}},lo=(e,t)=>{let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!(r in t)||e[r]!==t[r])return!1;return!0},uo=(e,t)=>{let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!(r in t)||!co(e[r],t[r]))return!1;return!0},fo=(e,t)=>{if(e===void 0||t===void 0)return e===t;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n].key!==t[n].key||e[n].visible!==t[n].visible||e[n].pinned!==t[n].pinned)return!1;return!0},po=(e,t)=>{if(e.version!==t.version||!lo(e.columnWidths,t.columnWidths)||e.filters.globalText!==t.filters.globalText||!uo(e.filters.columnFilters,t.filters.columnFilters)||e.sort.length!==t.sort.length)return!1;for(let n=0;n<e.sort.length;n+=1)if(e.sort[n].columnKey!==t.sort[n].columnKey||e.sort[n].direction!==t.sort[n].direction)return!1;return!!fo(e.columns,t.columns)},mo=(e,t,n)=>n?{emit:!1,nextLast:e}:e===null||po(e,t)?{emit:!1,nextLast:t}:{emit:!0,nextLast:t},ho=({rowTop:e,rowHeight:t,headerHeight:n,viewportHeight:r,currentScrollTop:i,align:a,maxScrollTop:o})=>{let s=n+e,c=s+t,l;if(a===`start`)l=s-n;else if(a===`end`)l=c-r;else if(a===`center`)l=(s+c)/2-(n+r)/2;else{let e=i+n,t=i+r;l=s>=e&&c<=t?i:s<e?s-n:c-r}return Math.min(Math.max(l,0),Math.max(o??1/0,0))},go=({cellLeft:e,cellWidth:t,leftPaneWidth:n,rightPaneWidth:r,viewportWidth:i,currentScrollLeft:a,align:o,maxScrollLeft:s})=>{let c=e+t,l=i-n-r,u;if(o===`start`)u=e-n;else if(o===`end`)u=c-i+r;else if(o===`center`)u=(e+c)/2-n-l/2;else{let t=a+n,o=a+i-r;u=e>=t&&c<=o?a:e<t?e-n:c-i+r}return Math.min(Math.max(u,0),Math.max(s??1/0,0))},_o=(e,t)=>{let{heights:n,prefix:r,rowCount:i}=e,a=Math.max(t,0);for(let e=a;e<i;e+=1)r[e+1]=r[e]+n[e]},vo=(e,t,n,r)=>{let i=r??new Map,a=Math.max(e,0),o=new Float64Array(a);for(let e=0;e<a;e+=1){let r=i.get(n(e));o[e]=r===void 0?t:r}let s={rowCount:a,estimate:t,heights:o,prefix:new Float64Array(a+1),measured:i};return _o(s,0),s},yo=(e,t,n,r)=>t<0||t>=e.rowCount||(e.measured.set(n,r),e.heights[t]===r)?!1:(e.heights[t]=r,!0),bo=(e,t,n)=>{if(t<=0||n<=0)return 0;if(n>=e[t])return t-1;let r=0,i=t;for(;r<i;){let t=r+i+1>>1;e[t]<=n?r=t:i=t-1}return Math.min(Math.max(r,0),t-1)},xo=e=>{let{prefix:t,rowCount:n}=e;return{rowCount:n,rowTop:e=>t[Math.min(Math.max(e,0),n)],rowsHeight:(e,r)=>t[Math.min(Math.max(r+1,0),n)]-t[Math.min(Math.max(e,0),n)],totalBodyHeight:t[n],rowAtContentY:e=>bo(t,n,e),cellHeight:e=>t[Math.min(Math.max(e+1,0),n)]-t[Math.min(Math.max(e,0),n)],detailHeight:()=>0}},So=21,Co=4,wo=41,To=13,Eo=600,Do=60,Oo=16,ko=null,Ao=()=>ko||(typeof document>`u`?null:(ko=document.createElement(`canvas`).getContext(`2d`),ko)),jo=`system-ui, sans-serif`,Mo=e=>{let t=jo,n=13,r=`400`;if(e&&typeof window<`u`){let i=window.getComputedStyle(e);i.fontFamily&&(t=i.fontFamily);let a=Number.parseFloat(i.fontSize);Number.isFinite(a)&&a>0&&(n=a),i.fontWeight&&(r=i.fontWeight)}return{cellFont:`${r} ${n}px ${t}`,headerFont:`${Eo} ${To}px ${t}`}},No=(e,t,n)=>Math.min(Math.max(e,t),n),Po=e=>e>=4352&&e<=4447||e>=11904&&e<=12350||e>=12353&&e<=13311||e>=13312&&e<=19903||e>=19968&&e<=40959||e>=40960&&e<=42191||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65072&&e<=65103||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=127744&&e<=129791||e>=131072&&e<=262141,Fo=e=>{let t=0;for(let n of e){let e=n.codePointAt(0)??0;t+=Po(e)?2:1}return t},Io=(e,t)=>{let n=F(e,t);return t.valueFormatter?t.valueFormatter({value:n,row:e,column:t}):String(n??``)},Lo=e=>{if(!e||typeof document>`u`)return null;let t=document.createElement(`div`);return t.setAttribute(`aria-hidden`,`true`),t.style.cssText=`position:absolute;top:-99999px;left:-99999px;visibility:hidden;pointer-events:none;width:auto;height:auto;contain:layout style;`,e.appendChild(t),t},Ro=e=>{let t=document.createElement(`div`);return t.className=`ssg-body-cell`,t.style.cssText=`display:inline-block;position:static;top:auto;left:auto;width:auto;height:auto;white-space:nowrap;overflow:visible;`,t.textContent=e,t},zo=e=>e.suppressAutoSize===!0||e.autoHeight===!0;function Bo(e){let t=e.map(()=>[]),n=e.map(()=>[]),r=e.map(()=>1/0),i=e.map(()=>0);return{collect:a=>{for(let o=0;o<e.length;o+=1){if(zo(e[o]))continue;let s=e[o].estimateCellWidth;if(s){let t=s(a,e[o]);t>i[o]&&(i[o]=t);continue}let c=String(F(a,e[o])??``);if(c===``)continue;let l=t[o],u=n[o];if(l.length===Oo&&2*c.length<=r[o])continue;let d=Fo(c);if(l.length<Oo){if(l.push(a),u.push(d),l.length===Oo){let e=u[0];for(let t=1;t<Oo;t+=1)u[t]<e&&(e=u[t]);r[o]=e}continue}if(d<=r[o])continue;let f=0;for(let e=1;e<Oo;e+=1)u[e]<u[f]&&(f=e);l[f]=a,u[f]=d;let p=u[0];for(let e=1;e<Oo;e+=1)u[e]<p&&(p=u[e]);r[o]=p}},finalize:({gridRoot:n,currentWidths:r})=>{let a=Ao();if(!a||e.length===0)return{};let{cellFont:o,headerFont:s}=Mo(n),c={},l=Lo(n);try{let n=null;if(l){let r=[];for(let n=0;n<e.length;n+=1){if(zo(e[n])){r.push([]);continue}if(e[n].estimateCellWidth){r.push([]);continue}let i=t[n],a=[];for(let t=0;t<i.length;t+=1){let r=Io(i[t],e[n]);if(r===``)continue;let o=Ro(r);l.appendChild(o),a.push(o)}r.push(a)}n=r.map(e=>{let t=0;for(let n=0;n<e.length;n+=1){let r=e[n].offsetWidth;r>t&&(t=r)}return t})}for(let l=0;l<e.length;l+=1){let u=e[l];if(zo(u))continue;a.font=s;let d=u.title||u.key,f=a.measureText(d).width+Co+wo,p;if(u.estimateCellWidth)p=i[l]>0?i[l]+So:0;else if(n)p=n[l];else{a.font=o;let e=0,n=t[l];for(let t=0;t<n.length;t+=1){let r=Io(n[t],u);if(r===``)continue;let i=a.measureText(r).width;i>e&&(e=i)}p=e>0?e+Co+So:0}let m=Math.ceil(No(Math.max(f,p),u.minWidth??Do,u.maxWidth??1/0));r[u.key]!==m&&(c[u.key]=m)}}finally{l&&l.parentNode&&l.parentNode.removeChild(l)}return c}}}function Vo(){return Ao()!==null}var Ho=()=>new Promise(e=>{if(typeof MessageChannel>`u`){setTimeout(e,0);return}let t=new MessageChannel;t.port1.onmessage=()=>{t.port1.close(),e()},t.port2.postMessage(null)}),Uo=()=>typeof performance<`u`?performance.now():Date.now(),Wo=async(e,t,{budgetMs:n=10,isCancelled:r,onYield:i}={})=>{let a=0;for(;a<e;){let o=Uo();do t(a),a+=1;while(a<e&&Uo()-o<n);if(a<e){if(await Ho(),r?.())return!1;i?.(a,e)}}return!r?.()},Go=180,Ko=()=>{let e=null,t=Zn(!1),n=0,r=null,i=()=>{r!==null&&(clearTimeout(r),r=null)};return{update:t=>{e=t},runAutosize:async a=>{if(e===null||a.length===0||!Vo())return;let{rowModelRef:o,gridRootRef:s,columnWidthsRef:c,dispatch:l}=e,u=n+=1;i();let d=o.current,f=d.getRowCount(),p=s.current,m=c.current,h=Bo(a);r=setTimeout(()=>{n===u&&t.setSnapshot(!0)},Go);try{if(!await Wo(f,e=>{let t=d.getRow(e);t&&h.collect(t)},{isCancelled:()=>n!==u||o.current!==d}))return;let e=h.finalize({gridRoot:p,currentWidths:m});Object.keys(e).length>0&&l(v.syncColumnWidths(e))}finally{n===u&&(i(),t.setSnapshot(!1))}},subscribe:t.subscribe,getSnapshot:t.getSnapshot,dispose:()=>{n+=1,i()}}},qo=t=>{let n=ur(()=>Ko(),t);return{isAutosizing:(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot),runAutosize:n.runAutosize}},Jo=()=>{let e=new Set,t=[];return{collect(n){let r=String(n??``);e.has(r)||(e.add(r),t.push({value:r,label:r||`(空白)`}))},finalize(){return t.sort((e,t)=>ei.compare(e.label,t.label))}}},Yo=(e,t)=>{let n=Jo();for(let r=0;r<e;r+=1)n.collect(t(r));return n.finalize()},Xo=[],Zo=new Set,Qo={status:`idle`,options:Xo,allValues:Zo,progress:0},$o={status:`collecting`,options:Xo,allValues:Zo,progress:0},es=e=>new Set(e.map(e=>e.value)),ts=e=>{let t=e?.filterType??null;return t===`select`||t===`set`||t===`numberSet`||t===`textSet`||t===`dateSet`},ns=(e,t,n)=>{if(!e||!ts(e))return Qo;let r=e.filterOptions&&e.filterOptions.length>0?e.filterOptions:null;if(r)return{status:`ready`,options:r,allValues:es(r),progress:1};if(t<=5e4){let e=Yo(t,n);return{status:`ready`,options:e,allValues:es(e),progress:1}}return null},Q={source:null,rowCount:0,result:Qo},rs=(e,t,n)=>e.source===n&&e.rowCount===t?e.result:$o,is=()=>{let e=Zn(Q),t=null,n=null,r=t=>{let{getRawValueAt:r,rowCount:i}=t,a=Jo(),o=!1;n=()=>{o=!0},Wo(i,e=>a.collect(r(e)),{isCancelled:()=>o,onYield:(t,n)=>{e.setSnapshot({source:r,rowCount:i,result:{status:`collecting`,options:Xo,allValues:Zo,progress:t/n}})}}).then(t=>{if(!t)return;let n=a.finalize();e.setSnapshot({source:r,rowCount:i,result:{status:`ready`,options:n,allValues:es(n),progress:1}})})};return{update:e=>{let i=t===null||t.needsAsync!==e.needsAsync||t.rowCount!==e.rowCount||t.getRawValueAt!==e.getRawValueAt;t=e,i&&(n?.(),n=null,e.needsAsync&&r(e))},subscribe:e.subscribe,getSnapshot:e.getSnapshot,dispose:()=>{n?.(),n=null}}},as=({column:t,rowCount:n,getRawValueAt:r})=>{let i=(0,e.useMemo)(()=>ns(t,n,r),[t,n,r]),a=ur(is,{needsAsync:i===null,rowCount:n,getRawValueAt:r}),o=(0,e.useSyncExternalStore)(a.subscribe,a.getSnapshot,a.getSnapshot);return i??rs(o,n,r)},os=(e,t,n)=>n&&e.needle.length>0?e.rows.length<=5e4?{order:Ut(e.rows,e.baseOrder,e.columns,t),status:`ready`,progress:1}:null:{order:e.baseOrder,status:`idle`,progress:1},ss=(e,t)=>e.rows===t.rows&&e.baseOrder===t.baseOrder&&e.columns===t.columns&&e.needle===t.needle,cs=(e,t,n)=>{if(e)return e;let{ready:r,progress:i}=t;return r!==null&&ss(r,n)?{order:r.order,status:`ready`,progress:1}:{order:r!==null&&r.rowsLength===n.rows.length?r.order:n.baseOrder,status:`filtering`,progress:i!==null&&ss(i,n)?i.progress:0}},ls=()=>{let e=Zn({ready:null,progress:null}),t=null,n=null,r=t=>{let r={rows:t.rows,baseOrder:t.baseOrder,columns:t.columns,needle:t.needle},i=r.baseOrder.length,a=new Int32Array(i),o=0,s=!1;n=()=>{s=!0},Wo(i,e=>{let t=r.baseOrder[e];Ht(r.rows[t],r.columns,r.needle)&&(a[o]=t,o+=1)},{isCancelled:()=>s,onYield:(t,n)=>{e.setSnapshot({...e.getSnapshot(),progress:{...r,progress:t/n}})}}).then(t=>{if(!t)return;let n=o===i?r.baseOrder:a.slice(0,o);e.setSnapshot({...e.getSnapshot(),ready:{...r,order:n,rowsLength:r.rows.length}})})};return{update:e=>{let i=t===null||t.needsAsync!==e.needsAsync||!ss(t,e);t=e,i&&(n?.(),n=null,e.needsAsync&&r(e))},subscribe:e.subscribe,getSnapshot:e.getSnapshot,dispose:()=>{n?.(),n=null}}},us=({rows:t,baseOrder:n,columns:r,globalText:i,enabled:a})=>{let o=(0,e.useDeferredValue)(i),s=o.trim().toLowerCase(),c=(0,e.useMemo)(()=>({rows:t,baseOrder:n,columns:r,needle:s}),[t,n,r,s]),l=(0,e.useMemo)(()=>os(c,o,a),[c,o,a]),u=ur(()=>ls(),{...c,needsAsync:l===null});return cs(l,(0,e.useSyncExternalStore)(u.subscribe,u.getSnapshot,u.getSnapshot),c)};function ds(e){let t=e.blockSize,n=e.maxBlocks,r=new Map,i=e=>{let t=r.get(e);t!==void 0&&(r.delete(e),r.set(e,t))},a=()=>{for(;r.size>n;){let e=r.keys().next().value;if(e===void 0)break;r.delete(e)}};return{getRow:e=>{if(t<=0||e<0)return;let n=Math.floor(e/t),i=r.get(n);if(i!==void 0)return i[e-n*t]},hasBlock:e=>r.has(e),setBlock:(e,t)=>{r.has(e)&&r.delete(e),r.set(e,t),a()},updateRow:(e,n)=>{if(t<=0||e<0)return!1;let i=Math.floor(e/t),a=r.get(i);if(a===void 0)return!1;let o=e-i*t;if(o>=a.length)return!1;let s=a.slice();return s[o]=n,r.set(i,s),!0},touchBlocks:e=>{for(let t of e)i(t)},clear:()=>{r.clear()},loadedBlockIndexes:()=>Array.from(r.keys())}}function fs(e,t){return Math.floor(e/t)}function ps(e,t,n,r){if(n<=0||r<=0)return[];let i=Math.max(0,Math.floor(e)),a=Math.min(r,Math.floor(t));if(a<=i)return[];let o=fs(i,n),s=fs(a-1,n),c=[];for(let e=o;e<=s;e+=1)c.push(e);return c}var ms=()=>{let e=new Map,t=1,n=t=>e.get(t)?.row,r=(n,r)=>{let i=t;return t+=1,e.set(n,{row:r,writeId:i}),i},i=(t,n)=>e.get(t)?.writeId===n;return{getRow:n,beginWrite:r,isLatestWrite:i,settleWrite:(t,n)=>{i(t,n)&&e.delete(t)},clear:()=>{e.clear()},pendingCount:()=>e.size}},hs=(e,t,n)=>{let r=new Map;for(let i of e){let e=r.get(i.viewIndex);if(e===void 0){let a=t(i.viewIndex);if(a===void 0)continue;e={rowKey:n(a,i.viewIndex),rowIndex:i.viewIndex,row:a,previousRow:a,changes:[]},r.set(i.viewIndex,e)}e.changes.push({columnKey:i.column.key,previousValue:F(e.row,i.column),newValue:i.value}),e.row=Ze(e.row,i.column,i.value)}return Array.from(r.values())},gs=100,_s=64,vs=120,ys=e=>{let t=e,n=e.dataSource?.blockSize??gs,r=ds({blockSize:n,maxBlocks:e.dataSource?.maxCachedBlocks??_s}),i=ms(),a=e.dataSource?.initialRowCount??0,o=null,s=null,c=e.rowKeyGetter,l=new Map,u=new Set,d=null,f={start:0,end:0},p=0,m=!1,h,g=e.refreshToken,_=e=>i.getRow(e)??r.getRow(e),v=()=>({getRowCount:()=>a,getRow:e=>_(e),getSourceIndex:e=>e,getRowKey:e=>{let t=_(e);return t===void 0?e:c(t,e)}}),y=v(),b=Zn({rowModel:y,rowCount:a,loadError:o,writeError:s}),x=()=>{let e=b.getSnapshot();e.rowModel===y&&e.rowCount===a&&e.loadError===o&&e.writeError===s||b.setSnapshot({rowModel:y,rowCount:a,loadError:o,writeError:s})},S=()=>{y=v(),x()},C=()=>{p+=1,i.clear(),s=null},w=()=>{let e=u.size;o=e===0?null:{failedBlockCount:e},x()},T=()=>{for(let[,e]of l)e.abort();l.clear()},E=()=>{d!==null&&(clearTimeout(d),d=null)},D=e=>{let{dataSource:i,query:s}=t;if(i==null||r.hasBlock(e)||l.has(e))return;let c=new AbortController;l.set(e,c);let d=e*n,f=d+n;i.getRows({startIndex:d,endIndex:f,query:s,signal:c.signal}).then(t=>{c.signal.aborted||l.get(e)===c&&(l.delete(e),r.setBlock(e,t.rows),u.delete(e)&&(o=u.size===0?null:{failedBlockCount:u.size}),t.totalRowCount!==a&&(a=t.totalRowCount),S())}).catch(n=>{c.signal.aborted||l.get(e)===c&&(l.delete(e),u.add(e),w(),t.onLoadError?.(n,{startIndex:d,endIndex:f}))})},O=()=>{let{start:e,end:t}=f,r=ps(e,t,n,a),i=new Set(r);for(let[e,t]of l)i.has(e)||(t.abort(),l.delete(e));for(let e of r)D(e)},k=()=>{E(),d=setTimeout(()=>{d=null,O()},t.debounceMs??vs)},A=(e,i)=>{t.dataSource!=null&&(f={start:e,end:i},r.touchBlocks(ps(e,i,n,a)),k())},ee=()=>{T(),E(),r.clear(),u.clear(),o=null,C()},j=()=>{if(t.dataSource==null)return;ee(),S();let{start:e,end:r}=f;if(ps(e,r,n,a).length===0){D(0);return}O()},te=()=>{if(t.dataSource==null||u.size===0)return;let e=Array.from(u);u.clear(),w();for(let t of e)D(t)},ne=e=>{let n=t.dataSource?.updateRows;if(n===void 0||e.length===0)return 0;let a=hs(e,_,t.rowKeyGetter);if(a.length===0)return 0;let o=p,c=a.map(e=>({viewIndex:e.rowIndex,row:e.row,writeId:i.beginWrite(e.rowIndex,e.row)}));return S(),n({updates:a}).then(e=>{if(p!==o)return;let t=e===void 0?void 0:e.rows;c.forEach((e,n)=>{r.updateRow(e.viewIndex,t?.[n]??e.row),i.settleWrite(e.viewIndex,e.writeId)}),S()}).catch(e=>{if(p===o){for(let e of c)i.settleWrite(e.viewIndex,e.writeId);s={failedRowCount:a.length},t.onWriteError?.(e,{updates:a}),S()}}),a.length},M=()=>{if(h!==void 0&&h===t.queryKey)return;h=t.queryKey;let{dataSource:e}=t;if(e==null)return;ee();let n=!m;m=!0,S(),n?(e.initialRowCount??0)<=0&&D(0):D(0)},re=()=>{let e=t.refreshToken;if(t.dataSource==null||e===void 0){g=e;return}if(g===void 0){g=e;return}g!==e&&(g=e,j())};return{update:e=>{t=e,e.rowKeyGetter!==c&&(c=e.rowKeyGetter,S()),M(),re()},subscribe:b.subscribe,getSnapshot:b.getSnapshot,isRowLoaded:e=>_(e)!==void 0,requestRange:A,refresh:j,retryFailedBlocks:te,applyCellEdits:ne,dispose:()=>{T(),E(),p+=1,i.clear()}}};function bs(t){let n=ur(()=>ys(t),t),r=(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot);return{rowModel:r.rowModel,rowCount:r.rowCount,isRowLoaded:n.isRowLoaded,requestRange:n.requestRange,refresh:n.refresh,loadError:r.loadError,retryFailedBlocks:n.retryFailedBlocks,canUpdateRows:t.dataSource?.updateRows!==void 0,applyCellEdits:n.applyCellEdits,writeError:r.writeError}}var xs=e=>{let t={},n=e.globalText.trim();n.length>0&&(t.globalText=n);let r={},i=!1;for(let t of Object.keys(e.columnFilters)){let n=e.columnFilters[t];xt(n)&&(r[t]=n,i=!0)}return i&&(t.columnFilters=r),e.sort.length>0&&(t.sort=e.sort),t},Ss=e=>{let t=e.columnFilters??{},n=Object.keys(t).sort().map(e=>[e,t[e]]),r=e.sort??[];return JSON.stringify({g:e.globalText??``,s:r.map(e=>[e.columnKey,e.direction]),c:n})};function Cs({state:e,disabled:t=!1,slot:n}){return(0,r.jsx)(`span`,{"aria-hidden":`true`,className:i(`ssg-row-checkbox`,n?.className),style:n?.style,"data-state":e,"data-disabled":t?`true`:void 0})}var ws=(0,e.memo)(Cs);function Ts({checked:e,readOnly:t,onToggle:n,slot:i}){return(0,r.jsx)(`span`,{role:`checkbox`,"aria-checked":e,"aria-disabled":t||void 0,className:`ssg-cell-checkbox`,onClick:()=>{t||n()},children:(0,r.jsx)(ws,{slot:i,state:e?`checked`:`unchecked`,disabled:t})})}var Es=(e,t)=>{let n=t.trim().toLowerCase();return n?e.filter(e=>e.label.toLowerCase().includes(n)):e},Ds=(e,t)=>{if(!t.trim())return{kind:`close`};let n=Es(e,t);return n.length===0?{kind:`none`}:{kind:`replace`,values:n.map(e=>e.value)}},Os=(e,t)=>e===null?!0:e.mode===`include`?e.values.has(t):!e.values.has(t),ks=[`日`,`月`,`火`,`水`,`木`,`金`,`土`],As=[`1月`,`2月`,`3月`,`4月`,`5月`,`6月`,`7月`,`8月`,`9月`,`10月`,`11月`,`12月`],js=(e,t)=>{let n=new Date(e,t,1).getDay(),r=[];for(let i=0;i<42;i+=1){let a=new Date(e,t,1-n+i);r.push({key:Et(a),day:a.getDate(),inCurrentMonth:a.getMonth()===t})}return r},Ms=e=>e===``?``:e.replaceAll(`-`,`/`),Ns=(e,t)=>`${e}年 ${t+1}月`,Ps=e=>e-e%12,Fs=e=>{let t=Ps(e),n=[];for(let e=0;e<12;e+=1)n.push(t+e);return n};function Is({value:t,onCommit:n,ariaLabel:a,inputRef:o,onRequestClose:s,align:c=`left`}){let[l,u]=(0,e.useState)(null),[d,f]=(0,e.useState)(!1),[p,m]=(0,e.useState)(!1),[h,g]=(0,e.useState)(`days`),[_,v]=(0,e.useState)(()=>new Date().getFullYear()),[y,b]=(0,e.useState)(()=>new Date().getMonth()),x=(0,e.useRef)(null),S=l??Ms(t),C=Dt(new Date)??``,w=()=>{if(l===null)return;let e=l.trim();if(e===``){n(``),u(null),f(!1);return}let t=Dt(e);if(t===null){f(!0);return}n(t),u(null),f(!1)},T=()=>{let[e,n]=(t===``?C:t).split(`-`);v(Number(e)),b(Number(n)-1),g(`days`),m(!0)},E=()=>{m(!1)},D=e=>{n(e),u(null),f(!1),E()};(0,e.useEffect)(()=>{if(!p)return;let e=e=>{let t=e.target;t&&x.current?.contains(t)||m(!1)};return document.addEventListener(`pointerdown`,e,!0),()=>{document.removeEventListener(`pointerdown`,e,!0)}},[p]);let O=e=>{if(e.stopPropagation(),e.key===`Enter`){if(e.nativeEvent.isComposing)return;e.preventDefault(),w(),E();return}if(e.key===`Escape`){if(e.preventDefault(),p){E();return}s()}},k=e=>t=>{t.preventDefault(),t.stopPropagation(),e()},A=e=>{if(h===`days`){let t=new Date(_,y+e,1);v(t.getFullYear()),b(t.getMonth());return}if(h===`months`){v(t=>t+e);return}v(t=>t+e*12)},ee=()=>{g(e=>e===`days`?`months`:`years`)},j=()=>{g(e=>e===`years`?`months`:`days`)},te=h===`days`?Ns(_,y):h===`months`?`${_}年`:`${Ps(_)} – ${Ps(_)+11}`;return(0,r.jsxs)(`div`,{ref:x,className:`ssg-dp-root`,children:[(0,r.jsxs)(`div`,{className:i(`ssg-dp-field`,p&&`ssg-dp-field--open`,d&&`ssg-dp-field--invalid`),children:[(0,r.jsx)(`input`,{ref:o,type:`text`,inputMode:`numeric`,value:S,placeholder:`yyyy/mm/dd`,"aria-label":a,"aria-invalid":d||void 0,className:`ssg-dp-input`,onChange:e=>{u(e.target.value),f(!1)},onKeyDown:O,onBlur:w}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-cal-btn`,"aria-label":p?`カレンダーを閉じる`:`カレンダーを開く`,onPointerDown:k(()=>{p?E():T()}),onKeyDown:e=>{e.stopPropagation()},children:(0,r.jsxs)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 16 16`,"aria-hidden":`true`,children:[(0,r.jsx)(`rect`,{x:`1.5`,y:`2.5`,width:`13`,height:`12`,rx:`1.5`,fill:`none`,stroke:`currentColor`}),(0,r.jsx)(`line`,{x1:`1.5`,y1:`6`,x2:`14.5`,y2:`6`,stroke:`currentColor`}),(0,r.jsx)(`line`,{x1:`5`,y1:`1`,x2:`5`,y2:`4`,stroke:`currentColor`}),(0,r.jsx)(`line`,{x1:`11`,y1:`1`,x2:`11`,y2:`4`,stroke:`currentColor`})]})})]}),p&&(0,r.jsxs)(`div`,{className:i(`ssg-dp-panel`,c===`right`&&`ssg-dp-panel--right`),children:[(0,r.jsxs)(`div`,{className:`ssg-dp-nav`,children:[(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-nav-btn`,"aria-label":`前へ`,onPointerDown:k(()=>A(-1)),children:`‹`}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-nav-title`,disabled:h===`years`,"aria-label":`表示単位を切り替える`,onPointerDown:k(ee),children:te}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-nav-btn`,"aria-label":`次へ`,onPointerDown:k(()=>A(1)),children:`›`})]}),h===`days`&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`div`,{className:`ssg-dp-dow`,children:ks.map((e,t)=>(0,r.jsx)(`span`,{className:i(t===0&&`ssg-dp-dow--sun`,t===6&&`ssg-dp-dow--sat`),children:e},e))}),(0,r.jsx)(`div`,{className:`ssg-dp-days`,children:js(_,y).map(e=>(0,r.jsx)(`button`,{type:`button`,className:i(`ssg-dp-day`,!e.inCurrentMonth&&`ssg-dp-day--out`,e.key===C&&`ssg-dp-day--today`,e.key===t&&`ssg-dp-day--selected`),"aria-label":e.key,onPointerDown:k(()=>D(e.key)),children:e.day},e.key))})]}),h===`months`&&(0,r.jsx)(`div`,{className:`ssg-dp-grid`,children:As.map((e,t)=>(0,r.jsx)(`button`,{type:`button`,className:i(`ssg-dp-cell`,t===y&&`ssg-dp-cell--selected`),onPointerDown:k(()=>{b(t),g(`days`)}),children:e},e))}),h===`years`&&(0,r.jsx)(`div`,{className:`ssg-dp-grid`,children:Fs(_).map(e=>(0,r.jsx)(`button`,{type:`button`,className:i(`ssg-dp-cell`,e===_&&`ssg-dp-cell--selected`),onPointerDown:k(()=>{v(e),g(`months`)}),children:e},e))}),(0,r.jsxs)(`div`,{className:`ssg-dp-foot`,children:[h!==`days`&&(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-foot-btn`,onPointerDown:k(j),children:`← 戻る`}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-foot-btn`,onPointerDown:k(()=>D(C)),children:`今日`}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-dp-foot-btn ssg-dp-foot-btn--muted`,onPointerDown:k(()=>D(``)),children:`クリア`})]})]})]})}var Ls=24;function Rs({options:t,setSelection:n,searchInputRef:i,onValueToggle:a,onSelectAllChange:o,onReplaceSelection:s,onRequestClose:c,isServerSide:l,selectAllUsesExplicitScope:u=!1}){let[d,f]=(0,e.useState)(``),p=(0,e.useDeferredValue)(d),m=(0,e.useMemo)(()=>Es(t,p),[t,p]),h=p.trim().length>0,g=(0,e.useRef)(null),v=_({count:m.length,getScrollElement:()=>g.current,estimateSize:()=>Ls,overscan:10}),y=(0,e.useMemo)(()=>{if(n===null)return m.length;let e=0;for(let t of m)Os(n,t.value)&&(e+=1);return e},[n,m]),b=m.length>0&&y===m.length,x=y>0&&!b,S=(0,e.useMemo)(()=>new Set(t.map(e=>e.value)),[t]),C=(0,e.useMemo)(()=>{if(n===null)return t.length;let e=0;for(let t of n.values)S.has(t)&&(e+=1);return n.mode===`include`?e:t.length-e},[n,S,t.length]);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:i,type:`text`,value:d,onChange:e=>f(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Escape`&&(e.preventDefault(),c()),e.key===`Enter`){if(e.nativeEvent.isComposing)return;e.preventDefault();let n=Ds(t,d);if(n.kind===`none`)return;n.kind===`replace`&&s(n.values),c()}},placeholder:`検索(Enter で確定)`,className:`ssg-filter-input`}),(0,r.jsxs)(`label`,{className:`ssg-filter-selectall`,children:[(0,r.jsx)(`input`,{type:`checkbox`,checked:b,ref:e=>{e&&(e.indeterminate=x)},onChange:()=>{o(h||u?m.map(e=>e.value):`all`,!b)}}),(0,r.jsx)(`span`,{className:`ssg-filter-selectall-label`,children:h?`(検索結果をすべて選択)`:`(すべて選択)`})]}),(0,r.jsx)(`div`,{ref:g,className:`ssg-filter-list`,children:m.length===0?(0,r.jsx)(`div`,{className:`ssg-filter-empty`,children:t.length===0?l?`候補が未指定です(serverSide では列に filterOptions などの候補供給が必要)`:`候補がありません`:`一致する候補がありません`}):(0,r.jsx)(`div`,{className:`ssg-filter-virt`,style:{height:v.getTotalSize()},children:v.getVirtualItems().map(e=>{let t=m[e.index];if(!t)return null;let i=Os(n,t.value);return(0,r.jsxs)(`label`,{className:`ssg-filter-option`,style:{transform:`translateY(${e.start}px)`,height:e.size},children:[(0,r.jsx)(`input`,{type:`checkbox`,checked:i,onChange:()=>a(t.value)}),(0,r.jsx)(`span`,{className:`ssg-filter-option-label`,children:t.label})]},t.value)})})}),(0,r.jsxs)(`div`,{className:`ssg-filter-meta`,children:[`選択中: `,C,` / `,t.length,` 件`,h?`(表示中 ${m.length} 件)`:``]})]})}function zs({draft:e,valueInputRef:t,onDraftChange:n,onKeyDown:i}){let a=I(e.operator);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`select`,{value:e.operator,onChange:t=>n({...e,operator:t.target.value}),onKeyDown:i,className:`ssg-filter-select`,"aria-label":`条件の演算子`,children:Kt.map(e=>(0,r.jsx)(`option`,{value:e.value,children:e.label},e.value))}),a>0?(0,r.jsxs)(`div`,{className:`ssg-filter-cond-values`,children:[(0,r.jsx)(`input`,{ref:t,type:`text`,inputMode:`decimal`,value:e.value1,onChange:t=>n({...e,value1:t.target.value}),onKeyDown:i,placeholder:a===2?`下限`:`値`,className:`ssg-filter-input`,"aria-label":a===2?`下限`:`条件の値`}),a===2&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`span`,{className:`ssg-filter-cond-tilde`,children:`〜`}),(0,r.jsx)(`input`,{type:`text`,inputMode:`decimal`,value:e.value2,onChange:t=>n({...e,value2:t.target.value}),onKeyDown:i,placeholder:`上限`,className:`ssg-filter-input`,"aria-label":`上限`})]})]}):(0,r.jsx)(`div`,{className:`ssg-filter-meta`,children:`この演算子は値入力を使いません`})]})}function Bs({draft:e,valueInputRef:t,onDraftChange:n,onKeyDown:i}){let a=nn(e.operator);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`select`,{value:e.operator,onChange:t=>n({...e,operator:t.target.value}),onKeyDown:i,className:`ssg-filter-select`,"aria-label":`条件の演算子`,children:tn.map(e=>(0,r.jsx)(`option`,{value:e.value,children:e.label},e.value))}),a>0?(0,r.jsx)(`div`,{className:`ssg-filter-cond-values`,children:(0,r.jsx)(`input`,{ref:t,type:`text`,value:e.value,onChange:t=>n({...e,value:t.target.value}),onKeyDown:i,placeholder:`値`,className:`ssg-filter-input`,"aria-label":`条件の値`})}):(0,r.jsx)(`div`,{className:`ssg-filter-meta`,children:`この演算子は値入力を使いません`})]})}function Vs({draft:e,valueInputRef:t,onDraftChange:n,onKeyDown:a,presets:o,renderDateInput:s,onRequestClose:c}){let l=e.preset===null?un(e.operator):0,u=(t,r)=>{n({...e,[t]:fn(r),preset:null})};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`select`,{value:e.operator,onChange:t=>n({...e,operator:t.target.value,preset:null}),onKeyDown:a,className:`ssg-filter-select`,"aria-label":`条件の演算子`,children:ln.map(e=>(0,r.jsx)(`option`,{value:e.value,children:e.label},e.value))}),l>0?(0,r.jsxs)(`div`,{className:`ssg-filter-cond-values`,children:[s?s({value:e.value1,onChange:e=>u(`value1`,e),ariaLabel:l===2?`開始日`:`条件の日付`,slot:l===2?`from`:`single`}):(0,r.jsx)(Is,{value:e.value1,onCommit:t=>n({...e,value1:t,preset:null}),ariaLabel:l===2?`開始日`:`条件の日付`,inputRef:t,onRequestClose:c}),l===2&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`span`,{className:`ssg-filter-cond-tilde`,children:`〜`}),s?s({value:e.value2,onChange:e=>u(`value2`,e),ariaLabel:`終了日`,slot:`to`}):(0,r.jsx)(Is,{value:e.value2,onCommit:t=>n({...e,value2:t,preset:null}),ariaLabel:`終了日`,onRequestClose:c,align:`right`})]})]}):e.preset===null?(0,r.jsx)(`div`,{className:`ssg-filter-meta`,children:`この演算子は値入力を使いません`}):null,o.length>0&&(0,r.jsx)(`div`,{className:`ssg-filter-presets`,children:o.map(t=>(0,r.jsx)(`button`,{type:`button`,onPointerDown:r=>{r.preventDefault(),r.stopPropagation(),n({...e,preset:e.preset===t.id?null:t.id})},onKeyDown:e=>{e.stopPropagation()},className:i(`ssg-filter-preset-chip`,e.preset===t.id&&`ssg-filter-preset-chip--active`),children:t.label},t.id))})]})}function Hs({options:t,setSelection:n,searchInputRef:i,onValueToggle:a,onSelectAllChange:o,onReplaceSelection:s,onRequestClose:c,isServerSide:l}){let[u,d]=(0,e.useState)(``),f=(0,e.useDeferredValue)(u),[p,m]=(0,e.useState)(()=>new Set),h=f.trim().length>0,g=(0,e.useMemo)(()=>Es(t,f),[t,f]),v=(0,e.useMemo)(()=>Ia(t,p),[t,p]),y=(0,e.useRef)(null),b=h?g.length:v.length,x=_({count:b,getScrollElement:()=>y.current,estimateSize:()=>Ls,overscan:10}),S=(0,e.useMemo)(()=>(h?g:t).map(e=>e.value),[h,g,t]),C=(0,e.useMemo)(()=>{let e=0;for(let t of S)Os(n,t)&&(e+=1);return e},[S,n]),w=S.length>0&&C===S.length,T=C>0&&!w,E=(0,e.useMemo)(()=>new Set(t.map(e=>e.value)),[t]),D=(0,e.useMemo)(()=>{if(n===null)return t.length;let e=0;for(let t of n.values)E.has(t)&&(e+=1);return n.mode===`include`?e:t.length-e},[n,E,t.length]),O=e=>{m(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},k=e=>{let t=0;for(let r of e)Os(n,r)&&(t+=1);return t},A=e=>{let t=k(e.leafKeys),n=e.leafKeys.length>0&&t===e.leafKeys.length,i=t>0&&!n;return(0,r.jsxs)(r.Fragment,{children:[e.type===`group`?(0,r.jsx)(`button`,{type:`button`,onPointerDown:t=>{t.preventDefault(),t.stopPropagation(),O(e.key)},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-tree-toggle`,"aria-label":e.expanded?`折りたたむ`:`展開する`,children:e.expanded?`▾`:`▸`}):(0,r.jsx)(`span`,{className:`ssg-filter-tree-toggle ssg-filter-tree-toggle--placeholder`}),(0,r.jsx)(`input`,{type:`checkbox`,checked:n,ref:e=>{e&&(e.indeterminate=i)},onChange:()=>{if(e.type===`leaf`){a(e.key);return}o(e.leafKeys,!n)}}),(0,r.jsx)(`span`,{className:`ssg-filter-option-label`,children:e.label})]})};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`input`,{ref:i,type:`text`,value:u,onChange:e=>d(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Escape`&&(e.preventDefault(),c()),e.key===`Enter`){if(e.nativeEvent.isComposing)return;e.preventDefault();let n=Ds(t,u);if(n.kind===`none`)return;n.kind===`replace`&&s(n.values),c()}},placeholder:`検索(Enter で確定)`,className:`ssg-filter-input`}),(0,r.jsxs)(`label`,{className:`ssg-filter-selectall`,children:[(0,r.jsx)(`input`,{type:`checkbox`,checked:w,ref:e=>{e&&(e.indeterminate=T)},onChange:()=>o(S,!w)}),(0,r.jsx)(`span`,{className:`ssg-filter-selectall-label`,children:h?`(検索結果をすべて選択)`:`(すべて選択)`})]}),(0,r.jsx)(`div`,{ref:y,className:`ssg-filter-list`,children:b===0?(0,r.jsx)(`div`,{className:`ssg-filter-empty`,children:t.length===0?l?`候補が未指定です(serverSide では列に filterOptions などの候補供給が必要)`:`候補がありません`:`一致する候補がありません`}):(0,r.jsx)(`div`,{className:`ssg-filter-virt`,style:{height:x.getTotalSize()},children:x.getVirtualItems().map(e=>{if(h){let t=g[e.index];return t?(0,r.jsxs)(`label`,{className:`ssg-filter-option`,style:{transform:`translateY(${e.start}px)`,height:e.size},children:[(0,r.jsx)(`input`,{type:`checkbox`,checked:Os(n,t.value),onChange:()=>a(t.value)}),(0,r.jsx)(`span`,{className:`ssg-filter-option-label`,children:t.label})]},t.value):null}let t=v[e.index];return t?(0,r.jsx)(`div`,{className:`ssg-filter-option`,style:{transform:`translateY(${e.start}px)`,height:e.size,paddingLeft:8+t.depth*16},children:A(t)},t.key):null})})}),(0,r.jsxs)(`div`,{className:`ssg-filter-meta`,children:[`選択中: `,D,` / `,t.length,` 件`,h?`(表示中 ${g.length} 件)`:``]})]})}function Us({conditionEditor:e,conditionActive:t,onConditionClear:n,options:i,setSelection:a,onSelectionClear:o,summaryText:s,children:c}){return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`div`,{className:`ssg-filter-sec-head`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-sec-label`,children:`条件`}),(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),n()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-sec-clear`,disabled:!t,children:`クリア`})]}),e,(0,r.jsx)(`div`,{className:`ssg-filter-sep`}),(0,r.jsxs)(`div`,{className:`ssg-filter-sec-head`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-sec-label`,children:`値`}),(0,r.jsx)(`span`,{className:`ssg-filter-sec-meta`,children:t?`一致 ${i.length} 件`:`全 ${i.length} 件`}),(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),o()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-sec-clear`,disabled:a===null,children:`クリア`})]}),c,(0,r.jsxs)(`div`,{className:`ssg-filter-summary`,children:[`🔽 `,s]})]})}function Ws({isOpen:n,themeClassName:a,popoverSlot:o,title:s,filterType:c,draftValue:l,numberConditionDraft:u,onNumberConditionDraftChange:d,textConditionDraft:f,onTextConditionDraftChange:p,dateConditionDraft:m,onDateConditionDraftChange:h,datePresets:g,renderDateInput:_,onComboConditionClear:v,onComboSelectionClear:y,comboSummaryText:b,currentValueText:x,layout:S,selectOptions:C,optionsStatus:w,optionsProgress:T,setSelection:E,popoverRef:D,textInputRef:O,selectRef:k,onRequestClose:A,onDraftChange:ee,onApply:j,onClear:te,onSetValueToggle:ne,onSetSelectAllChange:M,onSetClear:re,onSetReplaceSelection:ie,isServerSide:N=!1}){let ae=(0,e.useRef)(null),[P]=(0,e.useState)(()=>new Date);if(typeof document>`u`||!n||!S)return null;let oe={top:S.top,left:S.left,width:S.width,maxHeight:S.maxHeight},se=e=>{e.stopPropagation()},ce=e=>{e.stopPropagation()},le=c===`set`,ue=c===`numberSet`,de=c===`textSet`,fe=c===`dateSet`,pe=ue||de||fe,me=le||pe,he=u??Gt,ge=f??en,_e=m??cn,ve=g??pt(void 0),ye=ue?Jt(he):null,be=de?rn(ge):null,xe=fe?pn(_e):null,Se=ye!==null||be!==null||xe!==null,Ce=ue?Xt(C,ye):de?sn(C,be):fe?gn(C,xe,P,ve):C,we=e=>{if(e.stopPropagation(),e.key===`Enter`){e.preventDefault(),j();return}e.key===`Escape`&&(e.preventDefault(),A())};return(0,t.createPortal)((0,r.jsxs)(`div`,{ref:D,onPointerDown:ce,onKeyDown:se,onPasteCapture:e=>{e.stopPropagation()},className:i(`ssg-filter-popover`,a,o?.className),style:{...o?.style,...oe},children:[(0,r.jsxs)(`div`,{className:`ssg-filter-title`,children:[`列フィルター: `,s]}),(me||c===`select`)&&w===`collecting`?(0,r.jsxs)(`div`,{className:`ssg-filter-collecting`,children:[`候補を収集中… `,Math.round(T*100),`%`]}):pe?(0,r.jsx)(Us,{conditionEditor:ue?(0,r.jsx)(zs,{draft:he,valueInputRef:O,onDraftChange:d,onKeyDown:we}):de?(0,r.jsx)(Bs,{draft:ge,valueInputRef:O,onDraftChange:p,onKeyDown:we}):(0,r.jsx)(Vs,{draft:_e,valueInputRef:O,onDraftChange:h,onKeyDown:we,presets:ve,renderDateInput:_,onRequestClose:A}),conditionActive:Se,onConditionClear:v,options:Ce,setSelection:E,onSelectionClear:y,summaryText:b,children:fe?(0,r.jsx)(Hs,{options:Ce,setSelection:E,searchInputRef:ae,onValueToggle:ne,onSelectAllChange:M,onReplaceSelection:ie,onRequestClose:A,isServerSide:N}):(0,r.jsx)(Rs,{options:Ce,setSelection:E,searchInputRef:ae,onValueToggle:ne,onSelectAllChange:M,onReplaceSelection:ie,onRequestClose:A,isServerSide:N,selectAllUsesExplicitScope:!0})}):le?(0,r.jsx)(Rs,{options:C,setSelection:E,searchInputRef:O,onValueToggle:ne,onSelectAllChange:M,onReplaceSelection:ie,onRequestClose:A,isServerSide:N}):c===`number`?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`div`,{className:`ssg-filter-hint`,children:`フィルター種別: number`}),(0,r.jsx)(zs,{draft:he,valueInputRef:O,onDraftChange:d,onKeyDown:we})]}):c===`select`?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`div`,{className:`ssg-filter-hint`,children:`フィルター種別: select`}),(0,r.jsxs)(`select`,{ref:k,value:l,onChange:e=>ee(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Enter`){e.preventDefault(),j();return}e.key===`Escape`&&(e.preventDefault(),A())},className:`ssg-filter-select`,children:[(0,r.jsx)(`option`,{value:``,children:`(すべて)`}),C.map(e=>(0,r.jsx)(`option`,{value:e.value,children:e.label},`${s}-${e.value}`))]}),(0,r.jsxs)(`div`,{className:`ssg-filter-meta`,children:[`候補数: `,C.length]})]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`div`,{className:`ssg-filter-hint`,children:[`フィルター種別: `,c]}),(0,r.jsx)(`input`,{ref:O,type:`text`,value:l,onChange:e=>ee(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Enter`){e.preventDefault(),j();return}e.key===`Escape`&&(e.preventDefault(),A())},placeholder:`部分一致で絞り込み`,className:`ssg-filter-input`}),(0,r.jsx)(`div`,{className:`ssg-filter-meta ssg-filter-meta--ellipsis`,children:`部分一致検索です`})]}),!me&&(0,r.jsxs)(`div`,{className:`ssg-filter-meta ssg-filter-meta--ellipsis`,children:[`現在値: `,x]}),(0,r.jsx)(`div`,{className:`ssg-filter-footer`,children:me?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),re()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-secondary`,children:`クリア`}),(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),A()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-primary`,children:`閉じる`})]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),te()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-secondary`,children:`クリア`}),(0,r.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),j()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-primary`,children:`適用`})]})})]}),document.body)}function Gs({context:e,showCounts:t=!0,slot:n}){let{derivedSummary:a}=e;return(0,r.jsx)(`div`,{className:i(`ssg-bar--bottom`,n?.className),style:n?.style,children:(0,r.jsxs)(`div`,{className:`ssg-bar-container`,children:[t?(0,r.jsxs)(`div`,{className:`ssg-bar-group`,children:[(0,r.jsx)(`span`,{className:`ssg-bar-chip`,children:a.rowSummaryText}),(0,r.jsx)(`span`,{className:`ssg-bar-chip`,children:a.columnSummaryText})]}):null,(0,r.jsxs)(`div`,{className:`ssg-bar-group`,children:[(0,r.jsxs)(`span`,{className:`ssg-bar-chip`,children:[`Active: `,a.activeCellLabel]}),(0,r.jsxs)(`span`,{className:`ssg-bar-chip`,children:[`Selection: `,a.selectionLabel]}),(0,r.jsx)(`span`,{className:`ssg-bar-chip`,children:a.selectionStatsText}),(0,r.jsxs)(`span`,{className:`ssg-bar-chip`,children:[`Cols: `,a.selectionStats.selectedColumnCount]})]})]})})}var Ks=(0,r.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,r.jsx)(`circle`,{cx:`7`,cy:`7`,r:`4.5`}),(0,r.jsx)(`line`,{x1:`10.6`,y1:`10.6`,x2:`14.5`,y2:`14.5`})]}),qs=(0,r.jsxs)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,"aria-hidden":`true`,children:[(0,r.jsx)(`line`,{x1:`4`,y1:`4`,x2:`12`,y2:`12`}),(0,r.jsx)(`line`,{x1:`12`,y1:`4`,x2:`4`,y2:`12`})]});function Js({context:e,showSummary:t=!0,showFilter:n=!0,showCounts:a=!0,globalFilterPlaceholder:o=`グローバルフィルター`,globalFilterIcon:s,onFilterSummaryClick:c,slot:l}){let{derivedSummary:u}=e,d=s===void 0?Ks:s,f=e.globalFilterText.trim().length>0;return(0,r.jsx)(`div`,{className:i(`ssg-bar--top`,l?.className),style:l?.style,children:(0,r.jsxs)(`div`,{className:`ssg-bar-container`,children:[t?(0,r.jsxs)(`div`,{className:`ssg-bar-group ssg-bar-leading`,children:[(0,r.jsx)(`span`,{className:`ssg-bar-title`,children:`Toolbar`}),a?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.rowSummaryText}),(0,r.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.columnSummaryText})]}):null,c?(0,r.jsx)(`button`,{type:`button`,className:`ssg-bar-chip ssg-bar-chip--emphasis ssg-bar-chip--action`,onPointerDown:e=>{e.stopPropagation()},onClick:c,"data-ssg-tooltip":`フィルター管理パネルを開閉`,"aria-label":`フィルター管理パネルを開閉`,children:u.filterSummaryText}):(0,r.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.filterSummaryText}),(0,r.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.sortSummaryText})]}):null,n?(0,r.jsxs)(`div`,{className:`ssg-bar-input-group`,children:[d?(0,r.jsx)(`span`,{className:`ssg-bar-input-icon`,"aria-hidden":`true`,children:d}):null,(0,r.jsx)(`input`,{type:`text`,value:e.globalFilterText,onChange:t=>e.setGlobalFilterText(t.target.value),placeholder:o,className:`ssg-bar-input`}),f?(0,r.jsx)(`button`,{type:`button`,onClick:()=>e.setGlobalFilterText(``),className:`ssg-bar-input-clear`,"aria-label":`フィルターをクリア`,"data-ssg-tooltip":`クリア`,children:qs}):null]}):null]})})}var Ys=e=>e.enabled&&!e.isAutoHeightCell&&!e.hasRenderCell;function Xs({pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:a,rowKey:s,sourceRowIndex:c,row:l,top:u,renderEntries:d,rowHeight:f,autoHeight:p,showCellOverflowTooltip:m,showValidationMarks:h,autoHeightMinHeight:g,rowHeaderCellStyle:_,isRowHovered:v,isWholeGridSelected:y,isRowSelected:b,showRowCheckbox:x,isRowChecked:S,activeColInRow:C,editingColInRow:w,selectedColStart:T,selectedColEnd:E,readOnly:D,canEditCell:O,onRowHeaderPointerDown:k,onRowHeaderPointerEnter:A,onRowHeaderPointerLeave:ee,onCellPointerDown:j,onCellPointerEnter:te,onCellDoubleClick:ne,renderCellContent:M,rowClassName:re,rowStyle:ie,slots:N}){return(0,r.jsxs)(`div`,{"data-pane":e,"data-row-index":a,className:i(`ssg-body-row`,S&&`ssg-body-row--checked`,re,N?.bodyRow?.className),style:{...N?.bodyRow?.style,...ie,height:f,transform:`translateY(${u}px)`},children:[t&&(0,r.jsx)(`div`,{role:x?`checkbox`:void 0,"aria-checked":x?S:void 0,onPointerDown:e=>k(a,e),onPointerEnter:e=>A(a,e),onPointerLeave:()=>ee(a),className:i(`ssg-header-cell`,`ssg-row-header-cell`,x&&`ssg-row-header-cell--checkbox`,(y||b)&&`ssg-header-cell--selected`,v&&`ssg-header-cell--hovered`,re,N?.rowHeaderCell?.className),style:{...N?.rowHeaderCell?.style,...ie,..._,height:f},children:x?(0,r.jsx)(ws,{slot:N?.checkbox,state:S?`checked`:`unchecked`}):a+1}),d.map(e=>{if(!e)return null;let t=e.logicalIndex,u=e.column,d=n+e.paneLocalStart,_=e.paneLocalSize,y=t===C,x=t===w,S=b||T>=0&&t>=T&&t<=E,k=!Xe({readOnly:D,canEditCell:O},a,t,l,u),A=p&&u.autoHeight===!0,ee,ae=u.cellClassName;ae&&(ee=typeof ae==`function`?ae({row:l,rowIndex:a,sourceRowIndex:c,rowKey:s,colIndex:t,value:F(l,u),column:u,isActive:y,isSelected:S,isEditing:x,readOnly:k}):ae);let P=o(ee),oe=h&&u.validate?mr(u,l,F(l,u)):null,se=i(`ssg-body-cell`,u.align===`center`&&`ssg-body-cell--align-center`,u.align===`right`&&`ssg-body-cell--align-right`,A&&`ssg-body-cell--autoheight`,k&&!S&&`ssg-body-cell--readonly`,oe!==null&&`ssg-body-cell--invalid`,v&&`ssg-body-cell--row-hovered`,re,P.className,N?.bodyCell?.className),ce={};u.wordBreak!==void 0&&(ce.wordBreak=u.wordBreak),u.lineBreak!==void 0&&(ce.lineBreak=u.lineBreak);let le=Ys({enabled:m,isAutoHeightCell:A,hasRenderCell:u.renderCell!==void 0});return(0,r.jsx)(`div`,{"data-ssg-col-key":u.key,"data-autoheight-cell":A?``:void 0,"data-ssg-tooltip":oe??void 0,"data-ssg-tooltip-overflow":le?``:void 0,className:se,onPointerDown:e=>j({row:a,col:t},e),onPointerEnter:e=>te({row:a,col:t},e),onDoubleClick:()=>ne({row:a,col:t}),style:{...N?.bodyCell?.style,...ie,...P.style,left:d,width:_,minWidth:_,...A?{minHeight:g}:{height:f},...ce,zIndex:y?3:1},children:M(l,a,u,t,{isActive:y,isSelected:S,isEditing:x,readOnly:k})},`${String(s)}-${u.key}`)})]})}var Zs=new Set([`rowStyle`]),Qs=(0,e.memo)(Xs,(e,t)=>l(e,t,Zs)),$s=[`62%`,`46%`,`78%`,`54%`];function ec({pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:a,top:o,rowHeight:s,renderEntries:c,rowHeaderCellStyle:l,isRowHovered:u,showRowCheckbox:d,onRowHeaderPointerDown:f,onRowHeaderPointerEnter:p,onRowHeaderPointerLeave:m,onCellPointerDown:h,onCellPointerEnter:g,slots:_}){return(0,r.jsxs)(`div`,{"data-pane":e,"data-row-index":a,"data-skeleton-row":``,className:i(`ssg-body-row`,_?.bodyRow?.className),style:{..._?.bodyRow?.style,height:s,transform:`translateY(${o}px)`},children:[t&&(0,r.jsx)(`div`,{onPointerDown:e=>f(a,e),onPointerEnter:e=>p(a,e),onPointerLeave:()=>m(a),className:i(`ssg-header-cell`,`ssg-row-header-cell`,`ssg-skeleton-rowheader`,d&&`ssg-row-header-cell--checkbox`,u&&`ssg-header-cell--hovered`,_?.rowHeaderCell?.className),style:{..._?.rowHeaderCell?.style,...l,height:s},children:d?(0,r.jsx)(ws,{slot:_?.checkbox,state:`unchecked`,disabled:!0}):a+1}),c.map(t=>{if(!t)return null;let o=t.logicalIndex,c=n+t.paneLocalStart,l=t.paneLocalSize,d=$s[o%$s.length];return(0,r.jsx)(`div`,{className:i(`ssg-body-cell`,u&&`ssg-body-cell--row-hovered`,_?.bodyCell?.className),onPointerDown:e=>h({row:a,col:o},e),onPointerEnter:e=>g({row:a,col:o},e),style:{..._?.bodyCell?.style,left:c,width:l,minWidth:l,height:s,zIndex:1},children:(0,r.jsx)(`div`,{"aria-hidden":`true`,className:`ssg-skeleton-bar`,style:{width:d}})},`skeleton-${e}-${o}`)})]})}var tc=(0,e.memo)(ec),nc=(e,t)=>t==null?``:e.valueFormatter?e.valueFormatter({value:t,row:void 0,column:e}):String(t),rc=16;function ic({pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:a,top:o,rowHeight:s,renderEntries:c,rowHeaderCellStyle:l,isRowHovered:u,showRowCheckbox:d,groupRow:f,isCollapsed:p,onGroupToggle:m,onRowHeaderPointerEnter:h,onRowHeaderPointerLeave:g,slots:_}){return(0,r.jsxs)(`div`,{"data-pane":e,"data-row-index":a,"data-ssg-group-row":``,className:i(`ssg-body-row`,_?.bodyRow?.className,_?.groupRow?.className),style:{..._?.bodyRow?.style,..._?.groupRow?.style,height:s,transform:`translateY(${o}px)`},onDoubleClick:()=>m(f.groupKey),children:[t&&(0,r.jsx)(`div`,{onPointerEnter:e=>h(a,e),onPointerLeave:()=>g(a),className:i(`ssg-header-cell`,`ssg-row-header-cell`,d&&`ssg-row-header-cell--checkbox`,u&&`ssg-header-cell--hovered`,_?.rowHeaderCell?.className),style:{..._?.rowHeaderCell?.style,...l,height:s},children:d?null:a+1}),c.map(t=>{if(!t)return null;let a=t.column,o=n+t.paneLocalStart,c=t.paneLocalSize,l=a.key===Cn,d=!l&&Object.prototype.hasOwnProperty.call(f.aggregates,a.key)?nc(a,f.aggregates[a.key]):null;return(0,r.jsx)(`div`,{"data-ssg-col-key":a.key,className:i(`ssg-body-cell`,`ssg-group-cell`,a.align===`center`&&`ssg-body-cell--align-center`,a.align===`right`&&`ssg-body-cell--align-right`,u&&`ssg-body-cell--row-hovered`,_?.bodyCell?.className,_?.groupCell?.className),style:{..._?.bodyCell?.style,..._?.groupCell?.style,left:o,width:c,minWidth:c,height:s,zIndex:1},children:l?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`span`,{"aria-hidden":`true`,className:`ssg-group-indent`,style:{width:f.level*rc}}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-group-toggle`,"aria-expanded":!p,"aria-label":`${f.label} を${p?`展開`:`折りたたみ`}`,onClick:()=>m(f.groupKey),onDoubleClick:e=>e.stopPropagation(),children:p?`▸`:`▾`}),(0,r.jsx)(`span`,{className:`ssg-group-label`,children:f.label}),(0,r.jsxs)(`span`,{className:`ssg-group-count`,children:[`(`,f.leafCount,`件)`]})]}):d},`group-${e}-${a.key}`)})]})}var ac=(0,e.memo)(ic);function oc({pane:e,ownsRowHeader:t,leadingWidth:n,rowModel:i,virtualRows:a,virtualRowIndexes:s,renderEntries:c,rowHeight:l,autoHeight:u=!1,showCellOverflowTooltip:d=!1,showValidationMarks:f=!0,isServerSide:p=!1,collapsedGroupKeys:m,onGroupToggle:h,rowHeaderCellStyle:g,hoveredRowIndex:_,isWholeGridSelected:v,enableRowSelection:y,rowSelectionState:b,activeCell:x,editingCell:S,selectionSnapshot:C,readOnly:w,canEditCell:T,onRowHeaderPointerDown:E,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,onCellPointerDown:k,onCellPointerEnter:A,onCellDoubleClick:ee,renderCellContent:j,getRowClassName:te,slots:ne}){return(0,r.jsx)(r.Fragment,{children:a.map(a=>{let M=a.index;if(!s.has(M))return null;let re=a.size??l,ie=i.getGroupRow?.(M);if(ie&&h)return(0,r.jsx)(ac,{pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:M,top:a.start,rowHeight:re,renderEntries:c,rowHeaderCellStyle:g,isRowHovered:_===M,showRowCheckbox:y,groupRow:ie,isCollapsed:m?.has(ie.groupKey)===!0,onGroupToggle:h,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,slots:ne},String(wn(ie)));let N=i.getRow(M);if(!N){if(!p)return null;let o=i.getRowKey(M)??M;return(0,r.jsx)(tc,{pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:M,top:a.start,rowHeight:re,renderEntries:c,rowHeaderCellStyle:g,isRowHovered:_===M,showRowCheckbox:y,onRowHeaderPointerDown:E,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,onCellPointerDown:k,onCellPointerEnter:A,slots:ne},String(o))}let ae=i.getRowKey(M)??M,P=i.getSourceIndex(M)??M,se=y?oe(b,ae):!1,ce=C.kind===`row`&&M>=C.startRow&&M<=C.endRow,le=C.kind===`cell`&&M>=C.startRow&&M<=C.endRow,ue=C.kind===`col`||le?C.startCol:-1,de=C.kind===`col`||le?C.endCol:-1,fe=x&&x.row===M?x.col:-1,pe=S&&S.row===M?S.col:-1,me=o(te?.(N,M,{row:N,rowIndex:M,sourceRowIndex:P,rowKey:ae,isSelected:se}));return(0,r.jsx)(Qs,{pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:M,rowKey:ae,sourceRowIndex:P,row:N,top:a.start,renderEntries:c,rowHeight:re,autoHeight:u,showCellOverflowTooltip:d,showValidationMarks:f,autoHeightMinHeight:l,rowHeaderCellStyle:g,isRowHovered:_===M,isWholeGridSelected:v,isRowSelected:ce,showRowCheckbox:y,isRowChecked:se,activeColInRow:fe,editingColInRow:pe,selectedColStart:ue,selectedColEnd:de,readOnly:w,canEditCell:T,onRowHeaderPointerDown:E,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,onCellPointerDown:k,onCellPointerEnter:A,onCellDoubleClick:ee,renderCellContent:j,rowClassName:me.className,rowStyle:me.style,slots:ne},String(ae))})})}var sc=e=>{e.stopPropagation()};function cc({entries:e,mode:t,paneWidth:n,baseOffset:a,cardStickyLeft:o,cardWidth:c,cardSlot:l,slots:u,renderCard:d}){return e.length===0?null:(0,r.jsx)(r.Fragment,{children:e.map(e=>{let{virtualRow:f}=e,p=f.detailSize??0;if(p<=0)return null;let m={position:`absolute`,left:0,top:f.start+(f.size??0)-a,width:n,height:p};return(0,r.jsx)(`div`,{className:i(`ssg-detail-band`,u?.detailBand?.className),"data-detail-row-index":f.index,style:{...u?.detailBand?.style,...m},children:t===`center`&&(0,r.jsx)(`div`,{className:`ssg-detail-card-holder`,style:{left:o,width:c},children:(0,r.jsx)(`div`,{className:i(`ssg-detail-card`,u?.detailCard?.className,l?.className),style:s(u?.detailCard?.style,l?.style),"data-ssg-detail":``,onKeyDown:sc,onKeyUp:sc,onPaste:sc,onCopy:sc,onCut:sc,onContextMenu:sc,onDragStart:sc,onDoubleClick:sc,children:d(e)})})},e.rowKey)})})}var lc=(0,e.memo)(cc);function uc({isActive:e,title:t,className:n,style:a,onPointerDown:o,onClick:s,children:c}){return(0,r.jsx)(`button`,{type:`button`,"data-ssg-tooltip":t,"aria-label":t,onPointerDown:o,onClick:s,className:i(`ssg-icon-btn`,e&&`ssg-icon-btn--active`,n),style:a,children:c})}function dc({pane:e,ownsRowHeader:t,leadingWidth:n,headerHeight:a,rowHeaderCellStyle:o,slots:s,isCornerHovered:c,isWholeGridSelected:l,showSelectAllCheckbox:u,selectAllState:d,filteredRowsLength:f,visibleColumnsLength:p,renderEntries:m,hoveredColumnIndex:h,selectionSnapshot:g,columnFilterValues:_,sortState:v,onCornerPointerDown:y,onCornerPointerEnter:b,onCornerPointerLeave:x,onColumnHeaderPointerDown:S,onColumnHeaderPointerEnter:C,onColumnHeaderPointerLeave:w,onColumnResizePointerDown:T,enableColumnResize:E,enableColumnMenu:D,openedMenuColumnKey:O,onColumnMenuButtonPointerDown:k,onColumnMenuButtonClick:A,onColumnHeaderContextMenu:ee,onColumnDragHandlePointerDown:j}){return(0,r.jsxs)(`div`,{"data-pane":e,className:i(`ssg-header-row`,s?.headerRow?.className),style:{...s?.headerRow?.style,height:a},children:[t&&(0,r.jsx)(`div`,{role:u?`checkbox`:void 0,"aria-checked":u?d===`all`?!0:d===`some`?`mixed`:!1:void 0,onPointerDown:y,onPointerEnter:b,onPointerLeave:x,className:i(`ssg-header-cell`,`ssg-corner-cell`,u&&`ssg-corner-cell--checkbox`,l&&`ssg-header-cell--selected`,c&&`ssg-header-cell--hovered`,s?.rowHeaderCell?.className,s?.cornerCell?.className),style:{...s?.rowHeaderCell?.style,...s?.cornerCell?.style,...o,height:a,cursor:f>0&&p>0?`pointer`:`default`},children:u?(0,r.jsx)(ws,{slot:s?.checkbox,state:d===`all`?`checked`:d===`some`?`indeterminate`:`unchecked`}):`#`}),m.map(e=>{if(!e)return null;let t=e.logicalIndex,o=e.column,c=n+e.paneLocalStart,u=e.paneLocalSize,d=xt(_[o.key]),f=g.kind===`col`&&t>=g.startCol&&t<=g.endCol,p=v.findIndex(e=>e.columnKey===o.key),m=p===-1?null:v[p],y=O===o.key,b=Hn(o.key),x=o.key===`__ssg_detail_toggle__`||o.key===`__ssg_row_drag_handle__`,te=D&&!b;return(0,r.jsxs)(`div`,{"data-ssg-col-key":o.key,onPointerDown:e=>S(t,e),onPointerEnter:e=>C(t,e),onPointerLeave:()=>w(t),onContextMenu:e=>{if(b){e.preventDefault();return}ee(o,e)},className:i(`ssg-header-cell`,(l||f)&&`ssg-header-cell--selected`,h===t&&`ssg-header-cell--hovered`,s?.headerCell?.className),style:{...s?.headerCell?.style,left:c,width:u,minWidth:u,height:a},children:[(0,r.jsx)(`div`,{className:i(`ssg-header-label`,d&&`ssg-header-label--filtered`),"data-ssg-tooltip":o.renderHeader||x?void 0:o.title||o.key,children:o.renderHeader?o.renderHeader({colIndex:t,width:u,column:o,filterValue:_[o.key],isFiltered:d}):x?``:o.title||o.key}),(0,r.jsxs)(`div`,{className:`ssg-header-status`,children:[m&&(0,r.jsxs)(`span`,{"aria-hidden":`true`,"data-ssg-tooltip":(m.direction===`asc`?`昇順で並び替え中`:`降順で並び替え中`)+(v.length>1?` (優先度 ${p+1})`:``),className:`ssg-header-sort`,children:[m.direction===`asc`?`↑`:`↓`,v.length>1&&(0,r.jsx)(`span`,{className:`ssg-header-sort-priority`,children:p+1})]}),d&&(0,r.jsx)(`span`,{"aria-hidden":`true`,"data-ssg-tooltip":`フィルター適用中`,className:`ssg-header-filtered-mark`,children:(0,r.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 16 16`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:(0,r.jsx)(`path`,{d:`M2 4 L14 4 L9.2 9.2 L9.2 13 L6.8 13 L6.8 9.2 Z`})})})]}),(0,r.jsxs)(`div`,{className:`ssg-header-actions`,children:[j&&!b&&(0,r.jsx)(`span`,{onPointerDown:e=>j(o,e),"data-ssg-tooltip":`ドラッグで列を移動`,"aria-hidden":`true`,className:`ssg-header-grip`,children:(0,r.jsxs)(`svg`,{width:`8`,height:`14`,viewBox:`0 0 8 14`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:[(0,r.jsx)(`circle`,{cx:`2`,cy:`3`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`3`,r:`1`}),(0,r.jsx)(`circle`,{cx:`2`,cy:`7`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`7`,r:`1`}),(0,r.jsx)(`circle`,{cx:`2`,cy:`11`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`11`,r:`1`})]})}),te&&(0,r.jsx)(uc,{title:`列メニュー`,isActive:y,className:s?.iconButton?.className,style:s?.iconButton?.style,onPointerDown:e=>k(o,e),onClick:e=>A(o,e),children:`⋮`})]}),(o.resizable??E)&&(0,r.jsx)(`div`,{onPointerDown:e=>T(o,e),className:`ssg-header-resize`})]},o.key)})]})}var fc=(0,e.memo)(dc),pc=200,mc=8,hc=6,gc=289,_c=()=>{let e=null,t=Zn({columnKey:null,layout:null}),n={current:null},r=null,i=null,a=null,o=null,s=e=>{let n=t.getSnapshot(),r=n.layout;r===e||r!==null&&e!==null&&r.top===e.top&&r.left===e.left&&r.width===e.width&&r.maxHeight===e.maxHeight||t.setSnapshot({...n,layout:e})},c=()=>{o!==null&&(cancelAnimationFrame(o),o=null),d.detach(),t.setSnapshot({columnKey:null,layout:null})},l=()=>{if(t.getSnapshot().columnKey===null){s(null);return}let e,a,o,l=n.current,u=l?l.scrollHeight+(l.offsetHeight-l.clientHeight):gc;if(r){if(!r.isConnected){r=null,c();return}let t=r.getBoundingClientRect();a=t.right-pc,e=t.bottom+hc,o=t.top-u-hc}else if(i)a=i.x,e=i.y,o=i.y-u;else{s(null);return}a=Math.max(mc,a),a=Math.min(a,window.innerWidth-pc-mc);let d=window.innerHeight-mc;e+u>d&&o>=mc&&(e=o),e=Math.max(mc,e);let f=d-e;s({top:e,left:a,width:pc,maxHeight:u>f?Math.max(f,0):void 0})},u=()=>{c(),r=null,i=null,e!==null&&$n(e.gridRootRef)},d=er({onResize:l,onScroll:()=>{if(i){u();return}l()},isInside:e=>n.current?.contains(e)===!0||r?.contains(e)===!0,onOutsidePointerDown:u,onKeyDown:e=>{e.key===`Escape`&&(e.preventDefault(),u())}}),f=e=>{t.setSnapshot({...t.getSnapshot(),columnKey:e}),l(),o!==null&&cancelAnimationFrame(o),o=requestAnimationFrame(()=>{o=null,l()}),d.attach()},p=(t,n)=>{Qn(e?.gridRootRef.current??null),r=n,i=null,f(t.key)};return{update:t=>{e=t},subscribe:t.subscribe,getSnapshot:t.getSnapshot,panelRef:n,openFromButton:(n,i)=>{if(i.preventDefault(),i.stopPropagation(),!e?.enableColumnMenu||i.button!==0)return;let o=i.currentTarget;if(t.getSnapshot().columnKey===n.key&&r===o){u();return}if(i.pointerType===`touch`){a=o;return}p(n,o)},openFromButtonClick:(t,n)=>{let r=a;a=null,!(!e?.enableColumnMenu||r!==n.currentTarget)&&(n.preventDefault(),n.stopPropagation(),p(t,n.currentTarget))},openFromContextMenu:(t,n)=>{e?.enableColumnMenu&&(n.preventDefault(),n.stopPropagation(),Qn(e.gridRootRef.current),r=null,i={x:n.clientX,y:n.clientY},f(t.key))},close:u,dispose:()=>{o!==null&&(cancelAnimationFrame(o),o=null),d.detach()}}},vc=t=>{let n=ur(()=>_c(),t),r=(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot),i=r.columnKey,{visibleColumns:a}=t,o=(0,e.useMemo)(()=>i?a.find(e=>e.key===i)??null:null,[i,a]);return{columnMenuLayout:r.layout,columnMenuRef:n.panelRef,isColumnMenuOpen:i!==null,openedMenuColumnKey:i,openedMenuColumn:o,openColumnMenuFromButton:n.openFromButton,openColumnMenuFromButtonClick:n.openFromButtonClick,openColumnMenuFromContextMenu:n.openFromContextMenu,closeColumnMenu:n.close}},yc=[{value:void 0,label:`固定しない`},{value:`left`,label:`左に固定`},{value:`right`,label:`右に固定`}],bc=180,xc=4,Sc=8,Cc=`pin`;function wc({isOpen:n,themeClassName:a,slots:o,title:s,columnKey:c,canFilter:l,onOpenFilter:u,canSort:d,sortDirection:f,onSortChange:p,onOpenSortManager:m,canManageFilters:h,onOpenFilterManager:g,pinned:_,canChangePinned:v,layout:y,popoverRef:b,onPinnedChange:x,onAutosizeColumn:S,onAutosizeAllColumns:C,onOpenColumnChooser:w,canResetColumns:T,onResetColumns:E,onRequestClose:D}){let[O,k]=(0,e.useState)(null);if((0,e.useEffect)(()=>{k(null)},[c,n]),!n||!y)return null;let A=O===Cc,ee=y.left+y.width+xc+bc>window.innerWidth-Sc,j={position:`fixed`,top:y.top,left:y.left,width:y.width,zIndex:1e3,...y.maxHeight===void 0?{}:{maxHeight:y.maxHeight,overflowY:`auto`}},te={position:`absolute`,top:-9,...ee?{right:`calc(100% + ${xc}px)`}:{left:`calc(100% + ${xc}px)`},width:bc,zIndex:1};return(0,t.createPortal)((0,r.jsxs)(`div`,{ref:b,onPointerDown:e=>{e.stopPropagation()},onKeyDown:e=>{e.stopPropagation()},onContextMenu:e=>{e.preventDefault()},className:i(`ssg-menu-panel`,a,o?.popover?.className),style:{...o?.popover?.style,...j},children:[(0,r.jsx)(`div`,{className:`ssg-menu-title`,children:s}),l&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{u()},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`フィルター…`})]}),(0,r.jsx)(`div`,{className:`ssg-menu-separator`})]}),d&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{p(`asc`)},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:i(`ssg-menu-sort-icon`,f===`asc`&&`ssg-menu-sort-icon--active`),children:f===`asc`?`✓`:`↑`}),(0,r.jsx)(`span`,{className:i(`ssg-menu-label`,f===`asc`&&`ssg-menu-label--sorted`),children:`昇順で並び替え`})]}),(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{p(`desc`)},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:i(`ssg-menu-sort-icon`,f===`desc`&&`ssg-menu-sort-icon--active`),children:f===`desc`?`✓`:`↓`}),(0,r.jsx)(`span`,{className:i(`ssg-menu-label`,f===`desc`&&`ssg-menu-label--sorted`),children:`降順で並び替え`})]}),(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{m()},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`並び替えを管理…`})]})]}),h&&(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{g()},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`フィルターを管理…`})]}),(d||h)&&(0,r.jsx)(`div`,{className:`ssg-menu-separator`}),(0,r.jsxs)(`div`,{className:`ssg-menu-submenu-anchor`,children:[(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(Cc)},onClick:()=>{k(e=>e===Cc?null:Cc)},className:i(`ssg-menu-item`,A&&`ssg-menu-item--active`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`列の固定`}),(0,r.jsx)(`span`,{className:`ssg-menu-caret`,children:`›`})]}),A&&(0,r.jsxs)(`div`,{className:i(`ssg-menu-panel`,a,o?.popover?.className),style:{...o?.popover?.style,...te},children:[yc.map(e=>{let t=_===e.value;return(0,r.jsxs)(`button`,{type:`button`,disabled:!v,onClick:()=>{v&&x(c,e.value)},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:i(`ssg-menu-check`,!t&&`ssg-menu-check--hidden`),children:`✓`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:e.label})]},e.label)}),!v&&(0,r.jsx)(`div`,{className:`ssg-menu-note`,children:`onColumnsChange 未指定のため固定状態を変更できません`})]})]}),(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{S(c)},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`この列の幅を自動調整`})]}),(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{C()},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`すべての列の幅を自動調整`})]}),(0,r.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{w()},className:i(`ssg-menu-item`,o?.menuItem?.className),style:o?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`列の表示`})]}),(0,r.jsxs)(`button`,{type:`button`,"aria-disabled":!T,tabIndex:T?0:-1,"data-ssg-tooltip":T?`すべての列の幅・固定・表示・並び順を初期状態に戻します`:`onColumnsChange 未指定のため列をリセットできません`,onPointerEnter:()=>{k(null)},onClick:()=>{T&&E()},className:i(`ssg-menu-item`,!T&&`ssg-menu-item--disabled`),children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:`列のリセット`})]}),(0,r.jsx)(`div`,{className:`ssg-menu-footer`,children:(0,r.jsx)(`button`,{type:`button`,onClick:D,className:`ssg-menu-close-btn`,children:`閉じる`})})]}),document.body)}var Tc=({top:e,left:t,panelWidth:n,viewportWidth:r,viewportHeight:i})=>{let a=Math.max(8,Math.min(t,r-n-8));return{top:Math.max(8,Math.min(e,i-40)),left:a}},Ec=360,Dc=8,Oc=12,kc=[`filter`,`columns`,`sort`],Ac=e=>{let t={filter:e.canUseFilterTab,columns:e.canUseColumnsTab,sort:e.canUseSortTab};return kc.filter(e=>t[e])},jc=(e,t)=>e===null?null:t.includes(e)?e:t[0]??null,Mc=()=>{let e=null,t=Zn({requestedTab:null,layout:null,flashTick:0}),n={current:null},r=null,i=e=>{t.setSnapshot({...t.getSnapshot(),...e})},a=e=>{let n=t.getSnapshot().layout;n===e||n!==null&&e!==null&&n.top===e.top&&n.left===e.left&&n.width===e.width||i({layout:e})},o=e=>Tc({top:e.top,left:e.left,panelWidth:Ec,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight}),s=()=>{if(r){let e=o(r);a({top:e.top,left:e.left,width:Ec});return}let t=e?.gridRootRef.current??null;if(!t){a(null);return}let n=t.getBoundingClientRect(),i=n.right-Ec-Oc,s=n.top+Oc;i=Math.max(Dc,i),i=Math.min(i,window.innerWidth-Ec-Dc),s=Math.max(Dc,s),a({top:s,left:i,width:Ec})},c=()=>e!==null&&jc(t.getSnapshot().requestedTab,Ac(e))!==null,l=()=>{i({requestedTab:null,layout:null}),d(),e!==null&&$n(e.gridRootRef)},u=er({onResize:s,onScroll:s,isInside:t=>n.current?.contains(t)===!0||e?.alliedRef?.current?.contains(t)===!0,onOutsidePointerDown:l,onKeyDown:t=>{if(t.key===`Escape`){if(e?.suppressEscape){e.onSuppressedEscape?.();return}t.preventDefault(),l()}}}),d=()=>{let e=c();e&&!u.isAttached()?(s(),u.attach()):!e&&u.isAttached()&&u.detach()};return{update:t=>{e=t,d()},subscribe:t.subscribe,getSnapshot:t.getSnapshot,panelRef:n,open:n=>{if(e===null||!Ac(e).includes(n))return;let r=t.getSnapshot();Qn(e.gridRootRef.current),i({requestedTab:n,flashTick:r.requestedTab===null?r.flashTick:r.flashTick+1}),d()},close:l,move:(e,t)=>{let n=o({top:e,left:t});r=n,i({layout:{top:n.top,left:n.left,width:Ec}})},dispose:()=>{u.detach()}}},Nc=t=>{let n=ur(Mc,t),r=(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot),{canUseFilterTab:i,canUseColumnsTab:a,canUseSortTab:o}=t,s=(0,e.useMemo)(()=>Ac({canUseFilterTab:i,canUseColumnsTab:a,canUseSortTab:o}),[i,a,o]);return{activeToolPanelTab:jc(r.requestedTab,s),availableToolPanelTabs:s,toolPanelLayout:r.layout,toolPanelFlashTick:r.flashTick,toolPanelRef:n.panelRef,openToolPanel:n.open,closeToolPanel:n.close,moveToolPanel:n.move}},Pc=`button, input, select, textarea`,Fc=()=>{let e=null;return{startFromPointerDown:(t,{layout:n,onMove:r})=>{if(t.button!==0||n===null||e!==null)return!1;let i=t.target;if(i instanceof Element&&i.closest(Pc))return!1;t.preventDefault();let a={pointerId:t.pointerId,startX:t.clientX,startY:t.clientY,startTop:n.top,startLeft:n.left},o=e=>{e.pointerId===a.pointerId&&r(a.startTop+(e.clientY-a.startY),a.startLeft+(e.clientX-a.startX))},s=t=>{t.pointerId===a.pointerId&&e?.()};return window.addEventListener(`pointermove`,o),window.addEventListener(`pointerup`,s),window.addEventListener(`pointercancel`,s),e=()=>{window.removeEventListener(`pointermove`,o),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,s),e=null},!0},isActive:()=>e!==null,dispose:()=>{e?.()}}},Ic=({layout:t,onPanelMove:n})=>{let[r]=(0,e.useState)(Fc);return(0,e.useEffect)(()=>()=>{r.dispose()},[r]),{handleHeaderPointerDown:(0,e.useCallback)(e=>{r.startFromPointerDown(e,{layout:t,onMove:n})},[r,t,n])}};function Lc({themeClassName:n,popoverSlot:a,activeTab:o,flashTick:s,tabs:c,layout:l,panelRef:u,onSelectTab:d,onRequestClose:f,onPanelMove:p,children:m}){let{handleHeaderPointerDown:h}=Ic({layout:l,onPanelMove:p});if((0,e.useEffect)(()=>{let e=u.current;if(!e||s===0)return;e.classList.remove(`ssg-toolpanel--flash`),e.offsetWidth,e.classList.add(`ssg-toolpanel--flash`);let t=()=>{e.classList.remove(`ssg-toolpanel--flash`)};return e.addEventListener(`animationend`,t),()=>{e.removeEventListener(`animationend`,t)}},[s,u]),o===null||!l)return null;let g=Math.max(0,c.findIndex(e=>e.tab===o)),_={top:l.top,left:l.left,width:l.width},v=e=>{e.stopPropagation()},y=e=>{e.stopPropagation()},b={"--ssg-seg-count":c.length,"--ssg-seg-index":g};return(0,t.createPortal)((0,r.jsxs)(`div`,{ref:u,onPointerDown:v,onKeyDown:y,onContextMenu:e=>{e.preventDefault()},className:i(`ssg-popover`,`ssg-toolpanel`,n,a?.className),style:{...a?.style,..._},children:[(0,r.jsxs)(`div`,{className:`ssg-toolpanel-header ssg-popover-header--draggable`,onPointerDown:h,children:[(0,r.jsxs)(`div`,{className:`ssg-toolpanel-seg`,role:`tablist`,style:b,children:[(0,r.jsx)(`span`,{className:`ssg-toolpanel-seg-indicator`,"aria-hidden":!0}),c.map(e=>{let t=e.tab===o;return(0,r.jsxs)(`button`,{type:`button`,role:`tab`,"aria-selected":t,onClick:()=>{t||d(e.tab)},className:i(`ssg-toolpanel-seg-btn`,t&&`ssg-toolpanel-seg-btn--active`),children:[e.label,e.badge?(0,r.jsx)(`span`,{className:`ssg-toolpanel-seg-badge`,children:e.badge}):null]},e.tab)})]}),(0,r.jsx)(`button`,{type:`button`,onClick:f,"aria-label":`閉じる`,className:`ssg-popover-close`,children:`×`})]}),(0,r.jsx)(`div`,{className:`ssg-toolpanel-body`,children:m})]}),document.body)}var Rc=28,zc=12,Bc=[`left`,`center`,`right`],Vc={left:`左固定`,center:`固定なし`,right:`右固定`};function Hc(e,t,n){let r=e.find(e=>e.key===t);if(!r)return null;let i=r.pane,a={left:[],center:[],right:[]};for(let t of e)a[t.pane].push(t.key);let o=a[i],s=o.indexOf(t);if(s<0)return null;let c=n;if(c>s&&--c,c=Math.max(0,Math.min(c,o.length-1)),c===s)return null;let[l]=o.splice(s,1);return o.splice(c,0,l),[...a.left,...a.center,...a.right]}function Uc({state:e,disabled:t}){return(0,r.jsxs)(`span`,{className:i(`ssg-checkbox`,(e===`checked`||e===`indeterminate`)&&`ssg-checkbox--filled`,t&&`ssg-checkbox--disabled`),"aria-hidden":!0,children:[e===`checked`&&(0,r.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 12 12`,fill:`none`,children:(0,r.jsx)(`path`,{d:`M2.5 6.2 4.7 8.4 9.5 3.6`,style:{stroke:`var(--ssg-panel-accent-contrast)`},strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`})}),e===`indeterminate`&&(0,r.jsx)(`span`,{className:`ssg-checkbox-dash`})]})}function Wc({disabled:e}){return(0,r.jsx)(`svg`,{width:`10`,height:`16`,viewBox:`0 0 10 16`,style:{fill:e?`var(--ssg-panel-text-disabled)`:`var(--ssg-panel-text-faint)`},"aria-hidden":!0,children:[3,8,13].map(e=>[3,7].map(t=>(0,r.jsx)(`circle`,{cx:t,cy:e,r:`1.2`},`${t}-${e}`)))})}function Gc({items:t,canToggle:n,onToggleColumnVisibility:a,onShowAllColumns:o,onHideAllColumns:s,onResetColumns:c,onReorderColumns:l}){let[u,d]=(0,e.useState)(``),f=(0,e.useRef)(null);(0,e.useEffect)(()=>{let e=requestAnimationFrame(()=>{f.current?.focus()});return()=>cancelAnimationFrame(e)},[]);let p=(0,e.useMemo)(()=>t.filter(e=>e.visible).length,[t]),m=p===t.length&&t.length>0,h=m?`checked`:`indeterminate`,g=m?`すべての列を非表示(先頭の列は残ります)`:`すべての列を表示`,_=(0,e.useMemo)(()=>{let e=u.trim().toLowerCase();return e?t.filter(t=>t.title.toLowerCase().includes(e)):t},[t,u]),v=(0,e.useMemo)(()=>{let e={left:[],center:[],right:[]};for(let t of _)e[t.pane].push(t);return Bc.map(t=>({pane:t,items:e[t]})).filter(e=>e.items.length>0)},[_]),y=v.length>=2,b=n&&u.trim()===``,x=(0,e.useRef)(null),[S,C]=(0,e.useState)(null),w=(0,e.useRef)(!1),T=(0,e.useRef)(null),[E,D]=(0,e.useState)(null),O=(0,e.useRef)(0),k=(0,e.useRef)(null),A=(0,e.useCallback)(()=>{let e=x.current,t=T.current;if(!e||!t)return;let n=e.querySelectorAll(`[data-chooser-row][data-chooser-pane="${t}"]`),r=O.current,i=n.length;for(let e=0;e<n.length;e+=1){let t=n[e].getBoundingClientRect();if(r<t.top+t.height/2){i=e;break}}D(i)},[]),ee=(0,e.useCallback)(function e(){let t=x.current;if(!t||!w.current){k.current=null;return}let n=t.getBoundingClientRect(),r=O.current,i=0;if(r<n.top+Rc?i=-12:r>n.bottom-Rc&&(i=zc),i!==0){let e=t.scrollTop;t.scrollTop+=i,t.scrollTop!==e&&A()}k.current=requestAnimationFrame(e)},[A]),j=(0,e.useCallback)(e=>{k.current!==null&&(cancelAnimationFrame(k.current),k.current=null);let n=S,r=E;if(w.current=!1,T.current=null,C(null),D(null),e&&n!==null&&r!==null){let e=Hc(t,n,r);e&&l(e)}},[S,E,t,l]),te=(0,e.useCallback)((e,t,n)=>{b&&(n.preventDefault(),n.stopPropagation(),n.currentTarget.setPointerCapture(n.pointerId),w.current=!0,T.current=t,O.current=n.clientY,C(e),A(),k.current===null&&(k.current=requestAnimationFrame(ee)))},[b,A,ee]),ne=(0,e.useCallback)(e=>{w.current&&(O.current=e.clientY,A())},[A]),M=(0,e.useCallback)(()=>{w.current&&j(!0)},[j]),re=(0,e.useCallback)(()=>{w.current&&j(!1)},[j]);(0,e.useEffect)(()=>()=>{k.current!==null&&(cancelAnimationFrame(k.current),k.current=null)},[]);let ie=()=>{n&&(m?s():o())},N=S===null?null:t.find(e=>e.key===S)?.pane??null,ae=(e,t,o)=>{let s=e.visible&&p===1,c=!n||s,l=S===e.key;return(0,r.jsxs)(`div`,{"data-chooser-row":``,"data-chooser-pane":o,className:i(`ssg-chooser-row`,S!==null&&N===o&&E===t&&`ssg-chooser-row--drop-before`,l&&`ssg-chooser-row--dragging`),children:[(0,r.jsx)(`span`,{role:`button`,"aria-label":`ドラッグして並べ替え`,"data-ssg-tooltip":n?u.trim()===``?`ドラッグして並べ替え(同じセクション内のみ)`:`検索中は並べ替えできません`:`onColumnsChange 未指定のため並べ替えできません`,onPointerDown:t=>te(e.key,o,t),onPointerMove:ne,onPointerUp:M,onPointerCancel:re,className:i(`ssg-chooser-handle`,!b&&`ssg-chooser-handle--disabled`,l&&`ssg-chooser-handle--dragging`),children:(0,r.jsx)(Wc,{disabled:!b})}),(0,r.jsxs)(`button`,{type:`button`,disabled:c,onClick:()=>{c||a(e.key,!e.visible)},className:`ssg-chooser-toggle`,children:[(0,r.jsx)(Uc,{state:e.visible?`checked`:`unchecked`,disabled:c}),(0,r.jsx)(`span`,{className:i(`ssg-chooser-label`,c&&!e.visible&&`ssg-chooser-label--muted`),children:e.title})]})]},e.key)};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`div`,{className:`ssg-chooser-search-row`,children:[(0,r.jsx)(`button`,{type:`button`,disabled:!n,onClick:ie,"aria-label":g,"data-ssg-tooltip":g,className:`ssg-chooser-master-btn`,children:(0,r.jsx)(Uc,{state:h,disabled:!n})}),(0,r.jsxs)(`div`,{className:`ssg-chooser-search-field`,children:[(0,r.jsx)(`span`,{"aria-hidden":!0,className:`ssg-chooser-search-icon`,children:`⌕`}),(0,r.jsx)(`input`,{ref:f,type:`text`,value:u,onChange:e=>d(e.target.value),placeholder:`検索...`,className:`ssg-chooser-search-input`})]})]}),(0,r.jsx)(`div`,{ref:x,className:`ssg-chooser-list`,children:_.length===0?(0,r.jsx)(`div`,{className:`ssg-chooser-empty`,children:`該当する列がありません`}):v.map(e=>(0,r.jsxs)(`div`,{"data-chooser-section":e.pane,children:[y&&(0,r.jsx)(`div`,{className:`ssg-chooser-section-heading`,children:Vc[e.pane]}),e.items.map((t,n)=>ae(t,n,e.pane)),S!==null&&N===e.pane&&E===e.items.length&&(0,r.jsx)(`div`,{className:`ssg-chooser-drop-end`})]},e.pane))}),(0,r.jsxs)(`div`,{className:`ssg-chooser-footer`,children:[(0,r.jsx)(`button`,{type:`button`,disabled:!n,onClick:()=>{n&&c()},"data-ssg-tooltip":`すべての列の幅・固定・表示・並び順を初期状態に戻します`,className:`ssg-chooser-reset-btn`,children:`すべての列を初期状態に戻す`}),!n&&(0,r.jsx)(`div`,{className:`ssg-chooser-note`,children:`onColumnsChange 未指定のため表示/非表示・リセットを変更できません`})]})]})}function Kc({disabled:e}){return(0,r.jsx)(`svg`,{width:`10`,height:`16`,viewBox:`0 0 10 16`,style:{fill:e?`var(--ssg-panel-text-disabled)`:`var(--ssg-panel-text-faint)`},"aria-hidden":!0,children:[3,8,13].map(e=>[3,7].map(t=>(0,r.jsx)(`circle`,{cx:t,cy:e,r:`1.2`},`${t}-${e}`)))})}function qc({entries:t,columns:n,canSort:a,onAddLevel:o,onChangeDirection:s,onChangeColumn:c,onRemoveLevel:l,onClearAll:u,onMove:d}){let f=(0,e.useMemo)(()=>new Set(t.map(e=>e.columnKey)),[t]),p=(0,e.useMemo)(()=>n.find(e=>!f.has(e.key))??null,[n,f]),m=e=>n.find(t=>t.key===e)?.title??e,h=a&&t.length>=2,g=(0,e.useRef)(null),[_,v]=(0,e.useState)(null),y=(0,e.useRef)(!1),[b,x]=(0,e.useState)(null),S=(0,e.useRef)(0),C=(0,e.useCallback)(()=>{let e=g.current;if(!e)return;let t=e.querySelectorAll(`[data-sort-level]`),n=S.current,r=t.length;for(let e=0;e<t.length;e+=1){let i=t[e].getBoundingClientRect();if(n<i.top+i.height/2){r=e;break}}x(r)},[]),w=(0,e.useCallback)(e=>{let t=_,n=b;if(y.current=!1,v(null),x(null),e&&t!==null&&n!==null){let e=n;e>t&&--e,d(t,e)}},[_,b,d]),T=(0,e.useCallback)((e,t)=>{h&&(t.preventDefault(),t.stopPropagation(),t.currentTarget.setPointerCapture(t.pointerId),y.current=!0,S.current=t.clientY,v(e),C())},[h,C]),E=(0,e.useCallback)(e=>{y.current&&(S.current=e.clientY,C())},[C]),D=(0,e.useCallback)(()=>{y.current&&w(!0)},[w]),O=(0,e.useCallback)(()=>{y.current&&w(!1)},[w]),k=a&&p!==null;return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(`div`,{ref:g,className:`ssg-sort-list`,children:[t.length===0?(0,r.jsx)(`div`,{className:`ssg-sort-empty`,children:`並び替えは設定されていません`}):t.map((e,o)=>{let u=n.filter(t=>t.key===e.columnKey||!f.has(t.key)),d=u.some(t=>t.key===e.columnKey)?u:[{key:e.columnKey,title:m(e.columnKey)},...u],p=_===o;return(0,r.jsxs)(`div`,{"data-sort-level":``,className:i(`ssg-sort-level`,_!==null&&b===o&&`ssg-sort-level--drop-before`,p&&`ssg-sort-level--dragging`),children:[(0,r.jsx)(`span`,{role:`button`,"aria-label":`ドラッグして優先順位を変更`,"data-ssg-tooltip":a?t.length<2?`レベルが 2 件以上のとき並べ替えできます`:`ドラッグして優先順位を変更`:`並び替えが無効です`,onPointerDown:e=>T(o,e),onPointerMove:E,onPointerUp:D,onPointerCancel:O,className:i(`ssg-sort-handle`,!h&&`ssg-sort-handle--disabled`,p&&`ssg-sort-handle--dragging`),children:(0,r.jsx)(Kc,{disabled:!h})}),(0,r.jsx)(`span`,{"aria-hidden":!0,className:`ssg-sort-badge`,children:o+1}),(0,r.jsx)(`select`,{value:e.columnKey,disabled:!a,onChange:e=>c(o,e.target.value),className:`ssg-sort-select`,children:d.map(e=>(0,r.jsx)(`option`,{value:e.key,children:e.title},e.key))}),(0,r.jsxs)(`div`,{className:`ssg-sort-dir-group`,children:[(0,r.jsx)(`button`,{type:`button`,disabled:!a,onClick:()=>s(o,`asc`),"data-ssg-tooltip":`昇順`,className:i(`ssg-sort-dir-btn`,e.direction===`asc`&&`ssg-sort-dir-btn--active`),children:`↑ 昇順`}),(0,r.jsx)(`button`,{type:`button`,disabled:!a,onClick:()=>s(o,`desc`),"data-ssg-tooltip":`降順`,className:i(`ssg-sort-dir-btn`,e.direction===`desc`&&`ssg-sort-dir-btn--active`),children:`↓ 降順`})]}),(0,r.jsx)(`button`,{type:`button`,disabled:!a,onClick:()=>l(o),"aria-label":`このレベルを削除`,"data-ssg-tooltip":`このレベルを削除`,className:`ssg-sort-delete`,children:`×`})]},e.columnKey)}),_!==null&&b===t.length&&(0,r.jsx)(`div`,{className:`ssg-sort-drop-end`})]}),(0,r.jsxs)(`div`,{className:`ssg-popover-footer`,children:[(0,r.jsx)(`button`,{type:`button`,disabled:!k,onClick:()=>{!k||!p||o(p.key,`asc`)},"data-ssg-tooltip":a?p===null?`すべての列が並び替えに使われています`:`並び替えの基準を追加します`:`並び替えが無効です`,className:`ssg-sort-footer-btn ssg-sort-footer-btn--add`,children:`+ 基準を追加`}),(0,r.jsx)(`button`,{type:`button`,disabled:!a||t.length===0,onClick:()=>{!a||t.length===0||u()},"data-ssg-tooltip":`すべての並び替えを解除します`,className:`ssg-sort-footer-btn ssg-sort-footer-btn--clear`,children:`すべてクリア`})]}),!a&&(0,r.jsx)(`div`,{className:`ssg-sort-note`,children:`並び替えが無効のため編集できません`})]})}function Jc(){return(0,r.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 16 16`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:(0,r.jsx)(`path`,{d:`M2 4 L14 4 L9.2 9.2 L9.2 13 L6.8 13 L6.8 9.2 Z`})})}function Yc(){return(0,r.jsxs)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.4`,"aria-hidden":`true`,focusable:`false`,children:[(0,r.jsx)(`circle`,{cx:`11`,cy:`11`,r:`7`}),(0,r.jsx)(`path`,{d:`m20 20-3.5-3.5`})]})}function Xc({entries:e,addableColumns:t,showGlobalFilterRow:n,globalFilterText:i,canFilter:a,onEditFilter:o,onAddFilter:s,onClearFilter:c,onClearAllFilters:l,onClearGlobalFilter:u}){let d=a&&e.length>0,f=a&&t.length>0;return(0,r.jsxs)(r.Fragment,{children:[n&&(0,r.jsxs)(`div`,{className:`ssg-filter-manage-row ssg-filter-manage-row--global`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-manage-glyph ssg-filter-manage-glyph--global`,"aria-hidden":`true`,children:(0,r.jsx)(Yc,{})}),(0,r.jsxs)(`span`,{className:`ssg-filter-manage-main`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-manage-name`,children:`グローバルフィルター`}),(0,r.jsxs)(`span`,{className:`ssg-filter-manage-summary`,"data-ssg-tooltip":i,children:[`"`,i,`" を含む行`]})]}),(0,r.jsx)(`span`,{className:`ssg-filter-manage-actions`,children:(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-icon-btn ssg-filter-manage-icon-btn--danger`,disabled:!a,"data-ssg-tooltip":`グローバルフィルターをクリア`,"aria-label":`グローバルフィルターをクリア`,onClick:u,children:`×`})})]}),(0,r.jsx)(`div`,{className:`ssg-filter-manage-list`,children:e.length===0?(0,r.jsx)(`div`,{className:`ssg-filter-manage-empty`,children:`適用中の列フィルターはありません`}):e.map(e=>(0,r.jsxs)(`div`,{className:`ssg-filter-manage-row`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-manage-glyph`,"aria-hidden":`true`,children:(0,r.jsx)(Jc,{})}),(0,r.jsxs)(`span`,{className:`ssg-filter-manage-main`,children:[(0,r.jsxs)(`span`,{className:`ssg-filter-manage-name`,children:[e.title,e.isHidden&&(0,r.jsx)(`span`,{className:`ssg-filter-manage-hidden-note`,children:`(非表示列)`})]}),(0,r.jsx)(`span`,{className:`ssg-filter-manage-summary`,"data-ssg-tooltip":e.summaryText,children:e.summaryText})]}),(0,r.jsxs)(`span`,{className:`ssg-filter-manage-actions`,children:[(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-icon-btn`,disabled:!a||e.isHidden,"data-ssg-tooltip":e.isHidden?`非表示列のためジャンプ編集できません(× でクリアは可能)`:`この列へジャンプして編集`,"aria-label":`${e.title} のフィルターを編集`,onClick:()=>{o(e.columnKey)},children:`✎`}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-icon-btn ssg-filter-manage-icon-btn--danger`,disabled:!a,"data-ssg-tooltip":`この列のフィルターをクリア`,"aria-label":`${e.title} のフィルターをクリア`,onClick:()=>{c(e.columnKey)},children:`×`})]})]},e.columnKey))}),(0,r.jsxs)(`div`,{className:`ssg-popover-footer`,children:[(0,r.jsxs)(`select`,{className:`ssg-filter-manage-add`,value:``,disabled:!f,"aria-label":`フィルターを追加する列を選択`,onChange:e=>{let t=e.target.value;t&&s(t)},children:[(0,r.jsx)(`option`,{value:``,children:f?`+ フィルターを追加…`:`+ 追加できる列がありません`}),t.map(e=>(0,r.jsx)(`option`,{value:e.key,children:e.title},e.key))]}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-clear-all`,disabled:!d,onClick:l,children:`すべてクリア`})]})]})}function Zc({entries:e,canFilter:t,onEditFilter:n,onClearFilter:a,onClearAllFilters:o,slot:s}){return e.length===0?null:(0,r.jsxs)(`div`,{className:i(`ssg-filter-chip-bar`,s?.className),style:s?.style,children:[e.map(e=>(0,r.jsxs)(`div`,{className:e.isHidden?`ssg-filter-chip ssg-filter-chip--hidden`:`ssg-filter-chip`,children:[(0,r.jsxs)(`button`,{type:`button`,className:`ssg-filter-chip-label`,disabled:!t||e.isHidden,"data-ssg-tooltip":e.isHidden?`非表示列のためジャンプ編集できません(× でクリアは可能)`:`この列へジャンプして編集`,"aria-label":`${e.title} のフィルターを編集`,onClick:()=>{n(e.columnKey)},children:[(0,r.jsxs)(`span`,{className:`ssg-filter-chip-name`,children:[e.title,e.isHidden?`(非表示列)`:``]}),(0,r.jsx)(`span`,{className:`ssg-filter-chip-summary`,children:e.summaryText})]}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-chip-clear`,disabled:!t,"data-ssg-tooltip":`この列のフィルターをクリア`,"aria-label":`${e.title} のフィルターをクリア`,onClick:()=>{a(e.columnKey)},children:`×`})]},e.columnKey)),(0,r.jsx)(`button`,{type:`button`,className:`ssg-filter-chip-bar-clear-all`,disabled:!t,onClick:o,children:`すべてクリア`})]})}var Qc=e=>{if(e===void 0||e===!1)return null;let t=e===!0?{}:e,n=t.bubble??!0,r=t.ruler??!0,i=t.scrollbar??!0;return!n&&!r&&!i?null:{bubble:n,ruler:r,scrollbar:i,trigger:t.trigger??`scroll`,minRows:t.minRows??0,hintColumn:t.hintColumn,renderHint:t.renderHint}},$c=({scrollTop:e,contentHeight:t,viewportHeight:n,trackHeight:r=n})=>{let i=t-n;if(n<=0||r<=0||i<=0)return null;let a=Math.min(Math.max(r*n/t,30),r),o=Math.min(Math.max(e,0),i)/i*(r-a);return{maxScroll:i,thumbTop:o,thumbHeight:a,centerY:o+a/2}},el=e=>{let t=Math.max(e,1),n=10**Math.floor(Math.log10(t)),r=n<10?[1,2,5,10]:[1,2,2.5,5,10];for(let e of r){let r=n*e;if(r>=t)return r}return n*10},tl=(e,t=e>=1e4&&e%1e4==0)=>e!==0&&t?`${(e/1e4).toLocaleString()}万`:e.toLocaleString(),nl=({rowCount:e,rulerHeight:t,minTickSpacingPx:n=44})=>{if(e<=0||t<=0)return[];let r=el(e/Math.max(Math.floor(t/n),2)),i=r%1e4==0,a=[];for(let n=0;n<=e;n+=r)a.push({row:n,y:n/e*t,label:tl(n,i)});return a},rl=(e,t,n)=>{let r=n-t.thumbHeight;return r<=0?0:Math.min(Math.max((e-t.thumbHeight/2)/r,0),1)*t.maxScroll},il=(e,t)=>{if(e.renderHint!==void 0){let n=e.renderHint(t);return n==null||n===!1?null:n}if(e.hintColumn!==void 0&&t.rowData!==void 0){let n=t.rowData[e.hintColumn];return n==null||n===``?null:String(n)}return null},al=1e3,ol=8,sl=18,cl=28;function ll({options:t,scrollContainerRef:n,scrollTop:a,viewportHeight:o,headerHeight:s,physicalBodyHeight:c,verticalScaleFactor:l,rowMetrics:u,rowModel:d,slot:f}){let[p,m]=(0,e.useState)(!1),[h,g]=(0,e.useState)(!1),[_,v]=(0,e.useState)(0),[y,b]=(0,e.useState)(null),[x,S]=(0,e.useState)(!1),C=(0,e.useRef)(null),w=(0,e.useRef)(null),T=(0,e.useRef)(null),E=t.scrollbar?s:0,D=Math.max(t.scrollbar?o-s:o,0),O=$c({scrollTop:a,contentHeight:s+c,viewportHeight:o,trackHeight:D}),k=O!==null&&u.rowCount>0;(0,e.useEffect)(()=>{let e=n.current;if(!e)return;let r=()=>{m(!0),C.current!==null&&window.clearTimeout(C.current),C.current=window.setTimeout(()=>{C.current=null,m(!1)},al)},i=()=>g(!0),a=()=>{g(!1),b(null)},o=t=>{let n=e.getBoundingClientRect(),r=t.clientX-n.left,i=e.offsetWidth-Math.max(e.offsetWidth-e.clientWidth,0)-sl;b(r>=i?t.clientY-n.top:null)},s=new ResizeObserver(()=>{v(Math.max(e.offsetWidth-e.clientWidth,0))});return e.addEventListener(`scroll`,r,{passive:!0}),e.addEventListener(`pointerenter`,i),e.addEventListener(`pointerleave`,a),t.scrollbar||e.addEventListener(`pointermove`,o,{passive:!0}),s.observe(e),()=>{e.removeEventListener(`scroll`,r),e.removeEventListener(`pointerenter`,i),e.removeEventListener(`pointerleave`,a),e.removeEventListener(`pointermove`,o),s.disconnect(),C.current!==null&&(window.clearTimeout(C.current),C.current=null)}},[n,t.scrollbar]),(0,e.useEffect)(()=>{if(!t.scrollbar||!k)return;let e=T.current,r=n.current;if(!e||!r)return;let i=e=>{e.preventDefault(),r.scrollTop+=e.deltaY};return e.addEventListener(`wheel`,i,{passive:!1}),()=>{e.removeEventListener(`wheel`,i)}},[n,t.scrollbar,k]);let A=Math.max(o-s,0),ee=(0,e.useMemo)(()=>t.ruler?nl({rowCount:u.rowCount,rulerHeight:A}):[],[t.ruler,u.rowCount,A]);if(O===null||u.rowCount<=0)return null;let j=t.trigger===`always`||p||t.trigger===`hover`&&h,te=j||y!==null,ne=t.scrollbar?14:_,M=hi(Math.min(Math.max(a,0),O.maxScroll),l),re=u.rowAtContentY(M),ie=il(t,{rowIndex:re,rowData:d.getRow(re)}),N=null;if(t.ruler&&y!==null&&!x){let e=rl(y,O,D),n=u.rowAtContentY(hi(e,l));N={lineY:Math.min(Math.max(E+y,s),o),rowIndex:n,detail:il(t,{rowIndex:n,rowData:d.getRow(n)})}}let ae=e=>{let t=T.current;return t===null?0:e.clientY-t.getBoundingClientRect().top},P=(e,t)=>{let r=n.current;if(r===null)return;let i=D-O.thumbHeight;i<=0||(r.scrollTop=Math.min(Math.max((e-t)/i,0),1)*O.maxScroll)};return(0,r.jsxs)(`div`,{className:i(`ssg-scroll-hint`,f?.className),style:f?.style,"aria-hidden":`true`,children:[t.ruler&&ee.length>0&&(0,r.jsx)(`div`,{className:i(`ssg-scroll-hint-ruler`,te&&`ssg-scroll-hint-ruler--visible`),style:{top:s,right:ne},children:ee.map(e=>(0,r.jsx)(`div`,{className:`ssg-scroll-hint-ruler-tick`,style:{top:Math.min(Math.max(e.y,6),Math.max(A-6,6))},children:(0,r.jsx)(`span`,{className:`ssg-scroll-hint-ruler-label`,children:e.label})},e.row))}),N!==null&&(0,r.jsx)(`div`,{className:`ssg-scroll-hint-jumpline`,style:{top:N.lineY,right:ne},children:(0,r.jsxs)(`span`,{className:i(`ssg-scroll-hint-jumpline-label`,N.lineY<s+cl&&`ssg-scroll-hint-jumpline-label--below`),children:[`行 `,(N.rowIndex+1).toLocaleString(),` へ`,N.detail!==null&&(0,r.jsxs)(`span`,{className:`ssg-scroll-hint-jumpline-detail`,children:[` `,`・ `,N.detail]})]})}),t.bubble&&(0,r.jsxs)(`div`,{className:i(`ssg-scroll-hint-bubble`,j&&`ssg-scroll-hint-bubble--visible`),style:{top:E+O.centerY,right:ne+ol},children:[(0,r.jsxs)(`span`,{className:`ssg-scroll-hint-bubble-main`,children:[`行 `,(re+1).toLocaleString(),(0,r.jsxs)(`span`,{className:`ssg-scroll-hint-bubble-total`,children:[` `,`/ `,u.rowCount.toLocaleString()]})]}),ie!==null&&(0,r.jsx)(`span`,{className:`ssg-scroll-hint-bubble-detail`,children:ie})]}),t.scrollbar&&(0,r.jsx)(`div`,{ref:T,className:i(`ssg-scroll-hint-scrollbar`,x&&`ssg-scroll-hint-scrollbar--dragging`),style:{top:s,height:D,width:14},onPointerDown:e=>{e.preventDefault();let t=ae(e),n=t>=O.thumbTop&&t<=O.thumbTop+O.thumbHeight?t-O.thumbTop:O.thumbHeight/2;w.current=n,S(!0),b(null),T.current?.setPointerCapture(e.pointerId),P(t,n)},onPointerMove:e=>{let t=ae(e);if(w.current!==null){P(t,w.current);return}b(t)},onPointerUp:e=>{w.current=null,S(!1),T.current?.releasePointerCapture(e.pointerId)},onPointerEnter:()=>g(!0),onPointerLeave:()=>{g(!1),w.current===null&&b(null)},children:(0,r.jsx)(`div`,{className:`ssg-scroll-hint-scrollbar-thumb`,style:{top:O.thumbTop,height:O.thumbHeight}})})]})}var ul=(e,t)=>e.findIndex(e=>e.key===t),dl=(e,t,n)=>{if(!e)return!1;if(e.type===`row`)return t>=e.startRow&&t<=e.endRow;if(e.type===`col`)return n>=e.startCol&&n<=e.endCol;let{start:r,end:i}=e.range,a=Math.min(r.row,i.row),o=Math.max(r.row,i.row),s=Math.min(r.col,i.col),c=Math.max(r.col,i.col);return t>=a&&t<=o&&n>=s&&n<=c},fl=(e,t)=>{if(!e)return!1;if(e.type===`row`)return t>=e.startRow&&t<=e.endRow;if(e.type===`cell`){let{start:n,end:r}=e.range,i=Math.min(n.row,r.row),a=Math.max(n.row,r.row);return t>=i&&t<=a}return!1},pl=220,ml=8,hl=34,gl=16,_l=()=>{let e=null,t=Zn({state:null,layout:null}),n={current:null},r=null,i=0,a=e=>{let n=t.getSnapshot();n.layout===e||n.layout!==null&&e!==null&&n.layout.top===e.top&&n.layout.left===e.left&&n.layout.width===e.width||t.setSnapshot({...n,layout:e})},o=()=>{if(!r){a(null);return}let e=i*hl+gl,t=r.x,n=r.y,o=r.y-e;t=Math.max(ml,t),t=Math.min(t,window.innerWidth-pl-ml),n+e>window.innerHeight-ml&&(n=o),n=Math.max(ml,n),a({top:n,left:t,width:pl})},s=()=>{t.setSnapshot({state:null,layout:null}),r=null,i=0,c.detach(),e!==null&&$n(e.gridRootRef)},c=er({onResize:o,onScroll:s,isInside:e=>n.current?.contains(e)===!0,onOutsidePointerDown:s,onKeyDown:e=>{e.key===`Escape`&&(e.preventDefault(),s())}});return{update:t=>{e=t},subscribe:t.subscribe,getSnapshot:t.getSnapshot,panelRef:n,open:(n,a)=>{Qn(e?.gridRootRef.current??null),r={x:n.clientX,y:n.clientY},i=a.length,t.setSnapshot({...t.getSnapshot(),state:{params:n,items:a}}),o(),c.attach()},close:s,dispose:()=>{c.detach()}}},vl=({gridRootRef:t})=>{let n=ur(()=>_l(),{gridRootRef:t}),r=(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot),i=r.layout;return{contextMenuState:r.state,contextMenuLayout:i,contextMenuRef:n.panelRef,isContextMenuOpen:r.state!==null,openContextMenu:n.open,closeContextMenu:n.close}};function yl({isOpen:e,themeClassName:n,slots:a,items:o,layout:s,popoverRef:c,onRequestClose:l}){if(!e||!s)return null;let u={position:`fixed`,top:s.top,left:s.left,width:s.width,zIndex:1e3};return(0,t.createPortal)((0,r.jsx)(`div`,{ref:c,role:`menu`,onPointerDown:e=>{e.stopPropagation()},onKeyDown:e=>{e.stopPropagation()},onContextMenu:e=>{e.preventDefault()},className:i(`ssg-menu-panel`,n,a?.popover?.className),style:{...a?.popover?.style,...u},children:o.map((e,t)=>e.kind===`separator`?(0,r.jsx)(`div`,{className:`ssg-menu-separator`},e.id??`sep-${t}`):e.kind===`label`?(0,r.jsx)(`div`,{className:`ssg-menu-section-label`,role:`presentation`,children:e.label},e.id??`label-${t}`):e.kind===`custom`?(0,r.jsx)(`div`,{role:`none`,children:e.render({close:l})},e.id??`custom-${t}`):(0,r.jsxs)(`button`,{type:`button`,role:`menuitem`,disabled:e.disabled,onClick:()=>{e.onSelect(),l()},className:i(`ssg-menu-item`,e.danger&&`ssg-menu-item--danger`,e.disabled&&`ssg-menu-item--disabled`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,r.jsx)(`span`,{className:`ssg-menu-icon`,children:e.icon}),(0,r.jsx)(`span`,{className:`ssg-menu-label`,children:e.label})]},e.id??`action-${t}`))}),document.body)}var bl=(e,t)=>{let n=new Set(e);return n.add(t),n},xl=(e,t)=>{let n=new Set(e);return n.delete(t),n},Sl=(e,t)=>{let n=new Set(e);for(let e of t)n.add(e);return n},Cl=(e,t)=>{let n=new Set(e);for(let e of t)n.delete(e);return n},wl=[],Tl={},El={},Dl=[],Ol={compact:{rowHeight:28,headerHeight:32},standard:{rowHeight:36,headerHeight:40},comfortable:{rowHeight:44,headerHeight:48}},kl={},Al=[],jl=[],Ml=[],Nl=300,Pl=4,Fl=300;function Il({rows:t=wl,dataSource:n,serverSideRefreshToken:a,onServerSideLoadError:o,onServerSideWriteError:c,columns:l,onRowsChange:u,onColumnsChange:d,rowKeyGetter:f,isRowExportable:p,createRow:g,createOverflowColumn:y,rowHeight:w,autoHeight:E=!1,estimateRowHeight:D,headerHeight:k,density:A=`standard`,theme:ee=`light`,rowHeaderWidth:j=56,height:te,maxHeight:N,readOnly:P=!1,dimReadOnlyCells:_e=!1,canEditCell:ve,enableUndoRedo:ye=!0,enableClearOnDelete:xe=!0,editorEnterMove:Se=`down`,undoHistoryLimit:Ce=100,onUndoRedoStateChange:Ae,enableRangeSelection:Pe=!0,enableRowSelection:Fe=!1,rowSelectionMode:Ie=`multiple`,enableSelectAllRows:Le,rowSelection:Re,selectedRowKeys:ze,onRowSelectionChange:Be,enableGlobalFilter:Ve=!0,enableColumnFilter:He=!0,renderFilterDateInput:Ue,enableSorting:We=!0,enableColumnResize:Ge=!0,autoSizeColumns:Ke=!1,showCellOverflowTooltip:qe=!1,showValidationMarks:Je=!0,enableRowHover:Ye=!0,enableColumnHeaderHover:Ze=!0,hoveredRowIndex:Qe,onHoveredRowChange:tt,enableColumnMenu:nt=!0,noMatchingRowsText:rt=`一致する行がありません`,noRowsText:it=`表示する行がありません`,showTopBar:at=!0,showBottomBar:ot=!0,showTopBarSummary:st=!0,showTopBarFilter:ut=!0,globalFilterPlaceholder:dt,globalFilterIcon:ft,showTopBarCounts:mt=!0,showBottomBarCounts:bt=!0,showFilterChipBar:Ct=!1,renderTopBar:wt,renderBottomBar:Tt,className:Et,style:Dt,classNames:Ot,getRowClassName:kt,detailRow:At,onExpandedDetailRowKeysChange:jt,enableRowDrag:Mt=!1,isRowDraggable:It,onRowMove:Lt,enableContextMenu:Rt=!1,getContextMenuItems:zt,onContextMenuOpen:Bt,scrollHint:Vt,ref:Ht,onStateChange:Ut,onScroll:Kt}){let I=t,L=l,qt=w??Ol[A].rowHeight,R=k??Ol[A].headerHeight,Xt=(0,e.useMemo)(()=>Qc(Vt),[Vt]),Zt=(0,e.useRef)(null),Qt=(0,e.useRef)(null),$t=(0,e.useRef)(null),tn=(0,e.useRef)(null),nn=(0,e.useRef)(!1),an=(0,e.useRef)(null),on=(0,e.useRef)(null),sn=(0,e.useRef)(null),[ln,un]=(0,e.useState)(``),{groupColumns:dn,aggColumns:fn}=(0,e.useMemo)(()=>Dn(L),[L]),mn=n==null&&dn.length>0,hn=At!=null&&At.showToggleColumn!==!1,gn=Ln({enableRowDrag:Mt,isServerSide:n!=null,rowGroupingActive:mn,hasRowsChange:u!=null}),_n=(0,e.useMemo)(()=>{let e=L.some(e=>e.pinned===`left`),t=gn?{key:Mn,title:``,width:28,minWidth:28,readOnly:!0,suppressAutoSize:!0,resizable:!1,pinned:e?`left`:void 0,cellClassName:`ssg-body-cell--row-drag-handle`,renderCell:()=>null}:null,n=hn?{key:Vn,title:``,width:28,minWidth:28,readOnly:!0,suppressAutoSize:!0,resizable:!1,pinned:e?`left`:void 0,cellClassName:`ssg-body-cell--detail-toggle`,renderCell:e=>{let t=e.detail;return!t||!t.expandable?null:(0,r.jsx)(`button`,{type:`button`,className:`ssg-detail-toggle`,"aria-expanded":t.expanded,"aria-label":t.expanded?`詳細を閉じる`:`詳細を開く`,onClick:t.toggle,onDoubleClick:e=>e.stopPropagation(),children:t.expanded?`▾`:`▸`})}}:null,i=[];if(t&&i.push(t),n&&i.push(n),!mn)return i.length>0?[...i,...L]:L;let a=[{key:Cn,title:dn.map(e=>e.title||e.key).join(` › `),width:240,minWidth:120,readOnly:!0,suppressAutoSize:!0},...L.filter(e=>e.rowGroup!==!0)];return i.length>0?[...i,...a]:a},[gn,hn,mn,L,dn]),z=(0,e.useMemo)(()=>_n.filter(e=>e.visible!==!1),[_n]),B=(0,e.useMemo)(()=>S(z),[z]),vn=(0,e.useMemo)(()=>f??((e,t)=>t),[f]),V=n!=null,yn=We,bn=He,xn=Ve,[Sn]=(0,e.useState)(()=>we(be(z))),[H,U]=Te(Sn),[{scrollTop:Pn,viewportWidth:Fn,viewportHeight:Un,hoveredRowIndex:Wn,hoveredColumnIndex:Zn,isCornerHovered:Qn},{setScrollTop:$n,setHoveredRowIndex:er,setHoveredColumnIndex:tr,setIsCornerHovered:nr}]=Ee(Sn),rr=Qe!==void 0,ir=(0,e.useRef)(null),ar=(0,e.useRef)(tt),or=(0,e.useRef)(Ye),sr=(0,e.useRef)(rr);(0,e.useEffect)(()=>{ar.current=tt,or.current=Ye,sr.current=rr});let cr=(0,e.useCallback)(e=>{if(!or.current)return;let t=ir.current,n=typeof e==`function`?e(t):e;n!==t&&(ir.current=n,sr.current||er(n),ar.current?.(n,{source:`pointer`}))},[er]),lr=Ye?Qe===void 0?Wn:Qe:null,ur=(0,e.useRef)(jt);(0,e.useEffect)(()=>{ur.current=jt});let fr=(0,e.useRef)(!1);(0,e.useEffect)(()=>{if(!fr.current){fr.current=!0;return}ur.current?.(Array.from(H.expandedDetailRowKeys))},[H.expandedDetailRowKeys]);let pr=At!=null,mr=(0,e.useRef)(Kn()),_r=(0,e.useCallback)((e,t)=>{Yn(mr.current,e,t),U(v.toggleDetailRow(e))},[U]),vr=(0,e.useCallback)((e,t,n)=>{Yn(mr.current,e,t),U(v.setDetailRowExpanded(e,n))},[U]),yr=(0,e.useRef)(H.columnWidths),br=(0,e.useRef)(null),xr=(0,e.useRef)(null);xr.current===null&&(xr.current=new Map(L.map(e=>[e.key,{width:e.width,pinned:e.pinned,visible:e.visible}])));let Sr=(0,e.useMemo)(()=>je(H.selection),[H.selection]),Cr=(0,e.useMemo)(()=>C(B),[B]),wr=Cr.left.reduce((e,{column:t})=>e+(H.columnWidths[t.key]??t.width),0),Er=Cr.right.reduce((e,{column:t})=>e+(H.columnWidths[t.key]??t.width),0),Or=Cr.left.length>0,kr=Or?j+wr:0,Ar=Or?0:j,jr=(0,e.useMemo)(()=>Cr.center.map(({column:e})=>e),[Cr.center]),Mr=(0,e.useMemo)(()=>jr.some(ie),[jr]),Nr=Fn-kr-Er-Ar,Pr=(0,e.useMemo)(()=>!Mr||Fn<=0?kl:ae(jr,H.columnWidths,Nr),[Mr,Fn,jr,H.columnWidths,Nr]),Fr=(0,e.useMemo)(()=>Pr===kl?H.columnWidths:{...Pr,...H.columnWidths},[Pr,H.columnWidths]);yr.current=Fr;let Ir=T(Cr.left,H.columnWidths),Lr=T(Cr.center,Fr),Rr=T(Cr.right,H.columnWidths),zr=(0,e.useMemo)(()=>O(`left`,Cr.left,Ir),[Cr.left,Ir]),Vr=(0,e.useMemo)(()=>O(`center`,Cr.center,Lr),[Cr.center,Lr]),Ur=(0,e.useMemo)(()=>O(`right`,Cr.right,Rr),[Cr.right,Rr]),W=(0,e.useMemo)(()=>({left:zr,center:Vr,right:Ur}),[zr,Vr,Ur]),Wr=W.left.entries.length>0,Gr=W.right.entries.length>0,Kr=!Wr,qr=j,Jr=Kr?j:0,Xr=Wr?qr+W.left.totalWidth:0,Zr=W.right.totalWidth,Qr=Jr+W.center.totalWidth,ei=Xr+Qr+Zr,ti=(0,e.useRef)(new Map),di=(0,e.useCallback)(e=>{let t=H.filters.columnFilters[e.key];if(t?.kind===`numberSet`||t?.kind===`textSet`||t?.kind===`dateSet`||t?.kind===`text`)return t.kind;let n=ti.current.get(e.key);if(n)return n;let r=Ba({editorType:e.editor?.type,isServerSide:V,rowCount:I.length,getRawValueAt:t=>F(I[t],e)});return r.conclusive&&ti.current.set(e.key,r.filterType),r.filterType},[H.filters.columnFilters,V,I]),{filterPopoverState:G,filterPopoverLayout:yi,filterPopoverRef:bi,filterTextInputRef:xi,filterSelectRef:Si,isFilterPopoverOpen:Ci,openedFilterColumn:K,openedFilterType:q,openColumnFilterPopover:Ti,closeColumnFilterPopover:Ei,updateFilterPopoverDraft:Oi,updateFilterPopoverNumberDraft:ki,updateFilterPopoverTextDraft:Ai,updateFilterPopoverDateDraft:ji}=dr({visibleColumns:z,columnFilterValues:H.filters.columnFilters,enableColumnFilter:bn,gridRootRef:Zt,resolveColumnFilterType:di}),{columnMenuLayout:Mi,columnMenuRef:Ni,isColumnMenuOpen:Pi,openedMenuColumnKey:Fi,openedMenuColumn:Ii,openColumnMenuFromButton:Li,openColumnMenuFromButtonClick:Ri,openColumnMenuFromContextMenu:zi,closeColumnMenu:J}=vc({visibleColumns:z,enableColumnMenu:nt,gridRootRef:Zt}),{activeToolPanelTab:Bi,availableToolPanelTabs:Vi,toolPanelLayout:Hi,toolPanelFlashTick:Ui,toolPanelRef:Wi,openToolPanel:Gi,closeToolPanel:Ki,moveToolPanel:qi}=Nc({canUseFilterTab:bn,canUseColumnsTab:nt,canUseSortTab:yn,gridRootRef:Zt,alliedRef:bi,suppressEscape:Ci,onSuppressedEscape:Ei}),{contextMenuState:Ji,contextMenuLayout:Yi,contextMenuRef:Xi,isContextMenuOpen:Zi,openContextMenu:Qi,closeContextMenu:ea}=vl({gridRootRef:Zt});(0,e.useEffect)(()=>{let e=z.reduce((e,t)=>(ie(t)||(e[t.key]=t.width),e),{});U(v.resetColumnWidths(e))},[z,U]);let ta=H.filters.globalText,na=H.filters.columnFilters,ra=(0,e.useDeferredValue)(na),{order:aa,status:oa,progress:sa}=us({rows:I,baseOrder:(0,e.useMemo)(()=>ht(I.length),[I.length]),columns:z,globalText:ta,enabled:xn}),ca=(0,e.useMemo)(()=>{let e=[];for(let t of z)Nt(ra[t.key])&&e.push(t.key);return e.join(`\0`)},[z,ra]),la=(0,e.useMemo)(()=>{let e=new Map;if(ca.length===0)return e;let t=new Set(ca.split(`\0`)),n=I.length;for(let r of z){if(!t.has(r.key))continue;let i=new Float64Array(n);for(let e=0;e<n;e+=1)i[e]=St(F(I[e],r));e.set(r.key,i)}return e},[I,z,ca]),ua=(0,e.useMemo)(()=>Wt(I,aa,z,ra,la),[I,aa,z,ra,la]),da=(0,e.useMemo)(()=>ci(I,ua,z,H.sort),[I,ua,z,H.sort]),fa=Rn(gn,(0,e.useMemo)(()=>gn&&In(da,I.length),[gn,da,I.length]));(0,e.useEffect)(()=>{},[V,dn.length]);let pa=(0,e.useMemo)(()=>mn?On(I,da,dn,fn):null,[mn,I,da,dn,fn]),ma=(0,e.useMemo)(()=>pa?kn(pa,H.collapsedGroupKeys):null,[pa,H.collapsedGroupKeys]),ha=(0,e.useCallback)(e=>{U(v.toggleGroupCollapsed(e))},[U]),ga=(0,e.useMemo)(()=>{if(ma){let{displayOrder:e,groups:t}=ma;return{getRowCount:()=>e.length,getRow:t=>I[e[t]],getSourceIndex:t=>{let n=e[t];return n>=0?n:void 0},getRowKey:n=>{let r=e[n];return Tn(r)?wn(t[En(r)]):vn(I[r],r)},getGroupRow:n=>{let r=e[n];return Tn(r)?t[En(r)]:void 0}}}return{getRowCount:()=>da.length,getRow:e=>I[da[e]],getSourceIndex:e=>da[e],getRowKey:e=>vn(I[da[e]],da[e])}},[ma,da,I,vn]),_a=(0,e.useMemo)(()=>V?xs({globalText:xn?ta:``,columnFilters:bn?na:El,sort:yn?H.sort:Dl}):Tl,[V,xn,ta,bn,na,yn,H.sort]),va=(0,e.useMemo)(()=>V?Ss(_a):``,[V,_a]),[ba,xa]=(0,e.useState)(_a),[Sa,Ca]=(0,e.useState)(va);(0,e.useEffect)(()=>{if(!V)return;let e=setTimeout(()=>{xa(_a),Ca(va)},Fl);return()=>clearTimeout(e)},[V,va,_a]);let Y=bs({dataSource:n,rowKeyGetter:vn,query:ba,queryKey:Sa,refreshToken:a,onLoadError:o,onWriteError:c}),[wa,Ta]=(0,e.useState)(null),[Ea,Da]=(0,e.useState)(null),Oa=Y.requestRange,X=V?Y.rowModel:ga,ka=(0,e.useMemo)(()=>V&&!Y.canUpdateRows?()=>!1:ve,[V,Y.canUpdateRows,ve]),ja=V&&Y.canUpdateRows?Y.applyCellEdits:void 0,Ma=(0,e.useRef)(X);Ma.current=X;let Pa=(0,e.useCallback)(e=>{if(!Rt||!zt)return;let t=e.target;if(!t)return;let n=t.closest(`[data-row-index]`);if(!n)return;let r=n.dataset.rowIndex;if(r===void 0)return;let i=Number(r);if(!Number.isInteger(i))return;let a=X.getRow(i);if(!a)return;let o=X.getRowKey(i)??i,s,c,l=t.closest(`[data-ssg-col-key]`),u=l?.dataset.ssgColKey;if(l&&u!==void 0){let e=ul(B,u);if(e<0)return;let t=B[e];s={type:`cell`,rowIndex:i,colIndex:e,rowKey:o,row:a,column:t,value:F(a,t)},c=dl(H.selection,i,e)}else s={type:`rowHeader`,rowIndex:i,rowKey:o,row:a},c=fl(H.selection,i);let d={target:s,clientX:e.clientX,clientY:e.clientY,selection:H.selection,activeCell:H.activeCell,isTargetSelected:c},f=zt(d);!f||f.length===0||(e.preventDefault(),Bt?.(d),Qi(d,f))},[Rt,zt,Bt,X,B,H.selection,H.activeCell,Qi]),{isAutosizing:Ia,runAutosize:La}=qo({rowModelRef:Ma,gridRootRef:Zt,columnWidthsRef:yr,dispatch:U}),Ra=(0,e.useRef)(z);Ra.current=z;let za=(0,e.useRef)(!1);(0,e.useEffect)(()=>{let{shouldRun:e,nextHasAutoSizedOnMount:t}=Wa({mode:Ke,isServerSide:V,rowCount:I.length,hasAutoSizedOnMount:za.current});za.current=t,e&&La(Ra.current)},[Ke,I,V,La]);let Z=X.getRowCount(),Va=ma?da.length:Z,Ka=Xt!==null&&Z>=Xt.minRows?Xt:null,qa=(0,e.useMemo)(()=>{let e=null;return()=>e??=Array.from(da,e=>I[e])},[da,I]),Za=(0,e.useMemo)(()=>b(z,Fr),[z,Fr]),Qa=(0,e.useRef)(null);(0,e.useEffect)(()=>{Qa.current=Kt??null},[Kt]);let $a=(0,e.useRef)(0),io=(0,e.useRef)(null);(0,e.useEffect)(()=>{let e=an.current;if(!e)return;Sn.setViewState({scrollTop:e.scrollTop,viewportHeight:e.clientHeight,viewportWidth:e.clientWidth});let t=null,n=()=>{t=null;let e=io.current;io.current=null,e&&Qa.current?.(e)},r=()=>{$n(e.scrollTop);let r=$a.current>0?`api`:`user`;r===`api`&&--$a.current;let i=io.current;io.current={top:e.scrollTop,left:e.scrollLeft,source:i?.source===`user`?`user`:r},Qa.current&&t===null&&(t=requestAnimationFrame(n))};e.addEventListener(`scroll`,r,{passive:!0});let i=new ResizeObserver(()=>{Sn.setViewState({viewportHeight:e.clientHeight,viewportWidth:e.clientWidth})});return i.observe(e),()=>{e.removeEventListener(`scroll`,r),t!==null&&cancelAnimationFrame(t),i.disconnect()}},[Sn,$n]);let ao=W.center.entries,oo=_({horizontal:!0,count:ao.length,getScrollElement:()=>an.current,estimateSize:e=>ao[e]?.paneLocalSize??ao[e]?.column.width??120,overscan:8,useFlushSync:!1,scrollMargin:Xr}),so=oo.getVirtualItems(),co=D??qt,lo=(0,e.useMemo)(()=>z.some(e=>e.autoHeight===!0),[z]),uo=!V&&ui(E,lo,Z,5e4);(0,e.useEffect)(()=>{},[E,lo,Z,V]);let fo=(0,e.useRef)(new Map),[po,bo]=(0,e.useState)(0),[So,Co]=(0,e.useState)(0),wo=(0,e.useRef)(null),To=(0,e.useRef)(new Set),Eo=(0,e.useMemo)(()=>uo?vo(Z,co,X.getRowKey,fo.current):null,[uo,Z,co,X]),Do=(0,e.useMemo)(()=>uo&&Eo?xo(Eo):fi(Z,qt),[uo,Eo,po,Z,qt]),Oo=At?.height??200,ko=At?.isExpandable,Ao=(0,e.useMemo)(()=>pr?Jn({expandedKeys:H.expandedDetailRowKeys,rowModel:X,height:Oo,isExpandable:ko,cache:mr.current,allowScan:!V}):jl,[pr,H.expandedDetailRowKeys,X,Oo,ko,V]),jo=Ao.length>0&&Do.totalBodyHeight+Ao.reduce((e,t)=>e+t.height,0)<=15e6;(0,e.useEffect)(()=>{},[pr,Ao,jo]);let Mo=(0,e.useMemo)(()=>jo?pi(Do,Ao):Do,[jo,Do,Ao]),No=uo||jo,Po=(0,e.useMemo)(()=>No?vi({headerHeight:R,viewportHeight:Un,scrollTop:Pn,overscan:20},Mo):_i({rowCount:Z,rowHeight:qt,headerHeight:R,viewportHeight:Un,scrollTop:Pn,overscan:20,maxBodyPx:li}),[No,Mo,Z,qt,R,Un,Pn]),Fo=Po.rows,Io=Po.rowIndexSet,Lo=(0,e.useMemo)(()=>{if(!jo)return Ml;let e=[];for(let t of Fo)t.detailSize!==void 0&&t.detailSize>0&&e.push({rowKey:X.getRowKey(t.index)??t.index,virtualRow:t});return e},[jo,Fo,X]),Ro=At?.render,zo=(0,e.useCallback)(e=>{if(!Ro)return null;let t=e.virtualRow.index,n=X.getRow(t);if(n===void 0)return null;let r={row:n,rowKey:e.rowKey,rowIndex:t,sourceRowIndex:X.getSourceIndex(t)??t,collapse:()=>vr(e.rowKey,t,!1)};return Ro(r)},[Ro,X,vr]),Bo=Xr+Jr,Vo=Math.max(Math.min(Fn-Bo-Zr,W.center.totalWidth),0),Ho=Fo.length>0?Fo[0].index:0,Uo=Fo.length>0?Fo[Fo.length-1].index:-1;(0,e.useEffect)(()=>{if(!V)return;let e=an.current;e&&(e.scrollTop=0),$n(0)},[V,Sa,$n]),(0,e.useEffect)(()=>{!V||!pr||(mr.current=Kn(),U(v.setExpandedDetailRowKeys(new Set)))},[V,pr,Sa,U]),(0,e.useEffect)(()=>{V&&(Uo<Ho||Oa(Ho,Uo+1))},[V,Ho,Uo,Oa,Sa]);let Wo=Po.physicalBodyHeight,Go=Po.translateY===0?void 0:`translateY(${Po.translateY}px)`,Ko=Po.scaleFactor,Jo=Po.windowBaseOffsetPx;(0,e.useLayoutEffect)(()=>{if(!uo||!Eo){wo.current?.disconnect(),wo.current=null,To.current.clear();return}let e=an.current;if(!e)return;let t=e.querySelectorAll(`[data-autoheight-cell]`);if(t.length>0){let n=new Map;t.forEach(t=>{if(Gn(e,t))return;let r=t.closest(`[data-row-index]`);if(!r)return;let i=Number(r.dataset.rowIndex);if(!Number.isFinite(i))return;let a=Math.ceil(t.getBoundingClientRect().height),o=n.get(i);(o===void 0||a>o)&&n.set(i,a)});let r=!1,i=1/0;if(n.forEach((e,t)=>{let n=X.getRowKey(t)??t;yo(Eo,t,n,e)&&(r=!0,t<i&&(i=t))}),r){let t=e.scrollTop,n=Mo.rowAtContentY(t),r=t-Mo.rowTop(n);_o(Eo,i),e.scrollTop=Eo.prefix[n]+r,bo(e=>e+1)}}let n=wo.current??new ResizeObserver(()=>Co(e=>e+1));wo.current=n;let r=To.current,i=new Set;t.forEach(e=>{i.add(e),r.has(e)||(n.observe(e),r.add(e))});let a=[];r.forEach(e=>{i.has(e)||a.push(e)}),a.forEach(e=>{n.unobserve(e),r.delete(e)})},[uo,Eo,Mo,X,Fo,Un,po,So]),(0,e.useEffect)(()=>{let e=To.current;return()=>{wo.current?.disconnect(),wo.current=null,e.clear()}},[]);let Yo=(0,e.useMemo)(()=>so.map(e=>ao[e.index]).filter(e=>!!e),[so,ao]),Xo=W.left.entries,Zo=W.right.entries,Qo=(0,e.useMemo)(()=>{if(!H.activeCell)return null;let{row:e,col:t}=H.activeCell;if(e<0||e>=Z)return null;let n=re(W,t);return n?{pane:n.pane,rect:{left:n.extent.start,top:Mo.rowTop(e),width:n.extent.width,height:Mo.cellHeight(e)}}:null},[H.activeCell,Z,W,Mo]),$o=(0,e.useMemo)(()=>Qo&&Qo.pane===`center`?Qo.rect:null,[Qo]),es=(0,e.useCallback)(e=>Qo&&Qo.pane===e?Qo.rect:null,[Qo]),ts=(0,e.useCallback)(e=>H.editingCell?es(e):null,[H.editingCell,es]),ns=ia(ee)===`dark`?`ssg-theme-dark`:void 0,Q=m(Ot),rs=h(At?.className);$i(Q.tooltip),Di({scrollRef:an,columnVirtualizer:oo,columnMeasurements:Za,totalScrollWidth:ei,physicalBodyHeight:Wo,headerHeight:R,leftPaneWidth:Xr,rightPaneWidth:Zr,centerLeadingWidth:Jr,activeCellRect:$o,activeCell:H.activeCell,verticalScaleFactor:Ko});let is=(0,e.useMemo)(()=>{if(Re!==void 0)return Re;if(ze!==void 0)return{type:`include`,rowKeys:ze}},[Re,ze]),os=is!==void 0,ss=Le??(Fe&&Ie===`multiple`),cs=H.rowSelection,ls=pe(cs,Va),ds=(0,e.useRef)(cs);ds.current=cs;let fs=(0,e.useRef)(Ie);fs.current=Ie;let ps=(0,e.useRef)(Be);ps.current=Be;let ms=(0,e.useRef)(os);ms.current=os;let hs=(0,e.useRef)(null),gs=(0,e.useCallback)(e=>{ge(ds.current,e)||ps.current?.(me(e)),ms.current||U(v.setRowSelectionState(e))},[U]),_s=(0,e.useRef)(gs);_s.current=gs;let vs=(0,e.useCallback)((e,t)=>{let n=Ma.current,r=Math.min(e,t),i=Math.max(e,t),a=[];for(let e=r;e<=i;e+=1)n.getRow(e)&&a.push(n.getRowKey(e)??e);return a},[]),ys=(0,e.useCallback)((e,t)=>{let n=Ma.current;if(!n.getRow(e))return;let r=n.getRowKey(e)??e;if(fs.current===`single`){hs.current=e,gs(ce(r));return}if(t.shiftKey&&hs.current!==null){gs(le(vs(hs.current,e)));return}hs.current=e,gs(se(ds.current,r))},[gs,vs]),Cs=(0,e.useCallback)(e=>{let t=Ma.current;if(t.getRow(e)){if(fs.current===`single`){gs(ce(t.getRowKey(e)??e));return}hs.current!==null&&gs(le(vs(hs.current,e)))}},[gs,vs]),ws=(0,e.useCallback)(()=>{let e=pe(ds.current,Va);gs(e===`all`?de():ue())},[gs,Va]);(0,e.useEffect)(()=>{if(!os||!is)return;let e=he(is);ge(ds.current,e)||U(v.setRowSelectionState(e))},[os,is,U]);let Es=(0,e.useRef)(()=>{}),{updateSelectionFromPointer:Ds,handleCellPointerDown:ks,handleCellDoubleClick:As,handleCellPointerEnter:js,handleNativeDragStart:Ms,handleRowHeaderPointerDown:Ns,handleRowHeaderPointerEnter:Ps,handleColumnHeaderPointerDown:Fs,handleColumnHeaderPointerEnter:Is}=wi({gridRootRef:Zt,bodyScrollRef:tn,onCellDoubleClickRef:Es,scrollContainerRef:an,leftPaneScrollRef:on,rightPaneScrollRef:sn,pointerClientRef:Qt,autoScrollFrameRef:$t,uiState:H,dispatch:U,enableRangeSelection:Pe,enableSorting:yn,orderedColumns:B,filteredRowsLength:Z,visibleColumnsLength:z.length,paneLayout:W,leftLeadingWidth:qr,centerLeadingWidth:Jr,rightLeadingWidth:0,headerHeight:R,rowMetrics:Mo,verticalScaleFactor:Ko,setHoveredRowIndex:cr,setHoveredColumnIndex:tr,enableRowHover:Ye,enableColumnHeaderHover:Ze,enableRowSelection:Fe,onGutterRowSelect:ys,onGutterRowSelectDrag:Cs}),Ls=(0,e.useRef)(()=>{}),Rs=(0,e.useCallback)(e=>{e&&requestAnimationFrame(()=>{Ls.current(e.row,e.col,`auto`)})},[]),zs=ye&&!P&&!V,{handleRowsChange:Bs,undo:Vs,redo:Hs,canUndo:Us,canRedo:Ks,clearHistory:qs}=Yr({rows:I,selection:H.selection,activeCell:H.activeCell,onRowsChange:u,dispatch:U,enabled:zs,limit:Ce,onUndoRedoStateChange:Ae,onAfterRestore:Rs}),Ys=(0,e.useCallback)(()=>{if(ja){let e=Ua({getRow:e=>X.getRow(e),columns:B,selection:H.selection,activeCell:H.activeCell,viewRowCount:Z,canWriteCell:(e,t,n,r)=>Xe({readOnly:P,canEditCell:ka},e,t,n,r)});e.length>0&&ja(e);return}if(!Bs)return;let{nextRows:e,changed:t}=Ha({rows:I,resolveSourceIndex:e=>X.getSourceIndex(e),columns:B,selection:H.selection,activeCell:H.activeCell,viewRowCount:Z,canWriteCell:(e,t,n,r)=>Xe({readOnly:P,canEditCell:ka},e,t,n,r)});t&&Bs(e)},[ja,ka,Bs,B,P,X,I,H.activeCell,H.selection,Z]),{isWholeGridSelected:Xs,handleCopy:Zs,handlePaste:Qs}=Tr({rows:I,rowModel:X,visibleColumns:B,uiState:H,readOnly:P,canEditCell:ka,createRow:g,createOverflowColumn:y,onRowsChange:Bs,onColumnsChange:d,applyServerSideCellEdits:ja,isRowExportable:p,dispatch:U}),$s=(0,e.useCallback)(()=>{if(Z===0||z.length===0)return;let e={row:0,col:0},t={row:Z-1,col:z.length-1};U(v.startSelection(e)),U(v.updateSelection(t)),U(v.endSelection()),U(v.activateCell(e))},[U,Z,z.length]),ec=(0,e.useCallback)(e=>{let t=X.getRow(e.row),n=B[e.col];if(!t||!n||!Xe({readOnly:P,canEditCell:ka},e.row,e.col,t,n)||n.editor?.type===`checkbox`)return;let r=F(t,n);un(String(r??``)),U(v.startEdit(e))},[ka,U,X,P,B]),tc=(0,e.useCallback)(e=>{if(!Bs&&!ja)return;let t=X.getRow(e.row),n=B[e.col];if(!t||!n||n.editor?.type!==`checkbox`||!Xe({readOnly:P,canEditCell:ka},e.row,e.col,t,n))return;let r=et(F(t,n),n.editor);if(hr(n,t,r).action===`reject`)return;if(ja){ja([{viewIndex:e.row,column:n,value:r}]);return}if(!Bs)return;let i=X.getSourceIndex(e.row);i!==void 0&&Bs(ct(I,i,n,r))},[ja,ka,Bs,B,P,X,I]),{handleKeyDown:nc}=$r({uiState:H,rowModel:X,visibleColumns:B,readOnly:P,canEditCell:ka,setEditorInitialValue:un,dispatch:U,handleCopy:Zs,handleCellDoubleClick:ec,isWholeGridSelected:Xs,selectEntireGrid:$s,onUndo:Vs,onRedo:Hs,onClearSelection:Ys,enableClearOnDelete:xe,onToggleCheckboxCell:tc,onToggleGroup:ha}),{startEditWithValue:rc,commitEdit:ic,cancelEdit:ac}=Hr({uiState:H,rows:I,visibleColumns:B,rowModel:X,setEditorInitialValue:un,onRowsChange:Bs,applyServerSideCellEdits:ja,dispatch:U,gridRootRef:Zt,editorActionGuardRef:nn}),sc=H.editingCell?B[H.editingCell.col]:void 0,cc=H.editingCell?X.getRow(H.editingCell.row):void 0,uc=H.editingCell&&sc&&cc?{row:cc,rowIndex:H.editingCell.row,sourceRowIndex:X.getSourceIndex(H.editingCell.row)??H.editingCell.row,rowKey:X.getRowKey(H.editingCell.row)??H.editingCell.row,colIndex:H.editingCell.col,column:sc,value:F(cc,sc)}:null,dc=(0,e.useCallback)(e=>{let t=X.getRow(e.row),n=B[e.col];if(!t||!n||!Xe({readOnly:P,canEditCell:ka},e.row,e.col,t,n)||n.editor?.type===`checkbox`)return;let r=F(t,n);rc(e,String(r??``))},[ka,X,P,rc,B]);(0,e.useEffect)(()=>{Es.current=dc},[dc]);let pc=(0,e.useMemo)(()=>{if(!H.selection)return null;if(H.selection.type===`cell`){let e=De(H.selection.range);return{extents:ne(W,e.start.col,e.end.col),startRow:e.start.row,endRow:e.end.row}}if(H.selection.type===`row`){let e=Oe(H.selection.startRow,H.selection.endRow);return{extents:M(W),startRow:e.startRow,endRow:e.endRow}}let e=ke(H.selection.startCol,H.selection.endCol);return{extents:ne(W,e.startCol,e.endCol),startRow:0,endRow:Math.max(Z-1,0)}},[H.selection,W,Z]),mc=(0,e.useMemo)(()=>{if(!pc)return null;let e=mi(pc.startRow,pc.endRow,Ho,Uo);return e?{top:Mo.rowTop(e.start),height:Mo.rowsHeight(e.start,e.end)}:null},[pc,Mo,Ho,Uo]),hc=(0,e.useMemo)(()=>{if(!jo||!pc)return null;let e=mi(pc.startRow,pc.endRow,Ho,Uo);return e?Xn(e.start,e.end,Mo,Ao):null},[jo,pc,Mo,Ao,Ho,Uo]),gc=(0,e.useCallback)(e=>{if(!pc||!mc)return null;let t=pc.extents[e];return t?{left:t.start,top:mc.top,width:t.width,height:mc.height}:null},[pc,mc]),_c=(0,e.useCallback)(e=>{if(!hc||!pc)return null;let t=pc.extents[e];return t?hc.map(e=>({left:t.start,top:e.top,width:t.width,height:e.height})):null},[hc,pc]),yc=(0,e.useCallback)(e=>{if(e.preventDefault(),e.button===0&&!(Z===0||z.length===0)){if(Zt.current?.focus({preventScroll:!0}),ss){ws();return}if(Xs){U(v.clearSelection()),U(v.activateCell(null));return}$s()}},[U,Z,Xs,$s,z.length,ss,ws]),bc=(0,e.useCallback)(e=>{cr(t=>t===e?null:t)},[cr]),xc=(0,e.useCallback)(e=>{tr(t=>t===e?null:t)},[tr]),Sc=(0,e.useCallback)(()=>{nr(!0)},[nr]),Cc=(0,e.useCallback)(()=>{nr(!1)},[nr]),Tc=(0,e.useCallback)((e,t)=>{t.preventDefault(),t.stopPropagation();let n=t.timeStamp,r=br.current;if(r&&r.key===e.key&&n-r.time<Nl&&Math.abs(t.clientX-r.x)<Pl){br.current=null,La([e]);return}br.current={key:e.key,time:n,x:t.clientX},U(v.startColumnResize(e.key,t.clientX,yr.current[e.key]??e.width,e.minWidth??60,e.maxWidth))},[U,La]),Ec=(0,e.useCallback)((e,t)=>{if(J(),!d)return;let n=L.find(t=>t.key===e);n&&(n.pinned??void 0)!==t&&(d(L.map(n=>{let r=yr.current[n.key]??n.width;return n.key===e?{...n,width:r,pinned:t}:r===n.width?n:{...n,width:r}})),U(v.stopEdit()),U(v.clearSelection()),U(v.activateCell(null)))},[J,L,U,d]),Dc=(0,e.useCallback)(e=>{J();let t=z.find(t=>t.key===e);t&&La([t])},[J,La,z]),Oc=(0,e.useCallback)(()=>{J(),La(z)},[J,La,z]),kc=(0,e.useMemo)(()=>L.map(e=>({key:e.key,title:e.title??e.key,visible:e.visible!==!1,pane:x(e)})),[L]),Ac=(0,e.useCallback)(()=>{J(),Gi(`columns`)},[J,Gi]),jc=(0,e.useMemo)(()=>z.filter(e=>e.key!==`__ssg_detail_toggle__`&&e.key!==`__ssg_row_drag_handle__`).map(e=>({key:e.key,title:e.title??e.key})),[z]),Mc=(0,e.useCallback)(()=>{J(),Gi(`sort`)},[J,Gi]),Pc=(0,e.useCallback)(e=>{J(),Ti(e)},[J,Ti]),Fc=(0,e.useMemo)(()=>{let e=[],t=(t,n)=>{let r=na[t.key];!r||!xt(r)||e.push({columnKey:t.key,title:t.title||t.key,summaryText:Na(r,r.kind===`dateSet`?pt(t.dateFilterPresets):void 0),isHidden:n})};for(let e of B)t(e,!1);for(let e of L)e.visible===!1&&t(e,!0);return e},[na,L,B]),Ic=(0,e.useMemo)(()=>z.filter(e=>!!e.filterType&&!xt(na[e.key])).map(e=>({key:e.key,title:e.title||e.key})),[na,z]),Rc=(0,e.useCallback)(()=>{J(),Gi(`filter`)},[J,Gi]),zc=(0,e.useCallback)(()=>{Bi===`filter`?Ki():Gi(`filter`)},[Bi,Ki,Gi]),Bc=(0,e.useCallback)(e=>{let t=$.current,n=an.current;if(!t)return;let r=t.orderedColumns.findIndex(t=>t.key===e);if(r<0)return;let i=t.orderedColumns[r];if(n){let e=re(t.paneLayout,r);if(e&&e.pane===`center`){let r=go({cellLeft:t.leftPaneTotalWidth+t.centerLeadingWidth+e.extent.start,cellWidth:e.extent.width,leftPaneWidth:t.leftPaneTotalWidth,rightPaneWidth:t.rightPaneTotalWidth,viewportWidth:n.clientWidth,currentScrollLeft:n.scrollLeft,align:`auto`,maxScrollLeft:n.scrollWidth-n.clientWidth});r!==n.scrollLeft&&n.scrollTo({left:r,behavior:`auto`})}}let a=()=>{let t=Zt.current,n=t?.querySelectorAll(`[data-ssg-col-key]`);return!t||!n?null:Array.from(n).find(n=>n.dataset.ssgColKey===e&&!Gn(t,n))??null},o=e=>{if(!Zt.current)return;let t=a();if(t===null){e<8&&requestAnimationFrame(()=>o(e+1));return}Ti(i),t.classList.remove(`ssg-header-cell--jump-flash`),t.offsetWidth,t.classList.add(`ssg-header-cell--jump-flash`),t.addEventListener(`animationend`,()=>{t.classList.remove(`ssg-header-cell--jump-flash`)},{once:!0})};requestAnimationFrame(()=>{o(0)})},[Zt,Ti]),Vc=(0,e.useCallback)(e=>{U(v.clearColumnFilter(e))},[U]),Hc=(0,e.useCallback)(()=>{U(v.setAllFilters({globalText:H.filters.globalText,columnFilters:{}}))},[U,H.filters.globalText]),Uc=(0,e.useCallback)(()=>{U(v.setGlobalFilter(``))},[U]),Wc=(0,e.useCallback)((e,t)=>{if(!d)return;let n=L.find(t=>t.key===e);n&&n.visible!==!1!==t&&(!t&&L.filter(e=>e.visible!==!1).length<=1||(d(L.map(n=>{let r=yr.current[n.key]??n.width;return n.key===e?{...n,width:r,visible:t}:r===n.width?n:{...n,width:r}})),U(v.stopEdit()),U(v.clearSelection()),U(v.activateCell(null))))},[L,U,d]),Kc=(0,e.useCallback)(()=>{d&&L.some(e=>e.visible===!1)&&(d(L.map(e=>{let t=yr.current[e.key]??e.width,n=t!==e.width,r=e.visible===!1;return!n&&!r?e:r?{...e,width:t,visible:!0}:{...e,width:t}})),U(v.stopEdit()),U(v.clearSelection()),U(v.activateCell(null)))},[L,U,d]),Jc=(0,e.useCallback)(()=>{if(!d)return;let e=B[0]?.key;e!==void 0&&L.some(t=>t.visible!==!1&&t.key!==e)&&(d(L.map(t=>{let n=yr.current[t.key]??t.width,r=n!==t.width,i=t.visible!==!1&&t.key!==e;return!r&&!i?t:i?{...t,width:n,visible:!1}:{...t,width:n}})),U(v.stopEdit()),U(v.clearSelection()),U(v.activateCell(null)))},[L,U,d,B]),Yc=(0,e.useCallback)((e,t)=>{if(!d||e.length!==L.length)return;let n=new Map(L.map(e=>[e.key,e]));if(!e.every(e=>n.has(e)))return;let r=S(e.map(e=>{let r=n.get(e),i=yr.current[r.key]??r.width,a=t?.has(e)?t.get(e):r.pinned,o=i!==r.width,s=(r.pinned??void 0)!==(a??void 0);return o||s?{...r,width:i,pinned:a}:r}));r.length===L.length&&r.every((e,t)=>{let n=L[t];return!!n&&n.key===e.key&&n.width===e.width&&(n.pinned??void 0)===(e.pinned??void 0)})||(d(r),U(v.stopEdit()),U(v.clearSelection()),U(v.activateCell(null)))},[L,U,d]),$c=(0,e.useCallback)(e=>{Yc(e)},[Yc]),{onColumnDragHandlePointerDown:el,leftIndicatorRef:tl,centerIndicatorRef:nl,rightIndicatorRef:rl,applyReorderSettle:il}=ya({enabled:!!d,columns:L,paneLayout:W,leftPaneScrollRef:on,rightPaneScrollRef:sn,bodyScrollRef:tn,scrollContainerRef:an,leftLeadingWidth:qr,centerLeadingWidth:Jr,rightLeadingWidth:0,applyColumnOrderAndPin:Yc,ghostSlot:Q.dragGhost});(0,e.useLayoutEffect)(()=>{il()},[W,il]);let al=(0,e.useCallback)((e,t)=>{if(!Bs)return;let n=Nn(I,e,t);if(n===I)return;let r=I[e],i=n;Bs(i),Lt?.({rowKey:vn(r,e),fromIndex:e,toIndex:t,rows:i})},[I,Bs,Lt,vn]),ol=(0,e.useCallback)((e,t)=>{if(V){console.warn(`[SpreadsheetGrid] moveRow() は clientSide(rows + onRowsChange)専用です。serverSide では無効です。`);return}let n=I.findIndex((t,n)=>vn(t,n)===e);n<0||al(n,t)},[V,I,vn,al]),{onRowDragHandlePointerDown:sl,leftIndicatorRef:cl,centerIndicatorRef:pl,rightIndicatorRef:ml,applyReorderSettle:hl}=Aa({enabled:fa,rowMetrics:Mo,headerHeight:R,verticalScaleFactor:Ko,windowBaseOffsetPx:Jo,scrollContainerRef:an,bodyScrollRef:tn,getRowDragLabel:(0,e.useCallback)(e=>{let t=`行 ${e+1}`,n=X.getRow(e);if(!n)return t;let r=z.find(e=>!Hn(e.key));if(!r)return t;let i=F(n,r),a=r.valueFormatter?r.valueFormatter({value:i,row:n,column:r}):String(i??``);return a.trim().length>0?a:t},[X,z]),commitRowMove:al,ghostSlot:Q.dragGhost});(0,e.useLayoutEffect)(()=>{hl()},[X,hl]);let gl=d?el:void 0,_l={position:`absolute`,top:0,height:R+Wo,transform:`translateX(-1px)`,pointerEvents:`none`,zIndex:8,display:`none`},Il=(0,e.useCallback)(()=>{if(!d)return;let e=xr.current;if(!e)return;let t=Ga(L,e,yr.current);t!==null&&(d(t),U(v.stopEdit()),U(v.clearSelection()),U(v.activateCell(null)))},[L,U,d]),Ll=(0,e.useCallback)(()=>{J(),Il()},[J,Il]),Rl=(0,e.useCallback)(e=>K?F(I[e],K):void 0,[I,K]),{options:zl,allValues:Bl,status:Vl,progress:Hl}=as({column:K,rowCount:I.length,getRawValueAt:Rl}),Ul=q===`dateSet`,Wl=(0,e.useMemo)(()=>Ul?Fa(zl):zl,[Ul,zl]),Gl=(0,e.useMemo)(()=>Ul?new Set(Wl.map(e=>e.value)):Bl,[Ul,Wl,Bl]),Kl=K?H.filters.columnFilters[K.key]:void 0,ql=(0,e.useMemo)(()=>{let e=gt(Kl)?Kl:_t(Kl)||vt(Kl)||yt(Kl)?Kl.set:null;return e?{mode:e.mode===`exclude`?`exclude`:`include`,values:new Set(e.values)}:null},[Kl]),Jl=!(K?.filterOptions&&K.filterOptions.length>0),Yl=(0,e.useCallback)((e,t)=>{let n=K?.key===e?q:void 0,r=H.filters.columnFilters[e];if(n===`numberSet`){let e=_t(r)?r.condition:null;return!e&&!t?null:{kind:`numberSet`,condition:e,set:t}}if(n===`textSet`){let e=vt(r)?r.condition:null;return!e&&!t?null:{kind:`textSet`,condition:e,set:t}}if(n===`dateSet`){let e=yt(r)?r.condition:null;return!e&&!t?null:{kind:`dateSet`,condition:e,set:t}}return null},[K,H.filters.columnFilters,q]),Xl=q===`numberSet`||q===`textSet`||q===`dateSet`,Zl=(0,e.useCallback)((e,t,n)=>{let r=K?.key===e&&Xl,i=t.mode===`include`?t.values.size:n-t.values.size;if(i>=n){if(r){let t=Yl(e,null);if(t){U(v.setColumnFilter(e,t));return}}U(v.clearColumnFilter(e));return}let a=i<=0?{mode:`include`,values:[]}:{mode:t.mode,values:Array.from(t.values)};if(r){let t=Yl(e,a);if(t){U(v.setColumnFilter(e,t));return}}let o={kind:`set`,...a};U(v.setColumnFilter(e,o))},[U,K,Xl,Yl]),Ql=(0,e.useCallback)(e=>{if(!G)return;let t=Wl.length,n=ql,r;r=Os(n,e)?n===null?Jl?{mode:`exclude`,values:new Set([e])}:{mode:`include`,values:xl(Gl,e)}:n.mode===`include`?{mode:`include`,values:xl(n.values,e)}:{mode:`exclude`,values:bl(n.values,e)}:n.mode===`include`?{mode:`include`,values:bl(n.values,e)}:{mode:`exclude`,values:xl(n.values,e)},Zl(G.columnKey,r,t)},[G,ql,Jl,Gl,Wl,Zl]),$l=(0,e.useCallback)((e,t)=>{if(!G)return;let n=G.columnKey,r=Wl.length;if(e===`all`){Zl(n,t?{mode:`exclude`,values:new Set}:{mode:`include`,values:new Set},r);return}let i=ql,a;if(t){if(i===null){Zl(n,{mode:`exclude`,values:new Set},r);return}a=i.mode===`include`?{mode:`include`,values:Sl(i.values,e)}:{mode:`exclude`,values:Cl(i.values,e)}}else a=i===null?Jl?{mode:`exclude`,values:new Set(e)}:{mode:`include`,values:Cl(Gl,e)}:i.mode===`include`?{mode:`include`,values:Cl(i.values,e)}:{mode:`exclude`,values:Sl(i.values,e)};Zl(n,a,r)},[G,ql,Jl,Gl,Wl,Zl]),eu=(0,e.useCallback)(e=>{G&&Zl(G.columnKey,{mode:`include`,values:new Set(e)},Wl.length)},[G,Zl,Wl]),tu=(0,e.useCallback)(()=>{G&&(U(v.clearColumnFilter(G.columnKey)),q===`numberSet`&&ki(Gt),q===`textSet`&&Ai(en),q===`dateSet`&&ji(cn))},[U,G,ki,Ai,ji,q]),nu=(0,e.useCallback)(e=>{let t=H.filters.columnFilters[e];return _t(t)||vt(t)||yt(t)?t.set:gt(t)?{mode:t.mode,values:t.values}:null},[H.filters.columnFilters]),ru=(0,e.useCallback)(e=>{if(ki(e),!G||q!==`numberSet`)return;let t=G.columnKey,n=Jt(e),r=nu(t);if(!n&&!r){H.filters.columnFilters[t]&&U(v.clearColumnFilter(t));return}U(v.setColumnFilter(t,{kind:`numberSet`,condition:n,set:r}))},[ki,G,nu,H.filters.columnFilters,U,q]),iu=(0,e.useCallback)(e=>{if(Ai(e),!G||q!==`textSet`)return;let t=G.columnKey,n=rn(e),r=nu(t);if(!n&&!r){H.filters.columnFilters[t]&&U(v.clearColumnFilter(t));return}U(v.setColumnFilter(t,{kind:`textSet`,condition:n,set:r}))},[Ai,G,nu,H.filters.columnFilters,U,q]),au=(0,e.useCallback)(e=>{if(ji(e),!G||q!==`dateSet`)return;let t=G.columnKey,n=pn(e),r=nu(t);if(!n&&!r){H.filters.columnFilters[t]&&U(v.clearColumnFilter(t));return}U(v.setColumnFilter(t,{kind:`dateSet`,condition:n,set:r}))},[ji,G,nu,H.filters.columnFilters,U,q]),ou=(0,e.useCallback)(()=>{if(q===`textSet`){iu(en);return}if(q===`dateSet`){au(cn);return}ru(Gt)},[iu,au,ru,q]),su=(0,e.useCallback)(()=>{if(!G)return;let e=G.columnKey,t=Yl(e,null);if(t){U(v.setColumnFilter(e,t));return}U(v.clearColumnFilter(e))},[G,Yl,U]),cu=(0,e.useCallback)(()=>{if(!G)return;let e=q??`text`;if(e===`set`||e===`numberSet`||e===`textSet`||e===`dateSet`){Ei();return}if(e===`number`){let e=G.numberDraft?Yt(G.numberDraft):null;if(!e){U(v.clearColumnFilter(G.columnKey)),Ei();return}U(v.setColumnFilter(G.columnKey,e)),Ei();return}let t=e===`select`?G.draftValue:G.draftValue.trim();if(!t){U(v.clearColumnFilter(G.columnKey)),Ei();return}let n=e===`select`?{kind:`select`,value:t}:e===`date`?{kind:`date`,value:t}:e===`custom`?{kind:`custom`,value:t}:{kind:`text`,value:t};U(v.setColumnFilter(G.columnKey,n)),Ei()},[Ei,U,G,q]),lu=(0,e.useCallback)(()=>{G&&(U(v.clearColumnFilter(G.columnKey)),Ei())},[Ei,U,G]),uu=(0,e.useCallback)((e,t)=>{if(J(),!We)return;let n=ni(H.sort,e,t,!1);U(n.length===0?v.clearSort():v.setSort(n))},[J,U,We,H.sort]),du=(0,e.useCallback)((e,t)=>{if(!We)return;let n=ri(H.sort,e,t);U(v.setSort(n))},[U,We,H.sort]),fu=(0,e.useCallback)((e,t)=>{if(!We)return;let n=ii(H.sort,e,t);U(v.setSort(n))},[U,We,H.sort]),pu=(0,e.useCallback)((e,t)=>{if(!We)return;let n=ai(H.sort,e,t);U(v.setSort(n))},[U,We,H.sort]),mu=(0,e.useCallback)(e=>{if(!We)return;let t=oi(H.sort,e);U(t.length===0?v.clearSort():v.setSort(t))},[U,We,H.sort]),hu=(0,e.useCallback)(()=>{We&&U(v.clearSort())},[U,We]),gu=(0,e.useCallback)((e,t)=>{if(!We)return;let n=si(H.sort,e,t);U(v.setSort(n))},[U,We,H.sort]),_u=H.expandedDetailRowKeys,vu=(0,e.useCallback)((e,t,n,a,o)=>{let s=F(e,n);if(n.key===`__ssg_row_drag_handle__`){if(It){let n=X.getSourceIndex(t)??t;if(!It(e,{rowKey:X.getRowKey(t)??t,sourceRowIndex:n}))return null}return(0,r.jsx)(`span`,{className:i(`ssg-row-drag-handle`,!fa&&`ssg-row-drag-handle--disabled`),"data-ssg-tooltip":fa?Bn:zn,"aria-hidden":`true`,onPointerDown:fa?e=>sl(t,e):void 0,children:(0,r.jsxs)(`svg`,{width:`8`,height:`14`,viewBox:`0 0 8 14`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:[(0,r.jsx)(`circle`,{cx:`2`,cy:`3`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`3`,r:`1`}),(0,r.jsx)(`circle`,{cx:`2`,cy:`7`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`7`,r:`1`}),(0,r.jsx)(`circle`,{cx:`2`,cy:`11`,r:`1`}),(0,r.jsx)(`circle`,{cx:`6`,cy:`11`,r:`1`})]})})}if(n.renderCell){let r=X.getSourceIndex(t)??t,i=X.getRowKey(t)??t,c=pr?{expanded:_u.has(i),expandable:ko?ko(e,{rowKey:i,sourceRowIndex:r}):!0,toggle:()=>_r(i,t),setExpanded:e=>vr(i,t,e)}:void 0;return n.renderCell({row:e,rowIndex:t,sourceRowIndex:r,rowKey:i,colIndex:a,...c?{detail:c}:null,value:s,column:n,isActive:o.isActive,isSelected:o.isSelected,isEditing:o.isEditing,readOnly:o.readOnly,setValue:r=>{if(hr(n,e,r).action===`reject`)return;if(ja){ja([{viewIndex:t,column:n,value:r}]);return}if(!Bs)return;let i=X.getSourceIndex(t);if(i===void 0)return;let a=ct(I,i,n,r);Bs(a)}})}return n.editor?.type===`checkbox`?(0,r.jsx)(Ts,{slot:Q.checkbox,checked:$e(s,n.editor),readOnly:o.readOnly,onToggle:()=>tc({row:t,col:a})}):(0,r.jsx)(`span`,{children:n.valueFormatter?n.valueFormatter({value:s,row:e,column:n}):String(s??``)})},[X,Bs,I,tc,Q.checkbox,ja,pr,_u,ko,_r,vr,It,fa,sl]),{slotContext:yu}=Br({rows:I,viewRowCount:Va,getFilteredRows:qa,columns:L,visibleColumns:z,uiState:H,setGlobalFilterText:(0,e.useCallback)(e=>{U(v.setGlobalFilter(e))},[U]),globalFilterStatus:oa,globalFilterProgress:sa}),bu=(0,e.useMemo)(()=>({width:j,minWidth:j}),[j]),xu=Z===0,Su=(e,t,n)=>({position:`sticky`,...e===`left`?{left:0}:{right:0},width:t,minWidth:t,flexShrink:0,alignSelf:`stretch`,zIndex:2,...n?e===`left`?{borderRight:`1px solid var(--ssg-pane-border)`,boxShadow:`var(--ssg-pane-shadow-left)`}:{borderLeft:`1px solid var(--ssg-pane-border)`,boxShadow:`var(--ssg-pane-shadow-right)`}:{}}),Cu=(()=>{if(!K)return`(なし)`;let e=H.filters.columnFilters[K.key];if(gt(e))return e.mode===`exclude`?`${e.values.length}件を除外中`:`${e.values.length}件を選択中`;if(Pt(e))return e.raw;let t=Ft(e);return t.trim()?t:`(なし)`})(),wu=K?pt(K.dateFilterPresets):void 0,Tu=Kl&&xt(Kl)?Na(Kl,wu):`フィルターなし`,Eu=K?(0,r.jsx)(Ws,{popoverSlot:Q.popover,themeClassName:ns,isOpen:!!G,title:K.title||K.key,filterType:q??`text`,isServerSide:V,draftValue:G?.draftValue??``,numberConditionDraft:G?.numberDraft??null,onNumberConditionDraftChange:ru,textConditionDraft:G?.textDraft??null,onTextConditionDraftChange:iu,dateConditionDraft:G?.dateDraft??null,onDateConditionDraftChange:au,datePresets:wu,renderDateInput:Ue?e=>Ue({...e,columnKey:K.key}):void 0,onComboConditionClear:ou,onComboSelectionClear:su,comboSummaryText:Tu,currentValueText:Cu,layout:yi,selectOptions:Wl,setSelection:ql,optionsStatus:Vl,optionsProgress:Hl,popoverRef:bi,textInputRef:xi,selectRef:Si,onRequestClose:Ei,onDraftChange:Oi,onApply:cu,onClear:lu,onSetValueToggle:Ql,onSetSelectAllChange:$l,onSetClear:tu,onSetReplaceSelection:eu}):null,Du=Ii?(0,r.jsx)(wc,{slots:Q,themeClassName:ns,isOpen:Pi,title:Ii.title||Ii.key,columnKey:Ii.key,canFilter:bn&&!!Ii.filterType,onOpenFilter:()=>Pc(Ii),canSort:yn,sortDirection:H.sort.find(e=>e.columnKey===Ii.key)?.direction??null,onSortChange:e=>uu(Ii.key,e),onOpenSortManager:Mc,canManageFilters:bn,onOpenFilterManager:Rc,pinned:Ii.pinned,canChangePinned:!!d,layout:Mi,popoverRef:Ni,onPinnedChange:Ec,onAutosizeColumn:Dc,onAutosizeAllColumns:Oc,onOpenColumnChooser:Ac,canResetColumns:!!d,onResetColumns:Ll,onRequestClose:J}):null,Ou=xn&&ta.trim().length>0,ku=Fc.length+ +!!Ou,Au=Vi.map(e=>e===`filter`?{tab:e,label:`フィルター`,badge:ku}:e===`sort`?{tab:e,label:`並び替え`,badge:H.sort.length}:{tab:e,label:`列`}),ju=(0,r.jsx)(Lc,{popoverSlot:Q.popover,themeClassName:ns,activeTab:Bi,flashTick:Ui,tabs:Au,layout:Hi,panelRef:Wi,onSelectTab:Gi,onRequestClose:Ki,onPanelMove:qi,children:Bi===null?null:{filter:()=>(0,r.jsx)(Xc,{entries:Fc,addableColumns:Ic,showGlobalFilterRow:Ou,globalFilterText:ta,canFilter:bn,onEditFilter:Bc,onAddFilter:Bc,onClearFilter:Vc,onClearAllFilters:Hc,onClearGlobalFilter:Uc}),columns:()=>(0,r.jsx)(Gc,{items:kc,canToggle:!!d,onToggleColumnVisibility:Wc,onShowAllColumns:Kc,onHideAllColumns:Jc,onResetColumns:Il,onReorderColumns:$c}),sort:()=>(0,r.jsx)(qc,{entries:H.sort,columns:jc,canSort:yn,onAddLevel:du,onChangeDirection:fu,onChangeColumn:pu,onRemoveLevel:mu,onClearAll:hu,onMove:gu})}[Bi]()}),Mu=(0,r.jsx)(yl,{slots:Q,themeClassName:ns,isOpen:Zi,items:Ji?.items??Al,layout:Yi,popoverRef:Xi,onRequestClose:ea}),Nu=Ci||Pi||Bi!==null||Zi,Pu=st,Fu=ut&&xn,Iu=Pu||Fu?(0,r.jsx)(Js,{slot:Q.toolbar,context:yu,showSummary:Pu,showFilter:Fu,showCounts:mt,globalFilterPlaceholder:dt,globalFilterIcon:ft,onFilterSummaryClick:bn?zc:void 0}):null,Lu=at?Dr(wt,yu,Iu):null,Ru=ot?Dr(Tt,yu,(0,r.jsx)(Gs,{slot:Q.statusBar,context:yu,showCounts:bt})):null,zu=te===void 0&&N===void 0?void 0:{...te===void 0?{}:{height:te},maxHeight:N??(te===void 0?void 0:`none`)},$=(0,e.useRef)(null);$.current={dispatch:U,rowModel:X,viewRowCount:Z,leafRowCount:Va,groupTree:pa,rowMetrics:Mo,paneLayout:W,orderedColumns:B,columns:L,onColumnsChange:d,uiState:H,headerHeight:R,verticalScaleFactor:Ko,leftPaneTotalWidth:Xr,rightPaneTotalWidth:Zr,centerLeadingWidth:Jr,windowFirstRow:Ho,windowLastRow:Uo,physicalBodyHeight:Wo,rows:I,isServerSide:V,serverSideRefresh:Y.refresh,resolvedRowKeyGetter:vn,isRowExportable:p,openFilterManager:()=>{Gi(`filter`)},closeFilterManager:()=>{Bi===`filter`&&Ki()},undoRows:Vs,redoRows:Hs,canUndoRows:Us,canRedoRows:Ks,clearUndoHistory:qs,detailRowEnabled:At!=null,detailIsExpandable:ko,moveRowByKey:ol};let Bu=(0,e.useCallback)((e,t,n=`auto`)=>{let r=Math.max(e.scrollHeight-e.clientHeight,0),i=Math.max(e.scrollWidth-e.clientWidth,0),a=Math.min(Math.max(t.top,0),r),o=Math.min(Math.max(t.left,0),i);(Math.round(a)!==Math.round(e.scrollTop)||Math.round(o)!==Math.round(e.scrollLeft))&&($a.current+=1),e.scrollTo({top:a,left:o,behavior:n})},[]),Vu=(0,e.useCallback)((e,t)=>{let n=an.current,r=$.current;!n||!r||Bu(n,{top:e===null?n.scrollTop:gi(e,r.verticalScaleFactor),left:t===null?n.scrollLeft:t})},[Bu]),Hu=(0,e.useCallback)((e,t)=>{let n=an.current,r=$.current;if(!n||!r||r.viewRowCount===0)return null;let i=Math.min(Math.max(e,0),r.viewRowCount-1);return ho({rowTop:r.rowMetrics.rowTop(i),rowHeight:r.rowMetrics.cellHeight(i),headerHeight:r.headerHeight,viewportHeight:n.clientHeight,currentScrollTop:hi(n.scrollTop,r.verticalScaleFactor),align:t})},[]),Uu=(0,e.useCallback)((e,t)=>{let n=an.current,r=$.current;if(!n||!r)return null;let i=re(r.paneLayout,e);return!i||i.pane!==`center`?null:go({cellLeft:r.leftPaneTotalWidth+r.centerLeadingWidth+i.extent.start,cellWidth:i.extent.width,leftPaneWidth:r.leftPaneTotalWidth,rightPaneWidth:r.rightPaneTotalWidth,viewportWidth:n.clientWidth,currentScrollLeft:n.scrollLeft,align:t})},[]),Wu=(0,e.useCallback)((e,t,n)=>{Vu(Hu(e,n),Uu(t,n))},[Vu,Uu,Hu]);(0,e.useEffect)(()=>{Ls.current=Wu},[Wu]),(0,e.useImperativeHandle)(Ht,()=>{let e=e=>{let t=$.current;if(!t)return null;let n=e=>t.rowModel.getRow(e),r=t.isRowExportable,i=r?(e,n)=>r(e,{viewRowIndex:n,rowKey:t.rowModel.getRowKey(n)??n}):void 0,a=r?(e,n)=>r(e,{viewRowIndex:n,rowKey:t.resolvedRowKeyGetter(e,n)}):void 0,o=Xa(e);if(o===`raw`)return t.isServerSide?(console.warn(`SpreadsheetGrid: scope 'raw' は serverSide では未ロード行を取得できないため、'view'(ロード済みビュー行)として扱います。全件エクスポートはサーバ側での実施を推奨します。`),{getRow:n,startRow:0,endRow:t.viewRowCount,columns:t.orderedColumns,isRowIncluded:i}):{getRow:e=>t.rows[e],startRow:0,endRow:t.rows.length,columns:t.orderedColumns,isRowIncluded:a};if(o===`rendered`)return{getRow:n,startRow:t.windowFirstRow,endRow:t.windowLastRow>=t.windowFirstRow?t.windowLastRow+1:t.windowFirstRow,columns:t.orderedColumns,isRowIncluded:i};if(o===`selection`){let e=t.uiState.selection;if(!e)return null;if(e.type===`cell`){let r=De(e.range);return{getRow:n,startRow:r.start.row,endRow:r.end.row+1,columns:t.orderedColumns.slice(r.start.col,r.end.col+1),isRowIncluded:i}}if(e.type===`row`){let r=Oe(e.startRow,e.endRow);return{getRow:n,startRow:r.startRow,endRow:r.endRow+1,columns:t.orderedColumns,isRowIncluded:i}}let r=ke(e.startCol,e.endCol);return{getRow:n,startRow:0,endRow:t.viewRowCount,columns:t.orderedColumns.slice(r.startCol,r.endCol+1),isRowIncluded:i}}return{getRow:n,startRow:0,endRow:t.viewRowCount,columns:t.orderedColumns,isRowIncluded:i}},t=e=>e.filter(e=>!Hn(e.key)),n=n=>{let r=e(n?.scope??`view`);return r?Ja({getRow:r.getRow,startRow:r.startRow,endRow:r.endRow,columns:t(r.columns),delimiter:n?.delimiter,includeHeaders:n?.includeHeaders,bom:n?.bom,isRowIncluded:r.isRowIncluded}):n?.bom?``:``},r=n=>{let r=e(n?.scope??`view`);return r?Ya({getRow:r.getRow,startRow:r.startRow,endRow:r.endRow,columns:t(r.columns),isRowIncluded:r.isRowIncluded}):{columns:[],rows:[]}};return{scrollToRow:(e,t)=>Vu(Hu(e,t?.align??`auto`),null),scrollToCell:(e,t,n)=>Wu(e,t,n?.align??`auto`),scrollToTop:()=>{let e=an.current;e&&Bu(e,{top:0,left:e.scrollLeft})},scrollToBottom:()=>{let e=an.current,t=$.current;!e||!t||Bu(e,{top:Math.max(t.headerHeight+t.physicalBodyHeight-e.clientHeight,0),left:e.scrollLeft})},getScrollPosition:()=>{let e=an.current;return e?{top:e.scrollTop,left:e.scrollLeft}:null},setScrollPosition:(e,t)=>{let n=an.current;n&&Bu(n,{top:e.top??n.scrollTop,left:e.left??n.scrollLeft},t?.behavior??`auto`)},getVisibleRowRange:()=>{let e=$.current;return!e||e.windowLastRow<e.windowFirstRow?null:{startIndex:e.windowFirstRow,endIndex:e.windowLastRow+1}},getActiveCell:()=>{let e=$.current?.uiState.activeCell;return e?{row:e.row,col:e.col}:null},setActiveCell:(e,t)=>{let n=$.current;n&&(n.dispatch(v.activateCell(e)),e&&t?.scrollIntoView&&Wu(e.row,e.col,`auto`))},getSelection:()=>$.current?.uiState.selection??null,selectCell:(e,t,n)=>{let r=$.current;if(!r)return;let i={row:e,col:t};r.dispatch(v.startSelection(i)),r.dispatch(v.endSelection()),n?.scrollIntoView&&Wu(e,t,`auto`)},selectRange:(e,t)=>{let n=$.current;n&&(n.dispatch(v.startSelection(e.start)),n.dispatch(v.updateSelection(e.end)),n.dispatch(v.endSelection()),t?.scrollIntoView&&Wu(e.end.row,e.end.col,`auto`))},clearSelection:()=>{$.current?.dispatch(v.clearSelection())},getSelectedRows:()=>{let e=$.current;if(!e)return[];let t=e.uiState.selection;if(!t)return[];let n=[],r=t=>{let r=e.rowModel.getRow(t);r&&n.push(r)};if(t.type===`cell`){let e=De(t.range);for(let t=e.start.row;t<=e.end.row;t+=1)r(t)}else if(t.type===`row`){let e=Oe(t.startRow,t.endRow);for(let t=e.startRow;t<=e.endRow;t+=1)r(t)}else for(let t=0;t<e.viewRowCount;t+=1)r(t);return n},exportCsv:e=>n(e),downloadCsv:(e,t)=>{if(typeof document>`u`)return;let r=n({...t,bom:t?.bom??!0}),i=new Blob([r],{type:`text/csv;charset=utf-8;`}),a=URL.createObjectURL(i),o=document.createElement(`a`);o.href=a,o.download=e??`export.csv`,document.body.appendChild(o),o.click(),document.body.removeChild(o),URL.revokeObjectURL(a)},getExportData:e=>r(e),getState:()=>{let e=$.current;return e?to(e.uiState.columnWidths,e.uiState.filters,e.uiState.sort,eo(e.columns)):to({},{globalText:``,columnFilters:{}},[],[])},applyState:e=>{let t=$.current;if(!t)return;let n=no(e);t.onColumnsChange&&n.columns&&t.onColumnsChange(ro(t.columns,n.columns,n.columnWidths)),t.dispatch(v.resetColumnWidths(n.columnWidths)),t.dispatch(v.setAllFilters(n.filters)),t.dispatch(v.setSort(n.sort))},getRowSelection:()=>{let e=$.current;return e?me(e.uiState.rowSelection):{type:`include`,rowKeys:[]}},setRowSelection:e=>{_s.current(he(e))},getSelectedRowKeys:()=>{let e=$.current;if(!e)return[];let t=e.uiState.rowSelection;if(t.mode===`include`)return Array.from(t.keys);let n=[],r=e.rowModel.getRowCount();for(let i=0;i<r;i+=1){if(!e.rowModel.getRow(i))continue;let r=e.rowModel.getRowKey(i)??i;t.keys.has(r)||n.push(r)}return n},getSelectedRowData:()=>{let e=$.current;if(!e)return[];let t=e.uiState.rowSelection,n=[],r=e.rowModel.getRowCount();for(let i=0;i<r;i+=1){let r=e.rowModel.getRow(i);r&&oe(t,e.rowModel.getRowKey(i)??i)&&n.push(r)}return n},getSelectedRowCount:()=>{let e=$.current;return e?fe(e.uiState.rowSelection,e.leafRowCount):0},isRowSelected:e=>{let t=$.current;return t?oe(t.uiState.rowSelection,e):!1},selectAllRows:()=>{_s.current(ue())},clearRowSelection:()=>{_s.current(de())},undo:()=>{$.current?.undoRows()},redo:()=>{$.current?.redoRows()},canUndo:()=>$.current?.canUndoRows()??!1,canRedo:()=>$.current?.canRedoRows()??!1,clearUndoHistory:()=>{$.current?.clearUndoHistory()},setGroupCollapsed:(e,t)=>{$.current?.dispatch(v.setGroupCollapsed(e,t))},expandAllGroups:()=>{$.current?.dispatch(v.setCollapsedGroupKeys(new Set))},collapseAllGroups:()=>{let e=$.current;!e||!e.groupTree||e.dispatch(v.setCollapsedGroupKeys(new Set(jn(e.groupTree))))},getGroupRows:()=>{let e=$.current;return e?.groupTree?An(e.groupTree):[]},setDetailRowExpanded:(e,t)=>{let n=$.current;if(!(!n||!n.detailRowEnabled)){if(t&&n.detailIsExpandable){let t=qn(n.rowModel,e,mr.current,!n.isServerSide);if(t>=0){let r=n.rowModel.getRow(t);if(r!=null&&!n.detailIsExpandable(r,{rowKey:e,sourceRowIndex:n.rowModel.getSourceIndex(t)}))return}}n.dispatch(v.setDetailRowExpanded(e,t))}},getExpandedDetailRowKeys:()=>{let e=$.current;return e&&e.detailRowEnabled?Array.from(e.uiState.expandedDetailRowKeys):[]},collapseAllDetailRows:()=>{let e=$.current;!e||!e.detailRowEnabled||e.dispatch(v.setExpandedDetailRowKeys(new Set))},moveRow:(e,t)=>{$.current?.moveRowByKey(e,t)},getInvalidCells:()=>{let e=$.current;return e?e.isServerSide?(console.warn(`[SpreadsheetGrid] getInvalidCells は serverSide モードでは利用できません(空配列を返します)。`),[]):gr(e.rows,e.columns,e.resolvedRowKeyGetter):[]},refreshServerSide:()=>{let e=$.current;if(e){if(!e.isServerSide){console.warn(`[SpreadsheetGrid] refreshServerSide は clientSide(rows)モードでは何もしません(dataSource 指定時のみ有効です)。`);return}e.serverSideRefresh()}},openFilterManager:()=>{$.current?.openFilterManager()},closeFilterManager:()=>{$.current?.closeFilterManager()}}},[Bu,Vu,Wu,Hu]);let Gu=(0,e.useRef)(Ut);Gu.current=Ut;let Ku=(0,e.useRef)(null);return(0,e.useEffect)(()=>{if(!Gu.current)return;let e=to(H.columnWidths,H.filters,H.sort,eo(L)),t=mo(Ku.current,e,H.dragState!==null);Ku.current=t.nextLast,t.emit&&Gu.current(e)},[H.columnWidths,H.filters,H.sort,H.dragState,L]),(0,r.jsxs)(`div`,{className:i(`ssg-root`,A!==`standard`&&`ssg-root--density-${A}`,ns,_e&&`ssg-root--dim-readonly`,Et,Q.root?.className),style:s(Q.root?.style,Dt),children:[Lu,Ct&&(0,r.jsx)(Zc,{slot:Q.filterChipBar,entries:Fc,canFilter:bn,onEditFilter:Bc,onClearFilter:Vc,onClearAllFilters:Hc}),(0,r.jsxs)(`div`,{ref:Zt,className:`ssg-shell`,style:{cursor:Ia?`progress`:void 0},onDragStart:Ms,onPointerLeave:()=>cr(null),onPointerMoveCapture:e=>{Qt.current={x:e.clientX,y:e.clientY},Ds(e.clientX,e.clientY)},tabIndex:Nu?-1:0,onKeyDown:Nu?void 0:nc,onPaste:Nu?void 0:Qs,onContextMenu:Pa,children:[(0,r.jsxs)(`div`,{ref:an,className:i(`ssg-scroll-container`,Ka?.scrollbar===!0&&`ssg-scroll-container--custom-scrollbar`),style:zu,children:[(0,r.jsxs)(`div`,{className:`ssg-inner-row`,style:{width:ei,minWidth:ei,height:R+Wo},children:[(0,r.jsxs)(`div`,{ref:on,style:Su(`left`,Xr,Wr),children:[Wr&&(0,r.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:Xr,minWidth:Xr,height:R+Wo},children:[(0,r.jsx)(fc,{pane:`left`,ownsRowHeader:!0,leadingWidth:qr,headerHeight:R,rowHeaderCellStyle:bu,slots:Q,isCornerHovered:Qn,isWholeGridSelected:Xs,showSelectAllCheckbox:ss,selectAllState:ls,filteredRowsLength:Z,visibleColumnsLength:z.length,renderEntries:Xo,hoveredColumnIndex:Zn,selectionSnapshot:Sr,columnFilterValues:H.filters.columnFilters,sortState:H.sort,onCornerPointerDown:yc,onCornerPointerEnter:Sc,onCornerPointerLeave:Cc,onColumnHeaderPointerDown:Fs,onColumnHeaderPointerEnter:Is,onColumnHeaderPointerLeave:xc,onColumnResizePointerDown:Tc,enableColumnMenu:nt,enableColumnResize:Ge,openedMenuColumnKey:Fi,onColumnMenuButtonPointerDown:Li,onColumnMenuButtonClick:Ri,onColumnHeaderContextMenu:zi,onColumnDragHandlePointerDown:gl}),(0,r.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:Xr,height:R+Wo,transform:Go},children:[(_c(`left`)??[gc(`left`)]).map((e,t)=>(0,r.jsx)(Me,{slot:Q.selectionOverlay,rect:e,headerHeight:R,baseOffset:Jo,leadingWidth:qr},t)),(0,r.jsx)(Ne,{slot:Q.activeCellOverlay,rect:es(`left`),headerHeight:R,baseOffset:Jo,leadingWidth:qr}),(0,r.jsx)(lt,{slots:Q,rect:ts(`left`),headerHeight:R,baseOffset:Jo,leadingWidth:qr,initialValue:ln,editor:sc?.editor,editorSession:uc,themeClassName:ns,onCommit:ic,onCancel:ac,align:sc?.align,enterMove:Se}),(0,r.jsx)(oc,{pane:`left`,ownsRowHeader:!0,leadingWidth:qr,rowModel:X,virtualRows:Fo,virtualRowIndexes:Io,renderEntries:Xo,rowHeight:qt,autoHeight:uo,showCellOverflowTooltip:qe,showValidationMarks:Je,isServerSide:V,collapsedGroupKeys:H.collapsedGroupKeys,onGroupToggle:ha,rowHeaderCellStyle:bu,hoveredRowIndex:lr,isWholeGridSelected:Xs,enableRowSelection:Fe,rowSelectionState:cs,activeCell:H.activeCell,editingCell:H.editingCell,selectionSnapshot:Sr,readOnly:P,canEditCell:ka,onRowHeaderPointerDown:Ns,onRowHeaderPointerEnter:Ps,onRowHeaderPointerLeave:bc,onCellPointerDown:ks,onCellPointerEnter:js,onCellDoubleClick:As,renderCellContent:vu,getRowClassName:kt,slots:Q}),(0,r.jsx)(lc,{slots:Q,entries:Lo,mode:`band`,paneWidth:Xr,baseOffset:Jo,cardStickyLeft:0,cardWidth:0,renderCard:zo}),gn&&(0,r.jsx)(`div`,{ref:cl,className:`ssg-row-drop-indicator ssg-row-drop-indicator--cap`})]})]}),(0,r.jsx)(`div`,{ref:tl,className:`ssg-col-drop-indicator`,style:_l})]}),(0,r.jsx)(`div`,{ref:tn,className:`ssg-center-pane`,style:{width:Qr,minWidth:Qr},children:(0,r.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:Qr,minWidth:Qr,height:R+Wo},children:[(0,r.jsx)(fc,{pane:`center`,ownsRowHeader:Kr,leadingWidth:Jr,headerHeight:R,rowHeaderCellStyle:bu,slots:Q,isCornerHovered:Qn,isWholeGridSelected:Xs,showSelectAllCheckbox:ss,selectAllState:ls,filteredRowsLength:Z,visibleColumnsLength:z.length,renderEntries:Yo,hoveredColumnIndex:Zn,selectionSnapshot:Sr,columnFilterValues:H.filters.columnFilters,sortState:H.sort,onCornerPointerDown:yc,onCornerPointerEnter:Sc,onCornerPointerLeave:Cc,onColumnHeaderPointerDown:Fs,onColumnHeaderPointerEnter:Is,onColumnHeaderPointerLeave:xc,onColumnResizePointerDown:Tc,enableColumnMenu:nt,enableColumnResize:Ge,openedMenuColumnKey:Fi,onColumnMenuButtonPointerDown:Li,onColumnMenuButtonClick:Ri,onColumnHeaderContextMenu:zi,onColumnDragHandlePointerDown:gl}),(0,r.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:Qr,height:R+Wo,transform:Go},children:[(_c(`center`)??[gc(`center`)]).map((e,t)=>(0,r.jsx)(Me,{slot:Q.selectionOverlay,rect:e,headerHeight:R,baseOffset:Jo,leadingWidth:Jr},t)),(0,r.jsx)(Ne,{slot:Q.activeCellOverlay,rect:es(`center`),headerHeight:R,baseOffset:Jo,leadingWidth:Jr}),(0,r.jsx)(lt,{slots:Q,rect:ts(`center`),headerHeight:R,baseOffset:Jo,leadingWidth:Jr,initialValue:ln,editor:sc?.editor,editorSession:uc,themeClassName:ns,onCommit:ic,onCancel:ac,align:sc?.align,enterMove:Se}),(0,r.jsx)(oc,{pane:`center`,ownsRowHeader:Kr,leadingWidth:Jr,rowModel:X,virtualRows:Fo,virtualRowIndexes:Io,renderEntries:Yo,rowHeight:qt,autoHeight:uo,showCellOverflowTooltip:qe,showValidationMarks:Je,isServerSide:V,collapsedGroupKeys:H.collapsedGroupKeys,onGroupToggle:ha,rowHeaderCellStyle:bu,hoveredRowIndex:lr,isWholeGridSelected:Xs,enableRowSelection:Fe,rowSelectionState:cs,activeCell:H.activeCell,editingCell:H.editingCell,selectionSnapshot:Sr,readOnly:P,canEditCell:ka,onRowHeaderPointerDown:Ns,onRowHeaderPointerEnter:Ps,onRowHeaderPointerLeave:bc,onCellPointerDown:ks,onCellPointerEnter:js,onCellDoubleClick:As,renderCellContent:vu,getRowClassName:kt,slots:Q}),(0,r.jsx)(lc,{slots:Q,entries:Lo,mode:`center`,paneWidth:Qr,baseOffset:Jo,cardStickyLeft:Bo,cardWidth:Vo,cardSlot:rs,renderCard:zo}),gn&&(0,r.jsx)(`div`,{ref:pl,className:i(`ssg-row-drop-indicator`,Kr&&`ssg-row-drop-indicator--cap`)})]}),(0,r.jsx)(`div`,{ref:nl,className:`ssg-col-drop-indicator`,style:_l})]})}),(0,r.jsxs)(`div`,{ref:sn,style:Su(`right`,Zr,Gr),children:[Gr&&(0,r.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:Zr,minWidth:Zr,height:R+Wo},children:[(0,r.jsx)(fc,{pane:`right`,ownsRowHeader:!1,leadingWidth:0,headerHeight:R,rowHeaderCellStyle:bu,slots:Q,isCornerHovered:Qn,isWholeGridSelected:Xs,showSelectAllCheckbox:ss,selectAllState:ls,filteredRowsLength:Z,visibleColumnsLength:z.length,renderEntries:Zo,hoveredColumnIndex:Zn,selectionSnapshot:Sr,columnFilterValues:H.filters.columnFilters,sortState:H.sort,onCornerPointerDown:yc,onCornerPointerEnter:Sc,onCornerPointerLeave:Cc,onColumnHeaderPointerDown:Fs,onColumnHeaderPointerEnter:Is,onColumnHeaderPointerLeave:xc,onColumnResizePointerDown:Tc,enableColumnMenu:nt,enableColumnResize:Ge,openedMenuColumnKey:Fi,onColumnMenuButtonPointerDown:Li,onColumnMenuButtonClick:Ri,onColumnHeaderContextMenu:zi,onColumnDragHandlePointerDown:gl}),(0,r.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:Zr,height:R+Wo,transform:Go},children:[(_c(`right`)??[gc(`right`)]).map((e,t)=>(0,r.jsx)(Me,{slot:Q.selectionOverlay,rect:e,headerHeight:R,baseOffset:Jo,leadingWidth:0},t)),(0,r.jsx)(Ne,{slot:Q.activeCellOverlay,rect:es(`right`),headerHeight:R,baseOffset:Jo,leadingWidth:0}),(0,r.jsx)(lt,{slots:Q,rect:ts(`right`),headerHeight:R,baseOffset:Jo,leadingWidth:0,initialValue:ln,editor:sc?.editor,editorSession:uc,themeClassName:ns,onCommit:ic,onCancel:ac,align:sc?.align,enterMove:Se}),(0,r.jsx)(oc,{pane:`right`,ownsRowHeader:!1,leadingWidth:0,rowModel:X,virtualRows:Fo,virtualRowIndexes:Io,renderEntries:Zo,rowHeight:qt,autoHeight:uo,showCellOverflowTooltip:qe,showValidationMarks:Je,isServerSide:V,collapsedGroupKeys:H.collapsedGroupKeys,onGroupToggle:ha,rowHeaderCellStyle:bu,hoveredRowIndex:lr,isWholeGridSelected:Xs,enableRowSelection:Fe,rowSelectionState:cs,activeCell:H.activeCell,editingCell:H.editingCell,selectionSnapshot:Sr,readOnly:P,canEditCell:ka,onRowHeaderPointerDown:Ns,onRowHeaderPointerEnter:Ps,onRowHeaderPointerLeave:bc,onCellPointerDown:ks,onCellPointerEnter:js,onCellDoubleClick:As,renderCellContent:vu,getRowClassName:kt,slots:Q}),(0,r.jsx)(lc,{slots:Q,entries:Lo,mode:`band`,paneWidth:Zr,baseOffset:Jo,cardStickyLeft:0,cardWidth:0,renderCard:zo}),gn&&(0,r.jsx)(`div`,{ref:ml,className:`ssg-row-drop-indicator`})]})]}),(0,r.jsx)(`div`,{ref:rl,className:`ssg-col-drop-indicator`,style:_l})]})]}),xu&&(0,r.jsx)(`div`,{className:i(`ssg-empty-state`,Q.emptyState?.className),style:Q.emptyState?.style,children:I.length===0?it:rt})]}),Ka!==null&&(0,r.jsx)(ll,{slot:Q.scrollHint,options:Ka,scrollContainerRef:an,scrollTop:Pn,viewportHeight:Un,headerHeight:R,physicalBodyHeight:Wo,verticalScaleFactor:Ko,rowMetrics:Mo,rowModel:X}),Ia&&(0,r.jsx)(`div`,{className:`ssg-autosize-overlay`,children:(0,r.jsx)(`span`,{className:`ssg-autosize-pill`,children:`列幅を計算中…`})}),oa===`filtering`&&(0,r.jsx)(`div`,{className:`ssg-filter-overlay`,children:(0,r.jsxs)(`span`,{className:`ssg-filter-overlay-chip`,role:`status`,"aria-live":`polite`,children:[(0,r.jsx)(`span`,{className:`ssg-filter-spinner`,"aria-hidden":`true`}),(0,r.jsxs)(`span`,{className:`ssg-filter-overlay-text`,children:[`適用中 `,Math.round(sa*100),`%`]})]})}),V&&(Y.loadError!==null&&Y.loadError!==wa||Y.writeError!==null&&Y.writeError!==Ea)&&(0,r.jsxs)(`div`,{className:`ssg-ssrm-error-bars`,children:[Y.loadError!==null&&Y.loadError!==wa&&(0,r.jsxs)(`div`,{className:i(`ssg-ssrm-error-bar`,Q.errorBar?.className),style:Q.errorBar?.style,role:`alert`,children:[(0,r.jsx)(`span`,{className:`ssg-ssrm-error-bar-dot`,"aria-hidden":`true`}),(0,r.jsxs)(`span`,{className:`ssg-ssrm-error-bar-msg`,children:[`行の取得に失敗しました(`,Y.loadError.failedBlockCount,` ブロック)`]}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-retry`,onClick:Y.retryFailedBlocks,children:`再試行`}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-close`,"aria-label":`エラー通知を閉じる`,onClick:()=>Ta(Y.loadError),children:`×`})]}),Y.writeError!==null&&Y.writeError!==Ea&&(0,r.jsxs)(`div`,{className:i(`ssg-ssrm-error-bar`,Q.errorBar?.className),style:Q.errorBar?.style,role:`alert`,children:[(0,r.jsx)(`span`,{className:`ssg-ssrm-error-bar-dot`,"aria-hidden":`true`}),(0,r.jsxs)(`span`,{className:`ssg-ssrm-error-bar-msg`,children:[`変更の保存に失敗しました(`,Y.writeError.failedRowCount,` 行)。値を元に戻しました`]}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-close`,"aria-label":`保存エラー通知を閉じる`,onClick:()=>Da(Y.writeError),children:`×`})]})]})]}),Ru,Eu,Du,ju,Mu]})}function Ll(e={}){let{locale:t,useGrouping:n=!0,minimumFractionDigits:r,maximumFractionDigits:i,emptyText:a=``}=e;return({value:e})=>{if(e==null||e===``)return a;let o=typeof e==`number`?e:Number(e);if(!Number.isFinite(o))return String(e);let s=Math.abs(o).toString(),c=s.indexOf(`.`),l=c===-1?0:s.length-c-1,u=r??0,d=Math.max(u,i??Math.min(l,20));return new Intl.NumberFormat(t,{useGrouping:n,minimumFractionDigits:u,maximumFractionDigits:d}).format(o)}}exports.SpreadsheetGrid=Il,exports.numberFormatter=Ll;
|