@ishibashi0112/spreadsheet-grid 0.38.0 → 0.39.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/hooks/useCellContextMenuController.d.ts +4 -4
- package/dist/hooks/useColumnAutosizeRunner.d.ts +2 -2
- package/dist/hooks/useColumnHeaderDragController.d.ts +2 -2
- package/dist/hooks/useColumnMenuController.d.ts +5 -5
- package/dist/hooks/useColumnSelectOptionsCollector.d.ts +2 -2
- package/dist/hooks/useFilterPopoverController.d.ts +8 -8
- package/dist/hooks/useGlobalFilteredOrder.d.ts +3 -3
- package/dist/hooks/useGridBarContext.d.ts +1 -1
- package/dist/hooks/useGridClipboardController.d.ts +1 -1
- package/dist/hooks/useGridEditController.d.ts +4 -4
- package/dist/hooks/useGridHistoryController.d.ts +1 -1
- package/dist/hooks/useGridKeyboardInteractions.d.ts +1 -1
- package/dist/hooks/useGridPointerInteractions.d.ts +8 -8
- package/dist/hooks/useGridStore.d.ts +1 -1
- package/dist/hooks/useGridViewportSync.d.ts +1 -1
- package/dist/hooks/useResolvedGridTheme.d.ts +1 -1
- package/dist/hooks/useRowDragController.d.ts +2 -2
- package/dist/hooks/useServerSideRowModel.d.ts +3 -3
- package/dist/hooks/useToolPanelController.d.ts +2 -2
- package/dist/index.cjs +1 -10
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2506 -8583
- package/dist/model/gridTypes.d.ts +2 -2
- package/dist/testing/index.d.ts +1 -5
- package/dist/testing.cjs +1 -1
- package/dist/testing.js +1 -51
- package/dist/view/ColumnChooserPanel.d.ts +1 -1
- package/dist/view/ColumnFilterPopover.d.ts +5 -5
- package/dist/view/GridBodyLayer.d.ts +2 -2
- package/dist/view/GridDetailLayer.d.ts +1 -1
- package/dist/view/GridHeaderRow.d.ts +2 -2
- package/dist/view/GridScrollHint.d.ts +2 -2
- package/package.json +8 -28
- package/README.md +0 -582
- package/dist/controllers/autoHeightMeasurer.d.ts +0 -30
- package/dist/controllers/clipboardController.d.ts +0 -31
- package/dist/controllers/columnAutosizeRunner.d.ts +0 -31
- package/dist/controllers/columnHeaderDragController.d.ts +0 -44
- package/dist/controllers/columnMenuController.d.ts +0 -49
- package/dist/controllers/contextMenuController.d.ts +0 -30
- package/dist/controllers/debouncedValueStore.d.ts +0 -11
- package/dist/controllers/editController.d.ts +0 -27
- package/dist/controllers/filterPopoverController.d.ts +0 -53
- package/dist/controllers/globalFilteredOrder.d.ts +0 -38
- package/dist/controllers/historyController.d.ts +0 -28
- package/dist/controllers/keyboardController.d.ts +0 -36
- package/dist/controllers/panelHeaderDragController.d.ts +0 -21
- package/dist/controllers/pointerInteractionsController.d.ts +0 -74
- package/dist/controllers/popoverSupport.d.ts +0 -18
- package/dist/controllers/rowDragController.d.ts +0 -40
- package/dist/controllers/scrollSyncController.d.ts +0 -17
- package/dist/controllers/selectOptionsCollector.d.ts +0 -31
- package/dist/controllers/serverSideRowModel.d.ts +0 -36
- package/dist/controllers/systemColorSchemeStore.d.ts +0 -5
- package/dist/controllers/toolPanelController.d.ts +0 -36
- package/dist/controllers/tooltipController.d.ts +0 -6
- package/dist/controllers/viewportSyncController.d.ts +0 -30
- package/dist/engine/columnCommands.d.ts +0 -56
- package/dist/engine/columnLayout.d.ts +0 -43
- package/dist/engine/createGridEngine.d.ts +0 -46
- package/dist/engine/filterPopoverCommands.d.ts +0 -56
- package/dist/engine/gridApi.d.ts +0 -61
- package/dist/engine/memo.d.ts +0 -2
- package/dist/engine/notifiers.d.ts +0 -35
- package/dist/engine/rowPipeline.d.ts +0 -50
- package/dist/engine/rowSelectionCommands.d.ts +0 -21
- package/dist/engine/verticalLayout.d.ts +0 -52
- package/dist/logic/aggregation.d.ts +0 -13
- package/dist/logic/autoScrollGeometry.d.ts +0 -27
- package/dist/logic/autoSizeOnData.d.ts +0 -10
- package/dist/logic/cellOverflowTooltip.d.ts +0 -5
- package/dist/logic/checkboxEditor.d.ts +0 -12
- package/dist/logic/chunkedLoop.d.ts +0 -8
- package/dist/logic/clearCells.d.ts +0 -31
- package/dist/logic/columnAutosize.d.ts +0 -18
- package/dist/logic/columnFlex.d.ts +0 -4
- package/dist/logic/columnReset.d.ts +0 -7
- package/dist/logic/contextMenuTarget.d.ts +0 -4
- package/dist/logic/cx.d.ts +0 -1
- package/dist/logic/dateFilterCondition.d.ts +0 -26
- package/dist/logic/dateFilterPresets.d.ts +0 -13
- package/dist/logic/dateFilterTree.d.ts +0 -17
- package/dist/logic/datePickerCalendar.d.ts +0 -12
- package/dist/logic/detailRow.d.ts +0 -38
- package/dist/logic/domGuards.d.ts +0 -7
- package/dist/logic/editorValues.d.ts +0 -5
- package/dist/logic/exportCsv.d.ts +0 -12
- package/dist/logic/exportData.d.ts +0 -9
- package/dist/logic/exportScope.d.ts +0 -3
- package/dist/logic/filterPopoverLayout.d.ts +0 -17
- package/dist/logic/filterPopoverOutsideClick.d.ts +0 -2
- package/dist/logic/filterSummary.d.ts +0 -3
- package/dist/logic/filtering.d.ts +0 -33
- package/dist/logic/geometry.d.ts +0 -72
- package/dist/logic/gridState.d.ts +0 -13
- package/dist/logic/grouping.d.ts +0 -34
- package/dist/logic/history.d.ts +0 -16
- package/dist/logic/inferFilterType.d.ts +0 -19
- package/dist/logic/numberFilterCondition.d.ts +0 -21
- package/dist/logic/panelDragGeometry.d.ts +0 -13
- package/dist/logic/rowHeightStore.d.ts +0 -13
- package/dist/logic/rowReorder.d.ts +0 -18
- package/dist/logic/rowSelection.d.ts +0 -16
- package/dist/logic/scrollHint.d.ts +0 -41
- package/dist/logic/scrollTargets.d.ts +0 -22
- package/dist/logic/selectEditorState.d.ts +0 -28
- package/dist/logic/selectOptions.d.ts +0 -9
- package/dist/logic/serverSideBlocks.d.ts +0 -2
- package/dist/logic/serverSideCache.d.ts +0 -14
- package/dist/logic/serverSideEdits.d.ts +0 -16
- package/dist/logic/serverSideQuery.d.ts +0 -7
- package/dist/logic/setFilterSearch.d.ts +0 -14
- package/dist/logic/setFilterSelection.d.ts +0 -5
- package/dist/logic/slotDom.d.ts +0 -8
- package/dist/logic/slotProps.d.ts +0 -18
- package/dist/logic/sorting.d.ts +0 -11
- package/dist/logic/textFilterCondition.d.ts +0 -18
- package/dist/logic/theme.d.ts +0 -3
- package/dist/logic/tooltipGeometry.d.ts +0 -19
- package/dist/logic/validation.d.ts +0 -14
- package/dist/logic/valueFormatters.d.ts +0 -9
- package/dist/logic/valueStore.d.ts +0 -6
- package/dist/logic/verticalGeometry.d.ts +0 -58
- package/dist/model/gridActions.d.ts +0 -125
- package/dist/model/gridReducer.d.ts +0 -4
- package/dist/model/gridSelectors.d.ts +0 -40
- package/dist/model/gridStore.d.ts +0 -24
- package/dist/model/gridTypes.core.d.ts +0 -796
- package/dist/utils/clipboard.d.ts +0 -29
- package/dist/utils/excelColumnName.d.ts +0 -1
- package/dist/utils/permissions.d.ts +0 -4
- package/dist/utils/scheduler.d.ts +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,10 +1 @@
|
|
|
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=(e,t,n)=>Math.min(Math.max(e,t),n),y=(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})},b=e=>e.pinned===`left`?`left`:e.pinned===`right`?`right`:`center`,x=e=>{let t=[],n=[],r=[];for(let i of e){let e=b(i);e===`left`?t.push(i):e===`right`?r.push(i):n.push(i)}return[...t,...n,...r]},S=e=>{let t={left:[],center:[],right:[]};return e.forEach((e,n)=>{let r=b(e);t[r].push({column:e,logicalIndex:n})}),t},C=(e,t)=>e.map(({column:e})=>t[e.key]??e.width),w=(e,t)=>C(e,t).join(`,`),T=e=>e===``?[]:e.split(`,`).map(Number),E=(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}},D=(e,t,n)=>E(e,t,T(n)),O=(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},k=(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},A=(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},M=(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},N=(e,t,n)=>({left:M(e.left,t,n),center:M(e.center,t,n),right:M(e.right,t,n)}),ee=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)}},P=(e,t)=>{let n=O(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&&b(e)===`center`,ne=(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},F=(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&&b(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(ne(r,a))},I=()=>({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=()=>I(),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:I(),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=()=>({scrollTop:0,viewportWidth:0,viewportHeight:0,hoveredRowIndex:null,hoveredColumnIndex:null,isCornerHovered:!1}),be=(e,t)=>typeof e==`function`?e(t):e,xe=(e,t=ve,n=ye())=>{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)})}},Se=(e,t,n,r,i)=>e.readOnly||i.readOnly||i.editable===!1?!1:e.canEditCell?e.canEditCell(t,n,r,i):!0,L=(e,t)=>t.getValue?t.getValue(e):e[t.key],Ce=(e,t,n)=>t.setValue?t.setValue(e,n):{...e,[t.key]:n},we=[`sum`,`min`,`max`,`avg`,`count`],Te=e=>typeof e==`string`&&we.includes(e),Ee=()=>({count:0,numericCount:0,sum:0,min:1/0,max:-1/0}),De=(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))},Oe=(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}},ke=`(空白)`,Ae=`__ssg-group__:`,je=`__ssg_group__`,Me=e=>Ae+e.groupKey,Ne=e=>e<0,Pe=e=>-e-1,Fe=e=>{if(e==null||e===``)return`e`;let t=typeof e;return`${t===`number`?`n`:t===`boolean`?`b`:t===`string`?`s`:`o`}:${String(e)}`},Ie=e=>({groupColumns:e.filter(e=>e.rowGroup===!0),aggColumns:e.filter(e=>e.aggFunc!=null)}),Le=(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?ke:String(i),level:a,leafCount:0,aggregates:{}},children:[],childIndex:new Map,leafSourceIndexes:[],accumulators:r.map(()=>Ee()),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]=L(f,r[e])}let m=c,h=l,g=null;for(let e=0;e<i;e+=1){let t=n[e],r=L(f,t),o=Fe(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){De(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}):Te(n.aggFunc)&&(e.groupRow.aggregates[n.key]=Oe(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}},Re=(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}},ze=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},Be=e=>ze(e).map(e=>e.groupKey),Ve=`__ssg_row_drag_handle__`,He=(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},Ue=(e,t)=>t===e||t===e+1?null:t>e?t-1:t,We=(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},Ge=(e,t)=>{let{rowCount:n}=t;return n<=0||e<=0?0:e>=n?t.totalBodyHeight:t.rowTop(e)},Ke=(e,t)=>{if(e.length!==t)return!1;for(let n=0;n<t;n+=1)if(e[n]!==n)return!1;return!0},qe=({enableRowDrag:e,isServerSide:t,rowGroupingActive:n,hasRowsChange:r})=>e&&!t&&!n&&r,Je=(e,t)=>e&&t,Ye=`ソート / フィルター適用中は行を並び替えできません`,Xe=`ドラッグで行を移動`,Ze=`__ssg_detail_toggle__`,Qe=e=>e===`__ssg_group__`||e===`__ssg_detail_toggle__`||e===`__ssg_row_drag_handle__`,$e=e=>e!=null&&typeof e.closest==`function`&&e.closest(`[data-ssg-detail]`)!==null,et=()=>typeof document<`u`&&$e(document.activeElement),tt=(e,t)=>{if(typeof t.closest!=`function`)return!1;let n=t.closest(`[data-ssg-detail]`);return n!==null&&n!==e&&e.contains(n)},nt=()=>({indexByKey:new Map,unresolvedFor:null,unresolved:new Set}),rt=()=>{let e={current:nt(),reset:()=>{e.current=nt()}};return e},it=(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},at=({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},ot=(e,t,n)=>{e.indexByKey.set(t,n),e.unresolved.delete(t)},st=(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},ct=(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]},R=(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 ct(s,0),s},lt=(e,t,n,r)=>t<0||t>=e.rowCount||(e.measured.set(n,r),e.heights[t]===r)?!1:(e.heights[t]=r,!0),ut=(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)},z=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=>ut(t,n,e),cellHeight:e=>t[Math.min(Math.max(e+1,0),n)]-t[Math.min(Math.max(e,0),n)],detailHeight:()=>0}},dt=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)})}},ft=(e,t)=>e.autoHeightActive===t.autoHeightActive&&e.rowHeightStore===t.rowHeightStore&&e.rowMetrics===t.rowMetrics&&e.rowModel===t.rowModel&&e.virtualRows===t.virtualRows&&e.viewportHeight===t.viewportHeight&&e.version===t.version&&e.nonce===t.nonce,pt=()=>{let e=dt({version:0,nonce:0}),t=new Map,n=null,r=new Set,i=null,a=()=>{n?.disconnect(),n=null,r.clear()},o=()=>{let t=e.getSnapshot();e.setSnapshot({...t,version:t.version+1})},s=()=>{let t=e.getSnapshot();e.setSnapshot({...t,nonce:t.nonce+1})},c=e=>{let{autoHeightActive:t,rowHeightStore:i,rowMetrics:c,rowModel:l}=e,u=e.scrollContainerRef.current;if(!t||!i){a();return}if(!u)return;let d=u.querySelectorAll(`[data-autoheight-cell]`);if(d.length>0){let e=new Map;d.forEach(t=>{if(tt(u,t))return;let n=t.closest(`[data-row-index]`);if(!n)return;let r=Number(n.dataset.rowIndex);if(!Number.isFinite(r))return;let i=Math.ceil(t.getBoundingClientRect().height),a=e.get(r);(a===void 0||i>a)&&e.set(r,i)});let t=!1,n=1/0;if(e.forEach((e,r)=>{let a=l.getRowKey(r)??r;lt(i,r,a,e)&&(t=!0,r<n&&(n=r))}),t){let e=u.scrollTop,t=c.rowAtContentY(e),r=e-c.rowTop(t);ct(i,n),u.scrollTop=i.prefix[t]+r,o()}}n===null&&(n=new ResizeObserver(s));let f=n,p=new Set;d.forEach(e=>{p.add(e),r.has(e)||(f.observe(e),r.add(e))});let m=[];r.forEach(e=>{p.has(e)||m.push(e)}),m.forEach(e=>{f.unobserve(e),r.delete(e)})};return{update:e=>{i!==null&&ft(i,e)||(i=e,c(e))},getSnapshot:e.getSnapshot,subscribe:e.subscribe,measuredHeights:t,dispose:a}},mt=()=>{let e=null,t=null,n=0,r=null,i=null,a=()=>{i=null;let t=r;r=null,t&&e?.onScroll?.(t)},o=o=>{e?.setViewState({scrollTop:o.scrollTop,viewportHeight:o.clientHeight,viewportWidth:o.clientWidth});let s=()=>{e?.setViewState({scrollTop:o.scrollTop});let t=n>0?`api`:`user`;t===`api`&&--n;let s=r;r={top:o.scrollTop,left:o.scrollLeft,source:s?.source===`user`?`user`:t},e?.onScroll&&i===null&&(i=requestAnimationFrame(a))};o.addEventListener(`scroll`,s,{passive:!0});let c=new ResizeObserver(()=>{e?.setViewState({viewportHeight:o.clientHeight,viewportWidth:o.clientWidth})});c.observe(o),t=()=>{o.removeEventListener(`scroll`,s),i!==null&&(cancelAnimationFrame(i),i=null),c.disconnect()}};return{update:n=>{if(e=n,t===null){let e=n.scrollContainerRef.current;e&&o(e)}},markApiScroll:()=>{n+=1},dispose:()=>{t?.(),t=null}}},ht=(e,t)=>{let n=dt(e),r=null,i=null,a=()=>{r!==null&&(clearTimeout(r),r=null)};return{update:({value:e,enabled:o})=>{i!==null&&Object.is(i.value,e)&&i.enabled===o||(i={value:e,enabled:o},a(),o&&(r=setTimeout(()=>{r=null,n.setSnapshot(e)},t)))},getSnapshot:n.getSnapshot,subscribe:n.subscribe,dispose:a}},gt=21,_t=4,vt=41,yt=13,bt=600,xt=60,St=16,B=null,Ct=()=>B||(typeof document>`u`?null:(B=document.createElement(`canvas`).getContext(`2d`),B)),wt=`system-ui, sans-serif`,Tt=e=>{let t=wt,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:`${bt} ${yt}px ${t}`}},Et=(e,t,n)=>Math.min(Math.max(e,t),n),Dt=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,V=e=>{let t=0;for(let n of e){let e=n.codePointAt(0)??0;t+=Dt(e)?2:1}return t},H=(e,t)=>{let n=L(e,t);return t.valueFormatter?t.valueFormatter({value:n,row:e,column:t}):String(n??``)},Ot=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},U=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},kt=e=>e.suppressAutoSize===!0||e.autoHeight===!0;function At(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(kt(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(L(a,e[o])??``);if(c===``)continue;let l=t[o],u=n[o];if(l.length===St&&2*c.length<=r[o])continue;let d=V(c);if(l.length<St){if(l.push(a),u.push(d),l.length===St){let e=u[0];for(let t=1;t<St;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<St;e+=1)u[e]<u[f]&&(f=e);l[f]=a,u[f]=d;let p=u[0];for(let e=1;e<St;e+=1)u[e]<p&&(p=u[e]);r[o]=p}},finalize:({gridRoot:n,currentWidths:r})=>{let a=Ct();if(!a||e.length===0)return{};let{cellFont:o,headerFont:s}=Tt(n),c={},l=Ot(n);try{let n=null;if(l){let r=[];for(let n=0;n<e.length;n+=1){if(kt(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=H(i[t],e[n]);if(r===``)continue;let o=U(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(kt(u))continue;a.font=s;let d=u.title||u.key,f=a.measureText(d).width+_t+vt,p;if(u.estimateCellWidth)p=i[l]>0?i[l]+gt: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=H(n[t],u);if(r===``)continue;let i=a.measureText(r).width;i>e&&(e=i)}p=e>0?e+_t+gt:0}let m=Math.ceil(Et(Math.max(f,p),u.minWidth??xt,u.maxWidth??1/0));r[u.key]!==m&&(c[u.key]=m)}}finally{l&&l.parentNode&&l.parentNode.removeChild(l)}return c}}}function jt(){return Ct()!==null}var Mt=()=>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)}),W=()=>typeof performance<`u`?performance.now():Date.now(),G=async(e,t,{budgetMs:n=10,isCancelled:r,onYield:i}={})=>{let a=0;for(;a<e;){let o=W();do t(a),a+=1;while(a<e&&W()-o<n);if(a<e){if(await Mt(),r?.())return!1;i?.(a,e)}}return!r?.()},K={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})},Nt=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}},Pt=180,Ft=()=>{let e=null,t=dt(!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||!jt())return;let{rowModel:o,gridRootRef:s,columnWidths:c,dispatch:l}=e,u=n+=1;i();let d=o.getRowCount(),f=s.current,p=At(a);r=setTimeout(()=>{n===u&&t.setSnapshot(!0)},Pt);try{if(!await G(d,e=>{let t=o.getRow(e);t&&p.collect(t)},{isCancelled:()=>n!==u||e?.rowModel!==o}))return;let t=p.finalize({gridRoot:f,currentWidths:c});Object.keys(t).length>0&&l(K.syncColumnWidths(t))}finally{n===u&&(i(),t.setSnapshot(!1))}},subscribe:t.subscribe,getSnapshot:t.getSnapshot,dispose:()=>{n+=1,i()}}},It=()=>{let e=null,t=!1;return{update:n=>{if(e!==null&&e.mode===n.mode&&e.isServerSide===n.isServerSide&&e.rows===n.rows&&e.runAutosize===n.runAutosize){e=n;return}e=n;let{shouldRun:r,nextHasAutoSizedOnMount:i}=Nt({mode:n.mode,isServerSide:n.isServerSide,rowCount:n.rows.length,hasAutoSizedOnMount:t});t=i,r&&n.runAutosize(n.visibleColumns)}}},Lt=(e,t)=>{if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(!Object.is(e[n],t[n]))return!1;return!0},q=e=>{let t=null;return(...n)=>{if(t!==null&&Lt(t.args,n))return t.value;let r=e(...n);return t={args:n,value:r},r}},Rt=()=>{let e=q(e=>Ie(e)),t=q((e,t,n,r,i,a)=>{let o=r.some(e=>e.pinned===`left`),s=e?{key:Ve,title:``,width:28,minWidth:28,readOnly:!0,suppressAutoSize:!0,resizable:!1,pinned:o?`left`:void 0,cellClassName:`ssg-body-cell--row-drag-handle`,renderCell:()=>null}:null,c=t?{key:Ze,title:``,width:28,minWidth:28,readOnly:!0,suppressAutoSize:!0,resizable:!1,pinned:o?`left`:void 0,cellClassName:`ssg-body-cell--detail-toggle`,renderCell:a}:null,l=[];if(s&&l.push(s),c&&l.push(c),!n)return l.length>0?[...l,...r]:r;let u=[{key:je,title:i.map(e=>e.title||e.key).join(` › `),width:240,minWidth:120,readOnly:!0,suppressAutoSize:!0},...r.filter(e=>e.rowGroup!==!0)];return l.length>0?[...l,...u]:u}),n=q(e=>e.filter(e=>e.visible!==!1)),r=q(e=>x(e));return i=>{let{columns:a,isServerSide:o,enableRowDrag:s,hasRowsChange:c,detailToggleColumnActive:l,renderDetailToggleCell:u}=i,{groupColumns:d,aggColumns:f}=e(a),p=!o&&d.length>0,m=qe({enableRowDrag:s,isServerSide:o,rowGroupingActive:p,hasRowsChange:c}),h=t(m,l,p,a,d,u),g=n(h);return{groupColumns:d,aggColumns:f,rowGroupingActive:p,rowDragAvailable:m,effectiveColumns:h,visibleColumns:g,orderedColumns:r(g)}}},zt={},Bt=(e,t)=>e.reduce((e,{column:n})=>e+(t[n.key]??n.width),0),Vt=()=>{let e=q(e=>S(e)),t=q(e=>e.map(({column:e})=>e)),n=q(e=>e.some(te)),r=q((e,t,n,r,i)=>!e||t<=0?zt:F(n,r,i)),i=q((e,t)=>e===zt?t:{...e,...t}),a=q((e,t)=>D(`left`,e,t)),o=q((e,t)=>D(`center`,e,t)),s=q((e,t)=>D(`right`,e,t)),c=q((e,t,n)=>({left:e,center:t,right:n}));return l=>{let{orderedColumns:u,columnWidths:d,viewportWidth:f,rowHeaderWidth:p}=l,m=e(u),h=Bt(m.left,d),g=Bt(m.right,d),_=m.left.length>0,v=_?p+h:0,y=_?0:p,b=t(m.center),x=n(b),S=f-v-g-y,C=r(x,f,b,d,S),T=i(C,d),E=w(m.left,d),D=w(m.center,T),O=w(m.right,d),k=c(a(m.left,E),o(m.center,D),s(m.right,O)),A=k.left.entries.length>0,j=k.right.entries.length>0,M=!A,N=p,ee=M?p:0,P=A?N+k.left.totalWidth:0,te=k.right.totalWidth,ne=ee+k.center.totalWidth;return{paneSourceColumns:m,hasFlexColumn:x,effectiveColumnWidths:T,paneLayout:k,hasLeftPane:A,hasRightPane:j,centerOwnsRowHeader:M,leftLeadingWidth:N,centerLeadingWidth:ee,rightLeadingWidth:0,leftPaneTotalWidth:P,rightPaneTotalWidth:te,centerContentWidth:ne,totalScrollWidth:P+ne+te}}},Ht=[{value:`today`,label:`今日`},{value:`thisMonth`,label:`今月`},{value:`last30days`,label:`過去 30 日`}],Ut=e=>Ht.some(t=>t.value===e),Wt=e=>Ht.find(t=>t.value===e)?.label??e,Gt=e=>e===!1?[]:e===void 0?Ht.map(({value:e,label:t})=>({id:e,label:t})):e.map(e=>typeof e==`string`?{id:e,label:Wt(e)}:{id:e.id,label:e.label,resolve:e.resolve}),Kt=(e,t)=>{let n=t?.find(t=>t.id===e)?.label;return n===void 0?Ut(e)?Wt(e):e:n},qt=e=>{let t=new Int32Array(e);for(let n=0;n<e;n+=1)t[n]=n;return t},Jt=e=>e?.kind===`set`,Yt=e=>e?.kind===`numberSet`,Xt=e=>e?.kind===`textSet`,Zt=e=>e?.kind===`dateSet`,Qt=e=>e==null||String(e).trim()===``,$t=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}},en=e=>e==null||typeof e==`string`&&e.trim()===``?NaN:Number(e),tn=(e,t)=>{if(e.mode===`blank`||e.mode===`notBlank`)return Qt(t)===(e.mode===`blank`);let n=en(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}},nn=(e,t)=>{if(e.mode===`blank`||e.mode===`notBlank`)return Qt(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)}},rn=e=>String(e).padStart(2,`0`),an=e=>`${e.getFullYear()}-${rn(e.getMonth()+1)}-${rn(e.getDate())}`,on=e=>{if(e==null)return null;if(e instanceof Date)return Number.isNaN(e.getTime())?null:an(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]}-${rn(r)}-${rn(i)}`},sn=e=>{let t=on(e);return t===null?Qt(e)?``:String(e):t},cn=(e,t)=>{let n=an(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:an(e),to:an(n)}}default:return{from:an(new Date(t.getFullYear(),t.getMonth(),t.getDate()-29)),to:n}}},ln=e=>e===void 0?null:on(e),un=(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=ln(e.from),i=ln(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 Ut(e.preset)?{mode:`range`,...cn(e.preset,t)}:null},dn=(e,t,n,r)=>{let i=un(e,n,r);if(i===null)return!0;if(i.mode===`blank`||i.mode===`notBlank`)return Qt(t)===(i.mode===`blank`);let a=on(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}},fn=e=>{let t=e?.kind===`number`?e.parsed:e?.kind===`numberSet`?e.condition:null;return t?.mode===`comparison`||t?.mode===`range`},pn=e=>e?.kind===`number`,mn=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``}},hn=(e,t,n)=>{if(e.mode===`blank`||e.mode===`notBlank`){let n=e.mode===`blank`;return e=>Qt(L(e,t))===n}if(e.mode===`range`){let{min:r,max:i}=e;return(e,a)=>{let o=n?n[a]:en(L(e,t));return Number.isFinite(o)&&o>=r&&o<=i}}let{operator:r,value:i}=e;return(e,a)=>{let o=n?n[a]:en(L(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}}},gn=(e,t)=>{if(e.mode===`blank`||e.mode===`notBlank`){let n=e.mode===`blank`;return e=>Qt(L(e,t))===n}let n=e.value.toLowerCase(),r=e.mode;return e=>{let i=String(L(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)}}},_n=(e,t,n)=>{let r=new Set(t);return e===`exclude`?e=>!r.has(String(L(e,n)??``)):e=>r.has(String(L(e,n)??``))},vn=(e,t,n)=>{let r=new Set(t);return e===`exclude`?e=>!r.has(sn(L(e,n))):e=>r.has(sn(L(e,n)))},yn=(e,t,n)=>{let r=un(e,n,Gt(t.dateFilterPresets));if(r===null)return()=>!0;if(r.mode===`blank`||r.mode===`notBlank`){let e=r.mode===`blank`;return n=>Qt(L(n,t))===e}if(r.mode===`range`){let{from:e,to:n}=r;return r=>{let i=on(L(r,t));return i!==null&&i>=e&&i<=n}}let{mode:i,value:a}=r;return e=>{let n=on(L(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}}},bn=(e,t,n,r)=>{if(!$t(t))return null;let i=t;if(e.filterFn){let t=e.filterFn;return e=>t(e,i)}switch(i.kind){case`set`:return _n(i.mode,i.values,e);case`number`:{let t=i.parsed;if(t===null){let t=i.raw.toLowerCase();return n=>String(L(n,e)??``).toLowerCase().includes(t)}return hn(t,e,n)}case`numberSet`:case`textSet`:case`dateSet`:{let t=i.kind===`numberSet`?i.condition?hn(i.condition,e,n):null:i.kind===`textSet`?i.condition?gn(i.condition,e):null:i.condition?yn(i.condition,e,r??new Date):null,a=i.set?i.kind===`dateSet`?vn(i.set.mode,i.set.values,e):_n(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(L(n,e)??``)===t}case`text`:case`date`:{let t=i.value.trim().toLowerCase();return n=>String(L(n,e)??``).toLowerCase().includes(t)}case`custom`:{let t=String(i.value??``).trim().toLowerCase();return n=>String(L(n,e)??``).toLowerCase().includes(t)}}},xn=(e,t,n)=>{let r=t.length;for(let i=0;i<r;i+=1){let r=L(e,t[i]);if(String(r??``).toLowerCase().includes(n))return!0}return!1},Sn=(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];xn(e[a],n,i)&&(o[s]=a,s+=1)}return s===a?t:o.slice(0,s)},Cn=(e,t,n,r,i,a)=>{let o=[],s=a??new Date;for(let e of n){let t=bn(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)},wn=new Intl.Collator(`ja`,{numeric:!0,sensitivity:`base`}),Tn=(e,t)=>{let n=Number(e),r=Number(t);return Number.isFinite(n)&&Number.isFinite(r)?n-r:wn.compare(String(e??``),String(t??``))},En=(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)},Dn=(e,t,n)=>e.some(e=>e.columnKey===t)?e:[...e,{columnKey:t,direction:n}],On=(e,t,n)=>t<0||t>=e.length||e[t].direction===n?e:e.map((e,r)=>r===t?{...e,direction:n}:e),kn=(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),An=(e,t)=>t<0||t>=e.length?e:e.filter((e,n)=>n!==t),jn=(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},Mn=(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(L(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]=L(e[t[i]],n);return r});u.sort((e,r)=>{for(let t=0;t<o;t+=1){let i=Tn(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},Nn=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];$t(n)&&(r[t]=n,i=!0)}return i&&(t.columnFilters=r),e.sort.length>0&&(t.sort=e.sort),t},Pn=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})},Fn={},In={},Ln=[],Rn=`\0`,zn=()=>{let e=q(e=>qt(e)),t=q((e,t)=>{let n=[];for(let r of e)fn(t[r.key])&&n.push(r.key);return n.join(Rn)}),n=q((e,t,n)=>{let r=new Map;if(n.length===0)return r;let i=new Set(n.split(Rn)),a=e.length;for(let n of t){if(!i.has(n.key))continue;let t=new Float64Array(a);for(let r=0;r<a;r+=1)t[r]=en(L(e[r],n));r.set(n.key,t)}return r}),r=q((e,t,n,r,i)=>Cn(e,t,n,r,i)),i=q((e,t,n,r)=>Mn(e,t,n,r)),a=q((e,t,n)=>e&&Ke(t,n)),o=q((e,t,n,r,i)=>e?Le(t,n,r,i):null),s=q((e,t)=>e?Re(e,t):null),c=q((e,t,n,r)=>{if(e){let{displayOrder:t,groups:i}=e;return{getRowCount:()=>t.length,getRow:e=>n[t[e]],getSourceIndex:e=>{let n=t[e];return n>=0?n:void 0},getRowKey:e=>{let a=t[e];return Ne(a)?Me(i[Pe(a)]):r(n[a],a)},getGroupRow:e=>{let n=t[e];return Ne(n)?i[Pe(n)]:void 0}}}return{getRowCount:()=>t.length,getRow:e=>n[t[e]],getSourceIndex:e=>t[e],getRowKey:e=>r(n[t[e]],t[e])}}),l=q((e,t,n,r,i,a,o)=>e?Nn({globalText:t?n:``,columnFilters:r?i:In,sort:a?o:Ln}):Fn),u=q((e,t)=>e?Pn(t):``),d=q((e,t)=>({query:e,queryKey:t}));return{resolveBaseOrder:t=>e(t),resolveOrder:e=>{let{rows:o,visibleColumns:s,columnFilters:c,globalFilteredOrder:l,sort:u,rowDragAvailable:d}=e,f=t(s,c),p=n(o,s,f),m=r(o,l,s,c,p),h=i(o,m,s,u),g=a(d,h,o.length);return{order:h,orderIsIdentity:g,rowDragOperable:Je(d,g)}},resolveClientSideRowModel:e=>{let{rows:t,order:n,rowGroupingActive:r,groupColumns:i,aggColumns:a,collapsedGroupKeys:l,rowKeyGetter:u}=e,d=o(r,t,n,i,a),f=s(d,l);return{groupTree:d,groupedDisplay:f,rowModel:c(f,n,t,u)}},resolveServerSideQuery:e=>{let{isServerSide:t,globalFilterEnabled:n,globalText:r,columnFilterEnabled:i,columnFilters:a,sortingEnabled:o,sort:s}=e,c=l(t,n,r,i,a,o,s);return d(c,u(t,c))}}},Bn=15e6,Vn=(e,t,n,r)=>e&&t&&n>0&&n<=r,Hn=1<<20,Un=(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}),Wn=(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}}},Gn=(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}},Kn=(e,t)=>e*t,qn=(e,t)=>t===1?e:e/t,Jn=(e,t,n,r)=>{let i=t*(1-n);return r.rowAtContentY(e-i)},Yn=({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/Hn)*Hn,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}},Xn=({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}},Zn=[],Qn=[],$n=20,er=()=>{let e=q(e=>e.some(e=>e.autoHeight===!0)),t=q((e,t,n,r,i)=>e?R(t,n,r.getRowKey,i):null),n=q((e,t,n,r,i)=>e&&t?z(t):Un(r,i)),r=q((e,t,n,r,i,a,o)=>e?at({expandedKeys:t,rowModel:n,height:r,isExpandable:i,cache:a.current,allowScan:!o}):Zn),i=q((e,t,n)=>e?Wn(t,n):t),a=q((e,t,n,r,i,a,o)=>e?Xn({headerHeight:i,viewportHeight:a,scrollTop:o,overscan:$n},t):Yn({rowCount:n,rowHeight:r,headerHeight:i,viewportHeight:a,scrollTop:o,overscan:$n,maxBodyPx:Bn})),o=q((e,t,n)=>{if(!e)return Qn;let r=[];for(let e of t)e.detailSize!==void 0&&e.detailSize>0&&r.push({rowKey:n.getRowKey(e.index)??e.index,virtualRow:e});return r});return s=>{let{isServerSide:c,autoHeight:l,visibleColumns:u,viewRowCount:d,estimateRowHeight:f,rowHeight:p,headerHeight:m,viewportHeight:h,scrollTop:g,rowModel:_,measuredHeights:v,autoHeightVersion:y,detailRowEnabled:b,expandedDetailRowKeys:x,detailHeight:S,detailIsExpandable:C,detailIndexCacheRef:w}=s,T=e(u),E=!c&&Vn(l,T,d,5e4),D=t(E,d,f,_,v),O=n(E,D,y,d,p),k=r(b,x,_,S,C,w,c),A=k.length>0&&O.totalBodyHeight+k.reduce((e,t)=>e+t.height,0)<=15e6,j=i(A,O,k),M=a(E||A,j,d,p,m,h,g),N=M.rows,ee=o(A,N,_);return{hasAutoHeightColumn:T,autoHeightActive:E,rowHeightStore:D,baseRowMetrics:O,detailExtras:k,detailActive:A,rowMetrics:j,verticalGeometry:M,virtualRows:N,virtualRowIndexes:M.rowIndexSet,detailEntries:ee,windowFirstRow:N.length>0?N[0].index:0,windowLastRow:N.length>0?N[N.length-1].index:-1,physicalBodyHeight:M.physicalBodyHeight,bodyLayerTransform:M.translateY===0?void 0:`translateY(${M.translateY}px)`,verticalScaleFactor:M.scaleFactor,overlayBaseOffset:M.windowBaseOffsetPx}}},tr=(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},nr=300,rr=4,ir=()=>{let e=null,t=null,n=null,r=()=>{if(e===null)throw Error(`[SpreadsheetGrid] columnCommands は update 前に呼べません。`);return e},i=e=>{e(K.stopEdit()),e(K.clearSelection()),e(K.activateCell(null))},a=(e,t)=>{t(e.length===0?K.clearSort():K.setSort(e))},o=(e,t)=>{let{closeColumnMenu:n,onColumnsChange:a,columns:o,columnWidths:s,dispatch:c}=r();if(n(),!a)return;let l=o.find(t=>t.key===e);l&&(l.pinned??void 0)!==t&&(a(o.map(n=>{let r=s[n.key]??n.width;return n.key===e?{...n,width:r,pinned:t}:r===n.width?n:{...n,width:r}})),i(c))},s=e=>{let{closeColumnMenu:t,visibleColumns:n,runAutosize:i}=r();t();let a=n.find(t=>t.key===e);a&&i([a])},c=()=>{let{closeColumnMenu:e,visibleColumns:t,runAutosize:n}=r();e(),n(t)},l=()=>{let{closeColumnMenu:e,openToolPanel:t}=r();e(),t(`columns`)},u=()=>{let{closeColumnMenu:e,openToolPanel:t}=r();e(),t(`sort`)},d=()=>{let{closeColumnMenu:e,openToolPanel:t}=r();e(),t(`filter`)},f=e=>{let{closeColumnMenu:t,openColumnFilterPopover:n}=r();t(),n(e)},p=e=>{r().dispatch(K.clearColumnFilter(e))},m=()=>{let{dispatch:e,globalFilterText:t}=r();e(K.setAllFilters({globalText:t,columnFilters:{}}))},h=()=>{r().dispatch(K.setGlobalFilter(``))},g=(e,t)=>{let{onColumnsChange:n,columns:a,columnWidths:o,dispatch:s}=r();if(!n)return;let c=a.find(t=>t.key===e);c&&c.visible!==!1!==t&&(!t&&a.filter(e=>e.visible!==!1).length<=1||(n(a.map(n=>{let r=o[n.key]??n.width;return n.key===e?{...n,width:r,visible:t}:r===n.width?n:{...n,width:r}})),i(s)))},_=()=>{let{onColumnsChange:e,columns:t,columnWidths:n,dispatch:a}=r();e&&t.some(e=>e.visible===!1)&&(e(t.map(e=>{let t=n[e.key]??e.width,r=t!==e.width,i=e.visible===!1;return!r&&!i?e:i?{...e,width:t,visible:!0}:{...e,width:t}})),i(a))},v=()=>{let{onColumnsChange:e,columns:t,orderedColumns:n,columnWidths:a,dispatch:o}=r();if(!e)return;let s=n[0]?.key;s!==void 0&&t.some(e=>e.visible!==!1&&e.key!==s)&&(e(t.map(e=>{let t=a[e.key]??e.width,n=t!==e.width,r=e.visible!==!1&&e.key!==s;return!n&&!r?e:r?{...e,width:t,visible:!1}:{...e,width:t}})),i(o))},y=(e,t)=>{let{onColumnsChange:n,columns:a,columnWidths:o,dispatch:s}=r();if(!n||e.length!==a.length)return;let c=new Map(a.map(e=>[e.key,e]));if(!e.every(e=>c.has(e)))return;let l=x(e.map(e=>{let n=c.get(e),r=o[n.key]??n.width,i=t?.has(e)?t.get(e):n.pinned,a=r!==n.width,s=(n.pinned??void 0)!==(i??void 0);return a||s?{...n,width:r,pinned:i}:n}));l.length===a.length&&l.every((e,t)=>{let n=a[t];return!!n&&n.key===e.key&&n.width===e.width&&(n.pinned??void 0)===(e.pinned??void 0)})||(n(l),i(s))},b=e=>{y(e)},S=()=>{let{onColumnsChange:e,columns:n,columnWidths:a,dispatch:o}=r();if(!e||!t)return;let s=tr(n,t,a);s!==null&&(e(s),i(o))};return{update:n=>{e=n,t===null&&(t=new Map(n.columns.map(e=>[e.key,{width:e.width,pinned:e.pinned,visible:e.visible}])))},handleColumnMenuPinnedChange:o,handleColumnMenuAutosizeColumn:s,handleColumnMenuAutosizeAllColumns:c,handleColumnMenuOpenChooser:l,handleColumnMenuOpenSortManager:u,handleColumnMenuOpenFilter:f,handleColumnMenuOpenFilterManager:d,handleColumnMenuResetColumns:()=>{r().closeColumnMenu(),S()},handleColumnMenuSortChange:(e,t)=>{let{closeColumnMenu:n,enableSorting:i,sort:o,dispatch:s}=r();n(),i&&a(En(o,e,t,!1),s)},handleFilterManagerClearFilter:p,handleFilterManagerClearAll:m,handleFilterManagerClearGlobal:h,handleColumnChooserToggleVisibility:g,handleColumnChooserShowAll:_,handleColumnChooserHideAll:v,handleColumnChooserReorder:b,handleColumnChooserReset:S,applyColumnOrderAndPin:y,handleSortManagerAddLevel:(e,t)=>{let{enableSorting:n,sort:i,dispatch:a}=r();n&&a(K.setSort(Dn(i,e,t)))},handleSortManagerChangeDirection:(e,t)=>{let{enableSorting:n,sort:i,dispatch:a}=r();n&&a(K.setSort(On(i,e,t)))},handleSortManagerChangeColumn:(e,t)=>{let{enableSorting:n,sort:i,dispatch:a}=r();n&&a(K.setSort(kn(i,e,t)))},handleSortManagerRemoveLevel:e=>{let{enableSorting:t,sort:n,dispatch:i}=r();t&&a(An(n,e),i)},handleSortManagerClearAll:()=>{let{enableSorting:e,dispatch:t}=r();e&&t(K.clearSort())},handleSortManagerMove:(e,t)=>{let{enableSorting:n,sort:i,dispatch:a}=r();n&&a(K.setSort(jn(i,e,t)))},handleColumnResizePointerDown:(e,t)=>{t.preventDefault(),t.stopPropagation();let{columnWidths:i,dispatch:a,runAutosize:o}=r(),s=t.timeStamp,c=n;if(c&&c.key===e.key&&s-c.time<nr&&Math.abs(t.clientX-c.x)<rr){n=null,o([e]);return}n={key:e.key,time:s,x:t.clientX},a(K.startColumnResize(e.key,t.clientX,i[e.key]??e.width,e.minWidth??60,e.maxWidth))},getInitialColumnState:()=>t}},ar=(e,t)=>e===null?!0:e.mode===`include`?e.values.has(t):!e.values.has(t),or={operator:`gte`,value1:``,value2:``},sr=[{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:`空白でない`}],cr=e=>e===`blank`||e===`notBlank`?0:e===`between`?2:1,lr=e=>{let t=e.trim();if(!t)return null;let n=Number(t);return Number.isFinite(n)?n:null},ur={gte:`>=`,gt:`>`,lte:`<=`,lt:`<`,eq:`=`,ne:`!=`},dr=e=>{if(e.operator===`blank`||e.operator===`notBlank`)return{mode:e.operator};if(e.operator===`between`){let t=lr(e.value1),n=lr(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=lr(e.value1);return t===null?null:{mode:`comparison`,operator:ur[e.operator],value:t}},fr=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`(空白でない)`}},pr=e=>{let t=dr(e);return t===null?null:{kind:`number`,raw:fr(t),parsed:t}},mr=(e,t)=>t?e.filter(e=>tn(t,e.value)):e,hr={">=":`gte`,">":`gt`,"<=":`lte`,"<":`lt`,"=":`eq`,"!=":`ne`},gr=e=>{if(!e)return or;switch(e.mode){case`comparison`:return{operator:hr[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:``}}},_r=e=>gr(e?.parsed),J={operator:`contains`,value:``},vr=[{value:`contains`,label:`を含む`},{value:`equals`,label:`に等しい`},{value:`startsWith`,label:`で始まる`},{value:`endsWith`,label:`で終わる`},{value:`blank`,label:`空白`},{value:`notBlank`,label:`空白でない`}],yr=e=>e===`blank`||e===`notBlank`?0:1,br=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},xr=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`(空白でない)`}},Sr=e=>e?e.mode===`blank`||e.mode===`notBlank`?{operator:e.mode,value:``}:{operator:e.mode,value:e.value}:J,Y=(e,t)=>t?e.filter(e=>nn(t,e.value)):e,X={operator:`range`,value1:``,value2:``,preset:null},Cr=[{value:`range`,label:`範囲`},{value:`onOrAfter`,label:`以降`},{value:`onOrBefore`,label:`以前`},{value:`equals`,label:`に等しい`},{value:`notEquals`,label:`に等しくない`},{value:`blank`,label:`空白`},{value:`notBlank`,label:`空白でない`}],wr=e=>e===`blank`||e===`notBlank`?0:e===`range`?2:1,Tr=e=>{let t=e.trim();return/^\d{4}-\d{2}-\d{2}$/.test(t)?t:null},Er=e=>e===null||e instanceof Date?e===null?``:on(e)??``:e.trim()===``?``:on(e)??``,Z=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=Tr(e.value1),n=Tr(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=Tr(e.value1);return t===null?null:{mode:e.operator,value:t}},Dr=(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 Kt(e.preset,t)}},Or=e=>{if(!e)return X;switch(e.mode){case`preset`:return{...X,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}}},kr=(e,t,n,r)=>t?e.filter(e=>dn(t,e.value,n,r)):e,Ar=/^\d{4}-\d{2}-\d{2}$/,jr=e=>{let t=new Set;for(let n of e)t.add(sn(n.value));let n=[],r=[],i=!1;for(let e of t)e===``?i=!0:Ar.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},Mr=(e,t)=>{let n=new Map,r=[];for(let t of e){if(!Ar.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},Nr=(e,t)=>{let n=new Set(e);return n.add(t),n},Pr=(e,t)=>{let n=new Set(e);return n.delete(t),n},Fr=(e,t)=>{let n=new Set(e);for(let e of t)n.add(e);return n},Ir=(e,t)=>{let n=new Set(e);for(let e of t)n.delete(e);return n},Lr=()=>{let e=q((e,t)=>e?jr(t):t),t=q((e,t,n)=>e?new Set(t.map(e=>e.value)):n),n=q(e=>{let t=Jt(e)?e:Yt(e)||Xt(e)||Zt(e)?e.set:null;return t?{mode:t.mode===`exclude`?`exclude`:`include`,values:new Set(t.values)}:null});return r=>{let{openedFilterColumn:i,openedFilterType:a,openedFilterSelectOptions:o,openedFilterAllValues:s,columnFilters:c}=r,l=a===`dateSet`,u=e(l,o),d=t(l,u,s),f=i?c[i.key]:void 0;return{isDateSetFilterColumn:l,openedPopoverSelectOptions:u,openedPopoverAllValues:d,openedSetFilterValue:f,openedSetSelection:n(f),openedColumnCanInvert:!(i?.filterOptions&&i.filterOptions.length>0),isComboFilterColumn:a===`numberSet`||a===`textSet`||a===`dateSet`}}},Rr=()=>{let e=null,t=()=>{if(e===null)throw Error(`[SpreadsheetGrid] filterPopoverCommands は update 前に呼べません。`);return e},n=(e,n)=>{let{openedFilterColumn:r,openedFilterType:i,columnFilters:a}=t(),o=r?.key===e?i:void 0,s=a[e];if(o===`numberSet`){let e=Yt(s)?s.condition:null;return!e&&!n?null:{kind:`numberSet`,condition:e,set:n}}if(o===`textSet`){let e=Xt(s)?s.condition:null;return!e&&!n?null:{kind:`textSet`,condition:e,set:n}}if(o===`dateSet`){let e=Zt(s)?s.condition:null;return!e&&!n?null:{kind:`dateSet`,condition:e,set:n}}return null},r=(e,r,i)=>{let{openedFilterColumn:a,derived:o,dispatch:s}=t(),c=a?.key===e&&o.isComboFilterColumn,l=r.mode===`include`?r.values.size:i-r.values.size;if(l>=i){if(c){let t=n(e,null);if(t){s(K.setColumnFilter(e,t));return}}s(K.clearColumnFilter(e));return}let u=l<=0?{mode:`include`,values:[]}:{mode:r.mode,values:Array.from(r.values)};if(c){let t=n(e,u);if(t){s(K.setColumnFilter(e,t));return}}let d={kind:`set`,...u};s(K.setColumnFilter(e,d))},i=e=>{let{filterPopoverState:n,derived:i}=t();if(!n)return;let{openedPopoverSelectOptions:a,openedSetSelection:o,openedColumnCanInvert:s,openedPopoverAllValues:c}=i,l=a.length,u;u=ar(o,e)?o===null?s?{mode:`exclude`,values:new Set([e])}:{mode:`include`,values:Pr(c,e)}:o.mode===`include`?{mode:`include`,values:Pr(o.values,e)}:{mode:`exclude`,values:Nr(o.values,e)}:o.mode===`include`?{mode:`include`,values:Nr(o.values,e)}:{mode:`exclude`,values:Pr(o.values,e)},r(n.columnKey,u,l)},a=(e,n)=>{let{filterPopoverState:i,derived:a}=t();if(!i)return;let o=i.columnKey,{openedPopoverSelectOptions:s,openedSetSelection:c,openedColumnCanInvert:l,openedPopoverAllValues:u}=a,d=s.length;if(e===`all`){r(o,n?{mode:`exclude`,values:new Set}:{mode:`include`,values:new Set},d);return}let f;if(n){if(c===null){r(o,{mode:`exclude`,values:new Set},d);return}f=c.mode===`include`?{mode:`include`,values:Fr(c.values,e)}:{mode:`exclude`,values:Ir(c.values,e)}}else f=c===null?l?{mode:`exclude`,values:new Set(e)}:{mode:`include`,values:Ir(u,e)}:c.mode===`include`?{mode:`include`,values:Ir(c.values,e)}:{mode:`exclude`,values:Fr(c.values,e)};r(o,f,d)},o=e=>{let{filterPopoverState:n,derived:i}=t();n&&r(n.columnKey,{mode:`include`,values:new Set(e)},i.openedPopoverSelectOptions.length)},s=()=>{let{filterPopoverState:e,openedFilterType:n,dispatch:r,updateNumberDraft:i,updateTextDraft:a,updateDateDraft:o}=t();e&&(r(K.clearColumnFilter(e.columnKey)),n===`numberSet`&&i(or),n===`textSet`&&a(J),n===`dateSet`&&o(X))},c=e=>{let n=t().columnFilters[e];return Yt(n)||Xt(n)||Zt(n)?n.set:Jt(n)?{mode:n.mode,values:n.values}:null},l=(e,n)=>{let{filterPopoverState:r,columnFilters:i,dispatch:a}=t();if(!r)return;let o=r.columnKey,s=c(o);if(!e&&!s){i[o]&&a(K.clearColumnFilter(o));return}a(K.setColumnFilter(o,n(s)))},u=e=>{let{updateNumberDraft:n,openedFilterType:r}=t();if(n(e),r!==`numberSet`)return;let i=dr(e);l(i!==null,e=>({kind:`numberSet`,condition:i,set:e}))},d=e=>{let{updateTextDraft:n,openedFilterType:r}=t();if(n(e),r!==`textSet`)return;let i=br(e);l(i!==null,e=>({kind:`textSet`,condition:i,set:e}))},f=e=>{let{updateDateDraft:n,openedFilterType:r}=t();if(n(e),r!==`dateSet`)return;let i=Z(e);l(i!==null,e=>({kind:`dateSet`,condition:i,set:e}))};return{update:t=>{e=t},handleSetFilterValueToggle:i,handleSetFilterSelectAllChange:a,handleSetFilterReplaceSelection:o,clearSetFilterPopoverValue:s,handleNumberConditionDraftChange:u,handleTextConditionDraftChange:d,handleDateConditionDraftChange:f,handleComboConditionClear:()=>{let{openedFilterType:e}=t();if(e===`textSet`){d(J);return}if(e===`dateSet`){f(X);return}u(or)},handleComboSelectionClear:()=>{let{filterPopoverState:e,dispatch:r}=t();if(!e)return;let i=e.columnKey,a=n(i,null);if(a){r(K.setColumnFilter(i,a));return}r(K.clearColumnFilter(i))},applyFilterPopoverValue:()=>{let{filterPopoverState:e,openedFilterType:n,dispatch:r,closeColumnFilterPopover:i}=t();if(!e)return;let a=n??`text`;if(a===`set`||a===`numberSet`||a===`textSet`||a===`dateSet`){i();return}if(a===`number`){let t=e.numberDraft?pr(e.numberDraft):null;if(!t){r(K.clearColumnFilter(e.columnKey)),i();return}r(K.setColumnFilter(e.columnKey,t)),i();return}let o=a===`select`?e.draftValue:e.draftValue.trim();if(!o){r(K.clearColumnFilter(e.columnKey)),i();return}let s=a===`select`?{kind:`select`,value:o}:a===`date`?{kind:`date`,value:o}:a===`custom`?{kind:`custom`,value:o}:{kind:`text`,value:o};r(K.setColumnFilter(e.columnKey,s)),i()},clearFilterPopoverValue:()=>{let{filterPopoverState:e,dispatch:n,closeColumnFilterPopover:r}=t();e&&(n(K.clearColumnFilter(e.columnKey)),r())}}},zr=()=>{let e=null,t=null,n,r=!1,i=()=>{if(e===null)throw Error(`[SpreadsheetGrid] rowSelectionCommands は update 前に呼べません。`);return e},a=e=>{let{rowSelectionState:t,onRowSelectionChange:n,controlledRowSelectionModel:r,dispatch:a}=i();pe(t,e)||n?.(de(e)),r===void 0&&a(K.setRowSelectionState(e))},o=(e,t,n)=>{let r=Math.min(t,n),i=Math.max(t,n),a=[];for(let t=r;t<=i;t+=1)e.getRow(t)&&a.push(e.getRowKey(t)??t);return a};return{update:t=>{e=t;let i=t.controlledRowSelectionModel;if((!r||!Object.is(i,n))&&(r=!0,n=i,i!==void 0)){let e=fe(i);pe(t.rowSelectionState,e)||t.dispatch(K.setRowSelectionState(e))}},commitRowSelection:a,handleGutterRowSelect:(e,n)=>{let{rowModel:r,rowSelectionMode:s,rowSelectionState:c}=i();if(!r.getRow(e))return;let l=r.getRowKey(e)??e;if(s===`single`){t=e,a(ae(l));return}if(n.shiftKey&&t!==null){a(oe(o(r,t,e)));return}t=e,a(ie(c,l))},handleGutterRowSelectDrag:e=>{let{rowModel:n,rowSelectionMode:r}=i();if(n.getRow(e)){if(r===`single`){a(ae(n.getRowKey(e)??e));return}t!==null&&a(oe(o(n,t,e)))}},handleToggleSelectAllRows:()=>{let{rowSelectionState:e,leafRowCount:t}=i(),n=ue(e,t);a(n===`all`?ce():se())}}},Br=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)}}),Vr=(e,t)=>({startRow:Math.min(e,t),endRow:Math.max(e,t)}),Hr=(e,t)=>({startCol:Math.min(e,t),endCol:Math.max(e,t)}),Ur=e=>e.filters.globalText,Wr=e=>{if(!e)return{kind:`none`};if(e.type===`cell`){let t=Br(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=Vr(e.startRow,e.endRow);return{kind:`row`,startRow:t.startRow,endRow:t.endRow}}let t=Hr(e.startCol,e.endCol);return{kind:`col`,startCol:t.startCol,endCol:t.endCol}},Gr=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}}},Kr=e=>{let t={};for(let n of Object.keys(e))t[n]=Gr(e[n]);return t},qr=e=>{let t={key:e.key};return e.visible!==void 0&&(t.visible=e.visible),e.pinned!==void 0&&(t.pinned=e.pinned),t},Jr=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}),Yr=(e,t,n,r=[],i=2)=>({version:i,columnWidths:{...e},filters:{globalText:t.globalText,columnFilters:Kr(t.columnFilters)},sort:n.map(e=>({...e})),columns:r.map(qr)}),Xr=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]=Gr(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}},Zr=(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 x(o)},Qr=(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,$r=(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,ei=(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]),ti=(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,ni=(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&&ti(e.parsed,t.parsed);case`numberSet`:return t.kind===`numberSet`&&ti(e.condition,t.condition)&&ei(e.set,t.set);case`textSet`:return t.kind===`textSet`&&Qr(e.condition,t.condition)&&ei(e.set,t.set);case`dateSet`:return t.kind===`dateSet`&&$r(e.condition,t.condition)&&ei(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)}},ri=(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},ii=(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)||!ni(e[r],t[r]))return!1;return!0},ai=(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},oi=(e,t)=>{if(e.version!==t.version||!ri(e.columnWidths,t.columnWidths)||e.filters.globalText!==t.filters.globalText||!ii(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!!ai(e.columns,t.columns)},si=(e,t,n)=>n?{emit:!1,nextLast:e}:e===null||oi(e,t)?{emit:!1,nextLast:t}:{emit:!0,nextLast:t},ci=({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))},li=({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))},ui=(e,t)=>e.includes(t)||e.includes(`"`)||e.includes(`
|
|
2
|
-
`)||e.includes(`\r`)?`"${e.replace(/"/g,`""`)}"`:e,di=(e,t)=>{let n=L(e,t);return t.formatClipboardValue?t.formatClipboardValue(n,e):String(n??``)},fi=({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=>ui(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=>ui(di(t,e),i));c.push(n.join(i))}let l=c.join(`\r
|
|
3
|
-
`);return o?`\uFEFF${l}`:l},pi=({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=L(t,e);return{value:n,text:e.formatClipboardValue?e.formatClipboardValue(n,t):String(n??``)}})))}return{columns:a,rows:o}},mi=e=>e===`all`?`view`:e===`visible`?`rendered`:e,hi=`入力値が不正です`,gi=e=>e===!0?{valid:!0,message:``}:e===!1?{valid:!1,message:hi}:typeof e==`string`?{valid:!1,message:e||`入力値が不正です`}:{valid:!1,message:e.message||`入力値が不正です`},_i=(e,t,n)=>{if(!e.validate)return null;let r=gi(e.validate({value:n,row:t,column:e}));return r.valid?null:r.message},vi=(e,t,n)=>{if((e.validationMode??`mark`)!==`reject`)return{action:`write`};let r=_i(e,t,n);return r===null?{action:`write`}:{action:`reject`,message:r}},yi=(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=_i(a,e,L(e,a));r!==null&&i.push({rowKey:n(e,t)??t,sourceRowIndex:t,columnKey:a.key,message:r})}}),i},bi=()=>{let e=null,t=(t,n,r=`auto`)=>{let i=Math.max(t.scrollHeight-t.clientHeight,0),a=Math.max(t.scrollWidth-t.clientWidth,0),o=Math.min(Math.max(n.top,0),i),s=Math.min(Math.max(n.left,0),a);(Math.round(o)!==Math.round(t.scrollTop)||Math.round(s)!==Math.round(t.scrollLeft))&&e?.markApiScroll(),t.scrollTo({top:o,left:s,behavior:r})},n=(n,r)=>{let i=e?.scrollContainerRef.current??null,a=e;!i||!a||t(i,{top:n===null?i.scrollTop:qn(n,a.verticalScaleFactor),left:r===null?i.scrollLeft:r})},r=(t,n)=>{let r=e?.scrollContainerRef.current??null,i=e;if(!r||!i||i.viewRowCount===0)return null;let a=Math.min(Math.max(t,0),i.viewRowCount-1);return ci({rowTop:i.rowMetrics.rowTop(a),rowHeight:i.rowMetrics.cellHeight(a),headerHeight:i.headerHeight,viewportHeight:r.clientHeight,currentScrollTop:Kn(r.scrollTop,i.verticalScaleFactor),align:n})},i=(t,n)=>{let r=e?.scrollContainerRef.current??null,i=e;if(!r||!i)return null;let a=P(i.paneLayout,t);return!a||a.pane!==`center`?null:li({cellLeft:i.leftPaneTotalWidth+i.centerLeadingWidth+a.extent.start,cellWidth:a.extent.width,leftPaneWidth:i.leftPaneTotalWidth,rightPaneWidth:i.rightPaneTotalWidth,viewportWidth:r.clientWidth,currentScrollLeft:r.scrollLeft,align:n})},a=(e,t,a)=>{n(r(e,a),i(t,a))},o=t=>{let n=e;if(!n)return null;let r=e=>n.rowModel.getRow(e),i=n.isRowExportable,a=i?(e,t)=>i(e,{viewRowIndex:t,rowKey:n.rowModel.getRowKey(t)??t}):void 0,o=i?(e,t)=>i(e,{viewRowIndex:t,rowKey:n.resolvedRowKeyGetter(e,t)}):void 0,s=mi(t);if(s===`raw`)return n.isServerSide?(console.warn(`SpreadsheetGrid: scope 'raw' は serverSide では未ロード行を取得できないため、'view'(ロード済みビュー行)として扱います。全件エクスポートはサーバ側での実施を推奨します。`),{getRow:r,startRow:0,endRow:n.viewRowCount,columns:n.orderedColumns,isRowIncluded:a}):{getRow:e=>n.rows[e],startRow:0,endRow:n.rows.length,columns:n.orderedColumns,isRowIncluded:o};if(s===`rendered`)return{getRow:r,startRow:n.windowFirstRow,endRow:n.windowLastRow>=n.windowFirstRow?n.windowLastRow+1:n.windowFirstRow,columns:n.orderedColumns,isRowIncluded:a};if(s===`selection`){let e=n.uiState.selection;if(!e)return null;if(e.type===`cell`){let t=Br(e.range);return{getRow:r,startRow:t.start.row,endRow:t.end.row+1,columns:n.orderedColumns.slice(t.start.col,t.end.col+1),isRowIncluded:a}}if(e.type===`row`){let t=Vr(e.startRow,e.endRow);return{getRow:r,startRow:t.startRow,endRow:t.endRow+1,columns:n.orderedColumns,isRowIncluded:a}}let t=Hr(e.startCol,e.endCol);return{getRow:r,startRow:0,endRow:n.viewRowCount,columns:n.orderedColumns.slice(t.startCol,t.endCol+1),isRowIncluded:a}}return{getRow:r,startRow:0,endRow:n.viewRowCount,columns:n.orderedColumns,isRowIncluded:a}},s=e=>e.filter(e=>!Qe(e.key)),c=e=>{let t=o(e?.scope??`view`);return t?fi({getRow:t.getRow,startRow:t.startRow,endRow:t.endRow,columns:s(t.columns),delimiter:e?.delimiter,includeHeaders:e?.includeHeaders,bom:e?.bom,isRowIncluded:t.isRowIncluded}):e?.bom?``:``},l=e=>{let t=o(e?.scope??`view`);return t?pi({getRow:t.getRow,startRow:t.startRow,endRow:t.endRow,columns:s(t.columns),isRowIncluded:t.isRowIncluded}):{columns:[],rows:[]}};return{update:t=>{e=t},handle:{scrollToRow:(e,t)=>n(r(e,t?.align??`auto`),null),scrollToCell:(e,t,n)=>a(e,t,n?.align??`auto`),scrollToTop:()=>{let n=e?.scrollContainerRef.current??null;n&&t(n,{top:0,left:n.scrollLeft})},scrollToBottom:()=>{let n=e?.scrollContainerRef.current??null,r=e;!n||!r||t(n,{top:Math.max(r.headerHeight+r.physicalBodyHeight-n.clientHeight,0),left:n.scrollLeft})},getScrollPosition:()=>{let t=e?.scrollContainerRef.current??null;return t?{top:t.scrollTop,left:t.scrollLeft}:null},setScrollPosition:(n,r)=>{let i=e?.scrollContainerRef.current??null;i&&t(i,{top:n.top??i.scrollTop,left:n.left??i.scrollLeft},r?.behavior??`auto`)},getVisibleRowRange:()=>{let t=e;return!t||t.windowLastRow<t.windowFirstRow?null:{startIndex:t.windowFirstRow,endIndex:t.windowLastRow+1}},getActiveCell:()=>{let t=e?.uiState.activeCell;return t?{row:t.row,col:t.col}:null},setActiveCell:(t,n)=>{let r=e;r&&(r.dispatch(K.activateCell(t)),t&&n?.scrollIntoView&&a(t.row,t.col,`auto`))},getSelection:()=>e?.uiState.selection??null,selectCell:(t,n,r)=>{let i=e;if(!i)return;let o={row:t,col:n};i.dispatch(K.startSelection(o)),i.dispatch(K.endSelection()),r?.scrollIntoView&&a(t,n,`auto`)},selectRange:(t,n)=>{let r=e;r&&(r.dispatch(K.startSelection(t.start)),r.dispatch(K.updateSelection(t.end)),r.dispatch(K.endSelection()),n?.scrollIntoView&&a(t.end.row,t.end.col,`auto`))},clearSelection:()=>{e?.dispatch(K.clearSelection())},getSelectedRows:()=>{let t=e;if(!t)return[];let n=t.uiState.selection;if(!n)return[];let r=[],i=e=>{let n=t.rowModel.getRow(e);n&&r.push(n)};if(n.type===`cell`){let e=Br(n.range);for(let t=e.start.row;t<=e.end.row;t+=1)i(t)}else if(n.type===`row`){let e=Vr(n.startRow,n.endRow);for(let t=e.startRow;t<=e.endRow;t+=1)i(t)}else for(let e=0;e<t.viewRowCount;e+=1)i(e);return r},exportCsv:e=>c(e),downloadCsv:(e,t)=>{if(typeof document>`u`)return;let n=c({...t,bom:t?.bom??!0}),r=new Blob([n],{type:`text/csv;charset=utf-8;`}),i=URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=e??`export.csv`,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(i)},getExportData:e=>l(e),getState:()=>{let t=e;return t?Yr(t.uiState.columnWidths,t.uiState.filters,t.uiState.sort,Jr(t.columns)):Yr({},{globalText:``,columnFilters:{}},[],[])},applyState:t=>{let n=e;if(!n)return;let r=Xr(t);n.onColumnsChange&&r.columns&&n.onColumnsChange(Zr(n.columns,r.columns,r.columnWidths)),n.dispatch(K.resetColumnWidths(r.columnWidths)),n.dispatch(K.setAllFilters(r.filters)),n.dispatch(K.setSort(r.sort))},getRowSelection:()=>{let t=e;return t?de(t.uiState.rowSelection):{type:`include`,rowKeys:[]}},setRowSelection:t=>{e?.commitRowSelection(fe(t))},getSelectedRowKeys:()=>{let t=e;if(!t)return[];let n=t.uiState.rowSelection;if(n.mode===`include`)return Array.from(n.keys);let r=[],i=t.rowModel.getRowCount();for(let e=0;e<i;e+=1){if(!t.rowModel.getRow(e))continue;let i=t.rowModel.getRowKey(e)??e;n.keys.has(i)||r.push(i)}return r},getSelectedRowData:()=>{let t=e;if(!t)return[];let n=t.uiState.rowSelection,r=[],i=t.rowModel.getRowCount();for(let e=0;e<i;e+=1){let i=t.rowModel.getRow(e);i&&re(n,t.rowModel.getRowKey(e)??e)&&r.push(i)}return r},getSelectedRowCount:()=>{let t=e;return t?le(t.uiState.rowSelection,t.leafRowCount):0},isRowSelected:t=>{let n=e;return n?re(n.uiState.rowSelection,t):!1},selectAllRows:()=>{e?.commitRowSelection(se())},clearRowSelection:()=>{e?.commitRowSelection(ce())},undo:()=>{e?.undoRows()},redo:()=>{e?.redoRows()},canUndo:()=>e?.canUndoRows()??!1,canRedo:()=>e?.canRedoRows()??!1,clearUndoHistory:()=>{e?.clearUndoHistory()},setGroupCollapsed:(t,n)=>{e?.dispatch(K.setGroupCollapsed(t,n))},expandAllGroups:()=>{e?.dispatch(K.setCollapsedGroupKeys(new Set))},collapseAllGroups:()=>{let t=e;!t||!t.groupTree||t.dispatch(K.setCollapsedGroupKeys(new Set(Be(t.groupTree))))},getGroupRows:()=>{let t=e;return t?.groupTree?ze(t.groupTree):[]},setDetailRowExpanded:(t,n)=>{let r=e;if(!(!r||!r.detailRowEnabled)){if(n&&r.detailIsExpandable){let e=it(r.rowModel,t,r.detailIndexCacheRef.current,!r.isServerSide);if(e>=0){let n=r.rowModel.getRow(e);if(n!=null&&!r.detailIsExpandable(n,{rowKey:t,sourceRowIndex:r.rowModel.getSourceIndex(e)}))return}}r.dispatch(K.setDetailRowExpanded(t,n))}},getExpandedDetailRowKeys:()=>{let t=e;return t&&t.detailRowEnabled?Array.from(t.uiState.expandedDetailRowKeys):[]},collapseAllDetailRows:()=>{let t=e;!t||!t.detailRowEnabled||t.dispatch(K.setExpandedDetailRowKeys(new Set))},moveRow:(t,n)=>{e?.moveRowByKey(t,n)},getInvalidCells:()=>{let t=e;return t?t.isServerSide?(console.warn(`[SpreadsheetGrid] getInvalidCells は serverSide モードでは利用できません(空配列を返します)。`),[]):yi(t.rows,t.columns,t.resolvedRowKeyGetter):[]},refreshServerSide:()=>{let t=e;if(t){if(!t.isServerSide){console.warn(`[SpreadsheetGrid] refreshServerSide は clientSide(rows)モードでは何もしません(dataSource 指定時のみ有効です)。`);return}t.serverSideRefresh()}},openFilterManager:()=>{e?.openToolPanel(`filter`)},closeFilterManager:()=>{let t=e;t&&t.activeToolPanelTab===`filter`&&t.closeToolPanel()}},applyScroll:n,verticalTargetFor:r,horizontalTargetFor:i,scrollToCellInternal:a}},Q=()=>{let e=null,t=null;return{update:t=>{e=t},applyHoveredRowChange:n=>{if(e===null||!e.enableRowHover)return;let r=t,i=typeof n==`function`?n(r):n;i!==r&&(t=i,e.isHoverControlled||e.setHoveredRowIndex(i),e.onHoveredRowChange?.(i,{source:`pointer`}))}}},xi=()=>{let e=null;return{update:({expandedKeys:t,onChange:n})=>{if(e===null){e=t;return}Object.is(e,t)||(e=t,n?.(Array.from(t)))}}},Si=()=>{let e=null,t=null,n=(e,t)=>Object.is(e.columnWidths,t.columnWidths)&&Object.is(e.filters,t.filters)&&Object.is(e.sort,t.sort)&&Object.is(e.dragState,t.dragState)&&Object.is(e.columns,t.columns);return{update:r=>{let i=e===null||!n(e,r);if(e=r,!i||!r.onStateChange)return;let a=Yr(r.columnWidths,r.filters,r.sort,Jr(r.columns)),o=si(t,a,r.dragState!==null);t=o.nextLast,o.emit&&r.onStateChange(a)}}},Ci=e=>{let t=Rt(),n=Vt(),r=zn(),i=er(),a=Lr(),o=xe(_e(t(e.columnInputs).visibleColumns)),s=o.getState(),c=ht(r.resolveServerSideQuery({isServerSide:e.serverSide.isServerSide,globalFilterEnabled:e.serverSide.enableGlobalFilter,globalText:s.filters.globalText,columnFilterEnabled:e.serverSide.enableColumnFilter,columnFilters:s.filters.columnFilters,sortingEnabled:e.serverSide.enableSorting,sort:s.sort}),300),l=pt(),u=mt(),d=It();return{store:o,resolveColumns:t,resolvePaneLayout:n,rowPipeline:r,resolveVerticalLayout:i,resolveFilterPopoverDerived:a,columnCommands:ir(),filterPopoverCommands:Rr(),rowSelectionCommands:zr(),gridApi:bi(),hoverRowNotifier:Q(),detailKeysNotifier:xi(),stateChangeNotifier:Si(),autoHeightMeasurer:l,scrollSync:u,serverSideQueryStore:c,autoSizeOnData:d,detailIndexCache:rt(),dispose:()=>{l.dispose(),u.dispose(),c.dispose()}}},wi=typeof document<`u`?e.useLayoutEffect:e.useEffect;function Ti(t,n,r=`layout`){(r===`passive`?e.useEffect:wi)(()=>{t.update(n)}),(0,e.useEffect)(()=>()=>{t.dispose?.()},[t])}function $(t,n,r=`layout`){let[i]=(0,e.useState)(t);return Ti(i,n,r),i}function Ei(t){return[(0,e.useSyncExternalStore)(t.subscribe,t.getState,t.getState),t.dispatch]}function Di(t){return[(0,e.useSyncExternalStore)(t.subscribe,t.getViewState,t.getViewState),(0,e.useMemo)(()=>{let e=e=>n=>{t.setViewState(t=>({[e]:be(n,t[e])}))};return{setScrollTop:e(`scrollTop`),setViewportWidth:e(`viewportWidth`),setViewportHeight:e(`viewportHeight`),setHoveredRowIndex:e(`hoveredRowIndex`),setHoveredColumnIndex:e(`hoveredColumnIndex`),setIsCornerHovered:e(`isCornerHovered`)}},[t])]}function Oi({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 ki({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 Ai=e=>{let t=e??`down`;return t===`none`?void 0:t},ji=({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(Ai(i));return}if(a.key===`Escape`){a.preventDefault(),n();return}a.key===`Tab`&&(a.preventDefault(),o(a.shiftKey?`left`:`right`))};function Mi({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 Ni({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:ji({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)(Mi,{message:d})]})}function Pi({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:ji({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)(Mi,{message:m})]})}var Fi=8,Ii=8,Li=2,Ri=(e,t)=>{let n=String(t??``),r=e.findIndex(e=>e.value===n);return r>=0?r:0},zi=(e,t,n)=>{if(n<=0)return 0;let r=e+t;return r<0?0:r>n-1?n-1:r},Bi=()=>({buffer:``,lastInputTime:0}),Vi=(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}},Hi=(e,t,n,r)=>{let i=Math.max(e.width,180),a=Math.max(Ii,n-i-Ii),o=Math.min(Math.max(e.left,Ii),a),s=Math.min(Math.max(t,1),Fi)*28+8,c=e.bottom+Li;return{left:o,top:c+s<=r-Ii?c:Math.max(Ii,e.top-Li-s),width:i,maxHeight:s}};function Ui({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)(Bi()),[h,g]=(0,e.useState)(()=>Ri(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(Hi(e.getBoundingClientRect(),n.length,window.innerWidth,window.innerHeight)))},[n.length]);(0,e.useEffect)(()=>{let e=()=>{let e=f.current;e&&v(Hi(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=>zi(e,t,n.length)),b(null);return}if(e.key===`Enter`){e.preventDefault(),C(Ai(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=Vi(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)(Mi,{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 Wi({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:ji({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)(Mi,{message:d})]})}function Gi({render:e,context:t}){return(0,r.jsx)(r.Fragment,{children:e(t)})}var Ki=e=>({checkedValue:e.checkedValue??!0,uncheckedValue:e.uncheckedValue??!1}),qi=(e,t)=>Object.is(e,Ki(t).checkedValue),Ji=(e,t)=>{let{checkedValue:n,uncheckedValue:r}=Ki(t);return Object.is(e,n)?r:n},Yi=(e,t)=>{let{checkedValue:n,uncheckedValue:r}=Ki(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},Xi=e=>{if(e===``)return null;let t=Number(e);return Number.isFinite(t)?t:e},Zi=e=>`${String(e.getFullYear()).padStart(4,`0`)}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`,Qi=e=>{if(e instanceof Date)return Number.isNaN(e.getTime())?``:Zi(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 Zi(n)}return``},$i=e=>{if(e===``)return null;let t=Qi(e);return t===``?e:t},ea=e=>{if(e.parseClipboardValue)return e.parseClipboardValue;if(e.editor?.type===`number`)return Xi;if(e.editor?.type===`date`)return $i;if(e.editor?.type===`checkbox`){let t=e.editor;return e=>Yi(e,t)}return e=>e},ta=(e,t,n)=>typeof t==`string`?ea(e)(t,n):t,na=(e,t,n,r)=>e.map((e,i)=>i===t?Ce(e,n,r):e);function ra({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)(Pi,{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)(Wi,{enterMove:h,initialValue:Qi(l?l.value:s),onCommit:f,onCancel:p,align:m},y);else if(c?.type===`custom`)S=l?(0,r.jsx)(Gi,{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)(Ui,{popoverSlot:d?.popover,enterMove:h,options:e,value:l?.value,onCommit:f,onCancel:p,align:m,themeClassName:u},y)}else S=(0,r.jsx)(Ni,{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 ia=({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}},aa=(e,t)=>!(!e||t?.contains(e)||(e instanceof Element?e:e.parentElement)?.closest(`[data-ssg-filter-keep-open]`)),oa=e=>{document.activeElement instanceof HTMLElement&&document.activeElement.blur(),e?.blur()},sa=e=>{requestAnimationFrame(()=>{et()||e.current?.focus()})},ca=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}},la=240,ua=8,da=8,fa=230,pa=340,ma=480,ha=(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}},ga=()=>{let e=null,t=dt({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:ha(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`?ma:n===`set`?pa:fa,{top:i,left:s,maxHeight:c}=ia({anchorTop:e.top,anchorBottom:e.bottom,anchorRight:e.right,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,popupWidth:la,popupHeight:o??r,offsetY:da,viewportMargin:ua});p({top:i,left:s,width:la,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&&sa(e.gridRootRef)},y=ca({onResize:h,onScroll:h,isInside:e=>!aa(e,n.current),onOutsidePointerDown:v}),b=n=>{if(e===null||!e.enableColumnFilter)return;let{gridRootRef:r,resolveColumnFilterType:i,columnFilterValues:o}=e;oa(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&&!tt(s,e))??null:null;let l=n.filterType===`auto`&&i?i(n):n.filterType??`text`,u=o[n.key],d=l===`number`?_r(pn(u)?u:void 0):l===`numberSet`?gr(Yt(u)?u.condition:void 0):null,f=l===`textSet`?Sr(Xt(u)?u.condition:void 0):null,p=l===`dateSet`?Or(Zt(u)?u.condition:void 0):null;t.setSnapshot({...t.getSnapshot(),state:{columnKey:n.key,filterType:l,draftValue:mn(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()}}},_a=t=>{let n=$(()=>ga(),t),r=(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot),{visibleColumns:i}=t,a=r.state,o=(0,e.useMemo)(()=>ha(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}},va=e=>{let t=e.replace(/\r\n/g,`
|
|
4
|
-
`).replace(/\r/g,`
|
|
5
|
-
`);return t?t.split(`
|
|
6
|
-
`).filter(e=>e.length>0).map(e=>e.split(` `)):[]},ya=(e,t,n,r,i)=>{if(!r)return``;let a=[];if(r.type===`cell`){let t=Br(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=L(o,t),i=t.formatClipboardValue?t.formatClipboardValue(r,o):String(r??``);s.push(i)}a.push(s.join(` `))}return a.join(`
|
|
7
|
-
`)}if(r.type===`row`){let t=Vr(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=L(t,e);return e.formatClipboardValue?e.formatClipboardValue(n,t):String(n??``)});a.push(o.join(` `))}return a.join(`
|
|
8
|
-
`)}let o=Hr(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=L(t,r),a=r.formatClipboardValue?r.formatClipboardValue(i,t):String(i??``);s.push(a)}a.push(s.join(` `))}return a.join(`
|
|
9
|
-
`)},ba=(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=ea(s)(f,l);vi(s,l,p).action!==`reject`&&(u=Ce(u,s,p),d=!0)}d&&(s[c]=u)}return s},xa=(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=ea(u)(n[s][e],l);vi(u,l,d).action!==`reject`&&o.push({viewIndex:c,column:u,value:d})}}return o},Sa=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},Ca=async e=>{if(navigator.clipboard?.writeText)try{return await navigator.clipboard.writeText(e),!0}catch{}return Sa(e)?!0:(console.warn(`[SpreadsheetGrid] クリップボードへのコピーに失敗しました(navigator.clipboard が利用できず、execCommand フォールバックも失敗)。`),!1)},wa=(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},Ta=()=>{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=L(n,e);return e.formatClipboardValue?e.formatClipboardValue(t,n):String(t??``)});o.push(i.join(` `))}return o.join(`
|
|
10
|
-
`)};return{update:t,handleCopy:async()=>{if(e===null)return;let t=e,{rowModel:i,visibleColumns:a,uiState:o}=t,s=wa(o.selection,i.getRowCount(),a.length)?r(t):ya(i.getRow,i.getRowCount(),a,o.selection,n(t));s&&await Ca(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=va(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,y=a.activeCell.col;if(f){let e=xa(e=>r.getRow(e),i,h,_,y,(e,t,n,r)=>Se({readOnly:o,canEditCell:s},e,t,n,r));e.length>0&&f(e);let t=v(a.activeCell.row+Math.max(h.length-1,0),0,Math.max(r.getRowCount()-1,0)),n=v(a.activeCell.col+Math.max(g-1,0),0,Math.max(i.length-1,0));p(K.startSelection(a.activeCell)),p(K.updateSelection({row:t,col:n})),p(K.endSelection()),p(K.activateCell(a.activeCell));return}if(!u)return;let b=r.getSourceIndex(_);if(b===void 0)return;let x=a.activeCell.col,S=[...n],C=[...i],w=r.getRowCount(),T=S.length,E=e=>e<w?r.getSourceIndex(e):T+(e-w),D=b+h.length;if(D>S.length&&c)for(;S.length<D;)S.push(c());let O=x+g;if(O>C.length&&d&&l){for(;C.length<O;)C.push(l(C.length));d(C)}let k=ba(S,E,C,h,_,x,(e,t,n,r)=>Se({readOnly:o,canEditCell:s},e,t,n,r)),A=v(a.activeCell.row+Math.max(h.length-1,0),0,Math.max(Math.max(r.getRowCount()-1,0),_+h.length-1)),j=v(a.activeCell.col+Math.max((h[0]?.length??1)-1,0),0,Math.max(Math.max(C.length-1,0),x+g-1));u(k),p(K.startSelection(a.activeCell)),p(K.updateSelection({row:A,col:j})),p(K.endSelection()),p(K.activateCell(a.activeCell))}}},Ea=t=>{let n=$(()=>Ta(),t),r=wa(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}},Da=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},Oa=(e,t,n)=>e?e(t):n,ka=(e,t=16)=>e.length<=t?e:`${e.slice(0,t)}…`,Aa=e=>e?`${Da(e.col)}${e.row+1}`:`なし`,ja=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`${Da(r)}${t+1} - ${Da(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 ${Da(t)} - ${Da(n)}`},Ma=(e,t)=>`Rows: ${t} / ${e.rows.length}`,Na=e=>`Columns: ${e.visibleColumns.length} / ${e.columns.length}`,Pa=(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}},Fa=(e,t)=>{let n=Pa(e,t);return`Cells: ${n.selectedCellCount} / Rows: ${n.selectedRowCount}`},Ia=e=>Object.values(e).filter(e=>$t(e)).length,La=e=>{let t=e.globalFilterText.trim().length>0,n=t?ka(e.globalFilterText.trim()):null,r=Ia(e.columnFilterValues);return!t&&r===0?`Filter: なし`:t&&r===0?`Filter: Global("${n}")`:!t&&r>0?`Filter: ${r}列`:`Filter: Global("${n}") + ${r}列`},Ra=(e,t)=>{let n=e.find(e=>e.key===t);return n?.title||n?.key||t},za=e=>e.sortState.length===0?`Sort: なし`:`Sort: ${e.sortState.map(t=>`${Ra(e.columns,t.columnKey)} (${t.direction===`asc`?`昇順`:`降順`})`).join(`, `)}`,Ba=(e,t)=>{let n=Pa(e,t),r=e.globalFilterText.trim().length>0,i=r?ka(e.globalFilterText.trim()):null,a=Ia(e.columnFilterValues),o=r||a>0,s=e.sortState.length>0,c=s?Ra(e.columns,e.sortState[0].columnKey):null;return{rowSummaryText:Ma(e,t),columnSummaryText:Na(e),filterSummaryText:La(e),sortSummaryText:za(e),activeCellLabel:Aa(e.activeCell),selectionLabel:ja(e.selection),selectionStatsText:Fa(e,t),selectionStats:n,hasGlobalFilter:r,globalFilterPreview:i,activeColumnFilterCount:a,hasAnyFilter:o,hasSorting:s,sortedColumnLabel:c}},Va=({rows:t,viewRowCount:n,getFilteredRows:r,columns:i,visibleColumns:a,uiState:o,setGlobalFilterText:s,globalFilterStatus:c,globalFilterProgress:l})=>{let u=Ur(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)(()=>Ba(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])}},Ha=()=>{let e=null,t=t=>{e=t},n=t=>{e!==null&&(e.dispatch(K.startSelection(t)),e.dispatch(K.endSelection()),e.dispatch(K.activateCell(t)))},r=(t,n)=>{e!==null&&(e.setEditorInitialValue(n),e.dispatch(K.startEdit(t)))},i=t=>{let r=e;r!==null&&requestAnimationFrame(()=>{if(et()||r.gridRootRef.current?.focus(),t!==null&&e!==null){let r=e.rowModel.getRowCount(),i=e.visibleColumns.length;n({row:v(t.row,0,Math.max(r-1,0)),col:v(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(K.stopEdit()),{status:`noop`};if(c){let e=ta(m,t,g),n=vi(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=ta(m,t,g),n=vi(m,g,e);if(n.action===`reject`)return{status:`rejected`,message:n.message};l(na(s,h,m,e))}return d.current=!0,i(p),u(K.stopEdit()),{status:`committed`}},cancelEdit:()=>{e===null||e.editorActionGuardRef.current||(e.editorActionGuardRef.current=!0,e.dispatch(K.stopEdit()),i(null))}}},Ua=e=>{let t=$(()=>Ha(),e);return{activateSingleCell:t.activateSingleCell,startEditWithValue:t.startEditWithValue,commitEdit:t.commitEdit,cancelEdit:t.cancelEdit}},Wa=()=>({past:[],future:[]}),Ga=e=>e.past.length>0,Ka=e=>e.future.length>0,qa=(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:[]}},Ja=(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}},Ya=(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}},Xa=()=>{let e=null,t=Wa(),n=null,r=null,i={canUndo:!1,canRedo:!1},a=()=>e!==null&&e.enabled&&e.onRowsChange!=null,o=()=>a()&&Ga(t),s=()=>a()&&Ka(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=Wa())),c()},u=t=>{if(e===null)return;let{dispatch:n}=e,r=t.selection;r?.type===`cell`?(n(K.startSelection(r.range.start)),n(K.updateSelection(r.range.end)),n(K.endSelection())):r?.type===`row`?(n(K.startRowSelection(r.startRow)),n(K.updateRowSelection(r.endRow)),n(K.endSelection())):r?.type===`col`?(n(K.startColumnSelection(r.startCol)),n(K.updateColumnSelection(r.endCol)),n(K.endSelection())):n(K.clearSelection()),n(K.activateCell(t.activeCell))},d=r=>{e===null||!e.onRowsChange||(e.enabled&&(t=qa(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(Ja(t,e))},redo:()=>{let e=p();!a()||e===null||f(Ya(t,e))},canUndo:o,canRedo:s,clearHistory:()=>{t=Wa(),c()}}},Za=t=>{let n=$(()=>Xa(),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}},Qa=e=>e.key.length===1&&!e.ctrlKey&&!e.metaKey&&!e.altKey,$a=e=>e instanceof HTMLElement?e.closest(`input, textarea, select, button, [contenteditable="true"]`)!==null:!1,eo=()=>{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:v(l.row+t,0,c-1),col:v(l.col+n,0,o.length-1)};if(r){let e=i.selection?.type===`cell`?i.selection.range.start:l;s(K.startSelection(e)),s(K.updateSelection(u)),s(K.endSelection()),s(K.activateCell(u));return}s(K.startSelection(u)),s(K.endSelection()),s(K.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:v,onToggleGroup:y}=e;if(!$a(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(K.clearSelection()),l(K.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(K.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(),y(e.groupKey);return}}if(t.key===`Enter`||t.key===`F2`){t.preventDefault(),r.activeCell&&d(r.activeCell);return}if(Qa(t)&&r.activeCell){let e=i.getRow(r.activeCell.row),n=a[r.activeCell.col];if(!e||!n||!Se({readOnly:o,canEditCell:s},r.activeCell.row,r.activeCell.col,e,n))return;if(n.editor?.type===`checkbox`){t.preventDefault(),t.key===` `&&v(r.activeCell);return}t.preventDefault(),c(t.key),l(K.startEdit(r.activeCell))}}}}},to=t=>{let n=$(()=>eo(),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])}},no=({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}},ro=(e,t,n,r)=>e<t+r?-1:+(e>n-r),io=(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},ao=(e,t,n)=>{let r=t.x-e.x,i=t.y-e.y;return r*r+i*i>=n*n},oo=()=>{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(),y=Jn(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=k(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=k(l.right,n)}}if(b===null&&l.center.entries.length>0){let e=g.scrollLeft+t-_.left-d;b=k(l.center,Math.max(e,0))}return b===null?null:{row:y,col:v(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(K.updateSelection(i));return}if(r.selectionKind===`row`){e.dispatch(K.updateRowSelection(i.row));return}r.selectionKind===`col`&&e.dispatch(K.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(K.activateCell(u.cell)),o&&(a(K.startSelection(u.cell)),a(K.endSelection()));return}if(i=null,u.kind===`row`){if(s){c(u.rowIndex,{shiftKey:!1});return}a(K.startRowSelection(u.rowIndex)),a(K.endSelection());return}a(K.startColumnSelection(u.colIndex)),a(K.endSelection())},m=()=>{e!==null&&(n=!1,e.dispatch(K.endSelection()),e.dispatch(K.endColumnResize()))},h=t=>{e!==null&&(e.pointerClientRef.current={x:t.clientX,y:t.clientY},u()?.type===`columnResize`&&e.dispatch(K.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()},y=()=>{t||(t=!0,window.addEventListener(`pointermove`,h),window.addEventListener(`pointerup`,g),window.addEventListener(`pointercancel`,_))},b=()=>{t&&(t=!1,window.removeEventListener(`pointermove`,h),window.removeEventListener(`pointerup`,g),window.removeEventListener(`pointercancel`,_))},x=()=>{l=!1,e!==null&&e.autoScrollFrameRef.current!==null&&(cancelAnimationFrame(e.autoScrollFrameRef.current),e.autoScrollFrameRef.current=null)},S=()=>{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(S);return}if(!c){let e=s;if(e&&!ao(e,a,6)){r.current=requestAnimationFrame(S);return}c=!0}let o=i.getBoundingClientRect(),d=no({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:ro(a.y,d.top,d.bottom,24),_=h?0:ro(a.x,d.left,d.right,24),v=io(i.scrollTop,g,18,i.scrollHeight-i.clientHeight),y=io(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(S)},C=()=>{let t=u()?.type===`selection`;t&&!l?(l=!0,e!==null&&(e.autoScrollFrameRef.current=requestAnimationFrame(S))):!t&&l&&x()},w=()=>{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&&!ao(e,u,6)){o=requestAnimationFrame(t);return}c=!0}let f=l.getBoundingClientRect(),p=no({rectLeft:f.left,rectTop:f.top,clientLeft:l.clientLeft,clientTop:l.clientTop,clientWidth:l.clientWidth,clientHeight:l.clientHeight}),m=ro(u.y,p.top,p.bottom,24),h=io(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)},T=(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,y(),C()},updateSelectionFromPointer:f,handleCellPointerDown:(t,n)=>{!T(n,{kind:`cell`,cell:t})||e===null||(e.dispatch(K.activateCell(t)),e.enableRangeSelection&&e.dispatch(K.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(K.updateSelection(t)))},handleNativeDragStart:e=>{e.preventDefault()},handleRowHeaderPointerDown:(t,r)=>{if(!(!T(r,{kind:`row`,rowIndex:t})||e===null)){if(e.enableRowSelection){n=!0,e.onGutterRowSelect(t,{shiftKey:r.shiftKey}),w();return}e.dispatch(K.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(K.updateRowSelection(t)))},handleColumnHeaderPointerDown:(t,n)=>{if(!(!T(n,{kind:`col`,colIndex:t})||e===null)){if(n.shiftKey&&e.enableSorting){let n=e.orderedColumns[t];if(n&&!Qe(n.key)){let t=e.uiState.sort,r=t.find(e=>e.columnKey===n.key)?.direction?`desc`:`asc`,i=En(t,n.key,r,!0);e.dispatch(i.length===0?K.clearSort():K.setSort(i))}return}e.dispatch(K.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(K.updateColumnSelection(t)))},dispose:()=>{b(),x(),o!==null&&(cancelAnimationFrame(o),o=null)}}},so=e=>{let t=$(()=>oo(),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}},co=(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)},lo=(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=Kn(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:qn(d,n.verticalScaleFactor),left:f,behavior:`auto`})},uo=(e,t,n)=>e===null||n.some(n=>!Object.is(e[n],t[n])),fo=()=>{let e=null,t=null;return{update:n=>{if(uo(e,n,[`columnVirtualizer`,`columnMeasurements`])&&n.columnVirtualizer.measure(),uo(e,n,[`scrollElement`,`totalScrollWidth`,`physicalBodyHeight`,`headerHeight`])&&n.scrollElement&&co(n.scrollElement,n),uo(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&&lo(n.scrollElement,n.activeCellRect,n)}e=n}}},po=({scrollRef:t,...n})=>{let[r]=(0,e.useState)(()=>fo());(0,e.useEffect)(()=>{r.update({...n,scrollElement:t.current})})};function mo(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 ho=e=>e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`);function go(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:ho(n);e.style.setProperty(t,String(r)),i.push(t)}return{classNames:r,styleKeys:i}}var _o=`data-ssg-tooltip`,vo=`[${_o}], [data-ssg-tooltip-overflow]`,yo=350,bo=800,xo=0,So=null,Co=null,wo=0,To=null,Eo,Do;function Oo(e){Do=go(e,Eo,Do)}function ko(){if(So!==null)return So;let e=document.createElement(`div`);return e.className=`ssg-tooltip`,e.setAttribute(`aria-hidden`,`true`),Do=void 0,Oo(e),document.body.appendChild(e),So=e,e}function Ao(){Co!==null&&(window.clearTimeout(Co),Co=null)}function jo(){Ao(),To!==null&&(wo=Date.now()+bo),To=null,So!==null&&So.classList.remove(`ssg-tooltip--visible`)}function Mo(e){let t=e.getAttribute(_o),n=t!==null&&t!==``?t:(e.textContent??``).trim();if(n===``)return;let r=ko();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=mo({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`),To=e}function No(e){let t=e.target;if(!(t instanceof Element))return;let n=t.closest(vo);if(n===null||n===To||!n.hasAttribute(_o)&&n.scrollWidth<=n.clientWidth+1)return;let r=To!==null;jo(),r||Date.now()<wo?Mo(n):Co=window.setTimeout(()=>{Co=null,Mo(n)},yo)}function Po(e){let t=e.target;if(!(t instanceof Element))return;let n=t.closest(vo);if(n===null)return;let r=e.relatedTarget;r instanceof Node&&n.contains(r)||jo()}function Fo(){jo()}function Io(e){e.key===`Escape`&&jo()}function Lo(){window.addEventListener(`pointerover`,No,!0),window.addEventListener(`pointerout`,Po,!0),window.addEventListener(`focusin`,No,!0),window.addEventListener(`focusout`,Po,!0),window.addEventListener(`pointerdown`,Fo,!0),window.addEventListener(`scroll`,Fo,!0),window.addEventListener(`keydown`,Io,!0)}function Ro(){window.removeEventListener(`pointerover`,No,!0),window.removeEventListener(`pointerout`,Po,!0),window.removeEventListener(`focusin`,No,!0),window.removeEventListener(`focusout`,Po,!0),window.removeEventListener(`pointerdown`,Fo,!0),window.removeEventListener(`scroll`,Fo,!0),window.removeEventListener(`keydown`,Io,!0)}function zo(e){xo+=1,xo===1&&Lo();let t=!1,n=e=>{Eo=e,So!==null&&Oo(So)};return n(e),{setSlot:n,dispose:()=>{t||(t=!0,--xo,xo===0&&(Ro(),Ao(),To=null,So!==null&&(So.remove(),So=null)))}}}function Bo(t){let n=(0,e.useRef)(null);(0,e.useEffect)(()=>{let e=zo();return n.current=e,()=>{e.dispose(),n.current=null}},[]),(0,e.useEffect)(()=>{n.current?.setSlot(t)},[t])}var Vo=`(prefers-color-scheme: dark)`,Ho=()=>typeof window<`u`&&typeof window.matchMedia==`function`,Uo={subscribe(e){if(!Ho())return()=>{};let t=window.matchMedia(Vo);return t.addEventListener(`change`,e),()=>{t.removeEventListener(`change`,e)}},getSnapshot(){return Ho()?window.matchMedia(Vo).matches:!1},getServerSnapshot(){return!1}},Wo=(e,t)=>e===`dark`||e===`auto`&&t?`dark`:`light`;function Go(t){return Wo(t,(0,e.useSyncExternalStore)(Uo.subscribe,Uo.getSnapshot,Uo.getServerSnapshot))}function Ko(e,t,n,r){let i=e.find(e=>e.key===t);if(!i)return null;let a=b(i),o={left:[],center:[],right:[]},s=new Map;for(let t of e)o[b(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 qo=32,Jo=2,Yo=14,Xo=12,Zo=`<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>`,Qo=`<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>`,$o=`<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>`,es=`0.5`,ts=200,ns=`cubic-bezier(0.2, 0.7, 0.3, 1)`,rs=()=>typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches,is=e=>{if(!e)return null;let t=new Map;return e.querySelectorAll(`[data-ssg-col-key]`).forEach(n=>{if(tt(e,n))return;let r=n.dataset.ssgColKey;r&&!t.has(r)&&t.set(r,n.getBoundingClientRect().left)}),t},as=()=>{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(`;`),go(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+Yo)+`px,`+(i.y+Xo)+`px)`;let n=e??`out`;if(d===n)return;d=n;let r=u;n===`out`?(t.style.opacity=es,r&&(r.innerHTML=$o)):(t.style.opacity=`1`,r&&(r.innerHTML=n===`center`?Zo:Qo))},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+qo)return{pane:`left`,slot:0,leftPx:Jo};if(f&&r.left.entries.length>0){let e=f.getBoundingClientRect();if(t<e.right){let n=t-e.left-c,i=A(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-qo)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=A(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=A(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||ao(a,i,6))&&(o=!0),o)){let e=n.getBoundingClientRect(),t=no({rectLeft:e.left,rectTop:e.top,clientLeft:n.clientLeft,clientTop:n.clientTop,clientWidth:n.clientWidth,clientHeight:n.clientHeight}),r=ro(i.x,t.left,t.right,24),a=io(n.scrollLeft,r,18,n.scrollWidth-n.clientWidth);a!==n.scrollLeft&&n.scrollTo({left:a,behavior:`auto`})}v(),c=requestAnimationFrame(y)},x=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=Ko(s,a,o.pane,o.slot);if(!d)return;let f=s.find(e=>e.key===a),m=f?b(f):null;r=m!==null&&m===o.pane&&!rs()?is(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(),x(!0))}function h(e){e.pointerId===u&&(f(),x(!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(tt(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 ${ts}ms ${ns}`,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()}}},os=t=>{let n=(0,e.useRef)(null),r=(0,e.useRef)(null),i=(0,e.useRef)(null),a=$(()=>as(),{...t,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i});return{onColumnDragHandlePointerDown:a.onColumnDragHandlePointerDown,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i,applyReorderSettle:a.applyReorderSettle}},ss=14,cs=12,ls=`0.5`,us=`<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>`,ds=`<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>`,fs=200,ps=`cubic-bezier(0.2, 0.7, 0.3, 1)`,ms=`data-ssg-row-dragging`,hs=()=>typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches,gs=/translateY\((-?[\d.]+)px\)/,_s=e=>{let t=[];return e.querySelectorAll(`.ssg-body-row[data-row-index]`).forEach(n=>{tt(e,n)||t.push(n)}),t},vs=()=>{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(`;`),go(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+ss)+`px,`+(r.y+cs)+`px)`;let n=e?`move`:`out`;if(d===n)return;d=n;let i=u;n===`out`?(t.style.opacity=ls,i&&(i.innerHTML=ds)):(t.style.opacity=`1`,i&&(i.innerHTML=us))},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=>{tt(r,e)||(n?e.setAttribute(ms,``):e.removeAttribute(ms))})},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=We(u.scrollTop+n-f.top-o-l.scrollTop*(1-s),a);return{slot:p,top:o+Ge(p,a)-c}},y=()=>{let e=v(r.x,r.y);h(e);let i=t;if(!e||i===null||Ue(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||ao(i,r,6))&&(a=!0),a)){let e=n.getBoundingClientRect(),t=no({rectLeft:e.left,rectTop:e.top,clientLeft:n.clientLeft,clientTop:n.clientTop,clientWidth:n.clientWidth,clientHeight:n.clientHeight}),i=ro(r.y,t.top,t.bottom,24),a=io(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 _s(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=Ue(a,o);l!==null&&(c=hs()?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=gs.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 ${fs}ms ${ps}`,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}}},ys=t=>{let n=(0,e.useRef)(null),r=(0,e.useRef)(null),i=(0,e.useRef)(null),a=$(vs,{...t,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i});return{onRowDragHandlePointerDown:a.onRowDragHandlePointerDown,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i,applyReorderSettle:a.applyReorderSettle}},bs=e=>e===``?`(空白)`:`"${e}"`,xs=(e,t)=>(e??`include`)===`exclude`?`${t.length} 件を除外`:t.length>0&&t.length<=2?t.map(bs).join(`, `):`${t.length} 件を選択`,Ss=(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 xs(e.mode,e.values);case`numberSet`:case`textSet`:case`dateSet`:{let n=e.condition?e.kind===`numberSet`?fr(e.condition):e.kind===`textSet`?xr(e.condition):Dr(e.condition,t):null,r=e.set?xs(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()}"`:`カスタム条件`}},Cs=1e3,ws=2e4,Ts=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))},Es=e=>on(e)!==null,Ds=({editorType:e,isServerSide:t=!1,rowCount:n,getRawValueAt:r,sampleLimit:i=Cs,scanLimit:a=ws})=>{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(!Qt(t)){if(s+=1,Es(t)){c+=1;continue}Ts(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}},Os=(e,t,n,r)=>{if(n===0||r===0)return null;let i=n-1,a=r-1;if(e?.type===`cell`){let t=Br(e.range);return{startRow:v(t.start.row,0,i),endRow:v(t.end.row,0,i),startCol:v(t.start.col,0,a),endCol:v(t.end.col,0,a)}}if(e?.type===`row`){let t=Vr(e.startRow,e.endRow);return{startRow:v(t.startRow,0,i),endRow:v(t.endRow,0,i),startCol:0,endCol:a}}if(e?.type===`col`){let t=Hr(e.startCol,e.endCol);return{startRow:0,endRow:i,startCol:v(t.startCol,0,a),endCol:v(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},ks=({rows:e,resolveSourceIndex:t,columns:n,selection:r,activeCell:i,viewRowCount:a,canWriteCell:o})=>{let s=Os(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=ea(t)(``,i);Object.is(L(a,t),s)||vi(t,i,s).action!==`reject`&&(a=Ce(a,t,s),u=!0)}u&&(c[r]=a,l=!0)}return l?{nextRows:c,changed:l}:{nextRows:e,changed:!1}},As=({getRow:e,columns:t,selection:n,activeCell:r,viewRowCount:i,canWriteCell:a})=>{let o=Os(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=ea(i)(``,r);Object.is(L(r,i),o)||vi(i,r,o).action!==`reject`&&s.push({viewIndex:n,column:i,value:o})}}return s},js=t=>{let n=$(()=>Ft(),t);return{isAutosizing:(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot),runAutosize:n.runAutosize}},Ms=()=>{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)=>wn.compare(e.label,t.label))}}},Ns=(e,t)=>{let n=Ms();for(let r=0;r<e;r+=1)n.collect(t(r));return n.finalize()},Ps=[],Fs=new Set,Is={status:`idle`,options:Ps,allValues:Fs,progress:0},Ls={status:`collecting`,options:Ps,allValues:Fs,progress:0},Rs=e=>new Set(e.map(e=>e.value)),zs=e=>{let t=e?.filterType??null;return t===`select`||t===`set`||t===`numberSet`||t===`textSet`||t===`dateSet`},Bs=(e,t,n)=>{if(!e||!zs(e))return Is;let r=e.filterOptions&&e.filterOptions.length>0?e.filterOptions:null;if(r)return{status:`ready`,options:r,allValues:Rs(r),progress:1};if(t<=5e4){let e=Ns(t,n);return{status:`ready`,options:e,allValues:Rs(e),progress:1}}return null},Vs={source:null,rowCount:0,result:Is},Hs=(e,t,n)=>e.source===n&&e.rowCount===t?e.result:Ls,Us=()=>{let e=dt(Vs),t=null,n=null,r=t=>{let{getRawValueAt:r,rowCount:i}=t,a=Ms(),o=!1;n=()=>{o=!0},G(i,e=>a.collect(r(e)),{isCancelled:()=>o,onYield:(t,n)=>{e.setSnapshot({source:r,rowCount:i,result:{status:`collecting`,options:Ps,allValues:Fs,progress:t/n}})}}).then(t=>{if(!t)return;let n=a.finalize();e.setSnapshot({source:r,rowCount:i,result:{status:`ready`,options:n,allValues:Rs(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}}},Ws=({column:t,rowCount:n,getRawValueAt:r})=>{let i=(0,e.useMemo)(()=>Bs(t,n,r),[t,n,r]),a=$(Us,{needsAsync:i===null,rowCount:n,getRawValueAt:r}),o=(0,e.useSyncExternalStore)(a.subscribe,a.getSnapshot,a.getSnapshot);return i??Hs(o,n,r)},Gs=(e,t,n)=>n&&e.needle.length>0?e.rows.length<=5e4?{order:Sn(e.rows,e.baseOrder,e.columns,t),status:`ready`,progress:1}:null:{order:e.baseOrder,status:`idle`,progress:1},Ks=(e,t)=>e.rows===t.rows&&e.baseOrder===t.baseOrder&&e.columns===t.columns&&e.needle===t.needle,qs=(e,t,n)=>{if(e)return e;let{ready:r,progress:i}=t;return r!==null&&Ks(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&&Ks(i,n)?i.progress:0}},Js=()=>{let e=dt({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},G(i,e=>{let t=r.baseOrder[e];xn(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||!Ks(t,e);t=e,i&&(n?.(),n=null,e.needsAsync&&r(e))},subscribe:e.subscribe,getSnapshot:e.getSnapshot,dispose:()=>{n?.(),n=null}}},Ys=({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)(()=>Gs(c,o,a),[c,o,a]),u=$(()=>Js(),{...c,needsAsync:l===null});return qs(l,(0,e.useSyncExternalStore)(u.subscribe,u.getSnapshot,u.getSnapshot),c)};function Xs(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 Zs(e,t){return Math.floor(e/t)}function Qs(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=Zs(i,n),s=Zs(a-1,n),c=[];for(let e=o;e<=s;e+=1)c.push(e);return c}var $s=()=>{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}},ec=(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:L(e.row,i.column),newValue:i.value}),e.row=Ce(e.row,i.column,i.value)}return Array.from(r.values())},tc=100,nc=64,rc=120,ic=e=>{let t=e,n=e.dataSource?.blockSize??tc,r=Xs({blockSize:n,maxBlocks:e.dataSource?.maxCachedBlocks??nc}),i=$s(),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=dt({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=Qs(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??rc)},A=(e,i)=>{t.dataSource!=null&&(f={start:e,end:i},r.touchBlocks(Qs(e,i,n,a)),k())},j=()=>{T(),E(),r.clear(),u.clear(),o=null,C()},M=()=>{if(t.dataSource==null)return;j(),S();let{start:e,end:r}=f;if(Qs(e,r,n,a).length===0){D(0);return}O()},N=()=>{if(t.dataSource==null||u.size===0)return;let e=Array.from(u);u.clear(),w();for(let t of e)D(t)},ee=e=>{let n=t.dataSource?.updateRows;if(n===void 0||e.length===0)return 0;let a=ec(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},P=()=>{if(h!==void 0&&h===t.queryKey)return;h=t.queryKey;let{dataSource:e}=t;if(e==null)return;j();let n=!m;m=!0,S(),n?(e.initialRowCount??0)<=0&&D(0):D(0)},te=()=>{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,M())};return{update:e=>{t=e,e.rowKeyGetter!==c&&(c=e.rowKeyGetter,S()),P(),te()},subscribe:b.subscribe,getSnapshot:b.getSnapshot,isRowLoaded:e=>_(e)!==void 0,requestRange:A,refresh:M,retryFailedBlocks:N,applyCellEdits:ee,dispose:()=>{T(),E(),p+=1,i.clear()}}};function ac(t){let n=$(()=>ic(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}}function oc({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 sc=(0,e.memo)(oc);function cc({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)(sc,{slot:i,state:e?`checked`:`unchecked`,disabled:t})})}var lc=(e,t)=>{let n=t.trim().toLowerCase();return n?e.filter(e=>e.label.toLowerCase().includes(n)):e},uc=(e,t)=>{if(!t.trim())return{kind:`close`};let n=lc(e,t);return n.length===0?{kind:`none`}:{kind:`replace`,values:n.map(e=>e.value)}},dc=[`日`,`月`,`火`,`水`,`木`,`金`,`土`],fc=[`1月`,`2月`,`3月`,`4月`,`5月`,`6月`,`7月`,`8月`,`9月`,`10月`,`11月`,`12月`],pc=(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:an(a),day:a.getDate(),inCurrentMonth:a.getMonth()===t})}return r},mc=e=>e===``?``:e.replaceAll(`-`,`/`),hc=(e,t)=>`${e}年 ${t+1}月`,gc=e=>e-e%12,_c=e=>{let t=gc(e),n=[];for(let e=0;e<12;e+=1)n.push(t+e);return n};function vc({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??mc(t),C=on(new Date)??``,w=()=>{if(l===null)return;let e=l.trim();if(e===``){n(``),u(null),f(!1);return}let t=on(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`?hc(_,y):h===`months`?`${_}年`:`${gc(_)} – ${gc(_)+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:dc.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:pc(_,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:fc.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:_c(_).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 yc=24;function bc({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)(()=>lc(t,p),[t,p]),h=p.trim().length>0,g=(0,e.useRef)(null),v=_({count:m.length,getScrollElement:()=>g.current,estimateSize:()=>yc,overscan:10}),y=(0,e.useMemo)(()=>{if(n===null)return m.length;let e=0;for(let t of m)ar(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=uc(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=ar(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 xc({draft:e,valueInputRef:t,onDraftChange:n,onKeyDown:i}){let a=cr(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:sr.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 Sc({draft:e,valueInputRef:t,onDraftChange:n,onKeyDown:i}){let a=yr(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:vr.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 Cc({draft:e,valueInputRef:t,onDraftChange:n,onKeyDown:a,presets:o,renderDateInput:s,onRequestClose:c}){let l=e.preset===null?wr(e.operator):0,u=(t,r)=>{n({...e,[t]:Er(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:Cr.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)(vc,{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)(vc,{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 wc({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)(()=>lc(t,f),[t,f]),v=(0,e.useMemo)(()=>Mr(t,p),[t,p]),y=(0,e.useRef)(null),b=h?g.length:v.length,x=_({count:b,getScrollElement:()=>y.current,estimateSize:()=>yc,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)ar(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)ar(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=uc(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:ar(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 Tc({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 Ec({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:ee,onSetSelectAllChange:P,onSetClear:te,onSetReplaceSelection:ne,isServerSide:F=!1}){let I=(0,e.useRef)(null),[re]=(0,e.useState)(()=>new Date);if(typeof document>`u`||!n||!S)return null;let ie={top:S.top,left:S.left,width:S.width,maxHeight:S.maxHeight},ae=e=>{e.stopPropagation()},oe=e=>{e.stopPropagation()},se=c===`set`,ce=c===`numberSet`,le=c===`textSet`,ue=c===`dateSet`,de=ce||le||ue,fe=se||de,pe=u??or,me=f??J,he=m??X,ge=g??Gt(void 0),_e=ce?dr(pe):null,ve=le?br(me):null,ye=ue?Z(he):null,be=_e!==null||ve!==null||ye!==null,xe=ce?mr(C,_e):le?Y(C,ve):ue?kr(C,ye,re,ge):C,Se=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:oe,onKeyDown:ae,onPasteCapture:e=>{e.stopPropagation()},className:i(`ssg-filter-popover`,a,o?.className),style:{...o?.style,...ie},children:[(0,r.jsxs)(`div`,{className:`ssg-filter-title`,children:[`列フィルター: `,s]}),(fe||c===`select`)&&w===`collecting`?(0,r.jsxs)(`div`,{className:`ssg-filter-collecting`,children:[`候補を収集中… `,Math.round(T*100),`%`]}):de?(0,r.jsx)(Tc,{conditionEditor:ce?(0,r.jsx)(xc,{draft:pe,valueInputRef:O,onDraftChange:d,onKeyDown:Se}):le?(0,r.jsx)(Sc,{draft:me,valueInputRef:O,onDraftChange:p,onKeyDown:Se}):(0,r.jsx)(Cc,{draft:he,valueInputRef:O,onDraftChange:h,onKeyDown:Se,presets:ge,renderDateInput:_,onRequestClose:A}),conditionActive:be,onConditionClear:v,options:xe,setSelection:E,onSelectionClear:y,summaryText:b,children:ue?(0,r.jsx)(wc,{options:xe,setSelection:E,searchInputRef:I,onValueToggle:ee,onSelectAllChange:P,onReplaceSelection:ne,onRequestClose:A,isServerSide:F}):(0,r.jsx)(bc,{options:xe,setSelection:E,searchInputRef:I,onValueToggle:ee,onSelectAllChange:P,onReplaceSelection:ne,onRequestClose:A,isServerSide:F,selectAllUsesExplicitScope:!0})}):se?(0,r.jsx)(bc,{options:C,setSelection:E,searchInputRef:O,onValueToggle:ee,onSelectAllChange:P,onReplaceSelection:ne,onRequestClose:A,isServerSide:F}):c===`number`?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`div`,{className:`ssg-filter-hint`,children:`フィルター種別: number`}),(0,r.jsx)(xc,{draft:pe,valueInputRef:O,onDraftChange:d,onKeyDown:Se})]}):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:`部分一致検索です`})]}),!fe&&(0,r.jsxs)(`div`,{className:`ssg-filter-meta ssg-filter-meta--ellipsis`,children:[`現在値: `,x]}),(0,r.jsx)(`div`,{className:`ssg-filter-footer`,children:fe?(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(),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 Dc({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 Oc=(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`})]}),kc=(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 Ac({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?Oc: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:kc}):null]}):null]})})}var jc=e=>e.enabled&&!e.isAutoHeightCell&&!e.hasRenderCell;function Mc({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:ee,renderCellContent:P,rowClassName:te,rowStyle:ne,slots:F}){return(0,r.jsxs)(`div`,{"data-pane":e,"data-row-index":a,className:i(`ssg-body-row`,S&&`ssg-body-row--checked`,te,F?.bodyRow?.className),style:{...F?.bodyRow?.style,...ne,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`,te,F?.rowHeaderCell?.className),style:{...F?.rowHeaderCell?.style,...ne,..._,height:f},children:x?(0,r.jsx)(sc,{slot:F?.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=!Se({readOnly:D,canEditCell:O},a,t,l,u),A=p&&u.autoHeight===!0,j,I=u.cellClassName;I&&(j=typeof I==`function`?I({row:l,rowIndex:a,sourceRowIndex:c,rowKey:s,colIndex:t,value:L(l,u),column:u,isActive:y,isSelected:S,isEditing:x,readOnly:k}):I);let re=o(j),ie=h&&u.validate?_i(u,l,L(l,u)):null,ae=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`,ie!==null&&`ssg-body-cell--invalid`,v&&`ssg-body-cell--row-hovered`,te,re.className,F?.bodyCell?.className),oe={};u.wordBreak!==void 0&&(oe.wordBreak=u.wordBreak),u.lineBreak!==void 0&&(oe.lineBreak=u.lineBreak);let se=jc({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":ie??void 0,"data-ssg-tooltip-overflow":se?``:void 0,className:ae,onPointerDown:e=>M({row:a,col:t},e),onPointerEnter:e=>N({row:a,col:t},e),onDoubleClick:()=>ee({row:a,col:t}),style:{...F?.bodyCell?.style,...ne,...re.style,left:d,width:_,minWidth:_,...A?{minHeight:g}:{height:f},...oe,zIndex:y?3:1},children:P(l,a,u,t,{isActive:y,isSelected:S,isEditing:x,readOnly:k})},`${String(s)}-${u.key}`)})]})}var Nc=new Set([`rowStyle`]),Pc=(0,e.memo)(Mc,(e,t)=>l(e,t,Nc)),Fc=[`62%`,`46%`,`78%`,`54%`];function Ic({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)(sc,{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=Fc[o%Fc.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 Lc=(0,e.memo)(Ic),Rc=(e,t)=>t==null?``:e.valueFormatter?e.valueFormatter({value:t,row:void 0,column:e}):String(t),zc=16;function Bc({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===je,d=!l&&Object.prototype.hasOwnProperty.call(f.aggregates,a.key)?Rc(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*zc}}),(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 Vc=(0,e.memo)(Bc);function Hc({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:ee}){return(0,r.jsx)(r.Fragment,{children:a.map(a=>{let P=a.index;if(!s.has(P))return null;let te=a.size??l,ne=i.getGroupRow?.(P);if(ne&&h)return(0,r.jsx)(Vc,{pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:P,top:a.start,rowHeight:te,renderEntries:c,rowHeaderCellStyle:g,isRowHovered:_===P,showRowCheckbox:y,groupRow:ne,isCollapsed:m?.has(ne.groupKey)===!0,onGroupToggle:h,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,slots:ee},String(Me(ne)));let F=i.getRow(P);if(!F){if(!p)return null;let o=i.getRowKey(P)??P;return(0,r.jsx)(Lc,{pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:P,top:a.start,rowHeight:te,renderEntries:c,rowHeaderCellStyle:g,isRowHovered:_===P,showRowCheckbox:y,onRowHeaderPointerDown:E,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,onCellPointerDown:k,onCellPointerEnter:A,slots:ee},String(o))}let I=i.getRowKey(P)??P,ie=i.getSourceIndex(P)??P,ae=y?re(b,I):!1,oe=C.kind===`row`&&P>=C.startRow&&P<=C.endRow,se=C.kind===`cell`&&P>=C.startRow&&P<=C.endRow,ce=C.kind===`col`||se?C.startCol:-1,le=C.kind===`col`||se?C.endCol:-1,ue=x&&x.row===P?x.col:-1,de=S&&S.row===P?S.col:-1,fe=o(N?.(F,P,{row:F,rowIndex:P,sourceRowIndex:ie,rowKey:I,isSelected:ae}));return(0,r.jsx)(Pc,{pane:e,ownsRowHeader:t,leadingWidth:n,rowIndex:P,rowKey:I,sourceRowIndex:ie,row:F,top:a.start,renderEntries:c,rowHeight:te,autoHeight:u,showCellOverflowTooltip:d,showValidationMarks:f,autoHeightMinHeight:l,rowHeaderCellStyle:g,isRowHovered:_===P,isWholeGridSelected:v,isRowSelected:oe,showRowCheckbox:y,isRowChecked:ae,activeColInRow:ue,editingColInRow:de,selectedColStart:ce,selectedColEnd:le,readOnly:w,canEditCell:T,onRowHeaderPointerDown:E,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,onCellPointerDown:k,onCellPointerEnter:A,onCellDoubleClick:j,renderCellContent:M,rowClassName:fe.className,rowStyle:fe.style,slots:ee},String(I))})})}var Uc=e=>{e.stopPropagation()};function Wc({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:Uc,onKeyUp:Uc,onPaste:Uc,onCopy:Uc,onCut:Uc,onContextMenu:Uc,onDragStart:Uc,onDoubleClick:Uc,children:d(e)})})},e.rowKey)})})}var Gc=(0,e.memo)(Wc);function Kc({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 qc({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)(sc,{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=$t(_[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=Qe(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)(Kc,{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 Jc=(0,e.memo)(qc),Yc=200,Xc=8,Zc=6,Qc=289,$c=()=>{let e=null,t=dt({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):Qc;if(r){if(!r.isConnected){r=null,c();return}let t=r.getBoundingClientRect();a=t.right-Yc,e=t.bottom+Zc,o=t.top-u-Zc}else if(i)a=i.x,e=i.y,o=i.y-u;else{s(null);return}a=Math.max(Xc,a),a=Math.min(a,window.innerWidth-Yc-Xc);let d=window.innerHeight-Xc;e+u>d&&o>=Xc&&(e=o),e=Math.max(Xc,e);let f=d-e;s({top:e,left:a,width:Yc,maxHeight:u>f?Math.max(f,0):void 0})},u=()=>{c(),r=null,i=null,e!==null&&sa(e.gridRootRef)},d=ca({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)=>{oa(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(),oa(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()}}},el=t=>{let n=$(()=>$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}},tl=[{value:void 0,label:`固定しない`},{value:`left`,label:`左に固定`},{value:`right`,label:`右に固定`}],nl=180,rl=4,il=8,al=`pin`;function ol({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===al,j=y.left+y.width+rl+nl>window.innerWidth-il,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% + ${rl}px)`}:{left:`calc(100% + ${rl}px)`},width:nl,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(al)},onClick:()=>{k(e=>e===al?null:al)},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:[tl.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 sl=({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}},cl=360,ll=8,ul=12,dl=[`filter`,`columns`,`sort`],fl=e=>{let t={filter:e.canUseFilterTab,columns:e.canUseColumnsTab,sort:e.canUseSortTab};return dl.filter(e=>t[e])},pl=(e,t)=>e===null?null:t.includes(e)?e:t[0]??null,ml=()=>{let e=null,t=dt({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=>sl({top:e.top,left:e.left,panelWidth:cl,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight}),s=()=>{if(r){let e=o(r);a({top:e.top,left:e.left,width:cl});return}let t=e?.gridRootRef.current??null;if(!t){a(null);return}let n=t.getBoundingClientRect(),i=n.right-cl-ul,s=n.top+ul;i=Math.max(ll,i),i=Math.min(i,window.innerWidth-cl-ll),s=Math.max(ll,s),a({top:s,left:i,width:cl})},c=()=>e!==null&&pl(t.getSnapshot().requestedTab,fl(e))!==null,l=()=>{i({requestedTab:null,layout:null}),d(),e!==null&&sa(e.gridRootRef)},u=ca({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||!fl(e).includes(n))return;let r=t.getSnapshot();oa(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:cl}})},dispose:()=>{u.detach()}}},hl=t=>{let n=$(ml,t),r=(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot),{canUseFilterTab:i,canUseColumnsTab:a,canUseSortTab:o}=t,s=(0,e.useMemo)(()=>fl({canUseFilterTab:i,canUseColumnsTab:a,canUseSortTab:o}),[i,a,o]);return{activeToolPanelTab:pl(r.requestedTab,s),availableToolPanelTabs:s,toolPanelLayout:r.layout,toolPanelFlashTick:r.flashTick,toolPanelRef:n.panelRef,openToolPanel:n.open,closeToolPanel:n.close,moveToolPanel:n.move}},gl=`button, input, select, textarea`,_l=()=>{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(gl))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?.()}}},vl=({layout:t,onPanelMove:n})=>{let[r]=(0,e.useState)(_l);return(0,e.useEffect)(()=>()=>{r.dispose()},[r]),{handleHeaderPointerDown:(0,e.useCallback)(e=>{r.startFromPointerDown(e,{layout:t,onMove:n})},[r,t,n])}};function yl({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}=vl({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 bl=28,xl=12,Sl=[`left`,`center`,`right`],Cl={left:`左固定`,center:`固定なし`,right:`右固定`};function wl(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 Tl({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 El({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 Dl({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 Sl.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+bl?i=-12:r>n.bottom-bl&&(i=xl),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=wl(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]),ee=(0,e.useCallback)(e=>{w.current&&(O.current=e.clientY,A())},[A]),P=(0,e.useCallback)(()=>{w.current&&M(!0)},[M]),te=(0,e.useCallback)(()=>{w.current&&M(!1)},[M]);(0,e.useEffect)(()=>()=>{k.current!==null&&(cancelAnimationFrame(k.current),k.current=null)},[]);let ne=()=>{n&&(m?s():o())},F=S===null?null:t.find(e=>e.key===S)?.pane??null,I=(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&&F===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:ee,onPointerUp:P,onPointerCancel:te,className:i(`ssg-chooser-handle`,!b&&`ssg-chooser-handle--disabled`,l&&`ssg-chooser-handle--dragging`),children:(0,r.jsx)(El,{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)(Tl,{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:ne,"aria-label":g,"data-ssg-tooltip":g,className:`ssg-chooser-master-btn`,children:(0,r.jsx)(Tl,{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:Cl[e.pane]}),e.items.map((t,n)=>I(t,n,e.pane)),S!==null&&F===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 Ol({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 kl({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)(Ol,{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 Al(){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 jl(){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 Ml({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)(jl,{})}),(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)(Al,{})}),(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 Nl({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 Pl=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}},Fl=({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}},Il=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},Ll=(e,t=e>=1e4&&e%1e4==0)=>e!==0&&t?`${(e/1e4).toLocaleString()}万`:e.toLocaleString(),Rl=({rowCount:e,rulerHeight:t,minTickSpacingPx:n=44})=>{if(e<=0||t<=0)return[];let r=Il(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:Ll(n,i)});return a},zl=(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},Bl=(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},Vl=1e3,Hl=8,Ul=18,Wl=28;function Gl({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=Fl({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)},Vl)},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)-Ul;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?Rl({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,ee=t.scrollbar?14:_,P=Kn(Math.min(Math.max(a,0),O.maxScroll),l),te=u.rowAtContentY(P),ne=Bl(t,{rowIndex:te,rowData:d.getRow(te)}),F=null;if(t.ruler&&y!==null&&!x){let e=zl(y,O,D),n=u.rowAtContentY(Kn(e,l));F={lineY:Math.min(Math.max(E+y,s),o),rowIndex:n,detail:Bl(t,{rowIndex:n,rowData:d.getRow(n)})}}let I=e=>{let t=T.current;return t===null?0:e.clientY-t.getBoundingClientRect().top},re=(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:ee},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))}),F!==null&&(0,r.jsx)(`div`,{className:`ssg-scroll-hint-jumpline`,style:{top:F.lineY,right:ee},children:(0,r.jsxs)(`span`,{className:i(`ssg-scroll-hint-jumpline-label`,F.lineY<s+Wl&&`ssg-scroll-hint-jumpline-label--below`),children:[`行 `,(F.rowIndex+1).toLocaleString(),` へ`,F.detail!==null&&(0,r.jsxs)(`span`,{className:`ssg-scroll-hint-jumpline-detail`,children:[` `,`・ `,F.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:ee+Hl},children:[(0,r.jsxs)(`span`,{className:`ssg-scroll-hint-bubble-main`,children:[`行 `,(te+1).toLocaleString(),(0,r.jsxs)(`span`,{className:`ssg-scroll-hint-bubble-total`,children:[` `,`/ `,u.rowCount.toLocaleString()]})]}),ne!==null&&(0,r.jsx)(`span`,{className:`ssg-scroll-hint-bubble-detail`,children:ne})]}),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=I(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),re(t,n)},onPointerMove:e=>{let t=I(e);if(w.current!==null){re(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 Kl=(e,t)=>e.findIndex(e=>e.key===t),ql=(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},Jl=(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},Yl=220,Xl=8,Zl=34,Ql=16,$l=()=>{let e=null,t=dt({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*Zl+Ql,t=r.x,n=r.y,o=r.y-e;t=Math.max(Xl,t),t=Math.min(t,window.innerWidth-Yl-Xl),n+e>window.innerHeight-Xl&&(n=o),n=Math.max(Xl,n),a({top:n,left:t,width:Yl})},s=()=>{t.setSnapshot({state:null,layout:null}),r=null,i=0,c.detach(),e!==null&&sa(e.gridRootRef)},c=ca({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)=>{oa(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()}}},eu=({gridRootRef:t})=>{let n=$(()=>$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 tu({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 nu=[],ru={compact:{rowHeight:28,headerHeight:32},standard:{rowHeight:36,headerHeight:40},comfortable:{rowHeight:44,headerHeight:48}},iu=[],au=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?`▾`:`▸`})};function ou({rows:t=nu,dataSource:n,serverSideRefreshToken:a,onServerSideLoadError:o,onServerSideWriteError:c,columns:l,onRowsChange:u,onColumnsChange:d,rowKeyGetter:f,isRowExportable:p,createRow:g,createOverflowColumn:v,rowHeight:x,autoHeight:S=!1,estimateRowHeight:C,headerHeight:w,density:T=`standard`,theme:E=`light`,rowHeaderWidth:D=56,height:O,maxHeight:k,readOnly:A=!1,dimReadOnlyCells:j=!1,canEditCell:M,enableUndoRedo:ne=!0,enableClearOnDelete:F=!0,editorEnterMove:I=`down`,undoHistoryLimit:re=100,onUndoRedoStateChange:ie,enableRangeSelection:ae=!0,enableRowSelection:oe=!1,rowSelectionMode:se=`multiple`,enableSelectAllRows:ce,rowSelection:le,selectedRowKeys:de,onRowSelectionChange:fe,enableGlobalFilter:pe=!0,enableColumnFilter:me=!0,renderFilterDateInput:he,enableSorting:ge=!0,enableColumnResize:_e=!0,autoSizeColumns:ve=!1,showCellOverflowTooltip:ye=!1,showValidationMarks:be=!0,enableRowHover:xe=!0,enableColumnHeaderHover:Ce=!0,hoveredRowIndex:we,onHoveredRowChange:Te,enableColumnMenu:Ee=!0,noMatchingRowsText:De=`一致する行がありません`,noRowsText:Oe=`表示する行がありません`,showTopBar:ke=!0,showBottomBar:Ae=!0,showTopBarSummary:je=!0,showTopBarFilter:Me=!0,globalFilterPlaceholder:Ne,globalFilterIcon:Pe,showTopBarCounts:Fe=!0,showBottomBarCounts:Ie=!0,showFilterChipBar:Le=!1,renderTopBar:Re,renderBottomBar:ze,className:Be,style:Ve,classNames:Ue,getRowClassName:We,detailRow:Ge,onExpandedDetailRowKeysChange:Ke,enableRowDrag:qe=!1,isRowDraggable:Je,onRowMove:Ze,enableContextMenu:$e=!1,getContextMenuItems:et,onContextMenuOpen:nt,scrollHint:rt,ref:it,onStateChange:at,onScroll:ct}){let R=t,lt=l,ut=x??ru[T].rowHeight,z=w??ru[T].headerHeight,dt=(0,e.useMemo)(()=>Pl(rt),[rt]),ft=(0,e.useRef)(null),pt=(0,e.useRef)(null),mt=(0,e.useRef)(null),ht=(0,e.useRef)(null),gt=(0,e.useRef)(!1),_t=(0,e.useRef)(null),vt=(0,e.useRef)(null),yt=(0,e.useRef)(null),[bt,xt]=(0,e.useState)(``),St=Ge!=null&&Ge.showToggleColumn!==!1,[B]=(0,e.useState)(()=>Ci({columnInputs:{columns:lt,isServerSide:n!=null,enableRowDrag:qe,hasRowsChange:u!=null,detailToggleColumnActive:St,renderDetailToggleCell:au},serverSide:{isServerSide:n!=null,enableGlobalFilter:pe,enableColumnFilter:me,enableSorting:ge}})),{resolveColumns:Ct}=B,{groupColumns:wt,aggColumns:Tt,rowGroupingActive:Et,rowDragAvailable:Dt,visibleColumns:V,orderedColumns:H}=(0,e.useMemo)(()=>Ct({columns:lt,isServerSide:n!=null,enableRowDrag:qe,hasRowsChange:u!=null,detailToggleColumnActive:St,renderDetailToggleCell:au}),[Ct,lt,n,qe,u,St]),Ot=(0,e.useMemo)(()=>f??((e,t)=>t),[f]),U=n!=null,kt=ge,At=me,jt=pe,Mt=B.store,[W,G]=Ei(Mt),[{scrollTop:Nt,viewportWidth:Pt,viewportHeight:Ft,hoveredRowIndex:It,hoveredColumnIndex:Lt,isCornerHovered:q},{setScrollTop:Rt,setHoveredRowIndex:zt,setHoveredColumnIndex:Bt,setIsCornerHovered:Vt}]=Di(Mt),Ht=we!==void 0;Ti(B.hoverRowNotifier,{enableRowHover:xe,isHoverControlled:Ht,onHoveredRowChange:Te,setHoveredRowIndex:zt});let Ut=B.hoverRowNotifier.applyHoveredRowChange,Wt=xe?we===void 0?It:we:null;Ti(B.detailKeysNotifier,{expandedKeys:W.expandedDetailRowKeys,onChange:Ke},`passive`);let Kt=Ge!=null,qt=B.detailIndexCache,Yt=(0,e.useCallback)((e,t)=>{ot(qt.current,e,t),G(K.toggleDetailRow(e))},[G,qt]),Xt=(0,e.useCallback)((e,t,n)=>{ot(qt.current,e,t),G(K.setDetailRowExpanded(e,n))},[G,qt]),Zt=(0,e.useMemo)(()=>Wr(W.selection),[W.selection]),{resolvePaneLayout:Qt}=B,{effectiveColumnWidths:en,paneLayout:tn,hasLeftPane:nn,hasRightPane:rn,centerOwnsRowHeader:an,leftLeadingWidth:on,centerLeadingWidth:sn,rightLeadingWidth:cn,leftPaneTotalWidth:ln,rightPaneTotalWidth:un,centerContentWidth:dn,totalScrollWidth:fn}=(0,e.useMemo)(()=>Qt({orderedColumns:H,columnWidths:W.columnWidths,viewportWidth:Pt,rowHeaderWidth:D}),[Qt,H,W.columnWidths,Pt,D]),hn=(0,e.useRef)(new Map),gn=(0,e.useCallback)(e=>{let t=W.filters.columnFilters[e.key];if(t?.kind===`numberSet`||t?.kind===`textSet`||t?.kind===`dateSet`||t?.kind===`text`)return t.kind;let n=hn.current.get(e.key);if(n)return n;let r=Ds({editorType:e.editor?.type,isServerSide:U,rowCount:R.length,getRawValueAt:t=>L(R[t],e)});return r.conclusive&&hn.current.set(e.key,r.filterType),r.filterType},[W.filters.columnFilters,U,R]),{filterPopoverState:_n,filterPopoverLayout:vn,filterPopoverRef:yn,filterTextInputRef:bn,filterSelectRef:xn,isFilterPopoverOpen:Sn,openedFilterColumn:Cn,openedFilterType:wn,openColumnFilterPopover:Tn,closeColumnFilterPopover:En,updateFilterPopoverDraft:Dn,updateFilterPopoverNumberDraft:On,updateFilterPopoverTextDraft:kn,updateFilterPopoverDateDraft:An}=_a({visibleColumns:V,columnFilterValues:W.filters.columnFilters,enableColumnFilter:At,gridRootRef:ft,resolveColumnFilterType:gn}),{columnMenuLayout:jn,columnMenuRef:Mn,isColumnMenuOpen:Nn,openedMenuColumnKey:Pn,openedMenuColumn:Fn,openColumnMenuFromButton:In,openColumnMenuFromButtonClick:Ln,openColumnMenuFromContextMenu:Rn,closeColumnMenu:zn}=el({visibleColumns:V,enableColumnMenu:Ee,gridRootRef:ft}),{activeToolPanelTab:Bn,availableToolPanelTabs:Vn,toolPanelLayout:Hn,toolPanelFlashTick:Un,toolPanelRef:Wn,openToolPanel:Kn,closeToolPanel:qn,moveToolPanel:Jn}=hl({canUseFilterTab:At,canUseColumnsTab:Ee,canUseSortTab:kt,gridRootRef:ft,alliedRef:yn,suppressEscape:Sn,onSuppressedEscape:En}),{contextMenuState:Yn,contextMenuLayout:Xn,contextMenuRef:Zn,isContextMenuOpen:Qn,openContextMenu:$n,closeContextMenu:er}=eu({gridRootRef:ft});(0,e.useEffect)(()=>{let e=V.reduce((e,t)=>(te(t)||(e[t.key]=t.width),e),{});G(K.resetColumnWidths(e))},[V,G]);let tr=W.filters.globalText,nr=W.filters.columnFilters,rr=(0,e.useDeferredValue)(nr),{rowPipeline:ir}=B,{order:ar,status:or,progress:sr}=Ys({rows:R,baseOrder:(0,e.useMemo)(()=>ir.resolveBaseOrder(R.length),[ir,R.length]),columns:V,globalText:tr,enabled:jt}),{order:cr,rowDragOperable:lr}=(0,e.useMemo)(()=>ir.resolveOrder({rows:R,visibleColumns:V,columnFilters:rr,globalFilteredOrder:ar,sort:W.sort,rowDragAvailable:Dt}),[ir,R,V,rr,ar,W.sort,Dt]);(0,e.useEffect)(()=>{},[U,wt.length]);let{groupTree:ur,groupedDisplay:dr,rowModel:fr}=(0,e.useMemo)(()=>ir.resolveClientSideRowModel({rows:R,order:cr,rowGroupingActive:Et,groupColumns:wt,aggColumns:Tt,collapsedGroupKeys:W.collapsedGroupKeys,rowKeyGetter:Ot}),[ir,R,cr,Et,wt,Tt,W.collapsedGroupKeys,Ot]),pr=(0,e.useCallback)(e=>{G(K.toggleGroupCollapsed(e))},[G]),mr=(0,e.useMemo)(()=>ir.resolveServerSideQuery({isServerSide:U,globalFilterEnabled:jt,globalText:tr,columnFilterEnabled:At,columnFilters:nr,sortingEnabled:kt,sort:W.sort}),[ir,U,jt,tr,At,nr,kt,W.sort]),hr=B.serverSideQueryStore;Ti(hr,{value:mr,enabled:U});let{query:gr,queryKey:_r}=(0,e.useSyncExternalStore)(hr.subscribe,hr.getSnapshot,hr.getSnapshot),J=ac({dataSource:n,rowKeyGetter:Ot,query:gr,queryKey:_r,refreshToken:a,onLoadError:o,onWriteError:c}),[vr,yr]=(0,e.useState)(null),[br,xr]=(0,e.useState)(null),Sr=J.requestRange,Y=U?J.rowModel:fr,X=(0,e.useMemo)(()=>U&&!J.canUpdateRows?()=>!1:M,[U,J.canUpdateRows,M]),Cr=U&&J.canUpdateRows?J.applyCellEdits:void 0,wr=(0,e.useCallback)(e=>{if(!$e||!et)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=Kl(H,u);if(e<0)return;let t=H[e];s={type:`cell`,rowIndex:i,colIndex:e,rowKey:o,row:a,column:t,value:L(a,t)},c=ql(W.selection,i,e)}else s={type:`rowHeader`,rowIndex:i,rowKey:o,row:a},c=Jl(W.selection,i);let d={target:s,clientX:e.clientX,clientY:e.clientY,selection:W.selection,activeCell:W.activeCell,isTargetSelected:c},f=et(d);!f||f.length===0||(e.preventDefault(),nt?.(d),$n(d,f))},[$e,et,nt,Y,H,W.selection,W.activeCell,$n]),{isAutosizing:Tr,runAutosize:Er}=js({rowModel:Y,gridRootRef:ft,columnWidths:en,dispatch:G});Ti(B.autoSizeOnData,{mode:ve,isServerSide:U,rows:R,visibleColumns:V,runAutosize:Er},`passive`);let Z=Y.getRowCount(),Dr=dr?cr.length:Z,Or=dt!==null&&Z>=dt.minRows?dt:null,kr=(0,e.useMemo)(()=>{let e=null;return()=>e??=Array.from(cr,e=>R[e])},[cr,R]),Ar=(0,e.useMemo)(()=>y(V,en),[V,en]),jr=B.scrollSync;Ti(jr,{scrollContainerRef:_t,setViewState:Mt.setViewState,onScroll:ct});let Mr=tn.center.entries,Nr=_({horizontal:!0,count:Mr.length,getScrollElement:()=>_t.current,estimateSize:e=>Mr[e]?.paneLocalSize??Mr[e]?.column.width??120,overscan:8,useFlushSync:!1,scrollMargin:ln}),Pr=Nr.getVirtualItems(),Fr=B.autoHeightMeasurer,{version:Ir,nonce:Lr}=(0,e.useSyncExternalStore)(Fr.subscribe,Fr.getSnapshot,Fr.getSnapshot),Rr=C??ut,zr=Ge?.height??200,Ur=Ge?.isExpandable,{resolveVerticalLayout:Gr}=B,{hasAutoHeightColumn:Kr,autoHeightActive:qr,rowHeightStore:Jr,detailExtras:Yr,detailActive:Xr,rowMetrics:Zr,virtualRows:Qr,virtualRowIndexes:$r,detailEntries:ei,windowFirstRow:ti,windowLastRow:ni,physicalBodyHeight:ri,bodyLayerTransform:ii,verticalScaleFactor:ai,overlayBaseOffset:oi}=(0,e.useMemo)(()=>Gr({isServerSide:U,autoHeight:S,visibleColumns:V,viewRowCount:Z,estimateRowHeight:Rr,rowHeight:ut,headerHeight:z,viewportHeight:Ft,scrollTop:Nt,rowModel:Y,measuredHeights:Fr.measuredHeights,autoHeightVersion:Ir,detailRowEnabled:Kt,expandedDetailRowKeys:W.expandedDetailRowKeys,detailHeight:zr,detailIsExpandable:Ur,detailIndexCacheRef:qt}),[Gr,U,S,V,Z,Rr,ut,z,Ft,Nt,Y,Fr,Ir,Kt,W.expandedDetailRowKeys,zr,Ur,qt]);(0,e.useEffect)(()=>{},[S,Kr,Z,U]),(0,e.useEffect)(()=>{},[Kt,Yr,Xr]);let si=Ge?.render,ci=(0,e.useCallback)(e=>{if(!si)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:()=>Xt(e.rowKey,t,!1)};return si(r)},[si,Y,Xt]),ui=ln+sn,di=Math.max(Math.min(Pt-ui-un,tn.center.totalWidth),0);(0,e.useEffect)(()=>{if(!U)return;let e=_t.current;e&&(e.scrollTop=0),Rt(0)},[U,_r,Rt]),(0,e.useEffect)(()=>{!U||!Kt||(qt.reset(),G(K.setExpandedDetailRowKeys(new Set)))},[U,Kt,_r,G,qt]),(0,e.useEffect)(()=>{U&&(ni<ti||Sr(ti,ni+1))},[U,ti,ni,Sr,_r]),Ti(Fr,{scrollContainerRef:_t,autoHeightActive:qr,rowHeightStore:Jr,rowMetrics:Zr,rowModel:Y,virtualRows:Qr,viewportHeight:Ft,version:Ir,nonce:Lr});let fi=(0,e.useMemo)(()=>Pr.map(e=>Mr[e.index]).filter(e=>!!e),[Pr,Mr]),pi=tn.left.entries,mi=tn.right.entries,hi=(0,e.useMemo)(()=>{if(!W.activeCell)return null;let{row:e,col:t}=W.activeCell;if(e<0||e>=Z)return null;let n=P(tn,t);return n?{pane:n.pane,rect:{left:n.extent.start,top:Zr.rowTop(e),width:n.extent.width,height:Zr.cellHeight(e)}}:null},[W.activeCell,Z,tn,Zr]),gi=(0,e.useMemo)(()=>hi&&hi.pane===`center`?hi.rect:null,[hi]),_i=(0,e.useCallback)(e=>hi&&hi.pane===e?hi.rect:null,[hi]),yi=(0,e.useCallback)(e=>W.editingCell?_i(e):null,[W.editingCell,_i]),bi=Go(E)===`dark`?`ssg-theme-dark`:void 0,Q=m(Ue),xi=h(Ge?.className);Bo(Q.tooltip),po({scrollRef:_t,columnVirtualizer:Nr,columnMeasurements:Ar,totalScrollWidth:fn,physicalBodyHeight:ri,headerHeight:z,leftPaneWidth:ln,rightPaneWidth:un,centerLeadingWidth:sn,activeCellRect:gi,activeCell:W.activeCell,verticalScaleFactor:ai});let Si=(0,e.useMemo)(()=>{if(le!==void 0)return le;if(de!==void 0)return{type:`include`,rowKeys:de}},[le,de]),wi=ce??(oe&&se===`multiple`),$=W.rowSelection,Ai=ue($,Dr),ji=B.rowSelectionCommands;Ti(ji,{rowModel:Y,rowSelectionState:$,rowSelectionMode:se,onRowSelectionChange:fe,controlledRowSelectionModel:Si,leafRowCount:Dr,dispatch:G});let{handleGutterRowSelect:Mi,handleGutterRowSelectDrag:Ni,handleToggleSelectAllRows:Pi}=ji,Fi=(0,e.useRef)(()=>{}),{updateSelectionFromPointer:Ii,handleCellPointerDown:Li,handleCellDoubleClick:Ri,handleCellPointerEnter:zi,handleNativeDragStart:Bi,handleRowHeaderPointerDown:Vi,handleRowHeaderPointerEnter:Hi,handleColumnHeaderPointerDown:Ui,handleColumnHeaderPointerEnter:Wi}=so({gridRootRef:ft,bodyScrollRef:ht,onCellDoubleClickRef:Fi,scrollContainerRef:_t,leftPaneScrollRef:vt,rightPaneScrollRef:yt,pointerClientRef:pt,autoScrollFrameRef:mt,uiState:W,dispatch:G,enableRangeSelection:ae,enableSorting:kt,orderedColumns:H,filteredRowsLength:Z,visibleColumnsLength:V.length,paneLayout:tn,leftLeadingWidth:on,centerLeadingWidth:sn,rightLeadingWidth:cn,headerHeight:z,rowMetrics:Zr,verticalScaleFactor:ai,setHoveredRowIndex:Ut,setHoveredColumnIndex:Bt,enableRowHover:xe,enableColumnHeaderHover:Ce,enableRowSelection:oe,onGutterRowSelect:Mi,onGutterRowSelectDrag:Ni}),Gi=B.gridApi,Ki=(0,e.useCallback)(e=>{e&&requestAnimationFrame(()=>{Gi.scrollToCellInternal(e.row,e.col,`auto`)})},[Gi]),Yi=ne&&!A&&!U,{handleRowsChange:Xi,undo:Zi,redo:Qi,canUndo:$i,canRedo:ea,clearHistory:ta}=Za({rows:R,selection:W.selection,activeCell:W.activeCell,onRowsChange:u,dispatch:G,enabled:Yi,limit:re,onUndoRedoStateChange:ie,onAfterRestore:Ki}),ia=(0,e.useCallback)(()=>{if(Cr){let e=As({getRow:e=>Y.getRow(e),columns:H,selection:W.selection,activeCell:W.activeCell,viewRowCount:Z,canWriteCell:(e,t,n,r)=>Se({readOnly:A,canEditCell:X},e,t,n,r)});e.length>0&&Cr(e);return}if(!Xi)return;let{nextRows:e,changed:t}=ks({rows:R,resolveSourceIndex:e=>Y.getSourceIndex(e),columns:H,selection:W.selection,activeCell:W.activeCell,viewRowCount:Z,canWriteCell:(e,t,n,r)=>Se({readOnly:A,canEditCell:X},e,t,n,r)});t&&Xi(e)},[Cr,X,Xi,H,A,Y,R,W.activeCell,W.selection,Z]),{isWholeGridSelected:aa,handleCopy:oa,handlePaste:sa}=Ea({rows:R,rowModel:Y,visibleColumns:H,uiState:W,readOnly:A,canEditCell:X,createRow:g,createOverflowColumn:v,onRowsChange:Xi,onColumnsChange:d,applyServerSideCellEdits:Cr,isRowExportable:p,dispatch:G}),ca=(0,e.useCallback)(()=>{if(Z===0||V.length===0)return;let e={row:0,col:0},t={row:Z-1,col:V.length-1};G(K.startSelection(e)),G(K.updateSelection(t)),G(K.endSelection()),G(K.activateCell(e))},[G,Z,V.length]),la=(0,e.useCallback)(e=>{let t=Y.getRow(e.row),n=H[e.col];if(!t||!n||!Se({readOnly:A,canEditCell:X},e.row,e.col,t,n)||n.editor?.type===`checkbox`)return;let r=L(t,n);xt(String(r??``)),G(K.startEdit(e))},[X,G,Y,A,H]),ua=(0,e.useCallback)(e=>{if(!Xi&&!Cr)return;let t=Y.getRow(e.row),n=H[e.col];if(!t||!n||n.editor?.type!==`checkbox`||!Se({readOnly:A,canEditCell:X},e.row,e.col,t,n))return;let r=Ji(L(t,n),n.editor);if(vi(n,t,r).action===`reject`)return;if(Cr){Cr([{viewIndex:e.row,column:n,value:r}]);return}if(!Xi)return;let i=Y.getSourceIndex(e.row);i!==void 0&&Xi(na(R,i,n,r))},[Cr,X,Xi,H,A,Y,R]),{handleKeyDown:da}=to({uiState:W,rowModel:Y,visibleColumns:H,readOnly:A,canEditCell:X,setEditorInitialValue:xt,dispatch:G,handleCopy:oa,handleCellDoubleClick:la,isWholeGridSelected:aa,selectEntireGrid:ca,onUndo:Zi,onRedo:Qi,onClearSelection:ia,enableClearOnDelete:F,onToggleCheckboxCell:ua,onToggleGroup:pr}),{startEditWithValue:fa,commitEdit:pa,cancelEdit:ma}=Ua({uiState:W,rows:R,visibleColumns:H,rowModel:Y,setEditorInitialValue:xt,onRowsChange:Xi,applyServerSideCellEdits:Cr,dispatch:G,gridRootRef:ft,editorActionGuardRef:gt}),ha=W.editingCell?H[W.editingCell.col]:void 0,ga=W.editingCell?Y.getRow(W.editingCell.row):void 0,va=W.editingCell&&ha&&ga?{row:ga,rowIndex:W.editingCell.row,sourceRowIndex:Y.getSourceIndex(W.editingCell.row)??W.editingCell.row,rowKey:Y.getRowKey(W.editingCell.row)??W.editingCell.row,colIndex:W.editingCell.col,column:ha,value:L(ga,ha)}:null,ya=(0,e.useCallback)(e=>{let t=Y.getRow(e.row),n=H[e.col];if(!t||!n||!Se({readOnly:A,canEditCell:X},e.row,e.col,t,n)||n.editor?.type===`checkbox`)return;let r=L(t,n);fa(e,String(r??``))},[X,Y,A,fa,H]);(0,e.useEffect)(()=>{Fi.current=ya},[ya]);let ba=(0,e.useMemo)(()=>{if(!W.selection)return null;if(W.selection.type===`cell`){let e=Br(W.selection.range);return{extents:N(tn,e.start.col,e.end.col),startRow:e.start.row,endRow:e.end.row}}if(W.selection.type===`row`){let e=Vr(W.selection.startRow,W.selection.endRow);return{extents:ee(tn),startRow:e.startRow,endRow:e.endRow}}let e=Hr(W.selection.startCol,W.selection.endCol);return{extents:N(tn,e.startCol,e.endCol),startRow:0,endRow:Math.max(Z-1,0)}},[W.selection,tn,Z]),xa=(0,e.useMemo)(()=>{if(!ba)return null;let e=Gn(ba.startRow,ba.endRow,ti,ni);return e?{top:Zr.rowTop(e.start),height:Zr.rowsHeight(e.start,e.end)}:null},[ba,Zr,ti,ni]),Sa=(0,e.useMemo)(()=>{if(!Xr||!ba)return null;let e=Gn(ba.startRow,ba.endRow,ti,ni);return e?st(e.start,e.end,Zr,Yr):null},[Xr,ba,Zr,Yr,ti,ni]),Ca=(0,e.useCallback)(e=>{if(!ba||!xa)return null;let t=ba.extents[e];return t?{left:t.start,top:xa.top,width:t.width,height:xa.height}:null},[ba,xa]),wa=(0,e.useCallback)(e=>{if(!Sa||!ba)return null;let t=ba.extents[e];return t?Sa.map(e=>({left:t.start,top:e.top,width:t.width,height:e.height})):null},[Sa,ba]),Ta=(0,e.useCallback)(e=>{if(e.preventDefault(),e.button===0&&!(Z===0||V.length===0)){if(ft.current?.focus({preventScroll:!0}),wi){Pi();return}if(aa){G(K.clearSelection()),G(K.activateCell(null));return}ca()}},[G,Z,aa,ca,V.length,wi,Pi]),Da=(0,e.useCallback)(e=>{Ut(t=>t===e?null:t)},[Ut]),ka=(0,e.useCallback)(e=>{Bt(t=>t===e?null:t)},[Bt]),Aa=(0,e.useCallback)(()=>{Vt(!0)},[Vt]),ja=(0,e.useCallback)(()=>{Vt(!1)},[Vt]),Ma=B.columnCommands;Ti(Ma,{columns:lt,visibleColumns:V,orderedColumns:H,columnWidths:en,onColumnsChange:d,dispatch:G,enableSorting:ge,sort:W.sort,globalFilterText:tr,closeColumnMenu:zn,openToolPanel:Kn,openColumnFilterPopover:Tn,runAutosize:Er});let{handleColumnMenuPinnedChange:Na,handleColumnMenuAutosizeColumn:Pa,handleColumnMenuAutosizeAllColumns:Fa,handleColumnMenuOpenChooser:Ia,handleColumnMenuOpenSortManager:La,handleColumnMenuOpenFilter:Ra,handleColumnMenuOpenFilterManager:za,handleColumnMenuResetColumns:Ba,handleColumnMenuSortChange:Ha,handleFilterManagerClearFilter:Wa,handleFilterManagerClearAll:Ga,handleFilterManagerClearGlobal:Ka,handleColumnChooserToggleVisibility:qa,handleColumnChooserShowAll:Ja,handleColumnChooserHideAll:Ya,handleColumnChooserReorder:Xa,handleColumnChooserReset:Qa,applyColumnOrderAndPin:$a,handleSortManagerAddLevel:eo,handleSortManagerChangeDirection:no,handleSortManagerChangeColumn:ro,handleSortManagerRemoveLevel:io,handleSortManagerClearAll:ao,handleSortManagerMove:oo,handleColumnResizePointerDown:co}=Ma,lo=(0,e.useMemo)(()=>lt.map(e=>({key:e.key,title:e.title??e.key,visible:e.visible!==!1,pane:b(e)})),[lt]),uo=(0,e.useMemo)(()=>V.filter(e=>e.key!==`__ssg_detail_toggle__`&&e.key!==`__ssg_row_drag_handle__`).map(e=>({key:e.key,title:e.title??e.key})),[V]),fo=(0,e.useMemo)(()=>{let e=[],t=(t,n)=>{let r=nr[t.key];!r||!$t(r)||e.push({columnKey:t.key,title:t.title||t.key,summaryText:Ss(r,r.kind===`dateSet`?Gt(t.dateFilterPresets):void 0),isHidden:n})};for(let e of H)t(e,!1);for(let e of lt)e.visible===!1&&t(e,!0);return e},[nr,lt,H]),mo=(0,e.useMemo)(()=>V.filter(e=>!!e.filterType&&!$t(nr[e.key])).map(e=>({key:e.key,title:e.title||e.key})),[nr,V]),ho=(0,e.useCallback)(()=>{Bn===`filter`?qn():Kn(`filter`)},[Bn,qn,Kn]),go=(0,e.useCallback)(e=>{let t=_t.current,n=H.findIndex(t=>t.key===e);if(n<0)return;let r=H[n];if(t){let e=P(tn,n);if(e&&e.pane===`center`){let n=li({cellLeft:ln+sn+e.extent.start,cellWidth:e.extent.width,leftPaneWidth:ln,rightPaneWidth:un,viewportWidth:t.clientWidth,currentScrollLeft:t.scrollLeft,align:`auto`,maxScrollLeft:t.scrollWidth-t.clientWidth});n!==t.scrollLeft&&t.scrollTo({left:n,behavior:`auto`})}}let i=()=>{let t=ft.current,n=t?.querySelectorAll(`[data-ssg-col-key]`);return!t||!n?null:Array.from(n).find(n=>n.dataset.ssgColKey===e&&!tt(t,n))??null},a=e=>{if(!ft.current)return;let t=i();if(t===null){e<8&&requestAnimationFrame(()=>a(e+1));return}Tn(r),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(()=>{a(0)})},[ft,Tn,H,tn,ln,sn,un]),{onColumnDragHandlePointerDown:_o,leftIndicatorRef:vo,centerIndicatorRef:yo,rightIndicatorRef:bo,applyReorderSettle:xo}=os({enabled:!!d,columns:lt,paneLayout:tn,leftPaneScrollRef:vt,rightPaneScrollRef:yt,bodyScrollRef:ht,scrollContainerRef:_t,leftLeadingWidth:on,centerLeadingWidth:sn,rightLeadingWidth:cn,applyColumnOrderAndPin:$a,ghostSlot:Q.dragGhost});(0,e.useLayoutEffect)(()=>{xo()},[tn,xo]);let So=(0,e.useCallback)((e,t)=>{if(!Xi)return;let n=He(R,e,t);if(n===R)return;let r=R[e],i=n;Xi(i),Ze?.({rowKey:Ot(r,e),fromIndex:e,toIndex:t,rows:i})},[R,Xi,Ze,Ot]),Co=(0,e.useCallback)((e,t)=>{if(U){console.warn(`[SpreadsheetGrid] moveRow() は clientSide(rows + onRowsChange)専用です。serverSide では無効です。`);return}let n=R.findIndex((t,n)=>Ot(t,n)===e);n<0||So(n,t)},[U,R,Ot,So]),{onRowDragHandlePointerDown:wo,leftIndicatorRef:To,centerIndicatorRef:Eo,rightIndicatorRef:Do,applyReorderSettle:Oo}=ys({enabled:lr,rowMetrics:Zr,headerHeight:z,verticalScaleFactor:ai,windowBaseOffsetPx:oi,scrollContainerRef:_t,bodyScrollRef:ht,getRowDragLabel:(0,e.useCallback)(e=>{let t=`行 ${e+1}`,n=Y.getRow(e);if(!n)return t;let r=V.find(e=>!Qe(e.key));if(!r)return t;let i=L(n,r),a=r.valueFormatter?r.valueFormatter({value:i,row:n,column:r}):String(i??``);return a.trim().length>0?a:t},[Y,V]),commitRowMove:So,ghostSlot:Q.dragGhost});(0,e.useLayoutEffect)(()=>{Oo()},[Y,Oo]);let ko=d?_o:void 0,Ao={position:`absolute`,top:0,height:z+ri,transform:`translateX(-1px)`,pointerEvents:`none`,zIndex:8,display:`none`},jo=(0,e.useCallback)(e=>Cn?L(R[e],Cn):void 0,[R,Cn]),{options:Mo,allValues:No,status:Po,progress:Fo}=Ws({column:Cn,rowCount:R.length,getRawValueAt:jo}),{resolveFilterPopoverDerived:Io}=B,Lo=(0,e.useMemo)(()=>Io({openedFilterColumn:Cn,openedFilterType:wn,openedFilterSelectOptions:Mo,openedFilterAllValues:No,columnFilters:W.filters.columnFilters}),[Io,Cn,wn,Mo,No,W.filters.columnFilters]),{openedPopoverSelectOptions:Ro,openedSetFilterValue:zo,openedSetSelection:Vo}=Lo,Ho=B.filterPopoverCommands;Ti(Ho,{filterPopoverState:_n,openedFilterColumn:Cn,openedFilterType:wn,columnFilters:W.filters.columnFilters,derived:Lo,dispatch:G,closeColumnFilterPopover:En,updateNumberDraft:On,updateTextDraft:kn,updateDateDraft:An});let{handleSetFilterValueToggle:Uo,handleSetFilterSelectAllChange:Wo,handleSetFilterReplaceSelection:Ko,clearSetFilterPopoverValue:qo,handleNumberConditionDraftChange:Jo,handleTextConditionDraftChange:Yo,handleDateConditionDraftChange:Xo,handleComboConditionClear:Zo,handleComboSelectionClear:Qo,applyFilterPopoverValue:$o,clearFilterPopoverValue:es}=Ho,ts=W.expandedDetailRowKeys,ns=(0,e.useCallback)((e,t,n,a,o)=>{let s=L(e,n);if(n.key===`__ssg_row_drag_handle__`){if(Je){let n=Y.getSourceIndex(t)??t;if(!Je(e,{rowKey:Y.getRowKey(t)??t,sourceRowIndex:n}))return null}return(0,r.jsx)(`span`,{className:i(`ssg-row-drag-handle`,!lr&&`ssg-row-drag-handle--disabled`),"data-ssg-tooltip":lr?Xe:Ye,"aria-hidden":`true`,onPointerDown:lr?e=>wo(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=Kt?{expanded:ts.has(i),expandable:Ur?Ur(e,{rowKey:i,sourceRowIndex:r}):!0,toggle:()=>Yt(i,t),setExpanded:e=>Xt(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(vi(n,e,r).action===`reject`)return;if(Cr){Cr([{viewIndex:t,column:n,value:r}]);return}if(!Xi)return;let i=Y.getSourceIndex(t);if(i===void 0)return;let a=na(R,i,n,r);Xi(a)}})}return n.editor?.type===`checkbox`?(0,r.jsx)(cc,{slot:Q.checkbox,checked:qi(s,n.editor),readOnly:o.readOnly,onToggle:()=>ua({row:t,col:a})}):(0,r.jsx)(`span`,{children:n.valueFormatter?n.valueFormatter({value:s,row:e,column:n}):String(s??``)})},[Y,Xi,R,ua,Q.checkbox,Cr,Kt,ts,Ur,Yt,Xt,Je,lr,wo]),{slotContext:rs}=Va({rows:R,viewRowCount:Dr,getFilteredRows:kr,columns:lt,visibleColumns:V,uiState:W,setGlobalFilterText:(0,e.useCallback)(e=>{G(K.setGlobalFilter(e))},[G]),globalFilterStatus:or,globalFilterProgress:sr}),is=(0,e.useMemo)(()=>({width:D,minWidth:D}),[D]),as=Z===0,ss=(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)`}:{}}),cs=(()=>{if(!Cn)return`(なし)`;let e=W.filters.columnFilters[Cn.key];if(Jt(e))return e.mode===`exclude`?`${e.values.length}件を除外中`:`${e.values.length}件を選択中`;if(pn(e))return e.raw;let t=mn(e);return t.trim()?t:`(なし)`})(),ls=Cn?Gt(Cn.dateFilterPresets):void 0,us=zo&&$t(zo)?Ss(zo,ls):`フィルターなし`,ds=Cn?(0,r.jsx)(Ec,{popoverSlot:Q.popover,themeClassName:bi,isOpen:!!_n,title:Cn.title||Cn.key,filterType:wn??`text`,isServerSide:U,draftValue:_n?.draftValue??``,numberConditionDraft:_n?.numberDraft??null,onNumberConditionDraftChange:Jo,textConditionDraft:_n?.textDraft??null,onTextConditionDraftChange:Yo,dateConditionDraft:_n?.dateDraft??null,onDateConditionDraftChange:Xo,datePresets:ls,renderDateInput:he?e=>he({...e,columnKey:Cn.key}):void 0,onComboConditionClear:Zo,onComboSelectionClear:Qo,comboSummaryText:us,currentValueText:cs,layout:vn,selectOptions:Ro,setSelection:Vo,optionsStatus:Po,optionsProgress:Fo,popoverRef:yn,textInputRef:bn,selectRef:xn,onRequestClose:En,onDraftChange:Dn,onApply:$o,onClear:es,onSetValueToggle:Uo,onSetSelectAllChange:Wo,onSetClear:qo,onSetReplaceSelection:Ko}):null,fs=Fn?(0,r.jsx)(ol,{slots:Q,themeClassName:bi,isOpen:Nn,title:Fn.title||Fn.key,columnKey:Fn.key,canFilter:At&&!!Fn.filterType,onOpenFilter:()=>Ra(Fn),canSort:kt,sortDirection:W.sort.find(e=>e.columnKey===Fn.key)?.direction??null,onSortChange:e=>Ha(Fn.key,e),onOpenSortManager:La,canManageFilters:At,onOpenFilterManager:za,pinned:Fn.pinned,canChangePinned:!!d,layout:jn,popoverRef:Mn,onPinnedChange:Na,onAutosizeColumn:Pa,onAutosizeAllColumns:Fa,onOpenColumnChooser:Ia,canResetColumns:!!d,onResetColumns:Ba,onRequestClose:zn}):null,ps=jt&&tr.trim().length>0,ms=fo.length+ +!!ps,hs=Vn.map(e=>e===`filter`?{tab:e,label:`フィルター`,badge:ms}:e===`sort`?{tab:e,label:`並び替え`,badge:W.sort.length}:{tab:e,label:`列`}),gs=(0,r.jsx)(yl,{popoverSlot:Q.popover,themeClassName:bi,activeTab:Bn,flashTick:Un,tabs:hs,layout:Hn,panelRef:Wn,onSelectTab:Kn,onRequestClose:qn,onPanelMove:Jn,children:Bn===null?null:{filter:()=>(0,r.jsx)(Ml,{entries:fo,addableColumns:mo,showGlobalFilterRow:ps,globalFilterText:tr,canFilter:At,onEditFilter:go,onAddFilter:go,onClearFilter:Wa,onClearAllFilters:Ga,onClearGlobalFilter:Ka}),columns:()=>(0,r.jsx)(Dl,{items:lo,canToggle:!!d,onToggleColumnVisibility:qa,onShowAllColumns:Ja,onHideAllColumns:Ya,onResetColumns:Qa,onReorderColumns:Xa}),sort:()=>(0,r.jsx)(kl,{entries:W.sort,columns:uo,canSort:kt,onAddLevel:eo,onChangeDirection:no,onChangeColumn:ro,onRemoveLevel:io,onClearAll:ao,onMove:oo})}[Bn]()}),_s=(0,r.jsx)(tu,{slots:Q,themeClassName:bi,isOpen:Qn,items:Yn?.items??iu,layout:Xn,popoverRef:Zn,onRequestClose:er}),vs=Sn||Nn||Bn!==null||Qn,bs=je,xs=Me&&jt,Cs=bs||xs?(0,r.jsx)(Ac,{slot:Q.toolbar,context:rs,showSummary:bs,showFilter:xs,showCounts:Fe,globalFilterPlaceholder:Ne,globalFilterIcon:Pe,onFilterSummaryClick:At?ho:void 0}):null,ws=ke?Oa(Re,rs,Cs):null,Ts=Ae?Oa(ze,rs,(0,r.jsx)(Dc,{slot:Q.statusBar,context:rs,showCounts:Ie})):null,Es=O===void 0&&k===void 0?void 0:{...O===void 0?{}:{height:O},maxHeight:k??(O===void 0?void 0:`none`)};return Ti(Gi,{scrollContainerRef:_t,dispatch:G,rowModel:Y,viewRowCount:Z,leafRowCount:Dr,groupTree:ur,rowMetrics:Zr,paneLayout:tn,orderedColumns:H,columns:lt,onColumnsChange:d,uiState:W,headerHeight:z,verticalScaleFactor:ai,leftPaneTotalWidth:ln,rightPaneTotalWidth:un,centerLeadingWidth:sn,windowFirstRow:ti,windowLastRow:ni,physicalBodyHeight:ri,rows:R,isServerSide:U,serverSideRefresh:J.refresh,resolvedRowKeyGetter:Ot,isRowExportable:p,activeToolPanelTab:Bn,openToolPanel:Kn,closeToolPanel:qn,undoRows:Zi,redoRows:Qi,canUndoRows:$i,canRedoRows:ea,clearUndoHistory:ta,detailRowEnabled:Kt,detailIsExpandable:Ur,detailIndexCacheRef:qt,moveRowByKey:Co,commitRowSelection:ji.commitRowSelection,markApiScroll:jr.markApiScroll}),(0,e.useImperativeHandle)(it,()=>Gi.handle,[Gi]),Ti(B.stateChangeNotifier,{columnWidths:W.columnWidths,filters:W.filters,sort:W.sort,dragState:W.dragState,columns:lt,onStateChange:at},`passive`),(0,r.jsxs)(`div`,{className:i(`ssg-root`,T!==`standard`&&`ssg-root--density-${T}`,bi,j&&`ssg-root--dim-readonly`,Be,Q.root?.className),style:s(Q.root?.style,Ve),children:[ws,Le&&(0,r.jsx)(Nl,{slot:Q.filterChipBar,entries:fo,canFilter:At,onEditFilter:go,onClearFilter:Wa,onClearAllFilters:Ga}),(0,r.jsxs)(`div`,{ref:ft,className:`ssg-shell`,style:{cursor:Tr?`progress`:void 0},onDragStart:Bi,onPointerLeave:()=>Ut(null),onPointerMoveCapture:e=>{pt.current={x:e.clientX,y:e.clientY},Ii(e.clientX,e.clientY)},tabIndex:vs?-1:0,onKeyDown:vs?void 0:da,onPaste:vs?void 0:sa,onContextMenu:wr,children:[(0,r.jsxs)(`div`,{ref:_t,className:i(`ssg-scroll-container`,Or?.scrollbar===!0&&`ssg-scroll-container--custom-scrollbar`),style:Es,children:[(0,r.jsxs)(`div`,{className:`ssg-inner-row`,style:{width:fn,minWidth:fn,height:z+ri},children:[(0,r.jsxs)(`div`,{ref:vt,style:ss(`left`,ln,nn),children:[nn&&(0,r.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:ln,minWidth:ln,height:z+ri},children:[(0,r.jsx)(Jc,{pane:`left`,ownsRowHeader:!0,leadingWidth:on,headerHeight:z,rowHeaderCellStyle:is,slots:Q,isCornerHovered:q,isWholeGridSelected:aa,showSelectAllCheckbox:wi,selectAllState:Ai,filteredRowsLength:Z,visibleColumnsLength:V.length,renderEntries:pi,hoveredColumnIndex:Lt,selectionSnapshot:Zt,columnFilterValues:W.filters.columnFilters,sortState:W.sort,onCornerPointerDown:Ta,onCornerPointerEnter:Aa,onCornerPointerLeave:ja,onColumnHeaderPointerDown:Ui,onColumnHeaderPointerEnter:Wi,onColumnHeaderPointerLeave:ka,onColumnResizePointerDown:co,enableColumnMenu:Ee,enableColumnResize:_e,openedMenuColumnKey:Pn,onColumnMenuButtonPointerDown:In,onColumnMenuButtonClick:Ln,onColumnHeaderContextMenu:Rn,onColumnDragHandlePointerDown:ko}),(0,r.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:ln,height:z+ri,transform:ii},children:[(wa(`left`)??[Ca(`left`)]).map((e,t)=>(0,r.jsx)(Oi,{slot:Q.selectionOverlay,rect:e,headerHeight:z,baseOffset:oi,leadingWidth:on},t)),(0,r.jsx)(ki,{slot:Q.activeCellOverlay,rect:_i(`left`),headerHeight:z,baseOffset:oi,leadingWidth:on}),(0,r.jsx)(ra,{slots:Q,rect:yi(`left`),headerHeight:z,baseOffset:oi,leadingWidth:on,initialValue:bt,editor:ha?.editor,editorSession:va,themeClassName:bi,onCommit:pa,onCancel:ma,align:ha?.align,enterMove:I}),(0,r.jsx)(Hc,{pane:`left`,ownsRowHeader:!0,leadingWidth:on,rowModel:Y,virtualRows:Qr,virtualRowIndexes:$r,renderEntries:pi,rowHeight:ut,autoHeight:qr,showCellOverflowTooltip:ye,showValidationMarks:be,isServerSide:U,collapsedGroupKeys:W.collapsedGroupKeys,onGroupToggle:pr,rowHeaderCellStyle:is,hoveredRowIndex:Wt,isWholeGridSelected:aa,enableRowSelection:oe,rowSelectionState:$,activeCell:W.activeCell,editingCell:W.editingCell,selectionSnapshot:Zt,readOnly:A,canEditCell:X,onRowHeaderPointerDown:Vi,onRowHeaderPointerEnter:Hi,onRowHeaderPointerLeave:Da,onCellPointerDown:Li,onCellPointerEnter:zi,onCellDoubleClick:Ri,renderCellContent:ns,getRowClassName:We,slots:Q}),(0,r.jsx)(Gc,{slots:Q,entries:ei,mode:`band`,paneWidth:ln,baseOffset:oi,cardStickyLeft:0,cardWidth:0,renderCard:ci}),Dt&&(0,r.jsx)(`div`,{ref:To,className:`ssg-row-drop-indicator ssg-row-drop-indicator--cap`})]})]}),(0,r.jsx)(`div`,{ref:vo,className:`ssg-col-drop-indicator`,style:Ao})]}),(0,r.jsx)(`div`,{ref:ht,className:`ssg-center-pane`,style:{width:dn,minWidth:dn},children:(0,r.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:dn,minWidth:dn,height:z+ri},children:[(0,r.jsx)(Jc,{pane:`center`,ownsRowHeader:an,leadingWidth:sn,headerHeight:z,rowHeaderCellStyle:is,slots:Q,isCornerHovered:q,isWholeGridSelected:aa,showSelectAllCheckbox:wi,selectAllState:Ai,filteredRowsLength:Z,visibleColumnsLength:V.length,renderEntries:fi,hoveredColumnIndex:Lt,selectionSnapshot:Zt,columnFilterValues:W.filters.columnFilters,sortState:W.sort,onCornerPointerDown:Ta,onCornerPointerEnter:Aa,onCornerPointerLeave:ja,onColumnHeaderPointerDown:Ui,onColumnHeaderPointerEnter:Wi,onColumnHeaderPointerLeave:ka,onColumnResizePointerDown:co,enableColumnMenu:Ee,enableColumnResize:_e,openedMenuColumnKey:Pn,onColumnMenuButtonPointerDown:In,onColumnMenuButtonClick:Ln,onColumnHeaderContextMenu:Rn,onColumnDragHandlePointerDown:ko}),(0,r.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:dn,height:z+ri,transform:ii},children:[(wa(`center`)??[Ca(`center`)]).map((e,t)=>(0,r.jsx)(Oi,{slot:Q.selectionOverlay,rect:e,headerHeight:z,baseOffset:oi,leadingWidth:sn},t)),(0,r.jsx)(ki,{slot:Q.activeCellOverlay,rect:_i(`center`),headerHeight:z,baseOffset:oi,leadingWidth:sn}),(0,r.jsx)(ra,{slots:Q,rect:yi(`center`),headerHeight:z,baseOffset:oi,leadingWidth:sn,initialValue:bt,editor:ha?.editor,editorSession:va,themeClassName:bi,onCommit:pa,onCancel:ma,align:ha?.align,enterMove:I}),(0,r.jsx)(Hc,{pane:`center`,ownsRowHeader:an,leadingWidth:sn,rowModel:Y,virtualRows:Qr,virtualRowIndexes:$r,renderEntries:fi,rowHeight:ut,autoHeight:qr,showCellOverflowTooltip:ye,showValidationMarks:be,isServerSide:U,collapsedGroupKeys:W.collapsedGroupKeys,onGroupToggle:pr,rowHeaderCellStyle:is,hoveredRowIndex:Wt,isWholeGridSelected:aa,enableRowSelection:oe,rowSelectionState:$,activeCell:W.activeCell,editingCell:W.editingCell,selectionSnapshot:Zt,readOnly:A,canEditCell:X,onRowHeaderPointerDown:Vi,onRowHeaderPointerEnter:Hi,onRowHeaderPointerLeave:Da,onCellPointerDown:Li,onCellPointerEnter:zi,onCellDoubleClick:Ri,renderCellContent:ns,getRowClassName:We,slots:Q}),(0,r.jsx)(Gc,{slots:Q,entries:ei,mode:`center`,paneWidth:dn,baseOffset:oi,cardStickyLeft:ui,cardWidth:di,cardSlot:xi,renderCard:ci}),Dt&&(0,r.jsx)(`div`,{ref:Eo,className:i(`ssg-row-drop-indicator`,an&&`ssg-row-drop-indicator--cap`)})]}),(0,r.jsx)(`div`,{ref:yo,className:`ssg-col-drop-indicator`,style:Ao})]})}),(0,r.jsxs)(`div`,{ref:yt,style:ss(`right`,un,rn),children:[rn&&(0,r.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:un,minWidth:un,height:z+ri},children:[(0,r.jsx)(Jc,{pane:`right`,ownsRowHeader:!1,leadingWidth:cn,headerHeight:z,rowHeaderCellStyle:is,slots:Q,isCornerHovered:q,isWholeGridSelected:aa,showSelectAllCheckbox:wi,selectAllState:Ai,filteredRowsLength:Z,visibleColumnsLength:V.length,renderEntries:mi,hoveredColumnIndex:Lt,selectionSnapshot:Zt,columnFilterValues:W.filters.columnFilters,sortState:W.sort,onCornerPointerDown:Ta,onCornerPointerEnter:Aa,onCornerPointerLeave:ja,onColumnHeaderPointerDown:Ui,onColumnHeaderPointerEnter:Wi,onColumnHeaderPointerLeave:ka,onColumnResizePointerDown:co,enableColumnMenu:Ee,enableColumnResize:_e,openedMenuColumnKey:Pn,onColumnMenuButtonPointerDown:In,onColumnMenuButtonClick:Ln,onColumnHeaderContextMenu:Rn,onColumnDragHandlePointerDown:ko}),(0,r.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:un,height:z+ri,transform:ii},children:[(wa(`right`)??[Ca(`right`)]).map((e,t)=>(0,r.jsx)(Oi,{slot:Q.selectionOverlay,rect:e,headerHeight:z,baseOffset:oi,leadingWidth:cn},t)),(0,r.jsx)(ki,{slot:Q.activeCellOverlay,rect:_i(`right`),headerHeight:z,baseOffset:oi,leadingWidth:cn}),(0,r.jsx)(ra,{slots:Q,rect:yi(`right`),headerHeight:z,baseOffset:oi,leadingWidth:cn,initialValue:bt,editor:ha?.editor,editorSession:va,themeClassName:bi,onCommit:pa,onCancel:ma,align:ha?.align,enterMove:I}),(0,r.jsx)(Hc,{pane:`right`,ownsRowHeader:!1,leadingWidth:cn,rowModel:Y,virtualRows:Qr,virtualRowIndexes:$r,renderEntries:mi,rowHeight:ut,autoHeight:qr,showCellOverflowTooltip:ye,showValidationMarks:be,isServerSide:U,collapsedGroupKeys:W.collapsedGroupKeys,onGroupToggle:pr,rowHeaderCellStyle:is,hoveredRowIndex:Wt,isWholeGridSelected:aa,enableRowSelection:oe,rowSelectionState:$,activeCell:W.activeCell,editingCell:W.editingCell,selectionSnapshot:Zt,readOnly:A,canEditCell:X,onRowHeaderPointerDown:Vi,onRowHeaderPointerEnter:Hi,onRowHeaderPointerLeave:Da,onCellPointerDown:Li,onCellPointerEnter:zi,onCellDoubleClick:Ri,renderCellContent:ns,getRowClassName:We,slots:Q}),(0,r.jsx)(Gc,{slots:Q,entries:ei,mode:`band`,paneWidth:un,baseOffset:oi,cardStickyLeft:0,cardWidth:0,renderCard:ci}),Dt&&(0,r.jsx)(`div`,{ref:Do,className:`ssg-row-drop-indicator`})]})]}),(0,r.jsx)(`div`,{ref:bo,className:`ssg-col-drop-indicator`,style:Ao})]})]}),as&&(0,r.jsx)(`div`,{className:i(`ssg-empty-state`,Q.emptyState?.className),style:Q.emptyState?.style,children:R.length===0?Oe:De})]}),Or!==null&&(0,r.jsx)(Gl,{slot:Q.scrollHint,options:Or,scrollContainerRef:_t,scrollTop:Nt,viewportHeight:Ft,headerHeight:z,physicalBodyHeight:ri,verticalScaleFactor:ai,rowMetrics:Zr,rowModel:Y}),Tr&&(0,r.jsx)(`div`,{className:`ssg-autosize-overlay`,children:(0,r.jsx)(`span`,{className:`ssg-autosize-pill`,children:`列幅を計算中…`})}),or===`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(sr*100),`%`]})]})}),U&&(J.loadError!==null&&J.loadError!==vr||J.writeError!==null&&J.writeError!==br)&&(0,r.jsxs)(`div`,{className:`ssg-ssrm-error-bars`,children:[J.loadError!==null&&J.loadError!==vr&&(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:[`行の取得に失敗しました(`,J.loadError.failedBlockCount,` ブロック)`]}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-retry`,onClick:J.retryFailedBlocks,children:`再試行`}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-close`,"aria-label":`エラー通知を閉じる`,onClick:()=>yr(J.loadError),children:`×`})]}),J.writeError!==null&&J.writeError!==br&&(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:[`変更の保存に失敗しました(`,J.writeError.failedRowCount,` 行)。値を元に戻しました`]}),(0,r.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-close`,"aria-label":`保存エラー通知を閉じる`,onClick:()=>xr(J.writeError),children:`×`})]})]})]}),Ts,ds,fs,gs,_s]})}function su(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=ou,exports.numberFormatter=su;
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("react"),t=require("@ishibashi0112/spreadsheet-grid-core/logic/cx"),n=require("@ishibashi0112/spreadsheet-grid-core/logic/slotProps"),r=require("react-dom"),i=require("@tanstack/virtual-core"),a=require("@ishibashi0112/spreadsheet-grid-core/engine/createGridEngine"),o=require("@ishibashi0112/spreadsheet-grid-core/model/gridActions"),s=require("@ishibashi0112/spreadsheet-grid-core/model/gridStore"),c=require("@ishibashi0112/spreadsheet-grid-core/model/gridSelectors"),l=require("react/jsx-runtime"),u=require("@ishibashi0112/spreadsheet-grid-core/logic/selectEditorState"),d=require("@ishibashi0112/spreadsheet-grid-core/logic/editorValues"),f=require("@ishibashi0112/spreadsheet-grid-core/controllers/filterPopoverController"),p=require("@ishibashi0112/spreadsheet-grid-core/controllers/clipboardController"),m=require("@ishibashi0112/spreadsheet-grid-core/utils/excelColumnName"),h=require("@ishibashi0112/spreadsheet-grid-core/logic/filtering"),g=require("@ishibashi0112/spreadsheet-grid-core/controllers/editController"),_=require("@ishibashi0112/spreadsheet-grid-core/controllers/historyController"),v=require("@ishibashi0112/spreadsheet-grid-core/controllers/keyboardController"),y=require("@ishibashi0112/spreadsheet-grid-core/controllers/pointerInteractionsController"),b=require("@ishibashi0112/spreadsheet-grid-core/controllers/viewportSyncController"),x=require("@ishibashi0112/spreadsheet-grid-core/controllers/tooltipController"),S=require("@ishibashi0112/spreadsheet-grid-core/controllers/systemColorSchemeStore"),C=require("@ishibashi0112/spreadsheet-grid-core/logic/theme"),w=require("@ishibashi0112/spreadsheet-grid-core/controllers/columnHeaderDragController"),T=require("@ishibashi0112/spreadsheet-grid-core/controllers/rowDragController"),E=require("@ishibashi0112/spreadsheet-grid-core/logic/filterSummary"),D=require("@ishibashi0112/spreadsheet-grid-core/logic/dateFilterPresets"),O=require("@ishibashi0112/spreadsheet-grid-core/logic/inferFilterType"),k=require("@ishibashi0112/spreadsheet-grid-core/logic/geometry"),A=require("@ishibashi0112/spreadsheet-grid-core/logic/columnFlex"),j=require("@ishibashi0112/spreadsheet-grid-core/logic/clearCells"),ee=require("@ishibashi0112/spreadsheet-grid-core/logic/verticalGeometry"),M=require("@ishibashi0112/spreadsheet-grid-core/logic/detailRow"),te=require("@ishibashi0112/spreadsheet-grid-core/logic/rowReorder"),ne=require("@ishibashi0112/spreadsheet-grid-core/logic/rowSelection"),N=require("@ishibashi0112/spreadsheet-grid-core/logic/scrollTargets"),re=require("@ishibashi0112/spreadsheet-grid-core/controllers/columnAutosizeRunner"),P=require("@ishibashi0112/spreadsheet-grid-core/controllers/selectOptionsCollector"),F=require("@ishibashi0112/spreadsheet-grid-core/controllers/globalFilteredOrder"),ie=require("@ishibashi0112/spreadsheet-grid-core/controllers/serverSideRowModel"),I=require("@ishibashi0112/spreadsheet-grid-core/utils/permissions"),ae=require("@ishibashi0112/spreadsheet-grid-core/logic/checkboxEditor"),oe=require("@ishibashi0112/spreadsheet-grid-core/logic/validation"),L=require("@ishibashi0112/spreadsheet-grid-core/logic/setFilterSearch"),se=require("@ishibashi0112/spreadsheet-grid-core/logic/setFilterSelection"),ce=require("@ishibashi0112/spreadsheet-grid-core/logic/numberFilterCondition"),le=require("@ishibashi0112/spreadsheet-grid-core/logic/textFilterCondition"),ue=require("@ishibashi0112/spreadsheet-grid-core/logic/dateFilterCondition"),R=require("@ishibashi0112/spreadsheet-grid-core/logic/datePickerCalendar"),de=require("@ishibashi0112/spreadsheet-grid-core/logic/dateFilterTree"),fe=require("@ishibashi0112/spreadsheet-grid-core/logic/grouping"),pe=require("@ishibashi0112/spreadsheet-grid-core/logic/cellOverflowTooltip"),me=require("@ishibashi0112/spreadsheet-grid-core/controllers/columnMenuController"),he=require("@ishibashi0112/spreadsheet-grid-core/controllers/toolPanelController"),ge=require("@ishibashi0112/spreadsheet-grid-core/controllers/panelHeaderDragController"),_e=require("@ishibashi0112/spreadsheet-grid-core/logic/scrollHint"),ve=require("@ishibashi0112/spreadsheet-grid-core/logic/contextMenuTarget"),ye=require("@ishibashi0112/spreadsheet-grid-core/controllers/contextMenuController"),be=require("@ishibashi0112/spreadsheet-grid-core/logic/valueFormatters");function xe(t){let r=(0,n.serializeSlotValue)(t);return(0,e.useMemo)(()=>(0,n.resolveSlotMapFromSignature)(r),[r])}function Se(t){let r=(0,n.serializeSlotValue)(t);return(0,e.useMemo)(()=>(0,n.resolveSlotFromSignature)(r),[r])}var Ce=typeof document<`u`?e.useLayoutEffect:e.useEffect;function we(t){let{useFlushSync:n=!0,...a}=t,o=(0,e.useReducer)(e=>e+1,0)[1],s={observeElementRect:i.observeElementRect,observeElementOffset:i.observeElementOffset,scrollToFn:i.elementScroll,...a,onChange:(e,t)=>{n&&t?(0,r.flushSync)(o):o(),a.onChange?.(e,t)}},[c]=(0,e.useState)(()=>new i.Virtualizer(s));return c.setOptions(s),Ce(()=>c._didMount(),[c]),Ce(()=>{c._willUpdate()}),c}var Te=typeof document<`u`?e.useLayoutEffect:e.useEffect;function Ee(t,n,r=`layout`){(r===`passive`?e.useEffect:Te)(()=>{t.update(n)}),(0,e.useEffect)(()=>()=>{t.dispose?.()},[t])}function z(t,n,r=`layout`){let[i]=(0,e.useState)(t);return Ee(i,n,r),i}function De(t){return[(0,e.useSyncExternalStore)(t.subscribe,t.getState,t.getState),t.dispatch]}function Oe(t){return[(0,e.useSyncExternalStore)(t.subscribe,t.getViewState,t.getViewState),(0,e.useMemo)(()=>{let e=e=>n=>{t.setViewState(t=>({[e]:(0,s.resolveUpdater)(n,t[e])}))};return{setScrollTop:e(`scrollTop`),setViewportWidth:e(`viewportWidth`),setViewportHeight:e(`viewportHeight`),setHoveredRowIndex:e(`hoveredRowIndex`),setHoveredColumnIndex:e(`hoveredColumnIndex`),setIsCornerHovered:e(`isCornerHovered`)}},[t])]}function ke({rect:e,headerHeight:n,leadingWidth:r,baseOffset:i=0,slot:a}){if(!e)return null;let o={position:`absolute`,left:r+e.left,top:n+e.top-i,width:e.width,height:e.height};return(0,l.jsx)(`div`,{className:(0,t.cx)(`ssg-selection-overlay`,a?.className),style:{...a?.style,...o}})}function Ae({rect:e,headerHeight:n,leadingWidth:r,baseOffset:i=0,slot:a}){if(!e)return null;let o={position:`absolute`,left:r+e.left,top:n+e.top-i,width:e.width,height:e.height};return(0,l.jsx)(`div`,{className:(0,t.cx)(`ssg-active-cell-overlay`,a?.className),style:{...a?.style,...o}})}var je=e=>{let t=e??`down`;return t===`none`?void 0:t},Me=({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(je(i));return}if(a.key===`Escape`){a.preventDefault(),n();return}a.key===`Tab`&&(a.preventDefault(),o(a.shiftKey?`left`:`right`))};function Ne({message:n}){let[r,i]=(0,e.useState)(!1);return(0,l.jsx)(`div`,{ref:(0,e.useCallback)(e=>{e&&i(e.getBoundingClientRect().bottom>window.innerHeight-4)},[]),role:`alert`,className:(0,t.cx)(`ssg-cell-editor-error`,r&&`ssg-cell-editor-error--above`),children:n})}function Pe({initialValue:n,onCommit:r,onCancel:i,align:a,enterMove:o}){let s=(0,e.useRef)(null),[c,u]=(0,e.useState)(n),[d,f]=(0,e.useState)(null);return(0,e.useEffect)(()=>{let e=s.current;if(!e)return;e.focus();let t=e.value.length;e.setSelectionRange(t,t)},[]),(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`input`,{ref:s,type:`text`,value:c,onChange:e=>{u(e.target.value),f(null)},onKeyDown:Me({value:c,onCommit:r,onCancel:i,onRejected:f,enterMove:o}),onBlur:()=>{let e=r(c);e&&e.status===`rejected`&&i()},className:(0,t.cx)(`ssg-cell-editor-input`,d!==null&&`ssg-cell-editor-input--invalid`),style:a?{textAlign:a}:void 0}),d===null?null:(0,l.jsx)(Ne,{message:d})]})}function Fe({initialValue:n,min:r,max:i,step:a,onCommit:o,onCancel:s,align:c,enterMove:u}){let d=(0,e.useRef)(null),[f,p]=(0,e.useState)(n),[m,h]=(0,e.useState)(null);return(0,e.useEffect)(()=>{d.current?.focus()},[]),(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`input`,{ref:d,type:`number`,value:f,min:r,max:i,step:a,onChange:e=>{p(e.target.value),h(null)},onKeyDown:Me({value:f,onCommit:o,onCancel:s,onRejected:h,enterMove:u}),onBlur:()=>{let e=o(f);e&&e.status===`rejected`&&s()},className:(0,t.cx)(`ssg-cell-editor-input`,m!==null&&`ssg-cell-editor-input--invalid`),style:c?{textAlign:c}:void 0}),m===null?null:(0,l.jsx)(Ne,{message:m})]})}function Ie({options:n,value:i,onCommit:a,onCancel:o,align:s,themeClassName:c,popoverSlot:d,enterMove:f}){let p=(0,e.useRef)(null),m=(0,e.useRef)(null),h=(0,e.useRef)((0,u.createTypeaheadState)()),[g,_]=(0,e.useState)(()=>(0,u.resolveInitialHighlight)(n,i)),[v,y]=(0,e.useState)(null),[b,x]=(0,e.useState)(null),S=(0,e.useCallback)(e=>{p.current=e,e&&(e.focus(),y((0,u.computeSelectPopoverPlacement)(e.getBoundingClientRect(),n.length,window.innerWidth,window.innerHeight)))},[n.length]);(0,e.useEffect)(()=>{let e=()=>{let e=p.current;e&&y((0,u.computeSelectPopoverPlacement)(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=m.current;e&&e.children[g]?.scrollIntoView?.({block:`nearest`})},[g]);let C=(e,t)=>{let n=a(e,t);n&&n.status===`rejected`&&x(n.message)},w=e=>{let t=n[g];if(!t){o();return}C(t.value,e)},T=e=>{if(!e.nativeEvent.isComposing){if(e.key===`ArrowDown`||e.key===`ArrowUp`){e.preventDefault();let t=e.key===`ArrowDown`?1:-1;_(e=>(0,u.moveHighlight)(e,t,n.length)),x(null);return}if(e.key===`Enter`){e.preventDefault(),w(je(f));return}if(e.key===`Escape`){e.preventDefault(),o();return}if(e.key===`Tab`){e.preventDefault(),w(e.shiftKey?`left`:`right`);return}if(e.key.length===1&&!e.ctrlKey&&!e.metaKey&&!e.altKey){e.preventDefault();let t=(0,u.typeaheadJump)(h.current,e.key,Date.now(),n);h.current=t.state,t.index!==null&&(_(t.index),x(null))}}},E=n[g];return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`input`,{ref:S,type:`text`,readOnly:!0,value:E?.label??String(i??``),onKeyDown:T,onBlur:()=>o(),className:(0,t.cx)(`ssg-cell-editor-input ssg-cell-editor-input--select`,b!==null&&`ssg-cell-editor-input--invalid`),style:s?{textAlign:s}:void 0}),b===null?null:(0,l.jsx)(Ne,{message:b}),v?(0,r.createPortal)((0,l.jsx)(`div`,{ref:m,role:`listbox`,className:(0,t.cx)(`ssg-select-editor-popover`,c,d?.className),style:{...d?.style,left:v.left,top:v.top,width:v.width,maxHeight:v.maxHeight},onPointerDown:e=>e.preventDefault(),children:n.length===0?(0,l.jsx)(`div`,{className:`ssg-select-editor-empty`,children:`候補がありません`}):n.map((e,n)=>(0,l.jsx)(`div`,{role:`option`,"aria-selected":n===g,className:(0,t.cx)(`ssg-select-editor-option`,n===g&&`ssg-select-editor-option--highlighted`),onClick:()=>C(e.value),onPointerEnter:()=>_(n),children:e.label},`${e.value}-${n}`))}),document.body):null]})}function Le({initialValue:n,onCommit:r,onCancel:i,align:a,enterMove:o}){let s=(0,e.useRef)(null),[c,u]=(0,e.useState)(n),[d,f]=(0,e.useState)(null);return(0,e.useEffect)(()=>{s.current?.focus()},[]),(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`input`,{ref:s,type:`date`,value:c,onChange:e=>{u(e.target.value),f(null)},onKeyDown:Me({value:c,onCommit:r,onCancel:i,onRejected:f,enterMove:o}),onBlur:()=>{let e=r(c);e&&e.status===`rejected`&&i()},className:(0,t.cx)(`ssg-cell-editor-input`,d!==null&&`ssg-cell-editor-input--invalid`),style:a?{textAlign:a}:void 0}),d===null?null:(0,l.jsx)(Ne,{message:d})]})}function Re({render:e,context:t}){return(0,l.jsx)(l.Fragment,{children:e(t)})}function ze({rect:n,headerHeight:r,leadingWidth:i,baseOffset:a=0,initialValue:o,editor:s,editorSession:c,themeClassName:u,slots:f,onCommit:p,onCancel:m,align:h,enterMove:g}){let _=n!==null,[v,y]=(0,e.useState)(!1),[b,x]=(0,e.useState)(0);if(_!==v&&(y(_),_&&x(b+1)),!n)return null;let S={position:`absolute`,left:i+n.left,top:r+n.top-a,width:n.width,height:n.height},C;if(s?.type===`number`)C=(0,l.jsx)(Fe,{enterMove:g,initialValue:o,min:s.min,max:s.max,step:s.step,onCommit:p,onCancel:m,align:h},b);else if(s?.type===`date`)C=(0,l.jsx)(Le,{enterMove:g,initialValue:(0,d.toDateInputValue)(c?c.value:o),onCommit:p,onCancel:m,align:h},b);else if(s?.type===`custom`)C=c?(0,l.jsx)(Re,{render:s.render,context:{row:c.row,rowIndex:c.rowIndex,sourceRowIndex:c.sourceRowIndex,rowKey:c.rowKey,colIndex:c.colIndex,column:c.column,value:c.value,initialText:o,align:h,commit:(e,t)=>p(e,t)??{status:`noop`},cancel:m}},b):null;else if(s?.type===`select`){let e=typeof s.options==`function`?c?s.options(c.row):[]:s.options;C=(0,l.jsx)(Ie,{popoverSlot:f?.popover,enterMove:g,options:e,value:c?.value,onCommit:p,onCancel:m,align:h,themeClassName:u},b)}else C=(0,l.jsx)(Pe,{enterMove:g,initialValue:o,onCommit:p,onCancel:m,align:h},b);return(0,l.jsx)(`div`,{className:(0,t.cx)(`ssg-cell-editor`,f?.cellEditor?.className),style:{...f?.cellEditor?.style,...S},children:C})}var Be=t=>{let n=z(()=>(0,f.createFilterPopoverController)(),t),r=(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot),{visibleColumns:i}=t,a=r.state,o=(0,e.useMemo)(()=>(0,f.resolveOpenedFilterColumn)(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}},Ve=t=>{let n=z(()=>(0,p.createClipboardController)(),t),r=(0,p.computeIsWholeGridSelected)(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}},He=(e,t,n)=>e?e(t):n,Ue=(e,t=16)=>e.length<=t?e:`${e.slice(0,t)}…`,We=e=>e?`${(0,m.toExcelColumnName)(e.col)}${e.row+1}`:`なし`,Ge=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`${(0,m.toExcelColumnName)(r)}${t+1} - ${(0,m.toExcelColumnName)(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 ${(0,m.toExcelColumnName)(t)} - ${(0,m.toExcelColumnName)(n)}`},Ke=(e,t)=>`Rows: ${t} / ${e.rows.length}`,qe=e=>`Columns: ${e.visibleColumns.length} / ${e.columns.length}`,Je=(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}},Ye=(e,t)=>{let n=Je(e,t);return`Cells: ${n.selectedCellCount} / Rows: ${n.selectedRowCount}`},Xe=e=>Object.values(e).filter(e=>(0,h.isActiveColumnFilterValue)(e)).length,Ze=e=>{let t=e.globalFilterText.trim().length>0,n=t?Ue(e.globalFilterText.trim()):null,r=Xe(e.columnFilterValues);return!t&&r===0?`Filter: なし`:t&&r===0?`Filter: Global("${n}")`:!t&&r>0?`Filter: ${r}列`:`Filter: Global("${n}") + ${r}列`},Qe=(e,t)=>{let n=e.find(e=>e.key===t);return n?.title||n?.key||t},$e=e=>e.sortState.length===0?`Sort: なし`:`Sort: ${e.sortState.map(t=>`${Qe(e.columns,t.columnKey)} (${t.direction===`asc`?`昇順`:`降順`})`).join(`, `)}`,et=(e,t)=>{let n=Je(e,t),r=e.globalFilterText.trim().length>0,i=r?Ue(e.globalFilterText.trim()):null,a=Xe(e.columnFilterValues),o=r||a>0,s=e.sortState.length>0,c=s?Qe(e.columns,e.sortState[0].columnKey):null;return{rowSummaryText:Ke(e,t),columnSummaryText:qe(e),filterSummaryText:Ze(e),sortSummaryText:$e(e),activeCellLabel:We(e.activeCell),selectionLabel:Ge(e.selection),selectionStatsText:Ye(e,t),selectionStats:n,hasGlobalFilter:r,globalFilterPreview:i,activeColumnFilterCount:a,hasAnyFilter:o,hasSorting:s,sortedColumnLabel:c}},tt=({rows:t,viewRowCount:n,getFilteredRows:r,columns:i,visibleColumns:a,uiState:o,setGlobalFilterText:s,globalFilterStatus:l,globalFilterProgress:u})=>{let d=(0,c.selectGlobalFilter)(o),f=o.filters.columnFilters,p=o.sort,m=o.activeCell,h=o.selection,g=(0,e.useMemo)(()=>({rows:t,columns:i,visibleColumns:a,globalFilterText:d,columnFilterValues:f,sortState:p,activeCell:m,selection:h}),[t,i,a,d,f,p,m,h]),_=(0,e.useMemo)(()=>et(g,n),[g,n]);return{slotContextBase:g,derivedSummary:_,slotContext:(0,e.useMemo)(()=>({...g,get filteredRows(){return r()},setGlobalFilterText:s,derivedSummary:_,globalFilterStatus:l,globalFilterProgress:u}),[_,r,s,g,l,u])}},nt=e=>{let t=z(()=>(0,g.createEditController)(),e);return{activateSingleCell:t.activateSingleCell,startEditWithValue:t.startEditWithValue,commitEdit:t.commitEdit,cancelEdit:t.cancelEdit}},rt=t=>{let n=z(()=>(0,_.createHistoryController)(),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}},it=t=>{let n=z(()=>(0,v.createKeyboardController)(),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])}},at=e=>{let t=z(()=>(0,y.createPointerInteractionsController)(),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}},ot=({scrollRef:t,...n})=>{let[r]=(0,e.useState)(()=>(0,b.createViewportSyncController)());(0,e.useEffect)(()=>{r.update({...n,scrollElement:t.current})})};function st(t){let n=(0,e.useRef)(null);(0,e.useEffect)(()=>{let e=(0,x.acquireTooltipController)();return n.current=e,()=>{e.dispose(),n.current=null}},[]),(0,e.useEffect)(()=>{n.current?.setSlot(t)},[t])}function ct(t){return(0,C.resolveGridTheme)(t,(0,e.useSyncExternalStore)(S.systemColorSchemeStore.subscribe,S.systemColorSchemeStore.getSnapshot,S.systemColorSchemeStore.getServerSnapshot))}var lt=t=>{let n=(0,e.useRef)(null),r=(0,e.useRef)(null),i=(0,e.useRef)(null),a=z(()=>(0,w.createColumnHeaderDragController)(),{...t,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i});return{onColumnDragHandlePointerDown:a.onColumnDragHandlePointerDown,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i,applyReorderSettle:a.applyReorderSettle}},ut=t=>{let n=(0,e.useRef)(null),r=(0,e.useRef)(null),i=(0,e.useRef)(null),a=z(T.createRowDragController,{...t,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i});return{onRowDragHandlePointerDown:a.onRowDragHandlePointerDown,leftIndicatorRef:n,centerIndicatorRef:r,rightIndicatorRef:i,applyReorderSettle:a.applyReorderSettle}},dt=t=>{let n=z(()=>(0,re.createColumnAutosizeRunner)(),t);return{isAutosizing:(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot),runAutosize:n.runAutosize}},ft=({column:t,rowCount:n,getRawValueAt:r})=>{let i=(0,e.useMemo)(()=>(0,P.resolveSyncSelectOptions)(t,n,r),[t,n,r]),a=z(P.createSelectOptionsCollector,{needsAsync:i===null,rowCount:n,getRawValueAt:r}),o=(0,e.useSyncExternalStore)(a.subscribe,a.getSnapshot,a.getSnapshot);return i??(0,P.selectCollectorResult)(o,n,r)},pt=({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)(()=>(0,F.resolveSyncGlobalFilteredOrder)(c,o,a),[c,o,a]),u=z(()=>(0,F.createGlobalFilteredOrderRunner)(),{...c,needsAsync:l===null});return(0,F.selectGlobalFilteredOrderResult)(l,(0,e.useSyncExternalStore)(u.subscribe,u.getSnapshot,u.getSnapshot),c)};function mt(t){let n=z(()=>(0,ie.createServerSideRowModel)(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}}function ht({state:e,disabled:n=!1,slot:r}){return(0,l.jsx)(`span`,{"aria-hidden":`true`,className:(0,t.cx)(`ssg-row-checkbox`,r?.className),style:r?.style,"data-state":e,"data-disabled":n?`true`:void 0})}var gt=(0,e.memo)(ht);function _t({checked:e,readOnly:t,onToggle:n,slot:r}){return(0,l.jsx)(`span`,{role:`checkbox`,"aria-checked":e,"aria-disabled":t||void 0,className:`ssg-cell-checkbox`,onClick:()=>{t||n()},children:(0,l.jsx)(gt,{slot:r,state:e?`checked`:`unchecked`,disabled:t})})}function vt({value:n,onCommit:r,ariaLabel:i,inputRef:a,onRequestClose:o,align:s=`left`}){let[c,u]=(0,e.useState)(null),[d,f]=(0,e.useState)(!1),[p,m]=(0,e.useState)(!1),[g,_]=(0,e.useState)(`days`),[v,y]=(0,e.useState)(()=>new Date().getFullYear()),[b,x]=(0,e.useState)(()=>new Date().getMonth()),S=(0,e.useRef)(null),C=c??(0,R.formatFilterDateDisplay)(n),w=(0,h.toDateKey)(new Date)??``,T=()=>{if(c===null)return;let e=c.trim();if(e===``){r(``),u(null),f(!1);return}let t=(0,h.toDateKey)(e);if(t===null){f(!0);return}r(t),u(null),f(!1)},E=()=>{let[e,t]=(n===``?w:n).split(`-`);y(Number(e)),x(Number(t)-1),_(`days`),m(!0)},D=()=>{m(!1)},O=e=>{r(e),u(null),f(!1),D()};(0,e.useEffect)(()=>{if(!p)return;let e=e=>{let t=e.target;t&&S.current?.contains(t)||m(!1)};return document.addEventListener(`pointerdown`,e,!0),()=>{document.removeEventListener(`pointerdown`,e,!0)}},[p]);let k=e=>{if(e.stopPropagation(),e.key===`Enter`){if(e.nativeEvent.isComposing)return;e.preventDefault(),T(),D();return}if(e.key===`Escape`){if(e.preventDefault(),p){D();return}o()}},A=e=>t=>{t.preventDefault(),t.stopPropagation(),e()},j=e=>{if(g===`days`){let t=new Date(v,b+e,1);y(t.getFullYear()),x(t.getMonth());return}if(g===`months`){y(t=>t+e);return}y(t=>t+e*12)},ee=()=>{_(e=>e===`days`?`months`:`years`)},M=()=>{_(e=>e===`years`?`months`:`days`)},te=g===`days`?(0,R.formatCalendarTitle)(v,b):g===`months`?`${v}年`:`${(0,R.yearGridStart)(v)} – ${(0,R.yearGridStart)(v)+11}`;return(0,l.jsxs)(`div`,{ref:S,className:`ssg-dp-root`,children:[(0,l.jsxs)(`div`,{className:(0,t.cx)(`ssg-dp-field`,p&&`ssg-dp-field--open`,d&&`ssg-dp-field--invalid`),children:[(0,l.jsx)(`input`,{ref:a,type:`text`,inputMode:`numeric`,value:C,placeholder:`yyyy/mm/dd`,"aria-label":i,"aria-invalid":d||void 0,className:`ssg-dp-input`,onChange:e=>{u(e.target.value),f(!1)},onKeyDown:k,onBlur:T}),(0,l.jsx)(`button`,{type:`button`,className:`ssg-dp-cal-btn`,"aria-label":p?`カレンダーを閉じる`:`カレンダーを開く`,onPointerDown:A(()=>{p?D():E()}),onKeyDown:e=>{e.stopPropagation()},children:(0,l.jsxs)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 16 16`,"aria-hidden":`true`,children:[(0,l.jsx)(`rect`,{x:`1.5`,y:`2.5`,width:`13`,height:`12`,rx:`1.5`,fill:`none`,stroke:`currentColor`}),(0,l.jsx)(`line`,{x1:`1.5`,y1:`6`,x2:`14.5`,y2:`6`,stroke:`currentColor`}),(0,l.jsx)(`line`,{x1:`5`,y1:`1`,x2:`5`,y2:`4`,stroke:`currentColor`}),(0,l.jsx)(`line`,{x1:`11`,y1:`1`,x2:`11`,y2:`4`,stroke:`currentColor`})]})})]}),p&&(0,l.jsxs)(`div`,{className:(0,t.cx)(`ssg-dp-panel`,s===`right`&&`ssg-dp-panel--right`),children:[(0,l.jsxs)(`div`,{className:`ssg-dp-nav`,children:[(0,l.jsx)(`button`,{type:`button`,className:`ssg-dp-nav-btn`,"aria-label":`前へ`,onPointerDown:A(()=>j(-1)),children:`‹`}),(0,l.jsx)(`button`,{type:`button`,className:`ssg-dp-nav-title`,disabled:g===`years`,"aria-label":`表示単位を切り替える`,onPointerDown:A(ee),children:te}),(0,l.jsx)(`button`,{type:`button`,className:`ssg-dp-nav-btn`,"aria-label":`次へ`,onPointerDown:A(()=>j(1)),children:`›`})]}),g===`days`&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{className:`ssg-dp-dow`,children:R.CALENDAR_DOW_LABELS.map((e,n)=>(0,l.jsx)(`span`,{className:(0,t.cx)(n===0&&`ssg-dp-dow--sun`,n===6&&`ssg-dp-dow--sat`),children:e},e))}),(0,l.jsx)(`div`,{className:`ssg-dp-days`,children:(0,R.buildCalendarDayCells)(v,b).map(e=>(0,l.jsx)(`button`,{type:`button`,className:(0,t.cx)(`ssg-dp-day`,!e.inCurrentMonth&&`ssg-dp-day--out`,e.key===w&&`ssg-dp-day--today`,e.key===n&&`ssg-dp-day--selected`),"aria-label":e.key,onPointerDown:A(()=>O(e.key)),children:e.day},e.key))})]}),g===`months`&&(0,l.jsx)(`div`,{className:`ssg-dp-grid`,children:R.CALENDAR_MONTH_LABELS.map((e,n)=>(0,l.jsx)(`button`,{type:`button`,className:(0,t.cx)(`ssg-dp-cell`,n===b&&`ssg-dp-cell--selected`),onPointerDown:A(()=>{x(n),_(`days`)}),children:e},e))}),g===`years`&&(0,l.jsx)(`div`,{className:`ssg-dp-grid`,children:(0,R.buildYearGrid)(v).map(e=>(0,l.jsx)(`button`,{type:`button`,className:(0,t.cx)(`ssg-dp-cell`,e===v&&`ssg-dp-cell--selected`),onPointerDown:A(()=>{y(e),_(`months`)}),children:e},e))}),(0,l.jsxs)(`div`,{className:`ssg-dp-foot`,children:[g!==`days`&&(0,l.jsx)(`button`,{type:`button`,className:`ssg-dp-foot-btn`,onPointerDown:A(M),children:`← 戻る`}),(0,l.jsx)(`button`,{type:`button`,className:`ssg-dp-foot-btn`,onPointerDown:A(()=>O(w)),children:`今日`}),(0,l.jsx)(`button`,{type:`button`,className:`ssg-dp-foot-btn ssg-dp-foot-btn--muted`,onPointerDown:A(()=>O(``)),children:`クリア`})]})]})]})}var yt=24;function bt({options:t,setSelection:n,searchInputRef:r,onValueToggle:i,onSelectAllChange:a,onReplaceSelection:o,onRequestClose:s,isServerSide:c,selectAllUsesExplicitScope:u=!1}){let[d,f]=(0,e.useState)(``),p=(0,e.useDeferredValue)(d),m=(0,e.useMemo)(()=>(0,L.filterSetOptionsBySearch)(t,p),[t,p]),h=p.trim().length>0,g=(0,e.useRef)(null),_=we({count:m.length,getScrollElement:()=>g.current,estimateSize:()=>yt,overscan:10}),v=(0,e.useMemo)(()=>{if(n===null)return m.length;let e=0;for(let t of m)(0,se.isSetValueSelected)(n,t.value)&&(e+=1);return e},[n,m]),y=m.length>0&&v===m.length,b=v>0&&!y,x=(0,e.useMemo)(()=>new Set(t.map(e=>e.value)),[t]),S=(0,e.useMemo)(()=>{if(n===null)return t.length;let e=0;for(let t of n.values)x.has(t)&&(e+=1);return n.mode===`include`?e:t.length-e},[n,x,t.length]);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`input`,{ref:r,type:`text`,value:d,onChange:e=>f(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Escape`&&(e.preventDefault(),s()),e.key===`Enter`){if(e.nativeEvent.isComposing)return;e.preventDefault();let n=(0,L.resolveSetFilterEnterAction)(t,d);if(n.kind===`none`)return;n.kind===`replace`&&o(n.values),s()}},placeholder:`検索(Enter で確定)`,className:`ssg-filter-input`}),(0,l.jsxs)(`label`,{className:`ssg-filter-selectall`,children:[(0,l.jsx)(`input`,{type:`checkbox`,checked:y,ref:e=>{e&&(e.indeterminate=b)},onChange:()=>{a(h||u?m.map(e=>e.value):`all`,!y)}}),(0,l.jsx)(`span`,{className:`ssg-filter-selectall-label`,children:h?`(検索結果をすべて選択)`:`(すべて選択)`})]}),(0,l.jsx)(`div`,{ref:g,className:`ssg-filter-list`,children:m.length===0?(0,l.jsx)(`div`,{className:`ssg-filter-empty`,children:t.length===0?c?`候補が未指定です(serverSide では列に filterOptions などの候補供給が必要)`:`候補がありません`:`一致する候補がありません`}):(0,l.jsx)(`div`,{className:`ssg-filter-virt`,style:{height:_.getTotalSize()},children:_.getVirtualItems().map(e=>{let t=m[e.index];if(!t)return null;let r=(0,se.isSetValueSelected)(n,t.value);return(0,l.jsxs)(`label`,{className:`ssg-filter-option`,style:{transform:`translateY(${e.start}px)`,height:e.size},children:[(0,l.jsx)(`input`,{type:`checkbox`,checked:r,onChange:()=>i(t.value)}),(0,l.jsx)(`span`,{className:`ssg-filter-option-label`,children:t.label})]},t.value)})})}),(0,l.jsxs)(`div`,{className:`ssg-filter-meta`,children:[`選択中: `,S,` / `,t.length,` 件`,h?`(表示中 ${m.length} 件)`:``]})]})}function xt({draft:e,valueInputRef:t,onDraftChange:n,onKeyDown:r}){let i=(0,ce.numberFilterOperandCount)(e.operator);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`select`,{value:e.operator,onChange:t=>n({...e,operator:t.target.value}),onKeyDown:r,className:`ssg-filter-select`,"aria-label":`条件の演算子`,children:ce.NUMBER_FILTER_OPERATOR_OPTIONS.map(e=>(0,l.jsx)(`option`,{value:e.value,children:e.label},e.value))}),i>0?(0,l.jsxs)(`div`,{className:`ssg-filter-cond-values`,children:[(0,l.jsx)(`input`,{ref:t,type:`text`,inputMode:`decimal`,value:e.value1,onChange:t=>n({...e,value1:t.target.value}),onKeyDown:r,placeholder:i===2?`下限`:`値`,className:`ssg-filter-input`,"aria-label":i===2?`下限`:`条件の値`}),i===2&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`span`,{className:`ssg-filter-cond-tilde`,children:`〜`}),(0,l.jsx)(`input`,{type:`text`,inputMode:`decimal`,value:e.value2,onChange:t=>n({...e,value2:t.target.value}),onKeyDown:r,placeholder:`上限`,className:`ssg-filter-input`,"aria-label":`上限`})]})]}):(0,l.jsx)(`div`,{className:`ssg-filter-meta`,children:`この演算子は値入力を使いません`})]})}function St({draft:e,valueInputRef:t,onDraftChange:n,onKeyDown:r}){let i=(0,le.textFilterOperandCount)(e.operator);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`select`,{value:e.operator,onChange:t=>n({...e,operator:t.target.value}),onKeyDown:r,className:`ssg-filter-select`,"aria-label":`条件の演算子`,children:le.TEXT_FILTER_OPERATOR_OPTIONS.map(e=>(0,l.jsx)(`option`,{value:e.value,children:e.label},e.value))}),i>0?(0,l.jsx)(`div`,{className:`ssg-filter-cond-values`,children:(0,l.jsx)(`input`,{ref:t,type:`text`,value:e.value,onChange:t=>n({...e,value:t.target.value}),onKeyDown:r,placeholder:`値`,className:`ssg-filter-input`,"aria-label":`条件の値`})}):(0,l.jsx)(`div`,{className:`ssg-filter-meta`,children:`この演算子は値入力を使いません`})]})}function Ct({draft:e,valueInputRef:n,onDraftChange:r,onKeyDown:i,presets:a,renderDateInput:o,onRequestClose:s}){let c=e.preset===null?(0,ue.dateFilterOperandCount)(e.operator):0,u=(t,n)=>{r({...e,[t]:(0,ue.normalizeFilterDateInputValue)(n),preset:null})};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`select`,{value:e.operator,onChange:t=>r({...e,operator:t.target.value,preset:null}),onKeyDown:i,className:`ssg-filter-select`,"aria-label":`条件の演算子`,children:ue.DATE_FILTER_OPERATOR_OPTIONS.map(e=>(0,l.jsx)(`option`,{value:e.value,children:e.label},e.value))}),c>0?(0,l.jsxs)(`div`,{className:`ssg-filter-cond-values`,children:[o?o({value:e.value1,onChange:e=>u(`value1`,e),ariaLabel:c===2?`開始日`:`条件の日付`,slot:c===2?`from`:`single`}):(0,l.jsx)(vt,{value:e.value1,onCommit:t=>r({...e,value1:t,preset:null}),ariaLabel:c===2?`開始日`:`条件の日付`,inputRef:n,onRequestClose:s}),c===2&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`span`,{className:`ssg-filter-cond-tilde`,children:`〜`}),o?o({value:e.value2,onChange:e=>u(`value2`,e),ariaLabel:`終了日`,slot:`to`}):(0,l.jsx)(vt,{value:e.value2,onCommit:t=>r({...e,value2:t,preset:null}),ariaLabel:`終了日`,onRequestClose:s,align:`right`})]})]}):e.preset===null?(0,l.jsx)(`div`,{className:`ssg-filter-meta`,children:`この演算子は値入力を使いません`}):null,a.length>0&&(0,l.jsx)(`div`,{className:`ssg-filter-presets`,children:a.map(n=>(0,l.jsx)(`button`,{type:`button`,onPointerDown:t=>{t.preventDefault(),t.stopPropagation(),r({...e,preset:e.preset===n.id?null:n.id})},onKeyDown:e=>{e.stopPropagation()},className:(0,t.cx)(`ssg-filter-preset-chip`,e.preset===n.id&&`ssg-filter-preset-chip--active`),children:n.label},n.id))})]})}function wt({options:t,setSelection:n,searchInputRef:r,onValueToggle:i,onSelectAllChange:a,onReplaceSelection:o,onRequestClose:s,isServerSide:c}){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)(()=>(0,L.filterSetOptionsBySearch)(t,f),[t,f]),_=(0,e.useMemo)(()=>(0,de.buildDateTreeRows)(t,p),[t,p]),v=(0,e.useRef)(null),y=h?g.length:_.length,b=we({count:y,getScrollElement:()=>v.current,estimateSize:()=>yt,overscan:10}),x=(0,e.useMemo)(()=>(h?g:t).map(e=>e.value),[h,g,t]),S=(0,e.useMemo)(()=>{let e=0;for(let t of x)(0,se.isSetValueSelected)(n,t)&&(e+=1);return e},[x,n]),C=x.length>0&&S===x.length,w=S>0&&!C,T=(0,e.useMemo)(()=>new Set(t.map(e=>e.value)),[t]),E=(0,e.useMemo)(()=>{if(n===null)return t.length;let e=0;for(let t of n.values)T.has(t)&&(e+=1);return n.mode===`include`?e:t.length-e},[n,T,t.length]),D=e=>{m(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},O=e=>{let t=0;for(let r of e)(0,se.isSetValueSelected)(n,r)&&(t+=1);return t},k=e=>{let t=O(e.leafKeys),n=e.leafKeys.length>0&&t===e.leafKeys.length,r=t>0&&!n;return(0,l.jsxs)(l.Fragment,{children:[e.type===`group`?(0,l.jsx)(`button`,{type:`button`,onPointerDown:t=>{t.preventDefault(),t.stopPropagation(),D(e.key)},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-tree-toggle`,"aria-label":e.expanded?`折りたたむ`:`展開する`,children:e.expanded?`▾`:`▸`}):(0,l.jsx)(`span`,{className:`ssg-filter-tree-toggle ssg-filter-tree-toggle--placeholder`}),(0,l.jsx)(`input`,{type:`checkbox`,checked:n,ref:e=>{e&&(e.indeterminate=r)},onChange:()=>{if(e.type===`leaf`){i(e.key);return}a(e.leafKeys,!n)}}),(0,l.jsx)(`span`,{className:`ssg-filter-option-label`,children:e.label})]})};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`input`,{ref:r,type:`text`,value:u,onChange:e=>d(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Escape`&&(e.preventDefault(),s()),e.key===`Enter`){if(e.nativeEvent.isComposing)return;e.preventDefault();let n=(0,L.resolveSetFilterEnterAction)(t,u);if(n.kind===`none`)return;n.kind===`replace`&&o(n.values),s()}},placeholder:`検索(Enter で確定)`,className:`ssg-filter-input`}),(0,l.jsxs)(`label`,{className:`ssg-filter-selectall`,children:[(0,l.jsx)(`input`,{type:`checkbox`,checked:C,ref:e=>{e&&(e.indeterminate=w)},onChange:()=>a(x,!C)}),(0,l.jsx)(`span`,{className:`ssg-filter-selectall-label`,children:h?`(検索結果をすべて選択)`:`(すべて選択)`})]}),(0,l.jsx)(`div`,{ref:v,className:`ssg-filter-list`,children:y===0?(0,l.jsx)(`div`,{className:`ssg-filter-empty`,children:t.length===0?c?`候補が未指定です(serverSide では列に filterOptions などの候補供給が必要)`:`候補がありません`:`一致する候補がありません`}):(0,l.jsx)(`div`,{className:`ssg-filter-virt`,style:{height:b.getTotalSize()},children:b.getVirtualItems().map(e=>{if(h){let t=g[e.index];return t?(0,l.jsxs)(`label`,{className:`ssg-filter-option`,style:{transform:`translateY(${e.start}px)`,height:e.size},children:[(0,l.jsx)(`input`,{type:`checkbox`,checked:(0,se.isSetValueSelected)(n,t.value),onChange:()=>i(t.value)}),(0,l.jsx)(`span`,{className:`ssg-filter-option-label`,children:t.label})]},t.value):null}let t=_[e.index];return t?(0,l.jsx)(`div`,{className:`ssg-filter-option`,style:{transform:`translateY(${e.start}px)`,height:e.size,paddingLeft:8+t.depth*16},children:k(t)},t.key):null})})}),(0,l.jsxs)(`div`,{className:`ssg-filter-meta`,children:[`選択中: `,E,` / `,t.length,` 件`,h?`(表示中 ${g.length} 件)`:``]})]})}function Tt({conditionEditor:e,conditionActive:t,onConditionClear:n,options:r,setSelection:i,onSelectionClear:a,summaryText:o,children:s}){return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`ssg-filter-sec-head`,children:[(0,l.jsx)(`span`,{className:`ssg-filter-sec-label`,children:`条件`}),(0,l.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,l.jsx)(`div`,{className:`ssg-filter-sep`}),(0,l.jsxs)(`div`,{className:`ssg-filter-sec-head`,children:[(0,l.jsx)(`span`,{className:`ssg-filter-sec-label`,children:`値`}),(0,l.jsx)(`span`,{className:`ssg-filter-sec-meta`,children:t?`一致 ${r.length} 件`:`全 ${r.length} 件`}),(0,l.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),a()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-sec-clear`,disabled:i===null,children:`クリア`})]}),s,(0,l.jsxs)(`div`,{className:`ssg-filter-summary`,children:[`🔽 `,o]})]})}function Et({isOpen:n,themeClassName:i,popoverSlot:a,title:o,filterType:s,draftValue:c,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:O,textInputRef:k,selectRef:A,onRequestClose:j,onDraftChange:ee,onApply:M,onClear:te,onSetValueToggle:ne,onSetSelectAllChange:N,onSetClear:re,onSetReplaceSelection:P,isServerSide:F=!1}){let ie=(0,e.useRef)(null),[I]=(0,e.useState)(()=>new Date);if(typeof document>`u`||!n||!S)return null;let ae={top:S.top,left:S.left,width:S.width,maxHeight:S.maxHeight},oe=e=>{e.stopPropagation()},L=e=>{e.stopPropagation()},se=s===`set`,R=s===`numberSet`,de=s===`textSet`,fe=s===`dateSet`,pe=R||de||fe,me=se||pe,he=u??ce.DEFAULT_NUMBER_FILTER_DRAFT,ge=f??le.DEFAULT_TEXT_FILTER_DRAFT,_e=m??ue.DEFAULT_DATE_FILTER_DRAFT,ve=g??(0,D.normalizeDateFilterPresets)(void 0),ye=R?(0,ce.buildParsedNumberFilterFromDraft)(he):null,be=de?(0,le.buildParsedTextFilterFromDraft)(ge):null,xe=fe?(0,ue.buildParsedDateFilterFromDraft)(_e):null,Se=ye!==null||be!==null||xe!==null,Ce=R?(0,ce.filterOptionsByNumberCondition)(C,ye):de?(0,le.filterOptionsByTextCondition)(C,be):fe?(0,ue.filterOptionsByDateCondition)(C,xe,I,ve):C,we=e=>{if(e.stopPropagation(),e.key===`Enter`){e.preventDefault(),M();return}e.key===`Escape`&&(e.preventDefault(),j())};return(0,r.createPortal)((0,l.jsxs)(`div`,{ref:O,onPointerDown:L,onKeyDown:oe,onPasteCapture:e=>{e.stopPropagation()},className:(0,t.cx)(`ssg-filter-popover`,i,a?.className),style:{...a?.style,...ae},children:[(0,l.jsxs)(`div`,{className:`ssg-filter-title`,children:[`列フィルター: `,o]}),(me||s===`select`)&&w===`collecting`?(0,l.jsxs)(`div`,{className:`ssg-filter-collecting`,children:[`候補を収集中… `,Math.round(T*100),`%`]}):pe?(0,l.jsx)(Tt,{conditionEditor:R?(0,l.jsx)(xt,{draft:he,valueInputRef:k,onDraftChange:d,onKeyDown:we}):de?(0,l.jsx)(St,{draft:ge,valueInputRef:k,onDraftChange:p,onKeyDown:we}):(0,l.jsx)(Ct,{draft:_e,valueInputRef:k,onDraftChange:h,onKeyDown:we,presets:ve,renderDateInput:_,onRequestClose:j}),conditionActive:Se,onConditionClear:v,options:Ce,setSelection:E,onSelectionClear:y,summaryText:b,children:fe?(0,l.jsx)(wt,{options:Ce,setSelection:E,searchInputRef:ie,onValueToggle:ne,onSelectAllChange:N,onReplaceSelection:P,onRequestClose:j,isServerSide:F}):(0,l.jsx)(bt,{options:Ce,setSelection:E,searchInputRef:ie,onValueToggle:ne,onSelectAllChange:N,onReplaceSelection:P,onRequestClose:j,isServerSide:F,selectAllUsesExplicitScope:!0})}):se?(0,l.jsx)(bt,{options:C,setSelection:E,searchInputRef:k,onValueToggle:ne,onSelectAllChange:N,onReplaceSelection:P,onRequestClose:j,isServerSide:F}):s===`number`?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{className:`ssg-filter-hint`,children:`フィルター種別: number`}),(0,l.jsx)(xt,{draft:he,valueInputRef:k,onDraftChange:d,onKeyDown:we})]}):s===`select`?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{className:`ssg-filter-hint`,children:`フィルター種別: select`}),(0,l.jsxs)(`select`,{ref:A,value:c,onChange:e=>ee(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Enter`){e.preventDefault(),M();return}e.key===`Escape`&&(e.preventDefault(),j())},className:`ssg-filter-select`,children:[(0,l.jsx)(`option`,{value:``,children:`(すべて)`}),C.map(e=>(0,l.jsx)(`option`,{value:e.value,children:e.label},`${o}-${e.value}`))]}),(0,l.jsxs)(`div`,{className:`ssg-filter-meta`,children:[`候補数: `,C.length]})]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`ssg-filter-hint`,children:[`フィルター種別: `,s]}),(0,l.jsx)(`input`,{ref:k,type:`text`,value:c,onChange:e=>ee(e.target.value),onKeyDown:e=>{if(e.stopPropagation(),e.key===`Enter`){e.preventDefault(),M();return}e.key===`Escape`&&(e.preventDefault(),j())},placeholder:`部分一致で絞り込み`,className:`ssg-filter-input`}),(0,l.jsx)(`div`,{className:`ssg-filter-meta ssg-filter-meta--ellipsis`,children:`部分一致検索です`})]}),!me&&(0,l.jsxs)(`div`,{className:`ssg-filter-meta ssg-filter-meta--ellipsis`,children:[`現在値: `,x]}),(0,l.jsx)(`div`,{className:`ssg-filter-footer`,children:me?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),re()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-secondary`,children:`クリア`}),(0,l.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),j()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-primary`,children:`閉じる`})]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),te()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-secondary`,children:`クリア`}),(0,l.jsx)(`button`,{type:`button`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation(),M()},onKeyDown:e=>{e.stopPropagation()},className:`ssg-filter-btn-primary`,children:`適用`})]})})]}),document.body)}function Dt({context:e,showCounts:n=!0,slot:r}){let{derivedSummary:i}=e;return(0,l.jsx)(`div`,{className:(0,t.cx)(`ssg-bar--bottom`,r?.className),style:r?.style,children:(0,l.jsxs)(`div`,{className:`ssg-bar-container`,children:[n?(0,l.jsxs)(`div`,{className:`ssg-bar-group`,children:[(0,l.jsx)(`span`,{className:`ssg-bar-chip`,children:i.rowSummaryText}),(0,l.jsx)(`span`,{className:`ssg-bar-chip`,children:i.columnSummaryText})]}):null,(0,l.jsxs)(`div`,{className:`ssg-bar-group`,children:[(0,l.jsxs)(`span`,{className:`ssg-bar-chip`,children:[`Active: `,i.activeCellLabel]}),(0,l.jsxs)(`span`,{className:`ssg-bar-chip`,children:[`Selection: `,i.selectionLabel]}),(0,l.jsx)(`span`,{className:`ssg-bar-chip`,children:i.selectionStatsText}),(0,l.jsxs)(`span`,{className:`ssg-bar-chip`,children:[`Cols: `,i.selectionStats.selectedColumnCount]})]})]})})}var Ot=(0,l.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,l.jsx)(`circle`,{cx:`7`,cy:`7`,r:`4.5`}),(0,l.jsx)(`line`,{x1:`10.6`,y1:`10.6`,x2:`14.5`,y2:`14.5`})]}),kt=(0,l.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,l.jsx)(`line`,{x1:`4`,y1:`4`,x2:`12`,y2:`12`}),(0,l.jsx)(`line`,{x1:`12`,y1:`4`,x2:`4`,y2:`12`})]});function At({context:e,showSummary:n=!0,showFilter:r=!0,showCounts:i=!0,globalFilterPlaceholder:a=`グローバルフィルター`,globalFilterIcon:o,onFilterSummaryClick:s,slot:c}){let{derivedSummary:u}=e,d=o===void 0?Ot:o,f=e.globalFilterText.trim().length>0;return(0,l.jsx)(`div`,{className:(0,t.cx)(`ssg-bar--top`,c?.className),style:c?.style,children:(0,l.jsxs)(`div`,{className:`ssg-bar-container`,children:[n?(0,l.jsxs)(`div`,{className:`ssg-bar-group ssg-bar-leading`,children:[(0,l.jsx)(`span`,{className:`ssg-bar-title`,children:`Toolbar`}),i?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.rowSummaryText}),(0,l.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.columnSummaryText})]}):null,s?(0,l.jsx)(`button`,{type:`button`,className:`ssg-bar-chip ssg-bar-chip--emphasis ssg-bar-chip--action`,onPointerDown:e=>{e.stopPropagation()},onClick:s,"data-ssg-tooltip":`フィルター管理パネルを開閉`,"aria-label":`フィルター管理パネルを開閉`,children:u.filterSummaryText}):(0,l.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.filterSummaryText}),(0,l.jsx)(`span`,{className:`ssg-bar-chip ssg-bar-chip--emphasis`,children:u.sortSummaryText})]}):null,r?(0,l.jsxs)(`div`,{className:`ssg-bar-input-group`,children:[d?(0,l.jsx)(`span`,{className:`ssg-bar-input-icon`,"aria-hidden":`true`,children:d}):null,(0,l.jsx)(`input`,{type:`text`,value:e.globalFilterText,onChange:t=>e.setGlobalFilterText(t.target.value),placeholder:a,className:`ssg-bar-input`}),f?(0,l.jsx)(`button`,{type:`button`,onClick:()=>e.setGlobalFilterText(``),className:`ssg-bar-input-clear`,"aria-label":`フィルターをクリア`,"data-ssg-tooltip":`クリア`,children:kt}):null]}):null]})})}function jt({pane:e,ownsRowHeader:r,leadingWidth:i,rowIndex:a,rowKey:o,sourceRowIndex:s,row:c,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:ee,onCellPointerEnter:M,onCellDoubleClick:te,renderCellContent:ne,rowClassName:N,rowStyle:re,slots:P}){return(0,l.jsxs)(`div`,{"data-pane":e,"data-row-index":a,className:(0,t.cx)(`ssg-body-row`,S&&`ssg-body-row--checked`,N,P?.bodyRow?.className),style:{...P?.bodyRow?.style,...re,height:f,transform:`translateY(${u}px)`},children:[r&&(0,l.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:(0,t.cx)(`ssg-header-cell`,`ssg-row-header-cell`,x&&`ssg-row-header-cell--checkbox`,(y||b)&&`ssg-header-cell--selected`,v&&`ssg-header-cell--hovered`,N,P?.rowHeaderCell?.className),style:{...P?.rowHeaderCell?.style,...re,..._,height:f},children:x?(0,l.jsx)(gt,{slot:P?.checkbox,state:S?`checked`:`unchecked`}):a+1}),d.map(e=>{if(!e)return null;let r=e.logicalIndex,u=e.column,d=i+e.paneLocalStart,_=e.paneLocalSize,y=r===C,x=r===w,S=b||T>=0&&r>=T&&r<=E,k=!(0,I.isCellEditable)({readOnly:D,canEditCell:O},a,r,c,u),A=p&&u.autoHeight===!0,j,F=u.cellClassName;F&&(j=typeof F==`function`?F({row:c,rowIndex:a,sourceRowIndex:s,rowKey:o,colIndex:r,value:(0,I.getCellValue)(c,u),column:u,isActive:y,isSelected:S,isEditing:x,readOnly:k}):F);let ie=(0,n.resolveSlotProps)(j),ae=h&&u.validate?(0,oe.getInvalidMessage)(u,c,(0,I.getCellValue)(c,u)):null,L=(0,t.cx)(`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`,ae!==null&&`ssg-body-cell--invalid`,v&&`ssg-body-cell--row-hovered`,N,ie.className,P?.bodyCell?.className),se={};u.wordBreak!==void 0&&(se.wordBreak=u.wordBreak),u.lineBreak!==void 0&&(se.lineBreak=u.lineBreak);let ce=(0,pe.shouldMarkCellOverflowTooltip)({enabled:m,isAutoHeightCell:A,hasRenderCell:u.renderCell!==void 0});return(0,l.jsx)(`div`,{"data-ssg-col-key":u.key,"data-autoheight-cell":A?``:void 0,"data-ssg-tooltip":ae??void 0,"data-ssg-tooltip-overflow":ce?``:void 0,className:L,onPointerDown:e=>ee({row:a,col:r},e),onPointerEnter:e=>M({row:a,col:r},e),onDoubleClick:()=>te({row:a,col:r}),style:{...P?.bodyCell?.style,...re,...ie.style,left:d,width:_,minWidth:_,...A?{minHeight:g}:{height:f},...se,zIndex:y?3:1},children:ne(c,a,u,r,{isActive:y,isSelected:S,isEditing:x,readOnly:k})},`${String(o)}-${u.key}`)})]})}var Mt=new Set([`rowStyle`]),Nt=(0,e.memo)(jt,(e,t)=>(0,n.arePropsEqualWithStyleKeys)(e,t,Mt)),Pt=[`62%`,`46%`,`78%`,`54%`];function Ft({pane:e,ownsRowHeader:n,leadingWidth:r,rowIndex:i,top:a,rowHeight:o,renderEntries:s,rowHeaderCellStyle:c,isRowHovered:u,showRowCheckbox:d,onRowHeaderPointerDown:f,onRowHeaderPointerEnter:p,onRowHeaderPointerLeave:m,onCellPointerDown:h,onCellPointerEnter:g,slots:_}){return(0,l.jsxs)(`div`,{"data-pane":e,"data-row-index":i,"data-skeleton-row":``,className:(0,t.cx)(`ssg-body-row`,_?.bodyRow?.className),style:{..._?.bodyRow?.style,height:o,transform:`translateY(${a}px)`},children:[n&&(0,l.jsx)(`div`,{onPointerDown:e=>f(i,e),onPointerEnter:e=>p(i,e),onPointerLeave:()=>m(i),className:(0,t.cx)(`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,...c,height:o},children:d?(0,l.jsx)(gt,{slot:_?.checkbox,state:`unchecked`,disabled:!0}):i+1}),s.map(n=>{if(!n)return null;let a=n.logicalIndex,s=r+n.paneLocalStart,c=n.paneLocalSize,d=Pt[a%Pt.length];return(0,l.jsx)(`div`,{className:(0,t.cx)(`ssg-body-cell`,u&&`ssg-body-cell--row-hovered`,_?.bodyCell?.className),onPointerDown:e=>h({row:i,col:a},e),onPointerEnter:e=>g({row:i,col:a},e),style:{..._?.bodyCell?.style,left:s,width:c,minWidth:c,height:o,zIndex:1},children:(0,l.jsx)(`div`,{"aria-hidden":`true`,className:`ssg-skeleton-bar`,style:{width:d}})},`skeleton-${e}-${a}`)})]})}var It=(0,e.memo)(Ft),Lt=(e,t)=>t==null?``:e.valueFormatter?e.valueFormatter({value:t,row:void 0,column:e}):String(t),Rt=16;function B({pane:e,ownsRowHeader:n,leadingWidth:r,rowIndex:i,top:a,rowHeight:o,renderEntries:s,rowHeaderCellStyle:c,isRowHovered:u,showRowCheckbox:d,groupRow:f,isCollapsed:p,onGroupToggle:m,onRowHeaderPointerEnter:h,onRowHeaderPointerLeave:g,slots:_}){return(0,l.jsxs)(`div`,{"data-pane":e,"data-row-index":i,"data-ssg-group-row":``,className:(0,t.cx)(`ssg-body-row`,_?.bodyRow?.className,_?.groupRow?.className),style:{..._?.bodyRow?.style,..._?.groupRow?.style,height:o,transform:`translateY(${a}px)`},onDoubleClick:()=>m(f.groupKey),children:[n&&(0,l.jsx)(`div`,{onPointerEnter:e=>h(i,e),onPointerLeave:()=>g(i),className:(0,t.cx)(`ssg-header-cell`,`ssg-row-header-cell`,d&&`ssg-row-header-cell--checkbox`,u&&`ssg-header-cell--hovered`,_?.rowHeaderCell?.className),style:{..._?.rowHeaderCell?.style,...c,height:o},children:d?null:i+1}),s.map(n=>{if(!n)return null;let i=n.column,a=r+n.paneLocalStart,s=n.paneLocalSize,c=i.key===fe.GROUP_AUTO_COLUMN_KEY,d=!c&&Object.prototype.hasOwnProperty.call(f.aggregates,i.key)?Lt(i,f.aggregates[i.key]):null;return(0,l.jsx)(`div`,{"data-ssg-col-key":i.key,className:(0,t.cx)(`ssg-body-cell`,`ssg-group-cell`,i.align===`center`&&`ssg-body-cell--align-center`,i.align===`right`&&`ssg-body-cell--align-right`,u&&`ssg-body-cell--row-hovered`,_?.bodyCell?.className,_?.groupCell?.className),style:{..._?.bodyCell?.style,..._?.groupCell?.style,left:a,width:s,minWidth:s,height:o,zIndex:1},children:c?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`span`,{"aria-hidden":`true`,className:`ssg-group-indent`,style:{width:f.level*Rt}}),(0,l.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,l.jsx)(`span`,{className:`ssg-group-label`,children:f.label}),(0,l.jsxs)(`span`,{className:`ssg-group-count`,children:[`(`,f.leafCount,`件)`]})]}):d},`group-${e}-${i.key}`)})]})}var zt=(0,e.memo)(B);function Bt({pane:e,ownsRowHeader:t,leadingWidth:r,rowModel:i,virtualRows:a,virtualRowIndexes:o,renderEntries:s,rowHeight:c,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:ee,getRowClassName:M,slots:te}){return(0,l.jsx)(l.Fragment,{children:a.map(a=>{let N=a.index;if(!o.has(N))return null;let re=a.size??c,P=i.getGroupRow?.(N);if(P&&h)return(0,l.jsx)(zt,{pane:e,ownsRowHeader:t,leadingWidth:r,rowIndex:N,top:a.start,rowHeight:re,renderEntries:s,rowHeaderCellStyle:g,isRowHovered:_===N,showRowCheckbox:y,groupRow:P,isCollapsed:m?.has(P.groupKey)===!0,onGroupToggle:h,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,slots:te},String((0,fe.groupRowKey)(P)));let F=i.getRow(N);if(!F){if(!p)return null;let n=i.getRowKey(N)??N;return(0,l.jsx)(It,{pane:e,ownsRowHeader:t,leadingWidth:r,rowIndex:N,top:a.start,rowHeight:re,renderEntries:s,rowHeaderCellStyle:g,isRowHovered:_===N,showRowCheckbox:y,onRowHeaderPointerDown:E,onRowHeaderPointerEnter:D,onRowHeaderPointerLeave:O,onCellPointerDown:k,onCellPointerEnter:A,slots:te},String(n))}let ie=i.getRowKey(N)??N,I=i.getSourceIndex(N)??N,ae=y?(0,ne.resolveIsRowSelected)(b,ie):!1,oe=C.kind===`row`&&N>=C.startRow&&N<=C.endRow,L=C.kind===`cell`&&N>=C.startRow&&N<=C.endRow,se=C.kind===`col`||L?C.startCol:-1,ce=C.kind===`col`||L?C.endCol:-1,le=x&&x.row===N?x.col:-1,ue=S&&S.row===N?S.col:-1,R=(0,n.resolveSlotProps)(M?.(F,N,{row:F,rowIndex:N,sourceRowIndex:I,rowKey:ie,isSelected:ae}));return(0,l.jsx)(Nt,{pane:e,ownsRowHeader:t,leadingWidth:r,rowIndex:N,rowKey:ie,sourceRowIndex:I,row:F,top:a.start,renderEntries:s,rowHeight:re,autoHeight:u,showCellOverflowTooltip:d,showValidationMarks:f,autoHeightMinHeight:c,rowHeaderCellStyle:g,isRowHovered:_===N,isWholeGridSelected:v,isRowSelected:oe,showRowCheckbox:y,isRowChecked:ae,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:ee,rowClassName:R.className,rowStyle:R.style,slots:te},String(ie))})})}var Vt=e=>{e.stopPropagation()};function V({entries:e,mode:r,paneWidth:i,baseOffset:a,cardStickyLeft:o,cardWidth:s,cardSlot:c,slots:u,renderCard:d}){return e.length===0?null:(0,l.jsx)(l.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:i,height:p};return(0,l.jsx)(`div`,{className:(0,t.cx)(`ssg-detail-band`,u?.detailBand?.className),"data-detail-row-index":f.index,style:{...u?.detailBand?.style,...m},children:r===`center`&&(0,l.jsx)(`div`,{className:`ssg-detail-card-holder`,style:{left:o,width:s},children:(0,l.jsx)(`div`,{className:(0,t.cx)(`ssg-detail-card`,u?.detailCard?.className,c?.className),style:(0,n.mergeStyles)(u?.detailCard?.style,c?.style),"data-ssg-detail":``,onKeyDown:Vt,onKeyUp:Vt,onPaste:Vt,onCopy:Vt,onCut:Vt,onContextMenu:Vt,onDragStart:Vt,onDoubleClick:Vt,children:d(e)})})},e.rowKey)})})}var Ht=(0,e.memo)(V);function Ut({isActive:e,title:n,className:r,style:i,onPointerDown:a,onClick:o,children:s}){return(0,l.jsx)(`button`,{type:`button`,"data-ssg-tooltip":n,"aria-label":n,onPointerDown:a,onClick:o,className:(0,t.cx)(`ssg-icon-btn`,e&&`ssg-icon-btn--active`,r),style:i,children:s})}function Wt({pane:e,ownsRowHeader:n,leadingWidth:r,headerHeight:i,rowHeaderCellStyle:a,slots:o,isCornerHovered:s,isWholeGridSelected:c,showSelectAllCheckbox:u,selectAllState:d,filteredRowsLength:f,visibleColumnsLength:p,renderEntries:m,hoveredColumnIndex:g,selectionSnapshot:_,columnFilterValues:v,sortState:y,onCornerPointerDown:b,onCornerPointerEnter:x,onCornerPointerLeave:S,onColumnHeaderPointerDown:C,onColumnHeaderPointerEnter:w,onColumnHeaderPointerLeave:T,onColumnResizePointerDown:E,enableColumnResize:D,enableColumnMenu:O,openedMenuColumnKey:k,onColumnMenuButtonPointerDown:A,onColumnMenuButtonClick:j,onColumnHeaderContextMenu:ee,onColumnDragHandlePointerDown:ne}){return(0,l.jsxs)(`div`,{"data-pane":e,className:(0,t.cx)(`ssg-header-row`,o?.headerRow?.className),style:{...o?.headerRow?.style,height:i},children:[n&&(0,l.jsx)(`div`,{role:u?`checkbox`:void 0,"aria-checked":u?d===`all`?!0:d===`some`?`mixed`:!1:void 0,onPointerDown:b,onPointerEnter:x,onPointerLeave:S,className:(0,t.cx)(`ssg-header-cell`,`ssg-corner-cell`,u&&`ssg-corner-cell--checkbox`,c&&`ssg-header-cell--selected`,s&&`ssg-header-cell--hovered`,o?.rowHeaderCell?.className,o?.cornerCell?.className),style:{...o?.rowHeaderCell?.style,...o?.cornerCell?.style,...a,height:i,cursor:f>0&&p>0?`pointer`:`default`},children:u?(0,l.jsx)(gt,{slot:o?.checkbox,state:d===`all`?`checked`:d===`some`?`indeterminate`:`unchecked`}):`#`}),m.map(e=>{if(!e)return null;let n=e.logicalIndex,a=e.column,s=r+e.paneLocalStart,u=e.paneLocalSize,d=(0,h.isActiveColumnFilterValue)(v[a.key]),f=_.kind===`col`&&n>=_.startCol&&n<=_.endCol,p=y.findIndex(e=>e.columnKey===a.key),m=p===-1?null:y[p],b=k===a.key,x=(0,M.isSyntheticColumnKey)(a.key),S=a.key===M.DETAIL_TOGGLE_COLUMN_KEY||a.key===te.ROW_DRAG_HANDLE_COLUMN_KEY,N=O&&!x;return(0,l.jsxs)(`div`,{"data-ssg-col-key":a.key,onPointerDown:e=>C(n,e),onPointerEnter:e=>w(n,e),onPointerLeave:()=>T(n),onContextMenu:e=>{if(x){e.preventDefault();return}ee(a,e)},className:(0,t.cx)(`ssg-header-cell`,(c||f)&&`ssg-header-cell--selected`,g===n&&`ssg-header-cell--hovered`,o?.headerCell?.className),style:{...o?.headerCell?.style,left:s,width:u,minWidth:u,height:i},children:[(0,l.jsx)(`div`,{className:(0,t.cx)(`ssg-header-label`,d&&`ssg-header-label--filtered`),"data-ssg-tooltip":a.renderHeader||S?void 0:a.title||a.key,children:a.renderHeader?a.renderHeader({colIndex:n,width:u,column:a,filterValue:v[a.key],isFiltered:d}):S?``:a.title||a.key}),(0,l.jsxs)(`div`,{className:`ssg-header-status`,children:[m&&(0,l.jsxs)(`span`,{"aria-hidden":`true`,"data-ssg-tooltip":(m.direction===`asc`?`昇順で並び替え中`:`降順で並び替え中`)+(y.length>1?` (優先度 ${p+1})`:``),className:`ssg-header-sort`,children:[m.direction===`asc`?`↑`:`↓`,y.length>1&&(0,l.jsx)(`span`,{className:`ssg-header-sort-priority`,children:p+1})]}),d&&(0,l.jsx)(`span`,{"aria-hidden":`true`,"data-ssg-tooltip":`フィルター適用中`,className:`ssg-header-filtered-mark`,children:(0,l.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 16 16`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:(0,l.jsx)(`path`,{d:`M2 4 L14 4 L9.2 9.2 L9.2 13 L6.8 13 L6.8 9.2 Z`})})})]}),(0,l.jsxs)(`div`,{className:`ssg-header-actions`,children:[ne&&!x&&(0,l.jsx)(`span`,{onPointerDown:e=>ne(a,e),"data-ssg-tooltip":`ドラッグで列を移動`,"aria-hidden":`true`,className:`ssg-header-grip`,children:(0,l.jsxs)(`svg`,{width:`8`,height:`14`,viewBox:`0 0 8 14`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:[(0,l.jsx)(`circle`,{cx:`2`,cy:`3`,r:`1`}),(0,l.jsx)(`circle`,{cx:`6`,cy:`3`,r:`1`}),(0,l.jsx)(`circle`,{cx:`2`,cy:`7`,r:`1`}),(0,l.jsx)(`circle`,{cx:`6`,cy:`7`,r:`1`}),(0,l.jsx)(`circle`,{cx:`2`,cy:`11`,r:`1`}),(0,l.jsx)(`circle`,{cx:`6`,cy:`11`,r:`1`})]})}),N&&(0,l.jsx)(Ut,{title:`列メニュー`,isActive:b,className:o?.iconButton?.className,style:o?.iconButton?.style,onPointerDown:e=>A(a,e),onClick:e=>j(a,e),children:`⋮`})]}),(a.resizable??D)&&(0,l.jsx)(`div`,{onPointerDown:e=>E(a,e),className:`ssg-header-resize`})]},a.key)})]})}var Gt=(0,e.memo)(Wt),Kt=t=>{let n=z(()=>(0,me.createColumnMenuController)(),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}},qt=[{value:void 0,label:`固定しない`},{value:`left`,label:`左に固定`},{value:`right`,label:`右に固定`}],Jt=180,Yt=4,Xt=8,H=`pin`;function Zt({isOpen:n,themeClassName:i,slots:a,title:o,columnKey:s,canFilter:c,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)},[s,n]),!n||!y)return null;let A=O===H,j=y.left+y.width+Yt+Jt>window.innerWidth-Xt,ee={position:`fixed`,top:y.top,left:y.left,width:y.width,zIndex:1e3,...y.maxHeight===void 0?{}:{maxHeight:y.maxHeight,overflowY:`auto`}},M={position:`absolute`,top:-9,...j?{right:`calc(100% + ${Yt}px)`}:{left:`calc(100% + ${Yt}px)`},width:Jt,zIndex:1};return(0,r.createPortal)((0,l.jsxs)(`div`,{ref:b,onPointerDown:e=>{e.stopPropagation()},onKeyDown:e=>{e.stopPropagation()},onContextMenu:e=>{e.preventDefault()},className:(0,t.cx)(`ssg-menu-panel`,i,a?.popover?.className),style:{...a?.popover?.style,...ee},children:[(0,l.jsx)(`div`,{className:`ssg-menu-title`,children:o}),c&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{u()},className:(0,t.cx)(`ssg-menu-item`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,l.jsx)(`span`,{className:`ssg-menu-icon`}),(0,l.jsx)(`span`,{className:`ssg-menu-label`,children:`フィルター…`})]}),(0,l.jsx)(`div`,{className:`ssg-menu-separator`})]}),d&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{p(`asc`)},className:(0,t.cx)(`ssg-menu-item`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,l.jsx)(`span`,{className:(0,t.cx)(`ssg-menu-sort-icon`,f===`asc`&&`ssg-menu-sort-icon--active`),children:f===`asc`?`✓`:`↑`}),(0,l.jsx)(`span`,{className:(0,t.cx)(`ssg-menu-label`,f===`asc`&&`ssg-menu-label--sorted`),children:`昇順で並び替え`})]}),(0,l.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{p(`desc`)},className:(0,t.cx)(`ssg-menu-item`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,l.jsx)(`span`,{className:(0,t.cx)(`ssg-menu-sort-icon`,f===`desc`&&`ssg-menu-sort-icon--active`),children:f===`desc`?`✓`:`↓`}),(0,l.jsx)(`span`,{className:(0,t.cx)(`ssg-menu-label`,f===`desc`&&`ssg-menu-label--sorted`),children:`降順で並び替え`})]}),(0,l.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{m()},className:(0,t.cx)(`ssg-menu-item`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,l.jsx)(`span`,{className:`ssg-menu-icon`}),(0,l.jsx)(`span`,{className:`ssg-menu-label`,children:`並び替えを管理…`})]})]}),h&&(0,l.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{g()},className:(0,t.cx)(`ssg-menu-item`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,l.jsx)(`span`,{className:`ssg-menu-icon`}),(0,l.jsx)(`span`,{className:`ssg-menu-label`,children:`フィルターを管理…`})]}),(d||h)&&(0,l.jsx)(`div`,{className:`ssg-menu-separator`}),(0,l.jsxs)(`div`,{className:`ssg-menu-submenu-anchor`,children:[(0,l.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(H)},onClick:()=>{k(e=>e===H?null:H)},className:(0,t.cx)(`ssg-menu-item`,A&&`ssg-menu-item--active`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,l.jsx)(`span`,{className:`ssg-menu-icon`}),(0,l.jsx)(`span`,{className:`ssg-menu-label`,children:`列の固定`}),(0,l.jsx)(`span`,{className:`ssg-menu-caret`,children:`›`})]}),A&&(0,l.jsxs)(`div`,{className:(0,t.cx)(`ssg-menu-panel`,i,a?.popover?.className),style:{...a?.popover?.style,...M},children:[qt.map(e=>{let n=_===e.value;return(0,l.jsxs)(`button`,{type:`button`,disabled:!v,onClick:()=>{v&&x(s,e.value)},className:(0,t.cx)(`ssg-menu-item`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,l.jsx)(`span`,{className:(0,t.cx)(`ssg-menu-check`,!n&&`ssg-menu-check--hidden`),children:`✓`}),(0,l.jsx)(`span`,{className:`ssg-menu-label`,children:e.label})]},e.label)}),!v&&(0,l.jsx)(`div`,{className:`ssg-menu-note`,children:`onColumnsChange 未指定のため固定状態を変更できません`})]})]}),(0,l.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{S(s)},className:(0,t.cx)(`ssg-menu-item`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,l.jsx)(`span`,{className:`ssg-menu-icon`}),(0,l.jsx)(`span`,{className:`ssg-menu-label`,children:`この列の幅を自動調整`})]}),(0,l.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{C()},className:(0,t.cx)(`ssg-menu-item`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,l.jsx)(`span`,{className:`ssg-menu-icon`}),(0,l.jsx)(`span`,{className:`ssg-menu-label`,children:`すべての列の幅を自動調整`})]}),(0,l.jsxs)(`button`,{type:`button`,onPointerEnter:()=>{k(null)},onClick:()=>{w()},className:(0,t.cx)(`ssg-menu-item`,a?.menuItem?.className),style:a?.menuItem?.style,children:[(0,l.jsx)(`span`,{className:`ssg-menu-icon`}),(0,l.jsx)(`span`,{className:`ssg-menu-label`,children:`列の表示`})]}),(0,l.jsxs)(`button`,{type:`button`,"aria-disabled":!T,tabIndex:T?0:-1,"data-ssg-tooltip":T?`すべての列の幅・固定・表示・並び順を初期状態に戻します`:`onColumnsChange 未指定のため列をリセットできません`,onPointerEnter:()=>{k(null)},onClick:()=>{T&&E()},className:(0,t.cx)(`ssg-menu-item`,!T&&`ssg-menu-item--disabled`),children:[(0,l.jsx)(`span`,{className:`ssg-menu-icon`}),(0,l.jsx)(`span`,{className:`ssg-menu-label`,children:`列のリセット`})]}),(0,l.jsx)(`div`,{className:`ssg-menu-footer`,children:(0,l.jsx)(`button`,{type:`button`,onClick:D,className:`ssg-menu-close-btn`,children:`閉じる`})})]}),document.body)}var Qt=t=>{let n=z(he.createToolPanelController,t),r=(0,e.useSyncExternalStore)(n.subscribe,n.getSnapshot,n.getSnapshot),{canUseFilterTab:i,canUseColumnsTab:a,canUseSortTab:o}=t,s=(0,e.useMemo)(()=>(0,he.resolveAvailableToolPanelTabs)({canUseFilterTab:i,canUseColumnsTab:a,canUseSortTab:o}),[i,a,o]);return{activeToolPanelTab:(0,he.resolveActiveToolPanelTab)(r.requestedTab,s),availableToolPanelTabs:s,toolPanelLayout:r.layout,toolPanelFlashTick:r.flashTick,toolPanelRef:n.panelRef,openToolPanel:n.open,closeToolPanel:n.close,moveToolPanel:n.move}},$t=({layout:t,onPanelMove:n})=>{let[r]=(0,e.useState)(ge.createPanelHeaderDragController);return(0,e.useEffect)(()=>()=>{r.dispose()},[r]),{handleHeaderPointerDown:(0,e.useCallback)(e=>{r.startFromPointerDown(e,{layout:t,onMove:n})},[r,t,n])}};function en({themeClassName:n,popoverSlot:i,activeTab:a,flashTick:o,tabs:s,layout:c,panelRef:u,onSelectTab:d,onRequestClose:f,onPanelMove:p,children:m}){let{handleHeaderPointerDown:h}=$t({layout:c,onPanelMove:p});if((0,e.useEffect)(()=>{let e=u.current;if(!e||o===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)}},[o,u]),a===null||!c)return null;let g=Math.max(0,s.findIndex(e=>e.tab===a)),_={top:c.top,left:c.left,width:c.width},v=e=>{e.stopPropagation()},y=e=>{e.stopPropagation()},b={"--ssg-seg-count":s.length,"--ssg-seg-index":g};return(0,r.createPortal)((0,l.jsxs)(`div`,{ref:u,onPointerDown:v,onKeyDown:y,onContextMenu:e=>{e.preventDefault()},className:(0,t.cx)(`ssg-popover`,`ssg-toolpanel`,n,i?.className),style:{...i?.style,..._},children:[(0,l.jsxs)(`div`,{className:`ssg-toolpanel-header ssg-popover-header--draggable`,onPointerDown:h,children:[(0,l.jsxs)(`div`,{className:`ssg-toolpanel-seg`,role:`tablist`,style:b,children:[(0,l.jsx)(`span`,{className:`ssg-toolpanel-seg-indicator`,"aria-hidden":!0}),s.map(e=>{let n=e.tab===a;return(0,l.jsxs)(`button`,{type:`button`,role:`tab`,"aria-selected":n,onClick:()=>{n||d(e.tab)},className:(0,t.cx)(`ssg-toolpanel-seg-btn`,n&&`ssg-toolpanel-seg-btn--active`),children:[e.label,e.badge?(0,l.jsx)(`span`,{className:`ssg-toolpanel-seg-badge`,children:e.badge}):null]},e.tab)})]}),(0,l.jsx)(`button`,{type:`button`,onClick:f,"aria-label":`閉じる`,className:`ssg-popover-close`,children:`×`})]}),(0,l.jsx)(`div`,{className:`ssg-toolpanel-body`,children:m})]}),document.body)}var tn=28,nn=12,rn=[`left`,`center`,`right`],an={left:`左固定`,center:`固定なし`,right:`右固定`};function U(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 on({state:e,disabled:n}){return(0,l.jsxs)(`span`,{className:(0,t.cx)(`ssg-checkbox`,(e===`checked`||e===`indeterminate`)&&`ssg-checkbox--filled`,n&&`ssg-checkbox--disabled`),"aria-hidden":!0,children:[e===`checked`&&(0,l.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 12 12`,fill:`none`,children:(0,l.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,l.jsx)(`span`,{className:`ssg-checkbox-dash`})]})}function sn({disabled:e}){return(0,l.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,l.jsx)(`circle`,{cx:t,cy:e,r:`1.2`},`${t}-${e}`)))})}function cn({items:n,canToggle:r,onToggleColumnVisibility:i,onShowAllColumns:a,onHideAllColumns:o,onResetColumns:s,onReorderColumns:c}){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)(()=>n.filter(e=>e.visible).length,[n]),m=p===n.length&&n.length>0,h=m?`checked`:`indeterminate`,g=m?`すべての列を非表示(先頭の列は残ります)`:`すべての列を表示`,_=(0,e.useMemo)(()=>{let e=u.trim().toLowerCase();return e?n.filter(t=>t.title.toLowerCase().includes(e)):n},[n,u]),v=(0,e.useMemo)(()=>{let e={left:[],center:[],right:[]};for(let t of _)e[t.pane].push(t);return rn.map(t=>({pane:t,items:e[t]})).filter(e=>e.items.length>0)},[_]),y=v.length>=2,b=r&&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+tn?i=-12:r>n.bottom-tn&&(i=nn),i!==0){let e=t.scrollTop;t.scrollTop+=i,t.scrollTop!==e&&A()}k.current=requestAnimationFrame(e)},[A]),ee=(0,e.useCallback)(e=>{k.current!==null&&(cancelAnimationFrame(k.current),k.current=null);let t=S,r=E;if(w.current=!1,T.current=null,C(null),D(null),e&&t!==null&&r!==null){let e=U(n,t,r);e&&c(e)}},[S,E,n,c]),M=(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]),te=(0,e.useCallback)(e=>{w.current&&(O.current=e.clientY,A())},[A]),ne=(0,e.useCallback)(()=>{w.current&&ee(!0)},[ee]),N=(0,e.useCallback)(()=>{w.current&&ee(!1)},[ee]);(0,e.useEffect)(()=>()=>{k.current!==null&&(cancelAnimationFrame(k.current),k.current=null)},[]);let re=()=>{r&&(m?o():a())},P=S===null?null:n.find(e=>e.key===S)?.pane??null,F=(e,n,a)=>{let o=e.visible&&p===1,s=!r||o,c=S===e.key;return(0,l.jsxs)(`div`,{"data-chooser-row":``,"data-chooser-pane":a,className:(0,t.cx)(`ssg-chooser-row`,S!==null&&P===a&&E===n&&`ssg-chooser-row--drop-before`,c&&`ssg-chooser-row--dragging`),children:[(0,l.jsx)(`span`,{role:`button`,"aria-label":`ドラッグして並べ替え`,"data-ssg-tooltip":r?u.trim()===``?`ドラッグして並べ替え(同じセクション内のみ)`:`検索中は並べ替えできません`:`onColumnsChange 未指定のため並べ替えできません`,onPointerDown:t=>M(e.key,a,t),onPointerMove:te,onPointerUp:ne,onPointerCancel:N,className:(0,t.cx)(`ssg-chooser-handle`,!b&&`ssg-chooser-handle--disabled`,c&&`ssg-chooser-handle--dragging`),children:(0,l.jsx)(sn,{disabled:!b})}),(0,l.jsxs)(`button`,{type:`button`,disabled:s,onClick:()=>{s||i(e.key,!e.visible)},className:`ssg-chooser-toggle`,children:[(0,l.jsx)(on,{state:e.visible?`checked`:`unchecked`,disabled:s}),(0,l.jsx)(`span`,{className:(0,t.cx)(`ssg-chooser-label`,s&&!e.visible&&`ssg-chooser-label--muted`),children:e.title})]})]},e.key)};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`ssg-chooser-search-row`,children:[(0,l.jsx)(`button`,{type:`button`,disabled:!r,onClick:re,"aria-label":g,"data-ssg-tooltip":g,className:`ssg-chooser-master-btn`,children:(0,l.jsx)(on,{state:h,disabled:!r})}),(0,l.jsxs)(`div`,{className:`ssg-chooser-search-field`,children:[(0,l.jsx)(`span`,{"aria-hidden":!0,className:`ssg-chooser-search-icon`,children:`⌕`}),(0,l.jsx)(`input`,{ref:f,type:`text`,value:u,onChange:e=>d(e.target.value),placeholder:`検索...`,className:`ssg-chooser-search-input`})]})]}),(0,l.jsx)(`div`,{ref:x,className:`ssg-chooser-list`,children:_.length===0?(0,l.jsx)(`div`,{className:`ssg-chooser-empty`,children:`該当する列がありません`}):v.map(e=>(0,l.jsxs)(`div`,{"data-chooser-section":e.pane,children:[y&&(0,l.jsx)(`div`,{className:`ssg-chooser-section-heading`,children:an[e.pane]}),e.items.map((t,n)=>F(t,n,e.pane)),S!==null&&P===e.pane&&E===e.items.length&&(0,l.jsx)(`div`,{className:`ssg-chooser-drop-end`})]},e.pane))}),(0,l.jsxs)(`div`,{className:`ssg-chooser-footer`,children:[(0,l.jsx)(`button`,{type:`button`,disabled:!r,onClick:()=>{r&&s()},"data-ssg-tooltip":`すべての列の幅・固定・表示・並び順を初期状態に戻します`,className:`ssg-chooser-reset-btn`,children:`すべての列を初期状態に戻す`}),!r&&(0,l.jsx)(`div`,{className:`ssg-chooser-note`,children:`onColumnsChange 未指定のため表示/非表示・リセットを変更できません`})]})]})}function ln({disabled:e}){return(0,l.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,l.jsx)(`circle`,{cx:t,cy:e,r:`1.2`},`${t}-${e}`)))})}function un({entries:n,columns:r,canSort:i,onAddLevel:a,onChangeDirection:o,onChangeColumn:s,onRemoveLevel:c,onClearAll:u,onMove:d}){let f=(0,e.useMemo)(()=>new Set(n.map(e=>e.columnKey)),[n]),p=(0,e.useMemo)(()=>r.find(e=>!f.has(e.key))??null,[r,f]),m=e=>r.find(t=>t.key===e)?.title??e,h=i&&n.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=i&&p!==null;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{ref:g,className:`ssg-sort-list`,children:[n.length===0?(0,l.jsx)(`div`,{className:`ssg-sort-empty`,children:`並び替えは設定されていません`}):n.map((e,a)=>{let u=r.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=_===a;return(0,l.jsxs)(`div`,{"data-sort-level":``,className:(0,t.cx)(`ssg-sort-level`,_!==null&&b===a&&`ssg-sort-level--drop-before`,p&&`ssg-sort-level--dragging`),children:[(0,l.jsx)(`span`,{role:`button`,"aria-label":`ドラッグして優先順位を変更`,"data-ssg-tooltip":i?n.length<2?`レベルが 2 件以上のとき並べ替えできます`:`ドラッグして優先順位を変更`:`並び替えが無効です`,onPointerDown:e=>T(a,e),onPointerMove:E,onPointerUp:D,onPointerCancel:O,className:(0,t.cx)(`ssg-sort-handle`,!h&&`ssg-sort-handle--disabled`,p&&`ssg-sort-handle--dragging`),children:(0,l.jsx)(ln,{disabled:!h})}),(0,l.jsx)(`span`,{"aria-hidden":!0,className:`ssg-sort-badge`,children:a+1}),(0,l.jsx)(`select`,{value:e.columnKey,disabled:!i,onChange:e=>s(a,e.target.value),className:`ssg-sort-select`,children:d.map(e=>(0,l.jsx)(`option`,{value:e.key,children:e.title},e.key))}),(0,l.jsxs)(`div`,{className:`ssg-sort-dir-group`,children:[(0,l.jsx)(`button`,{type:`button`,disabled:!i,onClick:()=>o(a,`asc`),"data-ssg-tooltip":`昇順`,className:(0,t.cx)(`ssg-sort-dir-btn`,e.direction===`asc`&&`ssg-sort-dir-btn--active`),children:`↑ 昇順`}),(0,l.jsx)(`button`,{type:`button`,disabled:!i,onClick:()=>o(a,`desc`),"data-ssg-tooltip":`降順`,className:(0,t.cx)(`ssg-sort-dir-btn`,e.direction===`desc`&&`ssg-sort-dir-btn--active`),children:`↓ 降順`})]}),(0,l.jsx)(`button`,{type:`button`,disabled:!i,onClick:()=>c(a),"aria-label":`このレベルを削除`,"data-ssg-tooltip":`このレベルを削除`,className:`ssg-sort-delete`,children:`×`})]},e.columnKey)}),_!==null&&b===n.length&&(0,l.jsx)(`div`,{className:`ssg-sort-drop-end`})]}),(0,l.jsxs)(`div`,{className:`ssg-popover-footer`,children:[(0,l.jsx)(`button`,{type:`button`,disabled:!k,onClick:()=>{!k||!p||a(p.key,`asc`)},"data-ssg-tooltip":i?p===null?`すべての列が並び替えに使われています`:`並び替えの基準を追加します`:`並び替えが無効です`,className:`ssg-sort-footer-btn ssg-sort-footer-btn--add`,children:`+ 基準を追加`}),(0,l.jsx)(`button`,{type:`button`,disabled:!i||n.length===0,onClick:()=>{!i||n.length===0||u()},"data-ssg-tooltip":`すべての並び替えを解除します`,className:`ssg-sort-footer-btn ssg-sort-footer-btn--clear`,children:`すべてクリア`})]}),!i&&(0,l.jsx)(`div`,{className:`ssg-sort-note`,children:`並び替えが無効のため編集できません`})]})}function dn(){return(0,l.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 16 16`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:(0,l.jsx)(`path`,{d:`M2 4 L14 4 L9.2 9.2 L9.2 13 L6.8 13 L6.8 9.2 Z`})})}function fn(){return(0,l.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,l.jsx)(`circle`,{cx:`11`,cy:`11`,r:`7`}),(0,l.jsx)(`path`,{d:`m20 20-3.5-3.5`})]})}function pn({entries:e,addableColumns:t,showGlobalFilterRow:n,globalFilterText:r,canFilter:i,onEditFilter:a,onAddFilter:o,onClearFilter:s,onClearAllFilters:c,onClearGlobalFilter:u}){let d=i&&e.length>0,f=i&&t.length>0;return(0,l.jsxs)(l.Fragment,{children:[n&&(0,l.jsxs)(`div`,{className:`ssg-filter-manage-row ssg-filter-manage-row--global`,children:[(0,l.jsx)(`span`,{className:`ssg-filter-manage-glyph ssg-filter-manage-glyph--global`,"aria-hidden":`true`,children:(0,l.jsx)(fn,{})}),(0,l.jsxs)(`span`,{className:`ssg-filter-manage-main`,children:[(0,l.jsx)(`span`,{className:`ssg-filter-manage-name`,children:`グローバルフィルター`}),(0,l.jsxs)(`span`,{className:`ssg-filter-manage-summary`,"data-ssg-tooltip":r,children:[`"`,r,`" を含む行`]})]}),(0,l.jsx)(`span`,{className:`ssg-filter-manage-actions`,children:(0,l.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-icon-btn ssg-filter-manage-icon-btn--danger`,disabled:!i,"data-ssg-tooltip":`グローバルフィルターをクリア`,"aria-label":`グローバルフィルターをクリア`,onClick:u,children:`×`})})]}),(0,l.jsx)(`div`,{className:`ssg-filter-manage-list`,children:e.length===0?(0,l.jsx)(`div`,{className:`ssg-filter-manage-empty`,children:`適用中の列フィルターはありません`}):e.map(e=>(0,l.jsxs)(`div`,{className:`ssg-filter-manage-row`,children:[(0,l.jsx)(`span`,{className:`ssg-filter-manage-glyph`,"aria-hidden":`true`,children:(0,l.jsx)(dn,{})}),(0,l.jsxs)(`span`,{className:`ssg-filter-manage-main`,children:[(0,l.jsxs)(`span`,{className:`ssg-filter-manage-name`,children:[e.title,e.isHidden&&(0,l.jsx)(`span`,{className:`ssg-filter-manage-hidden-note`,children:`(非表示列)`})]}),(0,l.jsx)(`span`,{className:`ssg-filter-manage-summary`,"data-ssg-tooltip":e.summaryText,children:e.summaryText})]}),(0,l.jsxs)(`span`,{className:`ssg-filter-manage-actions`,children:[(0,l.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-icon-btn`,disabled:!i||e.isHidden,"data-ssg-tooltip":e.isHidden?`非表示列のためジャンプ編集できません(× でクリアは可能)`:`この列へジャンプして編集`,"aria-label":`${e.title} のフィルターを編集`,onClick:()=>{a(e.columnKey)},children:`✎`}),(0,l.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-icon-btn ssg-filter-manage-icon-btn--danger`,disabled:!i,"data-ssg-tooltip":`この列のフィルターをクリア`,"aria-label":`${e.title} のフィルターをクリア`,onClick:()=>{s(e.columnKey)},children:`×`})]})]},e.columnKey))}),(0,l.jsxs)(`div`,{className:`ssg-popover-footer`,children:[(0,l.jsxs)(`select`,{className:`ssg-filter-manage-add`,value:``,disabled:!f,"aria-label":`フィルターを追加する列を選択`,onChange:e=>{let t=e.target.value;t&&o(t)},children:[(0,l.jsx)(`option`,{value:``,children:f?`+ フィルターを追加…`:`+ 追加できる列がありません`}),t.map(e=>(0,l.jsx)(`option`,{value:e.key,children:e.title},e.key))]}),(0,l.jsx)(`button`,{type:`button`,className:`ssg-filter-manage-clear-all`,disabled:!d,onClick:c,children:`すべてクリア`})]})]})}function mn({entries:e,canFilter:n,onEditFilter:r,onClearFilter:i,onClearAllFilters:a,slot:o}){return e.length===0?null:(0,l.jsxs)(`div`,{className:(0,t.cx)(`ssg-filter-chip-bar`,o?.className),style:o?.style,children:[e.map(e=>(0,l.jsxs)(`div`,{className:e.isHidden?`ssg-filter-chip ssg-filter-chip--hidden`:`ssg-filter-chip`,children:[(0,l.jsxs)(`button`,{type:`button`,className:`ssg-filter-chip-label`,disabled:!n||e.isHidden,"data-ssg-tooltip":e.isHidden?`非表示列のためジャンプ編集できません(× でクリアは可能)`:`この列へジャンプして編集`,"aria-label":`${e.title} のフィルターを編集`,onClick:()=>{r(e.columnKey)},children:[(0,l.jsxs)(`span`,{className:`ssg-filter-chip-name`,children:[e.title,e.isHidden?`(非表示列)`:``]}),(0,l.jsx)(`span`,{className:`ssg-filter-chip-summary`,children:e.summaryText})]}),(0,l.jsx)(`button`,{type:`button`,className:`ssg-filter-chip-clear`,disabled:!n,"data-ssg-tooltip":`この列のフィルターをクリア`,"aria-label":`${e.title} のフィルターをクリア`,onClick:()=>{i(e.columnKey)},children:`×`})]},e.columnKey)),(0,l.jsx)(`button`,{type:`button`,className:`ssg-filter-chip-bar-clear-all`,disabled:!n,onClick:a,children:`すべてクリア`})]})}var W=1e3,G=8,hn=18,K=28;function gn({options:n,scrollContainerRef:r,scrollTop:i,viewportHeight:a,headerHeight:o,physicalBodyHeight:s,verticalScaleFactor:c,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=n.scrollbar?o:0,D=Math.max(n.scrollbar?a-o:a,0),O=(0,_e.computeScrollHintTrack)({scrollTop:i,contentHeight:o+s,viewportHeight:a,trackHeight:D}),k=O!==null&&u.rowCount>0;(0,e.useEffect)(()=>{let e=r.current;if(!e)return;let t=()=>{m(!0),C.current!==null&&window.clearTimeout(C.current),C.current=window.setTimeout(()=>{C.current=null,m(!1)},W)},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)-hn;b(r>=i?t.clientY-n.top:null)},s=new ResizeObserver(()=>{v(Math.max(e.offsetWidth-e.clientWidth,0))});return e.addEventListener(`scroll`,t,{passive:!0}),e.addEventListener(`pointerenter`,i),e.addEventListener(`pointerleave`,a),n.scrollbar||e.addEventListener(`pointermove`,o,{passive:!0}),s.observe(e),()=>{e.removeEventListener(`scroll`,t),e.removeEventListener(`pointerenter`,i),e.removeEventListener(`pointerleave`,a),e.removeEventListener(`pointermove`,o),s.disconnect(),C.current!==null&&(window.clearTimeout(C.current),C.current=null)}},[r,n.scrollbar]),(0,e.useEffect)(()=>{if(!n.scrollbar||!k)return;let e=T.current,t=r.current;if(!e||!t)return;let i=e=>{e.preventDefault(),t.scrollTop+=e.deltaY};return e.addEventListener(`wheel`,i,{passive:!1}),()=>{e.removeEventListener(`wheel`,i)}},[r,n.scrollbar,k]);let A=Math.max(a-o,0),j=(0,e.useMemo)(()=>n.ruler?(0,_e.computeScrollHintRulerTicks)({rowCount:u.rowCount,rulerHeight:A}):[],[n.ruler,u.rowCount,A]);if(O===null||u.rowCount<=0)return null;let M=n.trigger===`always`||p||n.trigger===`hover`&&h,te=M||y!==null,ne=n.scrollbar?14:_,N=(0,ee.physicalToLogicalScrollTop)(Math.min(Math.max(i,0),O.maxScroll),c),re=u.rowAtContentY(N),P=(0,_e.resolveScrollHintDetail)(n,{rowIndex:re,rowData:d.getRow(re)}),F=null;if(n.ruler&&y!==null&&!x){let e=(0,_e.computeScrollHintTrackPointerScrollTop)(y,O,D),t=u.rowAtContentY((0,ee.physicalToLogicalScrollTop)(e,c));F={lineY:Math.min(Math.max(E+y,o),a),rowIndex:t,detail:(0,_e.resolveScrollHintDetail)(n,{rowIndex:t,rowData:d.getRow(t)})}}let ie=e=>{let t=T.current;return t===null?0:e.clientY-t.getBoundingClientRect().top},I=(e,t)=>{let n=r.current;if(n===null)return;let i=D-O.thumbHeight;i<=0||(n.scrollTop=Math.min(Math.max((e-t)/i,0),1)*O.maxScroll)};return(0,l.jsxs)(`div`,{className:(0,t.cx)(`ssg-scroll-hint`,f?.className),style:f?.style,"aria-hidden":`true`,children:[n.ruler&&j.length>0&&(0,l.jsx)(`div`,{className:(0,t.cx)(`ssg-scroll-hint-ruler`,te&&`ssg-scroll-hint-ruler--visible`),style:{top:o,right:ne},children:j.map(e=>(0,l.jsx)(`div`,{className:`ssg-scroll-hint-ruler-tick`,style:{top:Math.min(Math.max(e.y,6),Math.max(A-6,6))},children:(0,l.jsx)(`span`,{className:`ssg-scroll-hint-ruler-label`,children:e.label})},e.row))}),F!==null&&(0,l.jsx)(`div`,{className:`ssg-scroll-hint-jumpline`,style:{top:F.lineY,right:ne},children:(0,l.jsxs)(`span`,{className:(0,t.cx)(`ssg-scroll-hint-jumpline-label`,F.lineY<o+K&&`ssg-scroll-hint-jumpline-label--below`),children:[`行 `,(F.rowIndex+1).toLocaleString(),` へ`,F.detail!==null&&(0,l.jsxs)(`span`,{className:`ssg-scroll-hint-jumpline-detail`,children:[` `,`・ `,F.detail]})]})}),n.bubble&&(0,l.jsxs)(`div`,{className:(0,t.cx)(`ssg-scroll-hint-bubble`,M&&`ssg-scroll-hint-bubble--visible`),style:{top:E+O.centerY,right:ne+G},children:[(0,l.jsxs)(`span`,{className:`ssg-scroll-hint-bubble-main`,children:[`行 `,(re+1).toLocaleString(),(0,l.jsxs)(`span`,{className:`ssg-scroll-hint-bubble-total`,children:[` `,`/ `,u.rowCount.toLocaleString()]})]}),P!==null&&(0,l.jsx)(`span`,{className:`ssg-scroll-hint-bubble-detail`,children:P})]}),n.scrollbar&&(0,l.jsx)(`div`,{ref:T,className:(0,t.cx)(`ssg-scroll-hint-scrollbar`,x&&`ssg-scroll-hint-scrollbar--dragging`),style:{top:o,height:D,width:14},onPointerDown:e=>{e.preventDefault();let t=ie(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),I(t,n)},onPointerMove:e=>{let t=ie(e);if(w.current!==null){I(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,l.jsx)(`div`,{className:`ssg-scroll-hint-scrollbar-thumb`,style:{top:O.thumbTop,height:O.thumbHeight}})})]})}var _n=({gridRootRef:t})=>{let n=z(()=>(0,ye.createContextMenuController)(),{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 vn({isOpen:e,themeClassName:n,slots:i,items:a,layout:o,popoverRef:s,onRequestClose:c}){if(!e||!o)return null;let u={position:`fixed`,top:o.top,left:o.left,width:o.width,zIndex:1e3};return(0,r.createPortal)((0,l.jsx)(`div`,{ref:s,role:`menu`,onPointerDown:e=>{e.stopPropagation()},onKeyDown:e=>{e.stopPropagation()},onContextMenu:e=>{e.preventDefault()},className:(0,t.cx)(`ssg-menu-panel`,n,i?.popover?.className),style:{...i?.popover?.style,...u},children:a.map((e,n)=>e.kind===`separator`?(0,l.jsx)(`div`,{className:`ssg-menu-separator`},e.id??`sep-${n}`):e.kind===`label`?(0,l.jsx)(`div`,{className:`ssg-menu-section-label`,role:`presentation`,children:e.label},e.id??`label-${n}`):e.kind===`custom`?(0,l.jsx)(`div`,{role:`none`,children:e.render({close:c})},e.id??`custom-${n}`):(0,l.jsxs)(`button`,{type:`button`,role:`menuitem`,disabled:e.disabled,onClick:()=>{e.onSelect(),c()},className:(0,t.cx)(`ssg-menu-item`,e.danger&&`ssg-menu-item--danger`,e.disabled&&`ssg-menu-item--disabled`,i?.menuItem?.className),style:i?.menuItem?.style,children:[(0,l.jsx)(`span`,{className:`ssg-menu-icon`,children:e.icon}),(0,l.jsx)(`span`,{className:`ssg-menu-label`,children:e.label})]},e.id??`action-${n}`))}),document.body)}var yn=[],bn={compact:{rowHeight:28,headerHeight:32},standard:{rowHeight:36,headerHeight:40},comfortable:{rowHeight:44,headerHeight:48}},xn=[],Sn=e=>{let t=e.detail;return!t||!t.expandable?null:(0,l.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?`▾`:`▸`})};function Cn({rows:r=yn,dataSource:i,serverSideRefreshToken:s,onServerSideLoadError:u,onServerSideWriteError:f,columns:p,onRowsChange:m,onColumnsChange:g,rowKeyGetter:_,isRowExportable:v,createRow:y,createOverflowColumn:b,rowHeight:x,autoHeight:S=!1,estimateRowHeight:C,headerHeight:w,density:T=`standard`,theme:re=`light`,rowHeaderWidth:P=56,height:F,maxHeight:ie,readOnly:L=!1,dimReadOnlyCells:se=!1,canEditCell:ce,enableUndoRedo:le=!0,enableClearOnDelete:ue=!0,editorEnterMove:R=`down`,undoHistoryLimit:de=100,onUndoRedoStateChange:fe,enableRangeSelection:pe=!0,enableRowSelection:me=!1,rowSelectionMode:he=`multiple`,enableSelectAllRows:ge,rowSelection:ye,selectedRowKeys:be,onRowSelectionChange:Ce,enableGlobalFilter:Te=!0,enableColumnFilter:z=!0,renderFilterDateInput:je,enableSorting:Me=!0,enableColumnResize:Ne=!0,autoSizeColumns:Pe=!1,showCellOverflowTooltip:Fe=!1,showValidationMarks:Ie=!0,enableRowHover:Le=!0,enableColumnHeaderHover:Re=!0,hoveredRowIndex:Ue,onHoveredRowChange:We,enableColumnMenu:Ge=!0,noMatchingRowsText:Ke=`一致する行がありません`,noRowsText:qe=`表示する行がありません`,showTopBar:Je=!0,showBottomBar:Ye=!0,showTopBarSummary:Xe=!0,showTopBarFilter:Ze=!0,globalFilterPlaceholder:Qe,globalFilterIcon:$e,showTopBarCounts:et=!0,showBottomBarCounts:ht=!0,showFilterChipBar:gt=!1,renderTopBar:vt,renderBottomBar:yt,className:bt,style:xt,classNames:St,getRowClassName:Ct,detailRow:wt,onExpandedDetailRowKeysChange:Tt,enableRowDrag:Ot=!1,isRowDraggable:kt,onRowMove:jt,enableContextMenu:Mt=!1,getContextMenuItems:Nt,onContextMenuOpen:Pt,scrollHint:Ft,ref:It,onStateChange:Lt,onScroll:Rt}){let B=r,zt=p,Vt=x??bn[T].rowHeight,V=w??bn[T].headerHeight,Ut=(0,e.useMemo)(()=>(0,_e.resolveScrollHintOptions)(Ft),[Ft]),Wt=(0,e.useRef)(null),qt=(0,e.useRef)(null),Jt=(0,e.useRef)(null),Yt=(0,e.useRef)(null),Xt=(0,e.useRef)(!1),H=(0,e.useRef)(null),$t=(0,e.useRef)(null),tn=(0,e.useRef)(null),[nn,rn]=(0,e.useState)(``),an=wt!=null&&wt.showToggleColumn!==!1,[U]=(0,e.useState)(()=>(0,a.createGridEngine)({columnInputs:{columns:zt,isServerSide:i!=null,enableRowDrag:Ot,hasRowsChange:m!=null,detailToggleColumnActive:an,renderDetailToggleCell:Sn},serverSide:{isServerSide:i!=null,enableGlobalFilter:Te,enableColumnFilter:z,enableSorting:Me}})),{resolveColumns:on}=U,{groupColumns:sn,aggColumns:ln,rowGroupingActive:dn,rowDragAvailable:fn,visibleColumns:W,orderedColumns:G}=(0,e.useMemo)(()=>on({columns:zt,isServerSide:i!=null,enableRowDrag:Ot,hasRowsChange:m!=null,detailToggleColumnActive:an,renderDetailToggleCell:Sn}),[on,zt,i,Ot,m,an]),hn=(0,e.useMemo)(()=>_??((e,t)=>t),[_]),K=i!=null,Cn=Me,wn=z,Tn=Te,En=U.store,[q,J]=De(En),[{scrollTop:Dn,viewportWidth:On,viewportHeight:kn,hoveredRowIndex:An,hoveredColumnIndex:jn,isCornerHovered:Mn},{setScrollTop:Nn,setHoveredRowIndex:Pn,setHoveredColumnIndex:Fn,setIsCornerHovered:In}]=Oe(En),Ln=Ue!==void 0;Ee(U.hoverRowNotifier,{enableRowHover:Le,isHoverControlled:Ln,onHoveredRowChange:We,setHoveredRowIndex:Pn});let Rn=U.hoverRowNotifier.applyHoveredRowChange,zn=Le?Ue===void 0?An:Ue:null;Ee(U.detailKeysNotifier,{expandedKeys:q.expandedDetailRowKeys,onChange:Tt},`passive`);let Bn=wt!=null,Vn=U.detailIndexCache,Hn=(0,e.useCallback)((e,t)=>{(0,M.seedDetailIndexCache)(Vn.current,e,t),J(o.gridActions.toggleDetailRow(e))},[J,Vn]),Un=(0,e.useCallback)((e,t,n)=>{(0,M.seedDetailIndexCache)(Vn.current,e,t),J(o.gridActions.setDetailRowExpanded(e,n))},[J,Vn]),Wn=(0,e.useMemo)(()=>(0,c.buildSelectionSnapshot)(q.selection),[q.selection]),{resolvePaneLayout:Gn}=U,{effectiveColumnWidths:Kn,paneLayout:Y,hasLeftPane:qn,hasRightPane:Jn,centerOwnsRowHeader:Yn,leftLeadingWidth:Xn,centerLeadingWidth:Zn,rightLeadingWidth:Qn,leftPaneTotalWidth:$n,rightPaneTotalWidth:er,centerContentWidth:tr,totalScrollWidth:nr}=(0,e.useMemo)(()=>Gn({orderedColumns:G,columnWidths:q.columnWidths,viewportWidth:On,rowHeaderWidth:P}),[Gn,G,q.columnWidths,On,P]),rr=(0,e.useRef)(new Map),ir=(0,e.useCallback)(e=>{let t=q.filters.columnFilters[e.key];if(t?.kind===`numberSet`||t?.kind===`textSet`||t?.kind===`dateSet`||t?.kind===`text`)return t.kind;let n=rr.current.get(e.key);if(n)return n;let r=(0,O.inferColumnFilterType)({editorType:e.editor?.type,isServerSide:K,rowCount:B.length,getRawValueAt:t=>(0,I.getCellValue)(B[t],e)});return r.conclusive&&rr.current.set(e.key,r.filterType),r.filterType},[q.filters.columnFilters,K,B]),{filterPopoverState:ar,filterPopoverLayout:or,filterPopoverRef:sr,filterTextInputRef:cr,filterSelectRef:lr,isFilterPopoverOpen:ur,openedFilterColumn:dr,openedFilterType:fr,openColumnFilterPopover:pr,closeColumnFilterPopover:mr,updateFilterPopoverDraft:hr,updateFilterPopoverNumberDraft:gr,updateFilterPopoverTextDraft:_r,updateFilterPopoverDateDraft:vr}=Be({visibleColumns:W,columnFilterValues:q.filters.columnFilters,enableColumnFilter:wn,gridRootRef:Wt,resolveColumnFilterType:ir}),{columnMenuLayout:yr,columnMenuRef:br,isColumnMenuOpen:xr,openedMenuColumnKey:Sr,openedMenuColumn:Cr,openColumnMenuFromButton:wr,openColumnMenuFromButtonClick:Tr,openColumnMenuFromContextMenu:Er,closeColumnMenu:Dr}=Kt({visibleColumns:W,enableColumnMenu:Ge,gridRootRef:Wt}),{activeToolPanelTab:Or,availableToolPanelTabs:kr,toolPanelLayout:Ar,toolPanelFlashTick:jr,toolPanelRef:Mr,openToolPanel:Nr,closeToolPanel:Pr,moveToolPanel:Fr}=Qt({canUseFilterTab:wn,canUseColumnsTab:Ge,canUseSortTab:Cn,gridRootRef:Wt,alliedRef:sr,suppressEscape:ur,onSuppressedEscape:mr}),{contextMenuState:Ir,contextMenuLayout:Lr,contextMenuRef:Rr,isContextMenuOpen:zr,openContextMenu:Br,closeContextMenu:Vr}=_n({gridRootRef:Wt});(0,e.useEffect)(()=>{let e=W.reduce((e,t)=>((0,A.isFlexingColumn)(t)||(e[t.key]=t.width),e),{});J(o.gridActions.resetColumnWidths(e))},[W,J]);let Hr=q.filters.globalText,Ur=q.filters.columnFilters,Wr=(0,e.useDeferredValue)(Ur),{rowPipeline:Gr}=U,{order:Kr,status:qr,progress:Jr}=pt({rows:B,baseOrder:(0,e.useMemo)(()=>Gr.resolveBaseOrder(B.length),[Gr,B.length]),columns:W,globalText:Hr,enabled:Tn}),{order:Yr,rowDragOperable:Xr}=(0,e.useMemo)(()=>Gr.resolveOrder({rows:B,visibleColumns:W,columnFilters:Wr,globalFilteredOrder:Kr,sort:q.sort,rowDragAvailable:fn}),[Gr,B,W,Wr,Kr,q.sort,fn]);(0,e.useEffect)(()=>{},[K,sn.length]);let{groupTree:Zr,groupedDisplay:Qr,rowModel:$r}=(0,e.useMemo)(()=>Gr.resolveClientSideRowModel({rows:B,order:Yr,rowGroupingActive:dn,groupColumns:sn,aggColumns:ln,collapsedGroupKeys:q.collapsedGroupKeys,rowKeyGetter:hn}),[Gr,B,Yr,dn,sn,ln,q.collapsedGroupKeys,hn]),ei=(0,e.useCallback)(e=>{J(o.gridActions.toggleGroupCollapsed(e))},[J]),ti=(0,e.useMemo)(()=>Gr.resolveServerSideQuery({isServerSide:K,globalFilterEnabled:Tn,globalText:Hr,columnFilterEnabled:wn,columnFilters:Ur,sortingEnabled:Cn,sort:q.sort}),[Gr,K,Tn,Hr,wn,Ur,Cn,q.sort]),ni=U.serverSideQueryStore;Ee(ni,{value:ti,enabled:K});let{query:ri,queryKey:ii}=(0,e.useSyncExternalStore)(ni.subscribe,ni.getSnapshot,ni.getSnapshot),X=mt({dataSource:i,rowKeyGetter:hn,query:ri,queryKey:ii,refreshToken:s,onLoadError:u,onWriteError:f}),[ai,oi]=(0,e.useState)(null),[si,ci]=(0,e.useState)(null),li=X.requestRange,Z=K?X.rowModel:$r,ui=(0,e.useMemo)(()=>K&&!X.canUpdateRows?()=>!1:ce,[K,X.canUpdateRows,ce]),di=K&&X.canUpdateRows?X.applyCellEdits:void 0,fi=(0,e.useCallback)(e=>{if(!Mt||!Nt)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=Z.getRow(i);if(!a)return;let o=Z.getRowKey(i)??i,s,c,l=t.closest(`[data-ssg-col-key]`),u=l?.dataset.ssgColKey;if(l&&u!==void 0){let e=(0,ve.resolveContextMenuColIndex)(G,u);if(e<0)return;let t=G[e];s={type:`cell`,rowIndex:i,colIndex:e,rowKey:o,row:a,column:t,value:(0,I.getCellValue)(a,t)},c=(0,ve.isContextMenuCellSelected)(q.selection,i,e)}else s={type:`rowHeader`,rowIndex:i,rowKey:o,row:a},c=(0,ve.isContextMenuRowSelected)(q.selection,i);let d={target:s,clientX:e.clientX,clientY:e.clientY,selection:q.selection,activeCell:q.activeCell,isTargetSelected:c},f=Nt(d);!f||f.length===0||(e.preventDefault(),Pt?.(d),Br(d,f))},[Mt,Nt,Pt,Z,G,q.selection,q.activeCell,Br]),{isAutosizing:pi,runAutosize:mi}=dt({rowModel:Z,gridRootRef:Wt,columnWidths:Kn,dispatch:J});Ee(U.autoSizeOnData,{mode:Pe,isServerSide:K,rows:B,visibleColumns:W,runAutosize:mi},`passive`);let Q=Z.getRowCount(),hi=Qr?Yr.length:Q,gi=Ut!==null&&Q>=Ut.minRows?Ut:null,_i=(0,e.useMemo)(()=>{let e=null;return()=>e??=Array.from(Yr,e=>B[e])},[Yr,B]),vi=(0,e.useMemo)(()=>(0,k.buildColumnMeasurements)(W,Kn),[W,Kn]),yi=U.scrollSync;Ee(yi,{scrollContainerRef:H,setViewState:En.setViewState,onScroll:Rt});let bi=Y.center.entries,xi=we({horizontal:!0,count:bi.length,getScrollElement:()=>H.current,estimateSize:e=>bi[e]?.paneLocalSize??bi[e]?.column.width??120,overscan:8,useFlushSync:!1,scrollMargin:$n}),Si=xi.getVirtualItems(),Ci=U.autoHeightMeasurer,{version:wi,nonce:Ti}=(0,e.useSyncExternalStore)(Ci.subscribe,Ci.getSnapshot,Ci.getSnapshot),Ei=C??Vt,Di=wt?.height??M.DEFAULT_DETAIL_ROW_HEIGHT,Oi=wt?.isExpandable,{resolveVerticalLayout:ki}=U,{hasAutoHeightColumn:Ai,autoHeightActive:ji,rowHeightStore:Mi,detailExtras:Ni,detailActive:Pi,rowMetrics:Fi,virtualRows:Ii,virtualRowIndexes:Li,detailEntries:Ri,windowFirstRow:zi,windowLastRow:Bi,physicalBodyHeight:Vi,bodyLayerTransform:Hi,verticalScaleFactor:Ui,overlayBaseOffset:Wi}=(0,e.useMemo)(()=>ki({isServerSide:K,autoHeight:S,visibleColumns:W,viewRowCount:Q,estimateRowHeight:Ei,rowHeight:Vt,headerHeight:V,viewportHeight:kn,scrollTop:Dn,rowModel:Z,measuredHeights:Ci.measuredHeights,autoHeightVersion:wi,detailRowEnabled:Bn,expandedDetailRowKeys:q.expandedDetailRowKeys,detailHeight:Di,detailIsExpandable:Oi,detailIndexCacheRef:Vn}),[ki,K,S,W,Q,Ei,Vt,V,kn,Dn,Z,Ci,wi,Bn,q.expandedDetailRowKeys,Di,Oi,Vn]);(0,e.useEffect)(()=>{},[S,Ai,Q,K]),(0,e.useEffect)(()=>{},[Bn,Ni,Pi]);let Gi=wt?.render,Ki=(0,e.useCallback)(e=>{if(!Gi)return null;let t=e.virtualRow.index,n=Z.getRow(t);if(n===void 0)return null;let r={row:n,rowKey:e.rowKey,rowIndex:t,sourceRowIndex:Z.getSourceIndex(t)??t,collapse:()=>Un(e.rowKey,t,!1)};return Gi(r)},[Gi,Z,Un]),qi=$n+Zn,Ji=Math.max(Math.min(On-qi-er,Y.center.totalWidth),0);(0,e.useEffect)(()=>{if(!K)return;let e=H.current;e&&(e.scrollTop=0),Nn(0)},[K,ii,Nn]),(0,e.useEffect)(()=>{!K||!Bn||(Vn.reset(),J(o.gridActions.setExpandedDetailRowKeys(new Set)))},[K,Bn,ii,J,Vn]),(0,e.useEffect)(()=>{K&&(Bi<zi||li(zi,Bi+1))},[K,zi,Bi,li,ii]),Ee(Ci,{scrollContainerRef:H,autoHeightActive:ji,rowHeightStore:Mi,rowMetrics:Fi,rowModel:Z,virtualRows:Ii,viewportHeight:kn,version:wi,nonce:Ti});let Yi=(0,e.useMemo)(()=>Si.map(e=>bi[e.index]).filter(e=>!!e),[Si,bi]),Xi=Y.left.entries,Zi=Y.right.entries,Qi=(0,e.useMemo)(()=>{if(!q.activeCell)return null;let{row:e,col:t}=q.activeCell;if(e<0||e>=Q)return null;let n=(0,k.computeSinglePaneColumnExtent)(Y,t);return n?{pane:n.pane,rect:{left:n.extent.start,top:Fi.rowTop(e),width:n.extent.width,height:Fi.cellHeight(e)}}:null},[q.activeCell,Q,Y,Fi]),$i=(0,e.useMemo)(()=>Qi&&Qi.pane===`center`?Qi.rect:null,[Qi]),ea=(0,e.useCallback)(e=>Qi&&Qi.pane===e?Qi.rect:null,[Qi]),ta=(0,e.useCallback)(e=>q.editingCell?ea(e):null,[q.editingCell,ea]),na=ct(re)===`dark`?`ssg-theme-dark`:void 0,$=xe(St),ra=Se(wt?.className);st($.tooltip),ot({scrollRef:H,columnVirtualizer:xi,columnMeasurements:vi,totalScrollWidth:nr,physicalBodyHeight:Vi,headerHeight:V,leftPaneWidth:$n,rightPaneWidth:er,centerLeadingWidth:Zn,activeCellRect:$i,activeCell:q.activeCell,verticalScaleFactor:Ui});let ia=(0,e.useMemo)(()=>{if(ye!==void 0)return ye;if(be!==void 0)return{type:`include`,rowKeys:be}},[ye,be]),aa=ge??(me&&he===`multiple`),oa=q.rowSelection,sa=(0,ne.getSelectAllState)(oa,hi),ca=U.rowSelectionCommands;Ee(ca,{rowModel:Z,rowSelectionState:oa,rowSelectionMode:he,onRowSelectionChange:Ce,controlledRowSelectionModel:ia,leafRowCount:hi,dispatch:J});let{handleGutterRowSelect:la,handleGutterRowSelectDrag:ua,handleToggleSelectAllRows:da}=ca,fa=(0,e.useRef)(()=>{}),{updateSelectionFromPointer:pa,handleCellPointerDown:ma,handleCellDoubleClick:ha,handleCellPointerEnter:ga,handleNativeDragStart:_a,handleRowHeaderPointerDown:va,handleRowHeaderPointerEnter:ya,handleColumnHeaderPointerDown:ba,handleColumnHeaderPointerEnter:xa}=at({gridRootRef:Wt,bodyScrollRef:Yt,onCellDoubleClickRef:fa,scrollContainerRef:H,leftPaneScrollRef:$t,rightPaneScrollRef:tn,pointerClientRef:qt,autoScrollFrameRef:Jt,uiState:q,dispatch:J,enableRangeSelection:pe,enableSorting:Cn,orderedColumns:G,filteredRowsLength:Q,visibleColumnsLength:W.length,paneLayout:Y,leftLeadingWidth:Xn,centerLeadingWidth:Zn,rightLeadingWidth:Qn,headerHeight:V,rowMetrics:Fi,verticalScaleFactor:Ui,setHoveredRowIndex:Rn,setHoveredColumnIndex:Fn,enableRowHover:Le,enableColumnHeaderHover:Re,enableRowSelection:me,onGutterRowSelect:la,onGutterRowSelectDrag:ua}),Sa=U.gridApi,Ca=(0,e.useCallback)(e=>{e&&requestAnimationFrame(()=>{Sa.scrollToCellInternal(e.row,e.col,`auto`)})},[Sa]),wa=le&&!L&&!K,{handleRowsChange:Ta,undo:Ea,redo:Da,canUndo:Oa,canRedo:ka,clearHistory:Aa}=rt({rows:B,selection:q.selection,activeCell:q.activeCell,onRowsChange:m,dispatch:J,enabled:wa,limit:de,onUndoRedoStateChange:fe,onAfterRestore:Ca}),ja=(0,e.useCallback)(()=>{if(di){let e=(0,j.buildClearCellEdits)({getRow:e=>Z.getRow(e),columns:G,selection:q.selection,activeCell:q.activeCell,viewRowCount:Q,canWriteCell:(e,t,n,r)=>(0,I.isCellEditable)({readOnly:L,canEditCell:ui},e,t,n,r)});e.length>0&&di(e);return}if(!Ta)return;let{nextRows:e,changed:t}=(0,j.clearCellsInSelection)({rows:B,resolveSourceIndex:e=>Z.getSourceIndex(e),columns:G,selection:q.selection,activeCell:q.activeCell,viewRowCount:Q,canWriteCell:(e,t,n,r)=>(0,I.isCellEditable)({readOnly:L,canEditCell:ui},e,t,n,r)});t&&Ta(e)},[di,ui,Ta,G,L,Z,B,q.activeCell,q.selection,Q]),{isWholeGridSelected:Ma,handleCopy:Na,handlePaste:Pa}=Ve({rows:B,rowModel:Z,visibleColumns:G,uiState:q,readOnly:L,canEditCell:ui,createRow:y,createOverflowColumn:b,onRowsChange:Ta,onColumnsChange:g,applyServerSideCellEdits:di,isRowExportable:v,dispatch:J}),Fa=(0,e.useCallback)(()=>{if(Q===0||W.length===0)return;let e={row:0,col:0},t={row:Q-1,col:W.length-1};J(o.gridActions.startSelection(e)),J(o.gridActions.updateSelection(t)),J(o.gridActions.endSelection()),J(o.gridActions.activateCell(e))},[J,Q,W.length]),Ia=(0,e.useCallback)(e=>{let t=Z.getRow(e.row),n=G[e.col];if(!t||!n||!(0,I.isCellEditable)({readOnly:L,canEditCell:ui},e.row,e.col,t,n)||n.editor?.type===`checkbox`)return;let r=(0,I.getCellValue)(t,n);rn(String(r??``)),J(o.gridActions.startEdit(e))},[ui,J,Z,L,G]),La=(0,e.useCallback)(e=>{if(!Ta&&!di)return;let t=Z.getRow(e.row),n=G[e.col];if(!t||!n||n.editor?.type!==`checkbox`||!(0,I.isCellEditable)({readOnly:L,canEditCell:ui},e.row,e.col,t,n))return;let r=(0,ae.toggleCheckboxValue)((0,I.getCellValue)(t,n),n.editor);if((0,oe.decideCellWrite)(n,t,r).action===`reject`)return;if(di){di([{viewIndex:e.row,column:n,value:r}]);return}if(!Ta)return;let i=Z.getSourceIndex(e.row);i!==void 0&&Ta((0,d.writeRowsCell)(B,i,n,r))},[di,ui,Ta,G,L,Z,B]),{handleKeyDown:Ra}=it({uiState:q,rowModel:Z,visibleColumns:G,readOnly:L,canEditCell:ui,setEditorInitialValue:rn,dispatch:J,handleCopy:Na,handleCellDoubleClick:Ia,isWholeGridSelected:Ma,selectEntireGrid:Fa,onUndo:Ea,onRedo:Da,onClearSelection:ja,enableClearOnDelete:ue,onToggleCheckboxCell:La,onToggleGroup:ei}),{startEditWithValue:za,commitEdit:Ba,cancelEdit:Va}=nt({uiState:q,rows:B,visibleColumns:G,rowModel:Z,setEditorInitialValue:rn,onRowsChange:Ta,applyServerSideCellEdits:di,dispatch:J,gridRootRef:Wt,editorActionGuardRef:Xt}),Ha=q.editingCell?G[q.editingCell.col]:void 0,Ua=q.editingCell?Z.getRow(q.editingCell.row):void 0,Wa=q.editingCell&&Ha&&Ua?{row:Ua,rowIndex:q.editingCell.row,sourceRowIndex:Z.getSourceIndex(q.editingCell.row)??q.editingCell.row,rowKey:Z.getRowKey(q.editingCell.row)??q.editingCell.row,colIndex:q.editingCell.col,column:Ha,value:(0,I.getCellValue)(Ua,Ha)}:null,Ga=(0,e.useCallback)(e=>{let t=Z.getRow(e.row),n=G[e.col];if(!t||!n||!(0,I.isCellEditable)({readOnly:L,canEditCell:ui},e.row,e.col,t,n)||n.editor?.type===`checkbox`)return;let r=(0,I.getCellValue)(t,n);za(e,String(r??``))},[ui,Z,L,za,G]);(0,e.useEffect)(()=>{fa.current=Ga},[Ga]);let Ka=(0,e.useMemo)(()=>{if(!q.selection)return null;if(q.selection.type===`cell`){let e=(0,c.normalizeCellRange)(q.selection.range);return{extents:(0,k.computePaneColumnExtents)(Y,e.start.col,e.end.col),startRow:e.start.row,endRow:e.end.row}}if(q.selection.type===`row`){let e=(0,c.normalizeRowRange)(q.selection.startRow,q.selection.endRow);return{extents:(0,k.computeFullWidthPaneExtents)(Y),startRow:e.startRow,endRow:e.endRow}}let e=(0,c.normalizeColumnRange)(q.selection.startCol,q.selection.endCol);return{extents:(0,k.computePaneColumnExtents)(Y,e.startCol,e.endCol),startRow:0,endRow:Math.max(Q-1,0)}},[q.selection,Y,Q]),qa=(0,e.useMemo)(()=>{if(!Ka)return null;let e=(0,ee.clipRowRangeToWindow)(Ka.startRow,Ka.endRow,zi,Bi);return e?{top:Fi.rowTop(e.start),height:Fi.rowsHeight(e.start,e.end)}:null},[Ka,Fi,zi,Bi]),Ja=(0,e.useMemo)(()=>{if(!Pi||!Ka)return null;let e=(0,ee.clipRowRangeToWindow)(Ka.startRow,Ka.endRow,zi,Bi);return e?(0,M.splitRowBandByDetail)(e.start,e.end,Fi,Ni):null},[Pi,Ka,Fi,Ni,zi,Bi]),Ya=(0,e.useCallback)(e=>{if(!Ka||!qa)return null;let t=Ka.extents[e];return t?{left:t.start,top:qa.top,width:t.width,height:qa.height}:null},[Ka,qa]),Xa=(0,e.useCallback)(e=>{if(!Ja||!Ka)return null;let t=Ka.extents[e];return t?Ja.map(e=>({left:t.start,top:e.top,width:t.width,height:e.height})):null},[Ja,Ka]),Za=(0,e.useCallback)(e=>{if(e.preventDefault(),e.button===0&&!(Q===0||W.length===0)){if(Wt.current?.focus({preventScroll:!0}),aa){da();return}if(Ma){J(o.gridActions.clearSelection()),J(o.gridActions.activateCell(null));return}Fa()}},[J,Q,Ma,Fa,W.length,aa,da]),Qa=(0,e.useCallback)(e=>{Rn(t=>t===e?null:t)},[Rn]),$a=(0,e.useCallback)(e=>{Fn(t=>t===e?null:t)},[Fn]),eo=(0,e.useCallback)(()=>{In(!0)},[In]),to=(0,e.useCallback)(()=>{In(!1)},[In]),no=U.columnCommands;Ee(no,{columns:zt,visibleColumns:W,orderedColumns:G,columnWidths:Kn,onColumnsChange:g,dispatch:J,enableSorting:Me,sort:q.sort,globalFilterText:Hr,closeColumnMenu:Dr,openToolPanel:Nr,openColumnFilterPopover:pr,runAutosize:mi});let{handleColumnMenuPinnedChange:ro,handleColumnMenuAutosizeColumn:io,handleColumnMenuAutosizeAllColumns:ao,handleColumnMenuOpenChooser:oo,handleColumnMenuOpenSortManager:so,handleColumnMenuOpenFilter:co,handleColumnMenuOpenFilterManager:lo,handleColumnMenuResetColumns:uo,handleColumnMenuSortChange:fo,handleFilterManagerClearFilter:po,handleFilterManagerClearAll:mo,handleFilterManagerClearGlobal:ho,handleColumnChooserToggleVisibility:go,handleColumnChooserShowAll:_o,handleColumnChooserHideAll:vo,handleColumnChooserReorder:yo,handleColumnChooserReset:bo,applyColumnOrderAndPin:xo,handleSortManagerAddLevel:So,handleSortManagerChangeDirection:Co,handleSortManagerChangeColumn:wo,handleSortManagerRemoveLevel:To,handleSortManagerClearAll:Eo,handleSortManagerMove:Do,handleColumnResizePointerDown:Oo}=no,ko=(0,e.useMemo)(()=>zt.map(e=>({key:e.key,title:e.title??e.key,visible:e.visible!==!1,pane:(0,k.getColumnPane)(e)})),[zt]),Ao=(0,e.useMemo)(()=>W.filter(e=>e.key!==M.DETAIL_TOGGLE_COLUMN_KEY&&e.key!==te.ROW_DRAG_HANDLE_COLUMN_KEY).map(e=>({key:e.key,title:e.title??e.key})),[W]),jo=(0,e.useMemo)(()=>{let e=[],t=(t,n)=>{let r=Ur[t.key];!r||!(0,h.isActiveColumnFilterValue)(r)||e.push({columnKey:t.key,title:t.title||t.key,summaryText:(0,E.describeColumnFilterValue)(r,r.kind===`dateSet`?(0,D.normalizeDateFilterPresets)(t.dateFilterPresets):void 0),isHidden:n})};for(let e of G)t(e,!1);for(let e of zt)e.visible===!1&&t(e,!0);return e},[Ur,zt,G]),Mo=(0,e.useMemo)(()=>W.filter(e=>!!e.filterType&&!(0,h.isActiveColumnFilterValue)(Ur[e.key])).map(e=>({key:e.key,title:e.title||e.key})),[Ur,W]),No=(0,e.useCallback)(()=>{Or===`filter`?Pr():Nr(`filter`)},[Or,Pr,Nr]),Po=(0,e.useCallback)(e=>{let t=H.current,n=G.findIndex(t=>t.key===e);if(n<0)return;let r=G[n];if(t){let e=(0,k.computeSinglePaneColumnExtent)(Y,n);if(e&&e.pane===`center`){let n=(0,N.computeHorizontalScrollTarget)({cellLeft:$n+Zn+e.extent.start,cellWidth:e.extent.width,leftPaneWidth:$n,rightPaneWidth:er,viewportWidth:t.clientWidth,currentScrollLeft:t.scrollLeft,align:`auto`,maxScrollLeft:t.scrollWidth-t.clientWidth});n!==t.scrollLeft&&t.scrollTo({left:n,behavior:`auto`})}}let i=()=>{let t=Wt.current,n=t?.querySelectorAll(`[data-ssg-col-key]`);return!t||!n?null:Array.from(n).find(n=>n.dataset.ssgColKey===e&&!(0,M.isInsideDetailCardOf)(t,n))??null},a=e=>{if(!Wt.current)return;let t=i();if(t===null){e<8&&requestAnimationFrame(()=>a(e+1));return}pr(r),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(()=>{a(0)})},[Wt,pr,G,Y,$n,Zn,er]),{onColumnDragHandlePointerDown:Fo,leftIndicatorRef:Io,centerIndicatorRef:Lo,rightIndicatorRef:Ro,applyReorderSettle:zo}=lt({enabled:!!g,columns:zt,paneLayout:Y,leftPaneScrollRef:$t,rightPaneScrollRef:tn,bodyScrollRef:Yt,scrollContainerRef:H,leftLeadingWidth:Xn,centerLeadingWidth:Zn,rightLeadingWidth:Qn,applyColumnOrderAndPin:xo,ghostSlot:$.dragGhost});(0,e.useLayoutEffect)(()=>{zo()},[Y,zo]);let Bo=(0,e.useCallback)((e,t)=>{if(!Ta)return;let n=(0,te.moveArrayItem)(B,e,t);if(n===B)return;let r=B[e],i=n;Ta(i),jt?.({rowKey:hn(r,e),fromIndex:e,toIndex:t,rows:i})},[B,Ta,jt,hn]),Vo=(0,e.useCallback)((e,t)=>{if(K){console.warn(`[SpreadsheetGrid] moveRow() は clientSide(rows + onRowsChange)専用です。serverSide では無効です。`);return}let n=B.findIndex((t,n)=>hn(t,n)===e);n<0||Bo(n,t)},[K,B,hn,Bo]),{onRowDragHandlePointerDown:Ho,leftIndicatorRef:Uo,centerIndicatorRef:Wo,rightIndicatorRef:Go,applyReorderSettle:Ko}=ut({enabled:Xr,rowMetrics:Fi,headerHeight:V,verticalScaleFactor:Ui,windowBaseOffsetPx:Wi,scrollContainerRef:H,bodyScrollRef:Yt,getRowDragLabel:(0,e.useCallback)(e=>{let t=`行 ${e+1}`,n=Z.getRow(e);if(!n)return t;let r=W.find(e=>!(0,M.isSyntheticColumnKey)(e.key));if(!r)return t;let i=(0,I.getCellValue)(n,r),a=r.valueFormatter?r.valueFormatter({value:i,row:n,column:r}):String(i??``);return a.trim().length>0?a:t},[Z,W]),commitRowMove:Bo,ghostSlot:$.dragGhost});(0,e.useLayoutEffect)(()=>{Ko()},[Z,Ko]);let qo=g?Fo:void 0,Jo={position:`absolute`,top:0,height:V+Vi,transform:`translateX(-1px)`,pointerEvents:`none`,zIndex:8,display:`none`},Yo=(0,e.useCallback)(e=>dr?(0,I.getCellValue)(B[e],dr):void 0,[B,dr]),{options:Xo,allValues:Zo,status:Qo,progress:$o}=ft({column:dr,rowCount:B.length,getRawValueAt:Yo}),{resolveFilterPopoverDerived:es}=U,ts=(0,e.useMemo)(()=>es({openedFilterColumn:dr,openedFilterType:fr,openedFilterSelectOptions:Xo,openedFilterAllValues:Zo,columnFilters:q.filters.columnFilters}),[es,dr,fr,Xo,Zo,q.filters.columnFilters]),{openedPopoverSelectOptions:ns,openedSetFilterValue:rs,openedSetSelection:is}=ts,as=U.filterPopoverCommands;Ee(as,{filterPopoverState:ar,openedFilterColumn:dr,openedFilterType:fr,columnFilters:q.filters.columnFilters,derived:ts,dispatch:J,closeColumnFilterPopover:mr,updateNumberDraft:gr,updateTextDraft:_r,updateDateDraft:vr});let{handleSetFilterValueToggle:os,handleSetFilterSelectAllChange:ss,handleSetFilterReplaceSelection:cs,clearSetFilterPopoverValue:ls,handleNumberConditionDraftChange:us,handleTextConditionDraftChange:ds,handleDateConditionDraftChange:fs,handleComboConditionClear:ps,handleComboSelectionClear:ms,applyFilterPopoverValue:hs,clearFilterPopoverValue:gs}=as,_s=q.expandedDetailRowKeys,vs=(0,e.useCallback)((e,n,r,i,a)=>{let o=(0,I.getCellValue)(e,r);if(r.key===te.ROW_DRAG_HANDLE_COLUMN_KEY){if(kt){let t=Z.getSourceIndex(n)??n;if(!kt(e,{rowKey:Z.getRowKey(n)??n,sourceRowIndex:t}))return null}return(0,l.jsx)(`span`,{className:(0,t.cx)(`ssg-row-drag-handle`,!Xr&&`ssg-row-drag-handle--disabled`),"data-ssg-tooltip":Xr?te.ROW_DRAG_HANDLE_TOOLTIP:te.ROW_DRAG_DISABLED_TOOLTIP,"aria-hidden":`true`,onPointerDown:Xr?e=>Ho(n,e):void 0,children:(0,l.jsxs)(`svg`,{width:`8`,height:`14`,viewBox:`0 0 8 14`,fill:`currentColor`,"aria-hidden":`true`,focusable:`false`,children:[(0,l.jsx)(`circle`,{cx:`2`,cy:`3`,r:`1`}),(0,l.jsx)(`circle`,{cx:`6`,cy:`3`,r:`1`}),(0,l.jsx)(`circle`,{cx:`2`,cy:`7`,r:`1`}),(0,l.jsx)(`circle`,{cx:`6`,cy:`7`,r:`1`}),(0,l.jsx)(`circle`,{cx:`2`,cy:`11`,r:`1`}),(0,l.jsx)(`circle`,{cx:`6`,cy:`11`,r:`1`})]})})}if(r.renderCell){let t=Z.getSourceIndex(n)??n,s=Z.getRowKey(n)??n,c=Bn?{expanded:_s.has(s),expandable:Oi?Oi(e,{rowKey:s,sourceRowIndex:t}):!0,toggle:()=>Hn(s,n),setExpanded:e=>Un(s,n,e)}:void 0;return r.renderCell({row:e,rowIndex:n,sourceRowIndex:t,rowKey:s,colIndex:i,...c?{detail:c}:null,value:o,column:r,isActive:a.isActive,isSelected:a.isSelected,isEditing:a.isEditing,readOnly:a.readOnly,setValue:t=>{if((0,oe.decideCellWrite)(r,e,t).action===`reject`)return;if(di){di([{viewIndex:n,column:r,value:t}]);return}if(!Ta)return;let i=Z.getSourceIndex(n);if(i===void 0)return;let a=(0,d.writeRowsCell)(B,i,r,t);Ta(a)}})}return r.editor?.type===`checkbox`?(0,l.jsx)(_t,{slot:$.checkbox,checked:(0,ae.isCheckboxChecked)(o,r.editor),readOnly:a.readOnly,onToggle:()=>La({row:n,col:i})}):(0,l.jsx)(`span`,{children:r.valueFormatter?r.valueFormatter({value:o,row:e,column:r}):String(o??``)})},[Z,Ta,B,La,$.checkbox,di,Bn,_s,Oi,Hn,Un,kt,Xr,Ho]),{slotContext:ys}=tt({rows:B,viewRowCount:hi,getFilteredRows:_i,columns:zt,visibleColumns:W,uiState:q,setGlobalFilterText:(0,e.useCallback)(e=>{J(o.gridActions.setGlobalFilter(e))},[J]),globalFilterStatus:qr,globalFilterProgress:Jr}),bs=(0,e.useMemo)(()=>({width:P,minWidth:P}),[P]),xs=Q===0,Ss=(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)`}:{}}),Cs=(()=>{if(!dr)return`(なし)`;let e=q.filters.columnFilters[dr.key];if((0,h.isSetColumnFilterValue)(e))return e.mode===`exclude`?`${e.values.length}件を除外中`:`${e.values.length}件を選択中`;if((0,h.isNumberColumnFilterValue)(e))return e.raw;let t=(0,h.columnFilterValueToDraftText)(e);return t.trim()?t:`(なし)`})(),ws=dr?(0,D.normalizeDateFilterPresets)(dr.dateFilterPresets):void 0,Ts=rs&&(0,h.isActiveColumnFilterValue)(rs)?(0,E.describeColumnFilterValue)(rs,ws):`フィルターなし`,Es=dr?(0,l.jsx)(Et,{popoverSlot:$.popover,themeClassName:na,isOpen:!!ar,title:dr.title||dr.key,filterType:fr??`text`,isServerSide:K,draftValue:ar?.draftValue??``,numberConditionDraft:ar?.numberDraft??null,onNumberConditionDraftChange:us,textConditionDraft:ar?.textDraft??null,onTextConditionDraftChange:ds,dateConditionDraft:ar?.dateDraft??null,onDateConditionDraftChange:fs,datePresets:ws,renderDateInput:je?e=>je({...e,columnKey:dr.key}):void 0,onComboConditionClear:ps,onComboSelectionClear:ms,comboSummaryText:Ts,currentValueText:Cs,layout:or,selectOptions:ns,setSelection:is,optionsStatus:Qo,optionsProgress:$o,popoverRef:sr,textInputRef:cr,selectRef:lr,onRequestClose:mr,onDraftChange:hr,onApply:hs,onClear:gs,onSetValueToggle:os,onSetSelectAllChange:ss,onSetClear:ls,onSetReplaceSelection:cs}):null,Ds=Cr?(0,l.jsx)(Zt,{slots:$,themeClassName:na,isOpen:xr,title:Cr.title||Cr.key,columnKey:Cr.key,canFilter:wn&&!!Cr.filterType,onOpenFilter:()=>co(Cr),canSort:Cn,sortDirection:q.sort.find(e=>e.columnKey===Cr.key)?.direction??null,onSortChange:e=>fo(Cr.key,e),onOpenSortManager:so,canManageFilters:wn,onOpenFilterManager:lo,pinned:Cr.pinned,canChangePinned:!!g,layout:yr,popoverRef:br,onPinnedChange:ro,onAutosizeColumn:io,onAutosizeAllColumns:ao,onOpenColumnChooser:oo,canResetColumns:!!g,onResetColumns:uo,onRequestClose:Dr}):null,Os=Tn&&Hr.trim().length>0,ks=jo.length+ +!!Os,As=kr.map(e=>e===`filter`?{tab:e,label:`フィルター`,badge:ks}:e===`sort`?{tab:e,label:`並び替え`,badge:q.sort.length}:{tab:e,label:`列`}),js=(0,l.jsx)(en,{popoverSlot:$.popover,themeClassName:na,activeTab:Or,flashTick:jr,tabs:As,layout:Ar,panelRef:Mr,onSelectTab:Nr,onRequestClose:Pr,onPanelMove:Fr,children:Or===null?null:{filter:()=>(0,l.jsx)(pn,{entries:jo,addableColumns:Mo,showGlobalFilterRow:Os,globalFilterText:Hr,canFilter:wn,onEditFilter:Po,onAddFilter:Po,onClearFilter:po,onClearAllFilters:mo,onClearGlobalFilter:ho}),columns:()=>(0,l.jsx)(cn,{items:ko,canToggle:!!g,onToggleColumnVisibility:go,onShowAllColumns:_o,onHideAllColumns:vo,onResetColumns:bo,onReorderColumns:yo}),sort:()=>(0,l.jsx)(un,{entries:q.sort,columns:Ao,canSort:Cn,onAddLevel:So,onChangeDirection:Co,onChangeColumn:wo,onRemoveLevel:To,onClearAll:Eo,onMove:Do})}[Or]()}),Ms=(0,l.jsx)(vn,{slots:$,themeClassName:na,isOpen:zr,items:Ir?.items??xn,layout:Lr,popoverRef:Rr,onRequestClose:Vr}),Ns=ur||xr||Or!==null||zr,Ps=Xe,Fs=Ze&&Tn,Is=Ps||Fs?(0,l.jsx)(At,{slot:$.toolbar,context:ys,showSummary:Ps,showFilter:Fs,showCounts:et,globalFilterPlaceholder:Qe,globalFilterIcon:$e,onFilterSummaryClick:wn?No:void 0}):null,Ls=Je?He(vt,ys,Is):null,Rs=Ye?He(yt,ys,(0,l.jsx)(Dt,{slot:$.statusBar,context:ys,showCounts:ht})):null,zs=F===void 0&&ie===void 0?void 0:{...F===void 0?{}:{height:F},maxHeight:ie??(F===void 0?void 0:`none`)};return Ee(Sa,{scrollContainerRef:H,dispatch:J,rowModel:Z,viewRowCount:Q,leafRowCount:hi,groupTree:Zr,rowMetrics:Fi,paneLayout:Y,orderedColumns:G,columns:zt,onColumnsChange:g,uiState:q,headerHeight:V,verticalScaleFactor:Ui,leftPaneTotalWidth:$n,rightPaneTotalWidth:er,centerLeadingWidth:Zn,windowFirstRow:zi,windowLastRow:Bi,physicalBodyHeight:Vi,rows:B,isServerSide:K,serverSideRefresh:X.refresh,resolvedRowKeyGetter:hn,isRowExportable:v,activeToolPanelTab:Or,openToolPanel:Nr,closeToolPanel:Pr,undoRows:Ea,redoRows:Da,canUndoRows:Oa,canRedoRows:ka,clearUndoHistory:Aa,detailRowEnabled:Bn,detailIsExpandable:Oi,detailIndexCacheRef:Vn,moveRowByKey:Vo,commitRowSelection:ca.commitRowSelection,markApiScroll:yi.markApiScroll}),(0,e.useImperativeHandle)(It,()=>Sa.handle,[Sa]),Ee(U.stateChangeNotifier,{columnWidths:q.columnWidths,filters:q.filters,sort:q.sort,dragState:q.dragState,columns:zt,onStateChange:Lt},`passive`),(0,l.jsxs)(`div`,{className:(0,t.cx)(`ssg-root`,T!==`standard`&&`ssg-root--density-${T}`,na,se&&`ssg-root--dim-readonly`,bt,$.root?.className),style:(0,n.mergeStyles)($.root?.style,xt),children:[Ls,gt&&(0,l.jsx)(mn,{slot:$.filterChipBar,entries:jo,canFilter:wn,onEditFilter:Po,onClearFilter:po,onClearAllFilters:mo}),(0,l.jsxs)(`div`,{ref:Wt,className:`ssg-shell`,style:{cursor:pi?`progress`:void 0},onDragStart:_a,onPointerLeave:()=>Rn(null),onPointerMoveCapture:e=>{qt.current={x:e.clientX,y:e.clientY},pa(e.clientX,e.clientY)},tabIndex:Ns?-1:0,onKeyDown:Ns?void 0:Ra,onPaste:Ns?void 0:Pa,onContextMenu:fi,children:[(0,l.jsxs)(`div`,{ref:H,className:(0,t.cx)(`ssg-scroll-container`,gi?.scrollbar===!0&&`ssg-scroll-container--custom-scrollbar`),style:zs,children:[(0,l.jsxs)(`div`,{className:`ssg-inner-row`,style:{width:nr,minWidth:nr,height:V+Vi},children:[(0,l.jsxs)(`div`,{ref:$t,style:Ss(`left`,$n,qn),children:[qn&&(0,l.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:$n,minWidth:$n,height:V+Vi},children:[(0,l.jsx)(Gt,{pane:`left`,ownsRowHeader:!0,leadingWidth:Xn,headerHeight:V,rowHeaderCellStyle:bs,slots:$,isCornerHovered:Mn,isWholeGridSelected:Ma,showSelectAllCheckbox:aa,selectAllState:sa,filteredRowsLength:Q,visibleColumnsLength:W.length,renderEntries:Xi,hoveredColumnIndex:jn,selectionSnapshot:Wn,columnFilterValues:q.filters.columnFilters,sortState:q.sort,onCornerPointerDown:Za,onCornerPointerEnter:eo,onCornerPointerLeave:to,onColumnHeaderPointerDown:ba,onColumnHeaderPointerEnter:xa,onColumnHeaderPointerLeave:$a,onColumnResizePointerDown:Oo,enableColumnMenu:Ge,enableColumnResize:Ne,openedMenuColumnKey:Sr,onColumnMenuButtonPointerDown:wr,onColumnMenuButtonClick:Tr,onColumnHeaderContextMenu:Er,onColumnDragHandlePointerDown:qo}),(0,l.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:$n,height:V+Vi,transform:Hi},children:[(Xa(`left`)??[Ya(`left`)]).map((e,t)=>(0,l.jsx)(ke,{slot:$.selectionOverlay,rect:e,headerHeight:V,baseOffset:Wi,leadingWidth:Xn},t)),(0,l.jsx)(Ae,{slot:$.activeCellOverlay,rect:ea(`left`),headerHeight:V,baseOffset:Wi,leadingWidth:Xn}),(0,l.jsx)(ze,{slots:$,rect:ta(`left`),headerHeight:V,baseOffset:Wi,leadingWidth:Xn,initialValue:nn,editor:Ha?.editor,editorSession:Wa,themeClassName:na,onCommit:Ba,onCancel:Va,align:Ha?.align,enterMove:R}),(0,l.jsx)(Bt,{pane:`left`,ownsRowHeader:!0,leadingWidth:Xn,rowModel:Z,virtualRows:Ii,virtualRowIndexes:Li,renderEntries:Xi,rowHeight:Vt,autoHeight:ji,showCellOverflowTooltip:Fe,showValidationMarks:Ie,isServerSide:K,collapsedGroupKeys:q.collapsedGroupKeys,onGroupToggle:ei,rowHeaderCellStyle:bs,hoveredRowIndex:zn,isWholeGridSelected:Ma,enableRowSelection:me,rowSelectionState:oa,activeCell:q.activeCell,editingCell:q.editingCell,selectionSnapshot:Wn,readOnly:L,canEditCell:ui,onRowHeaderPointerDown:va,onRowHeaderPointerEnter:ya,onRowHeaderPointerLeave:Qa,onCellPointerDown:ma,onCellPointerEnter:ga,onCellDoubleClick:ha,renderCellContent:vs,getRowClassName:Ct,slots:$}),(0,l.jsx)(Ht,{slots:$,entries:Ri,mode:`band`,paneWidth:$n,baseOffset:Wi,cardStickyLeft:0,cardWidth:0,renderCard:Ki}),fn&&(0,l.jsx)(`div`,{ref:Uo,className:`ssg-row-drop-indicator ssg-row-drop-indicator--cap`})]})]}),(0,l.jsx)(`div`,{ref:Io,className:`ssg-col-drop-indicator`,style:Jo})]}),(0,l.jsx)(`div`,{ref:Yt,className:`ssg-center-pane`,style:{width:tr,minWidth:tr},children:(0,l.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:tr,minWidth:tr,height:V+Vi},children:[(0,l.jsx)(Gt,{pane:`center`,ownsRowHeader:Yn,leadingWidth:Zn,headerHeight:V,rowHeaderCellStyle:bs,slots:$,isCornerHovered:Mn,isWholeGridSelected:Ma,showSelectAllCheckbox:aa,selectAllState:sa,filteredRowsLength:Q,visibleColumnsLength:W.length,renderEntries:Yi,hoveredColumnIndex:jn,selectionSnapshot:Wn,columnFilterValues:q.filters.columnFilters,sortState:q.sort,onCornerPointerDown:Za,onCornerPointerEnter:eo,onCornerPointerLeave:to,onColumnHeaderPointerDown:ba,onColumnHeaderPointerEnter:xa,onColumnHeaderPointerLeave:$a,onColumnResizePointerDown:Oo,enableColumnMenu:Ge,enableColumnResize:Ne,openedMenuColumnKey:Sr,onColumnMenuButtonPointerDown:wr,onColumnMenuButtonClick:Tr,onColumnHeaderContextMenu:Er,onColumnDragHandlePointerDown:qo}),(0,l.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:tr,height:V+Vi,transform:Hi},children:[(Xa(`center`)??[Ya(`center`)]).map((e,t)=>(0,l.jsx)(ke,{slot:$.selectionOverlay,rect:e,headerHeight:V,baseOffset:Wi,leadingWidth:Zn},t)),(0,l.jsx)(Ae,{slot:$.activeCellOverlay,rect:ea(`center`),headerHeight:V,baseOffset:Wi,leadingWidth:Zn}),(0,l.jsx)(ze,{slots:$,rect:ta(`center`),headerHeight:V,baseOffset:Wi,leadingWidth:Zn,initialValue:nn,editor:Ha?.editor,editorSession:Wa,themeClassName:na,onCommit:Ba,onCancel:Va,align:Ha?.align,enterMove:R}),(0,l.jsx)(Bt,{pane:`center`,ownsRowHeader:Yn,leadingWidth:Zn,rowModel:Z,virtualRows:Ii,virtualRowIndexes:Li,renderEntries:Yi,rowHeight:Vt,autoHeight:ji,showCellOverflowTooltip:Fe,showValidationMarks:Ie,isServerSide:K,collapsedGroupKeys:q.collapsedGroupKeys,onGroupToggle:ei,rowHeaderCellStyle:bs,hoveredRowIndex:zn,isWholeGridSelected:Ma,enableRowSelection:me,rowSelectionState:oa,activeCell:q.activeCell,editingCell:q.editingCell,selectionSnapshot:Wn,readOnly:L,canEditCell:ui,onRowHeaderPointerDown:va,onRowHeaderPointerEnter:ya,onRowHeaderPointerLeave:Qa,onCellPointerDown:ma,onCellPointerEnter:ga,onCellDoubleClick:ha,renderCellContent:vs,getRowClassName:Ct,slots:$}),(0,l.jsx)(Ht,{slots:$,entries:Ri,mode:`center`,paneWidth:tr,baseOffset:Wi,cardStickyLeft:qi,cardWidth:Ji,cardSlot:ra,renderCard:Ki}),fn&&(0,l.jsx)(`div`,{ref:Wo,className:(0,t.cx)(`ssg-row-drop-indicator`,Yn&&`ssg-row-drop-indicator--cap`)})]}),(0,l.jsx)(`div`,{ref:Lo,className:`ssg-col-drop-indicator`,style:Jo})]})}),(0,l.jsxs)(`div`,{ref:tn,style:Ss(`right`,er,Jn),children:[Jn&&(0,l.jsxs)(`div`,{style:{position:`relative`,overflow:`clip`,width:er,minWidth:er,height:V+Vi},children:[(0,l.jsx)(Gt,{pane:`right`,ownsRowHeader:!1,leadingWidth:Qn,headerHeight:V,rowHeaderCellStyle:bs,slots:$,isCornerHovered:Mn,isWholeGridSelected:Ma,showSelectAllCheckbox:aa,selectAllState:sa,filteredRowsLength:Q,visibleColumnsLength:W.length,renderEntries:Zi,hoveredColumnIndex:jn,selectionSnapshot:Wn,columnFilterValues:q.filters.columnFilters,sortState:q.sort,onCornerPointerDown:Za,onCornerPointerEnter:eo,onCornerPointerLeave:to,onColumnHeaderPointerDown:ba,onColumnHeaderPointerEnter:xa,onColumnHeaderPointerLeave:$a,onColumnResizePointerDown:Oo,enableColumnMenu:Ge,enableColumnResize:Ne,openedMenuColumnKey:Sr,onColumnMenuButtonPointerDown:wr,onColumnMenuButtonClick:Tr,onColumnHeaderContextMenu:Er,onColumnDragHandlePointerDown:qo}),(0,l.jsxs)(`div`,{style:{position:`absolute`,top:0,left:0,width:er,height:V+Vi,transform:Hi},children:[(Xa(`right`)??[Ya(`right`)]).map((e,t)=>(0,l.jsx)(ke,{slot:$.selectionOverlay,rect:e,headerHeight:V,baseOffset:Wi,leadingWidth:Qn},t)),(0,l.jsx)(Ae,{slot:$.activeCellOverlay,rect:ea(`right`),headerHeight:V,baseOffset:Wi,leadingWidth:Qn}),(0,l.jsx)(ze,{slots:$,rect:ta(`right`),headerHeight:V,baseOffset:Wi,leadingWidth:Qn,initialValue:nn,editor:Ha?.editor,editorSession:Wa,themeClassName:na,onCommit:Ba,onCancel:Va,align:Ha?.align,enterMove:R}),(0,l.jsx)(Bt,{pane:`right`,ownsRowHeader:!1,leadingWidth:Qn,rowModel:Z,virtualRows:Ii,virtualRowIndexes:Li,renderEntries:Zi,rowHeight:Vt,autoHeight:ji,showCellOverflowTooltip:Fe,showValidationMarks:Ie,isServerSide:K,collapsedGroupKeys:q.collapsedGroupKeys,onGroupToggle:ei,rowHeaderCellStyle:bs,hoveredRowIndex:zn,isWholeGridSelected:Ma,enableRowSelection:me,rowSelectionState:oa,activeCell:q.activeCell,editingCell:q.editingCell,selectionSnapshot:Wn,readOnly:L,canEditCell:ui,onRowHeaderPointerDown:va,onRowHeaderPointerEnter:ya,onRowHeaderPointerLeave:Qa,onCellPointerDown:ma,onCellPointerEnter:ga,onCellDoubleClick:ha,renderCellContent:vs,getRowClassName:Ct,slots:$}),(0,l.jsx)(Ht,{slots:$,entries:Ri,mode:`band`,paneWidth:er,baseOffset:Wi,cardStickyLeft:0,cardWidth:0,renderCard:Ki}),fn&&(0,l.jsx)(`div`,{ref:Go,className:`ssg-row-drop-indicator`})]})]}),(0,l.jsx)(`div`,{ref:Ro,className:`ssg-col-drop-indicator`,style:Jo})]})]}),xs&&(0,l.jsx)(`div`,{className:(0,t.cx)(`ssg-empty-state`,$.emptyState?.className),style:$.emptyState?.style,children:B.length===0?qe:Ke})]}),gi!==null&&(0,l.jsx)(gn,{slot:$.scrollHint,options:gi,scrollContainerRef:H,scrollTop:Dn,viewportHeight:kn,headerHeight:V,physicalBodyHeight:Vi,verticalScaleFactor:Ui,rowMetrics:Fi,rowModel:Z}),pi&&(0,l.jsx)(`div`,{className:`ssg-autosize-overlay`,children:(0,l.jsx)(`span`,{className:`ssg-autosize-pill`,children:`列幅を計算中…`})}),qr===`filtering`&&(0,l.jsx)(`div`,{className:`ssg-filter-overlay`,children:(0,l.jsxs)(`span`,{className:`ssg-filter-overlay-chip`,role:`status`,"aria-live":`polite`,children:[(0,l.jsx)(`span`,{className:`ssg-filter-spinner`,"aria-hidden":`true`}),(0,l.jsxs)(`span`,{className:`ssg-filter-overlay-text`,children:[`適用中 `,Math.round(Jr*100),`%`]})]})}),K&&(X.loadError!==null&&X.loadError!==ai||X.writeError!==null&&X.writeError!==si)&&(0,l.jsxs)(`div`,{className:`ssg-ssrm-error-bars`,children:[X.loadError!==null&&X.loadError!==ai&&(0,l.jsxs)(`div`,{className:(0,t.cx)(`ssg-ssrm-error-bar`,$.errorBar?.className),style:$.errorBar?.style,role:`alert`,children:[(0,l.jsx)(`span`,{className:`ssg-ssrm-error-bar-dot`,"aria-hidden":`true`}),(0,l.jsxs)(`span`,{className:`ssg-ssrm-error-bar-msg`,children:[`行の取得に失敗しました(`,X.loadError.failedBlockCount,` ブロック)`]}),(0,l.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-retry`,onClick:X.retryFailedBlocks,children:`再試行`}),(0,l.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-close`,"aria-label":`エラー通知を閉じる`,onClick:()=>oi(X.loadError),children:`×`})]}),X.writeError!==null&&X.writeError!==si&&(0,l.jsxs)(`div`,{className:(0,t.cx)(`ssg-ssrm-error-bar`,$.errorBar?.className),style:$.errorBar?.style,role:`alert`,children:[(0,l.jsx)(`span`,{className:`ssg-ssrm-error-bar-dot`,"aria-hidden":`true`}),(0,l.jsxs)(`span`,{className:`ssg-ssrm-error-bar-msg`,children:[`変更の保存に失敗しました(`,X.writeError.failedRowCount,` 行)。値を元に戻しました`]}),(0,l.jsx)(`button`,{type:`button`,className:`ssg-ssrm-error-bar-close`,"aria-label":`保存エラー通知を閉じる`,onClick:()=>ci(X.writeError),children:`×`})]})]})]}),Rs,Es,Ds,js,Ms]})}exports.SpreadsheetGrid=Cn,Object.defineProperty(exports,"numberFormatter",{enumerable:!0,get:function(){return be.numberFormatter}});
|