@hufe921/canvas-editor 0.9.95 → 0.9.97
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/CHANGELOG.md +59 -0
- package/README.md +53 -18
- package/dist/canvas-editor.es.js +757 -136
- package/dist/canvas-editor.es.js.map +1 -1
- package/dist/canvas-editor.umd.js +32 -31
- package/dist/canvas-editor.umd.js.map +1 -1
- package/dist/src/editor/core/command/Command.d.ts +4 -0
- package/dist/src/editor/core/command/CommandAdapt.d.ts +6 -1
- package/dist/src/editor/core/cursor/Cursor.d.ts +1 -0
- package/dist/src/editor/core/draw/Draw.d.ts +3 -0
- package/dist/src/editor/core/draw/control/Control.d.ts +5 -2
- package/dist/src/editor/core/draw/interactive/Area.d.ts +18 -0
- package/dist/src/editor/core/draw/particle/table/TableOperate.d.ts +2 -1
- package/dist/src/editor/core/draw/particle/table/TableParticle.d.ts +1 -0
- package/dist/src/editor/core/draw/particle/table/TableTool.d.ts +2 -0
- package/dist/src/editor/core/range/RangeManager.d.ts +6 -1
- package/dist/src/editor/dataset/constant/ContextMenu.d.ts +2 -0
- package/dist/src/editor/dataset/constant/Element.d.ts +1 -0
- package/dist/src/editor/dataset/enum/Area.d.ts +5 -0
- package/dist/src/editor/dataset/enum/Control.d.ts +4 -0
- package/dist/src/editor/dataset/enum/Element.d.ts +1 -0
- package/dist/src/editor/dataset/enum/table/Table.d.ts +3 -1
- package/dist/src/editor/index.d.ts +6 -5
- package/dist/src/editor/interface/Area.d.ts +41 -0
- package/dist/src/editor/interface/Control.d.ts +15 -2
- package/dist/src/editor/interface/Element.d.ts +13 -2
- package/dist/src/editor/interface/Listener.d.ts +2 -2
- package/dist/src/editor/interface/Range.d.ts +2 -1
- package/dist/src/editor/interface/Row.d.ts +1 -0
- package/dist/src/editor/utils/element.d.ts +1 -0
- package/dist/src/editor/utils/index.d.ts +1 -0
- package/package.json +1 -1
package/dist/canvas-editor.es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(()=>{(function(){"use strict";try{if(typeof document!="undefined"){var e=document.createElement("style");e.id="canvas-editor-style",e.appendChild(document.createTextNode('.ce-select-control-popup{max-width:160px;min-width:69px;max-height:225px;position:absolute;z-index:1;border:1px solid #e4e7ed;border-radius:4px;background-color:#fff;box-shadow:0 2px 12px #0000001a;box-sizing:border-box;margin:5px 0;overflow-y:auto}.ce-select-control-popup ul{list-style:none;padding:3px 0;margin:0;box-sizing:border-box}.ce-select-control-popup ul li{font-size:13px;padding:0 20px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#666;height:36px;line-height:36px;box-sizing:border-box;cursor:pointer}.ce-select-control-popup ul li:hover{background-color:#eef2fd}.ce-select-control-popup ul li.active{color:var(--COLOR-HOVER, #5175f4);font-weight:700}.ce-date-container{display:none;width:300px;overflow:hidden;left:0;right:0;position:absolute;z-index:1;color:#606266;background:#ffffff;border-radius:4px;padding:10px;user-select:none;border:1px solid #e4e7ed;box-shadow:0 2px 12px #0000001a}.ce-date-container.active{display:block}.ce-date-wrap{display:none}.ce-date-wrap.active{display:block}.ce-date-title{display:flex;justify-content:center;align-items:center;text-align:center;color:#606266;font-size:16px}.ce-date-title>span{display:inline-block}.ce-date-title>span:not(.ce-date-title__now){font-family:cursive;cursor:pointer}.ce-date-title>span:not(.ce-date-title__now):hover{color:#5175f4}.ce-date-title .ce-date-title__pre-year,.ce-date-title .ce-date-title__pre-month{width:15%}.ce-date-title .ce-date-title__now{width:40%}.ce-date-title .ce-date-title__next-year,.ce-date-title .ce-date-title__next-month{width:15%}.ce-date-week{width:100%;display:flex;justify-content:center;margin-top:15px;padding-bottom:5px;border-bottom:1px solid #e4e7ed}.ce-date-week>span{list-style:none;width:14.28571%;text-align:center;color:#606266;font-size:14px}.ce-date-day{width:100%;display:flex;flex-wrap:wrap;align-items:center;margin-top:5px}.ce-date-day>div{width:14.28571%;height:40px;text-align:center;color:#606266;font-size:14px;cursor:pointer;line-height:40px;border-radius:4px}.ce-date-day>div:hover{color:#5175f4;opacity:.8}.ce-date-day>div.active{color:#5175f4;font-weight:700}.ce-date-day>div.disable{color:#c0c4cc}.ce-date-day>div.select{color:#fff;background-color:#5175f4}.ce-time-wrap{display:none;padding:10px;height:286px}.ce-time-wrap ::-webkit-scrollbar{width:0}.ce-time-wrap.active{display:flex}.ce-time-wrap li{list-style:none}.ce-time-wrap>li{width:33.3%;height:100%;text-align:center}.ce-time-wrap>li>span{transform:translateY(-5px);display:inline-block}.ce-time-wrap>li>ol{height:calc(100% - 20px);overflow-y:auto;border:1px solid #e2e2e2;position:relative}.ce-time-wrap>li:first-child>ol{border-right:0}.ce-time-wrap>li:last-child>ol{border-left:0}.ce-time-wrap>li>ol>li{line-height:30px;cursor:pointer;transition:all .3s}.ce-time-wrap>li>ol>li:hover{background-color:#eaeaea}.ce-time-wrap>li>ol>li.active{color:#fff;background:#5175F4}.ce-date-menu{width:100%;height:28px;display:flex;justify-content:flex-end;align-items:center;padding-top:10px;position:relative;border-top:1px solid #e4e7ed}.ce-date-menu button{display:inline-block;line-height:1;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #dcdfe6;color:#606266;appearance:none;text-align:center;box-sizing:border-box;outline:none;transition:.1s;font-weight:500;user-select:none;padding:7px 15px;font-size:12px;border-radius:3px;margin:0 0 0 10px}.ce-date-menu button:hover{color:#5175f4;border-color:#5175f4}.ce-date-menu button.ce-date-menu__time{border:1px solid transparent;position:absolute;left:0;margin-left:0}.ce-date-menu button.ce-date-menu__time:hover{color:#5175f4}.ce-block-item{position:absolute;z-index:0;overflow:hidden;border-radius:8px;background-color:#fff;border:1px solid rgb(235 236 240)}.ce-table-tool__row{position:absolute;width:12px;border-radius:6.5px;overflow:hidden;background-color:#e2e6ed}.ce-table-tool__row .ce-table-tool__row__item{width:100%;position:relative}.ce-table-tool__row .ce-table-tool__row__item:after{content:"";position:absolute;bottom:0;left:2px;width:8px;height:1px;background-color:#c0c6cf}.ce-table-tool__row .ce-table-tool__row__item:last-child:after{display:none}.ce-table-tool__quick__add{width:16px;height:16px;position:absolute;border-radius:50%;background-color:#e2e6ed;cursor:pointer}.ce-table-tool__quick__add:after{content:"+";color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-55%)}.ce-table-tool__select{width:16px;height:18px;position:absolute;border-radius:3px;cursor:pointer}.ce-table-tool__select:hover{background-color:#e2e6ed}.ce-table-tool__select:after{content:":::";color:#aaaaab;position:absolute;top:50%;left:50%;transform:translate(-75%,-50%) rotate(-90deg)}.ce-table-tool__col{position:absolute;height:12px;border-radius:6.5px;overflow:hidden;background-color:#e2e6ed;display:flex}.ce-table-tool__col .ce-table-tool__col__item{height:100%;position:relative}.ce-table-tool__col .ce-table-tool__col__item:after{content:"";position:absolute;top:2px;left:-1px;width:1px;height:8px;z-index:1;background-color:#c0c6cf}.ce-table-tool__col .ce-table-tool__col__item:first-child:after{display:none}.ce-table-tool__row .ce-table-tool__row__item.active,.ce-table-tool__col .ce-table-tool__col__item.active{background-color:#c4d7fa}.ce-table-tool__col .ce-table-tool__anchor{right:-5px;width:10px;height:12px;z-index:9;position:absolute;cursor:col-resize}.ce-table-tool__row .ce-table-tool__anchor{bottom:-5px;left:0;width:12px;height:10px;z-index:9;position:absolute;cursor:row-resize}.ce-table-anchor__line{z-index:9;position:absolute;border:1px dotted #000000}.ce-table-tool__border{position:absolute;z-index:1;background:transparent;pointer-events:none}.ce-table-tool__border__row{position:absolute;cursor:row-resize;pointer-events:auto}.ce-table-tool__border__col{position:absolute;cursor:col-resize;pointer-events:auto}.ce-resizer-selection{position:absolute;border:1px solid;pointer-events:none}.ce-resizer-selection .resizer-handle{position:absolute;z-index:9;width:10px;height:10px;box-shadow:0 1px 4px #0000004d;border-radius:5px;border:2px solid #ffffff;box-sizing:border-box;pointer-events:initial}.ce-resizer-selection .handle-0{cursor:nw-resize}.ce-resizer-selection .handle-1{cursor:n-resize}.ce-resizer-selection .handle-2{cursor:ne-resize}.ce-resizer-selection .handle-3{cursor:e-resize}.ce-resizer-selection .handle-4{cursor:se-resize}.ce-resizer-selection .handle-5{cursor:s-resize}.ce-resizer-selection .handle-6{cursor:sw-resize}.ce-resizer-selection .handle-7{cursor:w-resize}.ce-resizer-size-view{display:flex;align-items:center;height:20px;white-space:nowrap;position:absolute;z-index:9;top:-30px;left:0;opacity:.9;background-color:#000;padding:0 5px;border-radius:4px}.ce-resizer-size-view span{color:#fff;font-size:12px}.ce-resizer-image{position:absolute;opacity:.5}.ce-image-previewer{position:fixed;left:0;top:0;z-index:1000;width:100%;height:100%;overflow:hidden;background:#f2f4f7;display:flex;align-items:center;justify-content:center;animation:previewerAnimation .3s}@keyframes previewerAnimation{0%{opacity:.1}to{opacity:1}}.ce-image-previewer .image-close{width:24px;height:24px;display:inline-block;position:absolute;right:50px;top:30px;z-index:99;cursor:pointer;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIzLjk3IDdsMS40MTUgMS40MTQtNy43NzkgNy43NzggNy43NzkgNy43NzktMS40MTQgMS40MTQtNy43NzktNy43NzktNy43NzggNy43NzlMNyAyMy45N2w3Ljc3OC03Ljc3OUw3IDguNDE0IDguNDE0IDdsNy43NzggNy43NzhMMjMuOTcxIDd6IiBmaWxsPSIjM0Q0NzU3IiBmaWxsLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4=) no-repeat;background-size:100% 100%;transition:all .3s;border-radius:50%}.ce-image-previewer .image-close:hover{background-color:#e2e6ed}.ce-image-previewer .ce-image-container{position:relative}.ce-image-previewer .ce-image-container img{cursor:move;position:relative}.ce-image-previewer .ce-image-menu{height:50px;position:absolute;bottom:50px;z-index:99;display:flex;align-items:center;justify-content:center}.ce-image-previewer .ce-image-menu i{width:32px;height:32px;margin:0 8px;cursor:pointer;display:inline-block;background-repeat:no-repeat;background-size:100% 100%;transition:all .3s;border-radius:50%}.ce-image-previewer .ce-image-menu i:hover{background-color:#e2e6ed}.ce-image-previewer .ce-image-menu i.zoom-in{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE0IDE0di00aDJ2NGg0djJoLTR2NGgtMnYtNGgtNHYtMmg0em04Ljc0OSAxMC4xNjNBMTEuOTUyIDExLjk1MiAwIDAxMTUgMjdDOC4zNzMgMjcgMyAyMS42MjcgMyAxNVM4LjM3MyAzIDE1IDNzMTIgNS4zNzMgMTIgMTJjMCAyLjk1NC0xLjA2NyA1LjY1OC0yLjgzNyA3Ljc0OWw0LjkwOCA0LjkwOC0xLjQxNCAxLjQxNC00LjkwOC00LjkwOHpNMTUgMjVjNS41MjMgMCAxMC00LjQ3NyAxMC0xMFMyMC41MjMgNSAxNSA1IDUgOS40NzcgNSAxNXM0LjQ3NyAxMCAxMCAxMHoiIGZpbGw9IiMzRDQ3NTciLz48L3N2Zz4=)}.ce-image-previewer .ce-image-menu i.zoom-out{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIyLjc0OSAyNC4xNjNBMTEuOTUyIDExLjk1MiAwIDAxMTUgMjdDOC4zNzMgMjcgMyAyMS42MjcgMyAxNVM4LjM3MyAzIDE1IDNzMTIgNS4zNzMgMTIgMTJjMCAyLjk1NC0xLjA2NyA1LjY1OC0yLjgzNyA3Ljc0OWw0LjkwOCA0LjkwOC0xLjQxNCAxLjQxNC00LjkwOC00LjkwOHpNMTUgMjVjNS41MjMgMCAxMC00LjQ3NyAxMC0xMFMyMC41MjMgNSAxNSA1IDUgOS40NzcgNSAxNXM0LjQ3NyAxMCAxMCAxMHptLTUtMTFoMTB2MkgxMHYtMnoiIGZpbGw9IiMzRDQ3NTciLz48L3N2Zz4=)}.ce-image-previewer .ce-image-menu i.rotate{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNMTYgNGM2LjYyNyAwIDEyIDUuMzczIDEyIDEyYTExLjk3IDExLjk3IDAgMDEtNCA4Ljk0NFYyM2gtLjg2QTkuOTY4IDkuOTY4IDAgMDAyNiAxNmMwLTUuNTIzLTQuNDc3LTEwLTEwLTEwUzYgMTAuNDc3IDYgMTZjMCA1LjE4NSAzLjk0NyA5LjQ0OSA5IDkuOTV2Mi4wMDlDOC44NCAyNy40NTEgNCAyMi4yOTEgNCAxNiA0IDkuMzczIDkuMzczIDQgMTYgNHoiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxwYXRoIGQ9Ik0xOS44NzkgMjcuMzI4bDEuNzY3LTYuNzE3IDQuOTUgNC45NXoiLz48L2c+PC9zdmc+)}.ce-image-previewer .ce-image-menu i.original-size{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQgNGgyNHYyNEg0VjR6bTIgMnYyMGgyMFY2SDZ6bTQgNWgydjEwaC0yVjExem01IDJoMnYyaC0ydi0yem0wIDRoMnYyaC0ydi0yem01LTZoMnYxMGgtMlYxMXoiIGZpbGw9IiMzRDQ3NTciLz48L3N2Zz4=)}.ce-image-previewer .ce-image-menu i.image-download{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQuNSAxNXYzLjVoMTVWMTVIMjF2NUgzdi01aDEuNXptOC4yMzItMTEuMjI2djkuMTk2bDQuMDUtNC4wNSAxLjA2IDEuMDYtNS44MzQgNS44MzQtNS44MzMtNS44MzMgMS4wNi0xLjA2IDMuOTk4IDMuOTk2VjMuNzc0aDEuNXoiIGZpbGw9IiMzRDQ3NTciLz48L3N2Zz4=)}.ce-contextmenu-container{z-index:9;position:fixed;display:none;padding:4px;overflow-x:hidden;overflow-y:auto;background:#fff;box-shadow:0 2px 12px #38383833;border:1px solid #e2e6ed;border-radius:2px}.ce-contextmenu-content{display:flex;flex-direction:column}.ce-contextmenu-content .ce-contextmenu-sub-item:after{position:absolute;content:"";width:16px;height:16px;right:12px;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNMCAwaDE2djE2SDB6Ii8+PGcgZmlsbD0iIzc2N0M4NSI+PHBhdGggZD0iTTcgMTIuMjQzbC0uNzA3LS43MDcgNC4yNDMtNC4yNDMuNzA3LjcwN3oiLz48cGF0aCBkPSJNNi4yOTMgNC40NjRMNyAzLjc1NyAxMS4yNDMgOGwtLjcwNy43MDd6Ii8+PC9nPjwvZz48L3N2Zz4=)}.ce-contextmenu-content .ce-contextmenu-item{min-width:140px;padding:0 32px 0 16px;height:30px;display:flex;align-items:center;white-space:nowrap;box-sizing:border-box;cursor:pointer}.ce-contextmenu-content .ce-contextmenu-item.hover{background:rgba(25,55,88,.04)}.ce-contextmenu-content .ce-contextmenu-item span{max-width:300px;font-size:12px;color:#3d4757;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ce-contextmenu-content .ce-contextmenu-item span.ce-shortcut{color:#767c85;height:30px;flex:1;text-align:right;line-height:30px;margin-left:20px}.ce-contextmenu-content .ce-contextmenu-item i{width:16px;height:16px;vertical-align:middle;display:inline-block;background-repeat:no-repeat;background-size:100% 100%;flex-shrink:0;margin-right:8px}.ce-contextmenu-divider{background-color:#e2e6ed;margin:4px 16px;height:1px}.ce-contextmenu-print{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjM0Q0NzU3IiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0xMiA0aC0xVjJINXYySDRWMmExIDEgMCAwMTEtMWg2YTEgMSAwIDAxMSAxdjJ6bTAgNXY0YTEgMSAwIDAxLTEgMUg1YTEgMSAwIDAxLTEtMVY5aDF2NGg2VjloMXoiLz48cGF0aCBkPSJNMTIgMTJ2LTFoMlY1SDJ2NmgydjFIMmExIDEgMCAwMS0xLTFWNWExIDEgMCAwMTEtMWgxMmExIDEgMCAwMTEgMXY2YTEgMSAwIDAxLTEgMWgtMnoiLz48cGF0aCBkPSJNMyA4aDEwdjFIM3ptOC0yaDJ2MWgtMnoiLz48L2c+PC9zdmc+)}.ce-contextmenu-image{background-image:url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSLlm77lsYJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4PSIwIiB5PSIwIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxzdHlsZT4uc3Qwe2ZpbGw6IzNkNDc1N308L3N0eWxlPjxnIGlkPSJfeDMwXzAt5YWs5YWxX3gyRl8wMuW3peWFt+agj194MkZf5o+S5YWl5Zu+54mHLTE2cHgtIj48ZyBpZD0iR3JvdXAtMTkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEgMSkiPjxwYXRoIGlkPSJDb21iaW5lZC1TaGFwZSIgY2xhc3M9InN0MCIgZD0iTTEgMGgxMmMuNiAwIDEgLjQgMSAxdjExYzAgLjYtLjQgMS0xIDFIMWMtLjYgMC0xLS40LTEtMVYxYzAtLjYuNC0xIDEtMXptMCAxdjExaDEyVjFIMXoiLz48Y2lyY2xlIGlkPSLmpK3lnIblvaIiIGNsYXNzPSJzdDAiIGN4PSIxMCIgY3k9IjQiIHI9IjEiLz48cGF0aCBpZD0iUGF0aCIgY2xhc3M9InN0MCIgZD0iTTguNSAxMS4ybC00LTQuMUwxIDEwLjdWOS4yYzEuNy0xLjYgMi43LTIuNSAzLTIuOC40LS41LjctLjQgMSAwTDguNSAxMCAxMSA3LjNjLjQtLjUuNi0uNSAxLS4xbDIgMi44djEuNWwtMi41LTMuNC0zIDMuMXoiLz48L2c+PC9nPjwvc3ZnPg==)}.ce-contextmenu-image-change{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyIDQpIiBmaWxsPSIjM0Q0NzU3Ij48Y2lyY2xlIGZpbGwtcnVsZT0ibm9uemVybyIgY3g9IjMiIGN5PSIxIiByPSIxIi8+PHBhdGggZD0iTTcuNDczIDguMjIzTDMuNDcgNC4xMDcgMCA3LjY2N3YtMS41QzEuNzE1IDQuNiAyLjcwNyAzLjY2NCAyLjk3NSAzLjM1OGMuNDAyLS40NTcuNjUxLS4zOSAxLjA0MiAwTDcuNDczIDcgOS45NiA0LjM0OWMuNDE0LS40NjIuNjItLjQ2MiAxLjAxMS0uMDcxTDEzIDcuMDZ2MS41bC0yLjUxLTMuNDEtMy4wMTcgMy4wNzJ6Ii8+PC9nPjxwYXRoIGQ9Ik02IDEuNUgxLjV2MTJoMTN2LTRWMTNhLjUuNSAwIDAxLS41LjVIMmEuNS41IDAgMDEtLjUtLjVWMmEuNS41IDAgMDEuNS0uNWg0em04LjUgOFY2bC0uNS41aDFsLS41LS41djMuNXpNNiAxLjVoNEw5LjUgMXYxbC41LS41SDZ6IiBzdHJva2U9IiMzRDQ3NTciLz48cGF0aCBkPSJNMTMuMDg1IDEuMzE2bC0zLjgxNCA0YTEgMSAwIDAwMS40NTggMS4zNjhsMy44MTUtNGExIDEgMCAxMC0xLjQ1OS0xLjM2OHoiIGZpbGw9IiMzRDQ3NTciIGZpbGwtcnVsZT0ibm9uemVybyIvPjwvZz48L3N2Zz4=)}.ce-contextmenu-insert-row-col{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9IiMzRDQ3NTciIGQ9Ik04LjUgNS41aDZ2NGgtNnoiLz48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNNCA3djFoMlY3em0tMyAuNUw0IDV2NXpNMSAxaDEydjFIMXptMCAxMmgxMnYxSDF6Ii8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-insert-top-row{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNOCA1SDd2M2gxem0tLjUtM0wxMCA1SDV6Ii8+PHJlY3Qgc3Ryb2tlPSIjM0Q0NzU3IiB4PSIxLjUiIHk9IjEwLjUiIHdpZHRoPSIxMiIgaGVpZ2h0PSIzIiByeD0iMSIvPjwvZz48L3N2Zz4=)}.ce-contextmenu-insert-bottom-row{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNNyAxMWgxVjhIN3ptLjUgM0w1IDExaDV6Ii8+PHJlY3Qgc3Ryb2tlPSIjM0Q0NzU3IiB4PSIxLjUiIHk9IjIuNSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjMiIHJ4PSIxIi8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-insert-left-col{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNMTEgN3YxaDNWN3ptLTMgLjVMMTEgNXY1eiIvPjxyZWN0IHN0cm9rZT0iIzNENDc1NyIgdHJhbnNmb3JtPSJyb3RhdGUoOTAgNCA3LjUpIiB4PSItMiIgeT0iNiIgd2lkdGg9IjEyIiBoZWlnaHQ9IjMiIHJ4PSIxIi8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-insert-right-col{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNNSA4VjdIMnYxem0zLS41TDUgMTBWNXoiLz48cmVjdCBzdHJva2U9IiMzRDQ3NTciIHRyYW5zZm9ybT0icm90YXRlKDkwIDEyIDcuNSkiIHg9IjYiIHk9IjYiIHdpZHRoPSIxMiIgaGVpZ2h0PSIzIiByeD0iMSIvPjwvZz48L3N2Zz4=)}.ce-contextmenu-delete-row-col{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9IiM5MjlBQTgiIGQ9Ik04LjUgNi41aDZ2MmgtNnoiLz48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNMiAxMmgxMXYxSDJ6TTIgMmgxMXYxSDJ6bS42MyAzTDcgOS4zNWwtLjYzNS42NUwyIDUuNjN6Ii8+PHBhdGggZmlsbD0iIzNENDc1NyIgZD0iTTIgOS4zNjNMNi4zNTUgNSA3IDUuNzA3IDIuNjk1IDEweiIvPjwvZz48L3N2Zz4=)}.ce-contextmenu-delete-row{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9IiM5MjlBQTgiIGQ9Ik04LjUgNS41aDZ2NGgtNnoiLz48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNMSAxM2gxMnYxSDF6TTEgMWgxMnYxSDF6bTAgNGgxdjFIMXptMSAxaDF2MUgyem0xIDFoMXYxSDN6bTEtMWgxdjFINHptMS0xaDF2MUg1ek00IDhoMXYxSDR6TTIgOGgxdjFIMnptMyAxaDF2MUg1ek0xIDloMXYxSDF6Ii8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-delete-col{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9IiM5MjlBQTgiIGQ9Ik01LjUgNy41di02aDR2NnoiLz48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNMTMgMTVWM2gxdjEyek0xIDE1VjNoMXYxMnptNCAwdi0xaDF2MXptMS0xdi0xaDF2MXptMS0xdi0xaDF2MXptLTEtMXYtMWgxdjF6bS0xLTF2LTFoMXYxem0zIDF2LTFoMXYxem0wIDJ2LTFoMXYxem0xLTN2LTFoMXYxem0wIDR2LTFoMXYxeiIvPjwvZz48L3N2Zz4=)}.ce-contextmenu-delete-table{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNMTQgMTNoLTF2LTNIMnYzSDF2LTNhMSAxIDAgMDExLTFoMTFhMSAxIDAgMDExIDF2M3oiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxwYXRoIGQ9Ik01LjYyNSAyTDEwIDYuMzc1IDkuMzc1IDcgNSAyLjYyNXoiLz48cGF0aCBkPSJNNSA2LjM3NUw5LjM3NSAybC42MjUuNjI1TDUuNjI1IDd6Ii8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-merge-cell{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNNiAxdjFIMnYxMWg0djFIMmExIDEgMCAwMS0xLTFWMmExIDEgMCAwMTEtMWg0em0zIDBoNGExIDEgMCAwMTEgMXYxMWExIDEgMCAwMS0xIDFIOXYtMWg0VjJIOVYxeiIvPjxwYXRoIGZpbGwtcnVsZT0ibm9uemVybyIgZD0iTTYgMWgxdjRINnptMiAwaDF2NEg4eiIvPjxwYXRoIGQ9Ik04IDcuNUwxMCA2djN6bS0xIDBMNSA2djN6Ii8+PHBhdGggZD0iTTkgN2gzdjFIOXpNMyA3aDN2MUgzeiIvPjxwYXRoIGZpbGwtcnVsZT0ibm9uemVybyIgZD0iTTggMTBoMXY0SDh6bS0yIDBoMXY0SDZ6Ii8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-merge-cancel-cell{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNNiAxdjFIMnYxMWg0djFIMmExIDEgMCAwMS0xLTFWMmExIDEgMCAwMTEtMWg0em0zIDBoNGExIDEgMCAwMTEgMXYxMWExIDEgMCAwMS0xIDFIOXYtMWg0VjJIOVYxeiIvPjxwYXRoIGZpbGwtcnVsZT0ibm9uemVybyIgZD0iTTYgMWgxdjRINnptMiAwaDF2NEg4eiIvPjxwYXRoIGQ9Ik0zIDcuNUw1IDZ2M3ptOSAwTDEwIDZ2M3oiLz48cGF0aCBkPSJNNCA3aDN2MUg0em00IDBoM3YxSDh6Ii8+PHBhdGggZmlsbC1ydWxlPSJub256ZXJvIiBkPSJNOCAxMGgxdjRIOHptLTIgMGgxdjRINnoiLz48L2c+PC9zdmc+)}.ce-contextmenu-vertical-align{background-image:url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMiAxM2gxMnYxSDJ6bTAtM2g4djFIMnptMC0zaDEydjFIMnptMC02aDEydjFIMnptMCAzaDh2MUgyeiIgZmlsbD0iIzNkNDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIi8+PC9zdmc+)}.ce-contextmenu-vertical-align-top{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTggOEg3djZoMXptLS41LTNMMTAgOEg1ek0yIDNoMTF2MUgyeiIgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIi8+PC9zdmc+)}.ce-contextmenu-vertical-align-middle{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOCAxMkg3djNoMXptLS41LTNsMi41IDNINXpNNyAzaDFWMEg3em0uNSAzTDUgM2g1ek0yIDdoMTF2MUgyeiIgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIi8+PC9zdmc+)}.ce-contextmenu-vertical-align-bottom{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTcgOWgxVjNIN3ptLjUgM0w1IDloNXpNMiAxM2gxMXYxSDJ6IiBmaWxsPSIjM0Q0NzU3IiBmaWxsLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4=)}.ce-contextmenu-border-all{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iIzNENDc1NyIvPjxwYXRoIGZpbGw9IiMzRDQ3NTciIGQ9Ik0zIDhoMTF2MUgzeiIvPjxwYXRoIGZpbGw9IiMzRDQ3NTciIGQ9Ik05IDN2MTFIOFYzeiIvPjwvc3ZnPg==)}.ce-contextmenu-border-empty{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMyAzaC0xVjJoMWExIDEgMCAwMTEgMXYxaC0xVjN6bS0zLTF2MUg4LjV2MmgtMVYzSDZWMmg0ek00IDJ2MUgzdjFIMlYzYTEgMSAwIDAxMS0xaDF6TTIgNmgxdjEuNWgydjFIM1YxMEgyVjZ6bTAgNmgxdjFoMXYxSDNhMSAxIDAgMDEtMS0xdi0xem00IDJ2LTFoMS41di0yaDF2MkgxMHYxSDZ6bTYgMHYtMWgxdi0xaDF2MWExIDEgMCAwMS0xIDFoLTF6bTItNGgtMVY4LjVoLTJ2LTFoMlY2aDF2NHpNOC41IDcuNXYtMWgtMXYxaC0xdjFoMXYxaDF2LTFoMXYtMWgtMXoiIGZpbGw9IiNBQUFDQjAiLz48L3N2Zz4=)}.ce-contextmenu-border-external{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iIzNENDc1NyIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNOSA1VjNIOHYyaDF6bTAgOXYtMkg4djJoMXpNNSA4SDN2MWgyVjh6bTkgMGgtMnYxaDJWOHpNOSA3djFoMXYxSDl2MUg4VjlIN1Y4aDFWN2gxeiIgZmlsbD0iI0FBQUNCMCIvPjwvc3ZnPg==)}.ce-contextmenu-border-td{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIvPjxwYXRoIHN0cm9rZT0iIzNENDc1NyIgZD0iTTguNSAyLjUgdjYgaC02Ii8+PC9zdmc+)}.ce-contextmenu-border-td-top{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIvPjxwYXRoIHN0cm9rZT0iIzNENDc1NyIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNMi41IDMgaDEyIi8+PC9zdmc+)}.ce-contextmenu-border-td-left{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIvPjxwYXRoIHN0cm9rZT0iIzNENDc1NyIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNMyAzIHYxMSIvPjwvc3ZnPg==)}.ce-contextmenu-border-td-bottom{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIvPjxwYXRoIHN0cm9rZT0iIzNENDc1NyIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNMi41IDE0IGgxMiIvPjwvc3ZnPg==)}.ce-contextmenu-border-td-right{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIvPjxwYXRoIHN0cm9rZT0iIzNENDc1NyIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNMTQgMyB2MTEiLz48L3N2Zz4=)}.ce-contextmenu-border-td-forward{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIgLz48cGF0aCBzdHJva2U9IiMzRDQ3NTciIGQ9Ik0xNCAzIGwtMTEgMTEiIC8+PC9zdmc+)}.ce-contextmenu-border-td-back{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIgLz48cGF0aCBzdHJva2U9IiMzRDQ3NTciIGQ9Ik0zIDMgbDExIDExIiAvPjwvc3ZnPg==)}.ce-hyperlink-popup{background:#fff;box-shadow:0 2px 12px #626b8433;border-radius:2px;color:#3d4757;padding:12px 16px;position:absolute;z-index:1;text-align:center;display:none}.ce-hyperlink-popup a{min-width:100px;max-width:300px;font-size:12px;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;text-decoration:none;border-bottom-width:1px;border-bottom-style:solid;color:#00f}.ce-zone-indicator>div{padding:3px 6px;color:#000;font-size:12px;background:rgb(218 231 252);position:absolute;transform-origin:0 0}.ce-zone-indicator-border__top,.ce-zone-indicator-border__bottom,.ce-zone-indicator-border__left,.ce-zone-indicator-border__right{display:block;position:absolute;z-index:0}.ce-zone-indicator-border__top{border-top:2px dashed rgb(238,238,238)}.ce-zone-indicator-border__bottom{border-top:2px dashed rgb(238,238,238);width:100%}.ce-zone-indicator-border__left{border-left:2px dashed rgb(238,238,238)}.ce-zone-indicator-border__right{border-right:2px dashed rgb(238,238,238)}.ce-zone-tip{display:none;align-items:center;height:30px;white-space:nowrap;position:fixed;opacity:.9;background-color:#000;padding:0 5px;border-radius:4px;z-index:9;transition:all .3s;outline:none;user-select:none;pointer-events:none;transform:translate(10px,10px)}.ce-zone-tip.show{display:flex}.ce-zone-tip span{color:#fff;font-size:12px}.ce-inputarea{width:100px;height:30px;min-width:0;min-height:0;margin:0;padding:0;left:0;right:0;letter-spacing:0;font-size:12px;position:absolute;z-index:-1;outline:none;resize:none;border:none;overflow:hidden;color:transparent;user-select:none;caret-color:transparent;background-color:transparent}.ce-cursor{width:1px;height:20px;left:0;right:0;position:absolute;outline:none;background-color:#000;pointer-events:none}.ce-cursor.ce-cursor--animation{animation-duration:1s;animation-iteration-count:infinite;animation-name:cursorAnimation}@keyframes cursorAnimation{0%{opacity:1}13%{opacity:0}50%{opacity:0}63%{opacity:1}to{opacity:1}}.ce-float-image{position:absolute;opacity:.5;pointer-events:none}')),document.head.appendChild(e)}}catch(i){console.error("vite-plugin-css-injected-by-js",i)}})();})();
|
|
1
|
+
(()=>{(function(){"use strict";try{if(typeof document!="undefined"){var e=document.createElement("style");e.id="canvas-editor-style",e.appendChild(document.createTextNode('.ce-select-control-popup{max-width:160px;min-width:69px;max-height:225px;position:absolute;z-index:1;border:1px solid #e4e7ed;border-radius:4px;background-color:#fff;box-shadow:0 2px 12px #0000001a;box-sizing:border-box;margin:5px 0;overflow-y:auto}.ce-select-control-popup ul{list-style:none;padding:3px 0;margin:0;box-sizing:border-box}.ce-select-control-popup ul li{font-size:13px;padding:0 20px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#666;height:36px;line-height:36px;box-sizing:border-box;cursor:pointer}.ce-select-control-popup ul li:hover{background-color:#eef2fd}.ce-select-control-popup ul li.active{color:var(--COLOR-HOVER, #5175f4);font-weight:700}.ce-date-container{display:none;width:300px;overflow:hidden;left:0;right:0;position:absolute;z-index:1;color:#606266;background:#ffffff;border-radius:4px;padding:10px;user-select:none;border:1px solid #e4e7ed;box-shadow:0 2px 12px #0000001a}.ce-date-container.active{display:block}.ce-date-wrap{display:none}.ce-date-wrap.active{display:block}.ce-date-title{display:flex;justify-content:center;align-items:center;text-align:center;color:#606266;font-size:16px}.ce-date-title>span{display:inline-block}.ce-date-title>span:not(.ce-date-title__now){font-family:cursive;cursor:pointer}.ce-date-title>span:not(.ce-date-title__now):hover{color:#5175f4}.ce-date-title .ce-date-title__pre-year,.ce-date-title .ce-date-title__pre-month{width:15%}.ce-date-title .ce-date-title__now{width:40%}.ce-date-title .ce-date-title__next-year,.ce-date-title .ce-date-title__next-month{width:15%}.ce-date-week{width:100%;display:flex;justify-content:center;margin-top:15px;padding-bottom:5px;border-bottom:1px solid #e4e7ed}.ce-date-week>span{list-style:none;width:14.28571%;text-align:center;color:#606266;font-size:14px}.ce-date-day{width:100%;display:flex;flex-wrap:wrap;align-items:center;margin-top:5px}.ce-date-day>div{width:14.28571%;height:40px;text-align:center;color:#606266;font-size:14px;cursor:pointer;line-height:40px;border-radius:4px}.ce-date-day>div:hover{color:#5175f4;opacity:.8}.ce-date-day>div.active{color:#5175f4;font-weight:700}.ce-date-day>div.disable{color:#c0c4cc}.ce-date-day>div.select{color:#fff;background-color:#5175f4}.ce-time-wrap{display:none;padding:10px;height:286px}.ce-time-wrap ::-webkit-scrollbar{width:0}.ce-time-wrap.active{display:flex}.ce-time-wrap li{list-style:none}.ce-time-wrap>li{width:33.3%;height:100%;text-align:center}.ce-time-wrap>li>span{transform:translateY(-5px);display:inline-block}.ce-time-wrap>li>ol{height:calc(100% - 20px);overflow-y:auto;border:1px solid #e2e2e2;position:relative}.ce-time-wrap>li:first-child>ol{border-right:0}.ce-time-wrap>li:last-child>ol{border-left:0}.ce-time-wrap>li>ol>li{line-height:30px;cursor:pointer;transition:all .3s}.ce-time-wrap>li>ol>li:hover{background-color:#eaeaea}.ce-time-wrap>li>ol>li.active{color:#fff;background:#5175F4}.ce-date-menu{width:100%;height:28px;display:flex;justify-content:flex-end;align-items:center;padding-top:10px;position:relative;border-top:1px solid #e4e7ed}.ce-date-menu button{display:inline-block;line-height:1;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #dcdfe6;color:#606266;appearance:none;text-align:center;box-sizing:border-box;outline:none;transition:.1s;font-weight:500;user-select:none;padding:7px 15px;font-size:12px;border-radius:3px;margin:0 0 0 10px}.ce-date-menu button:hover{color:#5175f4;border-color:#5175f4}.ce-date-menu button.ce-date-menu__time{border:1px solid transparent;position:absolute;left:0;margin-left:0}.ce-date-menu button.ce-date-menu__time:hover{color:#5175f4}.ce-block-item{position:absolute;z-index:0;overflow:hidden;border-radius:8px;background-color:#fff;border:1px solid rgb(235 236 240)}.ce-table-tool__row{position:absolute;width:12px;border-radius:6.5px;overflow:hidden;background-color:#e2e6ed}.ce-table-tool__row .ce-table-tool__row__item{width:100%;position:relative;cursor:pointer;transition:all .3s}.ce-table-tool__row .ce-table-tool__row__item:after{content:"";position:absolute;bottom:0;left:2px;width:8px;height:1px;background-color:#c0c6cf}.ce-table-tool__row .ce-table-tool__row__item:hover{background-color:#dadce0}.ce-table-tool__row .ce-table-tool__row__item:last-child:after{display:none}.ce-table-tool__quick__add{width:16px;height:16px;position:absolute;border-radius:50%;background-color:#e2e6ed;cursor:pointer}.ce-table-tool__quick__add:after{content:"+";color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-55%)}.ce-table-tool__select{width:16px;height:18px;position:absolute;border-radius:3px;cursor:pointer}.ce-table-tool__select:hover{background-color:#e2e6ed}.ce-table-tool__select:after{content:":::";color:#aaaaab;position:absolute;top:50%;left:50%;transform:translate(-75%,-50%) rotate(-90deg)}.ce-table-tool__col{position:absolute;height:12px;border-radius:6.5px;overflow:hidden;background-color:#e2e6ed;display:flex}.ce-table-tool__col .ce-table-tool__col__item{height:100%;position:relative;cursor:pointer;transition:all .3s}.ce-table-tool__col .ce-table-tool__col__item:after{content:"";position:absolute;top:2px;left:-1px;width:1px;height:8px;z-index:1;background-color:#c0c6cf}.ce-table-tool__col .ce-table-tool__col__item:hover{background-color:#dadce0}.ce-table-tool__col .ce-table-tool__col__item:first-child:after{display:none}.ce-table-tool__row .ce-table-tool__row__item.active,.ce-table-tool__col .ce-table-tool__col__item.active{background-color:#c4d7fa}.ce-table-tool__col .ce-table-tool__anchor{right:-5px;width:10px;height:12px;z-index:9;position:absolute;cursor:col-resize}.ce-table-tool__row .ce-table-tool__anchor{bottom:-5px;left:0;width:12px;height:10px;z-index:9;position:absolute;cursor:row-resize}.ce-table-anchor__line{z-index:9;position:absolute;border:1px dotted #000000}.ce-table-tool__border{position:absolute;z-index:1;background:transparent;pointer-events:none}.ce-table-tool__border__row{position:absolute;cursor:row-resize;pointer-events:auto}.ce-table-tool__border__col{position:absolute;cursor:col-resize;pointer-events:auto}.ce-resizer-selection{position:absolute;border:1px solid;pointer-events:none}.ce-resizer-selection .resizer-handle{position:absolute;z-index:9;width:10px;height:10px;box-shadow:0 1px 4px #0000004d;border-radius:5px;border:2px solid #ffffff;box-sizing:border-box;pointer-events:initial}.ce-resizer-selection .handle-0{cursor:nw-resize}.ce-resizer-selection .handle-1{cursor:n-resize}.ce-resizer-selection .handle-2{cursor:ne-resize}.ce-resizer-selection .handle-3{cursor:e-resize}.ce-resizer-selection .handle-4{cursor:se-resize}.ce-resizer-selection .handle-5{cursor:s-resize}.ce-resizer-selection .handle-6{cursor:sw-resize}.ce-resizer-selection .handle-7{cursor:w-resize}.ce-resizer-size-view{display:flex;align-items:center;height:20px;white-space:nowrap;position:absolute;z-index:9;top:-30px;left:0;opacity:.9;background-color:#000;padding:0 5px;border-radius:4px}.ce-resizer-size-view span{color:#fff;font-size:12px}.ce-resizer-image{position:absolute;opacity:.5}.ce-image-previewer{position:fixed;left:0;top:0;z-index:1000;width:100%;height:100%;overflow:hidden;background:#f2f4f7;display:flex;align-items:center;justify-content:center;animation:previewerAnimation .3s}@keyframes previewerAnimation{0%{opacity:.1}to{opacity:1}}.ce-image-previewer .image-close{width:24px;height:24px;display:inline-block;position:absolute;right:50px;top:30px;z-index:99;cursor:pointer;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIzLjk3IDdsMS40MTUgMS40MTQtNy43NzkgNy43NzggNy43NzkgNy43NzktMS40MTQgMS40MTQtNy43NzktNy43NzktNy43NzggNy43NzlMNyAyMy45N2w3Ljc3OC03Ljc3OUw3IDguNDE0IDguNDE0IDdsNy43NzggNy43NzhMMjMuOTcxIDd6IiBmaWxsPSIjM0Q0NzU3IiBmaWxsLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4=) no-repeat;background-size:100% 100%;transition:all .3s;border-radius:50%}.ce-image-previewer .image-close:hover{background-color:#e2e6ed}.ce-image-previewer .ce-image-container{position:relative}.ce-image-previewer .ce-image-container img{cursor:move;position:relative}.ce-image-previewer .ce-image-menu{height:50px;position:absolute;bottom:50px;z-index:99;display:flex;align-items:center;justify-content:center}.ce-image-previewer .ce-image-menu i{width:32px;height:32px;margin:0 8px;cursor:pointer;display:inline-block;background-repeat:no-repeat;background-size:100% 100%;transition:all .3s;border-radius:50%}.ce-image-previewer .ce-image-menu i:hover{background-color:#e2e6ed}.ce-image-previewer .ce-image-menu i.zoom-in{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE0IDE0di00aDJ2NGg0djJoLTR2NGgtMnYtNGgtNHYtMmg0em04Ljc0OSAxMC4xNjNBMTEuOTUyIDExLjk1MiAwIDAxMTUgMjdDOC4zNzMgMjcgMyAyMS42MjcgMyAxNVM4LjM3MyAzIDE1IDNzMTIgNS4zNzMgMTIgMTJjMCAyLjk1NC0xLjA2NyA1LjY1OC0yLjgzNyA3Ljc0OWw0LjkwOCA0LjkwOC0xLjQxNCAxLjQxNC00LjkwOC00LjkwOHpNMTUgMjVjNS41MjMgMCAxMC00LjQ3NyAxMC0xMFMyMC41MjMgNSAxNSA1IDUgOS40NzcgNSAxNXM0LjQ3NyAxMCAxMCAxMHoiIGZpbGw9IiMzRDQ3NTciLz48L3N2Zz4=)}.ce-image-previewer .ce-image-menu i.zoom-out{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIyLjc0OSAyNC4xNjNBMTEuOTUyIDExLjk1MiAwIDAxMTUgMjdDOC4zNzMgMjcgMyAyMS42MjcgMyAxNVM4LjM3MyAzIDE1IDNzMTIgNS4zNzMgMTIgMTJjMCAyLjk1NC0xLjA2NyA1LjY1OC0yLjgzNyA3Ljc0OWw0LjkwOCA0LjkwOC0xLjQxNCAxLjQxNC00LjkwOC00LjkwOHpNMTUgMjVjNS41MjMgMCAxMC00LjQ3NyAxMC0xMFMyMC41MjMgNSAxNSA1IDUgOS40NzcgNSAxNXM0LjQ3NyAxMCAxMCAxMHptLTUtMTFoMTB2MkgxMHYtMnoiIGZpbGw9IiMzRDQ3NTciLz48L3N2Zz4=)}.ce-image-previewer .ce-image-menu i.rotate{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNMTYgNGM2LjYyNyAwIDEyIDUuMzczIDEyIDEyYTExLjk3IDExLjk3IDAgMDEtNCA4Ljk0NFYyM2gtLjg2QTkuOTY4IDkuOTY4IDAgMDAyNiAxNmMwLTUuNTIzLTQuNDc3LTEwLTEwLTEwUzYgMTAuNDc3IDYgMTZjMCA1LjE4NSAzLjk0NyA5LjQ0OSA5IDkuOTV2Mi4wMDlDOC44NCAyNy40NTEgNCAyMi4yOTEgNCAxNiA0IDkuMzczIDkuMzczIDQgMTYgNHoiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxwYXRoIGQ9Ik0xOS44NzkgMjcuMzI4bDEuNzY3LTYuNzE3IDQuOTUgNC45NXoiLz48L2c+PC9zdmc+)}.ce-image-previewer .ce-image-menu i.original-size{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQgNGgyNHYyNEg0VjR6bTIgMnYyMGgyMFY2SDZ6bTQgNWgydjEwaC0yVjExem01IDJoMnYyaC0ydi0yem0wIDRoMnYyaC0ydi0yem01LTZoMnYxMGgtMlYxMXoiIGZpbGw9IiMzRDQ3NTciLz48L3N2Zz4=)}.ce-image-previewer .ce-image-menu i.image-download{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQuNSAxNXYzLjVoMTVWMTVIMjF2NUgzdi01aDEuNXptOC4yMzItMTEuMjI2djkuMTk2bDQuMDUtNC4wNSAxLjA2IDEuMDYtNS44MzQgNS44MzQtNS44MzMtNS44MzMgMS4wNi0xLjA2IDMuOTk4IDMuOTk2VjMuNzc0aDEuNXoiIGZpbGw9IiMzRDQ3NTciLz48L3N2Zz4=)}.ce-contextmenu-container{z-index:9;position:fixed;display:none;padding:4px;overflow-x:hidden;overflow-y:auto;background:#fff;box-shadow:0 2px 12px #38383833;border:1px solid #e2e6ed;border-radius:2px}.ce-contextmenu-content{display:flex;flex-direction:column}.ce-contextmenu-content .ce-contextmenu-sub-item:after{position:absolute;content:"";width:16px;height:16px;right:12px;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNMCAwaDE2djE2SDB6Ii8+PGcgZmlsbD0iIzc2N0M4NSI+PHBhdGggZD0iTTcgMTIuMjQzbC0uNzA3LS43MDcgNC4yNDMtNC4yNDMuNzA3LjcwN3oiLz48cGF0aCBkPSJNNi4yOTMgNC40NjRMNyAzLjc1NyAxMS4yNDMgOGwtLjcwNy43MDd6Ii8+PC9nPjwvZz48L3N2Zz4=)}.ce-contextmenu-content .ce-contextmenu-item{min-width:140px;padding:0 32px 0 16px;height:30px;display:flex;align-items:center;white-space:nowrap;box-sizing:border-box;cursor:pointer}.ce-contextmenu-content .ce-contextmenu-item.hover{background:rgba(25,55,88,.04)}.ce-contextmenu-content .ce-contextmenu-item span{max-width:300px;font-size:12px;color:#3d4757;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ce-contextmenu-content .ce-contextmenu-item span.ce-shortcut{color:#767c85;height:30px;flex:1;text-align:right;line-height:30px;margin-left:20px}.ce-contextmenu-content .ce-contextmenu-item i{width:16px;height:16px;vertical-align:middle;display:inline-block;background-repeat:no-repeat;background-size:100% 100%;flex-shrink:0;margin-right:8px}.ce-contextmenu-divider{background-color:#e2e6ed;margin:4px 16px;height:1px}.ce-contextmenu-print{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjM0Q0NzU3IiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0xMiA0aC0xVjJINXYySDRWMmExIDEgMCAwMTEtMWg2YTEgMSAwIDAxMSAxdjJ6bTAgNXY0YTEgMSAwIDAxLTEgMUg1YTEgMSAwIDAxLTEtMVY5aDF2NGg2VjloMXoiLz48cGF0aCBkPSJNMTIgMTJ2LTFoMlY1SDJ2NmgydjFIMmExIDEgMCAwMS0xLTFWNWExIDEgMCAwMTEtMWgxMmExIDEgMCAwMTEgMXY2YTEgMSAwIDAxLTEgMWgtMnoiLz48cGF0aCBkPSJNMyA4aDEwdjFIM3ptOC0yaDJ2MWgtMnoiLz48L2c+PC9zdmc+)}.ce-contextmenu-image{background-image:url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSLlm77lsYJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4PSIwIiB5PSIwIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxzdHlsZT4uc3Qwe2ZpbGw6IzNkNDc1N308L3N0eWxlPjxnIGlkPSJfeDMwXzAt5YWs5YWxX3gyRl8wMuW3peWFt+agj194MkZf5o+S5YWl5Zu+54mHLTE2cHgtIj48ZyBpZD0iR3JvdXAtMTkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEgMSkiPjxwYXRoIGlkPSJDb21iaW5lZC1TaGFwZSIgY2xhc3M9InN0MCIgZD0iTTEgMGgxMmMuNiAwIDEgLjQgMSAxdjExYzAgLjYtLjQgMS0xIDFIMWMtLjYgMC0xLS40LTEtMVYxYzAtLjYuNC0xIDEtMXptMCAxdjExaDEyVjFIMXoiLz48Y2lyY2xlIGlkPSLmpK3lnIblvaIiIGNsYXNzPSJzdDAiIGN4PSIxMCIgY3k9IjQiIHI9IjEiLz48cGF0aCBpZD0iUGF0aCIgY2xhc3M9InN0MCIgZD0iTTguNSAxMS4ybC00LTQuMUwxIDEwLjdWOS4yYzEuNy0xLjYgMi43LTIuNSAzLTIuOC40LS41LjctLjQgMSAwTDguNSAxMCAxMSA3LjNjLjQtLjUuNi0uNSAxLS4xbDIgMi44djEuNWwtMi41LTMuNC0zIDMuMXoiLz48L2c+PC9nPjwvc3ZnPg==)}.ce-contextmenu-image-change{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyIDQpIiBmaWxsPSIjM0Q0NzU3Ij48Y2lyY2xlIGZpbGwtcnVsZT0ibm9uemVybyIgY3g9IjMiIGN5PSIxIiByPSIxIi8+PHBhdGggZD0iTTcuNDczIDguMjIzTDMuNDcgNC4xMDcgMCA3LjY2N3YtMS41QzEuNzE1IDQuNiAyLjcwNyAzLjY2NCAyLjk3NSAzLjM1OGMuNDAyLS40NTcuNjUxLS4zOSAxLjA0MiAwTDcuNDczIDcgOS45NiA0LjM0OWMuNDE0LS40NjIuNjItLjQ2MiAxLjAxMS0uMDcxTDEzIDcuMDZ2MS41bC0yLjUxLTMuNDEtMy4wMTcgMy4wNzJ6Ii8+PC9nPjxwYXRoIGQ9Ik02IDEuNUgxLjV2MTJoMTN2LTRWMTNhLjUuNSAwIDAxLS41LjVIMmEuNS41IDAgMDEtLjUtLjVWMmEuNS41IDAgMDEuNS0uNWg0em04LjUgOFY2bC0uNS41aDFsLS41LS41djMuNXpNNiAxLjVoNEw5LjUgMXYxbC41LS41SDZ6IiBzdHJva2U9IiMzRDQ3NTciLz48cGF0aCBkPSJNMTMuMDg1IDEuMzE2bC0zLjgxNCA0YTEgMSAwIDAwMS40NTggMS4zNjhsMy44MTUtNGExIDEgMCAxMC0xLjQ1OS0xLjM2OHoiIGZpbGw9IiMzRDQ3NTciIGZpbGwtcnVsZT0ibm9uemVybyIvPjwvZz48L3N2Zz4=)}.ce-contextmenu-insert-row-col{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9IiMzRDQ3NTciIGQ9Ik04LjUgNS41aDZ2NGgtNnoiLz48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNNCA3djFoMlY3em0tMyAuNUw0IDV2NXpNMSAxaDEydjFIMXptMCAxMmgxMnYxSDF6Ii8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-insert-top-row{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNOCA1SDd2M2gxem0tLjUtM0wxMCA1SDV6Ii8+PHJlY3Qgc3Ryb2tlPSIjM0Q0NzU3IiB4PSIxLjUiIHk9IjEwLjUiIHdpZHRoPSIxMiIgaGVpZ2h0PSIzIiByeD0iMSIvPjwvZz48L3N2Zz4=)}.ce-contextmenu-insert-bottom-row{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNNyAxMWgxVjhIN3ptLjUgM0w1IDExaDV6Ii8+PHJlY3Qgc3Ryb2tlPSIjM0Q0NzU3IiB4PSIxLjUiIHk9IjIuNSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjMiIHJ4PSIxIi8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-insert-left-col{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNMTEgN3YxaDNWN3ptLTMgLjVMMTEgNXY1eiIvPjxyZWN0IHN0cm9rZT0iIzNENDc1NyIgdHJhbnNmb3JtPSJyb3RhdGUoOTAgNCA3LjUpIiB4PSItMiIgeT0iNiIgd2lkdGg9IjEyIiBoZWlnaHQ9IjMiIHJ4PSIxIi8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-insert-right-col{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNNSA4VjdIMnYxem0zLS41TDUgMTBWNXoiLz48cmVjdCBzdHJva2U9IiMzRDQ3NTciIHRyYW5zZm9ybT0icm90YXRlKDkwIDEyIDcuNSkiIHg9IjYiIHk9IjYiIHdpZHRoPSIxMiIgaGVpZ2h0PSIzIiByeD0iMSIvPjwvZz48L3N2Zz4=)}.ce-contextmenu-delete-row-col{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9IiM5MjlBQTgiIGQ9Ik04LjUgNi41aDZ2MmgtNnoiLz48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNMiAxMmgxMXYxSDJ6TTIgMmgxMXYxSDJ6bS42MyAzTDcgOS4zNWwtLjYzNS42NUwyIDUuNjN6Ii8+PHBhdGggZmlsbD0iIzNENDc1NyIgZD0iTTIgOS4zNjNMNi4zNTUgNSA3IDUuNzA3IDIuNjk1IDEweiIvPjwvZz48L3N2Zz4=)}.ce-contextmenu-delete-row{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9IiM5MjlBQTgiIGQ9Ik04LjUgNS41aDZ2NGgtNnoiLz48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNMSAxM2gxMnYxSDF6TTEgMWgxMnYxSDF6bTAgNGgxdjFIMXptMSAxaDF2MUgyem0xIDFoMXYxSDN6bTEtMWgxdjFINHptMS0xaDF2MUg1ek00IDhoMXYxSDR6TTIgOGgxdjFIMnptMyAxaDF2MUg1ek0xIDloMXYxSDF6Ii8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-delete-col{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9IiM5MjlBQTgiIGQ9Ik01LjUgNy41di02aDR2NnoiLz48cGF0aCBmaWxsPSIjM0Q0NzU3IiBkPSJNMTMgMTVWM2gxdjEyek0xIDE1VjNoMXYxMnptNCAwdi0xaDF2MXptMS0xdi0xaDF2MXptMS0xdi0xaDF2MXptLTEtMXYtMWgxdjF6bS0xLTF2LTFoMXYxem0zIDF2LTFoMXYxem0wIDJ2LTFoMXYxem0xLTN2LTFoMXYxem0wIDR2LTFoMXYxeiIvPjwvZz48L3N2Zz4=)}.ce-contextmenu-delete-table{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNMTQgMTNoLTF2LTNIMnYzSDF2LTNhMSAxIDAgMDExLTFoMTFhMSAxIDAgMDExIDF2M3oiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxwYXRoIGQ9Ik01LjYyNSAyTDEwIDYuMzc1IDkuMzc1IDcgNSAyLjYyNXoiLz48cGF0aCBkPSJNNSA2LjM3NUw5LjM3NSAybC42MjUuNjI1TDUuNjI1IDd6Ii8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-merge-cell{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNNiAxdjFIMnYxMWg0djFIMmExIDEgMCAwMS0xLTFWMmExIDEgMCAwMTEtMWg0em0zIDBoNGExIDEgMCAwMTEgMXYxMWExIDEgMCAwMS0xIDFIOXYtMWg0VjJIOVYxeiIvPjxwYXRoIGZpbGwtcnVsZT0ibm9uemVybyIgZD0iTTYgMWgxdjRINnptMiAwaDF2NEg4eiIvPjxwYXRoIGQ9Ik04IDcuNUwxMCA2djN6bS0xIDBMNSA2djN6Ii8+PHBhdGggZD0iTTkgN2gzdjFIOXpNMyA3aDN2MUgzeiIvPjxwYXRoIGZpbGwtcnVsZT0ibm9uemVybyIgZD0iTTggMTBoMXY0SDh6bS0yIDBoMXY0SDZ6Ii8+PC9nPjwvc3ZnPg==)}.ce-contextmenu-merge-cancel-cell{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNNiAxdjFIMnYxMWg0djFIMmExIDEgMCAwMS0xLTFWMmExIDEgMCAwMTEtMWg0em0zIDBoNGExIDEgMCAwMTEgMXYxMWExIDEgMCAwMS0xIDFIOXYtMWg0VjJIOVYxeiIvPjxwYXRoIGZpbGwtcnVsZT0ibm9uemVybyIgZD0iTTYgMWgxdjRINnptMiAwaDF2NEg4eiIvPjxwYXRoIGQ9Ik0zIDcuNUw1IDZ2M3ptOSAwTDEwIDZ2M3oiLz48cGF0aCBkPSJNNCA3aDN2MUg0em00IDBoM3YxSDh6Ii8+PHBhdGggZmlsbC1ydWxlPSJub256ZXJvIiBkPSJNOCAxMGgxdjRIOHptLTIgMGgxdjRINnoiLz48L2c+PC9zdmc+)}.ce-contextmenu-vertical-align{background-image:url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMiAxM2gxMnYxSDJ6bTAtM2g4djFIMnptMC0zaDEydjFIMnptMC02aDEydjFIMnptMCAzaDh2MUgyeiIgZmlsbD0iIzNkNDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIi8+PC9zdmc+)}.ce-contextmenu-vertical-align-top{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTggOEg3djZoMXptLS41LTNMMTAgOEg1ek0yIDNoMTF2MUgyeiIgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIi8+PC9zdmc+)}.ce-contextmenu-vertical-align-middle{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOCAxMkg3djNoMXptLS41LTNsMi41IDNINXpNNyAzaDFWMEg3em0uNSAzTDUgM2g1ek0yIDdoMTF2MUgyeiIgZmlsbD0iIzNENDc1NyIgZmlsbC1ydWxlPSJldmVub2RkIi8+PC9zdmc+)}.ce-contextmenu-vertical-align-bottom{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTcgOWgxVjNIN3ptLjUgM0w1IDloNXpNMiAxM2gxMXYxSDJ6IiBmaWxsPSIjM0Q0NzU3IiBmaWxsLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4=)}.ce-contextmenu-border-all{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iIzNENDc1NyIvPjxwYXRoIGZpbGw9IiMzRDQ3NTciIGQ9Ik0zIDhoMTF2MUgzeiIvPjxwYXRoIGZpbGw9IiMzRDQ3NTciIGQ9Ik05IDN2MTFIOFYzeiIvPjwvc3ZnPg==)}.ce-contextmenu-border-empty{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMyAzaC0xVjJoMWExIDEgMCAwMTEgMXYxaC0xVjN6bS0zLTF2MUg4LjV2MmgtMVYzSDZWMmg0ek00IDJ2MUgzdjFIMlYzYTEgMSAwIDAxMS0xaDF6TTIgNmgxdjEuNWgydjFIM1YxMEgyVjZ6bTAgNmgxdjFoMXYxSDNhMSAxIDAgMDEtMS0xdi0xem00IDJ2LTFoMS41di0yaDF2MkgxMHYxSDZ6bTYgMHYtMWgxdi0xaDF2MWExIDEgMCAwMS0xIDFoLTF6bTItNGgtMVY4LjVoLTJ2LTFoMlY2aDF2NHpNOC41IDcuNXYtMWgtMXYxaC0xdjFoMXYxaDF2LTFoMXYtMWgtMXoiIGZpbGw9IiNBQUFDQjAiLz48L3N2Zz4=)}.ce-contextmenu-border-dash{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMyAzaC0xVjJoMWExIDEgMCAwMTEgMXYxaC0xVjN6bS0zLTF2MUg4LjV2MmgtMVYzSDZWMmg0ek00IDJ2MUgzdjFIMlYzYTEgMSAwIDAxMS0xaDF6TTIgNmgxdjEuNWgydjFIM1YxMEgyVjZ6bTAgNmgxdjFoMXYxSDNhMSAxIDAgMDEtMS0xdi0xem00IDJ2LTFoMS41di0yaDF2MkgxMHYxSDZ6bTYgMHYtMWgxdi0xaDF2MWExIDEgMCAwMS0xIDFoLTF6bTItNGgtMVY4LjVoLTJ2LTFoMlY2aDF2NHpNOC41IDcuNXYtMWgtMXYxaC0xdjFoMXYxaDF2LTFoMXYtMWgtMXoiIGZpbGw9IiMwMDAwMDAiLz48L3N2Zz4=)}.ce-contextmenu-border-external{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iIzNENDc1NyIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNOSA1VjNIOHYyaDF6bTAgOXYtMkg4djJoMXpNNSA4SDN2MWgyVjh6bTkgMGgtMnYxaDJWOHpNOSA3djFoMXYxSDl2MUg4VjlIN1Y4aDFWN2gxeiIgZmlsbD0iI0FBQUNCMCIvPjwvc3ZnPg==)}.ce-contextmenu-border-internal{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNOSA1VjNIOHYyaDF6bTAgOXYtMkg4djJoMXpNNSA4SDN2MWgyVjh6bTkgMGgtMnYxaDJWOHpNOSA3djFoMXYxSDl2MUg4VjlIN1Y4aDFWN2gxeiIgZmlsbD0iIzNENDc1NyIvPjwvc3ZnPg==)}.ce-contextmenu-border-td{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIvPjxwYXRoIHN0cm9rZT0iIzNENDc1NyIgZD0iTTguNSAyLjUgdjYgaC02Ii8+PC9zdmc+)}.ce-contextmenu-border-td-top{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIvPjxwYXRoIHN0cm9rZT0iIzNENDc1NyIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNMi41IDMgaDEyIi8+PC9zdmc+)}.ce-contextmenu-border-td-left{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIvPjxwYXRoIHN0cm9rZT0iIzNENDc1NyIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNMyAzIHYxMSIvPjwvc3ZnPg==)}.ce-contextmenu-border-td-bottom{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIvPjxwYXRoIHN0cm9rZT0iIzNENDc1NyIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNMi41IDE0IGgxMiIvPjwvc3ZnPg==)}.ce-contextmenu-border-td-right{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIvPjxwYXRoIHN0cm9rZT0iIzNENDc1NyIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNMTQgMyB2MTEiLz48L3N2Zz4=)}.ce-contextmenu-border-td-forward{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIgLz48cGF0aCBzdHJva2U9IiMzRDQ3NTciIGQ9Ik0xNCAzIGwtMTEgMTEiIC8+PC9zdmc+)}.ce-contextmenu-border-td-back{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSAzYS41LjUgMCAwMS41LS41aDExYS41LjUgMCAwMS41LjV2MTFhLjUuNSAwIDAxLS41LjVIM2EuNS41IDAgMDEtLjUtLjVWM3oiIHN0cm9rZT0iI0FBQUNCMCIgLz48cGF0aCBzdHJva2U9IiMzRDQ3NTciIGQ9Ik0zIDMgbDExIDExIiAvPjwvc3ZnPg==)}.ce-hyperlink-popup{background:#fff;box-shadow:0 2px 12px #626b8433;border-radius:2px;color:#3d4757;padding:12px 16px;position:absolute;z-index:1;text-align:center;display:none}.ce-hyperlink-popup a{min-width:100px;max-width:300px;font-size:12px;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;text-decoration:none;border-bottom-width:1px;border-bottom-style:solid;color:#00f}.ce-zone-indicator>div{padding:3px 6px;color:#000;font-size:12px;background:rgb(218 231 252);position:absolute;transform-origin:0 0}.ce-zone-indicator-border__top,.ce-zone-indicator-border__bottom,.ce-zone-indicator-border__left,.ce-zone-indicator-border__right{display:block;position:absolute;z-index:0}.ce-zone-indicator-border__top{border-top:2px dashed rgb(238,238,238)}.ce-zone-indicator-border__bottom{border-top:2px dashed rgb(238,238,238);width:100%}.ce-zone-indicator-border__left{border-left:2px dashed rgb(238,238,238)}.ce-zone-indicator-border__right{border-right:2px dashed rgb(238,238,238)}.ce-zone-tip{display:none;align-items:center;height:30px;white-space:nowrap;position:fixed;opacity:.9;background-color:#000;padding:0 5px;border-radius:4px;z-index:9;transition:all .3s;outline:none;user-select:none;pointer-events:none;transform:translate(10px,10px)}.ce-zone-tip.show{display:flex}.ce-zone-tip span{color:#fff;font-size:12px}.ce-inputarea{width:100px;height:30px;min-width:0;min-height:0;margin:0;padding:0;left:0;top:0;letter-spacing:0;font-size:12px;position:absolute;z-index:-1;outline:none;resize:none;border:none;overflow:hidden;color:transparent;user-select:none;caret-color:transparent;background-color:transparent}.ce-cursor{width:1px;height:20px;left:0;right:0;position:absolute;outline:none;background-color:#000;pointer-events:none}.ce-cursor.ce-cursor--animation{animation-duration:1s;animation-iteration-count:infinite;animation-name:cursorAnimation}@keyframes cursorAnimation{0%{opacity:1}13%{opacity:0}50%{opacity:0}63%{opacity:1}to{opacity:1}}.ce-float-image{position:absolute;opacity:.5;pointer-events:none}')),document.head.appendChild(e)}}catch(i){console.error("vite-plugin-css-injected-by-js",i)}})();})();
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
3
|
var __defProps = Object.defineProperties;
|
|
4
4
|
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
@@ -23,7 +23,7 @@ var __publicField = (obj, key, value) => {
|
|
|
23
23
|
return value;
|
|
24
24
|
};
|
|
25
25
|
var index = "";
|
|
26
|
-
const version = "0.9.
|
|
26
|
+
const version = "0.9.97";
|
|
27
27
|
var MaxHeightRatio;
|
|
28
28
|
(function(MaxHeightRatio2) {
|
|
29
29
|
MaxHeightRatio2["HALF"] = "half";
|
|
@@ -384,6 +384,9 @@ function isRectIntersect(rect1, rect2) {
|
|
|
384
384
|
}
|
|
385
385
|
return true;
|
|
386
386
|
}
|
|
387
|
+
function isNonValue(value) {
|
|
388
|
+
return value === void 0 || value === null;
|
|
389
|
+
}
|
|
387
390
|
const CURSOR_AGENT_OFFSET_HEIGHT = 12;
|
|
388
391
|
const defaultCursorOption = {
|
|
389
392
|
width: 1,
|
|
@@ -412,6 +415,7 @@ var ElementType;
|
|
|
412
415
|
ElementType2["SEPARATOR"] = "separator";
|
|
413
416
|
ElementType2["PAGE_BREAK"] = "pageBreak";
|
|
414
417
|
ElementType2["CONTROL"] = "control";
|
|
418
|
+
ElementType2["AREA"] = "area";
|
|
415
419
|
ElementType2["CHECKBOX"] = "checkbox";
|
|
416
420
|
ElementType2["RADIO"] = "radio";
|
|
417
421
|
ElementType2["LATEX"] = "latex";
|
|
@@ -445,6 +449,7 @@ const EDITOR_ELEMENT_COPY_ATTR = [
|
|
|
445
449
|
"strikeout",
|
|
446
450
|
"rowFlex",
|
|
447
451
|
"url",
|
|
452
|
+
"areaId",
|
|
448
453
|
"hyperlinkId",
|
|
449
454
|
"dateId",
|
|
450
455
|
"dateFormat",
|
|
@@ -488,7 +493,9 @@ const EDITOR_ELEMENT_ZIP_ATTR = [
|
|
|
488
493
|
"imgFloatPosition",
|
|
489
494
|
"textDecoration",
|
|
490
495
|
"extension",
|
|
491
|
-
"externalId"
|
|
496
|
+
"externalId",
|
|
497
|
+
"areaId",
|
|
498
|
+
"area"
|
|
492
499
|
];
|
|
493
500
|
const TABLE_TD_ZIP_ATTR = [
|
|
494
501
|
"conceptId",
|
|
@@ -527,10 +534,12 @@ const CONTROL_STYLE_ATTR = [
|
|
|
527
534
|
"italic",
|
|
528
535
|
"strikeout"
|
|
529
536
|
];
|
|
537
|
+
const AREA_CONTEXT_ATTR = ["areaId", "area"];
|
|
530
538
|
const EDITOR_ELEMENT_CONTEXT_ATTR = [
|
|
531
539
|
...TABLE_CONTEXT_ATTR,
|
|
532
540
|
...TITLE_CONTEXT_ATTR,
|
|
533
|
-
...LIST_CONTEXT_ATTR
|
|
541
|
+
...LIST_CONTEXT_ATTR,
|
|
542
|
+
...AREA_CONTEXT_ATTR
|
|
534
543
|
];
|
|
535
544
|
const TEXTLIKE_ELEMENT_TYPE = [
|
|
536
545
|
ElementType.TEXT,
|
|
@@ -3773,6 +3782,11 @@ var ControlIndentation;
|
|
|
3773
3782
|
ControlIndentation2["ROW_START"] = "rowStart";
|
|
3774
3783
|
ControlIndentation2["VALUE_START"] = "valueStart";
|
|
3775
3784
|
})(ControlIndentation || (ControlIndentation = {}));
|
|
3785
|
+
var ControlState;
|
|
3786
|
+
(function(ControlState2) {
|
|
3787
|
+
ControlState2["ACTIVE"] = "active";
|
|
3788
|
+
ControlState2["INACTIVE"] = "inactive";
|
|
3789
|
+
})(ControlState || (ControlState = {}));
|
|
3776
3790
|
var BackgroundSize;
|
|
3777
3791
|
(function(BackgroundSize2) {
|
|
3778
3792
|
BackgroundSize2["CONTAIN"] = "contain";
|
|
@@ -4064,6 +4078,7 @@ function unzipElementList(elementList) {
|
|
|
4064
4078
|
return result;
|
|
4065
4079
|
}
|
|
4066
4080
|
function formatElementList(elementList, options) {
|
|
4081
|
+
var _a;
|
|
4067
4082
|
const { isHandleFirstElement = true, isForceCompensation = false, editorOptions } = options;
|
|
4068
4083
|
const startElement = elementList[0];
|
|
4069
4084
|
if (isForceCompensation || isHandleFirstElement && (startElement == null ? void 0 : startElement.type) !== ElementType.LIST && ((startElement == null ? void 0 : startElement.type) && startElement.type !== ElementType.TEXT || !START_LINE_BREAK_REG.test(startElement == null ? void 0 : startElement.value))) {
|
|
@@ -4082,7 +4097,7 @@ function formatElementList(elementList, options) {
|
|
|
4082
4097
|
isForceCompensation: false
|
|
4083
4098
|
}));
|
|
4084
4099
|
if (valueList.length) {
|
|
4085
|
-
const titleId = getUUID();
|
|
4100
|
+
const titleId = el.titleId || getUUID();
|
|
4086
4101
|
const titleOptions = editorOptions.title;
|
|
4087
4102
|
for (let v = 0; v < valueList.length; v++) {
|
|
4088
4103
|
const value = valueList[v];
|
|
@@ -4123,6 +4138,39 @@ function formatElementList(elementList, options) {
|
|
|
4123
4138
|
}
|
|
4124
4139
|
}
|
|
4125
4140
|
i--;
|
|
4141
|
+
} else if (el.type === ElementType.AREA) {
|
|
4142
|
+
elementList.splice(i, 1);
|
|
4143
|
+
const valueList = (el == null ? void 0 : el.valueList) || [];
|
|
4144
|
+
formatElementList(valueList, __spreadProps(__spreadValues({}, options), {
|
|
4145
|
+
isHandleFirstElement: false,
|
|
4146
|
+
isForceCompensation: false
|
|
4147
|
+
}));
|
|
4148
|
+
if (valueList.length) {
|
|
4149
|
+
const areaId = getUUID();
|
|
4150
|
+
for (let v = 0; v < valueList.length; v++) {
|
|
4151
|
+
const value = valueList[v];
|
|
4152
|
+
value.areaId = el.areaId || areaId;
|
|
4153
|
+
value.area = el.area;
|
|
4154
|
+
if (value.type === ElementType.TABLE) {
|
|
4155
|
+
const trList = value.trList;
|
|
4156
|
+
for (let r = 0; r < trList.length; r++) {
|
|
4157
|
+
const tr = trList[r];
|
|
4158
|
+
for (let d = 0; d < tr.tdList.length; d++) {
|
|
4159
|
+
const td = tr.tdList[d];
|
|
4160
|
+
const tdValueList = td.value;
|
|
4161
|
+
for (let t = 0; t < tdValueList.length; t++) {
|
|
4162
|
+
const tdValue = tdValueList[t];
|
|
4163
|
+
tdValue.areaId = el.areaId || areaId;
|
|
4164
|
+
tdValue.area = el.area;
|
|
4165
|
+
}
|
|
4166
|
+
}
|
|
4167
|
+
}
|
|
4168
|
+
}
|
|
4169
|
+
elementList.splice(i, 0, value);
|
|
4170
|
+
i++;
|
|
4171
|
+
}
|
|
4172
|
+
}
|
|
4173
|
+
i--;
|
|
4126
4174
|
} else if (el.type === ElementType.TABLE) {
|
|
4127
4175
|
const tableId = getUUID();
|
|
4128
4176
|
el.id = tableId;
|
|
@@ -4192,7 +4240,7 @@ function formatElementList(elementList, options) {
|
|
|
4192
4240
|
}
|
|
4193
4241
|
const { prefix, postfix, value, placeholder, code, type, valueSets } = el.control;
|
|
4194
4242
|
const { editorOptions: { control: controlOption, checkbox: checkboxOption, radio: radioOption } } = options;
|
|
4195
|
-
const controlId = getUUID();
|
|
4243
|
+
const controlId = el.controlId || getUUID();
|
|
4196
4244
|
elementList.splice(i, 1);
|
|
4197
4245
|
const controlContext = pickObject(el, [
|
|
4198
4246
|
...EDITOR_ELEMENT_CONTEXT_ATTR,
|
|
@@ -4345,7 +4393,7 @@ function formatElementList(elementList, options) {
|
|
|
4345
4393
|
i++;
|
|
4346
4394
|
}
|
|
4347
4395
|
i--;
|
|
4348
|
-
} else if ((!el.type || TEXTLIKE_ELEMENT_TYPE.includes(el.type)) && el.value.length > 1) {
|
|
4396
|
+
} else if ((!el.type || TEXTLIKE_ELEMENT_TYPE.includes(el.type)) && ((_a = el.value) == null ? void 0 : _a.length) > 1) {
|
|
4349
4397
|
elementList.splice(i, 1);
|
|
4350
4398
|
const valueList = splitText(el.value);
|
|
4351
4399
|
for (let v = 0; v < valueList.length; v++) {
|
|
@@ -4406,7 +4454,7 @@ function pickElementAttr(payload, option = {}) {
|
|
|
4406
4454
|
return element;
|
|
4407
4455
|
}
|
|
4408
4456
|
function zipElementList(payload, options = {}) {
|
|
4409
|
-
const { extraPickAttrs } = options;
|
|
4457
|
+
const { extraPickAttrs, isClassifyArea = false } = options;
|
|
4410
4458
|
const elementList = deepClone(payload);
|
|
4411
4459
|
const zipElementListData = [];
|
|
4412
4460
|
let e = 0;
|
|
@@ -4423,6 +4471,7 @@ function zipElementList(payload, options = {}) {
|
|
|
4423
4471
|
const titleElement = {
|
|
4424
4472
|
type: ElementType.TITLE,
|
|
4425
4473
|
title: element.title,
|
|
4474
|
+
titleId,
|
|
4426
4475
|
value: "",
|
|
4427
4476
|
level
|
|
4428
4477
|
};
|
|
@@ -4468,6 +4517,35 @@ function zipElementList(payload, options = {}) {
|
|
|
4468
4517
|
listElement.valueList = zipElementList(valueList, options);
|
|
4469
4518
|
element = listElement;
|
|
4470
4519
|
}
|
|
4520
|
+
} else if (element.areaId && element.area) {
|
|
4521
|
+
const areaId = element.areaId;
|
|
4522
|
+
const area = element.area;
|
|
4523
|
+
const valueList = [];
|
|
4524
|
+
while (e < elementList.length) {
|
|
4525
|
+
const areaE = elementList[e];
|
|
4526
|
+
if (areaId !== areaE.areaId) {
|
|
4527
|
+
e--;
|
|
4528
|
+
break;
|
|
4529
|
+
}
|
|
4530
|
+
delete areaE.area;
|
|
4531
|
+
delete areaE.areaId;
|
|
4532
|
+
valueList.push(areaE);
|
|
4533
|
+
e++;
|
|
4534
|
+
}
|
|
4535
|
+
const areaElementList = zipElementList(valueList, options);
|
|
4536
|
+
if (isClassifyArea) {
|
|
4537
|
+
const areaElement = {
|
|
4538
|
+
type: ElementType.AREA,
|
|
4539
|
+
value: "",
|
|
4540
|
+
areaId,
|
|
4541
|
+
area
|
|
4542
|
+
};
|
|
4543
|
+
areaElement.valueList = areaElementList;
|
|
4544
|
+
element = areaElement;
|
|
4545
|
+
} else {
|
|
4546
|
+
zipElementListData.splice(e, 0, ...areaElementList);
|
|
4547
|
+
continue;
|
|
4548
|
+
}
|
|
4471
4549
|
} else if (element.type === ElementType.TABLE) {
|
|
4472
4550
|
if (element.pagingId) {
|
|
4473
4551
|
let tableIndex = e + 1;
|
|
@@ -4494,7 +4572,9 @@ function zipElementList(payload, options = {}) {
|
|
|
4494
4572
|
const zipTd = {
|
|
4495
4573
|
colspan: td.colspan,
|
|
4496
4574
|
rowspan: td.rowspan,
|
|
4497
|
-
value: zipElementList(td.value, options)
|
|
4575
|
+
value: zipElementList(td.value, __spreadProps(__spreadValues({}, options), {
|
|
4576
|
+
isClassifyArea: false
|
|
4577
|
+
}))
|
|
4498
4578
|
};
|
|
4499
4579
|
TABLE_TD_ZIP_ATTR.forEach((attr) => {
|
|
4500
4580
|
const value = td[attr];
|
|
@@ -4645,7 +4725,7 @@ function getAnchorElement(elementList, anchorIndex) {
|
|
|
4645
4725
|
if (!anchorElement)
|
|
4646
4726
|
return null;
|
|
4647
4727
|
const anchorNextElement = elementList[anchorIndex + 1];
|
|
4648
|
-
return !anchorElement.listId && anchorElement.value === ZERO && anchorNextElement && anchorNextElement.value !== ZERO ? anchorNextElement : anchorElement;
|
|
4728
|
+
return !anchorElement.listId && anchorElement.value === ZERO && anchorNextElement && anchorNextElement.value !== ZERO && anchorElement.areaId === anchorNextElement.areaId ? anchorNextElement : anchorElement;
|
|
4649
4729
|
}
|
|
4650
4730
|
function formatElementContext(sourceElementList, formatElementList2, anchorIndex, options) {
|
|
4651
4731
|
var _a, _b, _c;
|
|
@@ -4664,7 +4744,11 @@ function formatElementContext(sourceElementList, formatElementList2, anchorIndex
|
|
|
4664
4744
|
isBreakWarped = true;
|
|
4665
4745
|
}
|
|
4666
4746
|
if (isBreakWarped || !copyElement.listId && targetElement.type === ElementType.LIST) {
|
|
4667
|
-
const cloneAttr2 = [
|
|
4747
|
+
const cloneAttr2 = [
|
|
4748
|
+
...TABLE_CONTEXT_ATTR,
|
|
4749
|
+
...EDITOR_ROW_ATTR,
|
|
4750
|
+
...AREA_CONTEXT_ATTR
|
|
4751
|
+
];
|
|
4668
4752
|
cloneProperty(cloneAttr2, copyElement, targetElement);
|
|
4669
4753
|
(_b = targetElement.valueList) == null ? void 0 : _b.forEach((valueItem) => {
|
|
4670
4754
|
cloneProperty(cloneAttr2, copyElement, valueItem);
|
|
@@ -5313,8 +5397,9 @@ function getIsClipboardContainFile(clipboardData) {
|
|
|
5313
5397
|
}
|
|
5314
5398
|
function pasteElement(host, elementList) {
|
|
5315
5399
|
const draw = host.getDraw();
|
|
5316
|
-
if (draw.isReadonly() || draw.isDisabled())
|
|
5400
|
+
if (draw.isReadonly() || draw.isDisabled() || draw.getControl().getIsDisabledPasteControl()) {
|
|
5317
5401
|
return;
|
|
5402
|
+
}
|
|
5318
5403
|
const rangeManager = draw.getRange();
|
|
5319
5404
|
const { startIndex } = rangeManager.getRange();
|
|
5320
5405
|
const originalElementList = draw.getElementList();
|
|
@@ -5599,6 +5684,13 @@ class Cursor {
|
|
|
5599
5684
|
this.blinkTimeout = null;
|
|
5600
5685
|
}
|
|
5601
5686
|
}
|
|
5687
|
+
focus() {
|
|
5688
|
+
const agentCursorDom = this.cursorAgent.getAgentCursorDom();
|
|
5689
|
+
if (document.activeElement !== agentCursorDom) {
|
|
5690
|
+
agentCursorDom.focus();
|
|
5691
|
+
agentCursorDom.setSelectionRange(0, 0);
|
|
5692
|
+
}
|
|
5693
|
+
}
|
|
5602
5694
|
drawCursor(payload) {
|
|
5603
5695
|
let cursorPosition = this.position.getCursorPosition();
|
|
5604
5696
|
if (!cursorPosition)
|
|
@@ -5621,10 +5713,7 @@ class Cursor {
|
|
|
5621
5713
|
const agentCursorDom = this.cursorAgent.getAgentCursorDom();
|
|
5622
5714
|
if (isFocus) {
|
|
5623
5715
|
setTimeout(() => {
|
|
5624
|
-
|
|
5625
|
-
agentCursorDom.focus();
|
|
5626
|
-
agentCursorDom.setSelectionRange(0, 0);
|
|
5627
|
-
}
|
|
5716
|
+
this.focus();
|
|
5628
5717
|
});
|
|
5629
5718
|
}
|
|
5630
5719
|
const descent = metrics.boundingBoxDescent < 0 ? 0 : metrics.boundingBoxDescent;
|
|
@@ -6522,7 +6611,7 @@ function del(evt, host) {
|
|
|
6522
6611
|
}
|
|
6523
6612
|
}
|
|
6524
6613
|
function enter(evt, host) {
|
|
6525
|
-
var _a, _b;
|
|
6614
|
+
var _a, _b, _c;
|
|
6526
6615
|
const draw = host.getDraw();
|
|
6527
6616
|
if (draw.isReadonly())
|
|
6528
6617
|
return;
|
|
@@ -6538,7 +6627,7 @@ function enter(evt, host) {
|
|
|
6538
6627
|
draw.getListParticle().unsetList();
|
|
6539
6628
|
return;
|
|
6540
6629
|
}
|
|
6541
|
-
|
|
6630
|
+
let enterText = {
|
|
6542
6631
|
value: ZERO
|
|
6543
6632
|
};
|
|
6544
6633
|
if (evt.shiftKey && startElement.listId) {
|
|
@@ -6548,8 +6637,11 @@ function enter(evt, host) {
|
|
|
6548
6637
|
isBreakWhenWrap: true,
|
|
6549
6638
|
editorOptions: draw.getOptions()
|
|
6550
6639
|
});
|
|
6551
|
-
if (
|
|
6552
|
-
|
|
6640
|
+
if (evt.shiftKey && endElement.areaId && endElement.areaId !== ((_b = elementList[endIndex + 1]) == null ? void 0 : _b.areaId)) {
|
|
6641
|
+
enterText = omitObject(enterText, AREA_CONTEXT_ATTR);
|
|
6642
|
+
}
|
|
6643
|
+
if (!(endElement.titleId && endElement.titleId !== ((_c = elementList[endIndex + 1]) == null ? void 0 : _c.titleId))) {
|
|
6644
|
+
const copyElement = rangeManager.getRangeAnchorStyle(elementList, endIndex);
|
|
6553
6645
|
if (copyElement) {
|
|
6554
6646
|
const copyAttr = [...EDITOR_ROW_ATTR];
|
|
6555
6647
|
if (copyElement.controlComponent !== ControlComponent.POSTFIX) {
|
|
@@ -7261,7 +7353,7 @@ function input(data2, host) {
|
|
|
7261
7353
|
`, ZERO);
|
|
7262
7354
|
const { startIndex, endIndex } = rangeManager.getRange();
|
|
7263
7355
|
const elementList = draw.getElementList();
|
|
7264
|
-
const copyElement =
|
|
7356
|
+
const copyElement = rangeManager.getRangeAnchorStyle(elementList, endIndex);
|
|
7265
7357
|
if (!copyElement)
|
|
7266
7358
|
return;
|
|
7267
7359
|
const isDesignMode = draw.isDesignMode();
|
|
@@ -8076,6 +8168,7 @@ class Position {
|
|
|
8076
8168
|
}
|
|
8077
8169
|
}
|
|
8078
8170
|
x += curRow.offsetX || 0;
|
|
8171
|
+
y += curRow.offsetY || 0;
|
|
8079
8172
|
const tablePreX = x;
|
|
8080
8173
|
const tablePreY = y;
|
|
8081
8174
|
for (let j = 0; j < curRow.elementList.length; j++) {
|
|
@@ -8436,7 +8529,7 @@ class Position {
|
|
|
8436
8529
|
}
|
|
8437
8530
|
}
|
|
8438
8531
|
const margins = this.draw.getMargins();
|
|
8439
|
-
if (y <= margins[
|
|
8532
|
+
if (y <= margins[0]) {
|
|
8440
8533
|
for (let p = 0; p < positionList.length; p++) {
|
|
8441
8534
|
const position = positionList[p];
|
|
8442
8535
|
if (position.pageNo !== positionNo || position.rowNo !== 0)
|
|
@@ -8588,6 +8681,7 @@ class RangeManager {
|
|
|
8588
8681
|
__publicField(this, "eventBus");
|
|
8589
8682
|
__publicField(this, "position");
|
|
8590
8683
|
__publicField(this, "historyManager");
|
|
8684
|
+
__publicField(this, "defaultStyle");
|
|
8591
8685
|
this.draw = draw;
|
|
8592
8686
|
this.options = draw.getOptions();
|
|
8593
8687
|
this.listener = draw.getListener();
|
|
@@ -8598,6 +8692,7 @@ class RangeManager {
|
|
|
8598
8692
|
startIndex: -1,
|
|
8599
8693
|
endIndex: -1
|
|
8600
8694
|
};
|
|
8695
|
+
this.defaultStyle = null;
|
|
8601
8696
|
}
|
|
8602
8697
|
getRange() {
|
|
8603
8698
|
return this.range;
|
|
@@ -8605,10 +8700,32 @@ class RangeManager {
|
|
|
8605
8700
|
clearRange() {
|
|
8606
8701
|
this.setRange(-1, -1);
|
|
8607
8702
|
}
|
|
8703
|
+
setDefaultStyle(style) {
|
|
8704
|
+
if (!style) {
|
|
8705
|
+
this.defaultStyle = null;
|
|
8706
|
+
} else {
|
|
8707
|
+
this.defaultStyle = __spreadValues(__spreadValues({}, this.defaultStyle), style);
|
|
8708
|
+
}
|
|
8709
|
+
}
|
|
8710
|
+
getDefaultStyle() {
|
|
8711
|
+
return this.defaultStyle;
|
|
8712
|
+
}
|
|
8713
|
+
getRangeAnchorStyle(elementList, anchorIndex) {
|
|
8714
|
+
const anchorElement = getAnchorElement(elementList, anchorIndex);
|
|
8715
|
+
if (!anchorElement)
|
|
8716
|
+
return null;
|
|
8717
|
+
return __spreadValues(__spreadValues({}, anchorElement), this.defaultStyle);
|
|
8718
|
+
}
|
|
8608
8719
|
getIsCollapsed() {
|
|
8609
8720
|
const { startIndex, endIndex } = this.range;
|
|
8610
8721
|
return startIndex === endIndex;
|
|
8611
8722
|
}
|
|
8723
|
+
getIsSelection() {
|
|
8724
|
+
const { startIndex, endIndex } = this.range;
|
|
8725
|
+
if (!~startIndex && !~endIndex)
|
|
8726
|
+
return false;
|
|
8727
|
+
return startIndex !== endIndex;
|
|
8728
|
+
}
|
|
8612
8729
|
getSelection() {
|
|
8613
8730
|
const { startIndex, endIndex } = this.range;
|
|
8614
8731
|
if (startIndex === endIndex)
|
|
@@ -8861,6 +8978,7 @@ class RangeManager {
|
|
|
8861
8978
|
this.range.startTrIndex = startTrIndex;
|
|
8862
8979
|
this.range.endTrIndex = endTrIndex;
|
|
8863
8980
|
this.range.isCrossRowCol = !!(startTdIndex || endTdIndex || startTrIndex || endTrIndex);
|
|
8981
|
+
this.setDefaultStyle(null);
|
|
8864
8982
|
this.range.zone = this.draw.getZone().getZone();
|
|
8865
8983
|
const control = this.draw.getControl();
|
|
8866
8984
|
if (~startIndex && ~endIndex) {
|
|
@@ -8893,7 +9011,7 @@ class RangeManager {
|
|
|
8893
9011
|
} else {
|
|
8894
9012
|
const index2 = ~endIndex ? endIndex : 0;
|
|
8895
9013
|
const elementList = this.draw.getElementList();
|
|
8896
|
-
curElement =
|
|
9014
|
+
curElement = this.getRangeAnchorStyle(elementList, index2);
|
|
8897
9015
|
}
|
|
8898
9016
|
if (!curElement)
|
|
8899
9017
|
return;
|
|
@@ -9211,7 +9329,7 @@ class Margin {
|
|
|
9211
9329
|
render(ctx, pageNo) {
|
|
9212
9330
|
const { marginIndicatorColor, pageMode } = this.options;
|
|
9213
9331
|
const width = this.draw.getWidth();
|
|
9214
|
-
const height = pageMode === PageMode.CONTINUITY ? this.draw.getCanvasHeight(pageNo) : this.draw.getHeight();
|
|
9332
|
+
const height = pageMode === PageMode.CONTINUITY ? this.draw.getCanvasHeight(pageNo) / this.draw.getPagePixelRatio() : this.draw.getHeight();
|
|
9215
9333
|
const margins = this.draw.getMargins();
|
|
9216
9334
|
const marginIndicatorSize = this.draw.getMarginIndicatorSize();
|
|
9217
9335
|
ctx.save();
|
|
@@ -9724,7 +9842,7 @@ class PageNumber {
|
|
|
9724
9842
|
this.options = draw.getOptions();
|
|
9725
9843
|
}
|
|
9726
9844
|
render(ctx, pageNo) {
|
|
9727
|
-
const { scale,
|
|
9845
|
+
const { scale, pageNumber: { size, font, color, rowFlex, numberType, format, startPageNo, fromPageNo } } = this.options;
|
|
9728
9846
|
if (pageNo < fromPageNo)
|
|
9729
9847
|
return;
|
|
9730
9848
|
let text = format;
|
|
@@ -9741,7 +9859,7 @@ class PageNumber {
|
|
|
9741
9859
|
text = text.replace(pageCountReg, pageCountText);
|
|
9742
9860
|
}
|
|
9743
9861
|
const width = this.draw.getWidth();
|
|
9744
|
-
const height =
|
|
9862
|
+
const height = this.draw.getHeight();
|
|
9745
9863
|
const pageNumberBottom = this.draw.getPageNumberBottom();
|
|
9746
9864
|
const y = height - pageNumberBottom;
|
|
9747
9865
|
ctx.save();
|
|
@@ -9926,6 +10044,8 @@ var TableBorder;
|
|
|
9926
10044
|
TableBorder2["ALL"] = "all";
|
|
9927
10045
|
TableBorder2["EMPTY"] = "empty";
|
|
9928
10046
|
TableBorder2["EXTERNAL"] = "external";
|
|
10047
|
+
TableBorder2["INTERNAL"] = "internal";
|
|
10048
|
+
TableBorder2["DASH"] = "dash";
|
|
9929
10049
|
})(TableBorder || (TableBorder = {}));
|
|
9930
10050
|
var TdBorder;
|
|
9931
10051
|
(function(TdBorder2) {
|
|
@@ -10048,9 +10168,13 @@ class TableParticle {
|
|
|
10048
10168
|
const tableHeight = element.height * scale;
|
|
10049
10169
|
const isEmptyBorderType = borderType === TableBorder.EMPTY;
|
|
10050
10170
|
const isExternalBorderType = borderType === TableBorder.EXTERNAL;
|
|
10171
|
+
const isInternalBorderType = borderType === TableBorder.INTERNAL;
|
|
10051
10172
|
ctx.save();
|
|
10173
|
+
if (borderType === TableBorder.DASH) {
|
|
10174
|
+
ctx.setLineDash([3, 3]);
|
|
10175
|
+
}
|
|
10052
10176
|
ctx.lineWidth = scale;
|
|
10053
|
-
if (!isEmptyBorderType) {
|
|
10177
|
+
if (!isEmptyBorderType && !isInternalBorderType) {
|
|
10054
10178
|
this._drawOuterBorder({
|
|
10055
10179
|
ctx,
|
|
10056
10180
|
startX,
|
|
@@ -10097,9 +10221,14 @@ class TableParticle {
|
|
|
10097
10221
|
ctx.stroke();
|
|
10098
10222
|
}
|
|
10099
10223
|
if (!isEmptyBorderType && !isExternalBorderType) {
|
|
10100
|
-
|
|
10101
|
-
|
|
10102
|
-
|
|
10224
|
+
if (!isInternalBorderType || td.colIndex + td.colspan < colgroup.length) {
|
|
10225
|
+
ctx.moveTo(x, y);
|
|
10226
|
+
ctx.lineTo(x, y + height);
|
|
10227
|
+
}
|
|
10228
|
+
if (!isInternalBorderType || td.rowIndex + td.rowspan < trList.length) {
|
|
10229
|
+
ctx.moveTo(x, y + height);
|
|
10230
|
+
ctx.lineTo(x - width, y + height);
|
|
10231
|
+
}
|
|
10103
10232
|
ctx.stroke();
|
|
10104
10233
|
}
|
|
10105
10234
|
ctx.translate(-0.5, -0.5);
|
|
@@ -10156,6 +10285,21 @@ class TableParticle {
|
|
|
10156
10285
|
}
|
|
10157
10286
|
return data2;
|
|
10158
10287
|
}
|
|
10288
|
+
getTdListByRowIndex(trList, rowIndex) {
|
|
10289
|
+
const data2 = [];
|
|
10290
|
+
for (let r = 0; r < trList.length; r++) {
|
|
10291
|
+
const tdList = trList[r].tdList;
|
|
10292
|
+
for (let d = 0; d < tdList.length; d++) {
|
|
10293
|
+
const td = tdList[d];
|
|
10294
|
+
const min = td.rowIndex;
|
|
10295
|
+
const max = min + td.rowspan - 1;
|
|
10296
|
+
if (rowIndex >= min && rowIndex <= max) {
|
|
10297
|
+
data2.push(td);
|
|
10298
|
+
}
|
|
10299
|
+
}
|
|
10300
|
+
}
|
|
10301
|
+
return data2;
|
|
10302
|
+
}
|
|
10159
10303
|
computeRowColInfo(element) {
|
|
10160
10304
|
const { colgroup, trList } = element;
|
|
10161
10305
|
if (!colgroup || !trList)
|
|
@@ -10295,6 +10439,7 @@ class TableTool {
|
|
|
10295
10439
|
__publicField(this, "canvas");
|
|
10296
10440
|
__publicField(this, "options");
|
|
10297
10441
|
__publicField(this, "position");
|
|
10442
|
+
__publicField(this, "range");
|
|
10298
10443
|
__publicField(this, "container");
|
|
10299
10444
|
__publicField(this, "toolRowContainer");
|
|
10300
10445
|
__publicField(this, "toolRowAddBtn");
|
|
@@ -10309,6 +10454,7 @@ class TableTool {
|
|
|
10309
10454
|
this.canvas = draw.getPage();
|
|
10310
10455
|
this.options = draw.getOptions();
|
|
10311
10456
|
this.position = draw.getPosition();
|
|
10457
|
+
this.range = draw.getRange();
|
|
10312
10458
|
this.container = draw.getContainer();
|
|
10313
10459
|
this.toolRowContainer = null;
|
|
10314
10460
|
this.toolRowAddBtn = null;
|
|
@@ -10379,6 +10525,25 @@ class TableTool {
|
|
|
10379
10525
|
if (r === rowIndex) {
|
|
10380
10526
|
rowItem.classList.add("active");
|
|
10381
10527
|
}
|
|
10528
|
+
rowItem.onclick = () => {
|
|
10529
|
+
const tdList = this.draw.getTableParticle().getTdListByRowIndex(trList, r);
|
|
10530
|
+
const firstTd = tdList[0];
|
|
10531
|
+
const lastTd = tdList[tdList.length - 1];
|
|
10532
|
+
this.position.setPositionContext({
|
|
10533
|
+
index: index2,
|
|
10534
|
+
isTable: true,
|
|
10535
|
+
trIndex: firstTd.trIndex,
|
|
10536
|
+
tdIndex: firstTd.tdIndex,
|
|
10537
|
+
tableId: element.id
|
|
10538
|
+
});
|
|
10539
|
+
this.range.setRange(0, 0, element.id, firstTd.tdIndex, lastTd.tdIndex, firstTd.trIndex, lastTd.trIndex);
|
|
10540
|
+
this.draw.render({
|
|
10541
|
+
curIndex: 0,
|
|
10542
|
+
isCompute: false,
|
|
10543
|
+
isSubmitHistory: false
|
|
10544
|
+
});
|
|
10545
|
+
this._setAnchorActive(rowContainer, r);
|
|
10546
|
+
};
|
|
10382
10547
|
const rowItemAnchor = document.createElement("div");
|
|
10383
10548
|
rowItemAnchor.classList.add(`${EDITOR_PREFIX}-table-tool__anchor`);
|
|
10384
10549
|
rowItemAnchor.onmousedown = (evt) => {
|
|
@@ -10408,7 +10573,8 @@ class TableTool {
|
|
|
10408
10573
|
index: index2,
|
|
10409
10574
|
isTable: true,
|
|
10410
10575
|
trIndex: trList.length - 1,
|
|
10411
|
-
tdIndex: 0
|
|
10576
|
+
tdIndex: 0,
|
|
10577
|
+
tableId: element.id
|
|
10412
10578
|
});
|
|
10413
10579
|
this.draw.getTableOperate().insertTableBottomRow();
|
|
10414
10580
|
};
|
|
@@ -10425,6 +10591,25 @@ class TableTool {
|
|
|
10425
10591
|
if (c === colIndex) {
|
|
10426
10592
|
colItem.classList.add("active");
|
|
10427
10593
|
}
|
|
10594
|
+
colItem.onclick = () => {
|
|
10595
|
+
const tdList = this.draw.getTableParticle().getTdListByColIndex(trList, c);
|
|
10596
|
+
const firstTd = tdList[0];
|
|
10597
|
+
const lastTd = tdList[tdList.length - 1];
|
|
10598
|
+
this.position.setPositionContext({
|
|
10599
|
+
index: index2,
|
|
10600
|
+
isTable: true,
|
|
10601
|
+
trIndex: firstTd.trIndex,
|
|
10602
|
+
tdIndex: firstTd.tdIndex,
|
|
10603
|
+
tableId: element.id
|
|
10604
|
+
});
|
|
10605
|
+
this.range.setRange(0, 0, element.id, firstTd.tdIndex, lastTd.tdIndex, firstTd.trIndex, lastTd.trIndex);
|
|
10606
|
+
this.draw.render({
|
|
10607
|
+
curIndex: 0,
|
|
10608
|
+
isCompute: false,
|
|
10609
|
+
isSubmitHistory: false
|
|
10610
|
+
});
|
|
10611
|
+
this._setAnchorActive(colContainer, c);
|
|
10612
|
+
};
|
|
10428
10613
|
const colItemAnchor = document.createElement("div");
|
|
10429
10614
|
colItemAnchor.classList.add(`${EDITOR_PREFIX}-table-tool__anchor`);
|
|
10430
10615
|
colItemAnchor.onmousedown = (evt) => {
|
|
@@ -10454,7 +10639,8 @@ class TableTool {
|
|
|
10454
10639
|
index: index2,
|
|
10455
10640
|
isTable: true,
|
|
10456
10641
|
trIndex: 0,
|
|
10457
|
-
tdIndex: trList[0].tdList.length - 1 || 0
|
|
10642
|
+
tdIndex: trList[0].tdList.length - 1 || 0,
|
|
10643
|
+
tableId: element.id
|
|
10458
10644
|
});
|
|
10459
10645
|
this.draw.getTableOperate().insertTableRightCol();
|
|
10460
10646
|
};
|
|
@@ -10505,6 +10691,17 @@ class TableTool {
|
|
|
10505
10691
|
this.container.append(borderContainer);
|
|
10506
10692
|
this.toolBorderContainer = borderContainer;
|
|
10507
10693
|
}
|
|
10694
|
+
_setAnchorActive(container, index2) {
|
|
10695
|
+
const children = container.children;
|
|
10696
|
+
for (let c = 0; c < children.length; c++) {
|
|
10697
|
+
const child = children[c];
|
|
10698
|
+
if (c === index2) {
|
|
10699
|
+
child.classList.add("active");
|
|
10700
|
+
} else {
|
|
10701
|
+
child.classList.remove("active");
|
|
10702
|
+
}
|
|
10703
|
+
}
|
|
10704
|
+
}
|
|
10508
10705
|
_mousedown(payload) {
|
|
10509
10706
|
const { evt, index: index2, order, element } = payload;
|
|
10510
10707
|
this.canvas = this.draw.getPage();
|
|
@@ -11096,7 +11293,8 @@ class SelectControl {
|
|
|
11096
11293
|
__publicField(this, "isPopup");
|
|
11097
11294
|
__publicField(this, "selectDom");
|
|
11098
11295
|
__publicField(this, "options");
|
|
11099
|
-
|
|
11296
|
+
const draw = control.getDraw();
|
|
11297
|
+
this.options = draw.getOptions();
|
|
11100
11298
|
this.element = element;
|
|
11101
11299
|
this.control = control;
|
|
11102
11300
|
this.isPopup = false;
|
|
@@ -11346,7 +11544,8 @@ class TextControl {
|
|
|
11346
11544
|
__publicField(this, "element");
|
|
11347
11545
|
__publicField(this, "control");
|
|
11348
11546
|
__publicField(this, "options");
|
|
11349
|
-
|
|
11547
|
+
const draw = control.getDraw();
|
|
11548
|
+
this.options = draw.getOptions();
|
|
11350
11549
|
this.element = element;
|
|
11351
11550
|
this.control = control;
|
|
11352
11551
|
}
|
|
@@ -12237,6 +12436,7 @@ class Control {
|
|
|
12237
12436
|
__publicField(this, "options");
|
|
12238
12437
|
__publicField(this, "controlOptions");
|
|
12239
12438
|
__publicField(this, "activeControl");
|
|
12439
|
+
__publicField(this, "activeControlValue");
|
|
12240
12440
|
this.controlBorder = new ControlBorder(draw);
|
|
12241
12441
|
this.draw = draw;
|
|
12242
12442
|
this.range = draw.getRange();
|
|
@@ -12246,6 +12446,7 @@ class Control {
|
|
|
12246
12446
|
this.options = draw.getOptions();
|
|
12247
12447
|
this.controlOptions = this.options.control;
|
|
12248
12448
|
this.activeControl = null;
|
|
12449
|
+
this.activeControlValue = [];
|
|
12249
12450
|
}
|
|
12250
12451
|
setHighlightList(payload) {
|
|
12251
12452
|
this.controlSearch.setHighlightList(payload);
|
|
@@ -12359,6 +12560,20 @@ class Control {
|
|
|
12359
12560
|
}
|
|
12360
12561
|
return !!((_b = (_a = this.activeControl.getElement()) == null ? void 0 : _a.control) == null ? void 0 : _b.disabled);
|
|
12361
12562
|
}
|
|
12563
|
+
getIsDisabledPasteControl(context = {}) {
|
|
12564
|
+
var _a, _b;
|
|
12565
|
+
if (this.draw.isDesignMode() || !this.activeControl)
|
|
12566
|
+
return false;
|
|
12567
|
+
const { startIndex, endIndex } = context.range || this.range.getRange();
|
|
12568
|
+
if (startIndex === endIndex && ~startIndex && ~endIndex) {
|
|
12569
|
+
const elementList = context.elementList || this.getElementList();
|
|
12570
|
+
const startElement = elementList[startIndex];
|
|
12571
|
+
if (startElement.controlComponent === ControlComponent.POSTFIX) {
|
|
12572
|
+
return false;
|
|
12573
|
+
}
|
|
12574
|
+
}
|
|
12575
|
+
return !!((_b = (_a = this.activeControl.getElement()) == null ? void 0 : _a.control) == null ? void 0 : _b.pasteDisabled);
|
|
12576
|
+
}
|
|
12362
12577
|
getContainer() {
|
|
12363
12578
|
return this.draw.getContainer();
|
|
12364
12579
|
}
|
|
@@ -12386,10 +12601,13 @@ class Control {
|
|
|
12386
12601
|
getActiveControl() {
|
|
12387
12602
|
return this.activeControl;
|
|
12388
12603
|
}
|
|
12604
|
+
updateActiveControlValue() {
|
|
12605
|
+
if (this.activeControl) {
|
|
12606
|
+
this.activeControlValue = this.activeControl.getValue();
|
|
12607
|
+
}
|
|
12608
|
+
}
|
|
12389
12609
|
initControl() {
|
|
12390
|
-
|
|
12391
|
-
if (isReadonly)
|
|
12392
|
-
return;
|
|
12610
|
+
var _a, _b;
|
|
12393
12611
|
const elementList = this.getElementList();
|
|
12394
12612
|
const range = this.getRange();
|
|
12395
12613
|
const element = elementList[range.startIndex];
|
|
@@ -12402,10 +12620,15 @@ class Control {
|
|
|
12402
12620
|
}
|
|
12403
12621
|
}
|
|
12404
12622
|
const controlElement = this.activeControl.getElement();
|
|
12405
|
-
if (element.controlId === controlElement.controlId)
|
|
12623
|
+
if (element.controlId === controlElement.controlId) {
|
|
12624
|
+
this.updateActiveControlValue();
|
|
12406
12625
|
return;
|
|
12626
|
+
}
|
|
12407
12627
|
}
|
|
12408
12628
|
this.destroyControl();
|
|
12629
|
+
const isReadonly = this.draw.isReadonly();
|
|
12630
|
+
if (isReadonly)
|
|
12631
|
+
return;
|
|
12409
12632
|
const control = element.control;
|
|
12410
12633
|
if (control.type === ControlType.TEXT) {
|
|
12411
12634
|
this.activeControl = new TextControl(element, this);
|
|
@@ -12422,46 +12645,61 @@ class Control {
|
|
|
12422
12645
|
this.activeControl = dateControl;
|
|
12423
12646
|
dateControl.awake();
|
|
12424
12647
|
}
|
|
12425
|
-
|
|
12426
|
-
|
|
12427
|
-
|
|
12428
|
-
|
|
12429
|
-
|
|
12430
|
-
|
|
12431
|
-
|
|
12432
|
-
const value = (_a = this.activeControl) == null ? void 0 : _a.getValue();
|
|
12433
|
-
if (value && value.length) {
|
|
12434
|
-
payload = zipElementList(value)[0].control;
|
|
12648
|
+
this.updateActiveControlValue();
|
|
12649
|
+
const isSubscribeControlChange = this.eventBus.isSubscribe("controlChange");
|
|
12650
|
+
if (this.listener.controlChange || isSubscribeControlChange) {
|
|
12651
|
+
let control2;
|
|
12652
|
+
const value = this.activeControlValue;
|
|
12653
|
+
if (value == null ? void 0 : value.length) {
|
|
12654
|
+
control2 = zipElementList(value)[0].control;
|
|
12435
12655
|
} else {
|
|
12436
|
-
|
|
12437
|
-
|
|
12438
|
-
if (controlChangeListener) {
|
|
12439
|
-
controlChangeListener(payload);
|
|
12656
|
+
control2 = pickElementAttr(deepClone(element)).control;
|
|
12657
|
+
control2.value = [];
|
|
12440
12658
|
}
|
|
12659
|
+
const payload = {
|
|
12660
|
+
control: control2,
|
|
12661
|
+
controlId: element.controlId,
|
|
12662
|
+
state: ControlState.ACTIVE
|
|
12663
|
+
};
|
|
12664
|
+
(_b = (_a = this.listener).controlChange) == null ? void 0 : _b.call(_a, payload);
|
|
12441
12665
|
if (isSubscribeControlChange) {
|
|
12442
12666
|
this.eventBus.emit("controlChange", payload);
|
|
12443
12667
|
}
|
|
12444
|
-
}
|
|
12668
|
+
}
|
|
12445
12669
|
}
|
|
12446
|
-
destroyControl() {
|
|
12447
|
-
|
|
12448
|
-
|
|
12449
|
-
|
|
12450
|
-
|
|
12451
|
-
|
|
12452
|
-
|
|
12453
|
-
|
|
12454
|
-
|
|
12455
|
-
|
|
12456
|
-
|
|
12457
|
-
|
|
12458
|
-
|
|
12670
|
+
destroyControl(options = {}) {
|
|
12671
|
+
var _a, _b;
|
|
12672
|
+
if (!this.activeControl)
|
|
12673
|
+
return;
|
|
12674
|
+
const { isEmitEvent = true } = options;
|
|
12675
|
+
if (this.activeControl instanceof SelectControl || this.activeControl instanceof DateControl) {
|
|
12676
|
+
this.activeControl.destroy();
|
|
12677
|
+
}
|
|
12678
|
+
if (isEmitEvent) {
|
|
12679
|
+
const isSubscribeControlChange = this.eventBus.isSubscribe("controlChange");
|
|
12680
|
+
if (this.listener.controlChange || isSubscribeControlChange) {
|
|
12681
|
+
let control;
|
|
12682
|
+
const value = this.activeControlValue;
|
|
12683
|
+
const activeElement = this.activeControl.getElement();
|
|
12684
|
+
if (value == null ? void 0 : value.length) {
|
|
12685
|
+
control = zipElementList(value)[0].control;
|
|
12686
|
+
} else {
|
|
12687
|
+
control = pickElementAttr(deepClone(activeElement)).control;
|
|
12688
|
+
control.value = [];
|
|
12459
12689
|
}
|
|
12690
|
+
const payload = {
|
|
12691
|
+
control,
|
|
12692
|
+
controlId: activeElement.controlId,
|
|
12693
|
+
state: ControlState.INACTIVE
|
|
12694
|
+
};
|
|
12695
|
+
(_b = (_a = this.listener).controlChange) == null ? void 0 : _b.call(_a, payload);
|
|
12460
12696
|
if (isSubscribeControlChange) {
|
|
12461
|
-
this.eventBus.emit("controlChange",
|
|
12697
|
+
this.eventBus.emit("controlChange", payload);
|
|
12462
12698
|
}
|
|
12463
|
-
}
|
|
12699
|
+
}
|
|
12464
12700
|
}
|
|
12701
|
+
this.activeControl = null;
|
|
12702
|
+
this.activeControlValue = [];
|
|
12465
12703
|
}
|
|
12466
12704
|
repaintControl(options = {}) {
|
|
12467
12705
|
const { curIndex, isCompute = true, isSubmitHistory = true, isSetCursor = true } = options;
|
|
@@ -12624,7 +12862,7 @@ class Control {
|
|
|
12624
12862
|
for (let p = 0; p < placeholderStrList.length; p++) {
|
|
12625
12863
|
const value = placeholderStrList[p];
|
|
12626
12864
|
const newElement = __spreadProps(__spreadValues({}, anchorElementStyleAttr), {
|
|
12627
|
-
value,
|
|
12865
|
+
value: value === "\n" ? ZERO : value,
|
|
12628
12866
|
controlId: startElement.controlId,
|
|
12629
12867
|
type: ElementType.CONTROL,
|
|
12630
12868
|
control: startElement.control,
|
|
@@ -12656,7 +12894,7 @@ class Control {
|
|
|
12656
12894
|
return this.activeControl.cut();
|
|
12657
12895
|
}
|
|
12658
12896
|
getValueById(payload) {
|
|
12659
|
-
const { id, conceptId } = payload;
|
|
12897
|
+
const { id, conceptId, areaId } = payload;
|
|
12660
12898
|
const result = [];
|
|
12661
12899
|
if (!id && !conceptId)
|
|
12662
12900
|
return result;
|
|
@@ -12675,7 +12913,7 @@ class Control {
|
|
|
12675
12913
|
}
|
|
12676
12914
|
}
|
|
12677
12915
|
}
|
|
12678
|
-
if (!element.control || id && element.controlId !== id || conceptId && element.control.conceptId !== conceptId) {
|
|
12916
|
+
if (!element.control || id && element.controlId !== id || conceptId && element.control.conceptId !== conceptId || areaId && element.areaId !== areaId) {
|
|
12679
12917
|
continue;
|
|
12680
12918
|
}
|
|
12681
12919
|
const { type, code, valueSets } = element.control;
|
|
@@ -12734,7 +12972,7 @@ class Control {
|
|
|
12734
12972
|
}
|
|
12735
12973
|
setValueById(payload) {
|
|
12736
12974
|
let isExistSet = false;
|
|
12737
|
-
const { id, conceptId, value } = payload;
|
|
12975
|
+
const { id, conceptId, areaId, value } = payload;
|
|
12738
12976
|
if (!id && !conceptId)
|
|
12739
12977
|
return;
|
|
12740
12978
|
const setValue = (elementList) => {
|
|
@@ -12752,7 +12990,7 @@ class Control {
|
|
|
12752
12990
|
}
|
|
12753
12991
|
}
|
|
12754
12992
|
}
|
|
12755
|
-
if (!element.control || id && element.controlId !== id || conceptId && element.control.conceptId !== conceptId) {
|
|
12993
|
+
if (!element.control || id && element.controlId !== id || conceptId && element.control.conceptId !== conceptId || areaId && element.areaId !== areaId) {
|
|
12756
12994
|
continue;
|
|
12757
12995
|
}
|
|
12758
12996
|
isExistSet = true;
|
|
@@ -12834,7 +13072,9 @@ class Control {
|
|
|
12834
13072
|
i = newEndIndex;
|
|
12835
13073
|
}
|
|
12836
13074
|
};
|
|
12837
|
-
this.destroyControl(
|
|
13075
|
+
this.destroyControl({
|
|
13076
|
+
isEmitEvent: false
|
|
13077
|
+
});
|
|
12838
13078
|
const data2 = [
|
|
12839
13079
|
this.draw.getHeaderElementList(),
|
|
12840
13080
|
this.draw.getOriginalMainElementList(),
|
|
@@ -12850,7 +13090,7 @@ class Control {
|
|
|
12850
13090
|
}
|
|
12851
13091
|
}
|
|
12852
13092
|
setExtensionById(payload) {
|
|
12853
|
-
const { id, conceptId, extension } = payload;
|
|
13093
|
+
const { id, conceptId, areaId, extension } = payload;
|
|
12854
13094
|
if (!id && !conceptId)
|
|
12855
13095
|
return;
|
|
12856
13096
|
const setExtension = (elementList) => {
|
|
@@ -12868,7 +13108,7 @@ class Control {
|
|
|
12868
13108
|
}
|
|
12869
13109
|
}
|
|
12870
13110
|
}
|
|
12871
|
-
if (!element.control || id && element.controlId !== id || conceptId && element.control.conceptId !== conceptId) {
|
|
13111
|
+
if (!element.control || id && element.controlId !== id || conceptId && element.control.conceptId !== conceptId || areaId && element.areaId !== areaId) {
|
|
12872
13112
|
continue;
|
|
12873
13113
|
}
|
|
12874
13114
|
element.control.extension = extension;
|
|
@@ -12892,7 +13132,7 @@ class Control {
|
|
|
12892
13132
|
}
|
|
12893
13133
|
}
|
|
12894
13134
|
setPropertiesById(payload) {
|
|
12895
|
-
const { id, conceptId, properties } = payload;
|
|
13135
|
+
const { id, conceptId, areaId, properties } = payload;
|
|
12896
13136
|
if (!id && !conceptId)
|
|
12897
13137
|
return;
|
|
12898
13138
|
let isExistUpdate = false;
|
|
@@ -12911,7 +13151,7 @@ class Control {
|
|
|
12911
13151
|
}
|
|
12912
13152
|
}
|
|
12913
13153
|
}
|
|
12914
|
-
if (!element.control || id && element.controlId !== id || conceptId && element.control.conceptId !== conceptId) {
|
|
13154
|
+
if (!element.control || id && element.controlId !== id || conceptId && element.control.conceptId !== conceptId || areaId && element.areaId !== areaId) {
|
|
12915
13155
|
continue;
|
|
12916
13156
|
}
|
|
12917
13157
|
isExistUpdate = true;
|
|
@@ -12947,7 +13187,9 @@ class Control {
|
|
|
12947
13187
|
return;
|
|
12948
13188
|
for (const key in pageComponentData) {
|
|
12949
13189
|
const pageComponentKey = key;
|
|
12950
|
-
const elementList = zipElementList(pageComponentData[pageComponentKey]
|
|
13190
|
+
const elementList = zipElementList(pageComponentData[pageComponentKey], {
|
|
13191
|
+
isClassifyArea: true
|
|
13192
|
+
});
|
|
12951
13193
|
pageComponentData[pageComponentKey] = elementList;
|
|
12952
13194
|
formatElementList(elementList, {
|
|
12953
13195
|
editorOptions: this.options,
|
|
@@ -13429,7 +13671,7 @@ function WorkerWrapper$2() {
|
|
|
13429
13671
|
objURL && (window.URL || window.webkitURL).revokeObjectURL(objURL);
|
|
13430
13672
|
}
|
|
13431
13673
|
}
|
|
13432
|
-
const encodedJs$1 = "
|
|
13674
|
+
const encodedJs$1 = "KCgpPT57KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3ZhciBhOyhmdW5jdGlvbih0KXt0LlRFWFQ9InRleHQiLHQuSU1BR0U9ImltYWdlIix0LlRBQkxFPSJ0YWJsZSIsdC5IWVBFUkxJTks9Imh5cGVybGluayIsdC5TVVBFUlNDUklQVD0ic3VwZXJzY3JpcHQiLHQuU1VCU0NSSVBUPSJzdWJzY3JpcHQiLHQuU0VQQVJBVE9SPSJzZXBhcmF0b3IiLHQuUEFHRV9CUkVBSz0icGFnZUJyZWFrIix0LkNPTlRST0w9ImNvbnRyb2wiLHQuQ0hFQ0tCT1g9ImNoZWNrYm94Iix0LlJBRElPPSJyYWRpbyIsdC5MQVRFWD0ibGF0ZXgiLHQuVEFCPSJ0YWIiLHQuREFURT0iZGF0ZSIsdC5CTE9DSz0iYmxvY2siLHQuVElUTEU9InRpdGxlIix0LkFSRUE9ImFyZWEiLHQuTElTVD0ibGlzdCJ9KShhfHwoYT17fSkpO3ZhciBsOyhmdW5jdGlvbih0KXt0LkZJUlNUPSJmaXJzdCIsdC5TRUNPTkQ9InNlY29uZCIsdC5USElSRD0idGhpcmQiLHQuRk9VUlRIPSJmb3VydGgiLHQuRklGVEg9ImZpZnRoIix0LlNJWFRIPSJzaXh0aCJ9KShsfHwobD17fSkpO2NvbnN0IGc9e1tsLkZJUlNUXToxLFtsLlNFQ09ORF06MixbbC5USElSRF06MyxbbC5GT1VSVEhdOjQsW2wuRklGVEhdOjUsW2wuU0lYVEhdOjZ9LEw9W2EuVEVYVCxhLkhZUEVSTElOSyxhLlNVQlNDUklQVCxhLlNVUEVSU0NSSVBULGEuQ09OVFJPTCxhLkRBVEVdLGQ9Ilx1MjAwQiI7ZnVuY3Rpb24gZih0KXtyZXR1cm4hdC50eXBlfHxMLmluY2x1ZGVzKHQudHlwZSl9ZnVuY3Rpb24gQyh0KXtjb25zdHtlbGVtZW50TGlzdDpuLHBvc2l0aW9uTGlzdDp2fT10LEk9W107bGV0IGk9MDtmb3IoO2k8bi5sZW5ndGg7KXtjb25zdCBzPW5baV07aWYocy50aXRsZUlkKXtjb25zdCBvPXMudGl0bGVJZCxlPXMubGV2ZWwsYz17dHlwZTphLlRJVExFLHZhbHVlOiIiLGxldmVsOmUsdGl0bGVJZDpvLHBhZ2VObzp2W2ldLnBhZ2VOb30scj1bXTtmb3IoO2k8bi5sZW5ndGg7KXtjb25zdCB1PW5baV07aWYobyE9PXUudGl0bGVJZCl7aS0tO2JyZWFrfXIucHVzaCh1KSxpKyt9Yy52YWx1ZT1yLmZpbHRlcih1PT5mKHUpKS5tYXAodT0+dS52YWx1ZSkuam9pbigiIikucmVwbGFjZShuZXcgUmVnRXhwKGQsImciKSwiIiksSS5wdXNoKGMpfWkrK31pZighSS5sZW5ndGgpcmV0dXJuIG51bGw7Y29uc3QgaD0ocyxvKT0+e2NvbnN0IGU9by5zdWJDYXRhbG9nW28uc3ViQ2F0YWxvZy5sZW5ndGgtMV0sYz1nW2U9PW51bGw/dm9pZCAwOmUubGV2ZWxdLHI9Z1tzLmxldmVsXTtlJiZyPmM/aChzLGUpOm8uc3ViQ2F0YWxvZy5wdXNoKHtpZDpzLnRpdGxlSWQsbmFtZTpzLnZhbHVlLGxldmVsOnMubGV2ZWwscGFnZU5vOnMucGFnZU5vLHN1YkNhdGFsb2c6W119KX0sUj1bXTtmb3IobGV0IHM9MDtzPEkubGVuZ3RoO3MrKyl7Y29uc3Qgbz1JW3NdLGU9UltSLmxlbmd0aC0xXSxjPWdbZT09bnVsbD92b2lkIDA6ZS5sZXZlbF0scj1nW28ubGV2ZWxdO2UmJnI+Yz9oKG8sZSk6Ui5wdXNoKHtpZDpvLnRpdGxlSWQsbmFtZTpvLnZhbHVlLGxldmVsOm8ubGV2ZWwscGFnZU5vOm8ucGFnZU5vLHN1YkNhdGFsb2c6W119KX1yZXR1cm4gUn1vbm1lc3NhZ2U9dD0+e2NvbnN0IG49dC5kYXRhLHY9QyhuKTtwb3N0TWVzc2FnZSh2KX19KSgpO30pKCk7Cg==";
|
|
13433
13675
|
const blob$1 = typeof window !== "undefined" && window.Blob && new Blob([atob(encodedJs$1)], { type: "text/javascript;charset=utf-8" });
|
|
13434
13676
|
function WorkerWrapper$1() {
|
|
13435
13677
|
const objURL = blob$1 && (window.URL || window.webkitURL).createObjectURL(blob$1);
|
|
@@ -13830,6 +14072,7 @@ class Previewer {
|
|
|
13830
14072
|
}
|
|
13831
14073
|
_updateResizerRect(width, height) {
|
|
13832
14074
|
const { resizerSize: handleSize, scale } = this.options;
|
|
14075
|
+
const isReadonly = this.draw.isReadonly();
|
|
13833
14076
|
this.resizerSelection.style.width = `${width}px`;
|
|
13834
14077
|
this.resizerSelection.style.height = `${height}px`;
|
|
13835
14078
|
for (let i = 0; i < 8; i++) {
|
|
@@ -13838,6 +14081,7 @@ class Previewer {
|
|
|
13838
14081
|
this.resizerHandleList[i].style.transform = `scale(${scale})`;
|
|
13839
14082
|
this.resizerHandleList[i].style.left = `${left2}px`;
|
|
13840
14083
|
this.resizerHandleList[i].style.top = `${top}px`;
|
|
14084
|
+
this.resizerHandleList[i].style.display = isReadonly ? "none" : "block";
|
|
13841
14085
|
}
|
|
13842
14086
|
}
|
|
13843
14087
|
_updateResizerSizeView(width, height) {
|
|
@@ -14168,7 +14412,9 @@ const contextmenu$1 = {
|
|
|
14168
14412
|
border: "\u8868\u683C\u8FB9\u6846",
|
|
14169
14413
|
borderAll: "\u6240\u6709\u6846\u7EBF",
|
|
14170
14414
|
borderEmpty: "\u65E0\u6846\u7EBF",
|
|
14415
|
+
borderDash: "\u865A\u6846\u7EBF",
|
|
14171
14416
|
borderExternal: "\u5916\u4FA7\u6846\u7EBF",
|
|
14417
|
+
borderInternal: "\u5185\u4FA7\u6846\u7EBF",
|
|
14172
14418
|
borderTd: "\u5355\u5143\u683C\u8FB9\u6846",
|
|
14173
14419
|
borderTdTop: "\u4E0A\u8FB9\u6846",
|
|
14174
14420
|
borderTdRight: "\u53F3\u8FB9\u6846",
|
|
@@ -14263,7 +14509,9 @@ const contextmenu = {
|
|
|
14263
14509
|
border: "Table border",
|
|
14264
14510
|
borderAll: "All",
|
|
14265
14511
|
borderEmpty: "Empty",
|
|
14512
|
+
borderDash: "Dash",
|
|
14266
14513
|
borderExternal: "External",
|
|
14514
|
+
borderInternal: "Internal",
|
|
14267
14515
|
borderTd: "Table cell border",
|
|
14268
14516
|
borderTdTop: "Top",
|
|
14269
14517
|
borderTdRight: "Right",
|
|
@@ -15444,6 +15692,24 @@ class TableOperate {
|
|
|
15444
15692
|
this.range.setRange(0, 0);
|
|
15445
15693
|
this.draw.render({ curIndex: 0 });
|
|
15446
15694
|
}
|
|
15695
|
+
adjustColWidth(element) {
|
|
15696
|
+
if (element.type !== ElementType.TABLE)
|
|
15697
|
+
return;
|
|
15698
|
+
const { defaultColMinWidth } = this.options.table;
|
|
15699
|
+
const colgroup = element.colgroup;
|
|
15700
|
+
const colgroupWidth = colgroup.reduce((pre, cur) => pre + cur.width, 0);
|
|
15701
|
+
const width = this.draw.getOriginalInnerWidth();
|
|
15702
|
+
if (colgroupWidth > width) {
|
|
15703
|
+
const greaterMinWidthCol = colgroup.filter((col) => col.width > defaultColMinWidth);
|
|
15704
|
+
const adjustWidth = (colgroupWidth - width) / greaterMinWidthCol.length;
|
|
15705
|
+
for (let g = 0; g < colgroup.length; g++) {
|
|
15706
|
+
const group2 = colgroup[g];
|
|
15707
|
+
if (group2.width - adjustWidth >= defaultColMinWidth) {
|
|
15708
|
+
group2.width -= adjustWidth;
|
|
15709
|
+
}
|
|
15710
|
+
}
|
|
15711
|
+
}
|
|
15712
|
+
}
|
|
15447
15713
|
insertTableLeftCol() {
|
|
15448
15714
|
const positionContext = this.position.getPositionContext();
|
|
15449
15715
|
if (!positionContext.isTable)
|
|
@@ -15471,19 +15737,12 @@ class TableOperate {
|
|
|
15471
15737
|
]
|
|
15472
15738
|
});
|
|
15473
15739
|
}
|
|
15740
|
+
const { defaultColMinWidth } = this.options.table;
|
|
15474
15741
|
const colgroup = element.colgroup;
|
|
15475
15742
|
colgroup.splice(curTdIndex, 0, {
|
|
15476
|
-
width:
|
|
15743
|
+
width: defaultColMinWidth
|
|
15477
15744
|
});
|
|
15478
|
-
|
|
15479
|
-
const width = this.draw.getOriginalInnerWidth();
|
|
15480
|
-
if (colgroupWidth > width) {
|
|
15481
|
-
const adjustWidth = (colgroupWidth - width) / colgroup.length;
|
|
15482
|
-
for (let g = 0; g < colgroup.length; g++) {
|
|
15483
|
-
const group2 = colgroup[g];
|
|
15484
|
-
group2.width -= adjustWidth;
|
|
15485
|
-
}
|
|
15486
|
-
}
|
|
15745
|
+
this.adjustColWidth(element);
|
|
15487
15746
|
this.position.setPositionContext({
|
|
15488
15747
|
isTable: true,
|
|
15489
15748
|
index: index2,
|
|
@@ -15524,19 +15783,12 @@ class TableOperate {
|
|
|
15524
15783
|
]
|
|
15525
15784
|
});
|
|
15526
15785
|
}
|
|
15786
|
+
const { defaultColMinWidth } = this.options.table;
|
|
15527
15787
|
const colgroup = element.colgroup;
|
|
15528
15788
|
colgroup.splice(curTdIndex, 0, {
|
|
15529
|
-
width:
|
|
15789
|
+
width: defaultColMinWidth
|
|
15530
15790
|
});
|
|
15531
|
-
|
|
15532
|
-
const width = this.draw.getOriginalInnerWidth();
|
|
15533
|
-
if (colgroupWidth > width) {
|
|
15534
|
-
const adjustWidth = (colgroupWidth - width) / colgroup.length;
|
|
15535
|
-
for (let g = 0; g < colgroup.length; g++) {
|
|
15536
|
-
const group2 = colgroup[g];
|
|
15537
|
-
group2.width -= adjustWidth;
|
|
15538
|
-
}
|
|
15539
|
-
}
|
|
15791
|
+
this.adjustColWidth(element);
|
|
15540
15792
|
this.position.setPositionContext({
|
|
15541
15793
|
isTable: true,
|
|
15542
15794
|
index: index2,
|
|
@@ -15959,6 +16211,175 @@ class TableOperate {
|
|
|
15959
16211
|
});
|
|
15960
16212
|
}
|
|
15961
16213
|
}
|
|
16214
|
+
var AreaMode;
|
|
16215
|
+
(function(AreaMode2) {
|
|
16216
|
+
AreaMode2["EDIT"] = "edit";
|
|
16217
|
+
AreaMode2["READONLY"] = "readonly";
|
|
16218
|
+
AreaMode2["FORM"] = "form";
|
|
16219
|
+
})(AreaMode || (AreaMode = {}));
|
|
16220
|
+
class Area {
|
|
16221
|
+
constructor(draw) {
|
|
16222
|
+
__publicField(this, "draw");
|
|
16223
|
+
__publicField(this, "zone");
|
|
16224
|
+
__publicField(this, "range");
|
|
16225
|
+
__publicField(this, "position");
|
|
16226
|
+
__publicField(this, "areaInfoMap", new Map());
|
|
16227
|
+
this.draw = draw;
|
|
16228
|
+
this.zone = draw.getZone();
|
|
16229
|
+
this.range = draw.getRange();
|
|
16230
|
+
this.position = draw.getPosition();
|
|
16231
|
+
}
|
|
16232
|
+
getActiveAreaId() {
|
|
16233
|
+
if (!this.areaInfoMap.size)
|
|
16234
|
+
return null;
|
|
16235
|
+
const { startIndex } = this.range.getRange();
|
|
16236
|
+
const elementList = this.draw.getElementList();
|
|
16237
|
+
const element = elementList[startIndex];
|
|
16238
|
+
return (element == null ? void 0 : element.areaId) || null;
|
|
16239
|
+
}
|
|
16240
|
+
getActiveAreaInfo() {
|
|
16241
|
+
const activeAreaId = this.getActiveAreaId();
|
|
16242
|
+
if (!activeAreaId)
|
|
16243
|
+
return null;
|
|
16244
|
+
return this.areaInfoMap.get(activeAreaId) || null;
|
|
16245
|
+
}
|
|
16246
|
+
isReadonly() {
|
|
16247
|
+
const activeAreaInfo = this.getActiveAreaInfo();
|
|
16248
|
+
if (!activeAreaInfo)
|
|
16249
|
+
return false;
|
|
16250
|
+
switch (activeAreaInfo.area.mode) {
|
|
16251
|
+
case AreaMode.EDIT:
|
|
16252
|
+
return false;
|
|
16253
|
+
case AreaMode.READONLY:
|
|
16254
|
+
return true;
|
|
16255
|
+
case AreaMode.FORM:
|
|
16256
|
+
return !this.draw.getControl().getIsRangeWithinControl();
|
|
16257
|
+
default:
|
|
16258
|
+
return false;
|
|
16259
|
+
}
|
|
16260
|
+
}
|
|
16261
|
+
insertArea(payload) {
|
|
16262
|
+
if (this.zone.getZone() !== EditorZone.MAIN) {
|
|
16263
|
+
this.zone.setZone(EditorZone.MAIN);
|
|
16264
|
+
}
|
|
16265
|
+
this.draw.getPosition().setPositionContext({
|
|
16266
|
+
isTable: false
|
|
16267
|
+
});
|
|
16268
|
+
const { id, value, area, position } = payload;
|
|
16269
|
+
if (position === LocationPosition.BEFORE) {
|
|
16270
|
+
this.range.setRange(0, 0);
|
|
16271
|
+
} else {
|
|
16272
|
+
const elementList = this.draw.getOriginalMainElementList();
|
|
16273
|
+
const lastIndex = elementList.length - 1;
|
|
16274
|
+
this.range.setRange(lastIndex, lastIndex);
|
|
16275
|
+
}
|
|
16276
|
+
const areaId = id || getUUID();
|
|
16277
|
+
this.draw.insertElementList([
|
|
16278
|
+
{
|
|
16279
|
+
type: ElementType.AREA,
|
|
16280
|
+
value: "",
|
|
16281
|
+
areaId,
|
|
16282
|
+
valueList: value,
|
|
16283
|
+
area: deepClone(area)
|
|
16284
|
+
}
|
|
16285
|
+
]);
|
|
16286
|
+
return areaId;
|
|
16287
|
+
}
|
|
16288
|
+
render(ctx, pageNo) {
|
|
16289
|
+
if (!this.areaInfoMap.size)
|
|
16290
|
+
return;
|
|
16291
|
+
ctx.save();
|
|
16292
|
+
const margins = this.draw.getMargins();
|
|
16293
|
+
const width = this.draw.getInnerWidth();
|
|
16294
|
+
for (const areaInfoItem of this.areaInfoMap) {
|
|
16295
|
+
const { area, positionList } = areaInfoItem[1];
|
|
16296
|
+
if (!area.backgroundColor && !area.borderColor)
|
|
16297
|
+
continue;
|
|
16298
|
+
const pagePositionList = positionList.filter((p) => p.pageNo === pageNo);
|
|
16299
|
+
if (!pagePositionList.length)
|
|
16300
|
+
continue;
|
|
16301
|
+
ctx.translate(0.5, 0.5);
|
|
16302
|
+
const firstPosition = pagePositionList[0];
|
|
16303
|
+
const lastPosition = pagePositionList[pagePositionList.length - 1];
|
|
16304
|
+
const x = margins[3];
|
|
16305
|
+
const y = Math.ceil(firstPosition.coordinate.leftTop[1]);
|
|
16306
|
+
const height = Math.ceil(lastPosition.coordinate.rightBottom[1] - y);
|
|
16307
|
+
if (area.backgroundColor) {
|
|
16308
|
+
ctx.fillStyle = area.backgroundColor;
|
|
16309
|
+
ctx.fillRect(x, y, width, height);
|
|
16310
|
+
}
|
|
16311
|
+
if (area.borderColor) {
|
|
16312
|
+
ctx.strokeStyle = area.borderColor;
|
|
16313
|
+
ctx.strokeRect(x, y, width, height);
|
|
16314
|
+
}
|
|
16315
|
+
}
|
|
16316
|
+
ctx.restore();
|
|
16317
|
+
}
|
|
16318
|
+
compute() {
|
|
16319
|
+
this.areaInfoMap.clear();
|
|
16320
|
+
const elementList = this.draw.getOriginalMainElementList();
|
|
16321
|
+
const positionList = this.position.getOriginalMainPositionList();
|
|
16322
|
+
for (let e = 0; e < elementList.length; e++) {
|
|
16323
|
+
const element = elementList[e];
|
|
16324
|
+
const areaId = element.areaId;
|
|
16325
|
+
if (areaId) {
|
|
16326
|
+
const areaInfo = this.areaInfoMap.get(areaId);
|
|
16327
|
+
if (!areaInfo) {
|
|
16328
|
+
this.areaInfoMap.set(areaId, {
|
|
16329
|
+
id: areaId,
|
|
16330
|
+
area: element.area,
|
|
16331
|
+
elementList: [element],
|
|
16332
|
+
positionList: [positionList[e]]
|
|
16333
|
+
});
|
|
16334
|
+
} else {
|
|
16335
|
+
areaInfo.elementList.push(element);
|
|
16336
|
+
areaInfo.positionList.push(positionList[e]);
|
|
16337
|
+
}
|
|
16338
|
+
}
|
|
16339
|
+
}
|
|
16340
|
+
}
|
|
16341
|
+
getAreaValue(options = {}) {
|
|
16342
|
+
const areaId = options.id || this.getActiveAreaId();
|
|
16343
|
+
if (!areaId)
|
|
16344
|
+
return null;
|
|
16345
|
+
const areaInfo = this.areaInfoMap.get(areaId);
|
|
16346
|
+
if (!areaInfo)
|
|
16347
|
+
return null;
|
|
16348
|
+
return {
|
|
16349
|
+
area: areaInfo.area,
|
|
16350
|
+
id: areaInfo.id,
|
|
16351
|
+
startPageNo: areaInfo.positionList[0].pageNo,
|
|
16352
|
+
endPageNo: areaInfo.positionList[areaInfo.positionList.length - 1].pageNo,
|
|
16353
|
+
value: zipElementList(areaInfo.elementList)
|
|
16354
|
+
};
|
|
16355
|
+
}
|
|
16356
|
+
setAreaProperties(payload) {
|
|
16357
|
+
const areaId = payload.id || this.getActiveAreaId();
|
|
16358
|
+
if (!areaId)
|
|
16359
|
+
return;
|
|
16360
|
+
const areaInfo = this.areaInfoMap.get(areaId);
|
|
16361
|
+
if (!areaInfo)
|
|
16362
|
+
return;
|
|
16363
|
+
let isCompute = false;
|
|
16364
|
+
if (payload.properties.mode) {
|
|
16365
|
+
areaInfo.area.mode = payload.properties.mode;
|
|
16366
|
+
}
|
|
16367
|
+
if (payload.properties.borderColor) {
|
|
16368
|
+
areaInfo.area.borderColor = payload.properties.borderColor;
|
|
16369
|
+
}
|
|
16370
|
+
if (payload.properties.backgroundColor) {
|
|
16371
|
+
areaInfo.area.backgroundColor = payload.properties.backgroundColor;
|
|
16372
|
+
}
|
|
16373
|
+
if (!isNonValue(payload.properties.top)) {
|
|
16374
|
+
isCompute = true;
|
|
16375
|
+
areaInfo.area.top = payload.properties.top;
|
|
16376
|
+
}
|
|
16377
|
+
this.draw.render({
|
|
16378
|
+
isCompute,
|
|
16379
|
+
isSetCursor: false
|
|
16380
|
+
});
|
|
16381
|
+
}
|
|
16382
|
+
}
|
|
15962
16383
|
class Draw {
|
|
15963
16384
|
constructor(rootContainer, options, data2, listener, eventBus, override) {
|
|
15964
16385
|
__publicField(this, "container");
|
|
@@ -15984,6 +16405,7 @@ class Draw {
|
|
|
15984
16405
|
__publicField(this, "background");
|
|
15985
16406
|
__publicField(this, "search");
|
|
15986
16407
|
__publicField(this, "group");
|
|
16408
|
+
__publicField(this, "area");
|
|
15987
16409
|
__publicField(this, "underline");
|
|
15988
16410
|
__publicField(this, "strikeout");
|
|
15989
16411
|
__publicField(this, "highlight");
|
|
@@ -16051,6 +16473,7 @@ class Draw {
|
|
|
16051
16473
|
this.background = new Background(this);
|
|
16052
16474
|
this.search = new Search(this);
|
|
16053
16475
|
this.group = new Group(this);
|
|
16476
|
+
this.area = new Area(this);
|
|
16054
16477
|
this.underline = new Underline(this);
|
|
16055
16478
|
this.strikeout = new Strikeout(this);
|
|
16056
16479
|
this.highlight = new Highlight(this);
|
|
@@ -16144,6 +16567,9 @@ class Draw {
|
|
|
16144
16567
|
});
|
|
16145
16568
|
}
|
|
16146
16569
|
isReadonly() {
|
|
16570
|
+
if (this.area.getActiveAreaId()) {
|
|
16571
|
+
return this.area.isReadonly();
|
|
16572
|
+
}
|
|
16147
16573
|
switch (this.mode) {
|
|
16148
16574
|
case EditorMode.DESIGN:
|
|
16149
16575
|
return false;
|
|
@@ -16337,6 +16763,9 @@ class Draw {
|
|
|
16337
16763
|
getGroup() {
|
|
16338
16764
|
return this.group;
|
|
16339
16765
|
}
|
|
16766
|
+
getArea() {
|
|
16767
|
+
return this.area;
|
|
16768
|
+
}
|
|
16340
16769
|
getHistoryManager() {
|
|
16341
16770
|
return this.historyManager;
|
|
16342
16771
|
}
|
|
@@ -16763,7 +17192,8 @@ class Draw {
|
|
|
16763
17192
|
extraPickAttrs
|
|
16764
17193
|
}),
|
|
16765
17194
|
main: zipElementList(mainElementList, {
|
|
16766
|
-
extraPickAttrs
|
|
17195
|
+
extraPickAttrs,
|
|
17196
|
+
isClassifyArea: true
|
|
16767
17197
|
}),
|
|
16768
17198
|
footer: zipElementList(this.getFooterElementList(), {
|
|
16769
17199
|
extraPickAttrs
|
|
@@ -16875,7 +17305,7 @@ class Draw {
|
|
|
16875
17305
|
return defaultBasicRowMarginHeight * ((_a = el.rowMargin) != null ? _a : defaultRowMargin) * scale;
|
|
16876
17306
|
}
|
|
16877
17307
|
computeRowList(payload) {
|
|
16878
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
|
|
17308
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o;
|
|
16879
17309
|
const { innerWidth, elementList, isPagingMode = false, isFromTable = false, startX = 0, startY = 0, pageHeight = 0, mainOuterHeight = 0, surroundElementList = [] } = payload;
|
|
16880
17310
|
const { defaultSize, defaultRowMargin, scale, table: { tdPadding }, defaultTabWidth } = this.options;
|
|
16881
17311
|
const defaultBasicRowMarginHeight = this.getDefaultBasicRowMarginHeight();
|
|
@@ -16912,7 +17342,9 @@ class Draw {
|
|
|
16912
17342
|
};
|
|
16913
17343
|
const offsetX = curRow.offsetX || element.listId && listStyleMap.get(element.listId) || 0;
|
|
16914
17344
|
const availableWidth = innerWidth - offsetX;
|
|
16915
|
-
|
|
17345
|
+
const isStartElement = curRow.elementList.length === 1;
|
|
17346
|
+
x += isStartElement ? offsetX : 0;
|
|
17347
|
+
y += isStartElement ? curRow.offsetY || 0 : 0;
|
|
16916
17348
|
if (element.type === ElementType.IMAGE || element.type === ElementType.LATEX) {
|
|
16917
17349
|
if (element.imgDisplay === ImageDisplay.SURROUND || element.imgDisplay === ImageDisplay.FLOAT_TOP || element.imgDisplay === ImageDisplay.FLOAT_BOTTOM) {
|
|
16918
17350
|
metrics.width = 0;
|
|
@@ -17037,14 +17469,16 @@ class Draw {
|
|
|
17037
17469
|
let curPagePreHeight = marginHeight;
|
|
17038
17470
|
for (let r = 0; r < rowList.length; r++) {
|
|
17039
17471
|
const row = rowList[r];
|
|
17040
|
-
|
|
17041
|
-
|
|
17472
|
+
const rowOffsetY = row.offsetY || 0;
|
|
17473
|
+
if (row.height + curPagePreHeight + rowOffsetY > height2 || ((_f = rowList[r - 1]) == null ? void 0 : _f.isPageBreak)) {
|
|
17474
|
+
curPagePreHeight = marginHeight + row.height + rowOffsetY;
|
|
17042
17475
|
} else {
|
|
17043
|
-
curPagePreHeight += row.height;
|
|
17476
|
+
curPagePreHeight += row.height + rowOffsetY;
|
|
17044
17477
|
}
|
|
17045
17478
|
}
|
|
17046
17479
|
const rowMarginHeight = rowMargin * 2 * scale;
|
|
17047
|
-
|
|
17480
|
+
const firstTrHeight = element.trList[0].height * scale;
|
|
17481
|
+
if (curPagePreHeight + firstTrHeight + rowMarginHeight > height2 || element.pagingIndex !== 0 && element.trList[0].pagingRepeat) {
|
|
17048
17482
|
curPagePreHeight = marginHeight;
|
|
17049
17483
|
}
|
|
17050
17484
|
if (curPagePreHeight + rowMarginHeight + elementHeight > height2) {
|
|
@@ -17072,11 +17506,12 @@ class Draw {
|
|
|
17072
17506
|
if (deleteCount) {
|
|
17073
17507
|
const cloneTrList = trList2.splice(deleteStart, deleteCount);
|
|
17074
17508
|
const cloneTrHeight = cloneTrList.reduce((pre, cur) => pre + cur.height, 0);
|
|
17509
|
+
const cloneTrRealHeight = cloneTrHeight * scale;
|
|
17075
17510
|
const pagingId = element.pagingId || getUUID();
|
|
17076
17511
|
element.pagingId = pagingId;
|
|
17077
17512
|
element.height -= cloneTrHeight;
|
|
17078
|
-
metrics.height -=
|
|
17079
|
-
metrics.boundingBoxDescent -=
|
|
17513
|
+
metrics.height -= cloneTrRealHeight;
|
|
17514
|
+
metrics.boundingBoxDescent -= cloneTrRealHeight;
|
|
17080
17515
|
const cloneElement = deepClone(element);
|
|
17081
17516
|
cloneElement.pagingId = pagingId;
|
|
17082
17517
|
cloneElement.pagingIndex = element.pagingIndex + 1;
|
|
@@ -17238,7 +17673,7 @@ class Draw {
|
|
|
17238
17673
|
x = surroundPosition.x;
|
|
17239
17674
|
curRowWidth += surroundPosition.rowIncreaseWidth;
|
|
17240
17675
|
x += metrics.width;
|
|
17241
|
-
const isForceBreak = element.type === ElementType.SEPARATOR || element.type === ElementType.TABLE || (preElement == null ? void 0 : preElement.type) === ElementType.TABLE || (preElement == null ? void 0 : preElement.type) === ElementType.BLOCK || element.type === ElementType.BLOCK || (preElement == null ? void 0 : preElement.imgDisplay) === ImageDisplay.INLINE || element.imgDisplay === ImageDisplay.INLINE || (preElement == null ? void 0 : preElement.listId) !== element.listId || i !== 0 && element.value === ZERO;
|
|
17676
|
+
const isForceBreak = element.type === ElementType.SEPARATOR || element.type === ElementType.TABLE || (preElement == null ? void 0 : preElement.type) === ElementType.TABLE || (preElement == null ? void 0 : preElement.type) === ElementType.BLOCK || element.type === ElementType.BLOCK || (preElement == null ? void 0 : preElement.imgDisplay) === ImageDisplay.INLINE || element.imgDisplay === ImageDisplay.INLINE || (preElement == null ? void 0 : preElement.listId) !== element.listId || (preElement == null ? void 0 : preElement.areaId) !== element.areaId || i !== 0 && element.value === ZERO;
|
|
17242
17677
|
const isWidthNotEnough = curRowWidth > availableWidth;
|
|
17243
17678
|
const isWrap = isForceBreak || isWidthNotEnough;
|
|
17244
17679
|
if (isWrap) {
|
|
@@ -17270,10 +17705,11 @@ class Draw {
|
|
|
17270
17705
|
row.offsetX = listStyleMap.get(element.listId);
|
|
17271
17706
|
row.listIndex = listIndex;
|
|
17272
17707
|
}
|
|
17708
|
+
row.offsetY = !isFromTable && ((_l = element.area) == null ? void 0 : _l.top) && element.areaId !== ((_m = elementList[i - 1]) == null ? void 0 : _m.areaId) ? element.area.top * scale : 0;
|
|
17273
17709
|
rowList.push(row);
|
|
17274
17710
|
} else {
|
|
17275
17711
|
curRow.width += metrics.width;
|
|
17276
|
-
if (i === 0 && getIsBlockElement(elementList[1])) {
|
|
17712
|
+
if (i === 0 && (getIsBlockElement(elementList[1]) || !!((_n = elementList[1]) == null ? void 0 : _n.areaId))) {
|
|
17277
17713
|
curRow.height = defaultBasicRowMarginHeight;
|
|
17278
17714
|
curRow.ascent = defaultBasicRowMarginHeight;
|
|
17279
17715
|
} else if (curRow.height < height) {
|
|
@@ -17284,8 +17720,8 @@ class Draw {
|
|
|
17284
17720
|
}
|
|
17285
17721
|
if (isWrap || i === elementList.length - 1) {
|
|
17286
17722
|
curRow.isWidthNotEnough = isWidthNotEnough && !isForceBreak;
|
|
17287
|
-
if (!curRow.isSurround && ((preElement == null ? void 0 : preElement.rowFlex) === RowFlex.JUSTIFY || (preElement == null ? void 0 : preElement.rowFlex) === RowFlex.ALIGNMENT && isWidthNotEnough)) {
|
|
17288
|
-
const rowElementList = ((
|
|
17723
|
+
if (!curRow.isSurround && ((preElement == null ? void 0 : preElement.rowFlex) === RowFlex.JUSTIFY || (preElement == null ? void 0 : preElement.rowFlex) === RowFlex.ALIGNMENT && curRow.isWidthNotEnough)) {
|
|
17724
|
+
const rowElementList = ((_o = curRow.elementList[0]) == null ? void 0 : _o.value) === ZERO ? curRow.elementList.slice(1) : curRow.elementList;
|
|
17289
17725
|
const gap = (availableWidth - curRow.width) / (rowElementList.length - 1);
|
|
17290
17726
|
for (let e = 0; e < rowElementList.length - 1; e++) {
|
|
17291
17727
|
const el = rowElementList[e];
|
|
@@ -17333,7 +17769,7 @@ class Draw {
|
|
|
17333
17769
|
let pageNo = 0;
|
|
17334
17770
|
if (pageMode === PageMode.CONTINUITY) {
|
|
17335
17771
|
pageRowList[0] = this.rowList;
|
|
17336
|
-
pageHeight += this.rowList.reduce((pre, cur) => pre + cur.height, 0);
|
|
17772
|
+
pageHeight += this.rowList.reduce((pre, cur) => pre + cur.height + (cur.offsetY || 0), 0);
|
|
17337
17773
|
const dpr = this.getPagePixelRatio();
|
|
17338
17774
|
const pageDom = this.pageList[0];
|
|
17339
17775
|
const pageDomHeight = Number(pageDom.style.height.replace("px", ""));
|
|
@@ -17349,16 +17785,17 @@ class Draw {
|
|
|
17349
17785
|
} else {
|
|
17350
17786
|
for (let i = 0; i < this.rowList.length; i++) {
|
|
17351
17787
|
const row = this.rowList[i];
|
|
17352
|
-
|
|
17788
|
+
const rowOffsetY = row.offsetY || 0;
|
|
17789
|
+
if (row.height + rowOffsetY + pageHeight > height || ((_a = this.rowList[i - 1]) == null ? void 0 : _a.isPageBreak)) {
|
|
17353
17790
|
if (Number.isInteger(maxPageNo) && pageNo >= maxPageNo) {
|
|
17354
17791
|
this.elementList = this.elementList.slice(0, row.startIndex);
|
|
17355
17792
|
break;
|
|
17356
17793
|
}
|
|
17357
|
-
pageHeight = marginHeight + row.height;
|
|
17794
|
+
pageHeight = marginHeight + row.height + rowOffsetY;
|
|
17358
17795
|
pageRowList.push([row]);
|
|
17359
17796
|
pageNo++;
|
|
17360
17797
|
} else {
|
|
17361
|
-
pageHeight += row.height;
|
|
17798
|
+
pageHeight += row.height + rowOffsetY;
|
|
17362
17799
|
pageRowList[pageNo].push(row);
|
|
17363
17800
|
}
|
|
17364
17801
|
}
|
|
@@ -17623,19 +18060,25 @@ class Draw {
|
|
|
17623
18060
|
var _a, _b;
|
|
17624
18061
|
const { elementList, positionList, rowList, pageNo } = payload;
|
|
17625
18062
|
const { inactiveAlpha, pageMode, header, footer, pageNumber, lineNumber, pageBorder } = this.options;
|
|
18063
|
+
const isPrintMode = this.mode === EditorMode.PRINT;
|
|
17626
18064
|
const innerWidth = this.getInnerWidth();
|
|
17627
18065
|
const ctx = this.ctxList[pageNo];
|
|
17628
18066
|
ctx.globalAlpha = !this.zone.isMainActive() ? inactiveAlpha : 1;
|
|
17629
18067
|
this._clearPage(pageNo);
|
|
17630
18068
|
this.background.render(ctx, pageNo);
|
|
17631
|
-
if (
|
|
18069
|
+
if (!isPrintMode) {
|
|
18070
|
+
this.area.render(ctx, pageNo);
|
|
18071
|
+
}
|
|
18072
|
+
if (!isPrintMode) {
|
|
17632
18073
|
this.margin.render(ctx, pageNo);
|
|
17633
18074
|
}
|
|
17634
18075
|
this._drawFloat(ctx, {
|
|
17635
18076
|
pageNo,
|
|
17636
18077
|
imgDisplays: [ImageDisplay.FLOAT_BOTTOM]
|
|
17637
18078
|
});
|
|
17638
|
-
|
|
18079
|
+
if (!isPrintMode) {
|
|
18080
|
+
this.control.renderHighlightList(ctx, pageNo);
|
|
18081
|
+
}
|
|
17639
18082
|
const index2 = (_a = rowList[0]) == null ? void 0 : _a.startIndex;
|
|
17640
18083
|
this.drawRow(ctx, {
|
|
17641
18084
|
elementList,
|
|
@@ -17661,7 +18104,7 @@ class Draw {
|
|
|
17661
18104
|
pageNo,
|
|
17662
18105
|
imgDisplays: [ImageDisplay.FLOAT_TOP, ImageDisplay.SURROUND]
|
|
17663
18106
|
});
|
|
17664
|
-
if (this.search.getSearchKeyword()) {
|
|
18107
|
+
if (!isPrintMode && this.search.getSearchKeyword()) {
|
|
17665
18108
|
this.search.render(ctx, pageNo);
|
|
17666
18109
|
}
|
|
17667
18110
|
if (pageMode !== PageMode.CONTINUITY && this.options.watermark.data) {
|
|
@@ -17750,11 +18193,14 @@ class Draw {
|
|
|
17750
18193
|
});
|
|
17751
18194
|
this.pageRowList = this._computePageList();
|
|
17752
18195
|
this.position.computePositionList();
|
|
17753
|
-
|
|
17754
|
-
if (
|
|
17755
|
-
this.search.
|
|
18196
|
+
this.area.compute();
|
|
18197
|
+
if (this.mode !== EditorMode.PRINT) {
|
|
18198
|
+
const searchKeyword = this.search.getSearchKeyword();
|
|
18199
|
+
if (searchKeyword) {
|
|
18200
|
+
this.search.compute(searchKeyword);
|
|
18201
|
+
}
|
|
18202
|
+
this.control.computeHighlightList();
|
|
17756
18203
|
}
|
|
17757
|
-
this.control.computeHighlightList();
|
|
17758
18204
|
}
|
|
17759
18205
|
this.imageObserver.clearAll();
|
|
17760
18206
|
this.cursor.recoveryCursor();
|
|
@@ -17777,6 +18223,8 @@ class Draw {
|
|
|
17777
18223
|
}
|
|
17778
18224
|
if (isSetCursor) {
|
|
17779
18225
|
curIndex = this.setCursor(curIndex);
|
|
18226
|
+
} else if (this.range.getIsSelection()) {
|
|
18227
|
+
this.cursor.focus();
|
|
17780
18228
|
}
|
|
17781
18229
|
if (isSubmitHistory && !isFirstRender || curIndex !== void 0 && this.historyManager.isStackEmpty()) {
|
|
17782
18230
|
this.submitHistory(curIndex);
|
|
@@ -17952,6 +18400,8 @@ class Command {
|
|
|
17952
18400
|
__publicField(this, "executePaperDirection");
|
|
17953
18401
|
__publicField(this, "executeSetPaperMargin");
|
|
17954
18402
|
__publicField(this, "executeInsertElementList");
|
|
18403
|
+
__publicField(this, "executeInsertArea");
|
|
18404
|
+
__publicField(this, "executeSetAreaProperties");
|
|
17955
18405
|
__publicField(this, "executeAppendElementList");
|
|
17956
18406
|
__publicField(this, "executeUpdateElementById");
|
|
17957
18407
|
__publicField(this, "executeSetValue");
|
|
@@ -17977,6 +18427,7 @@ class Command {
|
|
|
17977
18427
|
__publicField(this, "getImage");
|
|
17978
18428
|
__publicField(this, "getOptions");
|
|
17979
18429
|
__publicField(this, "getValue");
|
|
18430
|
+
__publicField(this, "getAreaValue");
|
|
17980
18431
|
__publicField(this, "getHTML");
|
|
17981
18432
|
__publicField(this, "getText");
|
|
17982
18433
|
__publicField(this, "getWordCount");
|
|
@@ -17997,6 +18448,7 @@ class Command {
|
|
|
17997
18448
|
__publicField(this, "getContainer");
|
|
17998
18449
|
__publicField(this, "getTitleValue");
|
|
17999
18450
|
__publicField(this, "getPositionContextByEvent");
|
|
18451
|
+
__publicField(this, "getElementById");
|
|
18000
18452
|
this.executeMode = adapt.mode.bind(adapt);
|
|
18001
18453
|
this.executeCut = adapt.cut.bind(adapt);
|
|
18002
18454
|
this.executeCopy = adapt.copy.bind(adapt);
|
|
@@ -18069,6 +18521,9 @@ class Command {
|
|
|
18069
18521
|
this.executePaperSize = adapt.paperSize.bind(adapt);
|
|
18070
18522
|
this.executePaperDirection = adapt.paperDirection.bind(adapt);
|
|
18071
18523
|
this.executeSetPaperMargin = adapt.setPaperMargin.bind(adapt);
|
|
18524
|
+
this.getAreaValue = adapt.getAreaValue.bind(adapt);
|
|
18525
|
+
this.executeInsertArea = adapt.insertArea.bind(adapt);
|
|
18526
|
+
this.executeSetAreaProperties = adapt.setAreaProperties.bind(adapt);
|
|
18072
18527
|
this.executeInsertElementList = adapt.insertElementList.bind(adapt);
|
|
18073
18528
|
this.executeAppendElementList = adapt.appendElementList.bind(adapt);
|
|
18074
18529
|
this.executeUpdateElementById = adapt.updateElementById.bind(adapt);
|
|
@@ -18107,6 +18562,7 @@ class Command {
|
|
|
18107
18562
|
this.getContainer = adapt.getContainer.bind(adapt);
|
|
18108
18563
|
this.getTitleValue = adapt.getTitleValue.bind(adapt);
|
|
18109
18564
|
this.getPositionContextByEvent = adapt.getPositionContextByEvent.bind(adapt);
|
|
18565
|
+
this.getElementById = adapt.getElementById.bind(adapt);
|
|
18110
18566
|
this.executeSetControlValue = adapt.setControlValue.bind(adapt);
|
|
18111
18567
|
this.executeSetControlExtension = adapt.setControlExtension.bind(adapt);
|
|
18112
18568
|
this.executeSetControlProperties = adapt.setControlProperties.bind(adapt);
|
|
@@ -18386,13 +18842,23 @@ class CommandAdapt {
|
|
|
18386
18842
|
});
|
|
18387
18843
|
this.draw.render({ isSetCursor: false });
|
|
18388
18844
|
} else {
|
|
18845
|
+
let isSubmitHistory = true;
|
|
18389
18846
|
const { endIndex } = this.range.getRange();
|
|
18390
18847
|
const elementList = this.draw.getElementList();
|
|
18391
18848
|
const enterElement = elementList[endIndex];
|
|
18392
18849
|
if ((enterElement == null ? void 0 : enterElement.value) === ZERO) {
|
|
18393
18850
|
enterElement.font = payload;
|
|
18394
|
-
|
|
18851
|
+
} else {
|
|
18852
|
+
this.range.setDefaultStyle({
|
|
18853
|
+
font: payload
|
|
18854
|
+
});
|
|
18855
|
+
isSubmitHistory = false;
|
|
18395
18856
|
}
|
|
18857
|
+
this.draw.render({
|
|
18858
|
+
isSubmitHistory,
|
|
18859
|
+
curIndex: endIndex,
|
|
18860
|
+
isCompute: false
|
|
18861
|
+
});
|
|
18396
18862
|
}
|
|
18397
18863
|
}
|
|
18398
18864
|
size(payload) {
|
|
@@ -18415,6 +18881,15 @@ class CommandAdapt {
|
|
|
18415
18881
|
if ((enterElement == null ? void 0 : enterElement.value) === ZERO) {
|
|
18416
18882
|
changeElementList.push(enterElement);
|
|
18417
18883
|
renderOption = { curIndex: endIndex };
|
|
18884
|
+
} else {
|
|
18885
|
+
this.range.setDefaultStyle({
|
|
18886
|
+
size: payload
|
|
18887
|
+
});
|
|
18888
|
+
this.draw.render({
|
|
18889
|
+
curIndex: endIndex,
|
|
18890
|
+
isCompute: false,
|
|
18891
|
+
isSubmitHistory: false
|
|
18892
|
+
});
|
|
18418
18893
|
}
|
|
18419
18894
|
}
|
|
18420
18895
|
if (!changeElementList.length)
|
|
@@ -18435,6 +18910,7 @@ class CommandAdapt {
|
|
|
18435
18910
|
const isDisabled = this.draw.isReadonly() || this.draw.isDisabled();
|
|
18436
18911
|
if (isDisabled)
|
|
18437
18912
|
return;
|
|
18913
|
+
const { defaultSize, maxSize } = this.options;
|
|
18438
18914
|
const selection = this.range.getTextLikeSelectionElementList();
|
|
18439
18915
|
let renderOption = {};
|
|
18440
18916
|
let changeElementList = [];
|
|
@@ -18448,11 +18924,21 @@ class CommandAdapt {
|
|
|
18448
18924
|
if ((enterElement == null ? void 0 : enterElement.value) === ZERO) {
|
|
18449
18925
|
changeElementList.push(enterElement);
|
|
18450
18926
|
renderOption = { curIndex: endIndex };
|
|
18927
|
+
} else {
|
|
18928
|
+
const style = this.range.getDefaultStyle();
|
|
18929
|
+
const anchorSize = (style == null ? void 0 : style.size) || enterElement.size || defaultSize;
|
|
18930
|
+
this.range.setDefaultStyle({
|
|
18931
|
+
size: anchorSize + 2 > maxSize ? maxSize : anchorSize + 2
|
|
18932
|
+
});
|
|
18933
|
+
this.draw.render({
|
|
18934
|
+
curIndex: endIndex,
|
|
18935
|
+
isCompute: false,
|
|
18936
|
+
isSubmitHistory: false
|
|
18937
|
+
});
|
|
18451
18938
|
}
|
|
18452
18939
|
}
|
|
18453
18940
|
if (!changeElementList.length)
|
|
18454
18941
|
return;
|
|
18455
|
-
const { defaultSize, maxSize } = this.options;
|
|
18456
18942
|
let isExistUpdate = false;
|
|
18457
18943
|
changeElementList.forEach((el) => {
|
|
18458
18944
|
if (!el.size) {
|
|
@@ -18475,6 +18961,7 @@ class CommandAdapt {
|
|
|
18475
18961
|
const isDisabled = this.draw.isReadonly() || this.draw.isDisabled();
|
|
18476
18962
|
if (isDisabled)
|
|
18477
18963
|
return;
|
|
18964
|
+
const { defaultSize, minSize } = this.options;
|
|
18478
18965
|
const selection = this.range.getTextLikeSelectionElementList();
|
|
18479
18966
|
let renderOption = {};
|
|
18480
18967
|
let changeElementList = [];
|
|
@@ -18488,11 +18975,21 @@ class CommandAdapt {
|
|
|
18488
18975
|
if ((enterElement == null ? void 0 : enterElement.value) === ZERO) {
|
|
18489
18976
|
changeElementList.push(enterElement);
|
|
18490
18977
|
renderOption = { curIndex: endIndex };
|
|
18978
|
+
} else {
|
|
18979
|
+
const style = this.range.getDefaultStyle();
|
|
18980
|
+
const anchorSize = (style == null ? void 0 : style.size) || enterElement.size || defaultSize;
|
|
18981
|
+
this.range.setDefaultStyle({
|
|
18982
|
+
size: anchorSize - 2 < minSize ? minSize : anchorSize - 2
|
|
18983
|
+
});
|
|
18984
|
+
this.draw.render({
|
|
18985
|
+
curIndex: endIndex,
|
|
18986
|
+
isCompute: false,
|
|
18987
|
+
isSubmitHistory: false
|
|
18988
|
+
});
|
|
18491
18989
|
}
|
|
18492
18990
|
}
|
|
18493
18991
|
if (!changeElementList.length)
|
|
18494
18992
|
return;
|
|
18495
|
-
const { defaultSize, minSize } = this.options;
|
|
18496
18993
|
let isExistUpdate = false;
|
|
18497
18994
|
changeElementList.forEach((el) => {
|
|
18498
18995
|
if (!el.size) {
|
|
@@ -18512,6 +19009,7 @@ class CommandAdapt {
|
|
|
18512
19009
|
}
|
|
18513
19010
|
}
|
|
18514
19011
|
bold() {
|
|
19012
|
+
var _a;
|
|
18515
19013
|
const isDisabled = this.draw.isReadonly() || this.draw.isDisabled();
|
|
18516
19014
|
if (isDisabled)
|
|
18517
19015
|
return;
|
|
@@ -18523,16 +19021,27 @@ class CommandAdapt {
|
|
|
18523
19021
|
});
|
|
18524
19022
|
this.draw.render({ isSetCursor: false });
|
|
18525
19023
|
} else {
|
|
19024
|
+
let isSubmitHistory = true;
|
|
18526
19025
|
const { endIndex } = this.range.getRange();
|
|
18527
19026
|
const elementList = this.draw.getElementList();
|
|
18528
19027
|
const enterElement = elementList[endIndex];
|
|
18529
19028
|
if ((enterElement == null ? void 0 : enterElement.value) === ZERO) {
|
|
18530
19029
|
enterElement.bold = !enterElement.bold;
|
|
18531
|
-
|
|
19030
|
+
} else {
|
|
19031
|
+
this.range.setDefaultStyle({
|
|
19032
|
+
bold: enterElement.bold ? false : !((_a = this.range.getDefaultStyle()) == null ? void 0 : _a.bold)
|
|
19033
|
+
});
|
|
19034
|
+
isSubmitHistory = false;
|
|
18532
19035
|
}
|
|
19036
|
+
this.draw.render({
|
|
19037
|
+
isSubmitHistory,
|
|
19038
|
+
curIndex: endIndex,
|
|
19039
|
+
isCompute: false
|
|
19040
|
+
});
|
|
18533
19041
|
}
|
|
18534
19042
|
}
|
|
18535
19043
|
italic() {
|
|
19044
|
+
var _a;
|
|
18536
19045
|
const isDisabled = this.draw.isReadonly() || this.draw.isDisabled();
|
|
18537
19046
|
if (isDisabled)
|
|
18538
19047
|
return;
|
|
@@ -18544,16 +19053,27 @@ class CommandAdapt {
|
|
|
18544
19053
|
});
|
|
18545
19054
|
this.draw.render({ isSetCursor: false });
|
|
18546
19055
|
} else {
|
|
19056
|
+
let isSubmitHistory = true;
|
|
18547
19057
|
const { endIndex } = this.range.getRange();
|
|
18548
19058
|
const elementList = this.draw.getElementList();
|
|
18549
19059
|
const enterElement = elementList[endIndex];
|
|
18550
19060
|
if ((enterElement == null ? void 0 : enterElement.value) === ZERO) {
|
|
18551
19061
|
enterElement.italic = !enterElement.italic;
|
|
18552
|
-
|
|
19062
|
+
} else {
|
|
19063
|
+
this.range.setDefaultStyle({
|
|
19064
|
+
italic: enterElement.italic ? false : !((_a = this.range.getDefaultStyle()) == null ? void 0 : _a.italic)
|
|
19065
|
+
});
|
|
19066
|
+
isSubmitHistory = false;
|
|
18553
19067
|
}
|
|
19068
|
+
this.draw.render({
|
|
19069
|
+
isSubmitHistory,
|
|
19070
|
+
curIndex: endIndex,
|
|
19071
|
+
isCompute: false
|
|
19072
|
+
});
|
|
18554
19073
|
}
|
|
18555
19074
|
}
|
|
18556
19075
|
underline(textDecoration) {
|
|
19076
|
+
var _a;
|
|
18557
19077
|
const isDisabled = this.draw.isReadonly() || this.draw.isDisabled();
|
|
18558
19078
|
if (isDisabled)
|
|
18559
19079
|
return;
|
|
@@ -18573,16 +19093,27 @@ class CommandAdapt {
|
|
|
18573
19093
|
isCompute: false
|
|
18574
19094
|
});
|
|
18575
19095
|
} else {
|
|
19096
|
+
let isSubmitHistory = true;
|
|
18576
19097
|
const { endIndex } = this.range.getRange();
|
|
18577
19098
|
const elementList = this.draw.getElementList();
|
|
18578
19099
|
const enterElement = elementList[endIndex];
|
|
18579
19100
|
if ((enterElement == null ? void 0 : enterElement.value) === ZERO) {
|
|
18580
19101
|
enterElement.underline = !enterElement.underline;
|
|
18581
|
-
|
|
19102
|
+
} else {
|
|
19103
|
+
this.range.setDefaultStyle({
|
|
19104
|
+
underline: (enterElement == null ? void 0 : enterElement.underline) ? false : !((_a = this.range.getDefaultStyle()) == null ? void 0 : _a.underline)
|
|
19105
|
+
});
|
|
19106
|
+
isSubmitHistory = false;
|
|
18582
19107
|
}
|
|
19108
|
+
this.draw.render({
|
|
19109
|
+
isSubmitHistory,
|
|
19110
|
+
curIndex: endIndex,
|
|
19111
|
+
isCompute: false
|
|
19112
|
+
});
|
|
18583
19113
|
}
|
|
18584
19114
|
}
|
|
18585
19115
|
strikeout() {
|
|
19116
|
+
var _a;
|
|
18586
19117
|
const isDisabled = this.draw.isReadonly() || this.draw.isDisabled();
|
|
18587
19118
|
if (isDisabled)
|
|
18588
19119
|
return;
|
|
@@ -18597,13 +19128,23 @@ class CommandAdapt {
|
|
|
18597
19128
|
isCompute: false
|
|
18598
19129
|
});
|
|
18599
19130
|
} else {
|
|
19131
|
+
let isSubmitHistory = true;
|
|
18600
19132
|
const { endIndex } = this.range.getRange();
|
|
18601
19133
|
const elementList = this.draw.getElementList();
|
|
18602
19134
|
const enterElement = elementList[endIndex];
|
|
18603
19135
|
if ((enterElement == null ? void 0 : enterElement.value) === ZERO) {
|
|
18604
19136
|
enterElement.strikeout = !enterElement.strikeout;
|
|
18605
|
-
|
|
19137
|
+
} else {
|
|
19138
|
+
this.range.setDefaultStyle({
|
|
19139
|
+
strikeout: enterElement.strikeout ? false : !((_a = this.range.getDefaultStyle()) == null ? void 0 : _a.strikeout)
|
|
19140
|
+
});
|
|
19141
|
+
isSubmitHistory = false;
|
|
18606
19142
|
}
|
|
19143
|
+
this.draw.render({
|
|
19144
|
+
isSubmitHistory,
|
|
19145
|
+
curIndex: endIndex,
|
|
19146
|
+
isCompute: false
|
|
19147
|
+
});
|
|
18607
19148
|
}
|
|
18608
19149
|
}
|
|
18609
19150
|
superscript() {
|
|
@@ -18668,6 +19209,7 @@ class CommandAdapt {
|
|
|
18668
19209
|
isCompute: false
|
|
18669
19210
|
});
|
|
18670
19211
|
} else {
|
|
19212
|
+
let isSubmitHistory = true;
|
|
18671
19213
|
const { endIndex } = this.range.getRange();
|
|
18672
19214
|
const elementList = this.draw.getElementList();
|
|
18673
19215
|
const enterElement = elementList[endIndex];
|
|
@@ -18677,8 +19219,17 @@ class CommandAdapt {
|
|
|
18677
19219
|
} else {
|
|
18678
19220
|
delete enterElement.color;
|
|
18679
19221
|
}
|
|
18680
|
-
|
|
19222
|
+
} else {
|
|
19223
|
+
this.range.setDefaultStyle({
|
|
19224
|
+
color: payload || void 0
|
|
19225
|
+
});
|
|
19226
|
+
isSubmitHistory = false;
|
|
18681
19227
|
}
|
|
19228
|
+
this.draw.render({
|
|
19229
|
+
isSubmitHistory,
|
|
19230
|
+
curIndex: endIndex,
|
|
19231
|
+
isCompute: false
|
|
19232
|
+
});
|
|
18682
19233
|
}
|
|
18683
19234
|
}
|
|
18684
19235
|
highlight(payload) {
|
|
@@ -18699,6 +19250,7 @@ class CommandAdapt {
|
|
|
18699
19250
|
isCompute: false
|
|
18700
19251
|
});
|
|
18701
19252
|
} else {
|
|
19253
|
+
let isSubmitHistory = true;
|
|
18702
19254
|
const { endIndex } = this.range.getRange();
|
|
18703
19255
|
const elementList = this.draw.getElementList();
|
|
18704
19256
|
const enterElement = elementList[endIndex];
|
|
@@ -18708,8 +19260,17 @@ class CommandAdapt {
|
|
|
18708
19260
|
} else {
|
|
18709
19261
|
delete enterElement.highlight;
|
|
18710
19262
|
}
|
|
18711
|
-
|
|
19263
|
+
} else {
|
|
19264
|
+
this.range.setDefaultStyle({
|
|
19265
|
+
highlight: payload || void 0
|
|
19266
|
+
});
|
|
19267
|
+
isSubmitHistory = false;
|
|
18712
19268
|
}
|
|
19269
|
+
this.draw.render({
|
|
19270
|
+
isSubmitHistory,
|
|
19271
|
+
curIndex: endIndex,
|
|
19272
|
+
isCompute: false
|
|
19273
|
+
});
|
|
18713
19274
|
}
|
|
18714
19275
|
}
|
|
18715
19276
|
title(payload) {
|
|
@@ -19313,6 +19874,9 @@ class CommandAdapt {
|
|
|
19313
19874
|
getValue(options) {
|
|
19314
19875
|
return this.draw.getValue(options);
|
|
19315
19876
|
}
|
|
19877
|
+
getAreaValue(options) {
|
|
19878
|
+
return this.draw.getArea().getAreaValue(options);
|
|
19879
|
+
}
|
|
19316
19880
|
getHTML() {
|
|
19317
19881
|
const options = this.options;
|
|
19318
19882
|
const headerElementList = this.draw.getHeaderElementList();
|
|
@@ -19543,10 +20107,13 @@ class CommandAdapt {
|
|
|
19543
20107
|
this.draw.appendElementList(deepClone(elementList), options);
|
|
19544
20108
|
}
|
|
19545
20109
|
updateElementById(payload) {
|
|
20110
|
+
const { id, conceptId } = payload;
|
|
20111
|
+
if (!id && !conceptId)
|
|
20112
|
+
return;
|
|
19546
20113
|
function getElementIndexById(elementList) {
|
|
19547
20114
|
for (let e = 0; e < elementList.length; e++) {
|
|
19548
20115
|
const element = elementList[e];
|
|
19549
|
-
if (element.id ===
|
|
20116
|
+
if (id && element.id === id || conceptId && element.conceptId === conceptId) {
|
|
19550
20117
|
return e;
|
|
19551
20118
|
}
|
|
19552
20119
|
}
|
|
@@ -19573,6 +20140,34 @@ class CommandAdapt {
|
|
|
19573
20140
|
}
|
|
19574
20141
|
}
|
|
19575
20142
|
}
|
|
20143
|
+
getElementById(payload) {
|
|
20144
|
+
const { id, conceptId } = payload;
|
|
20145
|
+
const result = [];
|
|
20146
|
+
if (!id && !conceptId)
|
|
20147
|
+
return result;
|
|
20148
|
+
const getElement = (elementList) => {
|
|
20149
|
+
let i = 0;
|
|
20150
|
+
while (i < elementList.length) {
|
|
20151
|
+
const element = elementList[i];
|
|
20152
|
+
i++;
|
|
20153
|
+
if (id && element.controlId !== id || conceptId && element.conceptId !== conceptId) {
|
|
20154
|
+
continue;
|
|
20155
|
+
}
|
|
20156
|
+
result.push(element);
|
|
20157
|
+
}
|
|
20158
|
+
};
|
|
20159
|
+
const data2 = [
|
|
20160
|
+
this.draw.getHeaderElementList(),
|
|
20161
|
+
this.draw.getOriginalMainElementList(),
|
|
20162
|
+
this.draw.getFooterElementList()
|
|
20163
|
+
];
|
|
20164
|
+
for (const elementList of data2) {
|
|
20165
|
+
getElement(elementList);
|
|
20166
|
+
}
|
|
20167
|
+
return zipElementList(result, {
|
|
20168
|
+
extraPickAttrs: ["id"]
|
|
20169
|
+
});
|
|
20170
|
+
}
|
|
19576
20171
|
setValue(payload, options) {
|
|
19577
20172
|
this.draw.setValue(payload, options);
|
|
19578
20173
|
}
|
|
@@ -19970,6 +20565,12 @@ class CommandAdapt {
|
|
|
19970
20565
|
direction: MoveDirection.DOWN
|
|
19971
20566
|
});
|
|
19972
20567
|
}
|
|
20568
|
+
insertArea(payload) {
|
|
20569
|
+
return this.draw.getArea().insertArea(payload);
|
|
20570
|
+
}
|
|
20571
|
+
setAreaProperties(payload) {
|
|
20572
|
+
this.draw.getArea().setAreaProperties(payload);
|
|
20573
|
+
}
|
|
19973
20574
|
}
|
|
19974
20575
|
class Listener {
|
|
19975
20576
|
constructor() {
|
|
@@ -20041,7 +20642,9 @@ const INTERNAL_CONTEXT_MENU_KEY = {
|
|
|
20041
20642
|
BORDER: "border",
|
|
20042
20643
|
BORDER_ALL: "tableBorderAll",
|
|
20043
20644
|
BORDER_EMPTY: "tableBorderEmpty",
|
|
20645
|
+
BORDER_DASH: "tableBorderDash",
|
|
20044
20646
|
BORDER_EXTERNAL: "tableBorderExternal",
|
|
20647
|
+
BORDER_INTERNAL: "tableBorderInternal",
|
|
20045
20648
|
BORDER_TD: "tableBorderTd",
|
|
20046
20649
|
BORDER_TD_TOP: "tableBorderTdTop",
|
|
20047
20650
|
BORDER_TD_RIGHT: "tableBorderTdRight",
|
|
@@ -20268,7 +20871,7 @@ const imageMenus = [
|
|
|
20268
20871
|
]
|
|
20269
20872
|
}
|
|
20270
20873
|
];
|
|
20271
|
-
const { TABLE: { BORDER, BORDER_ALL, BORDER_EMPTY, BORDER_EXTERNAL, BORDER_TD, BORDER_TD_TOP, BORDER_TD_LEFT, BORDER_TD_BOTTOM, BORDER_TD_RIGHT, BORDER_TD_BACK, BORDER_TD_FORWARD, VERTICAL_ALIGN, VERTICAL_ALIGN_TOP, VERTICAL_ALIGN_MIDDLE, VERTICAL_ALIGN_BOTTOM, INSERT_ROW_COL, INSERT_TOP_ROW, INSERT_BOTTOM_ROW, INSERT_LEFT_COL, INSERT_RIGHT_COL, DELETE_ROW_COL, DELETE_ROW, DELETE_COL, DELETE_TABLE, MERGE_CELL, CANCEL_MERGE_CELL } } = INTERNAL_CONTEXT_MENU_KEY;
|
|
20874
|
+
const { TABLE: { BORDER, BORDER_ALL, BORDER_EMPTY, BORDER_DASH, BORDER_EXTERNAL, BORDER_INTERNAL, BORDER_TD, BORDER_TD_TOP, BORDER_TD_LEFT, BORDER_TD_BOTTOM, BORDER_TD_RIGHT, BORDER_TD_BACK, BORDER_TD_FORWARD, VERTICAL_ALIGN, VERTICAL_ALIGN_TOP, VERTICAL_ALIGN_MIDDLE, VERTICAL_ALIGN_BOTTOM, INSERT_ROW_COL, INSERT_TOP_ROW, INSERT_BOTTOM_ROW, INSERT_LEFT_COL, INSERT_RIGHT_COL, DELETE_ROW_COL, DELETE_ROW, DELETE_COL, DELETE_TABLE, MERGE_CELL, CANCEL_MERGE_CELL } } = INTERNAL_CONTEXT_MENU_KEY;
|
|
20272
20875
|
const tableMenus = [
|
|
20273
20876
|
{
|
|
20274
20877
|
isDivider: true
|
|
@@ -20299,6 +20902,15 @@ const tableMenus = [
|
|
|
20299
20902
|
command.executeTableBorderType(TableBorder.EMPTY);
|
|
20300
20903
|
}
|
|
20301
20904
|
},
|
|
20905
|
+
{
|
|
20906
|
+
key: BORDER_DASH,
|
|
20907
|
+
i18nPath: "contextmenu.table.borderDash",
|
|
20908
|
+
icon: "border-dash",
|
|
20909
|
+
when: () => true,
|
|
20910
|
+
callback: (command) => {
|
|
20911
|
+
command.executeTableBorderType(TableBorder.DASH);
|
|
20912
|
+
}
|
|
20913
|
+
},
|
|
20302
20914
|
{
|
|
20303
20915
|
key: BORDER_EXTERNAL,
|
|
20304
20916
|
i18nPath: "contextmenu.table.borderExternal",
|
|
@@ -20308,6 +20920,15 @@ const tableMenus = [
|
|
|
20308
20920
|
command.executeTableBorderType(TableBorder.EXTERNAL);
|
|
20309
20921
|
}
|
|
20310
20922
|
},
|
|
20923
|
+
{
|
|
20924
|
+
key: BORDER_INTERNAL,
|
|
20925
|
+
i18nPath: "contextmenu.table.borderInternal",
|
|
20926
|
+
icon: "border-internal",
|
|
20927
|
+
when: () => true,
|
|
20928
|
+
callback: (command) => {
|
|
20929
|
+
command.executeTableBorderType(TableBorder.INTERNAL);
|
|
20930
|
+
}
|
|
20931
|
+
},
|
|
20311
20932
|
{
|
|
20312
20933
|
key: BORDER_TD,
|
|
20313
20934
|
i18nPath: "contextmenu.table.borderTd",
|
|
@@ -21113,5 +21734,5 @@ class Editor {
|
|
|
21113
21734
|
this.use = plugin.use.bind(plugin);
|
|
21114
21735
|
}
|
|
21115
21736
|
}
|
|
21116
|
-
export { BackgroundRepeat, BackgroundSize, BlockType, Command, ControlIndentation, ControlType, EDITOR_COMPONENT, Editor, EditorComponent, EditorMode, EditorZone, ElementType, INTERNAL_CONTEXT_MENU_KEY, ImageDisplay, KeyMap, LETTER_CLASS, LineNumberType, ListStyle, ListType, LocationPosition, MaxHeightRatio, NumberType, PageMode, PaperDirection, RenderMode, RowFlex, TableBorder, TdBorder, TdSlash, TextDecorationStyle, TitleLevel, VerticalAlign, WordBreak, createDomFromElementList, Editor as default, getElementListByHTML, getTextFromElementList, splitText };
|
|
21737
|
+
export { AreaMode, BackgroundRepeat, BackgroundSize, BlockType, Command, ControlIndentation, ControlState, ControlType, EDITOR_CLIPBOARD, EDITOR_COMPONENT, Editor, EditorComponent, EditorMode, EditorZone, ElementType, INTERNAL_CONTEXT_MENU_KEY, ImageDisplay, KeyMap, LETTER_CLASS, LineNumberType, ListStyle, ListType, LocationPosition, MaxHeightRatio, NumberType, PageMode, PaperDirection, RenderMode, RowFlex, TableBorder, TdBorder, TdSlash, TextDecorationStyle, TitleLevel, VerticalAlign, WordBreak, createDomFromElementList, Editor as default, getElementListByHTML, getTextFromElementList, splitText };
|
|
21117
21738
|
//# sourceMappingURL=canvas-editor.es.js.map
|