@newview/file-ui 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/style.css ADDED
@@ -0,0 +1 @@
1
+ .ifr-container[data-v-071f536d]{height:calc(100% + 32px);margin:-16px}.ifr-content[data-v-071f536d]{height:100%;width:100%;border:0px;padding:0;margin:0}.uploadFile[data-v-d6b14e55] .ivu-upload-drag{border:1px dashed #dcdee2;border-radius:2px}.uploadFile[data-v-d6b14e55] .ivu-upload-drag:hover{border:1px dashed #2d8cf0;border-radius:2px;color:#2d8cf0}.uploadFile[data-v-d6b14e55] .ivu-card-body{padding:0}.uploadFile .file-upload-btn[data-v-d6b14e55]{width:78px;height:78px;line-height:78px;text-align:center}.uploadFile .file-upload-list-bs[data-v-d6b14e55]{box-shadow:0 1px 1px #0003}.uploadFile .file-upload-list[data-v-d6b14e55]{display:inline-block;width:80px;height:80px;text-align:center;line-height:80px;overflow:hidden;background:#fff;margin-right:12px;border-radius:4px}.uploadFile .file-upload-list-content[data-v-d6b14e55]{position:relative;width:100%;height:100%;cursor:pointer}.uploadFile img[data-v-d6b14e55]{width:100%;height:100%}.uploadFile .file-upload-list-cover[data-v-d6b14e55]{display:none;background:rgba(0,0,0,.7);position:absolute;top:0;left:0;right:0;line-height:18px}.uploadFile .file-upload-list-content:hover .file-upload-list-cover[data-v-d6b14e55]{display:block}.uploadFile .file-upload-list-cover i[data-v-d6b14e55]{color:#ccc;font-size:18px;cursor:pointer}.uploadFile .file-upload-list-cover i[data-v-d6b14e55]:hover{color:#fff}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px;margin-left:1px;margin-right:1px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover{background-color:#f3f4f6}.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{background-color:#dbeafe;color:#2563eb}.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#2563eb}.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#2563eb}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#4b5563}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#4b5563}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#4b5563}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#4b5563;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#4b5563;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#4b5563}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#4b5563;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle;margin-right:1px;margin-left:1px}.ql-snow .ql-picker-label{cursor:pointer;display:flex;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding:5px 8px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#d1d5db;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#d1d5db}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#d1d5db}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:3px}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px;margin:2px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #d1d5db;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#d1d5db}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #d1d5db;box-shadow:0 0 5px #d1d5db;color:#4b5563;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #d1d5db;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #d1d5db;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#2563eb}.ql-container.ql-snow{border:1px solid #d1d5db}.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"•"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"☑"}.ql-editor ul[data-checked=false]>li:before{content:"☐"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-bubble.ql-toolbar:after,.ql-bubble .ql-toolbar:after{clear:both;content:"";display:table}.ql-bubble.ql-toolbar button,.ql-bubble .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-bubble.ql-toolbar button svg,.ql-bubble .ql-toolbar button svg{float:left;height:100%}.ql-bubble.ql-toolbar button:active:hover,.ql-bubble .ql-toolbar button:active:hover{outline:none}.ql-bubble.ql-toolbar input.ql-image[type=file],.ql-bubble .ql-toolbar input.ql-image[type=file]{display:none}.ql-bubble.ql-toolbar button:hover,.ql-bubble .ql-toolbar button:hover,.ql-bubble.ql-toolbar button:focus,.ql-bubble .ql-toolbar button:focus,.ql-bubble.ql-toolbar button.ql-active,.ql-bubble .ql-toolbar button.ql-active,.ql-bubble.ql-toolbar .ql-picker-label:hover,.ql-bubble .ql-toolbar .ql-picker-label:hover,.ql-bubble.ql-toolbar .ql-picker-label.ql-active,.ql-bubble .ql-toolbar .ql-picker-label.ql-active,.ql-bubble.ql-toolbar .ql-picker-item:hover,.ql-bubble .ql-toolbar .ql-picker-item:hover,.ql-bubble.ql-toolbar .ql-picker-item.ql-selected,.ql-bubble .ql-toolbar .ql-picker-item.ql-selected{color:#fff}.ql-bubble.ql-toolbar button:hover .ql-fill,.ql-bubble .ql-toolbar button:hover .ql-fill,.ql-bubble.ql-toolbar button:focus .ql-fill,.ql-bubble .ql-toolbar button:focus .ql-fill,.ql-bubble.ql-toolbar button.ql-active .ql-fill,.ql-bubble .ql-toolbar button.ql-active .ql-fill,.ql-bubble.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-bubble .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-bubble.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-bubble .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-bubble.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-bubble .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-bubble.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-bubble .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-bubble.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-bubble .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-bubble.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-bubble .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-bubble.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-bubble .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-bubble.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-bubble .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-bubble.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-bubble .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-bubble.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-bubble .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-bubble.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-bubble .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#fff}.ql-bubble.ql-toolbar button:hover .ql-stroke,.ql-bubble .ql-toolbar button:hover .ql-stroke,.ql-bubble.ql-toolbar button:focus .ql-stroke,.ql-bubble .ql-toolbar button:focus .ql-stroke,.ql-bubble.ql-toolbar button.ql-active .ql-stroke,.ql-bubble .ql-toolbar button.ql-active .ql-stroke,.ql-bubble.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-bubble .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-bubble.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-bubble .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-bubble.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-bubble .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-bubble.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-bubble .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-bubble.ql-toolbar button:hover .ql-stroke-miter,.ql-bubble .ql-toolbar button:hover .ql-stroke-miter,.ql-bubble.ql-toolbar button:focus .ql-stroke-miter,.ql-bubble .ql-toolbar button:focus .ql-stroke-miter,.ql-bubble.ql-toolbar button.ql-active .ql-stroke-miter,.ql-bubble .ql-toolbar button.ql-active .ql-stroke-miter,.ql-bubble.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-bubble .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-bubble.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-bubble .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-bubble.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-bubble .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-bubble.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-bubble .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#fff}@media (pointer: coarse){.ql-bubble.ql-toolbar button:hover:not(.ql-active),.ql-bubble .ql-toolbar button:hover:not(.ql-active){color:#ccc}.ql-bubble.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-bubble .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-bubble.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-bubble .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#ccc}.ql-bubble.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-bubble .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-bubble.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-bubble .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#ccc}}.ql-bubble,.ql-bubble *{box-sizing:border-box}.ql-bubble .ql-hidden{display:none}.ql-bubble .ql-out-bottom,.ql-bubble .ql-out-top{visibility:hidden}.ql-bubble .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-bubble .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-bubble .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-bubble .ql-formats{display:inline-block;vertical-align:middle}.ql-bubble .ql-formats:after{clear:both;content:"";display:table}.ql-bubble .ql-stroke{fill:none;stroke:#ccc;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-bubble .ql-stroke-miter{fill:none;stroke:#ccc;stroke-miterlimit:10;stroke-width:2}.ql-bubble .ql-fill,.ql-bubble .ql-stroke.ql-fill{fill:#ccc}.ql-bubble .ql-empty{fill:none}.ql-bubble .ql-even{fill-rule:evenodd}.ql-bubble .ql-thin,.ql-bubble .ql-stroke.ql-thin{stroke-width:1}.ql-bubble .ql-transparent{opacity:.4}.ql-bubble .ql-direction svg:last-child{display:none}.ql-bubble .ql-direction.ql-active svg:last-child{display:inline}.ql-bubble .ql-direction.ql-active svg:first-child{display:none}.ql-bubble .ql-editor h1{font-size:2em}.ql-bubble .ql-editor h2{font-size:1.5em}.ql-bubble .ql-editor h3{font-size:1.17em}.ql-bubble .ql-editor h4{font-size:1em}.ql-bubble .ql-editor h5{font-size:.83em}.ql-bubble .ql-editor h6{font-size:.67em}.ql-bubble .ql-editor a{text-decoration:underline}.ql-bubble .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-bubble .ql-editor code,.ql-bubble .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-bubble .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-bubble .ql-editor code{font-size:85%;padding:2px 4px}.ql-bubble .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-bubble .ql-editor img{max-width:100%}.ql-bubble .ql-picker{color:#ccc;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-bubble .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-bubble .ql-picker-label:before{display:inline-block;line-height:22px}.ql-bubble .ql-picker-options{background-color:#444;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-bubble .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-bubble .ql-picker.ql-expanded .ql-picker-label{color:#777;z-index:2}.ql-bubble .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#777}.ql-bubble .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#777}.ql-bubble .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-bubble .ql-color-picker,.ql-bubble .ql-icon-picker{width:28px}.ql-bubble .ql-color-picker .ql-picker-label,.ql-bubble .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-bubble .ql-color-picker .ql-picker-label svg,.ql-bubble .ql-icon-picker .ql-picker-label svg{right:4px}.ql-bubble .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-bubble .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-bubble .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-bubble .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-bubble .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-bubble .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-bubble .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-bubble .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-bubble .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-bubble .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-bubble .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-bubble .ql-picker.ql-header{width:98px}.ql-bubble .ql-picker.ql-header .ql-picker-label:before,.ql-bubble .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-bubble .ql-picker.ql-font{width:108px}.ql-bubble .ql-picker.ql-font .ql-picker-label:before,.ql-bubble .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-bubble .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-bubble .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-bubble .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-bubble .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-bubble .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-bubble .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-bubble .ql-picker.ql-size{width:98px}.ql-bubble .ql-picker.ql-size .ql-picker-label:before,.ql-bubble .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-bubble .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-bubble .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-bubble .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-bubble .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-bubble .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-bubble .ql-toolbar .ql-formats{margin:8px 12px 8px 0}.ql-bubble .ql-toolbar .ql-formats:first-child{margin-left:12px}.ql-bubble .ql-color-picker svg{margin:1px}.ql-bubble .ql-color-picker .ql-picker-item.ql-selected,.ql-bubble .ql-color-picker .ql-picker-item:hover{border-color:#fff}.ql-bubble .ql-tooltip{background-color:#444;border-radius:25px;color:#fff}.ql-bubble .ql-tooltip-arrow{border-left:6px solid transparent;border-right:6px solid transparent;content:" ";display:block;left:50%;margin-left:-6px;position:absolute}.ql-bubble .ql-tooltip:not(.ql-flip) .ql-tooltip-arrow{border-bottom:6px solid #444;top:-6px}.ql-bubble .ql-tooltip.ql-flip .ql-tooltip-arrow{border-top:6px solid #444;bottom:-6px}.ql-bubble .ql-tooltip.ql-editing .ql-tooltip-editor{display:block}.ql-bubble .ql-tooltip.ql-editing .ql-formats{visibility:hidden}.ql-bubble .ql-tooltip-editor{display:none}.ql-bubble .ql-tooltip-editor input[type=text]{background:transparent;border:none;color:#fff;font-size:13px;height:100%;outline:none;padding:10px 20px;position:absolute;width:100%}.ql-bubble .ql-tooltip-editor a{top:10px;position:absolute;right:20px}.ql-bubble .ql-tooltip-editor a:before{color:#ccc;content:"×";font-size:16px;font-weight:700}.ql-container.ql-bubble:not(.ql-disabled) a{position:relative;white-space:nowrap}.ql-container.ql-bubble:not(.ql-disabled) a:before{background-color:#444;border-radius:15px;top:-5px;font-size:12px;color:#fff;content:attr(href);font-weight:400;overflow:hidden;padding:5px 15px;text-decoration:none;z-index:1}.ql-container.ql-bubble:not(.ql-disabled) a:after{border-top:6px solid #444;border-left:6px solid transparent;border-right:6px solid transparent;top:0;content:" ";height:0;width:0}.ql-container.ql-bubble:not(.ql-disabled) a:before,.ql-container.ql-bubble:not(.ql-disabled) a:after{left:0;margin-left:50%;position:absolute;transform:translate(-50%,-100%);transition:visibility 0s ease .2s;visibility:hidden}.ql-container.ql-bubble:not(.ql-disabled) a:hover:before,.ql-container.ql-bubble:not(.ql-disabled) a:hover:after{visibility:visible}[data-v-5812cc0f] .ql-snow.ql-container{height:calc(100% - 46px)}.text-edit-border[data-v-5812cc0f]{border:1px solid #e3e5e8}
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "@newview/file-ui",
3
+ "version": "0.0.0",
4
+ "description": "",
5
+ "main": "./dist/file-ui.umd.cjs",
6
+ "module": "./dist/file-ui.js",
7
+ "scripts": {
8
+ "dev": "vite",
9
+ "build": "run-p type-check build-only",
10
+ "preview": "vite preview",
11
+ "build-only": "vite build --watch",
12
+ "type-check": "vue-tsc --noEmit",
13
+ "p": "npm publish --access public"
14
+ },
15
+ "keywords": [],
16
+ "dependencies": {
17
+ "@newview/base-vue": "workspace:^0.0.0",
18
+ "@newview/fileservice-api": "workspace:^0.0.0",
19
+ "@newview/infrastructure": "workspace:^0.0.0",
20
+ "@newview/tools": "workspace:^0.0.0",
21
+ "@newview/ui": "workspace:^0.0.0",
22
+ "sass": "1.65.1",
23
+ "view-ui-plus": "1.3.14",
24
+ "vue": "3.2.45",
25
+ "vue-router": "4.1.6"
26
+ },
27
+ "devDependencies": {
28
+ "@types/file-saver": "2.0.5",
29
+ "@types/node": "^20.5.0",
30
+ "@vitejs/plugin-vue": "4.2.3",
31
+ "file-saver": "2.0.5",
32
+ "npm-run-all": "4.1.5",
33
+ "terser": "5.19.2",
34
+ "typescript": "4.9.5",
35
+ "vite": "4.4.9",
36
+ "vue-tsc": "1.0.11"
37
+ }
38
+ }
@@ -0,0 +1,59 @@
1
+ {
2
+ "name": "@newview/file-ui",
3
+ "version": "1.1.9",
4
+ "author": "newview",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "main": "./dist/file-ui.umd.cjs",
8
+ "module": "./dist/file-ui.js",
9
+ "typings": "types/index.d.ts",
10
+ "files": [
11
+ "dist",
12
+ "types",
13
+ "package.json",
14
+ "tsconfig.json",
15
+ "tsconfig.node.json",
16
+ "vite.config.ts",
17
+ "README.md"
18
+ ],
19
+ "exports": {
20
+ "./dist/style.css": "./dist/style.css",
21
+ "./css": "./dist/style.css",
22
+ ".": {
23
+ "import": "./dist/file-ui.js",
24
+ "require": "./dist/file-ui.umd.cjs"
25
+ }
26
+ },
27
+ "scripts": {
28
+ "dev": "vite",
29
+ "build": "run-p type-check build-only",
30
+ "preview": "vite preview",
31
+ "build-only": "vite build --watch",
32
+ "type-check": "vue-tsc --noEmit",
33
+ "p": "npm publish --access public"
34
+ },
35
+ "keywords": [],
36
+ "dependencies": {
37
+ "@newview/base-vue": "^1.0.0",
38
+ "@newview/fileservice-api": "^1.0.0",
39
+ "@newview/infrastructure": "^1.0.0",
40
+ "@newview/tools": "^1.0.0",
41
+ "@newview/ui": "^1.0.0",
42
+ "sass": "1.65.1",
43
+ "view-ui-plus": "1.3.14",
44
+ "vue": "3.3.4",
45
+ "vue-router": "4.2.4",
46
+ "@vueup/vue-quill": "1.2.0"
47
+ },
48
+ "devDependencies": {
49
+ "@types/file-saver": "2.0.5",
50
+ "@types/node": "^20.5.0",
51
+ "@vitejs/plugin-vue": "4.2.3",
52
+ "file-saver": "2.0.5",
53
+ "npm-run-all": "4.1.5",
54
+ "terser": "5.19.2",
55
+ "typescript": "4.9.5",
56
+ "vite": "4.4.9",
57
+ "vue-tsc": "1.0.11"
58
+ }
59
+ }
package/package.json ADDED
@@ -0,0 +1,39 @@
1
+ {
2
+ "name": "@newview/file-ui",
3
+ "version": "0.0.0",
4
+ "description": "",
5
+ "main": "src/index.ts",
6
+ "module": "src/index.ts",
7
+ "scripts": {
8
+ "dev": "vite",
9
+ "build": "run-p type-check build-only",
10
+ "preview": "vite preview",
11
+ "build-only": "vite build --watch",
12
+ "type-check": "vue-tsc --noEmit",
13
+ "p": "npm publish --access public"
14
+ },
15
+ "keywords": [],
16
+ "dependencies": {
17
+ "@newview/base-vue": "workspace:^0.0.0",
18
+ "@newview/fileservice-api": "workspace:^0.0.0",
19
+ "@newview/infrastructure": "workspace:^0.0.0",
20
+ "@newview/tools": "workspace:^0.0.0",
21
+ "@newview/ui": "workspace:^0.0.0",
22
+ "sass": "1.65.1",
23
+ "view-ui-plus": "1.3.14",
24
+ "vue": "3.2.45",
25
+ "vue-router": "4.1.6",
26
+ "@vueup/vue-quill": "1.2.0"
27
+ },
28
+ "devDependencies": {
29
+ "@types/file-saver": "2.0.5",
30
+ "@types/node": "^20.5.0",
31
+ "@vitejs/plugin-vue": "4.2.3",
32
+ "file-saver": "2.0.5",
33
+ "npm-run-all": "4.1.5",
34
+ "terser": "5.19.2",
35
+ "typescript": "4.9.5",
36
+ "vite": "4.4.9",
37
+ "vue-tsc": "1.0.11"
38
+ }
39
+ }
@@ -0,0 +1,131 @@
1
+ /**
2
+ * 功能名称:必填
3
+ * 创 建 人:弋强
4
+ * 日 期:2022/12/29 15:44:34
5
+ */
6
+ import { BaseInstance } from "@newview/base-vue";
7
+ import { ComFormItem } from "@newview/ui";
8
+ import { defineComponent, ref, reactive, onMounted, onUnmounted, Ref, PropType, nextTick, watch, ExtractPropTypes, SetupContext } from 'vue'
9
+ import { UploadFile } from "../UploadFile";
10
+ import { TextEditor } from "../TextEditor";
11
+
12
+ // 一、Emits 类型定义
13
+ // type EmitsType = ('clearRadioRow' | 'change' | 'delete' | 'addchild')[];
14
+ type EmitsType = ('textChange' | 'TokenChange')[];
15
+
16
+
17
+ // 二、Props 定义
18
+ const propDefine = {
19
+ onlyView: {
20
+ // 是否只读
21
+ type: Boolean as PropType<boolean>,
22
+ default: false
23
+ },
24
+ formItems: {
25
+ // 表单项
26
+ type: Array as PropType<Array<ComFormItem>>,
27
+ default: () => []
28
+ },
29
+ formModel: {
30
+ // 表单数据
31
+ type: Object as PropType<any>,
32
+ default: () => { }
33
+ }
34
+ };
35
+
36
+
37
+ // 三、组件信息定义
38
+ export default defineComponent({
39
+ name: 'NvComFormUp',
40
+ components: { UploadFile, TextEditor },
41
+ emits: ['textChange','TokenChange'],
42
+ props: propDefine,
43
+ setup(props, ctx) {
44
+ return new ComFormInstance(props, ctx);
45
+ }
46
+ })
47
+
48
+
49
+ // 四、组件实例, 具体业务
50
+ export class ComFormInstance extends BaseInstance {
51
+ private props: ExtractPropTypes<typeof propDefine>;
52
+ private ctx: SetupContext<EmitsType>;
53
+ // API实例化
54
+
55
+ // 全局属性
56
+
57
+ constructor(props: ExtractPropTypes<typeof propDefine>, ctx: SetupContext<EmitsType>) {
58
+ super();
59
+ this.props = props;
60
+ this.ctx = ctx;
61
+
62
+ }
63
+
64
+ //#region 文本输入框
65
+
66
+ // 私有属性 | private
67
+
68
+
69
+ // 响应属性 | ref、reactive、computed、watch
70
+ textEditorRef = ref()
71
+
72
+
73
+ // 私有方法 | private 方法名() {}
74
+
75
+
76
+ // 响应式方法 | xxx = () => {}
77
+ /**
78
+ * @description 保存文本数据
79
+ */
80
+ saveTextData = async () => {
81
+ this.textEditorRef.value.saveTextData()
82
+ }
83
+ /**
84
+ * 清空长文本
85
+ */
86
+ clearTextData = async () => {
87
+ this.textEditorRef.value.clearTextData()
88
+ }
89
+ /**删除长文本 */
90
+ deleteTextData = async () => {
91
+ this.textEditorRef.value.deleteTextData()
92
+ }
93
+ /**
94
+ * 删除长文本
95
+ * @param Token
96
+ */
97
+ deleteTextDataByToken = async (Token) => {
98
+ this.textEditorRef.value.deleteTextDataByToken(Token)
99
+ }
100
+ /**
101
+ * 获取长文本
102
+ */
103
+ getText = () => {
104
+ return this.textEditorRef.value.getText()
105
+
106
+ }
107
+ /**
108
+ * 附件校验
109
+ * @param Token
110
+ */
111
+ tokenList=(data,item)=>{
112
+ this.ctx.emit('TokenChange', data)
113
+ if(data.list.length>0){
114
+ this.props.formModel[item.model] = data.token
115
+ }else{
116
+ this.props.formModel[item.model] = ''
117
+ }
118
+ }
119
+ /**
120
+ * 文本改变
121
+ * @param data
122
+ */
123
+ textChange = (data: string) => {
124
+ this.ctx.emit('textChange', data)
125
+ }
126
+
127
+ //#endregion 文本输入框 END
128
+
129
+
130
+
131
+ }
@@ -0,0 +1,27 @@
1
+ <!--
2
+ 功能名称:必填
3
+ 创 建 人:弋强
4
+ 日 期:2022/12/29 15:32:25
5
+ -->
6
+ <template>
7
+ <NvComForm :onlyView="onlyView" :formItems="formItems" :formModel="formModel">
8
+ <template v-slot:extend="{ item }">
9
+ <!-- UploadFile -->
10
+ <UploadFile v-if="item.type === 'UploadFile'" :readonly="onlyView" @returnFileList='tokenList($event,item)' :token="formModel[item.model]">
11
+ </UploadFile>
12
+ <!-- UploadFile End -->
13
+ <!-- TextEditor -->
14
+ <TextEditor v-if="item.type === 'TextEditor'" ref="textEditorRef" :readonly="onlyView"
15
+ :style="{ height: `${item.textHeight == undefined ? '300' : item.textHeight}px` }"
16
+ :token="formModel[item.model]"
17
+ :border="item.textBorder"
18
+ @textChange="textChange">
19
+ </TextEditor>
20
+ <!-- TextEditor End -->
21
+ </template>
22
+ </NvComForm>
23
+ </template>
24
+
25
+ <script lang="ts" src="./ComFormUp.ts"></script>
26
+
27
+ <style scoped lang="scss"></style>
@@ -0,0 +1,2 @@
1
+ import NvComFormUp from "./ComFormUp.vue"
2
+ export { NvComFormUp };
@@ -0,0 +1,207 @@
1
+ /*
2
+ * 功能名称: 功能描述
3
+ * 创 建 人: 程天乐
4
+ * 日 期: 2023-12-19 08:53:10
5
+ */
6
+ import { BaseInstance } from '@newview/base-vue';
7
+ import { defineComponent, ref, reactive, computed, onMounted, onUnmounted, Ref, PropType, nextTick, watch, ExtractPropTypes, SetupContext, watchEffect, renderSlot, defineExpose } from 'vue'
8
+ import { QuillEditor } from "@vueup/vue-quill"
9
+ import '@vueup/vue-quill/dist/vue-quill.snow.css';
10
+ import '@vueup/vue-quill/dist/vue-quill.bubble.css';
11
+ import { FileApi, UploadApi } from '@newview/fileservice-api';
12
+ // 一、Emits 类型定义
13
+ // type EmitsType = ('clearRadioRow' | 'change' | 'delete' | 'addchild')[];
14
+ type EmitsType = ('update:modelValue' | 'textChange')[];
15
+
16
+
17
+ // 二、Props 定义
18
+ const propDefine = {
19
+ modelValue: {
20
+ default: '',
21
+ type: String,
22
+ },
23
+ token: {
24
+ default: '',
25
+ type: String,
26
+ },
27
+ readonly: {
28
+ type: Boolean,
29
+ default: false
30
+ },
31
+ border: {
32
+ type: Boolean,
33
+ default: true
34
+ }
35
+ };
36
+
37
+
38
+ // 三、组件信息定义
39
+ export default defineComponent({
40
+ name: 'TextEditor',
41
+ components: {
42
+ QuillEditor
43
+ },
44
+ emits: ['update:modelValue', 'textChange'], // 例如: ['clearRadioRow', 'change', 'delete', 'addchild']
45
+ props: propDefine,
46
+ setup(props, ctx) {
47
+ return new TextEditor(props, ctx);
48
+ }
49
+ })
50
+
51
+
52
+ // 四、组件实例, 具体业务
53
+ export class TextEditor extends BaseInstance {
54
+ private props: ExtractPropTypes<typeof propDefine>;
55
+ private ctx: SetupContext<EmitsType>;
56
+
57
+ // API实例化
58
+ private fileApi = new FileApi();
59
+ private uploadApi = new UploadApi();
60
+
61
+ // 全局属性
62
+ /**机构数据 */
63
+ private business = this.storageInfo.getCurrentInsTree()
64
+
65
+ constructor(props: ExtractPropTypes<typeof propDefine>, ctx: SetupContext<EmitsType>) {
66
+ super()
67
+ this.props = props;
68
+ this.ctx = ctx;
69
+ this.init()
70
+ }
71
+
72
+ // 组件Id
73
+
74
+
75
+ init() {
76
+
77
+ onMounted(() => {
78
+ this.loadTextData()
79
+
80
+ watchEffect(() => {
81
+ this.componentShow.value = false
82
+ if (this.props.readonly) {
83
+ this.theme.value = 'bubble'
84
+ } else {
85
+ this.theme.value = 'snow'
86
+ }
87
+ nextTick(() => {
88
+ this.componentShow.value = true
89
+
90
+ })
91
+ })
92
+
93
+
94
+ })
95
+ }
96
+
97
+
98
+ //#region 业务逻辑
99
+
100
+ // 私有属性 | private
101
+ /**
102
+ * 加载长文本
103
+ */
104
+ private async loadTextData() {
105
+ if (!this.utilities.isNull(this.props.token)) {
106
+ const res = this.utilities.parseApiResult(await this.fileApi.readText(this.props.token))
107
+ if (res) {
108
+ this.content.value = JSON.parse(res)
109
+ }
110
+ }
111
+
112
+
113
+ }
114
+ componentShow = ref(false)
115
+
116
+ content = ref('')
117
+
118
+ // 响应属性 | ref、reactive、computed、watch
119
+ theme = ref('snow')
120
+ QuillEditorRef = ref()
121
+ options = reactive({
122
+ modules: {
123
+ toolbar: {
124
+ container: [
125
+ ['bold', 'italic', 'underline', 'strike'],
126
+ ['blockquote', 'code-block'],
127
+ [{ 'size': ['small', false, 'large', 'huge'] }],
128
+ [{ 'font': [] }],
129
+ [{ 'align': [] }],
130
+ [{ 'list': 'ordered' }, { 'list': 'bullet' }],
131
+ [{ 'indent': '-1' }, { 'indent': '+1' }],
132
+ [{ 'header': 1 }, { 'header': 2 }],
133
+ ['image'],
134
+ [{ 'color': [] }],
135
+ [{ 'background': [] }]
136
+ ]
137
+ }
138
+ },
139
+ })
140
+
141
+
142
+ // 私有方法 | private 方法名() {}
143
+
144
+
145
+ // 响应式方法 | xxx = () => {}
146
+ /**
147
+ * 监听长文本变化
148
+ */
149
+ textChange = () => {
150
+ this.ctx.emit('update:modelValue', this.content.value)
151
+ this.ctx.emit('textChange', this.content.value)
152
+ }
153
+ /**
154
+ * 获取长文本
155
+ * @returns
156
+ */
157
+ getText = () => {
158
+ return this.QuillEditorRef.value.getHTML()
159
+ }
160
+
161
+
162
+ /**
163
+ * 保存长文本
164
+ */
165
+ saveTextData = async () => {
166
+ let content = JSON.stringify(this.content.value)
167
+ const uploadFilePo = this.uploadApi.getBaseFilePo(this.props.token, 'content', '默认',);
168
+ await this.uploadApi.writeFile(this.props.token + '', "json", content, uploadFilePo)
169
+ }
170
+
171
+ /**删除长文本 */
172
+ deleteTextData = async () => {
173
+ await this.fileApi.deleteByToken(this.props.token)
174
+ }
175
+
176
+ /**
177
+ * 删除长文本
178
+ * @param Token
179
+ */
180
+ deleteTextDataByToken = async (Token) => {
181
+ await this.fileApi.deleteByToken(Token)
182
+ }
183
+
184
+ /**
185
+ * 清空长文本
186
+ */
187
+ clearTextData = async () => {
188
+ this.content.value = ''
189
+ this.QuillEditorRef.value.setHTML('')
190
+ }
191
+
192
+
193
+ //#endregion 业务逻辑 END
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+
205
+
206
+
207
+ }
@@ -0,0 +1,23 @@
1
+ <!--
2
+ * 功能名称: 功能描述
3
+ * 创 建 人: 程天乐
4
+ * 日 期: 2023-12-19 10:11:56
5
+ -->
6
+ <template>
7
+ <div style="height: 100%;" :class="{'text-edit-border':border && readonly}">
8
+ <QuillEditor v-if="componentShow" v-model:content="content" :readOnly="readonly" :theme="theme"
9
+ @textChange="textChange" contentType="html" ref="QuillEditorRef" :options="options" />
10
+ </div>
11
+ </template>
12
+
13
+ <script lang='ts' src='./TextEditor.ts'></script>
14
+
15
+ <style scoped lang='scss'>
16
+ ::v-deep .ql-snow.ql-container {
17
+ height: calc(100% - 46px);
18
+ }
19
+
20
+ .text-edit-border{
21
+ border: 1px solid #e3e5e8;
22
+ }
23
+ </style>
@@ -0,0 +1,2 @@
1
+ import TextEditor from "./TextEditor.vue"
2
+ export { TextEditor };