@vtx/components 3.1.25 → 3.1.26
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/lib/_util/filterSpecialCharacters.js +54 -43
- package/lib/_util/filterSpecialCharacters.js.map +1 -1
- package/lib/_util/getComponentProps.js +0 -3
- package/lib/_util/getComponentProps.js.map +1 -1
- package/lib/_util/getUrlParam.js +0 -6
- package/lib/_util/getUrlParam.js.map +1 -1
- package/lib/_util/isFunction.js +0 -1
- package/lib/_util/isFunction.js.map +1 -1
- package/lib/_util/isObject.js +0 -1
- package/lib/_util/isObject.js.map +1 -1
- package/lib/_util/useColSize.js +1 -10
- package/lib/_util/useColSize.js.map +1 -1
- package/lib/_util/useInterval.js +0 -3
- package/lib/_util/useInterval.js.map +1 -1
- package/lib/_util/useSet.js +14 -32
- package/lib/_util/useSet.js.map +1 -1
- package/lib/config.js.map +1 -1
- package/lib/index.js +0 -26
- package/lib/index.js.map +1 -1
- package/lib/vtx-color-picker/index.js +5 -21
- package/lib/vtx-color-picker/index.js.map +1 -1
- package/lib/vtx-color-picker/style/css.js +0 -2
- package/lib/vtx-color-picker/style/css.js.map +1 -1
- package/lib/vtx-color-picker/style/index.js +0 -2
- package/lib/vtx-color-picker/style/index.js.map +1 -1
- package/lib/vtx-combogrid/Combogrid.js +34 -74
- package/lib/vtx-combogrid/Combogrid.js.map +1 -1
- package/lib/vtx-combogrid/index.js +20 -45
- package/lib/vtx-combogrid/index.js.map +1 -1
- package/lib/vtx-combogrid/style/css.js +0 -7
- package/lib/vtx-combogrid/style/css.js.map +1 -1
- package/lib/vtx-combogrid/style/index.js +0 -7
- package/lib/vtx-combogrid/style/index.js.map +1 -1
- package/lib/vtx-datagrid/Alert.js +3 -11
- package/lib/vtx-datagrid/Alert.js.map +1 -1
- package/lib/vtx-datagrid/ColumnSetting.js +19 -44
- package/lib/vtx-datagrid/ColumnSetting.js.map +1 -1
- package/lib/vtx-datagrid/ResizeableTitle.js +2 -13
- package/lib/vtx-datagrid/ResizeableTitle.js.map +1 -1
- package/lib/vtx-datagrid/index.js +77 -142
- package/lib/vtx-datagrid/index.js.map +1 -1
- package/lib/vtx-datagrid/renderColumnButtons.js +5 -35
- package/lib/vtx-datagrid/renderColumnButtons.js.map +1 -1
- package/lib/vtx-datagrid/style/css.js +0 -10
- package/lib/vtx-datagrid/style/css.js.map +1 -1
- package/lib/vtx-datagrid/style/index.js +0 -10
- package/lib/vtx-datagrid/style/index.js.map +1 -1
- package/lib/vtx-date-picker/QdatePicker.js +16 -46
- package/lib/vtx-date-picker/QdatePicker.js.map +1 -1
- package/lib/vtx-date-picker/generatePicker.js +6 -47
- package/lib/vtx-date-picker/generatePicker.js.map +1 -1
- package/lib/vtx-date-picker/index.js +0 -5
- package/lib/vtx-date-picker/index.js.map +1 -1
- package/lib/vtx-date-picker/style/css.js +0 -1
- package/lib/vtx-date-picker/style/css.js.map +1 -1
- package/lib/vtx-date-picker/style/index.js +0 -1
- package/lib/vtx-date-picker/style/index.js.map +1 -1
- package/lib/vtx-editor/index.js +5 -23
- package/lib/vtx-editor/index.js.map +1 -1
- package/lib/vtx-editor/style/css.js +0 -1
- package/lib/vtx-editor/style/css.js.map +1 -1
- package/lib/vtx-editor/style/index.js +0 -1
- package/lib/vtx-editor/style/index.js.map +1 -1
- package/lib/vtx-ellipsis-text/index.js +6 -20
- package/lib/vtx-ellipsis-text/index.js.map +1 -1
- package/lib/vtx-ellipsis-text/style/css.js +0 -1
- package/lib/vtx-ellipsis-text/style/css.js.map +1 -1
- package/lib/vtx-ellipsis-text/style/index.js +0 -1
- package/lib/vtx-ellipsis-text/style/index.js.map +1 -1
- package/lib/vtx-export/index.js +25 -58
- package/lib/vtx-export/index.js.map +1 -1
- package/lib/vtx-export/style/css.js +0 -5
- package/lib/vtx-export/style/css.js.map +1 -1
- package/lib/vtx-export/style/index.js +0 -5
- package/lib/vtx-export/style/index.js.map +1 -1
- package/lib/vtx-form-layout/Card.js +5 -26
- package/lib/vtx-form-layout/Card.js.map +1 -1
- package/lib/vtx-form-layout/Divider.js +0 -8
- package/lib/vtx-form-layout/Divider.js.map +1 -1
- package/lib/vtx-form-layout/FormItem.js +8 -30
- package/lib/vtx-form-layout/FormItem.js.map +1 -1
- package/lib/vtx-form-layout/Pane.js +2 -7
- package/lib/vtx-form-layout/Pane.js.map +1 -1
- package/lib/vtx-form-layout/Row.js +0 -6
- package/lib/vtx-form-layout/Row.js.map +1 -1
- package/lib/vtx-form-layout/context.js +0 -2
- package/lib/vtx-form-layout/context.js.map +1 -1
- package/lib/vtx-form-layout/index.js +8 -22
- package/lib/vtx-form-layout/index.js.map +1 -1
- package/lib/vtx-form-layout/style/css.js +0 -7
- package/lib/vtx-form-layout/style/css.js.map +1 -1
- package/lib/vtx-form-layout/style/index.js +0 -7
- package/lib/vtx-form-layout/style/index.js.map +1 -1
- package/lib/vtx-image/Image.js +56 -92
- package/lib/vtx-image/Image.js.map +1 -1
- package/lib/vtx-image/Preview.js +20 -51
- package/lib/vtx-image/Preview.js.map +1 -1
- package/lib/vtx-image/PreviewGroup.js +11 -40
- package/lib/vtx-image/PreviewGroup.js.map +1 -1
- package/lib/vtx-image/index.js +0 -6
- package/lib/vtx-image/index.js.map +1 -1
- package/lib/vtx-image/style/css.js +0 -1
- package/lib/vtx-image/style/css.js.map +1 -1
- package/lib/vtx-image/style/index.js +0 -1
- package/lib/vtx-image/style/index.js.map +1 -1
- package/lib/vtx-import/index.js +37 -72
- package/lib/vtx-import/index.js.map +1 -1
- package/lib/vtx-import/result.js +7 -24
- package/lib/vtx-import/result.js.map +1 -1
- package/lib/vtx-import/style/css.js +0 -3
- package/lib/vtx-import/style/css.js.map +1 -1
- package/lib/vtx-import/style/index.js +0 -3
- package/lib/vtx-import/style/index.js.map +1 -1
- package/lib/vtx-import2/CheckResult.js +0 -6
- package/lib/vtx-import2/CheckResult.js.map +1 -1
- package/lib/vtx-import2/Content.js +4 -25
- package/lib/vtx-import2/Content.js.map +1 -1
- package/lib/vtx-import2/DownloadSvg.js +0 -4
- package/lib/vtx-import2/DownloadSvg.js.map +1 -1
- package/lib/vtx-import2/ImportResult.js +5 -11
- package/lib/vtx-import2/ImportResult.js.map +1 -1
- package/lib/vtx-import2/UploadSvg.js +0 -4
- package/lib/vtx-import2/UploadSvg.js.map +1 -1
- package/lib/vtx-import2/index.js +38 -92
- package/lib/vtx-import2/index.js.map +1 -1
- package/lib/vtx-import2/style/css.js +0 -3
- package/lib/vtx-import2/style/css.js.map +1 -1
- package/lib/vtx-import2/style/index.js +0 -3
- package/lib/vtx-import2/style/index.js.map +1 -1
- package/lib/vtx-input/TextArea.js +6 -22
- package/lib/vtx-input/TextArea.js.map +1 -1
- package/lib/vtx-input/index.js +11 -37
- package/lib/vtx-input/index.js.map +1 -1
- package/lib/vtx-input/style/css.js +0 -1
- package/lib/vtx-input/style/css.js.map +1 -1
- package/lib/vtx-input/style/index.js +0 -1
- package/lib/vtx-input/style/index.js.map +1 -1
- package/lib/vtx-input/useLength.js +4 -16
- package/lib/vtx-input/useLength.js.map +1 -1
- package/lib/vtx-modal/Title.js +1 -6
- package/lib/vtx-modal/Title.js.map +1 -1
- package/lib/vtx-modal/index.js +30 -70
- package/lib/vtx-modal/index.js.map +1 -1
- package/lib/vtx-modal/style/css.js +0 -1
- package/lib/vtx-modal/style/css.js.map +1 -1
- package/lib/vtx-modal/style/index.js +0 -1
- package/lib/vtx-modal/style/index.js.map +1 -1
- package/lib/vtx-page-layout/Basic.js +2 -6
- package/lib/vtx-page-layout/Basic.js.map +1 -1
- package/lib/vtx-page-layout/Content.js +7 -19
- package/lib/vtx-page-layout/Content.js.map +1 -1
- package/lib/vtx-page-layout/Pane.js +2 -10
- package/lib/vtx-page-layout/Pane.js.map +1 -1
- package/lib/vtx-page-layout/TableLayout.js +17 -47
- package/lib/vtx-page-layout/TableLayout.js.map +1 -1
- package/lib/vtx-page-layout/TableWrap.js +3 -15
- package/lib/vtx-page-layout/TableWrap.js.map +1 -1
- package/lib/vtx-page-layout/container.js +4 -34
- package/lib/vtx-page-layout/container.js.map +1 -1
- package/lib/vtx-page-layout/index.js +0 -8
- package/lib/vtx-page-layout/index.js.map +1 -1
- package/lib/vtx-rps-frame/index.js +27 -45
- package/lib/vtx-rps-frame/index.js.map +1 -1
- package/lib/vtx-scrollable-row/index.js +19 -57
- package/lib/vtx-scrollable-row/index.js.map +1 -1
- package/lib/vtx-search/VtxCol.js +0 -21
- package/lib/vtx-search/VtxCol.js.map +1 -1
- package/lib/vtx-search/VtxRow.js +6 -12
- package/lib/vtx-search/VtxRow.js.map +1 -1
- package/lib/vtx-search/index.js +40 -93
- package/lib/vtx-search/index.js.map +1 -1
- package/lib/vtx-search/style/css.js +0 -4
- package/lib/vtx-search/style/css.js.map +1 -1
- package/lib/vtx-search/style/index.js +0 -4
- package/lib/vtx-search/style/index.js.map +1 -1
- package/lib/vtx-search-map-input/index.js +42 -73
- package/lib/vtx-search-map-input/index.js.map +1 -1
- package/lib/vtx-search-map-input/style/css.js +0 -2
- package/lib/vtx-search-map-input/style/css.js.map +1 -1
- package/lib/vtx-search-map-input/style/index.js +0 -2
- package/lib/vtx-search-map-input/style/index.js.map +1 -1
- package/lib/vtx-select/index.js +20 -65
- package/lib/vtx-select/index.js.map +1 -1
- package/lib/vtx-select/style/css.js +0 -8
- package/lib/vtx-select/style/css.js.map +1 -1
- package/lib/vtx-select/style/index.js +0 -8
- package/lib/vtx-select/style/index.js.map +1 -1
- package/lib/vtx-signature/index.js +14 -28
- package/lib/vtx-signature/index.js.map +1 -1
- package/lib/vtx-signature/style/css.js +0 -2
- package/lib/vtx-signature/style/css.js.map +1 -1
- package/lib/vtx-signature/style/index.js +0 -2
- package/lib/vtx-signature/style/index.js.map +1 -1
- package/lib/vtx-split-pane/Pane.js +2 -14
- package/lib/vtx-split-pane/Pane.js.map +1 -1
- package/lib/vtx-split-pane/Resizer.js +9 -29
- package/lib/vtx-split-pane/Resizer.js.map +1 -1
- package/lib/vtx-split-pane/SplitPane.js +39 -94
- package/lib/vtx-split-pane/SplitPane.js.map +1 -1
- package/lib/vtx-split-pane/index.js +0 -4
- package/lib/vtx-split-pane/index.js.map +1 -1
- package/lib/vtx-split-pane/style/css.js +0 -3
- package/lib/vtx-split-pane/style/css.js.map +1 -1
- package/lib/vtx-split-pane/style/index.js +0 -3
- package/lib/vtx-split-pane/style/index.js.map +1 -1
- package/lib/vtx-statistics-column/Back.js +1 -7
- package/lib/vtx-statistics-column/Back.js.map +1 -1
- package/lib/vtx-statistics-column/Item.js +5 -22
- package/lib/vtx-statistics-column/Item.js.map +1 -1
- package/lib/vtx-statistics-column/Total.js +5 -22
- package/lib/vtx-statistics-column/Total.js.map +1 -1
- package/lib/vtx-statistics-column/context.js +0 -2
- package/lib/vtx-statistics-column/context.js.map +1 -1
- package/lib/vtx-statistics-column/index.js +0 -16
- package/lib/vtx-statistics-column/index.js.map +1 -1
- package/lib/vtx-time-picker/index.js +3 -16
- package/lib/vtx-time-picker/index.js.map +1 -1
- package/lib/vtx-upload/FilePreview.js +9 -28
- package/lib/vtx-upload/FilePreview.js.map +1 -1
- package/lib/vtx-upload/index.js +67 -137
- package/lib/vtx-upload/index.js.map +1 -1
- package/lib/vtx-upload/style/css.js +0 -5
- package/lib/vtx-upload/style/css.js.map +1 -1
- package/lib/vtx-upload/style/index.js +0 -5
- package/lib/vtx-upload/style/index.js.map +1 -1
- package/lib/vtx-wang-editor/index.js +27 -66
- package/lib/vtx-wang-editor/index.js.map +1 -1
- package/lib/vtx-wang-editor/style/css.js +0 -1
- package/lib/vtx-wang-editor/style/css.js.map +1 -1
- package/lib/vtx-wang-editor/style/index.js +0 -1
- package/lib/vtx-wang-editor/style/index.js.map +1 -1
- package/lib/vtx-wang-editor/wangEditorUtil.js +30 -88
- package/lib/vtx-wang-editor/wangEditorUtil.js.map +1 -1
- package/lib/vtx-ztree/index.js +49 -101
- package/lib/vtx-ztree/index.js.map +1 -1
- package/lib/vtx-ztree/style/css.js +0 -1
- package/lib/vtx-ztree/style/css.js.map +1 -1
- package/lib/vtx-ztree/style/index.js +0 -1
- package/lib/vtx-ztree/style/index.js.map +1 -1
- package/lib/vtx-ztree-select/index.js +43 -99
- package/lib/vtx-ztree-select/index.js.map +1 -1
- package/lib/vtx-ztree-select/style/css.js +0 -3
- package/lib/vtx-ztree-select/style/css.js.map +1 -1
- package/lib/vtx-ztree-select/style/index.js +0 -3
- package/lib/vtx-ztree-select/style/index.js.map +1 -1
- package/package.json +126 -126
- package/CHANGELOG.md +0 -1248
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
@@ -10,40 +9,27 @@ exports.findAllImgSrcsFromHtml = findAllImgSrcsFromHtml;
|
|
|
10
9
|
exports.replaceAllSpanFontSize = replaceAllSpanFontSize;
|
|
11
10
|
exports.replaceImagesFileSourceWithInlineRepresentation = replaceImagesFileSourceWithInlineRepresentation;
|
|
12
11
|
exports.withEmptyHtml = withEmptyHtml;
|
|
13
|
-
|
|
14
12
|
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
|
|
15
|
-
|
|
16
13
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
17
|
-
|
|
18
14
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
19
|
-
|
|
20
15
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
21
|
-
|
|
22
16
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
23
|
-
|
|
24
17
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
25
|
-
|
|
26
18
|
function replaceAllSpanFontSize(htmlData) {
|
|
27
19
|
var spanReg = /\<span([\s\S]+?)\<\/span\>/g;
|
|
28
20
|
var fontReg = /\<font([\s\S]+?)\<\/font\>/g;
|
|
29
21
|
var fontSizeReg = /font-size:([\s\S]+?)\;/g;
|
|
30
22
|
var spanArr = htmlData.match(spanReg); // 筛选出所有的span
|
|
31
|
-
|
|
32
23
|
if (!spanArr || Array.isArray(spanArr) && !spanArr.length) {
|
|
33
24
|
return false;
|
|
34
25
|
}
|
|
35
|
-
|
|
36
26
|
var fontSizeReplaceList = {};
|
|
37
|
-
|
|
38
27
|
for (var i = 0; i < spanArr.length; i++) {
|
|
39
28
|
var fontArr = spanArr[i].match(fontReg);
|
|
40
|
-
|
|
41
29
|
if ((fontArr === null || fontArr === void 0 ? void 0 : fontArr.length) > 0) {
|
|
42
30
|
var fontSize = spanArr[i].match(fontSizeReg);
|
|
43
|
-
|
|
44
31
|
if ((fontSize === null || fontSize === void 0 ? void 0 : fontSize.length) > 0) {
|
|
45
32
|
var ptValue = fontSize[0].split(':')[1].replace(';', '');
|
|
46
|
-
|
|
47
33
|
if (ptValue.indexOf('pt') > -1) {
|
|
48
34
|
var value = toFontSize(parseInt(Number(ptValue.replace('pt', '')) / 0.75));
|
|
49
35
|
fontSizeReplaceList[fontSize[0]] = "font-size:".concat(value, "px;");
|
|
@@ -51,31 +37,24 @@ function replaceAllSpanFontSize(htmlData) {
|
|
|
51
37
|
}
|
|
52
38
|
}
|
|
53
39
|
}
|
|
54
|
-
|
|
55
40
|
for (var _i in fontSizeReplaceList) {
|
|
56
41
|
htmlData = htmlData.replaceAll(_i, fontSizeReplaceList[_i]);
|
|
57
42
|
}
|
|
58
|
-
|
|
59
43
|
return htmlData;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
|
|
44
|
+
}
|
|
45
|
+
// 判断字体在这个范围之内,不在这个范围之内 则不显示字体大小
|
|
63
46
|
function toFontSize(size) {
|
|
64
47
|
var result = size;
|
|
65
48
|
var sizeArr = [12, 13, 14, 15, 16, 19, 22, 24, 29, 32, 40, 48];
|
|
66
|
-
|
|
67
49
|
if (sizeArr.includes(size)) {
|
|
68
50
|
return result;
|
|
69
51
|
}
|
|
70
|
-
|
|
71
52
|
if (size < sizeArr[0]) {
|
|
72
53
|
return sizeArr[0];
|
|
73
54
|
}
|
|
74
|
-
|
|
75
55
|
if (size > sizeArr[sizeArr.length - 1]) {
|
|
76
56
|
return sizeArr[sizeArr.length - 1];
|
|
77
57
|
}
|
|
78
|
-
|
|
79
58
|
for (var i = 1; i < sizeArr.length; i++) {
|
|
80
59
|
if (size >= sizeArr[i - 1] && size <= sizeArr[i]) {
|
|
81
60
|
if (size - sizeArr[i - 1] < sizeArr[i] - size) {
|
|
@@ -83,36 +62,27 @@ function toFontSize(size) {
|
|
|
83
62
|
} else {
|
|
84
63
|
result = sizeArr[i];
|
|
85
64
|
}
|
|
86
|
-
|
|
87
65
|
break;
|
|
88
66
|
}
|
|
89
67
|
}
|
|
90
|
-
|
|
91
68
|
return result;
|
|
92
69
|
}
|
|
93
|
-
|
|
94
70
|
function findAllImgSrcsFromHtml(htmlData) {
|
|
95
71
|
var imgReg = /<img.*?(?:>|\/>)/gi; //匹配图片中的img标签
|
|
96
|
-
|
|
97
72
|
var srcReg = /src=[\'\"]?([^\'\"]*)[\'\"]?/i; // 匹配图片中的src
|
|
98
|
-
|
|
99
73
|
var widthReg = /width=[\'\"]?([^\'\"]*)[\'\"]?/i; // 匹配图片中的width
|
|
100
|
-
|
|
101
74
|
var heightReg = /height=[\'\"]?([^\'\"]*)[\'\"]?/i; // 匹配图片中的height
|
|
102
75
|
|
|
103
76
|
var arr = htmlData.match(imgReg); //筛选出所有的img
|
|
104
|
-
|
|
105
77
|
if (!arr || Array.isArray(arr) && !arr.length) {
|
|
106
78
|
return false;
|
|
107
79
|
}
|
|
108
|
-
|
|
109
80
|
var srcArr = [];
|
|
110
|
-
|
|
111
81
|
for (var i = 0; i < arr.length; i++) {
|
|
112
82
|
var src = arr[i].match(srcReg);
|
|
113
83
|
var width = arr[i].match(widthReg);
|
|
114
|
-
var height = arr[i].match(heightReg);
|
|
115
|
-
|
|
84
|
+
var height = arr[i].match(heightReg);
|
|
85
|
+
// 获取图片地址
|
|
116
86
|
srcArr.push({
|
|
117
87
|
width: width[1],
|
|
118
88
|
height: height[1],
|
|
@@ -120,51 +90,40 @@ function findAllImgSrcsFromHtml(htmlData) {
|
|
|
120
90
|
img: arr[i]
|
|
121
91
|
});
|
|
122
92
|
}
|
|
123
|
-
|
|
124
93
|
return srcArr;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
|
|
94
|
+
}
|
|
95
|
+
// 处理为空的时候
|
|
128
96
|
function withEmptyHtml(editor) {
|
|
129
97
|
var getHtml = editor.getHtml;
|
|
130
98
|
var newEditor = editor;
|
|
131
|
-
|
|
132
99
|
newEditor.getHtml = function () {
|
|
133
100
|
if (newEditor.isEmpty()) {
|
|
134
101
|
return '';
|
|
135
102
|
}
|
|
136
|
-
|
|
137
103
|
return getHtml();
|
|
138
104
|
};
|
|
139
|
-
|
|
140
105
|
return newEditor;
|
|
141
106
|
}
|
|
142
|
-
|
|
143
107
|
function extractImageDataFromRtf(rtfData) {
|
|
144
108
|
if (!rtfData) {
|
|
145
109
|
return [];
|
|
146
110
|
}
|
|
147
|
-
|
|
148
111
|
var regexPictureHeader = /{\\pict[\s\S]+?({\\\*\\blipuid\s?[\da-fA-F]+)[\s}]*/;
|
|
149
112
|
var regexPicture = new RegExp('(?:(' + regexPictureHeader.source + '))([\\da-fA-F\\s]+)\\}', 'g');
|
|
150
113
|
var images = rtfData.match(regexPicture);
|
|
151
114
|
var result = [];
|
|
152
|
-
|
|
153
115
|
if (images) {
|
|
154
116
|
var _iterator = _createForOfIteratorHelper(images),
|
|
155
|
-
|
|
156
|
-
|
|
117
|
+
_step;
|
|
157
118
|
try {
|
|
158
119
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
159
120
|
var image = _step.value;
|
|
160
121
|
var imageType = false;
|
|
161
|
-
|
|
162
122
|
if (image.includes('\\pngblip')) {
|
|
163
123
|
imageType = 'image/png';
|
|
164
124
|
} else if (image.includes('\\jpegblip')) {
|
|
165
125
|
imageType = 'image/jpeg';
|
|
166
126
|
}
|
|
167
|
-
|
|
168
127
|
if (imageType) {
|
|
169
128
|
result.push({
|
|
170
129
|
hex: image.replace(regexPictureHeader, '').replace(/[^\da-fA-F]/g, ''),
|
|
@@ -178,38 +137,34 @@ function extractImageDataFromRtf(rtfData) {
|
|
|
178
137
|
_iterator.f();
|
|
179
138
|
}
|
|
180
139
|
}
|
|
181
|
-
|
|
182
140
|
return result;
|
|
183
141
|
}
|
|
184
|
-
|
|
185
142
|
function replaceImagesFileSourceWithInlineRepresentation(_x, _x2, _x3) {
|
|
186
143
|
return _replaceImagesFileSourceWithInlineRepresentation.apply(this, arguments);
|
|
187
144
|
}
|
|
188
|
-
|
|
189
145
|
function _replaceImagesFileSourceWithInlineRepresentation() {
|
|
190
146
|
_replaceImagesFileSourceWithInlineRepresentation = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(htmlData, imageSrcs, imagesHexSources) {
|
|
191
147
|
var isBase64Data,
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
148
|
+
uploadUrl,
|
|
149
|
+
downloadUrl,
|
|
150
|
+
i,
|
|
151
|
+
_imageSrcs$i,
|
|
152
|
+
_imageSrcs$i2,
|
|
153
|
+
_imageSrcs$i3,
|
|
154
|
+
_imageSrcs$i4,
|
|
155
|
+
_url$split,
|
|
156
|
+
_url$split$slice,
|
|
157
|
+
url,
|
|
158
|
+
width,
|
|
159
|
+
height,
|
|
160
|
+
img,
|
|
161
|
+
newSrc,
|
|
162
|
+
formData,
|
|
163
|
+
blob,
|
|
164
|
+
imgName,
|
|
165
|
+
file,
|
|
166
|
+
res,
|
|
167
|
+
_args = arguments;
|
|
213
168
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
214
169
|
while (1) {
|
|
215
170
|
switch (_context.prev = _context.next) {
|
|
@@ -217,20 +172,16 @@ function _replaceImagesFileSourceWithInlineRepresentation() {
|
|
|
217
172
|
isBase64Data = _args.length > 3 && _args[3] !== undefined ? _args[3] : true;
|
|
218
173
|
uploadUrl = _args.length > 4 ? _args[4] : undefined;
|
|
219
174
|
downloadUrl = _args.length > 5 ? _args[5] : undefined;
|
|
220
|
-
|
|
221
175
|
if (!(imageSrcs.length === imagesHexSources.length)) {
|
|
222
176
|
_context.next = 23;
|
|
223
177
|
break;
|
|
224
178
|
}
|
|
225
|
-
|
|
226
179
|
i = 0;
|
|
227
|
-
|
|
228
180
|
case 5:
|
|
229
181
|
if (!(i < imageSrcs.length)) {
|
|
230
182
|
_context.next = 23;
|
|
231
183
|
break;
|
|
232
184
|
}
|
|
233
|
-
|
|
234
185
|
url = imageSrcs === null || imageSrcs === void 0 ? void 0 : (_imageSrcs$i = imageSrcs[i]) === null || _imageSrcs$i === void 0 ? void 0 : _imageSrcs$i.url;
|
|
235
186
|
width = imageSrcs === null || imageSrcs === void 0 ? void 0 : (_imageSrcs$i2 = imageSrcs[i]) === null || _imageSrcs$i2 === void 0 ? void 0 : _imageSrcs$i2.width;
|
|
236
187
|
height = imageSrcs === null || imageSrcs === void 0 ? void 0 : (_imageSrcs$i3 = imageSrcs[i]) === null || _imageSrcs$i3 === void 0 ? void 0 : _imageSrcs$i3.height;
|
|
@@ -248,19 +199,15 @@ function _replaceImagesFileSourceWithInlineRepresentation() {
|
|
|
248
199
|
}).then(function (response) {
|
|
249
200
|
return response.json();
|
|
250
201
|
});
|
|
251
|
-
|
|
252
202
|
case 18:
|
|
253
203
|
res = _context.sent;
|
|
254
204
|
htmlData = htmlData.replace(img, "<img src=\"".concat(downloadUrl).concat(res.data[0].id, "\" style=\"width:").concat(width, "px;height:").concat(height, "px\""));
|
|
255
|
-
|
|
256
205
|
case 20:
|
|
257
206
|
i++;
|
|
258
207
|
_context.next = 5;
|
|
259
208
|
break;
|
|
260
|
-
|
|
261
209
|
case 23:
|
|
262
210
|
return _context.abrupt("return", htmlData);
|
|
263
|
-
|
|
264
211
|
case 24:
|
|
265
212
|
case "end":
|
|
266
213
|
return _context.stop();
|
|
@@ -270,27 +217,22 @@ function _replaceImagesFileSourceWithInlineRepresentation() {
|
|
|
270
217
|
}));
|
|
271
218
|
return _replaceImagesFileSourceWithInlineRepresentation.apply(this, arguments);
|
|
272
219
|
}
|
|
273
|
-
|
|
274
220
|
function _convertHexToBase64(hexString) {
|
|
275
221
|
return btoa(hexString.match(/\w{2}/g).map(function (_char) {
|
|
276
222
|
return String.fromCharCode(parseInt(_char, 16));
|
|
277
223
|
}).join(''));
|
|
278
224
|
}
|
|
279
|
-
|
|
280
225
|
function convertBase64UrlToBlob(dataurl) {
|
|
281
|
-
var arr = dataurl.split(',');
|
|
282
|
-
|
|
226
|
+
var arr = dataurl.split(',');
|
|
227
|
+
//注意base64的最后面中括号和引号是不转译的
|
|
283
228
|
var _arr = arr[1].substring(0, arr[1].length - 2);
|
|
284
|
-
|
|
285
229
|
var mime = arr[0].match(/:(.*?);/)[1],
|
|
286
|
-
|
|
230
|
+
bstr = atob(_arr);
|
|
287
231
|
var n = bstr.length;
|
|
288
232
|
var u8arr = new Uint8Array(n);
|
|
289
|
-
|
|
290
233
|
while (n--) {
|
|
291
234
|
u8arr[n] = bstr.charCodeAt(n);
|
|
292
235
|
}
|
|
293
|
-
|
|
294
236
|
return new Blob([u8arr], {
|
|
295
237
|
type: mime
|
|
296
238
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wangEditorUtil.js","names":["replaceAllSpanFontSize","htmlData","spanReg","fontReg","fontSizeReg","spanArr","match","Array","isArray","length","fontSizeReplaceList","i","fontArr","fontSize","ptValue","split","replace","indexOf","value","toFontSize","parseInt","Number","replaceAll","size","result","sizeArr","includes","findAllImgSrcsFromHtml","imgReg","srcReg","widthReg","heightReg","arr","srcArr","src","width","height","push","url","img","withEmptyHtml","editor","getHtml","newEditor","isEmpty","extractImageDataFromRtf","rtfData","regexPictureHeader","regexPicture","RegExp","source","images","image","imageType","hex","type","replaceImagesFileSourceWithInlineRepresentation","imageSrcs","imagesHexSources","isBase64Data","uploadUrl","downloadUrl","newSrc","_convertHexToBase64","formData","FormData","blob","convertBase64UrlToBlob","imgName","slice","file","File","append","window","fetch","method","body","then","response","json","res","data","id","hexString","btoa","map","char","String","fromCharCode","join","dataurl","_arr","substring","mime","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob"],"sources":["vtx-wang-editor/wangEditorUtil.js"],"sourcesContent":["export function replaceAllSpanFontSize(htmlData) {\n const spanReg = /\\<span([\\s\\S]+?)\\<\\/span\\>/g;\n const fontReg = /\\<font([\\s\\S]+?)\\<\\/font\\>/g;\n const fontSizeReg = /font-size:([\\s\\S]+?)\\;/g;\n\n let spanArr = htmlData.match(spanReg); // 筛选出所有的span\n if (!spanArr || (Array.isArray(spanArr) && !spanArr.length)) {\n return false;\n }\n let fontSizeReplaceList = {};\n for (let i = 0; i < spanArr.length; i++) {\n const fontArr = spanArr[i].match(fontReg);\n if (fontArr?.length > 0) {\n const fontSize = spanArr[i].match(fontSizeReg);\n if (fontSize?.length > 0) {\n const ptValue = fontSize[0].split(':')[1].replace(';', '');\n\n if (ptValue.indexOf('pt') > -1) {\n const value = toFontSize(parseInt(Number(ptValue.replace('pt', '')) / 0.75));\n fontSizeReplaceList[fontSize[0]] = `font-size:${value}px;`;\n }\n }\n }\n }\n for (let i in fontSizeReplaceList) {\n htmlData = htmlData.replaceAll(i, fontSizeReplaceList[i]);\n }\n return htmlData;\n}\n// 判断字体在这个范围之内,不在这个范围之内 则不显示字体大小\nfunction toFontSize(size) {\n let result = size;\n const sizeArr = [12, 13, 14, 15, 16, 19, 22, 24, 29, 32, 40, 48];\n if (sizeArr.includes(size)) {\n return result;\n }\n if (size < sizeArr[0]) {\n return sizeArr[0];\n }\n if (size > sizeArr[sizeArr.length - 1]) {\n return sizeArr[sizeArr.length - 1];\n }\n\n for (let i = 1; i < sizeArr.length; i++) {\n if (size >= sizeArr[i - 1] && size <= sizeArr[i]) {\n if (size - sizeArr[i - 1] < sizeArr[i] - size) {\n result = sizeArr[i - 1];\n } else {\n result = sizeArr[i];\n }\n break;\n }\n }\n return result;\n}\n\nexport function findAllImgSrcsFromHtml(htmlData) {\n let imgReg = /<img.*?(?:>|\\/>)/gi; //匹配图片中的img标签\n let srcReg = /src=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的src\n let widthReg = /width=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的width\n let heightReg = /height=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的height\n\n let arr = htmlData.match(imgReg); //筛选出所有的img\n if (!arr || (Array.isArray(arr) && !arr.length)) {\n return false;\n }\n\n let srcArr = [];\n for (let i = 0; i < arr.length; i++) {\n let src = arr[i].match(srcReg);\n let width = arr[i].match(widthReg);\n let height = arr[i].match(heightReg);\n // 获取图片地址\n srcArr.push({\n width: width[1],\n height: height[1],\n url: src[1],\n img: arr[i],\n });\n }\n\n return srcArr;\n}\n// 处理为空的时候\nexport function withEmptyHtml(editor) {\n const { getHtml } = editor;\n const newEditor = editor;\n newEditor.getHtml = () => {\n if (newEditor.isEmpty()) {\n return '';\n }\n return getHtml();\n };\n\n return newEditor;\n}\n\nexport function extractImageDataFromRtf(rtfData) {\n if (!rtfData) {\n return [];\n }\n\n const regexPictureHeader = /{\\\\pict[\\s\\S]+?({\\\\\\*\\\\blipuid\\s?[\\da-fA-F]+)[\\s}]*/;\n const regexPicture = new RegExp(\n '(?:(' + regexPictureHeader.source + '))([\\\\da-fA-F\\\\s]+)\\\\}',\n 'g',\n );\n const images = rtfData.match(regexPicture);\n const result = [];\n\n if (images) {\n for (const image of images) {\n let imageType = false;\n\n if (image.includes('\\\\pngblip')) {\n imageType = 'image/png';\n } else if (image.includes('\\\\jpegblip')) {\n imageType = 'image/jpeg';\n }\n\n if (imageType) {\n result.push({\n hex: image.replace(regexPictureHeader, '').replace(/[^\\da-fA-F]/g, ''),\n type: imageType,\n });\n }\n }\n }\n\n return result;\n}\n\nexport async function replaceImagesFileSourceWithInlineRepresentation(\n htmlData,\n imageSrcs,\n imagesHexSources,\n isBase64Data = true,\n uploadUrl,\n downloadUrl,\n) {\n if (imageSrcs.length === imagesHexSources.length) {\n for (let i = 0; i < imageSrcs.length; i++) {\n const url = imageSrcs?.[i]?.url;\n const width = imageSrcs?.[i]?.width;\n const height = imageSrcs?.[i]?.height;\n const img = imageSrcs?.[i]?.img;\n const newSrc = isBase64Data\n ? `data:${imagesHexSources[i].type};base64,${_convertHexToBase64(\n imagesHexSources[i].hex,\n )}`\n : imagesHexSources[i];\n const formData = new FormData();\n let blob = convertBase64UrlToBlob(newSrc);\n let imgName = url.split('\\\\')?.slice(-1)?.[0] || 'image.jpg';\n let file = new File([blob], imgName);\n formData.append('file', file);\n const res = await window\n .fetch(uploadUrl, {\n method: 'POST',\n body: formData,\n })\n .then(function(response) {\n return response.json();\n });\n htmlData = htmlData.replace(\n img,\n `<img src=\"${downloadUrl}${res.data[0].id}\" style=\"width:${width}px;height:${height}px\"`,\n );\n }\n }\n return htmlData;\n}\n\nfunction _convertHexToBase64(hexString) {\n return btoa(\n hexString\n .match(/\\w{2}/g)\n .map(char => {\n return String.fromCharCode(parseInt(char, 16));\n })\n .join(''),\n );\n}\n\nfunction convertBase64UrlToBlob(dataurl) {\n const arr = dataurl.split(',');\n //注意base64的最后面中括号和引号是不转译的\n const _arr = arr[1].substring(0, arr[1].length - 2);\n const mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(_arr);\n let n = bstr.length;\n const u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new Blob([u8arr], {\n type: mime,\n });\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"wangEditorUtil.js","names":["replaceAllSpanFontSize","htmlData","spanReg","fontReg","fontSizeReg","spanArr","match","Array","isArray","length","fontSizeReplaceList","i","fontArr","fontSize","ptValue","split","replace","indexOf","value","toFontSize","parseInt","Number","replaceAll","size","result","sizeArr","includes","findAllImgSrcsFromHtml","imgReg","srcReg","widthReg","heightReg","arr","srcArr","src","width","height","push","url","img","withEmptyHtml","editor","getHtml","newEditor","isEmpty","extractImageDataFromRtf","rtfData","regexPictureHeader","regexPicture","RegExp","source","images","image","imageType","hex","type","replaceImagesFileSourceWithInlineRepresentation","imageSrcs","imagesHexSources","isBase64Data","uploadUrl","downloadUrl","newSrc","_convertHexToBase64","formData","FormData","blob","convertBase64UrlToBlob","imgName","slice","file","File","append","window","fetch","method","body","then","response","json","res","data","id","hexString","btoa","map","char","String","fromCharCode","join","dataurl","_arr","substring","mime","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob"],"sources":["vtx-wang-editor/wangEditorUtil.js"],"sourcesContent":["export function replaceAllSpanFontSize(htmlData) {\n const spanReg = /\\<span([\\s\\S]+?)\\<\\/span\\>/g;\n const fontReg = /\\<font([\\s\\S]+?)\\<\\/font\\>/g;\n const fontSizeReg = /font-size:([\\s\\S]+?)\\;/g;\n\n let spanArr = htmlData.match(spanReg); // 筛选出所有的span\n if (!spanArr || (Array.isArray(spanArr) && !spanArr.length)) {\n return false;\n }\n let fontSizeReplaceList = {};\n for (let i = 0; i < spanArr.length; i++) {\n const fontArr = spanArr[i].match(fontReg);\n if (fontArr?.length > 0) {\n const fontSize = spanArr[i].match(fontSizeReg);\n if (fontSize?.length > 0) {\n const ptValue = fontSize[0].split(':')[1].replace(';', '');\n\n if (ptValue.indexOf('pt') > -1) {\n const value = toFontSize(parseInt(Number(ptValue.replace('pt', '')) / 0.75));\n fontSizeReplaceList[fontSize[0]] = `font-size:${value}px;`;\n }\n }\n }\n }\n for (let i in fontSizeReplaceList) {\n htmlData = htmlData.replaceAll(i, fontSizeReplaceList[i]);\n }\n return htmlData;\n}\n// 判断字体在这个范围之内,不在这个范围之内 则不显示字体大小\nfunction toFontSize(size) {\n let result = size;\n const sizeArr = [12, 13, 14, 15, 16, 19, 22, 24, 29, 32, 40, 48];\n if (sizeArr.includes(size)) {\n return result;\n }\n if (size < sizeArr[0]) {\n return sizeArr[0];\n }\n if (size > sizeArr[sizeArr.length - 1]) {\n return sizeArr[sizeArr.length - 1];\n }\n\n for (let i = 1; i < sizeArr.length; i++) {\n if (size >= sizeArr[i - 1] && size <= sizeArr[i]) {\n if (size - sizeArr[i - 1] < sizeArr[i] - size) {\n result = sizeArr[i - 1];\n } else {\n result = sizeArr[i];\n }\n break;\n }\n }\n return result;\n}\n\nexport function findAllImgSrcsFromHtml(htmlData) {\n let imgReg = /<img.*?(?:>|\\/>)/gi; //匹配图片中的img标签\n let srcReg = /src=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的src\n let widthReg = /width=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的width\n let heightReg = /height=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的height\n\n let arr = htmlData.match(imgReg); //筛选出所有的img\n if (!arr || (Array.isArray(arr) && !arr.length)) {\n return false;\n }\n\n let srcArr = [];\n for (let i = 0; i < arr.length; i++) {\n let src = arr[i].match(srcReg);\n let width = arr[i].match(widthReg);\n let height = arr[i].match(heightReg);\n // 获取图片地址\n srcArr.push({\n width: width[1],\n height: height[1],\n url: src[1],\n img: arr[i],\n });\n }\n\n return srcArr;\n}\n// 处理为空的时候\nexport function withEmptyHtml(editor) {\n const { getHtml } = editor;\n const newEditor = editor;\n newEditor.getHtml = () => {\n if (newEditor.isEmpty()) {\n return '';\n }\n return getHtml();\n };\n\n return newEditor;\n}\n\nexport function extractImageDataFromRtf(rtfData) {\n if (!rtfData) {\n return [];\n }\n\n const regexPictureHeader = /{\\\\pict[\\s\\S]+?({\\\\\\*\\\\blipuid\\s?[\\da-fA-F]+)[\\s}]*/;\n const regexPicture = new RegExp(\n '(?:(' + regexPictureHeader.source + '))([\\\\da-fA-F\\\\s]+)\\\\}',\n 'g',\n );\n const images = rtfData.match(regexPicture);\n const result = [];\n\n if (images) {\n for (const image of images) {\n let imageType = false;\n\n if (image.includes('\\\\pngblip')) {\n imageType = 'image/png';\n } else if (image.includes('\\\\jpegblip')) {\n imageType = 'image/jpeg';\n }\n\n if (imageType) {\n result.push({\n hex: image.replace(regexPictureHeader, '').replace(/[^\\da-fA-F]/g, ''),\n type: imageType,\n });\n }\n }\n }\n\n return result;\n}\n\nexport async function replaceImagesFileSourceWithInlineRepresentation(\n htmlData,\n imageSrcs,\n imagesHexSources,\n isBase64Data = true,\n uploadUrl,\n downloadUrl,\n) {\n if (imageSrcs.length === imagesHexSources.length) {\n for (let i = 0; i < imageSrcs.length; i++) {\n const url = imageSrcs?.[i]?.url;\n const width = imageSrcs?.[i]?.width;\n const height = imageSrcs?.[i]?.height;\n const img = imageSrcs?.[i]?.img;\n const newSrc = isBase64Data\n ? `data:${imagesHexSources[i].type};base64,${_convertHexToBase64(\n imagesHexSources[i].hex,\n )}`\n : imagesHexSources[i];\n const formData = new FormData();\n let blob = convertBase64UrlToBlob(newSrc);\n let imgName = url.split('\\\\')?.slice(-1)?.[0] || 'image.jpg';\n let file = new File([blob], imgName);\n formData.append('file', file);\n const res = await window\n .fetch(uploadUrl, {\n method: 'POST',\n body: formData,\n })\n .then(function(response) {\n return response.json();\n });\n htmlData = htmlData.replace(\n img,\n `<img src=\"${downloadUrl}${res.data[0].id}\" style=\"width:${width}px;height:${height}px\"`,\n );\n }\n }\n return htmlData;\n}\n\nfunction _convertHexToBase64(hexString) {\n return btoa(\n hexString\n .match(/\\w{2}/g)\n .map(char => {\n return String.fromCharCode(parseInt(char, 16));\n })\n .join(''),\n );\n}\n\nfunction convertBase64UrlToBlob(dataurl) {\n const arr = dataurl.split(',');\n //注意base64的最后面中括号和引号是不转译的\n const _arr = arr[1].substring(0, arr[1].length - 2);\n const mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(_arr);\n let n = bstr.length;\n const u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new Blob([u8arr], {\n type: mime,\n });\n}\n"],"mappings":"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"}
|