quill-table-up 3.1.2 → 3.2.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/README.md +7 -0
- package/dist/index.css +1 -1
- package/dist/index.d.ts +168 -146
- package/dist/index.js +47 -47
- package/dist/index.js.map +1 -1
- package/dist/index.umd.js +52 -52
- package/dist/index.umd.js.map +1 -1
- package/package.json +22 -24
- package/src/__tests__/e2e/custom-creator.test.ts +44 -44
- package/src/__tests__/e2e/editor-page.ts +77 -77
- package/src/__tests__/e2e/table-align.test.ts +104 -104
- package/src/__tests__/e2e/table-blots.test.ts +169 -169
- package/src/__tests__/e2e/table-caption.test.ts +134 -134
- package/src/__tests__/e2e/table-clipboard.test.ts +20 -20
- package/src/__tests__/e2e/table-hack.test.ts +151 -151
- package/src/__tests__/e2e/table-keyboard-handler.test.ts +12 -3
- package/src/__tests__/e2e/table-menu.test.ts +172 -172
- package/src/__tests__/e2e/table-resize.test.ts +654 -9
- package/src/__tests__/e2e/table-scrollbar.test.ts +144 -144
- package/src/__tests__/e2e/table-selection.test.ts +563 -563
- package/src/__tests__/e2e/types.d.ts +7 -7
- package/src/__tests__/e2e/utils.ts +52 -52
- package/src/__tests__/unit/table-blots.test.ts +720 -720
- package/src/__tests__/unit/table-caption.test.ts +234 -234
- package/src/__tests__/unit/table-cell-merge.test.ts +724 -724
- package/src/__tests__/unit/table-clipboard.test.ts +2176 -2176
- package/src/__tests__/unit/table-hack.test.ts +1014 -1014
- package/src/__tests__/unit/table-insert.test.ts +926 -926
- package/src/__tests__/unit/table-redo-undo.test.ts +2429 -2429
- package/src/__tests__/unit/table-remove.test.ts +343 -343
- package/src/__tests__/unit/utils.test-d.ts +49 -49
- package/src/__tests__/unit/utils.test.ts +711 -711
- package/src/__tests__/unit/utils.ts +307 -307
- package/src/__tests__/unit/vitest.d.ts +14 -14
- package/src/formats/container-format.ts +107 -107
- package/src/formats/overrides/block-embed.ts +72 -72
- package/src/formats/overrides/block.ts +95 -95
- package/src/formats/overrides/index.ts +3 -3
- package/src/formats/overrides/scroll.ts +70 -70
- package/src/formats/table-body-format.ts +52 -52
- package/src/formats/table-caption-format.ts +116 -116
- package/src/formats/table-cell-format.ts +304 -304
- package/src/formats/table-cell-inner-format.ts +403 -398
- package/src/formats/table-colgroup-format.ts +136 -136
- package/src/formats/table-foot-format.ts +7 -7
- package/src/formats/table-head-format.ts +7 -7
- package/src/formats/table-main-format.ts +1 -1
- package/src/formats/table-row-format.ts +218 -210
- package/src/formats/utils.ts +6 -6
- package/src/index.ts +19 -19
- package/src/modules/index.ts +7 -7
- package/src/modules/table-align.ts +131 -131
- package/src/modules/table-clipboard/table-clipboard.ts +6 -8
- package/src/modules/table-dom-selector.ts +33 -33
- package/src/modules/table-menu/constants.ts +223 -223
- package/src/modules/table-menu/index.ts +4 -4
- package/src/modules/table-menu/table-menu-common.ts +330 -329
- package/src/modules/table-menu/table-menu-contextmenu.ts +111 -118
- package/src/modules/table-menu/table-menu-select.ts +96 -94
- package/src/modules/table-resize/index.ts +5 -5
- package/src/modules/table-resize/table-resize-box.ts +714 -363
- package/src/modules/table-resize/table-resize-common.ts +246 -382
- package/src/modules/table-resize/table-resize-drag.ts +241 -0
- package/src/modules/table-resize/table-resize-line.ts +244 -182
- package/src/modules/table-resize/table-resize-scale.ts +174 -173
- package/src/modules/table-resize/utils.ts +84 -3
- package/src/modules/table-scrollbar.ts +292 -292
- package/src/modules/table-selection.ts +613 -669
- package/src/style/button.less +45 -45
- package/src/style/color-picker.less +136 -136
- package/src/style/dialog.less +53 -53
- package/src/style/functions.less +9 -9
- package/src/style/index.less +120 -120
- package/src/style/input.less +64 -64
- package/src/style/select-box.less +52 -52
- package/src/style/table-creator.less +56 -56
- package/src/style/table-menu.less +125 -125
- package/src/style/table-resize-scale.less +31 -31
- package/src/style/table-resize.less +249 -202
- package/src/style/table-scrollbar.less +49 -49
- package/src/style/table-selection.less +23 -23
- package/src/style/tooltip.less +19 -19
- package/src/style/variables.less +1 -1
- package/src/svg/arrow-up-down.svg +11 -11
- package/src/svg/convert-cell.svg +7 -7
- package/src/table-up.ts +1360 -1360
- package/src/types.d.ts +4 -4
- package/src/utils/bem.ts +23 -23
- package/src/utils/blot-helper.ts +101 -105
- package/src/utils/color.ts +109 -109
- package/src/utils/components/button.ts +22 -22
- package/src/utils/components/color-picker.ts +236 -236
- package/src/utils/components/dialog.ts +83 -41
- package/src/utils/components/index.ts +6 -6
- package/src/utils/components/input.ts +74 -74
- package/src/utils/components/table/creator.ts +89 -89
- package/src/utils/components/table/index.ts +2 -2
- package/src/utils/components/table/select-box.ts +78 -78
- package/src/utils/components/tooltip.ts +179 -189
- package/src/utils/constants.ts +125 -124
- package/src/utils/drag-helper.ts +112 -0
- package/src/utils/index.ts +15 -14
- package/src/utils/is.ts +9 -9
- package/src/utils/position.ts +60 -60
- package/src/utils/resize-observer-helper.ts +47 -47
- package/src/utils/scroll.ts +145 -47
- package/src/utils/style-helper.ts +47 -47
- package/src/utils/transformer.ts +10 -10
- package/src/utils/transition-event-helper.ts +8 -8
- package/src/utils/types.ts +156 -157
- package/src/utils/utils.ts +12 -12
package/README.md
CHANGED
|
@@ -132,6 +132,13 @@ The table cell selection handler
|
|
|
132
132
|
|
|
133
133
|
The table cell resize handler
|
|
134
134
|
|
|
135
|
+
#### TableResizeBox Options
|
|
136
|
+
|
|
137
|
+
| Attribute | Description | Type | Default |
|
|
138
|
+
| --------- | ------------------------------------------------- | --------- | ------- |
|
|
139
|
+
| size | bounding box size(px) | `number` | `12` |
|
|
140
|
+
| draggable | allow drag bounding box head to sort content cell | `boolean` | `true` |
|
|
141
|
+
|
|
135
142
|
### TableMenuContextmenu / TableMenuSelect
|
|
136
143
|
|
|
137
144
|
The table operate menu
|
package/dist/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.ql-toolbar .ql-picker:not(.ql-color-picker):not(.ql-icon-picker).ql-table-up{width:28px}.ql-toolbar .ql-picker:not(.ql-color-picker):not(.ql-icon-picker).ql-table-up .ql-picker-label{padding:2px 4px}.ql-toolbar .ql-picker:not(.ql-color-picker):not(.ql-icon-picker).ql-table-up .ql-picker-label svg{position:static;margin-top:0}.ql-toolbar .ql-picker.ql-expanded .ql-picker-options{z-index:1}.ql-editor .ql-table{display:table;border-collapse:collapse;table-layout:fixed;width:auto}.ql-editor .ql-table[data-full]{width:100%}.ql-editor .ql-table-wrapper{width:100%;overflow:auto}.ql-editor .ql-table-caption{position:relative;word-break:break-word;outline:0}.ql-editor .ql-table-caption .ql-table-caption--switch{display:flex;align-items:center;justify-content:center;padding:2px;border-radius:4px;border:1px solid #0003;font-size:12px;cursor:pointer;background-color:#fff}.ql-editor .ql-table-caption .ql-table-caption--switch:hover{background-color:#eee}.ql-editor .ql-table-cell{padding:8px 12px;border-color:transparent;font-size:14px;outline:0;overflow:auto}.ql-editor .ql-table-cell-inner{display:inline-block;min-width:100%;word-break:break-word;outline:0;counter-reset:list-0}.ql-editor .ql-table col{border-collapse:separate;text-indent:initial;display:table-column;table-layout:fixed}.ql-editor .ql-table tr+tr td,.ql-editor .ql-table tr+tr th{border-top:none}.ql-editor .ql-table td,.ql-editor .ql-table th{border:1px solid #a1a1aa}.ql-editor .ql-table td+td,.ql-editor .ql-table td+th,.ql-editor .ql-table th+td,.ql-editor .ql-table th+th{border-left:none}.table-up-toolbox{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.table-up-toolbox *{pointer-events:all}.table-up-tooltip{position:absolute;z-index:20;padding:.25rem .75rem;border-radius:.25rem;font-size:.75rem;color:#fff;white-space:nowrap;background-color:#303133;transition:opacity .15s linear}.table-up-tooltip.transparent{opacity:0}.table-up-tooltip.hidden{display:none}.table-up-button{--table-btn-color:#606266;--table-btn-bg-hover:#f3f4f6;--table-btn-color-border:#dcdfe6;--table-btn-border:0.0625rem solid var(--table-btn-color-border);--table-btn-confirm-color-border:#409eff;--table-btn-confirm-bg:#409eff;--table-btn-confirm-hover:#79bbff;--table-btn-confirm-outline-focus-visible:0.125rem solid #a0cfff;box-sizing:border-box;display:inline-flex;height:2rem;line-height:1;margin:0;padding:.5rem 1rem;border-radius:.25rem;border:var(--table-btn-border);color:var(--table-btn-color);background-color:transparent;font-size:.875rem;cursor:pointer}.table-up-button+.table-up-button{margin-left:.375rem}.table-up-button:hover{background-color:var(--table-btn-bg-hover)}.table-up-button.confirm{border-color:var(--table-btn-confirm-color-border);background-color:var(--table-btn-confirm-bg);color:#fff}.table-up-button.confirm:hover{border-color:var(--table-btn-confirm-hover);background-color:var(--table-btn-confirm-hover)}.table-up-button.confirm:focus-visible{outline:var(--table-btn-confirm-outline-focus-visible);outline-offset:.0625rem}.table-up-dialog{--dialog-bg:rgba(0, 0, 0, 0.5);--dialog-color-border:#ebeef5;--dialog-color-boxshadow:rgba(0, 0, 0, 0.12);--dialog-border:0.0625rem solid var(--dialog-color-border);--dialog-boxshadow:0 0 0.75rem var(--dialog-color-boxshadow);position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;height:100%;background-color:var(--dialog-bg);overflow:auto}.table-up-dialog__overlay{position:fixed;top:0;right:0;bottom:0;left:0;padding:1rem;overflow:auto;text-align:center}.table-up-dialog__overlay::after{content:'';display:inline-block;height:100%;width:0;vertical-align:middle}.table-up-dialog__content{display:inline-block;max-width:50vw;width:100%;vertical-align:middle;background-color:#fff;border-radius:.25rem;border:var(--dialog-border);font-size:1.125rem;box-shadow:var(--dialog-boxshadow);text-align:left;overflow:hidden;box-sizing:border-box}.table-up-color-picker{--color-picker-bg-color:#ffffff;box-sizing:border-box;display:inline-flex;flex-direction:column;width:16.75rem;padding:.5rem;border-radius:.375rem;background:var(--color-picker-bg-color);box-shadow:0 0 .375rem #b2b5b8}.table-up-color-picker__content{box-sizing:border-box;width:100%;height:11.75rem;padding-top:.5rem}.table-up-color-picker__selector{width:14.375rem;height:9.375rem;position:absolute}.table-up-color-picker__background{width:100%;height:100%;background:linear-gradient(to top,#000 0,rgba(0,0,0,0) 100%),linear-gradient(to right,#fff 0,rgba(255,255,255,0) 100%)}.table-up-color-picker__background-handle{box-sizing:border-box;position:absolute;border:.0625rem solid #fff;cursor:pointer;top:0;left:14.375rem;border-radius:100%;width:.625rem;height:.625rem;transform:translate(-.3125rem,-.3125rem)}.table-up-color-picker__hue{width:.75rem;height:9.375rem;margin-left:15rem;position:absolute;background:linear-gradient(0deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.table-up-color-picker__hue-handle{box-sizing:border-box;position:absolute;border:.0625rem solid #fff;cursor:pointer;background-color:#fff;box-shadow:0 0 .125rem #0009;left:0;width:1rem;height:.625rem;transform:translate(-.125rem,-.3125rem)}.table-up-color-picker__alpha{width:14.375rem;height:.75rem;position:absolute;margin-top:10rem;background:linear-gradient(45deg,#ccc 25%,transparent 25%),linear-gradient(135deg,#ccc 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#ccc 75%),linear-gradient(135deg,transparent 75%,#ccc 75%);background-size:.75rem .75rem;background-position:0 0,.375rem 0,.375rem -.375rem,0 .375rem}.table-up-color-picker__alpha-bg{position:relative;height:100%;background:linear-gradient(to right,rgba(255,255,255,0) 0,#fff 100%)}.table-up-color-picker__alpha-handle{box-sizing:border-box;position:absolute;border:.0625rem solid #fff;cursor:pointer;background-color:#fff;box-shadow:0 0 .125rem #0009;top:0;width:.625rem;height:1rem;transform:translate(-.3125rem,-.125rem)}.table-up-color-picker__action{box-sizing:border-box;display:flex;align-items:center;gap:.375rem;width:100%;padding-top:.5rem;border-top:.0625rem solid #e9ecef}.table-up-color-picker__action-item{flex:1;display:inline-flex;align-items:center;font-size:.75rem}.table-up-color-picker__input{box-sizing:border-box;width:100%;height:1.375rem;margin-left:.125rem;padding:.125rem 0 .125rem .25rem;background-color:#fff;border:.0625rem solid #ced4da;border-radius:.25rem;outline:0;color:#405057}.table-up-tooltip .table-up-color-picker{--color-picker-bg-color:transparent;box-shadow:none;width:15.75rem;padding:.5rem 0}.ql-container .table-up-selection{--select-color:#0589f340;display:none;position:absolute;overflow:hidden;pointer-events:none}.ql-container .table-up-selection__line{position:absolute;background-color:var(--select-color);pointer-events:none}.table-up-resize-line__col,.table-up-resize-line__row{position:absolute;z-index:0}.table-up-resize-line__col.is-hidden,.table-up-resize-line__row.is-hidden{display:none}.table-up-resize-line__col::after,.table-up-resize-line__col::before,.table-up-resize-line__row::after,.table-up-resize-line__row::before{content:'';display:block;position:absolute;top:0;z-index:1}.table-up-resize-line__row{height:.0625rem;cursor:ns-resize}.table-up-resize-line__row::after,.table-up-resize-line__row::before{width:100%;height:.5rem}.table-up-resize-line__row::before{transform:translateY(-.5rem)}.table-up-resize-line__col{width:.0625rem;cursor:ew-resize}.table-up-resize-line__col::after,.table-up-resize-line__col::before{height:100%;width:.5rem}.table-up-resize-line__col::before{transform:translateX(-.5rem)}.table-up-resize-box{position:absolute;z-index:0}.table-up-resize-box.is-hidden{display:none}.table-up-resize-box.is-caption-bottom .table-up-resize-box__corner{border-top-width:0;border-bottom-width:.0625rem;border-top-left-radius:0;border-bottom-left-radius:50%}.table-up-resize-box.is-align-right .table-up-resize-box__col-separator{left:-.125rem}.table-up-resize-box.is-align-right .table-up-resize-box__corner{border-left-width:0;border-right-width:.0625rem;border-top-left-radius:0;border-top-right-radius:50%}.table-up-resize-box.is-align-right.is-caption-bottom .table-up-resize-box__corner{border-top-right-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:50%}.table-up-resize-box__col,.table-up-resize-box__row{position:absolute;top:0;left:0;overflow:hidden;display:flex}.table-up-resize-box__col-wrapper,.table-up-resize-box__row-wrapper{display:flex}.table-up-resize-box__col-header,.table-up-resize-box__row-header{position:relative;flex-shrink:0;background-color:#f3f4f5;border:.0625rem solid #ccc}.table-up-resize-box__col-wrapper{height:100%}.table-up-resize-box__col-header{height:100%;cursor:pointer;border-right-color:transparent}.table-up-resize-box__col-header:last-child{border-right-color:#ccc}.table-up-resize-box__col-separator{position:absolute;top:0;bottom:0;right:-.125rem;width:.125rem;cursor:ew-resize;z-index:0}.table-up-resize-box__col-separator::after{right:-.375rem}.table-up-resize-box__col-separator::before{left:-.375rem}.table-up-resize-box__col-separator::after,.table-up-resize-box__col-separator::before{content:'';position:absolute;top:0;display:block;width:.5rem;height:100%;z-index:1}.table-up-resize-box__row-wrapper{flex-direction:column;width:100%}.table-up-resize-box__row-header{width:100%;cursor:pointer;border-bottom-color:transparent}.table-up-resize-box__row-header:last-child{border-bottom-color:#ccc}.table-up-resize-box__row-separator{position:absolute;left:0;right:0;bottom:-.125rem;height:.125rem;cursor:ns-resize;z-index:0}.table-up-resize-box__row-separator::after{bottom:-.375rem}.table-up-resize-box__row-separator::before{top:-.375rem}.table-up-resize-box__row-separator::after,.table-up-resize-box__row-separator::before{content:'';position:absolute;left:0;display:block;width:100%;height:.5rem;z-index:1}.table-up-resize-box__corner{position:absolute;top:0;left:0;background-color:#f3f4f5;border:.0625rem solid #ccc;border-right-width:0;border-bottom-width:0;border-top-left-radius:50%;cursor:pointer}.table-up-drag-line{position:fixed;z-index:0;background-color:#409eff}.table-up-drag-line.is-col{width:.125rem;cursor:ew-resize}.table-up-drag-line.is-row{height:.125rem;cursor:ns-resize}.table-up-scale{position:absolute;top:0;left:0;overflow:hidden;pointer-events:none}.table-up-scale__block{position:absolute;top:0;left:0;transform:translate(-100%,-100%);width:.75rem;height:.75rem;background-color:#f1f5f9;border:.0625rem solid grey;cursor:nwse-resize;pointer-events:all}.table-up-scale.is-align-right .table-up-scale__block{cursor:nesw-resize}.table-up-scale.is-hidden{display:none}.table-up-scrollbar{position:absolute;z-index:1;transition:opacity .15s linear}.table-up-scrollbar__container{position:relative}.table-up-scrollbar.is-transparent{opacity:0}.table-up-scrollbar.is-vertical{top:.125rem;bottom:.125rem;left:-.5rem;width:.375rem}.table-up-scrollbar.is-vertical .table-up-scrollbar__thumb{width:100%}.table-up-scrollbar.is-horizontal{bottom:.125rem;left:.125rem;right:.125rem;height:.375rem}.table-up-scrollbar.is-horizontal .table-up-scrollbar__thumb{height:100%}.table-up-scrollbar__thumb{border-radius:.3125rem;background-color:#d2d2d2;cursor:pointer}.table-up-scrollbar__thumb:hover{background-color:#a1a1aa}.table-up-scrollbar--virtual.ql-container .ql-table-wrapper{scrollbar-width:none}.table-up-align,.table-up-menu{position:absolute;z-index:1;display:flex;align-items:center;padding:.25rem;border-radius:.375rem;box-shadow:0 0 .5rem rgba(0,0,0,.5);background-color:#fff;font-size:.875rem}.table-up-align__item,.table-up-menu__item{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.25rem;border-radius:.25rem;cursor:pointer}.table-up-align__item:hover,.table-up-menu__item:hover{background-color:#eee}.table-up-align__item.is-break,.table-up-menu__item.is-break{align-self:stretch;width:.0625rem;padding:0;margin:.125rem .25rem;background-color:#a3a3a3;cursor:default}.table-up-align.is-hidden,.table-up-menu.is-hidden{display:none}.table-up-align .icon,.table-up-menu .icon{display:flex;flex-shrink:0;font-size:1.25rem}.table-up-align span,.table-up-menu span{text-wrap:nowrap}.table-up-menu.is-contextmenu{flex-direction:column;padding:.25rem .5rem;max-height:21.875rem;overflow-y:auto;overflow-x:hidden}.table-up-menu.is-contextmenu .table-up-menu__item{display:flex;justify-content:flex-start;width:100%;gap:.25rem;cursor:pointer}.table-up-menu.is-contextmenu .is-break{width:100%;height:.0625rem;flex-shrink:0;margin:.25rem 0;background-color:#a3a3a3}.table-up-align .icon{width:1.25rem;height:1.25rem}.table-up-color-map{display:flex;flex-direction:column}.table-up-color-map--used{display:flex;align-items:center;justify-content:center;flex-direction:row-reverse;margin-top:.25rem;padding-top:.25rem;border-top:.0625rem solid #ccc}.table-up-color-map__content{display:flex;flex-direction:column}.table-up-color-map__content-row{display:flex;align-items:center;justify-content:center;gap:.25rem}.table-up-color-map__item{width:.875rem;height:.875rem;margin:.125rem;border:.0625rem solid #a3a3a3;cursor:pointer}.table-up-color-map__btn{display:flex;align-items:center;justify-content:center;flex:1;height:1.25rem;padding:0 .375rem;color:#303133;background-color:#fff;cursor:pointer}.table-up-color-map__btn:hover{background-color:#edeeef}
|
|
1
|
+
.ql-toolbar .ql-picker:not(.ql-color-picker):not(.ql-icon-picker).ql-table-up{width:28px}.ql-toolbar .ql-picker:not(.ql-color-picker):not(.ql-icon-picker).ql-table-up .ql-picker-label{padding:2px 4px}.ql-toolbar .ql-picker:not(.ql-color-picker):not(.ql-icon-picker).ql-table-up .ql-picker-label svg{position:static;margin-top:0}.ql-toolbar .ql-picker.ql-expanded .ql-picker-options{z-index:1}.ql-editor .ql-table{display:table;border-collapse:collapse;table-layout:fixed;width:auto}.ql-editor .ql-table[data-full]{width:100%}.ql-editor .ql-table-wrapper{width:100%;overflow:auto}.ql-editor .ql-table-caption{position:relative;word-break:break-word;outline:0}.ql-editor .ql-table-caption .ql-table-caption--switch{display:flex;align-items:center;justify-content:center;padding:2px;border-radius:4px;border:1px solid #0003;font-size:12px;cursor:pointer;background-color:#fff}.ql-editor .ql-table-caption .ql-table-caption--switch:hover{background-color:#eee}.ql-editor .ql-table-cell{padding:8px 12px;border-color:transparent;font-size:14px;outline:0;overflow:auto}.ql-editor .ql-table-cell-inner{display:inline-block;min-width:100%;word-break:break-word;outline:0;counter-reset:list-0}.ql-editor .ql-table col{border-collapse:separate;text-indent:initial;display:table-column;table-layout:fixed}.ql-editor .ql-table tr+tr td,.ql-editor .ql-table tr+tr th{border-top:none}.ql-editor .ql-table td,.ql-editor .ql-table th{border:1px solid #a1a1aa}.ql-editor .ql-table td+td,.ql-editor .ql-table td+th,.ql-editor .ql-table th+td,.ql-editor .ql-table th+th{border-left:none}.table-up-toolbox{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.table-up-toolbox *{pointer-events:all}.table-up-tooltip{position:absolute;z-index:20;padding:.25rem .75rem;border-radius:.25rem;font-size:.75rem;color:#fff;white-space:nowrap;background-color:#303133;transition:opacity .15s linear}.table-up-tooltip.transparent{opacity:0}.table-up-tooltip.hidden{display:none}.table-up-button{--table-btn-color:#606266;--table-btn-bg-hover:#f3f4f6;--table-btn-color-border:#dcdfe6;--table-btn-border:0.0625rem solid var(--table-btn-color-border);--table-btn-confirm-color-border:#409eff;--table-btn-confirm-bg:#409eff;--table-btn-confirm-hover:#79bbff;--table-btn-confirm-outline-focus-visible:0.125rem solid #a0cfff;box-sizing:border-box;display:inline-flex;height:2rem;line-height:1;margin:0;padding:.5rem 1rem;border-radius:.25rem;border:var(--table-btn-border);color:var(--table-btn-color);background-color:transparent;font-size:.875rem;cursor:pointer}.table-up-button+.table-up-button{margin-left:.375rem}.table-up-button:hover{background-color:var(--table-btn-bg-hover)}.table-up-button.confirm{border-color:var(--table-btn-confirm-color-border);background-color:var(--table-btn-confirm-bg);color:#fff}.table-up-button.confirm:hover{border-color:var(--table-btn-confirm-hover);background-color:var(--table-btn-confirm-hover)}.table-up-button.confirm:focus-visible{outline:var(--table-btn-confirm-outline-focus-visible);outline-offset:.0625rem}.table-up-dialog{--dialog-bg:rgba(0, 0, 0, 0.5);--dialog-color-border:#ebeef5;--dialog-color-boxshadow:rgba(0, 0, 0, 0.12);--dialog-border:0.0625rem solid var(--dialog-color-border);--dialog-boxshadow:0 0 0.75rem var(--dialog-color-boxshadow);position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;height:100%;background-color:var(--dialog-bg);overflow:auto}.table-up-dialog__overlay{position:fixed;top:0;right:0;bottom:0;left:0;padding:1rem;overflow:auto;text-align:center}.table-up-dialog__overlay::after{content:'';display:inline-block;height:100%;width:0;vertical-align:middle}.table-up-dialog__content{display:inline-block;max-width:50vw;width:100%;vertical-align:middle;background-color:#fff;border-radius:.25rem;border:var(--dialog-border);font-size:1.125rem;box-shadow:var(--dialog-boxshadow);text-align:left;overflow:hidden;box-sizing:border-box}.table-up-color-picker{--color-picker-bg-color:#ffffff;box-sizing:border-box;display:inline-flex;flex-direction:column;width:16.75rem;padding:.5rem;border-radius:.375rem;background:var(--color-picker-bg-color);box-shadow:0 0 .375rem #b2b5b8}.table-up-color-picker__content{box-sizing:border-box;width:100%;height:11.75rem;padding-top:.5rem}.table-up-color-picker__selector{width:14.375rem;height:9.375rem;position:absolute}.table-up-color-picker__background{width:100%;height:100%;background:linear-gradient(to top,#000 0,rgba(0,0,0,0) 100%),linear-gradient(to right,#fff 0,rgba(255,255,255,0) 100%)}.table-up-color-picker__background-handle{box-sizing:border-box;position:absolute;border:.0625rem solid #fff;cursor:pointer;top:0;left:14.375rem;border-radius:100%;width:.625rem;height:.625rem;transform:translate(-.3125rem,-.3125rem)}.table-up-color-picker__hue{width:.75rem;height:9.375rem;margin-left:15rem;position:absolute;background:linear-gradient(0deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.table-up-color-picker__hue-handle{box-sizing:border-box;position:absolute;border:.0625rem solid #fff;cursor:pointer;background-color:#fff;box-shadow:0 0 .125rem #0009;left:0;width:1rem;height:.625rem;transform:translate(-.125rem,-.3125rem)}.table-up-color-picker__alpha{width:14.375rem;height:.75rem;position:absolute;margin-top:10rem;background:linear-gradient(45deg,#ccc 25%,transparent 25%),linear-gradient(135deg,#ccc 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#ccc 75%),linear-gradient(135deg,transparent 75%,#ccc 75%);background-size:.75rem .75rem;background-position:0 0,.375rem 0,.375rem -.375rem,0 .375rem}.table-up-color-picker__alpha-bg{position:relative;height:100%;background:linear-gradient(to right,rgba(255,255,255,0) 0,#fff 100%)}.table-up-color-picker__alpha-handle{box-sizing:border-box;position:absolute;border:.0625rem solid #fff;cursor:pointer;background-color:#fff;box-shadow:0 0 .125rem #0009;top:0;width:.625rem;height:1rem;transform:translate(-.3125rem,-.125rem)}.table-up-color-picker__action{box-sizing:border-box;display:flex;align-items:center;gap:.375rem;width:100%;padding-top:.5rem;border-top:.0625rem solid #e9ecef}.table-up-color-picker__action-item{flex:1;display:inline-flex;align-items:center;font-size:.75rem}.table-up-color-picker__input{box-sizing:border-box;width:100%;height:1.375rem;margin-left:.125rem;padding:.125rem 0 .125rem .25rem;background-color:#fff;border:.0625rem solid #ced4da;border-radius:.25rem;outline:0;color:#405057}.table-up-tooltip .table-up-color-picker{--color-picker-bg-color:transparent;box-shadow:none;width:15.75rem;padding:.5rem 0}.ql-container .table-up-selection{--select-color:#0589f340;display:none;position:absolute;overflow:hidden;pointer-events:none}.ql-container .table-up-selection__line{position:absolute;background-color:var(--select-color);pointer-events:none}.table-up-resize-line__col,.table-up-resize-line__row{position:absolute;z-index:0}.table-up-resize-line__col.is-hidden,.table-up-resize-line__row.is-hidden{display:none}.table-up-resize-line__col::after,.table-up-resize-line__col::before,.table-up-resize-line__row::after,.table-up-resize-line__row::before{content:'';display:block;position:absolute;top:0;z-index:1}.table-up-resize-line__row{height:.0625rem;cursor:ns-resize}.table-up-resize-line__row::after,.table-up-resize-line__row::before{width:100%;height:.5rem}.table-up-resize-line__row::before{transform:translateY(-.5rem)}.table-up-resize-line__col{width:.0625rem;cursor:ew-resize}.table-up-resize-line__col::after,.table-up-resize-line__col::before{height:100%;width:.5rem}.table-up-resize-line__col::before{transform:translateX(-.5rem)}.table-up-resize-box{position:absolute;z-index:0}.table-up-resize-box.is-hidden{display:none}.table-up-resize-box.is-caption-bottom .table-up-resize-box__corner{border-top-width:0;border-bottom-width:.0625rem;border-top-left-radius:0;border-bottom-left-radius:50%}.table-up-resize-box.is-align-right .table-up-resize-box__col-separator{left:-.125rem}.table-up-resize-box.is-align-right .table-up-resize-box__corner{border-left-width:0;border-right-width:.0625rem;border-top-left-radius:0;border-top-right-radius:50%}.table-up-resize-box.is-align-right.is-caption-bottom .table-up-resize-box__corner{border-top-right-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:50%}.table-up-resize-box__col,.table-up-resize-box__row{position:absolute;top:0;left:0;overflow:hidden;display:flex}.table-up-resize-box__col-wrapper,.table-up-resize-box__row-wrapper{display:flex}.table-up-resize-box__col-header,.table-up-resize-box__row-header{position:relative;flex-shrink:0;background-color:#f5f6f7;border:.0625rem solid #ccc}.table-up-resize-box__col-header:hover,.table-up-resize-box__row-header:hover{background-color:rgba(23,26,29,.1)}.table-up-resize-box__col-header.is-selected,.table-up-resize-box__row-header.is-selected{cursor:grab}.table-up-resize-box__col-header.is-selected:hover,.table-up-resize-box__row-header.is-selected:hover{background-color:#f5f6f7}.table-up-resize-box__col-wrapper{height:100%}.table-up-resize-box__col-header{height:100%;cursor:pointer;border-right-color:transparent}.table-up-resize-box__col-header:last-child{border-right-color:#ccc}.table-up-resize-box__col-separator{position:absolute;top:0;bottom:0;right:-.125rem;width:.125rem;cursor:ew-resize;z-index:0}.table-up-resize-box__col-separator::after{right:-.375rem}.table-up-resize-box__col-separator::before{left:-.375rem}.table-up-resize-box__col-separator::after,.table-up-resize-box__col-separator::before{content:'';position:absolute;top:0;display:block;width:.5rem;height:100%;z-index:1}.table-up-resize-box__row-wrapper{flex-direction:column;width:100%}.table-up-resize-box__row-header{width:100%;cursor:pointer;border-bottom-color:transparent}.table-up-resize-box__row-header:last-child{border-bottom-color:#ccc}.table-up-resize-box__row-separator{position:absolute;left:0;right:0;bottom:-.125rem;height:.125rem;cursor:ns-resize;z-index:0}.table-up-resize-box__row-separator::after{bottom:-.375rem}.table-up-resize-box__row-separator::before{top:-.375rem}.table-up-resize-box__row-separator::after,.table-up-resize-box__row-separator::before{content:'';position:absolute;left:0;display:block;width:100%;height:.5rem;z-index:1}.table-up-resize-box__corner{position:absolute;top:0;left:0;background-color:#f3f4f5;border:.0625rem solid #ccc;border-right-width:0;border-bottom-width:0;border-top-left-radius:50%;cursor:pointer}.table-up-drag{position:absolute;overflow:hidden;pointer-events:none}.table-up-drag__line{position:absolute;z-index:0;background-color:#409eff}.table-up-drag__line.is-col{width:.125rem;cursor:ew-resize}.table-up-drag__line.is-row{height:.125rem;cursor:ns-resize}.table-up-drag__placeholder{position:absolute;background-color:#04f2;pointer-events:none;z-index:0}.table-up-drag__placeholder.is-hidden{display:none}.table-up-drag__indicator{position:absolute;width:0;height:0;border:.0625rem solid #3f85ff;cursor:col-resize;z-index:0;opacity:0;transition:opacity .2s ease-in;pointer-events:none}.table-up-drag__tip{position:fixed;margin-left:-1.25rem;margin-top:-1.25rem;padding-top:1.25rem;padding-left:1.25rem;cursor:grabbing;z-index:1000}.table-up-drag__tip-content{width:6.25rem;height:1.5rem}.table-up-scale{position:absolute;top:0;left:0;overflow:hidden;pointer-events:none}.table-up-scale__block{position:absolute;top:0;left:0;transform:translate(-100%,-100%);width:.75rem;height:.75rem;background-color:#f1f5f9;border:.0625rem solid grey;cursor:nwse-resize;pointer-events:all}.table-up-scale.is-align-right .table-up-scale__block{cursor:nesw-resize}.table-up-scale.is-hidden{display:none}.table-up-scrollbar{position:absolute;z-index:1;transition:opacity .15s linear}.table-up-scrollbar__container{position:relative}.table-up-scrollbar.is-transparent{opacity:0}.table-up-scrollbar.is-vertical{top:.125rem;bottom:.125rem;left:-.5rem;width:.375rem}.table-up-scrollbar.is-vertical .table-up-scrollbar__thumb{width:100%}.table-up-scrollbar.is-horizontal{bottom:.125rem;left:.125rem;right:.125rem;height:.375rem}.table-up-scrollbar.is-horizontal .table-up-scrollbar__thumb{height:100%}.table-up-scrollbar__thumb{border-radius:.3125rem;background-color:#d2d2d2;cursor:pointer}.table-up-scrollbar__thumb:hover{background-color:#a1a1aa}.table-up-scrollbar--virtual.ql-container .ql-table-wrapper{scrollbar-width:none}.table-up-align,.table-up-menu{position:absolute;z-index:1;display:flex;align-items:center;padding:.25rem;border-radius:.375rem;box-shadow:0 0 .5rem rgba(0,0,0,.5);background-color:#fff;font-size:.875rem}.table-up-align__item,.table-up-menu__item{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.25rem;border-radius:.25rem;cursor:pointer}.table-up-align__item:hover,.table-up-menu__item:hover{background-color:#eee}.table-up-align__item.is-break,.table-up-menu__item.is-break{align-self:stretch;width:.0625rem;padding:0;margin:.125rem .25rem;background-color:#a3a3a3;cursor:default}.table-up-align.is-hidden,.table-up-menu.is-hidden{display:none}.table-up-align .icon,.table-up-menu .icon{display:flex;flex-shrink:0;font-size:1.25rem}.table-up-align span,.table-up-menu span{text-wrap:nowrap}.table-up-menu.is-contextmenu{flex-direction:column;padding:.25rem .5rem;max-height:21.875rem;overflow-y:auto;overflow-x:hidden}.table-up-menu.is-contextmenu .table-up-menu__item{display:flex;justify-content:flex-start;width:100%;gap:.25rem;cursor:pointer}.table-up-menu.is-contextmenu .is-break{width:100%;height:.0625rem;flex-shrink:0;margin:.25rem 0;background-color:#a3a3a3}.table-up-align .icon{width:1.25rem;height:1.25rem}.table-up-color-map{display:flex;flex-direction:column}.table-up-color-map--used{display:flex;align-items:center;justify-content:center;flex-direction:row-reverse;margin-top:.25rem;padding-top:.25rem;border-top:.0625rem solid #ccc}.table-up-color-map__content{display:flex;flex-direction:column}.table-up-color-map__content-row{display:flex;align-items:center;justify-content:center;gap:.25rem}.table-up-color-map__item{width:.875rem;height:.875rem;margin:.125rem;border:.0625rem solid #a3a3a3;cursor:pointer}.table-up-color-map__btn{display:flex;align-items:center;justify-content:center;flex:1;height:1.25rem;padding:0 .375rem;color:#303133;background-color:#fff;cursor:pointer}.table-up-color-map__btn:hover{background-color:#edeeef}
|
package/dist/index.d.ts
CHANGED
|
@@ -57,6 +57,7 @@ declare class TableCellInnerFormat extends ContainerFormat {
|
|
|
57
57
|
set wrapTag(value: TableBodyTag);
|
|
58
58
|
get wrapTag(): TableBodyTag;
|
|
59
59
|
getColumnIndex(): number;
|
|
60
|
+
getRowIndex(): number;
|
|
60
61
|
getTableBody(): TableBodyFormat | null;
|
|
61
62
|
getTableRow(): TableRowFormat | null;
|
|
62
63
|
setStyleByString(styleStr: string): void;
|
|
@@ -122,6 +123,7 @@ declare class TableRowFormat extends ContainerFormat {
|
|
|
122
123
|
checkMerge(): boolean;
|
|
123
124
|
wrapParentTag(): void;
|
|
124
125
|
optimize(_context: Record<string, any>): void;
|
|
126
|
+
remove(): void;
|
|
125
127
|
}
|
|
126
128
|
//#endregion
|
|
127
129
|
//#region src/formats/table-body-format.d.ts
|
|
@@ -316,6 +318,7 @@ declare const tableUpEvent: {
|
|
|
316
318
|
};
|
|
317
319
|
declare const tableUpInternal: {
|
|
318
320
|
moduleName: string;
|
|
321
|
+
tableSelectionName: string;
|
|
319
322
|
};
|
|
320
323
|
//#endregion
|
|
321
324
|
//#region src/modules/table-dom-selector.d.ts
|
|
@@ -506,17 +509,15 @@ type TableMenuOptionsInput$1 = Partial<Omit<TableMenuOptions, 'texts'>>;
|
|
|
506
509
|
declare class TableMenuContextmenu extends TableMenuCommon {
|
|
507
510
|
tableModule: TableUp;
|
|
508
511
|
quill: Quill;
|
|
509
|
-
|
|
512
|
+
static moduleName: string;
|
|
513
|
+
scrollHandler: [HTMLElement, (e: Event) => void][];
|
|
510
514
|
constructor(tableModule: TableUp, quill: Quill, options: TableMenuOptionsInput$1);
|
|
511
515
|
tableSelectioChange: (tableSelection: InternalTableSelectionModule) => void;
|
|
512
516
|
listenContextmenu: (e: MouseEvent) => void;
|
|
513
517
|
buildTools(): HTMLElement;
|
|
514
518
|
createTipText(item: HTMLElement, text: string): void;
|
|
515
519
|
show(): void;
|
|
516
|
-
update(position?:
|
|
517
|
-
x: number;
|
|
518
|
-
y: number;
|
|
519
|
-
}): void;
|
|
520
|
+
update(position?: Position): void;
|
|
520
521
|
destroy(): void;
|
|
521
522
|
}
|
|
522
523
|
//#endregion
|
|
@@ -524,6 +525,7 @@ declare class TableMenuContextmenu extends TableMenuCommon {
|
|
|
524
525
|
declare class TableMenuSelect extends TableMenuCommon {
|
|
525
526
|
tableModule: TableUp;
|
|
526
527
|
quill: Quill;
|
|
528
|
+
static moduleName: string;
|
|
527
529
|
constructor(tableModule: TableUp, quill: Quill, options: TableMenuOptionsInput);
|
|
528
530
|
tableSelectionDragStart: () => void;
|
|
529
531
|
tableSelectionDragEnd: (tableSelection: InternalTableSelectionModule) => void;
|
|
@@ -536,102 +538,81 @@ declare class TableMenuSelect extends TableMenuCommon {
|
|
|
536
538
|
}
|
|
537
539
|
//#endregion
|
|
538
540
|
//#region src/modules/table-resize/table-resize-common.d.ts
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
541
|
+
declare class TableResizeCommonHelper {
|
|
542
|
+
maxRange: number;
|
|
543
|
+
minRange: number;
|
|
544
|
+
startValue: number;
|
|
545
|
+
dragBreak: HTMLElement | null;
|
|
546
|
+
tableModule: TableUp;
|
|
547
|
+
isX: boolean;
|
|
548
|
+
constructor(tableModule: TableUp, isX: boolean);
|
|
549
|
+
createBreak(): void;
|
|
550
|
+
getOffsetFromStart(tableBlot?: TableMainFormat): number;
|
|
551
|
+
limitRange(tableBlot: TableMainFormat | undefined, value: number, countScroll?: boolean): number;
|
|
542
552
|
}
|
|
543
553
|
declare class TableResizeCommon extends TableDomSelector {
|
|
544
554
|
tableModule: TableUp;
|
|
545
555
|
quill: Quill;
|
|
546
|
-
static moduleName: string;
|
|
547
|
-
colIndex: number;
|
|
548
556
|
tableBlot?: TableMainFormat;
|
|
549
557
|
dragging: boolean;
|
|
550
|
-
|
|
551
|
-
handleColMouseUpFunc: () => Promise<void>;
|
|
552
|
-
handleColMouseMoveFunc: (e: MouseEvent) => {
|
|
553
|
-
left: number;
|
|
554
|
-
width: number;
|
|
555
|
-
} | undefined;
|
|
556
|
-
handleColMouseDownFunc: (e: MouseEvent) => {
|
|
557
|
-
top: number;
|
|
558
|
-
left: number;
|
|
559
|
-
height: number;
|
|
560
|
-
} | undefined;
|
|
558
|
+
colIndex: number;
|
|
561
559
|
rowIndex: number;
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
handleRowMouseMoveFunc: (e: MouseEvent) => {
|
|
565
|
-
top: number;
|
|
566
|
-
height: number;
|
|
567
|
-
} | undefined;
|
|
568
|
-
handleRowMouseDownFunc: (e: MouseEvent) => {
|
|
569
|
-
top: number;
|
|
570
|
-
left: number;
|
|
571
|
-
width: number;
|
|
572
|
-
} | undefined;
|
|
573
|
-
dragBEM: {
|
|
574
|
-
b: () => string;
|
|
575
|
-
be: (e?: string) => string;
|
|
576
|
-
bm: (m?: string) => string;
|
|
577
|
-
bem: (e?: string, m?: string) => string;
|
|
578
|
-
ns: (s?: string) => string;
|
|
579
|
-
bs: (s?: string) => string;
|
|
580
|
-
cv: (v?: string) => string;
|
|
581
|
-
is: (n: string) => string;
|
|
582
|
-
};
|
|
560
|
+
dragXCommon: TableResizeCommonHelper;
|
|
561
|
+
dragYCommon: TableResizeCommonHelper;
|
|
583
562
|
constructor(tableModule: TableUp, quill: Quill);
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
563
|
+
findDragColIndex(_cols: TableColFormat[]): number;
|
|
564
|
+
calculateColDragRangeByFull(): void;
|
|
565
|
+
calculateColDragRangeByFixed(): void;
|
|
566
|
+
calculateColDragRange(): void;
|
|
567
|
+
updateTableCol(left: number): Promise<void>;
|
|
568
|
+
findDragRowIndex(_rows: TableRowFormat[]): number;
|
|
569
|
+
calculateRowDragRange(): void;
|
|
570
|
+
updateTableRow(top: number): void;
|
|
571
|
+
removeBreak(): void;
|
|
572
|
+
}
|
|
573
|
+
//#endregion
|
|
574
|
+
//#region src/modules/table-resize/table-resize-drag.d.ts
|
|
575
|
+
declare class TableAutoScroller extends AutoScroller {
|
|
576
|
+
minusY: number;
|
|
577
|
+
minusX: number;
|
|
578
|
+
checkMinY(containerRect: DOMRect): boolean;
|
|
579
|
+
checkMinX(containerRect: DOMRect): boolean;
|
|
580
|
+
}
|
|
581
|
+
interface DragHelperOptions {
|
|
582
|
+
isDragX: boolean;
|
|
583
|
+
allowMoveToIndex?: (index: number) => boolean;
|
|
584
|
+
}
|
|
585
|
+
declare class DragTableHelper {
|
|
586
|
+
startPosition: ({
|
|
587
|
+
position: number;
|
|
588
|
+
size: number;
|
|
589
|
+
index: number;
|
|
590
|
+
})[];
|
|
591
|
+
selectedIndex: Set<number>;
|
|
592
|
+
moveToIndex: number;
|
|
593
|
+
tableModule: TableUp;
|
|
594
|
+
tableBlot: TableMainFormat;
|
|
595
|
+
dragCommon: TableResizeCommonHelper;
|
|
596
|
+
options: DragHelperOptions;
|
|
597
|
+
get isDragX(): boolean;
|
|
598
|
+
constructor(tableModule: TableUp, tableBlot: TableMainFormat, dragCommon: TableResizeCommonHelper, options: DragHelperOptions);
|
|
599
|
+
onStart(positionInfo: DragPosition, e: PointerEvent, callback?: (context: this) => void): false | undefined;
|
|
600
|
+
onMove(positionInfo: DragPosition, e: PointerEvent, callback?: (context: this) => void): void;
|
|
601
|
+
onEnd(positionInfo: DragPosition, e: PointerEvent, callback?: (context: this) => void): void;
|
|
602
|
+
recalculateStartPosition(): void;
|
|
603
|
+
findTheMovedToIndex(e: PointerEvent): number;
|
|
604
|
+
updateTableStructure(content: Delta, isMoveMinus: boolean): Delta;
|
|
624
605
|
}
|
|
625
606
|
//#endregion
|
|
626
607
|
//#region src/modules/table-resize/table-resize-box.d.ts
|
|
627
608
|
declare class TableResizeBox extends TableResizeCommon {
|
|
628
609
|
tableModule: TableUp;
|
|
629
610
|
quill: Quill;
|
|
611
|
+
static moduleName: string;
|
|
612
|
+
options: TableResizeBoxOptions;
|
|
630
613
|
root: HTMLElement;
|
|
631
614
|
tableWrapperBlot?: TableWrapperFormat;
|
|
632
615
|
resizeObserver?: ResizeObserver;
|
|
633
|
-
tableCols: TableColFormat[];
|
|
634
|
-
tableRows: TableRowFormat[];
|
|
635
616
|
rowHeadWrapper: HTMLElement | null;
|
|
636
617
|
colHeadWrapper: HTMLElement | null;
|
|
637
618
|
corner: HTMLElement | null;
|
|
@@ -640,7 +621,6 @@ declare class TableResizeBox extends TableResizeCommon {
|
|
|
640
621
|
isX: boolean;
|
|
641
622
|
index: number;
|
|
642
623
|
} | null;
|
|
643
|
-
size: number;
|
|
644
624
|
bem: {
|
|
645
625
|
b: () => string;
|
|
646
626
|
be: (e?: string) => string;
|
|
@@ -651,26 +631,44 @@ declare class TableResizeBox extends TableResizeCommon {
|
|
|
651
631
|
cv: (v?: string) => string;
|
|
652
632
|
is: (n: string) => string;
|
|
653
633
|
};
|
|
654
|
-
|
|
634
|
+
draggingColIndex: number;
|
|
635
|
+
draggingRowIndex: number;
|
|
636
|
+
stopColDrag: (() => void)[];
|
|
637
|
+
stopRowDrag: (() => void)[];
|
|
638
|
+
dragWrapper: HTMLElement | null;
|
|
639
|
+
dragPlaceholder: HTMLElement | null;
|
|
640
|
+
markIndicator: HTMLElement | null;
|
|
641
|
+
dragTip: HTMLElement | null;
|
|
642
|
+
stopColMoveDrag: (() => void)[];
|
|
643
|
+
stopRowMoveDrag: (() => void)[];
|
|
644
|
+
autoScroller: TableAutoScroller | null;
|
|
645
|
+
updateContentDraggingPosition: () => void;
|
|
646
|
+
cellSpanIndex: Set<number>;
|
|
647
|
+
dragPlaceholderStartPosition: {
|
|
648
|
+
x: number;
|
|
649
|
+
y: number;
|
|
650
|
+
};
|
|
651
|
+
constructor(tableModule: TableUp, quill: Quill, options: Partial<TableResizeBoxOptions>);
|
|
652
|
+
resolveOptions(options: Partial<TableResizeBoxOptions>): {
|
|
653
|
+
size: number;
|
|
654
|
+
draggable: boolean;
|
|
655
|
+
} & Partial<TableResizeBoxOptions>;
|
|
656
|
+
updateWrapperHead: () => void;
|
|
655
657
|
updateWhenTextChange: (eventName: string) => void;
|
|
656
658
|
setSelectionTable(table: HTMLTableElement | undefined): void;
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
left: number;
|
|
663
|
-
height: number;
|
|
664
|
-
} | undefined;
|
|
659
|
+
handleResizerHeaderClick(isX: boolean, index: number, e: MouseEvent): void;
|
|
660
|
+
findDragColIndex(): number;
|
|
661
|
+
findDragRowIndex(): number;
|
|
662
|
+
updateContentDraggerPosition(dragHelper: DragTableHelper): void;
|
|
663
|
+
createContentDragger(e: PointerEvent, isX: boolean, dragHelper: DragTableHelper): void;
|
|
665
664
|
bindColEvents(): void;
|
|
666
|
-
findCurrentRowIndex(e: MouseEvent): number;
|
|
667
|
-
rowHeightChange(i: number, h: number): void;
|
|
668
|
-
handleRowMouseDownFunc: (e: MouseEvent) => {
|
|
669
|
-
top: number;
|
|
670
|
-
left: number;
|
|
671
|
-
width: number;
|
|
672
|
-
} | undefined;
|
|
673
665
|
bindRowEvents(): void;
|
|
666
|
+
allowMoveToIndex(index: number): boolean;
|
|
667
|
+
recordCellSpan(isX: boolean): Set<number>;
|
|
668
|
+
dragHeadOptions(isX: boolean, context: {
|
|
669
|
+
index: number;
|
|
670
|
+
dragHelper: DragTableHelper;
|
|
671
|
+
}): Partial<DragElementOptions>;
|
|
674
672
|
update(): void;
|
|
675
673
|
show(): void;
|
|
676
674
|
hide(): void;
|
|
@@ -681,12 +679,10 @@ declare class TableResizeBox extends TableResizeCommon {
|
|
|
681
679
|
declare class TableResizeLine extends TableResizeCommon {
|
|
682
680
|
tableModule: TableUp;
|
|
683
681
|
quill: Quill;
|
|
682
|
+
static moduleName: string;
|
|
684
683
|
colResizer?: HTMLElement;
|
|
685
684
|
rowResizer?: HTMLElement;
|
|
686
685
|
currentTableCell?: HTMLElement;
|
|
687
|
-
dragging: boolean;
|
|
688
|
-
curColIndex: number;
|
|
689
|
-
curRowIndex: number;
|
|
690
686
|
tableCellBlot?: TableCellFormat;
|
|
691
687
|
bem: {
|
|
692
688
|
b: () => string;
|
|
@@ -698,19 +694,21 @@ declare class TableResizeLine extends TableResizeCommon {
|
|
|
698
694
|
cv: (v?: string) => string;
|
|
699
695
|
is: (n: string) => string;
|
|
700
696
|
};
|
|
701
|
-
|
|
697
|
+
stopColDrag?: () => void;
|
|
698
|
+
stopRowDrag?: () => void;
|
|
699
|
+
scrollHandler: [HTMLElement, (e: Event) => void][];
|
|
700
|
+
constructor(tableModule: TableUp, quill: Quill);
|
|
701
|
+
setSelectionTable(table: HTMLTableElement | undefined): void;
|
|
702
702
|
updateWhenTextChange: (eventName: string) => void;
|
|
703
|
-
mousemoveHandler: (e: MouseEvent) => void;
|
|
704
703
|
findTableCell(e: MouseEvent): HTMLElement | null;
|
|
705
|
-
|
|
706
|
-
|
|
704
|
+
pointermoveHandler: (e: MouseEvent) => void;
|
|
705
|
+
findDragColIndex(cols: TableColFormat[]): number;
|
|
707
706
|
updateColResizer(): void;
|
|
708
|
-
|
|
709
|
-
handleRowMouseUpFunc: () => void;
|
|
707
|
+
findDragRowIndex(rows: TableRowFormat[]): number;
|
|
710
708
|
updateRowResizer(): void;
|
|
711
709
|
show(): void;
|
|
710
|
+
hideResizer(): void;
|
|
712
711
|
hide(): void;
|
|
713
|
-
update(): void;
|
|
714
712
|
destroy(): void;
|
|
715
713
|
}
|
|
716
714
|
//#endregion
|
|
@@ -718,6 +716,7 @@ declare class TableResizeLine extends TableResizeCommon {
|
|
|
718
716
|
declare class TableResizeScale extends TableDomSelector {
|
|
719
717
|
tableModule: TableUp;
|
|
720
718
|
quill: Quill;
|
|
719
|
+
static moduleName: string;
|
|
721
720
|
scrollHandler: [HTMLElement, (e: Event) => void][];
|
|
722
721
|
tableMainBlot?: TableMainFormat;
|
|
723
722
|
tableWrapperBlot?: TableWrapperFormat;
|
|
@@ -753,6 +752,15 @@ declare class TableResizeScale extends TableDomSelector {
|
|
|
753
752
|
//#endregion
|
|
754
753
|
//#region src/modules/table-resize/utils.d.ts
|
|
755
754
|
declare const isTableAlignRight: (tableMainBlot: TableMainFormat) => boolean;
|
|
755
|
+
declare function getColRect(cols: TableColFormat[], columnIndex: number): {
|
|
756
|
+
left: number;
|
|
757
|
+
right: number;
|
|
758
|
+
width: number;
|
|
759
|
+
} | null;
|
|
760
|
+
declare function isCellsSpan(isX: boolean, tableBlot: TableMainFormat, cells: TableCellInnerFormat[]): {
|
|
761
|
+
cellIndex: Set<number>;
|
|
762
|
+
isSpan: boolean;
|
|
763
|
+
};
|
|
756
764
|
//#endregion
|
|
757
765
|
//#region src/modules/table-scrollbar.d.ts
|
|
758
766
|
declare class Scrollbar {
|
|
@@ -860,10 +868,7 @@ declare class TableSelection extends TableDomSelector {
|
|
|
860
868
|
options: TableSelectionOptions;
|
|
861
869
|
boundary: RelactiveRect | null;
|
|
862
870
|
scrollRecordEls: HTMLElement[];
|
|
863
|
-
startScrollRecordPosition:
|
|
864
|
-
x: number;
|
|
865
|
-
y: number;
|
|
866
|
-
}[];
|
|
871
|
+
startScrollRecordPosition: Position[];
|
|
867
872
|
selectedTableScrollX: number;
|
|
868
873
|
selectedTableScrollY: number;
|
|
869
874
|
selectedEditorScrollX: number;
|
|
@@ -884,6 +889,7 @@ declare class TableSelection extends TableDomSelector {
|
|
|
884
889
|
cv: (v?: string) => string;
|
|
885
890
|
is: (n: string) => string;
|
|
886
891
|
};
|
|
892
|
+
autoScroller: AutoScroller;
|
|
887
893
|
lastSelection: SelectionData;
|
|
888
894
|
_dragging: boolean;
|
|
889
895
|
set dragging(val: boolean);
|
|
@@ -895,35 +901,14 @@ declare class TableSelection extends TableDomSelector {
|
|
|
895
901
|
updateAfterEvent: () => void;
|
|
896
902
|
removeCellBySelectedTds(): void;
|
|
897
903
|
setSelectedTds(tds: TableCellInnerFormat[]): void;
|
|
898
|
-
getFirstTextNode(dom: HTMLElement | Node): Node;
|
|
899
|
-
getLastTextNode(dom: HTMLElement | Node): Node;
|
|
900
|
-
getNodeTailOffset(node: Node): number;
|
|
901
904
|
quillSelectionChangeHandler: (range: Range | null, _oldRange: Range | null, source: EmitterSource) => void;
|
|
902
905
|
setSelectionData(selection: Selection, selectionData: SelectionData): void;
|
|
903
906
|
selectionDirectionUp(selection: SelectionData): boolean;
|
|
904
|
-
findWrapSelection(points: {
|
|
905
|
-
node: Node | null;
|
|
906
|
-
offset: number;
|
|
907
|
-
}[]): {
|
|
908
|
-
startNode: Node | null;
|
|
909
|
-
startOffset: number;
|
|
910
|
-
endNode: Node | null;
|
|
911
|
-
endOffset: number;
|
|
912
|
-
};
|
|
913
907
|
resolveOptions(options: Partial<TableSelectionOptions>): TableSelectionOptions;
|
|
914
908
|
selectionChangeHandler(): void;
|
|
915
909
|
helpLinesInitial(): HTMLDivElement;
|
|
916
|
-
computeSelectedTds(startPoint:
|
|
917
|
-
|
|
918
|
-
y: number;
|
|
919
|
-
}, endPoint: {
|
|
920
|
-
x: number;
|
|
921
|
-
y: number;
|
|
922
|
-
}): TableCellInnerFormat[];
|
|
923
|
-
getScrollPositionDiff(): {
|
|
924
|
-
x: number;
|
|
925
|
-
y: number;
|
|
926
|
-
};
|
|
910
|
+
computeSelectedTds(startPoint: Position, endPoint: Position): TableCellInnerFormat[];
|
|
911
|
+
getScrollPositionDiff(): Position;
|
|
927
912
|
recordScrollPosition(): void;
|
|
928
913
|
clearRecordScrollPosition(): void;
|
|
929
914
|
tableSelectHandler(mousedownEvent: MouseEvent): void;
|
|
@@ -972,6 +957,10 @@ interface TableSelectionOptions {
|
|
|
972
957
|
interface TableResizeScaleOptions {
|
|
973
958
|
blockSize: number;
|
|
974
959
|
}
|
|
960
|
+
interface TableResizeBoxOptions {
|
|
961
|
+
size: number;
|
|
962
|
+
draggable: boolean;
|
|
963
|
+
}
|
|
975
964
|
interface TableCreatorTextOptions {
|
|
976
965
|
fullCheckboxText: string;
|
|
977
966
|
customBtnText: string;
|
|
@@ -1039,6 +1028,10 @@ interface TableValue {
|
|
|
1039
1028
|
full?: boolean;
|
|
1040
1029
|
align?: string;
|
|
1041
1030
|
}
|
|
1031
|
+
interface Position {
|
|
1032
|
+
x: number;
|
|
1033
|
+
y: number;
|
|
1034
|
+
}
|
|
1042
1035
|
interface RelactiveRect {
|
|
1043
1036
|
x: number;
|
|
1044
1037
|
y: number;
|
|
@@ -1062,13 +1055,7 @@ interface InternalTableSelectionModule extends InternalModule {
|
|
|
1062
1055
|
cellSelect: HTMLElement;
|
|
1063
1056
|
isDisplaySelection: boolean;
|
|
1064
1057
|
tableMenu?: InternalModule;
|
|
1065
|
-
computeSelectedTds: (startPoint:
|
|
1066
|
-
x: number;
|
|
1067
|
-
y: number;
|
|
1068
|
-
}, endPoint: {
|
|
1069
|
-
x: number;
|
|
1070
|
-
y: number;
|
|
1071
|
-
}) => TableCellInnerFormat[];
|
|
1058
|
+
computeSelectedTds: (startPoint: Position, endPoint: Position) => TableCellInnerFormat[];
|
|
1072
1059
|
setSelectedTds: (tds: TableCellInnerFormat[]) => void;
|
|
1073
1060
|
updateWithSelectedTds: () => void;
|
|
1074
1061
|
showDisplay: () => void;
|
|
@@ -1140,6 +1127,41 @@ interface TooltipInstance {
|
|
|
1140
1127
|
}
|
|
1141
1128
|
declare function createTooltip(target: HTMLElement, options?: ToolTipOptions): TooltipInstance | null;
|
|
1142
1129
|
//#endregion
|
|
1130
|
+
//#region src/utils/drag-helper.d.ts
|
|
1131
|
+
interface DragPosition {
|
|
1132
|
+
startPosition: Position;
|
|
1133
|
+
position: Position;
|
|
1134
|
+
movePosition: Position;
|
|
1135
|
+
}
|
|
1136
|
+
interface DragElementOptions {
|
|
1137
|
+
axis: 'x' | 'y' | 'both';
|
|
1138
|
+
onStart: (position: DragPosition, e: PointerEvent) => void | boolean;
|
|
1139
|
+
onMove: (position: DragPosition, e: PointerEvent) => void;
|
|
1140
|
+
onEnd: (position: DragPosition, e: PointerEvent) => void;
|
|
1141
|
+
buttons: number[];
|
|
1142
|
+
container: HTMLElement;
|
|
1143
|
+
draggingElement: HTMLElement | Window | Document;
|
|
1144
|
+
exact: boolean;
|
|
1145
|
+
}
|
|
1146
|
+
//#endregion
|
|
1147
|
+
//#region src/utils/scroll.d.ts
|
|
1148
|
+
declare class AutoScroller {
|
|
1149
|
+
scrollThresholdX: number;
|
|
1150
|
+
scrollThresholdY: number;
|
|
1151
|
+
maxScrollSpeed: number;
|
|
1152
|
+
mouseY: number;
|
|
1153
|
+
mouseX: number;
|
|
1154
|
+
private animationId;
|
|
1155
|
+
constructor(scrollThresholdX?: number, scrollThresholdY?: number, maxScrollSpeed?: number);
|
|
1156
|
+
checkMinY(containerRect: DOMRect): boolean;
|
|
1157
|
+
checkMaxY(containerRect: DOMRect): boolean;
|
|
1158
|
+
checkMinX(containerRect: DOMRect): boolean;
|
|
1159
|
+
checkMaxX(containerRect: DOMRect): boolean;
|
|
1160
|
+
start(container: HTMLElement, onScroll?: (speedX: number, speedY: number) => void): void;
|
|
1161
|
+
updateMousePosition(x: number, y: number): void;
|
|
1162
|
+
stop(): void;
|
|
1163
|
+
}
|
|
1164
|
+
//#endregion
|
|
1143
1165
|
//#region src/utils/utils.d.ts
|
|
1144
1166
|
declare const randomId: () => string;
|
|
1145
1167
|
//#endregion
|
|
@@ -1260,5 +1282,5 @@ declare class TableUp {
|
|
|
1260
1282
|
convertTableBodyByCells(tableBlot: TableMainFormat, selecteds: TableCellInnerFormat[], tag: TableBodyTag): void;
|
|
1261
1283
|
}
|
|
1262
1284
|
//#endregion
|
|
1263
|
-
export { BlockEmbedOverride, BlockOverride, ClipboardOptions, Constructor, ContainerFormat, InternalModule, InternalTableMenuModule, InternalTableSelectionModule, Matcher, MenuTooltipInstance, QuillTheme, QuillThemePicker, RelactiveRect, ScrollOverride, Scrollbar, SelectionData, Selector, SkipRowCount, TableAlign, TableBodyFormat, TableBodyTag, TableCaptionFormat, TableCaptionValue, TableCellFormat, TableCellInnerFormat, TableCellValue, TableClipboard, TableColFormat, TableColValue, TableColgroupFormat, TableConstantsData, TableCreatorTextOptions, TableDomSelector, TableFootFormat, TableHeadFormat, TableMainFormat, TableMenuCommon, TableMenuContextmenu, TableMenuOptions, TableMenuOptionsInput, TableMenuSelect, TableMenuTexts, TableResizeBox, TableResizeCommon, TableResizeLine, TableResizeScale, TableResizeScaleOptions, TableRowFormat, TableRowValue, TableSelection, TableSelectionOptions, TableTextOptions, TableUp, TableUpExtraModule, TableUpModule, TableUpOptions, TableValue, TableVirtualScrollbar, TableWrapperFormat, Tool, ToolOption, ToolOptionBreak, Writable, applyCellUpdates, blotName, createColorPicker, createSelectBox, createTooltip,
|
|
1285
|
+
export { BlockEmbedOverride, BlockOverride, ClipboardOptions, Constructor, ContainerFormat, InternalModule, InternalTableMenuModule, InternalTableSelectionModule, Matcher, MenuTooltipInstance, Position, QuillTheme, QuillThemePicker, RelactiveRect, ScrollOverride, Scrollbar, SelectionData, Selector, SkipRowCount, TableAlign, TableBodyFormat, TableBodyTag, TableCaptionFormat, TableCaptionValue, TableCellFormat, TableCellInnerFormat, TableCellValue, TableClipboard, TableColFormat, TableColValue, TableColgroupFormat, TableConstantsData, TableCreatorTextOptions, TableDomSelector, TableFootFormat, TableHeadFormat, TableMainFormat, TableMenuCommon, TableMenuContextmenu, TableMenuOptions, TableMenuOptionsInput, TableMenuSelect, TableMenuTexts, TableResizeBox, TableResizeBoxOptions, TableResizeCommon, TableResizeCommonHelper, TableResizeLine, TableResizeScale, TableResizeScaleOptions, TableRowFormat, TableRowValue, TableSelection, TableSelectionOptions, TableTextOptions, TableUp, TableUp as default, TableUpExtraModule, TableUpModule, TableUpOptions, TableValue, TableVirtualScrollbar, TableWrapperFormat, Tool, ToolOption, ToolOptionBreak, Writable, applyCellUpdates, blotName, createColorPicker, createSelectBox, createTooltip, defaultCustomSelect, findParentBlot, findParentBlots, getCellPositions, getColRect, getCountByPosition, getTableCellStructure, getTableMainRect, groupCellByRow, isCellsSpan, isTableAlignRight, parsePasteDelta, pasteCells, pasteWithLoop, pasteWithStructure, prepareCellUpdate, randomId, removeOverlappingCells, tableMenuTools, tableUpEvent, tableUpInternal, tableUpSize, updateTableConstants };
|
|
1264
1286
|
//# sourceMappingURL=index.d.ts.map
|