@stonecrop/atable 0.13.11 → 0.13.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- @import"https://fonts.googleapis.com/css2?family=Arimo:ital,wght@0,400..700;1,400..700&display=swap";.atable-cell{border-radius:0;box-sizing:border-box;outline:none;box-shadow:none;color:var(--sc-cell-text-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);border-spacing:0px;border-collapse:collapse;overflow:hidden;text-overflow:ellipsis;order:1;white-space:nowrap;max-width:40ch;border-top:1px solid var(--sc-row-border-color);margin:0 0 0 1px}.atable-cell a{color:var(--sc-cell-text-color);text-decoration:none}.atable-cell:focus,.atable-cell:focus-within{background-color:var(--sc-focus-cell-background);outline-width:var(--sc-atable-cell-border-width);outline-style:solid;outline-offset:calc(var(--sc-atable-cell-border-width) * -1);outline-color:var(--sc-focus-cell-outline);box-shadow:none;overflow:hidden;text-wrap:nowrap;box-sizing:border-box}.cell-modified{font-weight:700;font-style:italic}.cell-modified-highlight{background-color:var(--sc-cell-changed-color)}.row-index{color:var(--sc-header-text-color);font-weight:700;text-align:center;-webkit-user-select:none;user-select:none;width:2ch;display:flex;align-items:center;justify-content:center}.expandable-row{border-top:1px solid var(--sc-row-border-color);height:var(--sc-atable-row-height)}.expandable-row>td:first-child{border-left:4px solid var(--sc-row-border-color)}.expanded-row{border-left:2px solid var(--sc-row-border-color)}.expandable-row:last-child{border-bottom:1px solid var(--sc-row-border-color)}.expanded-row-content{border-top:1px solid var(--sc-row-border-color);padding:1.5rem}.expandable-row.changed-row-gradient[data-v-a42297c7]:has(td.cell-modified){--cell-color-start: color-mix(in srgb, var(--sc-cell-changed-color), #fff 20%);--cell-color-end: color-mix(in srgb, var(--sc-cell-changed-color), #fff 60%);background:linear-gradient(90deg,var(--cell-color-start),var(--cell-color-end))}.aganttcell[data-v-c3173189]{background-color:#f9f9f9;width:100%;padding:0;height:100%}.gantt-container[data-v-c3173189]{position:relative;height:100%;background-color:#f0f0f0;border-radius:4px;overflow:visible}.gantt-bar[data-v-c3173189]{position:absolute;border-radius:4px;display:flex;align-items:center;justify-content:space-between;cursor:grab;box-sizing:border-box;border:1px solid rgba(0,0,0,.5);transition:left .1s ease-out,width .1s ease-out;height:80%;top:50%;z-index:0;transform:translateY(-50%)}.gantt-bar[data-v-c3173189]:active{cursor:grabbing}.gantt-bar.is-dragging[data-v-c3173189]{z-index:10}.gantt-label[data-v-c3173189]{flex:1;text-align:center;font-size:12px;color:#aaa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px;-webkit-user-select:none;user-select:none}.resize-handle[data-v-c3173189]{position:relative;width:12px;height:100%;cursor:ew-resize;display:flex;align-items:center;justify-content:center;z-index:0;background:#00000040}.left-resize-handle[data-v-c3173189]{border-right:1px solid rgba(0,0,0,.5)}.right-resize-handle[data-v-c3173189]{border-left:1px solid rgba(0,0,0,.5)}.handle-grip[data-v-c3173189]{width:4px;height:12px;border-radius:2px;background:#000c}.resize-handle[data-v-c3173189]:hover{background-color:#ffffff80}.vertical-indicator[data-v-c3173189]{position:absolute;width:2px;opacity:0;pointer-events:none;transition:opacity .2s ease;top:-100vh;height:100vh;z-index:5;background-color:var(--v1b78cb3b)}.left-indicator[data-v-c3173189]{left:50%;transform:translate(-50%)}.right-indicator[data-v-c3173189]{right:50%;transform:translate(50%)}.resize-handle.is-dragging .vertical-indicator[data-v-c3173189]{opacity:.7}.gantt-container[data-v-c3173189]:after{content:"";position:absolute;inset:0;background-size:calc(100% / var(--v0a4cd982)) 100%;background-image:linear-gradient(to right,rgba(0,0,0,.1) 1px,transparent 1px);pointer-events:none;z-index:1}.connection-handle[data-v-c3173189]{position:absolute;top:50%;transform:translateY(-50%);width:16px;height:16px;opacity:0;transition:opacity .2s ease;cursor:crosshair;z-index:2;display:flex;align-items:center;justify-content:center}.connection-handle.visible[data-v-c3173189]{opacity:1}.left-connection-handle[data-v-c3173189]{left:-16px}.right-connection-handle[data-v-c3173189]{right:-16px}.connection-dot[data-v-c3173189]{width:8px;height:8px;border-radius:50%;background-color:#2196f3;border:2px solid white;box-shadow:0 1px 3px #0000004d}.connection-handle:hover .connection-dot[data-v-c3173189]{background-color:#1976d2;transform:scale(1.2)}.connection-handle.is-dragging[data-v-c3173189]{opacity:1!important}.connection-handle.is-dragging .connection-dot[data-v-c3173189]{background-color:#1976d2;transform:scale(1.3);box-shadow:0 2px 8px #2196f366}.atable-row-actions{width:2rem;min-width:2rem;padding:0 .25rem;vertical-align:middle;white-space:nowrap;border-top:1px solid var(--sc-row-border-color);background:#fff;-webkit-user-select:none;user-select:none;position:relative}.atable-row-actions.dropdown-active{z-index:101}.row-actions-icons{display:flex;gap:.25rem;align-items:center;justify-content:center}.row-action-btn{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:.125rem;border:none;background:transparent;cursor:pointer;border-radius:.25rem;transition:background-color .15s ease}.row-action-btn:hover{background-color:var(--sc-gray-10, #e5e5e5)}.row-action-btn:focus{outline:2px solid var(--sc-focus-cell-outline, #3b82f6);outline-offset:1px}.row-action-btn .action-icon{display:flex;align-items:center;justify-content:center;width:1rem;height:1rem}.row-action-btn .action-icon :deep(svg){width:100%;height:100%}.row-actions-dropdown{position:relative;display:inline-block}.row-actions-dropdown:has(button:focus){outline:2px solid var(--sc-focus-cell-outline);outline-offset:-2px}.row-actions-toggle{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:none;background:transparent;cursor:pointer;border-radius:.25rem;font-size:1rem;font-weight:700;transition:background-color .15s ease}.row-actions-toggle:hover{background-color:var(--sc-gray-10, #e5e5e5)}.dropdown-icon{line-height:1}.row-actions-menu{position:fixed;z-index:100;min-width:10rem;padding:.25rem 0;background:#fff;border:1px solid var(--sc-row-border-color);border-left:4px solid var(--sc-row-border-color);border-radius:0}.row-actions-menu.menu-flipped{box-shadow:0 -4px 6px -1px #0000001a,0 -2px 4px -2px #0000001a}.row-action-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;border:none;background:transparent;cursor:pointer;text-align:left;font-size:.875rem;transition:background-color .15s ease}.row-action-menu-item:hover{background-color:var(--sc-gray-10, #f5f5f5)}.row-action-menu-item:focus{outline:none;background-color:var(--sc-gray-10, #f5f5f5)}.row-action-menu-item .action-icon{display:flex;align-items:center;justify-content:center;width:1rem;height:1rem;flex-shrink:0}.row-action-menu-item .action-icon :deep(svg){width:100%;height:100%}.row-action-menu-item .action-label{flex:1}.atable-row{background-color:#fff}.atable-row:last-child>td{border-bottom:1px solid var(--sc-row-border-color)}.atable-row>td:first-child{border-left:4px solid var(--sc-row-border-color)}.atable-row>td:last-child{border-right:1px solid var(--sc-row-border-color)}.list-index{color:var(--sc-header-text-color);font-weight:700;padding-left:var(--sc-atable-row-padding);padding-right:.5em;text-align:left;-webkit-user-select:none;user-select:none;border-top:1px solid var(--sc-row-border-color);text-overflow:ellipsis;overflow:hidden;box-sizing:border-box;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding)}.tree-index{color:var(--sc-header-text-color);font-weight:700;text-align:center;-webkit-user-select:none;user-select:none;width:2ch;box-sizing:border-box;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding)}.atable-row:has(td.cell-modified)>td.sticky-column,.atable-row:has(td.cell-modified)>th.sticky-column,.atable-row:has(td.cell-modified)>td.sticky-index,.atable-row:has(td.cell-modified)>th.sticky-index{background:var(--sc-cell-changed-color)}.atable-row.changed-row-gradient[data-v-e7ca13d1]:has(td.cell-modified){--cell-color-start: color-mix(in srgb, var(--sc-cell-changed-color), #fff 20%);--cell-color-end: color-mix(in srgb, var(--sc-cell-changed-color), #fff 60%);background:linear-gradient(90deg,var(--cell-color-start),var(--cell-color-end))}.gantt-connection-overlay[data-v-d5929c98]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:15}.connection-path[data-v-d5929c98]{transition:stroke-width .2s ease;pointer-events:auto;cursor:pointer;stroke-dasharray:5px;stroke:var(--sc-cell-text-color)}#arrowhead-marker polygon[data-v-d5929c98]{fill:var(--sc-cell-text-color)}.animated-path[data-v-d5929c98]{animation:animated-dash-d5929c98 infinite 1.5s linear}.connection-path[data-v-d5929c98]:hover{stroke-width:3px}.connection-hitbox[data-v-d5929c98]{pointer-events:auto;cursor:pointer}@keyframes animated-dash-d5929c98{0%{stroke-dashoffset:0px}to{stroke-dashoffset:-10px}}.column-filter[data-v-e0efa4a9]{display:flex;align-items:center;gap:.25rem;width:100%}.filter-input[data-v-e0efa4a9],.filter-select[data-v-e0efa4a9]{background-color:var(--sc-form-background)!important;padding:.15rem .2rem;border:1px solid var(--sc-form-border);border-radius:3px;font-size:.875rem;color:var(--sc-text-color);width:100%;box-sizing:border-box}.filter-input[data-v-e0efa4a9]:focus,.filter-select[data-v-e0efa4a9]:focus{outline:none;border-color:var(--sc-input-active-border-color)}.checkbox-filter[data-v-e0efa4a9]{display:flex;align-items:center;gap:.25rem;font-size:.875rem;color:var(--sc-text-color);cursor:pointer}.filter-checkbox[data-v-e0efa4a9]{margin:0}.date-range-filter[data-v-e0efa4a9]{display:flex;gap:.25rem;align-items:center;width:100%}.date-range-filter .filter-input[data-v-e0efa4a9]{flex:1;min-width:0}.date-separator[data-v-e0efa4a9]{color:var(--sc-gray-50);font-weight:500;padding:0 .25rem;flex-shrink:0}.clear-btn[data-v-e0efa4a9]{background:var(--sc-gray-10, #f0f0f0);border:1px solid var(--sc-form-border);border-radius:3px;color:var(--sc-gray-70);cursor:pointer;font-size:1rem;padding:.15rem .4rem;line-height:1;flex-shrink:0}.atable-header-row th{padding-left:.5ch!important;font-weight:700;min-width:3ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);box-sizing:border-box;color:var(--sc-header-text-color);position:relative}#header-index{padding-left:var(--sc-atable-row-padding);box-sizing:border-box;border-top:none}.tree-index{padding-right:0}th{order:1}.list-expansion-index{width:2ch;margin-left:5px}.cursor-pointer{cursor:pointer}.atable-filters-row th{padding:.25rem .5ch;vertical-align:top}.row-actions-header{width:2rem;min-width:2rem;padding:0 .25rem}:root{--sc-primary-color: #0098c9;--sc-primary-text-color: #ffffff;--sc-brand-color: #202a44;--sc-gray-5: #f2f2f2;--sc-gray-10: #e6e6e6;--sc-gray-20: #cccccc;--sc-gray-50: #808080;--sc-gray-60: #666666;--sc-gray-80: #333333;--sc-brand-danger: #e63c28;--sc-brand-success: #155724;--sc-brand-warning: #b99d3e;--sc-active-cell-background: #ffffff;--sc-active-cell-outline: #e6a92d;--sc-cell-border-color: #ffffff;--sc-cell-text-color: #3a3c41;--sc-focus-cell-background: #ffffff;--sc-focus-cell-outline: #000000;--sc-header-border-color: #ffffff;--sc-header-text-color: var(--sc-gray-20);--sc-row-border-color: var(--sc-gray-20);--sc-row-color-zebra-dark: #dddddd;--sc-row-color-zebra-light: #eeeeee;--sc-row-number-background-color: #ffffff;--sc-input-active-border-color: #000000;--sc-input-active-label-color: #000000;--sc-input-border-color: var(--sc-gray-20);--sc-input-label-color: var(--sc-gray-60);--sc-required-border: #e63c28;--sc-cell-changed-color: #d8edff;--sc-form-border: var(--sc-gray-5);--sc-form-background: #ffffff;--sc-input-field-background: #ffffff;--sc-input-field-disabled-background: var(--sc-gray-5);--sc-font-size: 10px;--sc-font-family: Arimo, Arial, sans-serif;--sc-table-font-size: 16px;--sc-atable-font-family: "Arimo", sans-serif;--sc-atable-row-padding: .125rem;--sc-atable-row-height: 1.5em;--sc-atable-cell-border-width: 2px;--sc-table-loading-color: 204, 204, 204;--sc-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.amodal{position:absolute;background-color:var(--sc-row-color-zebra-dark);z-index:200}.atable-container{position:relative}.sticky-index{position:sticky;left:0;z-index:100;order:0}.sticky-column,th.sticky-column,td.sticky-column,th.sticky-index,td.sticky-index{position:sticky;z-index:100;order:0;background:#fff}.sticky-column-edge,.atable th.sticky-column-edge{border-right:1px solid var(--sc-row-border-color)}[data-v-402a86ad]:root{--sc-primary-color: #0098c9;--sc-primary-text-color: #ffffff;--sc-brand-color: #202a44;--sc-gray-5: #f2f2f2;--sc-gray-10: #e6e6e6;--sc-gray-20: #cccccc;--sc-gray-50: #808080;--sc-gray-60: #666666;--sc-gray-80: #333333;--sc-brand-danger: #e63c28;--sc-brand-success: #155724;--sc-brand-warning: #b99d3e;--sc-active-cell-background: #ffffff;--sc-active-cell-outline: #e6a92d;--sc-cell-border-color: #ffffff;--sc-cell-text-color: #3a3c41;--sc-focus-cell-background: #ffffff;--sc-focus-cell-outline: #000000;--sc-header-border-color: #ffffff;--sc-header-text-color: var(--sc-gray-20);--sc-row-border-color: var(--sc-gray-20);--sc-row-color-zebra-dark: #dddddd;--sc-row-color-zebra-light: #eeeeee;--sc-row-number-background-color: #ffffff;--sc-input-active-border-color: #000000;--sc-input-active-label-color: #000000;--sc-input-border-color: var(--sc-gray-20);--sc-input-label-color: var(--sc-gray-60);--sc-required-border: #e63c28;--sc-cell-changed-color: #d8edff;--sc-form-border: var(--sc-gray-5);--sc-form-background: #ffffff;--sc-input-field-background: #ffffff;--sc-input-field-disabled-background: var(--sc-gray-5);--sc-font-size: 10px;--sc-font-family: Arimo, Arial, sans-serif;--sc-table-font-size: 16px;--sc-atable-font-family: "Arimo", sans-serif;--sc-atable-row-padding: .125rem;--sc-atable-row-height: 1.5em;--sc-atable-cell-border-width: 2px;--sc-table-loading-color: 204, 204, 204;--sc-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.atable[data-v-402a86ad]{position:relative;font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);border-collapse:collapse;box-sizing:border-box;table-layout:auto;width:auto;overflow:clip;height:1px}.atable th[data-v-402a86ad]{border-width:0px;border-style:solid;border-radius:0;padding-left:.5ch;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);color:var(--sc-gray-60);height:var(--sc-atable-row-height);font-weight:300;letter-spacing:.05rem;order:1;box-sizing:border-box}.atable th[data-v-402a86ad]:focus{outline:none}.atable[data-v-402a86ad]:tbody{overflow:hidden;position:relative}.atable[data-v-402a86ad]:tbody:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background-color:transparent;z-index:100}.aloading[data-v-a930a25b]{width:100%;border-top:1px solid var(--sc-row-border-color);border-bottom:1px solid var(--sc-row-border-color);display:flex;background-color:#fff;border-left:4px solid var(--sc-row-border-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);align-items:center;box-sizing:border-box;background:var(--sc-focus-cell-background);overflow:hidden;position:relative}.aloading-bar[data-v-a930a25b]{width:100%;height:100%;position:absolute;left:-100%;top:0;background:linear-gradient(90deg,rgba(var(--sc-table-loading-color),0),rgba(var(--sc-table-loading-color),1),rgba(var(--sc-table-loading-color),0));animation:gradient-a930a25b infinite 2s;z-index:0}.aloading-header[data-v-a930a25b]{color:var(--sc-cell-text-color);font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);padding:0;margin:0;font-weight:400;z-index:1}.aloading-header[data-v-a930a25b]:after{content:"...";animation:ellipse-a930a25b 2s;animation-iteration-count:infinite}@keyframes gradient-a930a25b{0%{left:-100%}to{left:100%}}@keyframes ellipse-a930a25b{0%{content:""}20%{content:""}40%{content:"."}60%{content:".."}80%{content:"..."}}.aloading[data-v-e1165876]{width:100%;border-top:1px solid var(--sc-row-border-color);border-bottom:1px solid var(--sc-row-border-color);display:flex;background-color:#fff;border-left:4px solid var(--sc-row-border-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);align-items:center;box-sizing:border-box;background:var(--sc-focus-cell-background);overflow:hidden;position:relative}.aloading-bar[data-v-e1165876]{width:50%;height:3px;position:absolute;left:-100%;bottom:0;background:var(--sc-row-border-color);animation:bar-left-e1165876 infinite 2s;z-index:0}.aloading-header[data-v-e1165876]{color:var(--sc-cell-text-color);font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);padding:0;margin:0;font-weight:400;z-index:1}.aloading-header[data-v-e1165876]:after{content:"...";animation:ellipse-e1165876 2s;animation-iteration-count:infinite}@keyframes bar-left-e1165876{0%{left:-50%}to{left:100%}}@keyframes ellipse-e1165876{0%{content:""}20%{content:""}40%{content:"."}60%{content:".."}80%{content:"..."}}
1
+ @import"https://fonts.googleapis.com/css2?family=Arimo:ital,wght@0,400..700;1,400..700&display=swap";.atable-cell{border-radius:0;box-sizing:border-box;outline:none;box-shadow:none;color:var(--sc-cell-text-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);border-spacing:0px;border-collapse:collapse;overflow:hidden;text-overflow:ellipsis;order:1;white-space:nowrap;max-width:40ch;border-top:1px solid var(--sc-row-border-color);margin:0 0 0 1px}.atable-cell a{color:var(--sc-cell-text-color);text-decoration:none}.atable-cell:focus,.atable-cell:focus-within{background-color:var(--sc-focus-cell-background);outline-width:var(--sc-atable-cell-border-width);outline-style:solid;outline-offset:calc(var(--sc-atable-cell-border-width) * -1);outline-color:var(--sc-focus-cell-outline);box-shadow:none;overflow:hidden;text-wrap:nowrap;box-sizing:border-box}.cell-modified{font-weight:700;font-style:italic}.cell-modified-highlight{background-color:var(--sc-cell-changed-color)}.row-index{color:var(--sc-header-text-color);font-weight:700;text-align:center;-webkit-user-select:none;user-select:none;width:2ch;display:flex;align-items:center;justify-content:center}.expandable-row{border-top:1px solid var(--sc-row-border-color);height:var(--sc-atable-row-height)}.expandable-row>td:first-child{border-left:4px solid var(--sc-row-border-color)}.expanded-row{border-left:2px solid var(--sc-row-border-color)}.expandable-row:last-child{border-bottom:1px solid var(--sc-row-border-color)}.expanded-row-content{border-top:1px solid var(--sc-row-border-color);padding:1.5rem}.expandable-row.changed-row-gradient[data-v-a42297c7]:has(td.cell-modified){--cell-color-start: color-mix(in srgb, var(--sc-cell-changed-color), #fff 20%);--cell-color-end: color-mix(in srgb, var(--sc-cell-changed-color), #fff 60%);background:linear-gradient(90deg,var(--cell-color-start),var(--cell-color-end))}.aganttcell[data-v-032ef6d9]{background-color:#f9f9f9;width:100%;padding:0;height:100%}.gantt-container[data-v-032ef6d9]{position:relative;height:100%;background-color:#f0f0f0;border-radius:4px;overflow:visible}.gantt-bar[data-v-032ef6d9]{position:absolute;border-radius:4px;display:flex;align-items:center;justify-content:space-between;cursor:grab;box-sizing:border-box;border:1px solid rgba(0,0,0,.5);transition:left .1s ease-out,width .1s ease-out;height:80%;top:50%;z-index:0;transform:translateY(-50%)}.gantt-bar[data-v-032ef6d9]:active{cursor:grabbing}.gantt-bar.is-dragging[data-v-032ef6d9]{z-index:10}.gantt-label[data-v-032ef6d9]{flex:1;text-align:center;font-size:12px;color:#aaa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px;-webkit-user-select:none;user-select:none}.resize-handle[data-v-032ef6d9]{position:relative;width:12px;height:100%;cursor:ew-resize;display:flex;align-items:center;justify-content:center;z-index:0;background:#00000040}.left-resize-handle[data-v-032ef6d9]{border-right:1px solid rgba(0,0,0,.5)}.right-resize-handle[data-v-032ef6d9]{border-left:1px solid rgba(0,0,0,.5)}.handle-grip[data-v-032ef6d9]{width:4px;height:12px;border-radius:2px;background:#000c}.resize-handle[data-v-032ef6d9]:hover{background-color:#ffffff80}.vertical-indicator[data-v-032ef6d9]{position:absolute;width:2px;opacity:0;pointer-events:none;transition:opacity .2s ease;top:-100vh;height:100vh;z-index:5;background-color:var(--v564d6da1)}.left-indicator[data-v-032ef6d9]{left:50%;transform:translate(-50%)}.right-indicator[data-v-032ef6d9]{right:50%;transform:translate(50%)}.resize-handle.is-dragging .vertical-indicator[data-v-032ef6d9]{opacity:.7}.gantt-container[data-v-032ef6d9]:after{content:"";position:absolute;inset:0;background-size:calc(100% / var(--v4f540c19)) 100%;background-image:linear-gradient(to right,rgba(0,0,0,.1) 1px,transparent 1px);pointer-events:none;z-index:1}.connection-handle[data-v-032ef6d9]{position:absolute;top:50%;transform:translateY(-50%);width:16px;height:16px;opacity:0;transition:opacity .2s ease;cursor:crosshair;z-index:2;display:flex;align-items:center;justify-content:center}.connection-handle.visible[data-v-032ef6d9]{opacity:1}.left-connection-handle[data-v-032ef6d9]{left:-16px}.right-connection-handle[data-v-032ef6d9]{right:-16px}.connection-dot[data-v-032ef6d9]{width:8px;height:8px;border-radius:50%;background-color:#2196f3;border:2px solid white;box-shadow:0 1px 3px #0000004d}.connection-handle:hover .connection-dot[data-v-032ef6d9]{background-color:#1976d2;transform:scale(1.2)}.connection-handle.is-dragging[data-v-032ef6d9]{opacity:1!important}.connection-handle.is-dragging .connection-dot[data-v-032ef6d9]{background-color:#1976d2;transform:scale(1.3);box-shadow:0 2px 8px #2196f366}.atable-row-actions{width:2rem;min-width:2rem;padding:0 .25rem;vertical-align:middle;white-space:nowrap;border-top:1px solid var(--sc-row-border-color);background:#fff;-webkit-user-select:none;user-select:none;position:relative}.atable-row-actions.dropdown-active{z-index:101}.row-actions-icons{display:flex;gap:.25rem;align-items:center;justify-content:center}.row-action-btn{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:.125rem;border:none;background:transparent;cursor:pointer;border-radius:.25rem;transition:background-color .15s ease}.row-action-btn:hover{background-color:var(--sc-gray-10, #e5e5e5)}.row-action-btn:focus{outline:2px solid var(--sc-focus-cell-outline, #3b82f6);outline-offset:1px}.row-action-btn .action-icon{display:flex;align-items:center;justify-content:center;width:1rem;height:1rem}.row-action-btn .action-icon :deep(svg){width:100%;height:100%}.row-actions-dropdown{position:relative;display:inline-block}.row-actions-dropdown:has(button:focus){outline:2px solid var(--sc-focus-cell-outline);outline-offset:-2px}.row-actions-toggle{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:none;background:transparent;cursor:pointer;border-radius:.25rem;font-size:1rem;font-weight:700;transition:background-color .15s ease}.row-actions-toggle:hover{background-color:var(--sc-gray-10, #e5e5e5)}.dropdown-icon{line-height:1}.row-actions-menu{position:fixed;z-index:100;min-width:10rem;padding:.25rem 0;background:#fff;border:1px solid var(--sc-row-border-color);border-left:4px solid var(--sc-row-border-color);border-radius:0}.row-actions-menu.menu-flipped{box-shadow:0 -4px 6px -1px #0000001a,0 -2px 4px -2px #0000001a}.row-action-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;border:none;background:transparent;cursor:pointer;text-align:left;font-size:.875rem;transition:background-color .15s ease}.row-action-menu-item:hover{background-color:var(--sc-gray-10, #f5f5f5)}.row-action-menu-item:focus{outline:none;background-color:var(--sc-gray-10, #f5f5f5)}.row-action-menu-item .action-icon{display:flex;align-items:center;justify-content:center;width:1rem;height:1rem;flex-shrink:0}.row-action-menu-item .action-icon :deep(svg){width:100%;height:100%}.row-action-menu-item .action-label{flex:1}.atable-row{background-color:#fff}.atable-row-clickable{cursor:pointer}.atable-row-clickable:hover>td{background-color:var(--sc-row-hover-color, #f0f4f8)}.atable-row:last-child>td{border-bottom:1px solid var(--sc-row-border-color)}.atable-row>td:first-child{border-left:4px solid var(--sc-row-border-color)}.atable-row>td:last-child{border-right:1px solid var(--sc-row-border-color)}.list-index{color:var(--sc-header-text-color);font-weight:700;padding-left:var(--sc-atable-row-padding);padding-right:.5em;text-align:left;-webkit-user-select:none;user-select:none;border-top:1px solid var(--sc-row-border-color);text-overflow:ellipsis;overflow:hidden;box-sizing:border-box;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding)}.tree-index{color:var(--sc-header-text-color);font-weight:700;text-align:center;-webkit-user-select:none;user-select:none;width:2ch;box-sizing:border-box;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding)}.atable-row:has(td.cell-modified)>td.sticky-column,.atable-row:has(td.cell-modified)>th.sticky-column,.atable-row:has(td.cell-modified)>td.sticky-index,.atable-row:has(td.cell-modified)>th.sticky-index{background:var(--sc-cell-changed-color)}.atable-row.changed-row-gradient[data-v-533161af]:has(td.cell-modified){--cell-color-start: color-mix(in srgb, var(--sc-cell-changed-color), #fff 20%);--cell-color-end: color-mix(in srgb, var(--sc-cell-changed-color), #fff 60%);background:linear-gradient(90deg,var(--cell-color-start),var(--cell-color-end))}.gantt-connection-overlay[data-v-d5929c98]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:15}.connection-path[data-v-d5929c98]{transition:stroke-width .2s ease;pointer-events:auto;cursor:pointer;stroke-dasharray:5px;stroke:var(--sc-cell-text-color)}#arrowhead-marker polygon[data-v-d5929c98]{fill:var(--sc-cell-text-color)}.animated-path[data-v-d5929c98]{animation:animated-dash-d5929c98 infinite 1.5s linear}.connection-path[data-v-d5929c98]:hover{stroke-width:3px}.connection-hitbox[data-v-d5929c98]{pointer-events:auto;cursor:pointer}@keyframes animated-dash-d5929c98{0%{stroke-dashoffset:0px}to{stroke-dashoffset:-10px}}.column-filter[data-v-e0efa4a9]{display:flex;align-items:center;gap:.25rem;width:100%}.filter-input[data-v-e0efa4a9],.filter-select[data-v-e0efa4a9]{background-color:var(--sc-form-background)!important;padding:.15rem .2rem;border:1px solid var(--sc-form-border);border-radius:3px;font-size:.875rem;color:var(--sc-text-color);width:100%;box-sizing:border-box}.filter-input[data-v-e0efa4a9]:focus,.filter-select[data-v-e0efa4a9]:focus{outline:none;border-color:var(--sc-input-active-border-color)}.checkbox-filter[data-v-e0efa4a9]{display:flex;align-items:center;gap:.25rem;font-size:.875rem;color:var(--sc-text-color);cursor:pointer}.filter-checkbox[data-v-e0efa4a9]{margin:0}.date-range-filter[data-v-e0efa4a9]{display:flex;gap:.25rem;align-items:center;width:100%}.date-range-filter .filter-input[data-v-e0efa4a9]{flex:1;min-width:0}.date-separator[data-v-e0efa4a9]{color:var(--sc-gray-50);font-weight:500;padding:0 .25rem;flex-shrink:0}.clear-btn[data-v-e0efa4a9]{background:var(--sc-gray-10, #f0f0f0);border:1px solid var(--sc-form-border);border-radius:3px;color:var(--sc-gray-70);cursor:pointer;font-size:1rem;padding:.15rem .4rem;line-height:1;flex-shrink:0}.atable-header-row th{padding-left:.5ch!important;font-weight:700;min-width:3ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);box-sizing:border-box;color:var(--sc-header-text-color);position:relative}#header-index{padding-left:var(--sc-atable-row-padding);box-sizing:border-box;border-top:none}.tree-index{padding-right:0}th{order:1}.list-expansion-index{width:2ch;margin-left:5px}.cursor-pointer{cursor:pointer}.atable-filters-row th{padding:.25rem .5ch;vertical-align:top}.row-actions-header{width:2rem;min-width:2rem;padding:0 .25rem}:root{--sc-primary-color: #0098c9;--sc-primary-text-color: #ffffff;--sc-brand-color: #202a44;--sc-gray-5: #f2f2f2;--sc-gray-10: #e6e6e6;--sc-gray-20: #cccccc;--sc-gray-50: #808080;--sc-gray-60: #666666;--sc-gray-80: #333333;--sc-brand-danger: #e63c28;--sc-brand-success: #155724;--sc-brand-warning: #b99d3e;--sc-active-cell-background: #ffffff;--sc-active-cell-outline: #e6a92d;--sc-cell-border-color: #ffffff;--sc-cell-text-color: #3a3c41;--sc-focus-cell-background: #ffffff;--sc-focus-cell-outline: #000000;--sc-header-border-color: #ffffff;--sc-header-text-color: var(--sc-gray-20);--sc-row-border-color: var(--sc-gray-20);--sc-row-color-zebra-dark: #dddddd;--sc-row-color-zebra-light: #eeeeee;--sc-row-number-background-color: #ffffff;--sc-input-active-border-color: #000000;--sc-input-active-label-color: #000000;--sc-input-border-color: var(--sc-gray-20);--sc-input-label-color: var(--sc-gray-60);--sc-required-border: #e63c28;--sc-cell-changed-color: #d8edff;--sc-form-border: var(--sc-gray-5);--sc-form-background: #ffffff;--sc-input-field-background: #ffffff;--sc-input-field-disabled-background: var(--sc-gray-5);--sc-font-size: 10px;--sc-font-family: Arimo, Arial, sans-serif;--sc-table-font-size: 16px;--sc-atable-font-family: "Arimo", sans-serif;--sc-atable-row-padding: .125rem;--sc-atable-row-height: 1.5em;--sc-atable-cell-border-width: 2px;--sc-table-loading-color: 204, 204, 204;--sc-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.amodal{position:absolute;background-color:var(--sc-row-color-zebra-dark);z-index:200}.atable-container{position:relative}.sticky-index{position:sticky;left:0;z-index:100;order:0}.sticky-column,th.sticky-column,td.sticky-column,th.sticky-index,td.sticky-index{position:sticky;z-index:100;order:0;background:#fff}.sticky-column-edge,.atable th.sticky-column-edge{border-right:1px solid var(--sc-row-border-color)}[data-v-ffa2a0fc]:root{--sc-primary-color: #0098c9;--sc-primary-text-color: #ffffff;--sc-brand-color: #202a44;--sc-gray-5: #f2f2f2;--sc-gray-10: #e6e6e6;--sc-gray-20: #cccccc;--sc-gray-50: #808080;--sc-gray-60: #666666;--sc-gray-80: #333333;--sc-brand-danger: #e63c28;--sc-brand-success: #155724;--sc-brand-warning: #b99d3e;--sc-active-cell-background: #ffffff;--sc-active-cell-outline: #e6a92d;--sc-cell-border-color: #ffffff;--sc-cell-text-color: #3a3c41;--sc-focus-cell-background: #ffffff;--sc-focus-cell-outline: #000000;--sc-header-border-color: #ffffff;--sc-header-text-color: var(--sc-gray-20);--sc-row-border-color: var(--sc-gray-20);--sc-row-color-zebra-dark: #dddddd;--sc-row-color-zebra-light: #eeeeee;--sc-row-number-background-color: #ffffff;--sc-input-active-border-color: #000000;--sc-input-active-label-color: #000000;--sc-input-border-color: var(--sc-gray-20);--sc-input-label-color: var(--sc-gray-60);--sc-required-border: #e63c28;--sc-cell-changed-color: #d8edff;--sc-form-border: var(--sc-gray-5);--sc-form-background: #ffffff;--sc-input-field-background: #ffffff;--sc-input-field-disabled-background: var(--sc-gray-5);--sc-font-size: 10px;--sc-font-family: Arimo, Arial, sans-serif;--sc-table-font-size: 16px;--sc-atable-font-family: "Arimo", sans-serif;--sc-atable-row-padding: .125rem;--sc-atable-row-height: 1.5em;--sc-atable-cell-border-width: 2px;--sc-table-loading-color: 204, 204, 204;--sc-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.atable[data-v-ffa2a0fc]{position:relative;font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);border-collapse:collapse;box-sizing:border-box;table-layout:auto;width:auto;overflow:clip;height:1px}.atable th[data-v-ffa2a0fc]{border-width:0px;border-style:solid;border-radius:0;padding-left:.5ch;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);color:var(--sc-gray-60);height:var(--sc-atable-row-height);font-weight:300;letter-spacing:.05rem;order:1;box-sizing:border-box}.atable th[data-v-ffa2a0fc]:focus{outline:none}.atable[data-v-ffa2a0fc]:tbody{overflow:hidden;position:relative}.atable[data-v-ffa2a0fc]:tbody:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background-color:transparent;z-index:100}.aloading[data-v-a930a25b]{width:100%;border-top:1px solid var(--sc-row-border-color);border-bottom:1px solid var(--sc-row-border-color);display:flex;background-color:#fff;border-left:4px solid var(--sc-row-border-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);align-items:center;box-sizing:border-box;background:var(--sc-focus-cell-background);overflow:hidden;position:relative}.aloading-bar[data-v-a930a25b]{width:100%;height:100%;position:absolute;left:-100%;top:0;background:linear-gradient(90deg,rgba(var(--sc-table-loading-color),0),rgba(var(--sc-table-loading-color),1),rgba(var(--sc-table-loading-color),0));animation:gradient-a930a25b infinite 2s;z-index:0}.aloading-header[data-v-a930a25b]{color:var(--sc-cell-text-color);font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);padding:0;margin:0;font-weight:400;z-index:1}.aloading-header[data-v-a930a25b]:after{content:"...";animation:ellipse-a930a25b 2s;animation-iteration-count:infinite}@keyframes gradient-a930a25b{0%{left:-100%}to{left:100%}}@keyframes ellipse-a930a25b{0%{content:""}20%{content:""}40%{content:"."}60%{content:".."}80%{content:"..."}}.aloading[data-v-e1165876]{width:100%;border-top:1px solid var(--sc-row-border-color);border-bottom:1px solid var(--sc-row-border-color);display:flex;background-color:#fff;border-left:4px solid var(--sc-row-border-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);align-items:center;box-sizing:border-box;background:var(--sc-focus-cell-background);overflow:hidden;position:relative}.aloading-bar[data-v-e1165876]{width:50%;height:3px;position:absolute;left:-100%;bottom:0;background:var(--sc-row-border-color);animation:bar-left-e1165876 infinite 2s;z-index:0}.aloading-header[data-v-e1165876]{color:var(--sc-cell-text-color);font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);padding:0;margin:0;font-weight:400;z-index:1}.aloading-header[data-v-e1165876]:after{content:"...";animation:ellipse-e1165876 2s;animation-iteration-count:infinite}@keyframes bar-left-e1165876{0%{left:-50%}to{left:100%}}@keyframes ellipse-e1165876{0%{content:""}20%{content:""}40%{content:"."}60%{content:".."}80%{content:"..."}}
package/dist/atable.d.ts CHANGED
@@ -18,6 +18,7 @@ import DuplicateIcon from './stonecrop-ui-icon-duplicate.svg?raw';
18
18
  import InsertAboveIcon from './stonecrop-ui-icon-insert-above.svg?raw';
19
19
  import InsertBelowIcon from './stonecrop-ui-icon-insert-below.svg?raw';
20
20
  import MoveIcon from './stonecrop-ui-icon-move.svg?raw';
21
+ import OpenIcon from './stonecrop-ui-icon-open.svg?raw';
21
22
  import { Ref } from 'vue';
22
23
  import type { ShallowRef } from 'vue';
23
24
  import { Store } from 'pinia';
@@ -64,6 +65,13 @@ export declare interface BaseTableConfig {
64
65
  * @defaultValue false
65
66
  */
66
67
  fullWidth?: boolean;
68
+ /**
69
+ * When true, rows show a pointer cursor and a hover highlight, signalling they are
70
+ * clickable. Emits `row:click` on every row click.
71
+ *
72
+ * @defaultValue false
73
+ */
74
+ clickable?: boolean;
67
75
  /**
68
76
  * Configuration for row-level actions (add, delete, duplicate, etc.).
69
77
  */
@@ -253,12 +261,19 @@ colspan?: number | undefined;
253
261
  config: Ref< {
254
262
  view?: "uncounted" | "list" | "list-expansion" | undefined;
255
263
  fullWidth?: boolean | undefined;
264
+ clickable?: boolean | undefined;
256
265
  rowActions?: {
257
266
  enabled: boolean;
258
267
  position?: "before-index" | "after-index" | "end" | undefined;
259
268
  dropdownThreshold?: number | undefined;
260
269
  forceDropdown?: boolean | undefined;
261
270
  actions?: {
271
+ open?: boolean | {
272
+ enabled?: boolean | undefined;
273
+ label?: string | undefined;
274
+ icon?: string | undefined;
275
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
276
+ } | undefined;
262
277
  add?: boolean | {
263
278
  enabled?: boolean | undefined;
264
279
  label?: string | undefined;
@@ -301,12 +316,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
301
316
  view: "tree";
302
317
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
303
318
  fullWidth?: boolean | undefined;
319
+ clickable?: boolean | undefined;
304
320
  rowActions?: {
305
321
  enabled: boolean;
306
322
  position?: "before-index" | "after-index" | "end" | undefined;
307
323
  dropdownThreshold?: number | undefined;
308
324
  forceDropdown?: boolean | undefined;
309
325
  actions?: {
326
+ open?: boolean | {
327
+ enabled?: boolean | undefined;
328
+ label?: string | undefined;
329
+ icon?: string | undefined;
330
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
331
+ } | undefined;
310
332
  add?: boolean | {
311
333
  enabled?: boolean | undefined;
312
334
  label?: string | undefined;
@@ -349,12 +371,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
349
371
  view: "gantt";
350
372
  dependencyGraph?: boolean | undefined;
351
373
  fullWidth?: boolean | undefined;
374
+ clickable?: boolean | undefined;
352
375
  rowActions?: {
353
376
  enabled: boolean;
354
377
  position?: "before-index" | "after-index" | "end" | undefined;
355
378
  dropdownThreshold?: number | undefined;
356
379
  forceDropdown?: boolean | undefined;
357
380
  actions?: {
381
+ open?: boolean | {
382
+ enabled?: boolean | undefined;
383
+ label?: string | undefined;
384
+ icon?: string | undefined;
385
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
386
+ } | undefined;
358
387
  add?: boolean | {
359
388
  enabled?: boolean | undefined;
360
389
  label?: string | undefined;
@@ -398,12 +427,19 @@ view: "tree-gantt";
398
427
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
399
428
  dependencyGraph?: boolean | undefined;
400
429
  fullWidth?: boolean | undefined;
430
+ clickable?: boolean | undefined;
401
431
  rowActions?: {
402
432
  enabled: boolean;
403
433
  position?: "before-index" | "after-index" | "end" | undefined;
404
434
  dropdownThreshold?: number | undefined;
405
435
  forceDropdown?: boolean | undefined;
406
436
  actions?: {
437
+ open?: boolean | {
438
+ enabled?: boolean | undefined;
439
+ label?: string | undefined;
440
+ icon?: string | undefined;
441
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
442
+ } | undefined;
407
443
  add?: boolean | {
408
444
  enabled?: boolean | undefined;
409
445
  label?: string | undefined;
@@ -445,12 +481,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
445
481
  }, TableConfig | {
446
482
  view?: "uncounted" | "list" | "list-expansion" | undefined;
447
483
  fullWidth?: boolean | undefined;
484
+ clickable?: boolean | undefined;
448
485
  rowActions?: {
449
486
  enabled: boolean;
450
487
  position?: "before-index" | "after-index" | "end" | undefined;
451
488
  dropdownThreshold?: number | undefined;
452
489
  forceDropdown?: boolean | undefined;
453
490
  actions?: {
491
+ open?: boolean | {
492
+ enabled?: boolean | undefined;
493
+ label?: string | undefined;
494
+ icon?: string | undefined;
495
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
496
+ } | undefined;
454
497
  add?: boolean | {
455
498
  enabled?: boolean | undefined;
456
499
  label?: string | undefined;
@@ -493,12 +536,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
493
536
  view: "tree";
494
537
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
495
538
  fullWidth?: boolean | undefined;
539
+ clickable?: boolean | undefined;
496
540
  rowActions?: {
497
541
  enabled: boolean;
498
542
  position?: "before-index" | "after-index" | "end" | undefined;
499
543
  dropdownThreshold?: number | undefined;
500
544
  forceDropdown?: boolean | undefined;
501
545
  actions?: {
546
+ open?: boolean | {
547
+ enabled?: boolean | undefined;
548
+ label?: string | undefined;
549
+ icon?: string | undefined;
550
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
551
+ } | undefined;
502
552
  add?: boolean | {
503
553
  enabled?: boolean | undefined;
504
554
  label?: string | undefined;
@@ -541,12 +591,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
541
591
  view: "gantt";
542
592
  dependencyGraph?: boolean | undefined;
543
593
  fullWidth?: boolean | undefined;
594
+ clickable?: boolean | undefined;
544
595
  rowActions?: {
545
596
  enabled: boolean;
546
597
  position?: "before-index" | "after-index" | "end" | undefined;
547
598
  dropdownThreshold?: number | undefined;
548
599
  forceDropdown?: boolean | undefined;
549
600
  actions?: {
601
+ open?: boolean | {
602
+ enabled?: boolean | undefined;
603
+ label?: string | undefined;
604
+ icon?: string | undefined;
605
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
606
+ } | undefined;
550
607
  add?: boolean | {
551
608
  enabled?: boolean | undefined;
552
609
  label?: string | undefined;
@@ -590,12 +647,19 @@ view: "tree-gantt";
590
647
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
591
648
  dependencyGraph?: boolean | undefined;
592
649
  fullWidth?: boolean | undefined;
650
+ clickable?: boolean | undefined;
593
651
  rowActions?: {
594
652
  enabled: boolean;
595
653
  position?: "before-index" | "after-index" | "end" | undefined;
596
654
  dropdownThreshold?: number | undefined;
597
655
  forceDropdown?: boolean | undefined;
598
656
  actions?: {
657
+ open?: boolean | {
658
+ enabled?: boolean | undefined;
659
+ label?: string | undefined;
660
+ icon?: string | undefined;
661
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
662
+ } | undefined;
599
663
  add?: boolean | {
600
664
  enabled?: boolean | undefined;
601
665
  label?: string | undefined;
@@ -900,12 +964,19 @@ colspan?: number | undefined;
900
964
  config: Ref< {
901
965
  view?: "uncounted" | "list" | "list-expansion" | undefined;
902
966
  fullWidth?: boolean | undefined;
967
+ clickable?: boolean | undefined;
903
968
  rowActions?: {
904
969
  enabled: boolean;
905
970
  position?: "before-index" | "after-index" | "end" | undefined;
906
971
  dropdownThreshold?: number | undefined;
907
972
  forceDropdown?: boolean | undefined;
908
973
  actions?: {
974
+ open?: boolean | {
975
+ enabled?: boolean | undefined;
976
+ label?: string | undefined;
977
+ icon?: string | undefined;
978
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
979
+ } | undefined;
909
980
  add?: boolean | {
910
981
  enabled?: boolean | undefined;
911
982
  label?: string | undefined;
@@ -948,12 +1019,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
948
1019
  view: "tree";
949
1020
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
950
1021
  fullWidth?: boolean | undefined;
1022
+ clickable?: boolean | undefined;
951
1023
  rowActions?: {
952
1024
  enabled: boolean;
953
1025
  position?: "before-index" | "after-index" | "end" | undefined;
954
1026
  dropdownThreshold?: number | undefined;
955
1027
  forceDropdown?: boolean | undefined;
956
1028
  actions?: {
1029
+ open?: boolean | {
1030
+ enabled?: boolean | undefined;
1031
+ label?: string | undefined;
1032
+ icon?: string | undefined;
1033
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1034
+ } | undefined;
957
1035
  add?: boolean | {
958
1036
  enabled?: boolean | undefined;
959
1037
  label?: string | undefined;
@@ -996,12 +1074,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
996
1074
  view: "gantt";
997
1075
  dependencyGraph?: boolean | undefined;
998
1076
  fullWidth?: boolean | undefined;
1077
+ clickable?: boolean | undefined;
999
1078
  rowActions?: {
1000
1079
  enabled: boolean;
1001
1080
  position?: "before-index" | "after-index" | "end" | undefined;
1002
1081
  dropdownThreshold?: number | undefined;
1003
1082
  forceDropdown?: boolean | undefined;
1004
1083
  actions?: {
1084
+ open?: boolean | {
1085
+ enabled?: boolean | undefined;
1086
+ label?: string | undefined;
1087
+ icon?: string | undefined;
1088
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1089
+ } | undefined;
1005
1090
  add?: boolean | {
1006
1091
  enabled?: boolean | undefined;
1007
1092
  label?: string | undefined;
@@ -1045,12 +1130,19 @@ view: "tree-gantt";
1045
1130
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
1046
1131
  dependencyGraph?: boolean | undefined;
1047
1132
  fullWidth?: boolean | undefined;
1133
+ clickable?: boolean | undefined;
1048
1134
  rowActions?: {
1049
1135
  enabled: boolean;
1050
1136
  position?: "before-index" | "after-index" | "end" | undefined;
1051
1137
  dropdownThreshold?: number | undefined;
1052
1138
  forceDropdown?: boolean | undefined;
1053
1139
  actions?: {
1140
+ open?: boolean | {
1141
+ enabled?: boolean | undefined;
1142
+ label?: string | undefined;
1143
+ icon?: string | undefined;
1144
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1145
+ } | undefined;
1054
1146
  add?: boolean | {
1055
1147
  enabled?: boolean | undefined;
1056
1148
  label?: string | undefined;
@@ -1092,12 +1184,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
1092
1184
  }, TableConfig | {
1093
1185
  view?: "uncounted" | "list" | "list-expansion" | undefined;
1094
1186
  fullWidth?: boolean | undefined;
1187
+ clickable?: boolean | undefined;
1095
1188
  rowActions?: {
1096
1189
  enabled: boolean;
1097
1190
  position?: "before-index" | "after-index" | "end" | undefined;
1098
1191
  dropdownThreshold?: number | undefined;
1099
1192
  forceDropdown?: boolean | undefined;
1100
1193
  actions?: {
1194
+ open?: boolean | {
1195
+ enabled?: boolean | undefined;
1196
+ label?: string | undefined;
1197
+ icon?: string | undefined;
1198
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1199
+ } | undefined;
1101
1200
  add?: boolean | {
1102
1201
  enabled?: boolean | undefined;
1103
1202
  label?: string | undefined;
@@ -1140,12 +1239,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
1140
1239
  view: "tree";
1141
1240
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
1142
1241
  fullWidth?: boolean | undefined;
1242
+ clickable?: boolean | undefined;
1143
1243
  rowActions?: {
1144
1244
  enabled: boolean;
1145
1245
  position?: "before-index" | "after-index" | "end" | undefined;
1146
1246
  dropdownThreshold?: number | undefined;
1147
1247
  forceDropdown?: boolean | undefined;
1148
1248
  actions?: {
1249
+ open?: boolean | {
1250
+ enabled?: boolean | undefined;
1251
+ label?: string | undefined;
1252
+ icon?: string | undefined;
1253
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1254
+ } | undefined;
1149
1255
  add?: boolean | {
1150
1256
  enabled?: boolean | undefined;
1151
1257
  label?: string | undefined;
@@ -1188,12 +1294,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
1188
1294
  view: "gantt";
1189
1295
  dependencyGraph?: boolean | undefined;
1190
1296
  fullWidth?: boolean | undefined;
1297
+ clickable?: boolean | undefined;
1191
1298
  rowActions?: {
1192
1299
  enabled: boolean;
1193
1300
  position?: "before-index" | "after-index" | "end" | undefined;
1194
1301
  dropdownThreshold?: number | undefined;
1195
1302
  forceDropdown?: boolean | undefined;
1196
1303
  actions?: {
1304
+ open?: boolean | {
1305
+ enabled?: boolean | undefined;
1306
+ label?: string | undefined;
1307
+ icon?: string | undefined;
1308
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1309
+ } | undefined;
1197
1310
  add?: boolean | {
1198
1311
  enabled?: boolean | undefined;
1199
1312
  label?: string | undefined;
@@ -1237,12 +1350,19 @@ view: "tree-gantt";
1237
1350
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
1238
1351
  dependencyGraph?: boolean | undefined;
1239
1352
  fullWidth?: boolean | undefined;
1353
+ clickable?: boolean | undefined;
1240
1354
  rowActions?: {
1241
1355
  enabled: boolean;
1242
1356
  position?: "before-index" | "after-index" | "end" | undefined;
1243
1357
  dropdownThreshold?: number | undefined;
1244
1358
  forceDropdown?: boolean | undefined;
1245
1359
  actions?: {
1360
+ open?: boolean | {
1361
+ enabled?: boolean | undefined;
1362
+ label?: string | undefined;
1363
+ icon?: string | undefined;
1364
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1365
+ } | undefined;
1246
1366
  add?: boolean | {
1247
1367
  enabled?: boolean | undefined;
1248
1368
  label?: string | undefined;
@@ -1547,12 +1667,19 @@ colspan?: number | undefined;
1547
1667
  config: Ref< {
1548
1668
  view?: "uncounted" | "list" | "list-expansion" | undefined;
1549
1669
  fullWidth?: boolean | undefined;
1670
+ clickable?: boolean | undefined;
1550
1671
  rowActions?: {
1551
1672
  enabled: boolean;
1552
1673
  position?: "before-index" | "after-index" | "end" | undefined;
1553
1674
  dropdownThreshold?: number | undefined;
1554
1675
  forceDropdown?: boolean | undefined;
1555
1676
  actions?: {
1677
+ open?: boolean | {
1678
+ enabled?: boolean | undefined;
1679
+ label?: string | undefined;
1680
+ icon?: string | undefined;
1681
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1682
+ } | undefined;
1556
1683
  add?: boolean | {
1557
1684
  enabled?: boolean | undefined;
1558
1685
  label?: string | undefined;
@@ -1595,12 +1722,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
1595
1722
  view: "tree";
1596
1723
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
1597
1724
  fullWidth?: boolean | undefined;
1725
+ clickable?: boolean | undefined;
1598
1726
  rowActions?: {
1599
1727
  enabled: boolean;
1600
1728
  position?: "before-index" | "after-index" | "end" | undefined;
1601
1729
  dropdownThreshold?: number | undefined;
1602
1730
  forceDropdown?: boolean | undefined;
1603
1731
  actions?: {
1732
+ open?: boolean | {
1733
+ enabled?: boolean | undefined;
1734
+ label?: string | undefined;
1735
+ icon?: string | undefined;
1736
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1737
+ } | undefined;
1604
1738
  add?: boolean | {
1605
1739
  enabled?: boolean | undefined;
1606
1740
  label?: string | undefined;
@@ -1643,12 +1777,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
1643
1777
  view: "gantt";
1644
1778
  dependencyGraph?: boolean | undefined;
1645
1779
  fullWidth?: boolean | undefined;
1780
+ clickable?: boolean | undefined;
1646
1781
  rowActions?: {
1647
1782
  enabled: boolean;
1648
1783
  position?: "before-index" | "after-index" | "end" | undefined;
1649
1784
  dropdownThreshold?: number | undefined;
1650
1785
  forceDropdown?: boolean | undefined;
1651
1786
  actions?: {
1787
+ open?: boolean | {
1788
+ enabled?: boolean | undefined;
1789
+ label?: string | undefined;
1790
+ icon?: string | undefined;
1791
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1792
+ } | undefined;
1652
1793
  add?: boolean | {
1653
1794
  enabled?: boolean | undefined;
1654
1795
  label?: string | undefined;
@@ -1692,12 +1833,19 @@ view: "tree-gantt";
1692
1833
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
1693
1834
  dependencyGraph?: boolean | undefined;
1694
1835
  fullWidth?: boolean | undefined;
1836
+ clickable?: boolean | undefined;
1695
1837
  rowActions?: {
1696
1838
  enabled: boolean;
1697
1839
  position?: "before-index" | "after-index" | "end" | undefined;
1698
1840
  dropdownThreshold?: number | undefined;
1699
1841
  forceDropdown?: boolean | undefined;
1700
1842
  actions?: {
1843
+ open?: boolean | {
1844
+ enabled?: boolean | undefined;
1845
+ label?: string | undefined;
1846
+ icon?: string | undefined;
1847
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1848
+ } | undefined;
1701
1849
  add?: boolean | {
1702
1850
  enabled?: boolean | undefined;
1703
1851
  label?: string | undefined;
@@ -1739,12 +1887,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
1739
1887
  }, TableConfig | {
1740
1888
  view?: "uncounted" | "list" | "list-expansion" | undefined;
1741
1889
  fullWidth?: boolean | undefined;
1890
+ clickable?: boolean | undefined;
1742
1891
  rowActions?: {
1743
1892
  enabled: boolean;
1744
1893
  position?: "before-index" | "after-index" | "end" | undefined;
1745
1894
  dropdownThreshold?: number | undefined;
1746
1895
  forceDropdown?: boolean | undefined;
1747
1896
  actions?: {
1897
+ open?: boolean | {
1898
+ enabled?: boolean | undefined;
1899
+ label?: string | undefined;
1900
+ icon?: string | undefined;
1901
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1902
+ } | undefined;
1748
1903
  add?: boolean | {
1749
1904
  enabled?: boolean | undefined;
1750
1905
  label?: string | undefined;
@@ -1787,12 +1942,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
1787
1942
  view: "tree";
1788
1943
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
1789
1944
  fullWidth?: boolean | undefined;
1945
+ clickable?: boolean | undefined;
1790
1946
  rowActions?: {
1791
1947
  enabled: boolean;
1792
1948
  position?: "before-index" | "after-index" | "end" | undefined;
1793
1949
  dropdownThreshold?: number | undefined;
1794
1950
  forceDropdown?: boolean | undefined;
1795
1951
  actions?: {
1952
+ open?: boolean | {
1953
+ enabled?: boolean | undefined;
1954
+ label?: string | undefined;
1955
+ icon?: string | undefined;
1956
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
1957
+ } | undefined;
1796
1958
  add?: boolean | {
1797
1959
  enabled?: boolean | undefined;
1798
1960
  label?: string | undefined;
@@ -1835,12 +1997,19 @@ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => voi
1835
1997
  view: "gantt";
1836
1998
  dependencyGraph?: boolean | undefined;
1837
1999
  fullWidth?: boolean | undefined;
2000
+ clickable?: boolean | undefined;
1838
2001
  rowActions?: {
1839
2002
  enabled: boolean;
1840
2003
  position?: "before-index" | "after-index" | "end" | undefined;
1841
2004
  dropdownThreshold?: number | undefined;
1842
2005
  forceDropdown?: boolean | undefined;
1843
2006
  actions?: {
2007
+ open?: boolean | {
2008
+ enabled?: boolean | undefined;
2009
+ label?: string | undefined;
2010
+ icon?: string | undefined;
2011
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
2012
+ } | undefined;
1844
2013
  add?: boolean | {
1845
2014
  enabled?: boolean | undefined;
1846
2015
  label?: string | undefined;
@@ -1884,12 +2053,19 @@ view: "tree-gantt";
1884
2053
  defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
1885
2054
  dependencyGraph?: boolean | undefined;
1886
2055
  fullWidth?: boolean | undefined;
2056
+ clickable?: boolean | undefined;
1887
2057
  rowActions?: {
1888
2058
  enabled: boolean;
1889
2059
  position?: "before-index" | "after-index" | "end" | undefined;
1890
2060
  dropdownThreshold?: number | undefined;
1891
2061
  forceDropdown?: boolean | undefined;
1892
2062
  actions?: {
2063
+ open?: boolean | {
2064
+ enabled?: boolean | undefined;
2065
+ label?: string | undefined;
2066
+ icon?: string | undefined;
2067
+ handler?: ((rowIndex: number, store: ReturnType<typeof createTableStore>) => void | boolean) | undefined;
2068
+ } | undefined;
1893
2069
  add?: boolean | {
1894
2070
  enabled?: boolean | undefined;
1895
2071
  label?: string | undefined;
@@ -2301,6 +2477,8 @@ export declare function install(app: App): void;
2301
2477
 
2302
2478
  export { MoveIcon }
2303
2479
 
2480
+ export { OpenIcon }
2481
+
2304
2482
  /**
2305
2483
  * Options for configuring individual row actions.
2306
2484
  * @public
@@ -2365,6 +2543,7 @@ export declare interface RowActionsConfig {
2365
2543
  * false to disable, or provide RowActionOptions for custom configuration.
2366
2544
  */
2367
2545
  actions?: {
2546
+ open?: boolean | RowActionOptions;
2368
2547
  add?: boolean | RowActionOptions;
2369
2548
  delete?: boolean | RowActionOptions;
2370
2549
  duplicate?: boolean | RowActionOptions;
@@ -2378,17 +2557,34 @@ export declare interface RowActionsConfig {
2378
2557
  * Row action type identifiers.
2379
2558
  * @public
2380
2559
  */
2381
- export declare type RowActionType = 'add' | 'delete' | 'duplicate' | 'insertAbove' | 'insertBelow' | 'move';
2560
+ export declare type RowActionType = 'open' | 'add' | 'delete' | 'duplicate' | 'insertAbove' | 'insertBelow' | 'move';
2382
2561
 
2383
2562
  /**
2384
2563
  * Event payload for row:add event.
2385
2564
  * @public
2386
2565
  */
2387
2566
  export declare interface RowAddEvent {
2388
- /** The index at which the row was added */
2567
+ /** The index of the newly added row. */
2389
2568
  rowIndex: number;
2390
- /** The row object that was added */
2569
+ /** The data for the newly added row. */
2570
+ row: TableRow;
2571
+ }
2572
+
2573
+ /**
2574
+ * Event payload for row:click and row:open events.
2575
+ * @public
2576
+ */
2577
+ export declare interface RowClickEvent {
2578
+ /** The data of the clicked row. */
2391
2579
  row: TableRow;
2580
+ /** The index of the clicked row. */
2581
+ rowIndex: number;
2582
+ /**
2583
+ * The originating DOM MouseEvent. Present for all real user interactions.
2584
+ * Inspect `event.ctrlKey` / `event.metaKey` for new-tab navigation,
2585
+ * `event.button === 1` for middle-click, etc.
2586
+ */
2587
+ event?: MouseEvent;
2392
2588
  }
2393
2589
 
2394
2590
  /**
@@ -2396,9 +2592,9 @@ export declare interface RowAddEvent {
2396
2592
  * @public
2397
2593
  */
2398
2594
  export declare interface RowDeleteEvent {
2399
- /** The index of the row that was deleted */
2595
+ /** The index of the deleted row (before deletion). */
2400
2596
  rowIndex: number;
2401
- /** The row object that was deleted */
2597
+ /** The data of the deleted row. */
2402
2598
  row: TableRow;
2403
2599
  }
2404
2600
 
@@ -2407,11 +2603,11 @@ export declare interface RowDeleteEvent {
2407
2603
  * @public
2408
2604
  */
2409
2605
  export declare interface RowDuplicateEvent {
2410
- /** The index of the original row that was duplicated */
2606
+ /** The index of the original row that was duplicated. */
2411
2607
  sourceIndex: number;
2412
- /** The index of the newly created duplicate row */
2608
+ /** The index of the newly created duplicate row. */
2413
2609
  newIndex: number;
2414
- /** The new duplicate row object */
2610
+ /** The data of the newly created duplicate row. */
2415
2611
  row: TableRow;
2416
2612
  }
2417
2613
 
@@ -2420,11 +2616,11 @@ export declare interface RowDuplicateEvent {
2420
2616
  * @public
2421
2617
  */
2422
2618
  export declare interface RowInsertEvent {
2423
- /** The index of the row relative to which the insertion was made */
2619
+ /** The index of the reference row relative to which the new row was inserted. */
2424
2620
  targetIndex: number;
2425
- /** The index of the newly inserted row */
2621
+ /** The index at which the new row was inserted. */
2426
2622
  newIndex: number;
2427
- /** The newly inserted row object */
2623
+ /** The data of the newly inserted row. */
2428
2624
  row: TableRow;
2429
2625
  }
2430
2626
 
@@ -2433,9 +2629,9 @@ export declare interface RowInsertEvent {
2433
2629
  * @public
2434
2630
  */
2435
2631
  export declare interface RowMoveEvent {
2436
- /** The original index of the row before the move */
2632
+ /** The index the row was moved from. */
2437
2633
  fromIndex: number;
2438
- /** The destination index of the row after the move */
2634
+ /** The index the row was moved to. */
2439
2635
  toIndex: number;
2440
2636
  }
2441
2637