(function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(require("vue")); else if(typeof define === 'function' && define.amd) define([], factory); else if(typeof exports === 'object') exports["VFormRender"] = factory(require("vue")); else root["VFormRender"] = factory(root["Vue"]); })((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__8bbf__) { return /******/ (function(modules) { // webpackBootstrap /******/ // install a JSONP callback for chunk loading /******/ function webpackJsonpCallback(data) { /******/ var chunkIds = data[0]; /******/ var moreModules = data[1]; /******/ /******/ /******/ // add "moreModules" to the modules object, /******/ // then flag all "chunkIds" as loaded and fire callback /******/ var moduleId, chunkId, i = 0, resolves = []; /******/ for(;i < chunkIds.length; i++) { /******/ chunkId = chunkIds[i]; /******/ if(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) { /******/ resolves.push(installedChunks[chunkId][0]); /******/ } /******/ installedChunks[chunkId] = 0; /******/ } /******/ for(moduleId in moreModules) { /******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) { /******/ modules[moduleId] = moreModules[moduleId]; /******/ } /******/ } /******/ if(parentJsonpFunction) parentJsonpFunction(data); /******/ /******/ while(resolves.length) { /******/ resolves.shift()(); /******/ } /******/ /******/ }; /******/ /******/ /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // object to store loaded and loading chunks /******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched /******/ // Promise = chunk loading, 0 = chunk loaded /******/ var installedChunks = { /******/ 0: 0 /******/ }; /******/ /******/ /******/ /******/ // script path function /******/ function jsonpScriptSrc(chunkId) { /******/ return __webpack_require__.p + "VFormRender.umd." + ({}[chunkId]||chunkId) + ".js" /******/ } /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ // This file contains only the entry chunk. /******/ // The chunk loading function for additional chunks /******/ __webpack_require__.e = function requireEnsure(chunkId) { /******/ var promises = []; /******/ /******/ /******/ // JSONP chunk loading for javascript /******/ /******/ var installedChunkData = installedChunks[chunkId]; /******/ if(installedChunkData !== 0) { // 0 means "already installed". /******/ /******/ // a Promise means "currently loading". /******/ if(installedChunkData) { /******/ promises.push(installedChunkData[2]); /******/ } else { /******/ // setup Promise in chunk cache /******/ var promise = new Promise(function(resolve, reject) { /******/ installedChunkData = installedChunks[chunkId] = [resolve, reject]; /******/ }); /******/ promises.push(installedChunkData[2] = promise); /******/ /******/ // start chunk loading /******/ var script = document.createElement('script'); /******/ var onScriptComplete; /******/ /******/ script.charset = 'utf-8'; /******/ script.timeout = 120; /******/ if (__webpack_require__.nc) { /******/ script.setAttribute("nonce", __webpack_require__.nc); /******/ } /******/ script.src = jsonpScriptSrc(chunkId); /******/ /******/ // create error before stack unwound to get useful stacktrace later /******/ var error = new Error(); /******/ onScriptComplete = function (event) { /******/ // avoid mem leaks in IE. /******/ script.onerror = script.onload = null; /******/ clearTimeout(timeout); /******/ var chunk = installedChunks[chunkId]; /******/ if(chunk !== 0) { /******/ if(chunk) { /******/ var errorType = event && (event.type === 'load' ? 'missing' : event.type); /******/ var realSrc = event && event.target && event.target.src; /******/ error.message = 'Loading chunk ' + chunkId + ' failed.\n(' + errorType + ': ' + realSrc + ')'; /******/ error.name = 'ChunkLoadError'; /******/ error.type = errorType; /******/ error.request = realSrc; /******/ chunk[1](error); /******/ } /******/ installedChunks[chunkId] = undefined; /******/ } /******/ }; /******/ var timeout = setTimeout(function(){ /******/ onScriptComplete({ type: 'timeout', target: script }); /******/ }, 120000); /******/ script.onerror = script.onload = onScriptComplete; /******/ document.head.appendChild(script); /******/ } /******/ } /******/ return Promise.all(promises); /******/ }; /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ // on error function for async loading /******/ __webpack_require__.oe = function(err) { console.error(err); throw err; }; /******/ /******/ var jsonpArray = (typeof self !== 'undefined' ? self : this)["webpackJsonpVFormRender"] = (typeof self !== 'undefined' ? self : this)["webpackJsonpVFormRender"] || []; /******/ var oldJsonpFunction = jsonpArray.push.bind(jsonpArray); /******/ jsonpArray.push = webpackJsonpCallback; /******/ jsonpArray = jsonpArray.slice(); /******/ for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]); /******/ var parentJsonpFunction = oldJsonpFunction; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "2b1f"); /******/ }) /************************************************************************/ /******/ ({ /***/ "024b": /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports.i18n = exports.use = exports.t = undefined; var _zhCN = __webpack_require__("a655"); var _zhCN2 = _interopRequireDefault(_zhCN); var _vue = __webpack_require__("8bbf"); var _vue2 = _interopRequireDefault(_vue); var _deepmerge = __webpack_require__("5baf"); var _deepmerge2 = _interopRequireDefault(_deepmerge); var _format = __webpack_require__("6bb4"); var _format2 = _interopRequireDefault(_format); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var format = (0, _format2.default)(_vue2.default); var lang = _zhCN2.default; var merged = false; var i18nHandler = function i18nHandler() { var vuei18n = Object.getPrototypeOf(this || _vue2.default).$t; if (typeof vuei18n === 'function' && !!_vue2.default.locale) { if (!merged) { merged = true; _vue2.default.locale(_vue2.default.config.lang, (0, _deepmerge2.default)(lang, _vue2.default.locale(_vue2.default.config.lang) || {}, { clone: true })); } return vuei18n.apply(this, arguments); } }; var t = exports.t = function t(path, options) { var value = i18nHandler.apply(this, arguments); if (value !== null && value !== undefined) return value; var array = path.split('.'); var current = lang; for (var i = 0, j = array.length; i < j; i++) { var property = array[i]; value = current[property]; if (i === j - 1) return format(value, options); if (!value) return ''; current = value; } return ''; }; var use = exports.use = function use(l) { lang = l || lang; }; var i18n = exports.i18n = function i18n(fn) { i18nHandler = fn || i18nHandler; }; exports.default = { use: use, t: t, i18n: i18n }; /***/ }), /***/ "02ca": /***/ (function(module, exports, __webpack_require__) { var isCallable = __webpack_require__("a9ce"); var $documentAll = __webpack_require__("8925"); var documentAll = $documentAll.all; module.exports = $documentAll.IS_HTMLDDA ? function (it) { return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll; } : function (it) { return typeof it == 'object' ? it !== null : isCallable(it); }; /***/ }), /***/ "074c": /***/ (function(module, exports, __webpack_require__) { var IS_PURE = __webpack_require__("2176"); var store = __webpack_require__("692d"); (module.exports = function (key, value) { return store[key] || (store[key] = value !== undefined ? value : {}); })('versions', []).push({ version: '3.26.0', mode: IS_PURE ? 'pure' : 'global', copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)', license: 'https://github.com/zloirock/core-js/blob/v3.26.0/LICENSE', source: 'https://github.com/zloirock/core-js' }); /***/ }), /***/ "0789": /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__("1ff0"); var isCallable = __webpack_require__("a9ce"); var WeakMap = global.WeakMap; module.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap)); /***/ }), /***/ "090f": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/html-text-widget.vue?vue&type=template&id=5b64c2ea&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('static-content-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('div', { ref: "fieldEditor", domProps: { "innerHTML": _vm._s(_vm.field.options.htmlContent) } })]); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/html-text-widget.vue?vue&type=template&id=5b64c2ea&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue + 4 modules var static_content_wrapper = __webpack_require__("828b"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/html-text-widget.vue?vue&type=script&lang=js& /* harmony default export */ var html_text_widgetvue_type_script_lang_js_ = ({ name: "html-text-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { StaticContentWrapper: static_content_wrapper["default"] }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.registerToRefList(); this.initEventHandler(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/html-text-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_html_text_widgetvue_type_script_lang_js_ = (html_text_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/html-text-widget.vue?vue&type=style&index=0&id=5b64c2ea&prod&lang=scss&scoped=true& var html_text_widgetvue_type_style_index_0_id_5b64c2ea_prod_lang_scss_scoped_true_ = __webpack_require__("20f8"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/html-text-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_html_text_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "5b64c2ea", null ) /* harmony default export */ var html_text_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "0916": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_divider_widget_vue_vue_type_style_index_0_id_0faf59b2_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("bc4e"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_divider_widget_vue_vue_type_style_index_0_id_0faf59b2_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_divider_widget_vue_vue_type_style_index_0_id_0faf59b2_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "0a5e": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_container_wrapper_vue_vue_type_style_index_0_id_b98cf8dc_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("c1fd"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_container_wrapper_vue_vue_type_style_index_0_id_b98cf8dc_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_container_wrapper_vue_vue_type_style_index_0_id_b98cf8dc_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "0afe": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "0b51": /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports.isEmpty = exports.isEqual = exports.arrayEquals = exports.looseEqual = exports.capitalize = exports.kebabCase = exports.autoprefixer = exports.isFirefox = exports.isEdge = exports.isIE = exports.coerceTruthyValueToArray = exports.arrayFind = exports.arrayFindIndex = exports.escapeRegexpString = exports.valueEquals = exports.generateId = exports.getValueByPath = undefined; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; exports.noop = noop; exports.hasOwn = hasOwn; exports.toObject = toObject; exports.getPropByPath = getPropByPath; exports.rafThrottle = rafThrottle; exports.objToArray = objToArray; var _vue = __webpack_require__("8bbf"); var _vue2 = _interopRequireDefault(_vue); var _types = __webpack_require__("163f"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var hasOwnProperty = Object.prototype.hasOwnProperty; function noop() {}; function hasOwn(obj, key) { return hasOwnProperty.call(obj, key); }; function extend(to, _from) { for (var key in _from) { to[key] = _from[key]; } return to; }; function toObject(arr) { var res = {}; for (var i = 0; i < arr.length; i++) { if (arr[i]) { extend(res, arr[i]); } } return res; }; var getValueByPath = exports.getValueByPath = function getValueByPath(object, prop) { prop = prop || ''; var paths = prop.split('.'); var current = object; var result = null; for (var i = 0, j = paths.length; i < j; i++) { var path = paths[i]; if (!current) break; if (i === j - 1) { result = current[path]; break; } current = current[path]; } return result; }; function getPropByPath(obj, path, strict) { var tempObj = obj; path = path.replace(/\[(\w+)\]/g, '.$1'); path = path.replace(/^\./, ''); var keyArr = path.split('.'); var i = 0; for (var len = keyArr.length; i < len - 1; ++i) { if (!tempObj && !strict) break; var key = keyArr[i]; if (key in tempObj) { tempObj = tempObj[key]; } else { if (strict) { throw new Error('please transfer a valid prop path to form item!'); } break; } } return { o: tempObj, k: keyArr[i], v: tempObj ? tempObj[keyArr[i]] : null }; }; var generateId = exports.generateId = function generateId() { return Math.floor(Math.random() * 10000); }; var valueEquals = exports.valueEquals = function valueEquals(a, b) { // see: https://stackoverflow.com/questions/3115982/how-to-check-if-two-arrays-are-equal-with-javascript if (a === b) return true; if (!(a instanceof Array)) return false; if (!(b instanceof Array)) return false; if (a.length !== b.length) return false; for (var i = 0; i !== a.length; ++i) { if (a[i] !== b[i]) return false; } return true; }; var escapeRegexpString = exports.escapeRegexpString = function escapeRegexpString() { var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; return String(value).replace(/[|\\{}()[\]^$+*?.]/g, '\\$&'); }; // TODO: use native Array.find, Array.findIndex when IE support is dropped var arrayFindIndex = exports.arrayFindIndex = function arrayFindIndex(arr, pred) { for (var i = 0; i !== arr.length; ++i) { if (pred(arr[i])) { return i; } } return -1; }; var arrayFind = exports.arrayFind = function arrayFind(arr, pred) { var idx = arrayFindIndex(arr, pred); return idx !== -1 ? arr[idx] : undefined; }; // coerce truthy value to array var coerceTruthyValueToArray = exports.coerceTruthyValueToArray = function coerceTruthyValueToArray(val) { if (Array.isArray(val)) { return val; } else if (val) { return [val]; } else { return []; } }; var isIE = exports.isIE = function isIE() { return !_vue2.default.prototype.$isServer && !isNaN(Number(document.documentMode)); }; var isEdge = exports.isEdge = function isEdge() { return !_vue2.default.prototype.$isServer && navigator.userAgent.indexOf('Edge') > -1; }; var isFirefox = exports.isFirefox = function isFirefox() { return !_vue2.default.prototype.$isServer && !!window.navigator.userAgent.match(/firefox/i); }; var autoprefixer = exports.autoprefixer = function autoprefixer(style) { if ((typeof style === 'undefined' ? 'undefined' : _typeof(style)) !== 'object') return style; var rules = ['transform', 'transition', 'animation']; var prefixes = ['ms-', 'webkit-']; rules.forEach(function (rule) { var value = style[rule]; if (rule && value) { prefixes.forEach(function (prefix) { style[prefix + rule] = value; }); } }); return style; }; var kebabCase = exports.kebabCase = function kebabCase(str) { var hyphenateRE = /([^-])([A-Z])/g; return str.replace(hyphenateRE, '$1-$2').replace(hyphenateRE, '$1-$2').toLowerCase(); }; var capitalize = exports.capitalize = function capitalize(str) { if (!(0, _types.isString)(str)) return str; return str.charAt(0).toUpperCase() + str.slice(1); }; var looseEqual = exports.looseEqual = function looseEqual(a, b) { var isObjectA = (0, _types.isObject)(a); var isObjectB = (0, _types.isObject)(b); if (isObjectA && isObjectB) { return JSON.stringify(a) === JSON.stringify(b); } else if (!isObjectA && !isObjectB) { return String(a) === String(b); } else { return false; } }; var arrayEquals = exports.arrayEquals = function arrayEquals(arrayA, arrayB) { arrayA = arrayA || []; arrayB = arrayB || []; if (arrayA.length !== arrayB.length) { return false; } for (var i = 0; i < arrayA.length; i++) { if (!looseEqual(arrayA[i], arrayB[i])) { return false; } } return true; }; var isEqual = exports.isEqual = function isEqual(value1, value2) { if (Array.isArray(value1) && Array.isArray(value2)) { return arrayEquals(value1, value2); } return looseEqual(value1, value2); }; var isEmpty = exports.isEmpty = function isEmpty(val) { // null or undefined if (val == null) return true; if (typeof val === 'boolean') return false; if (typeof val === 'number') return !val; if (val instanceof Error) return val.message === ''; switch (Object.prototype.toString.call(val)) { // String or Array case '[object String]': case '[object Array]': return !val.length; // Map or Set or File case '[object File]': case '[object Map]': case '[object Set]': { return !val.size; } // Plain Object case '[object Object]': { return !Object.keys(val).length; } } return false; }; function rafThrottle(fn) { var locked = false; return function () { var _this = this; for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } if (locked) return; locked = true; window.requestAnimationFrame(function (_) { fn.apply(_this, args); locked = false; }); }; } function objToArray(obj) { if (Array.isArray(obj)) { return obj; } return isEmpty(obj) ? [] : [obj]; } /***/ }), /***/ "0b56": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; }); /* globals __VUE_SSR_CONTEXT__ */ // IMPORTANT: Do NOT use ES2015 features in this file (except for modules). // This module is a runtime utility for cleaner component module output and will // be included in the final webpack user bundle. function normalizeComponent( scriptExports, render, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier /* server only */, shadowMode /* vue-cli only */ ) { // Vue.extend constructor export interop var options = typeof scriptExports === 'function' ? scriptExports.options : scriptExports // render functions if (render) { options.render = render options.staticRenderFns = staticRenderFns options._compiled = true } // functional template if (functionalTemplate) { options.functional = true } // scopedId if (scopeId) { options._scopeId = 'data-v-' + scopeId } var hook if (moduleIdentifier) { // server build hook = function (context) { // 2.3 injection context = context || // cached call (this.$vnode && this.$vnode.ssrContext) || // stateful (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional // 2.2 with runInNewContext: true if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { context = __VUE_SSR_CONTEXT__ } // inject component styles if (injectStyles) { injectStyles.call(this, context) } // register component module identifier for async chunk inferrence if (context && context._registeredComponents) { context._registeredComponents.add(moduleIdentifier) } } // used by ssr in case component is cached and beforeCreate // never gets called options._ssrRegister = hook } else if (injectStyles) { hook = shadowMode ? function () { injectStyles.call( this, (options.functional ? this.parent : this).$root.$options.shadowRoot ) } : injectStyles } if (hook) { if (options.functional) { // for template-only hot-reload because in that case the render fn doesn't // go through the normalizer options._injectStyles = hook // register for functional component in vue file var originalRender = options.render options.render = function renderWithStyleInjection(h, context) { hook.call(context) return originalRender(h, context) } } else { // inject component registration as beforeCreate hook var existing = options.beforeCreate options.beforeCreate = existing ? [].concat(existing, hook) : [hook] } } return { exports: scriptExports, options: options } } /***/ }), /***/ "0bce": /***/ (function(module, exports, __webpack_require__) { var toIntegerOrInfinity = __webpack_require__("0c10"); var min = Math.min; // `ToLength` abstract operation // https://tc39.es/ecma262/#sec-tolength module.exports = function (argument) { return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991 }; /***/ }), /***/ "0c10": /***/ (function(module, exports, __webpack_require__) { var trunc = __webpack_require__("d6d1"); // `ToIntegerOrInfinity` abstract operation // https://tc39.es/ecma262/#sec-tointegerorinfinity module.exports = function (argument) { var number = +argument; // eslint-disable-next-line no-self-compare -- NaN check return number !== number || number === 0 ? 0 : trunc(number); }; /***/ }), /***/ "0cda": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "0ea1": /***/ (function(module, exports, __webpack_require__) { var uncurryThis = __webpack_require__("d027"); module.exports = uncurryThis({}.isPrototypeOf); /***/ }), /***/ "0eaf": /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__("02ca"); var $String = String; var $TypeError = TypeError; // `Assert: Type(argument) is Object` module.exports = function (argument) { if (isObject(argument)) return argument; throw $TypeError($String(argument) + ' is not an object'); }; /***/ }), /***/ "0f2b": /***/ (function(module, exports, __webpack_require__) { var toIndexedObject = __webpack_require__("9f48"); var toAbsoluteIndex = __webpack_require__("a4cc"); var lengthOfArrayLike = __webpack_require__("3134"); // `Array.prototype.{ indexOf, includes }` methods implementation var createMethod = function (IS_INCLUDES) { return function ($this, el, fromIndex) { var O = toIndexedObject($this); var length = lengthOfArrayLike(O); var index = toAbsoluteIndex(fromIndex, length); var value; // Array#includes uses SameValueZero equality algorithm // eslint-disable-next-line no-self-compare -- NaN check if (IS_INCLUDES && el != el) while (length > index) { value = O[index++]; // eslint-disable-next-line no-self-compare -- NaN check if (value != value) return true; // Array#indexOf ignores holes, Array#includes - not } else for (;length > index; index++) { if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0; } return !IS_INCLUDES && -1; }; }; module.exports = { // `Array.prototype.includes` method // https://tc39.es/ecma262/#sec-array.prototype.includes includes: createMethod(true), // `Array.prototype.indexOf` method // https://tc39.es/ecma262/#sec-array.prototype.indexof indexOf: createMethod(false) }; /***/ }), /***/ "10aa": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_card_item_vue_vue_type_style_index_0_id_7970f550_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("d4d1"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_card_item_vue_vue_type_style_index_0_id_7970f550_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_card_item_vue_vue_type_style_index_0_id_7970f550_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "10ae": /***/ (function(module, exports, __webpack_require__) { var map = { "./container-item-wrapper.vue": "90c2", "./data-table-item.vue": "1d29", "./grid-col-item.vue": "a93f", "./grid-item.vue": "f746", "./sub-form-item.vue": "efdc", "./tab-item.vue": "c9d4", "./table-cell-item.vue": "6a79", "./table-item.vue": "8921" }; function webpackContext(req) { var id = webpackContextResolve(req); return __webpack_require__(id); } function webpackContextResolve(req) { if(!__webpack_require__.o(map, req)) { var e = new Error("Cannot find module '" + req + "'"); e.code = 'MODULE_NOT_FOUND'; throw e; } return map[req]; } webpackContext.keys = function webpackContextKeys() { return Object.keys(map); }; webpackContext.resolve = webpackContextResolve; module.exports = webpackContext; webpackContext.id = "10ae"; /***/ }), /***/ "11d5": /***/ (function(module, exports, __webpack_require__) { "use strict"; module.exports = function bind(fn, thisArg) { return function wrap() { var args = new Array(arguments.length); for (var i = 0; i < args.length; i++) { args[i] = arguments[i]; } return fn.apply(thisArg, args); }; }; /***/ }), /***/ "1491": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "14db": /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__("1ff0"); var userAgent = __webpack_require__("dcbf"); var process = global.process; var Deno = global.Deno; var versions = process && process.versions || Deno && Deno.version; var v8 = versions && versions.v8; var match, version; if (v8) { match = v8.split('.'); // in old Chrome, versions of V8 isn't V8 = Chrome / 10 // but their correct versions are not interesting for us version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]); } // BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0` // so check `userAgent` even if `.v8` exists, but 0 if (!version && userAgent) { match = userAgent.match(/Edge\/(\d+)/); if (!match || match[1] >= 74) { match = userAgent.match(/Chrome\/(\d+)/); if (match) version = +match[1]; } } module.exports = version; /***/ }), /***/ "163f": /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports.isDefined = exports.isUndefined = exports.isFunction = undefined; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; exports.isString = isString; exports.isObject = isObject; exports.isHtmlElement = isHtmlElement; var _vue = __webpack_require__("8bbf"); var _vue2 = _interopRequireDefault(_vue); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function isString(obj) { return Object.prototype.toString.call(obj) === '[object String]'; } function isObject(obj) { return Object.prototype.toString.call(obj) === '[object Object]'; } function isHtmlElement(node) { return node && node.nodeType === Node.ELEMENT_NODE; } /** * - Inspired: * https://github.com/jashkenas/underscore/blob/master/modules/isFunction.js */ var isFunction = function isFunction(functionToCheck) { var getType = {}; return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]'; }; if ( true && (typeof Int8Array === 'undefined' ? 'undefined' : _typeof(Int8Array)) !== 'object' && (_vue2.default.prototype.$isServer || typeof document.childNodes !== 'function')) { exports.isFunction = isFunction = function isFunction(obj) { return typeof obj === 'function' || false; }; } exports.isFunction = isFunction; var isUndefined = exports.isUndefined = function isUndefined(val) { return val === void 0; }; var isDefined = exports.isDefined = function isDefined(val) { return val !== undefined && val !== null; }; /***/ }), /***/ "1a77": /***/ (function(module, exports, __webpack_require__) { "use strict"; /** * Creates a new URL by combining the specified URLs * * @param {string} baseURL The base URL * @param {string} relativeURL The relative URL * @returns {string} The combined URL */ module.exports = function combineURLs(baseURL, relativeURL) { return relativeURL ? baseURL.replace(/\/+$/, '') + '/' + relativeURL.replace(/^\/+/, '') : baseURL; }; /***/ }), /***/ "1a96": /***/ (function(module, exports, __webpack_require__) { var call = __webpack_require__("7d92"); var isCallable = __webpack_require__("a9ce"); var isObject = __webpack_require__("02ca"); var $TypeError = TypeError; // `OrdinaryToPrimitive` abstract operation // https://tc39.es/ecma262/#sec-ordinarytoprimitive module.exports = function (input, pref) { var fn, val; if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val; if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val; if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val; throw $TypeError("Can't convert object to primitive value"); }; /***/ }), /***/ "1d29": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/data-table-item.vue?vue&type=template&id=13d99222&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('container-item-wrapper', { directives: [{ name: "show", rawName: "v-show", value: !_vm.widget.options.hidden, expression: "!widget.options.hidden" }], attrs: { "widget": _vm.widget } }, [_c('el-table', { ref: "dataTable", style: { 'width': _vm.widget.options.tableWidth }, attrs: { "data": _vm.widget.options.tableData, "height": _vm.widget.options.tableHeight, "border": _vm.widget.options.border, "show-summary": _vm.widget.options.showSummary, "size": _vm.widget.options.tableSize, "stripe": _vm.widget.options.stripe, "cell-style": { padding: _vm.widget.options.rowSpacing + 'px 0' } }, on: { "selection-change": _vm.handleSelectionChange, "sort-change": _vm.handleSortChange } }, [_vm.widget.options.showIndex ? _c('el-table-column', { attrs: { "type": "index", "width": "50", "fixed": "left" } }) : _vm._e(), _vm.widget.options.showCheckBox ? _c('el-table-column', { attrs: { "type": "selection", "width": !_vm.widget.options.showSummary ? 42 : 53, "fixed": "left" } }) : _vm._e(), _vm._l(_vm.widget.options.tableColumns, function (item, index) { return item.show !== false ? _c('el-table-column', { key: index, attrs: { "prop": item.prop, "label": item.label, "sortable": item.sortable, "fixed": item.fixed, "align": item.align ? item.align : 'center', "render-header": _vm.renderHeader, "formatter": _vm.formatterValue, "format": item.format, "show-overflow-tooltip": true, "width": item.width } }) : _vm._e(); })], 2), _vm.widget.options.showPagination ? _c('el-pagination', { attrs: { "small": _vm.widget.options.smallPagination, "current-page": _vm.widget.options.pagination.currentPage, "page-sizes": _vm.widget.options.pagination.pageSizes, "page-size": _vm.widget.options.pagination.pageSize, "layout": _vm.paginationLayout, "total": _vm.widget.options.pagination.total }, on: { "size-change": _vm.handlePageSizeChange, "current-change": _vm.handleCurrentPageChange } }) : _vm._e()], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-render/container-item/data-table-item.vue?vue&type=template&id=13d99222&scoped=true& // EXTERNAL MODULE: ./node_modules/_core-js@3.26.0@core-js/modules/es.array.push.js var es_array_push = __webpack_require__("24b8"); // EXTERNAL MODULE: ./src/components/form-render/container-item/container-item-wrapper.vue + 4 modules var container_item_wrapper = __webpack_require__("90c2"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // CONCATENATED MODULE: ./src/utils/format.js function formatDate1(date) { if (new Date(Date.parse(date.replace(/-/g, "/"))) === "Invalid Date") { return date; } date = new Date(Date.parse(date.replace(/-/g, "/"))); //转换成Date let y = date.getFullYear(); let m = date.getMonth() + 1; m = m < 10 ? '0' + m : m; let d = date.getDate(); d = d < 10 ? '0' + d : d; return y + '-' + m + '-' + d; } function formatDate2(date) { if (new Date(Date.parse(date.replace(/-/g, "/"))) === "Invalid Date") { return date; } date = new Date(Date.parse(date.replace(/-/g, "/"))); //转换成Date let y = date.getFullYear(); let m = date.getMonth() + 1; m = m < 10 ? '0' + m : m; let d = date.getDate(); d = d < 10 ? '0' + d : d; return y + '/' + m + '/' + d; } function formatDate3(date) { if (new Date(Date.parse(date.replace(/-/g, "/"))) === "Invalid Date") { return date; } date = new Date(Date.parse(date.replace(/-/g, "/"))); //转换成Date let y = date.getFullYear(); let m = date.getMonth() + 1; m = m < 10 ? '0' + m : m; let d = date.getDate(); d = d < 10 ? '0' + d : d; return y + '年' + m + '月' + d + '日'; } function formatDate4(date) { if (new Date(Date.parse(date.replace(/-/g, "/"))) === "Invalid Date") { return date; } date = new Date(Date.parse(date.replace(/-/g, "/"))); //转换成Date return date.toLocaleString(); } function formatDate5(date) { if (new Date(Date.parse(date.replace(/-/g, "/"))) === "Invalid Date") { return date; } date = new Date(Date.parse(date.replace(/-/g, "/"))); //转换成Data(); return date.toLocaleString('chinese', { hour12: false }); } // ###,###,###,##0.###### function formatNumber1(v) { if (typeof v != "number") { return v; } let length = v.toString().split(".")[1].length; switch (length) { case 0: v = v.toFixed(0); break; case 1: v = v.toFixed(1); break; case 2: v = v.toFixed(2); break; case 3: v = v.toFixed(3); break; case 4: v = v.toFixed(4); break; case 5: v = v.toFixed(5); break; default: v = v.toFixed(6); } let res = v.toString().replace(/\d+/, function (n) { // 先提取整数部分 return n.replace(/(\d)(?=(\d{3})+$)/g, function ($1) { return $1 + ","; }); }); return res; } //###,###,###,##0.00#### function formatNumber2(v) { if (typeof v != "number") { return v; } let length = v.toString().split(".")[1].length; switch (length) { case 0: case 1: case 2: v = v.toFixed(2); break; case 3: v = v.toFixed(3); break; case 4: v = v.toFixed(4); break; case 5: v = v.toFixed(5); break; default: v = v.toFixed(6); } let res = v.toString().replace(/\d+/, function (n) { // 先提取整数部分 return n.replace(/(\d)(?=(\d{3})+$)/g, function ($1) { return $1 + ","; }); }); return res; } // ###,###,###,##0.000000 function formatNumber3(v) { if (typeof v != "number") { return v; } v = v.toFixed(6); let res = v.toString().replace(/\d+/, function (n) { // 先提取整数部分 return n.replace(/(\d)(?=(\d{3})+$)/g, function ($1) { return $1 + ","; }); }); return res; } // ###,###,###,##0.000 function formatNumber4(v) { if (typeof v != "number") { return v; } v = v.toFixed(3); let res = v.toString().replace(/\d+/, function (n) { // 先提取整数部分 return n.replace(/(\d)(?=(\d{3})+$)/g, function ($1) { return $1 + ","; }); }); return res; } // ###,###,###,##0.00 function formatNumber5(v) { if (typeof v != "number") { return v; } v = v.toFixed(2); let res = v.toString().replace(/\d+/, function (n) { // 先提取整数部分 return n.replace(/(\d)(?=(\d{3})+$)/g, function ($1) { return $1 + ","; }); }); return res; } // ###,###,###,##0 function formatNumber6(v) { if (typeof v != "number") { return v; } v = v.toFixed(0); let res = v.toString().replace(/\d+/, function (n) { // 先提取整数部分 return n.replace(/(\d)(?=(\d{3})+$)/g, function ($1) { return $1 + ","; }); }); return res; } // ###,##0.00##% function formatNumber7(v) { if (typeof v != "number") { return v; } let length = v.toString().split(".")[1].length; v = v * 100; switch (length) { case 0: case 1: case 2: v = v.toFixed(2); break; case 3: v = v.toFixed(3); break; default: v = v.toFixed(4); } let res = v.toString().replace(/\d+/, function (n) { // 先提取整数部分 return n.replace(/(\d)(?=(\d{3})+$)/g, function ($1) { return $1 + ","; }); }); return res + '%'; } // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/index.js var field_widget = __webpack_require__("c029"); // EXTERNAL MODULE: ./src/components/form-render/refMixin.js var refMixin = __webpack_require__("d67f"); // EXTERNAL MODULE: ./src/components/form-render/container-item/containerItemMixin.js var containerItemMixin = __webpack_require__("34f0"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/data-table-item.vue?vue&type=script&lang=js& /* harmony default export */ var data_table_itemvue_type_script_lang_js_ = ({ name: "DataTableItem", componentName: 'ContainerItem', //必须固定为ContainerItem,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], i18n["b" /* default */], refMixin["a" /* default */], containerItemMixin["a" /* default */]], components: { ContainerItemWrapper: container_item_wrapper["default"], ...field_widget["a" /* default */] }, props: { widget: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, inject: ['refList', 'sfRefList', 'globalModel'], data() { return { tableData: [{ date: '2016-05-02', name: '王小虎1', address: '上海市普陀区金沙江路 1518 弄' }, { date: '2016-05-04', name: '王小虎2', address: '上海市普陀区金沙江路 1517 弄' }, { date: '2016-05-01', name: '王小虎3', address: '上海市普陀区金沙江路 1519 弄' }, { date: '2016-05-03', name: '王小虎4', address: '上海市普陀区金沙江路 1516 弄' }], selectedIndices: [], pageSize: this.widget.options.pagination.pageSize, currentPage: this.widget.options.pagination.currentPage }; }, created() { this.initRefList(); }, mounted() { // this.handleOnMounted() }, beforeDestroy() { this.unregisterFromRefList(); }, computed: { paginationLayout() { return !!this.widget.options.smallPagination ? 'prev, pager, next' : 'total, sizes, prev, pager, next, jumper'; }, customClass() { return !!this.widget.options.customClass ? this.widget.options.customClass.join(' ') : ''; } }, methods: { selectWidget(widget) { this.designer.setSelected(widget); }, renderHeader(h, { column, $index }) { //debugger let colCount = 0; if (this.widget.options.showIndex) { colCount++; } if (this.widget.options.showCheckBox) { colCount++; } this.$set(column, "formatS", this.widget.options.tableColumns[$index - colCount].formatS); return column.label; }, formatter(row, column, cellValue) { return cellValue; }, formatterValue(row, column, cellValue) { if (!!column.formatS && !!column.show) { switch (column.formatS) { case 'd1': return formatDate1(cellValue); case 'd2': return formatDate2(cellValue); case 'd3': return formatDate3(cellValue); case 'd4': return formatDate4(cellValue); case 'd5': return formatDate5(cellValue); case 'n1': return formatNumber1(cellValue); case 'n2': return formatNumber2(cellValue); case 'n3': return formatNumber3(cellValue); case 'n4': return formatNumber4(cellValue); case 'n5': return formatNumber5(cellValue); case 'n6': return formatNumber6(cellValue); case 'n7': return formatNumber7(cellValue); } } return cellValue; }, getRowIndex(row) { return this.widget.options.tableData.lastIndexOf(row); }, findColumnAndSetHidden(columnName, hiddenFlag) { this.widget.options.tableColumns.forEach(tc => { if (tc.prop === columnName) { tc.show = !hiddenFlag; } }); }, handleSelectionChange(selection) { this.selectedIndices.length = 0; selection.map(row => { let rowIndex = this.getRowIndex(row); if (rowIndex >= 0) { this.selectedIndices.push(rowIndex); } }); /* 必须调用mixins中的dispatch方法逐级向父组件发送消息!! */ this.dispatch('VFormRender', 'dataTableSelectionChange', [this, selection, this.selectedIndices]); }, handleSortChange({ column, prop, order }) { // this.dispatch('VFormRender', 'dataTableSortChange', // [this, column, prop, order, this.pageSize, this.currentPage]) // // console.log('test====', prop) }, handlePageSizeChange(pageSize) { this.pageSize = pageSize; this.dispatch('VFormRender', 'dataTablePageSizeChange', [this, pageSize, this.currentPage]); //console.log('test====', this.currentPage) }, handleCurrentPageChange(currentPage) { this.currentPage = currentPage; this.dispatch('VFormRender', 'dataTablePageChange', [this, this.pageSize, currentPage]); //console.log('test====', this.pageSize) }, //--------------------- 以下为组件支持外部调用的API方法 begin ------------------// /* 提示:用户可自行扩充这些方法!!! */ /** * 设置表格列 * @param tableColumns */ setTableColumns(tableColumns) { this.widget.options.tableColumns = tableColumns; this.$nextTick(() => { this.$refs.dataTable.doLayout(); //防止行列显示错位!! }); }, /** * 设置表格列(为了兼容文档错误,setTableColumn应为setTableColumns) * @param tableColumns */ setTableColumn(tableColumns) { this.setTableColumns(tableColumns); }, /** * 动态设置表格列的隐藏或显示 * @param columnNames * @param hiddenFlag */ setTableColumnsHidden(columnNames, hiddenFlag) { if (!!columnNames) { if (typeof columnNames === 'string') { this.findColumnAndSetHidden(columnNames, hiddenFlag); } else if (Array.isArray(columnNames)) { columnNames.forEach(cn => { this.findColumnAndSetHidden(cn, hiddenFlag); }); } this.$nextTick(() => { this.$refs.dataTable.doLayout(); //防止行列显示错位!! }); } }, /** * 获取表格数据 */ getTableData() { return this.widget.options.tableData; }, /** * 设置表格数据 * @param tableData */ setTableData(tableData) { this.widget.options.tableData = tableData; }, /** * 设置表格分页 * @param pagination */ setPagination(pagination) { if (pagination.currentPage !== undefined) { this.widget.options.pagination.currentPage = pagination.currentPage; } if (pagination.pageSize !== undefined) { this.widget.options.pagination.pageSize = pagination.pageSize; } if (pagination.total !== undefined) { this.widget.options.pagination.total = pagination.total; } }, /** * 获取选中行数据,格式为对象数组 * @returns {[]} */ getSelectedRow() { return this.$refs.dataTable.selection; }, /** * 获取选中行索引,格式为数组 * @returns {[]} */ getSelectedIndex() { return this.selectedIndices; } //--------------------- 以上为组件支持外部调用的API方法 end ------------------// } }); // CONCATENATED MODULE: ./src/components/form-render/container-item/data-table-item.vue?vue&type=script&lang=js& /* harmony default export */ var container_item_data_table_itemvue_type_script_lang_js_ = (data_table_itemvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-render/container-item/data-table-item.vue?vue&type=style&index=0&id=13d99222&prod&lang=scss&scoped=true& var data_table_itemvue_type_style_index_0_id_13d99222_prod_lang_scss_scoped_true_ = __webpack_require__("99e6"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-render/container-item/data-table-item.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( container_item_data_table_itemvue_type_script_lang_js_, render, staticRenderFns, false, null, "13d99222", null ) /* harmony default export */ var data_table_item = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "1d46": /***/ (function(module, exports, __webpack_require__) { var uncurryThis = __webpack_require__("d027"); var $Error = Error; var replace = uncurryThis(''.replace); var TEST = (function (arg) { return String($Error(arg).stack); })('zxcasd'); var V8_OR_CHAKRA_STACK_ENTRY = /\n\s*at [^:]*:[^\n]*/; var IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST); module.exports = function (stack, dropEntries) { if (IS_V8_OR_CHAKRA_STACK && typeof stack == 'string' && !$Error.prepareStackTrace) { while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, ''); } return stack; }; /***/ }), /***/ "1ff0": /***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(global) {var check = function (it) { return it && it.Math == Math && it; }; // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 module.exports = // eslint-disable-next-line es/no-global-this -- safe check(typeof globalThis == 'object' && globalThis) || check(typeof window == 'object' && window) || // eslint-disable-next-line no-restricted-globals -- safe check(typeof self == 'object' && self) || check(typeof global == 'object' && global) || // eslint-disable-next-line no-new-func -- fallback (function () { return this; })() || Function('return this')(); /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("2409"))) /***/ }), /***/ "20c0": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/time-widget.vue?vue&type=template&id=0b0dc71b&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-time-picker', { ref: "fieldEditor", staticClass: "full-width-input", attrs: { "disabled": _vm.field.options.disabled, "readonly": _vm.field.options.readonly, "size": _vm.field.options.size, "clearable": _vm.field.options.clearable, "editable": _vm.field.options.editable, "format": _vm.field.options.format, "value-format": "HH:mm:ss", "placeholder": _vm.field.options.placeholder || _vm.i18nt('render.hint.timePlaceholder') }, on: { "focus": _vm.handleFocusCustomEvent, "blur": _vm.handleBlurCustomEvent, "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/time-widget.vue?vue&type=template&id=0b0dc71b&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/time-widget.vue?vue&type=script&lang=js& /* harmony default export */ var time_widgetvue_type_script_lang_js_ = ({ name: "time-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/time-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_time_widgetvue_type_script_lang_js_ = (time_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/time-widget.vue?vue&type=style&index=0&id=0b0dc71b&prod&lang=scss&scoped=true& var time_widgetvue_type_style_index_0_id_0b0dc71b_prod_lang_scss_scoped_true_ = __webpack_require__("2f19"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/time-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_time_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "0b0dc71b", null ) /* harmony default export */ var time_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "20f8": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_html_text_widget_vue_vue_type_style_index_0_id_5b64c2ea_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("1491"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_html_text_widget_vue_vue_type_style_index_0_id_5b64c2ea_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_html_text_widget_vue_vue_type_style_index_0_id_5b64c2ea_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "2176": /***/ (function(module, exports) { module.exports = false; /***/ }), /***/ "221b": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "2409": /***/ (function(module, exports) { var g; // This works in non-strict mode g = (function() { return this; })(); try { // This works if eval is allowed (see CSP) g = g || new Function("return this")(); } catch (e) { // This works if the window reference is available if (typeof window === "object") g = window; } // g can still be undefined, but nothing to do about it... // We return undefined, instead of nothing here, so it's // easier to handle this case. if(!global) { ...} module.exports = g; /***/ }), /***/ "2480": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MultiDrag", function() { return MultiDragPlugin; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Sortable", function() { return Sortable; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Swap", function() { return SwapPlugin; }); /**! * Sortable 1.10.2 * @author RubaXa * @author owenm * @license MIT */ function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function (obj) { return typeof obj; }; } else { _typeof = function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } } function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } var version = "1.10.2"; function userAgent(pattern) { if (typeof window !== 'undefined' && window.navigator) { return !! /*@__PURE__*/ navigator.userAgent.match(pattern); } } var IE11OrLess = userAgent(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i); var Edge = userAgent(/Edge/i); var FireFox = userAgent(/firefox/i); var Safari = userAgent(/safari/i) && !userAgent(/chrome/i) && !userAgent(/android/i); var IOS = userAgent(/iP(ad|od|hone)/i); var ChromeForAndroid = userAgent(/chrome/i) && userAgent(/android/i); var captureMode = { capture: false, passive: false }; function on(el, event, fn) { el.addEventListener(event, fn, !IE11OrLess && captureMode); } function off(el, event, fn) { el.removeEventListener(event, fn, !IE11OrLess && captureMode); } function matches( /**HTMLElement*/ el, /**String*/ selector) { if (!selector) return; selector[0] === '>' && (selector = selector.substring(1)); if (el) { try { if (el.matches) { return el.matches(selector); } else if (el.msMatchesSelector) { return el.msMatchesSelector(selector); } else if (el.webkitMatchesSelector) { return el.webkitMatchesSelector(selector); } } catch (_) { return false; } } return false; } function getParentOrHost(el) { return el.host && el !== document && el.host.nodeType ? el.host : el.parentNode; } function closest( /**HTMLElement*/ el, /**String*/ selector, /**HTMLElement*/ ctx, includeCTX) { if (el) { ctx = ctx || document; do { if (selector != null && (selector[0] === '>' ? el.parentNode === ctx && matches(el, selector) : matches(el, selector)) || includeCTX && el === ctx) { return el; } if (el === ctx) break; /* jshint boss:true */ } while (el = getParentOrHost(el)); } return null; } var R_SPACE = /\s+/g; function toggleClass(el, name, state) { if (el && name) { if (el.classList) { el.classList[state ? 'add' : 'remove'](name); } else { var className = (' ' + el.className + ' ').replace(R_SPACE, ' ').replace(' ' + name + ' ', ' '); el.className = (className + (state ? ' ' + name : '')).replace(R_SPACE, ' '); } } } function css(el, prop, val) { var style = el && el.style; if (style) { if (val === void 0) { if (document.defaultView && document.defaultView.getComputedStyle) { val = document.defaultView.getComputedStyle(el, ''); } else if (el.currentStyle) { val = el.currentStyle; } return prop === void 0 ? val : val[prop]; } else { if (!(prop in style) && prop.indexOf('webkit') === -1) { prop = '-webkit-' + prop; } style[prop] = val + (typeof val === 'string' ? '' : 'px'); } } } function matrix(el, selfOnly) { var appliedTransforms = ''; if (typeof el === 'string') { appliedTransforms = el; } else { do { var transform = css(el, 'transform'); if (transform && transform !== 'none') { appliedTransforms = transform + ' ' + appliedTransforms; } /* jshint boss:true */ } while (!selfOnly && (el = el.parentNode)); } var matrixFn = window.DOMMatrix || window.WebKitCSSMatrix || window.CSSMatrix || window.MSCSSMatrix; /*jshint -W056 */ return matrixFn && new matrixFn(appliedTransforms); } function find(ctx, tagName, iterator) { if (ctx) { var list = ctx.getElementsByTagName(tagName), i = 0, n = list.length; if (iterator) { for (; i < n; i++) { iterator(list[i], i); } } return list; } return []; } function getWindowScrollingElement() { var scrollingElement = document.scrollingElement; if (scrollingElement) { return scrollingElement; } else { return document.documentElement; } } /** * Returns the "bounding client rect" of given element * @param {HTMLElement} el The element whose boundingClientRect is wanted * @param {[Boolean]} relativeToContainingBlock Whether the rect should be relative to the containing block of (including) the container * @param {[Boolean]} relativeToNonStaticParent Whether the rect should be relative to the relative parent of (including) the contaienr * @param {[Boolean]} undoScale Whether the container's scale() should be undone * @param {[HTMLElement]} container The parent the element will be placed in * @return {Object} The boundingClientRect of el, with specified adjustments */ function getRect(el, relativeToContainingBlock, relativeToNonStaticParent, undoScale, container) { if (!el.getBoundingClientRect && el !== window) return; var elRect, top, left, bottom, right, height, width; if (el !== window && el !== getWindowScrollingElement()) { elRect = el.getBoundingClientRect(); top = elRect.top; left = elRect.left; bottom = elRect.bottom; right = elRect.right; height = elRect.height; width = elRect.width; } else { top = 0; left = 0; bottom = window.innerHeight; right = window.innerWidth; height = window.innerHeight; width = window.innerWidth; } if ((relativeToContainingBlock || relativeToNonStaticParent) && el !== window) { // Adjust for translate() container = container || el.parentNode; // solves #1123 (see: https://stackoverflow.com/a/37953806/6088312) // Not needed on <= IE11 if (!IE11OrLess) { do { if (container && container.getBoundingClientRect && (css(container, 'transform') !== 'none' || relativeToNonStaticParent && css(container, 'position') !== 'static')) { var containerRect = container.getBoundingClientRect(); // Set relative to edges of padding box of container top -= containerRect.top + parseInt(css(container, 'border-top-width')); left -= containerRect.left + parseInt(css(container, 'border-left-width')); bottom = top + elRect.height; right = left + elRect.width; break; } /* jshint boss:true */ } while (container = container.parentNode); } } if (undoScale && el !== window) { // Adjust for scale() var elMatrix = matrix(container || el), scaleX = elMatrix && elMatrix.a, scaleY = elMatrix && elMatrix.d; if (elMatrix) { top /= scaleY; left /= scaleX; width /= scaleX; height /= scaleY; bottom = top + height; right = left + width; } } return { top: top, left: left, bottom: bottom, right: right, width: width, height: height }; } /** * Checks if a side of an element is scrolled past a side of its parents * @param {HTMLElement} el The element who's side being scrolled out of view is in question * @param {String} elSide Side of the element in question ('top', 'left', 'right', 'bottom') * @param {String} parentSide Side of the parent in question ('top', 'left', 'right', 'bottom') * @return {HTMLElement} The parent scroll element that the el's side is scrolled past, or null if there is no such element */ function isScrolledPast(el, elSide, parentSide) { var parent = getParentAutoScrollElement(el, true), elSideVal = getRect(el)[elSide]; /* jshint boss:true */ while (parent) { var parentSideVal = getRect(parent)[parentSide], visible = void 0; if (parentSide === 'top' || parentSide === 'left') { visible = elSideVal >= parentSideVal; } else { visible = elSideVal <= parentSideVal; } if (!visible) return parent; if (parent === getWindowScrollingElement()) break; parent = getParentAutoScrollElement(parent, false); } return false; } /** * Gets nth child of el, ignoring hidden children, sortable's elements (does not ignore clone if it's visible) * and non-draggable elements * @param {HTMLElement} el The parent element * @param {Number} childNum The index of the child * @param {Object} options Parent Sortable's options * @return {HTMLElement} The child at index childNum, or null if not found */ function getChild(el, childNum, options) { var currentChild = 0, i = 0, children = el.children; while (i < children.length) { if (children[i].style.display !== 'none' && children[i] !== Sortable.ghost && children[i] !== Sortable.dragged && closest(children[i], options.draggable, el, false)) { if (currentChild === childNum) { return children[i]; } currentChild++; } i++; } return null; } /** * Gets the last child in the el, ignoring ghostEl or invisible elements (clones) * @param {HTMLElement} el Parent element * @param {selector} selector Any other elements that should be ignored * @return {HTMLElement} The last child, ignoring ghostEl */ function lastChild(el, selector) { var last = el.lastElementChild; while (last && (last === Sortable.ghost || css(last, 'display') === 'none' || selector && !matches(last, selector))) { last = last.previousElementSibling; } return last || null; } /** * Returns the index of an element within its parent for a selected set of * elements * @param {HTMLElement} el * @param {selector} selector * @return {number} */ function index(el, selector) { var index = 0; if (!el || !el.parentNode) { return -1; } /* jshint boss:true */ while (el = el.previousElementSibling) { if (el.nodeName.toUpperCase() !== 'TEMPLATE' && el !== Sortable.clone && (!selector || matches(el, selector))) { index++; } } return index; } /** * Returns the scroll offset of the given element, added with all the scroll offsets of parent elements. * The value is returned in real pixels. * @param {HTMLElement} el * @return {Array} Offsets in the format of [left, top] */ function getRelativeScrollOffset(el) { var offsetLeft = 0, offsetTop = 0, winScroller = getWindowScrollingElement(); if (el) { do { var elMatrix = matrix(el), scaleX = elMatrix.a, scaleY = elMatrix.d; offsetLeft += el.scrollLeft * scaleX; offsetTop += el.scrollTop * scaleY; } while (el !== winScroller && (el = el.parentNode)); } return [offsetLeft, offsetTop]; } /** * Returns the index of the object within the given array * @param {Array} arr Array that may or may not hold the object * @param {Object} obj An object that has a key-value pair unique to and identical to a key-value pair in the object you want to find * @return {Number} The index of the object in the array, or -1 */ function indexOfObject(arr, obj) { for (var i in arr) { if (!arr.hasOwnProperty(i)) continue; for (var key in obj) { if (obj.hasOwnProperty(key) && obj[key] === arr[i][key]) return Number(i); } } return -1; } function getParentAutoScrollElement(el, includeSelf) { // skip to window if (!el || !el.getBoundingClientRect) return getWindowScrollingElement(); var elem = el; var gotSelf = false; do { // we don't need to get elem css if it isn't even overflowing in the first place (performance) if (elem.clientWidth < elem.scrollWidth || elem.clientHeight < elem.scrollHeight) { var elemCSS = css(elem); if (elem.clientWidth < elem.scrollWidth && (elemCSS.overflowX == 'auto' || elemCSS.overflowX == 'scroll') || elem.clientHeight < elem.scrollHeight && (elemCSS.overflowY == 'auto' || elemCSS.overflowY == 'scroll')) { if (!elem.getBoundingClientRect || elem === document.body) return getWindowScrollingElement(); if (gotSelf || includeSelf) return elem; gotSelf = true; } } /* jshint boss:true */ } while (elem = elem.parentNode); return getWindowScrollingElement(); } function extend(dst, src) { if (dst && src) { for (var key in src) { if (src.hasOwnProperty(key)) { dst[key] = src[key]; } } } return dst; } function isRectEqual(rect1, rect2) { return Math.round(rect1.top) === Math.round(rect2.top) && Math.round(rect1.left) === Math.round(rect2.left) && Math.round(rect1.height) === Math.round(rect2.height) && Math.round(rect1.width) === Math.round(rect2.width); } var _throttleTimeout; function throttle(callback, ms) { return function () { if (!_throttleTimeout) { var args = arguments, _this = this; if (args.length === 1) { callback.call(_this, args[0]); } else { callback.apply(_this, args); } _throttleTimeout = setTimeout(function () { _throttleTimeout = void 0; }, ms); } }; } function cancelThrottle() { clearTimeout(_throttleTimeout); _throttleTimeout = void 0; } function scrollBy(el, x, y) { el.scrollLeft += x; el.scrollTop += y; } function clone(el) { var Polymer = window.Polymer; var $ = window.jQuery || window.Zepto; if (Polymer && Polymer.dom) { return Polymer.dom(el).cloneNode(true); } else if ($) { return $(el).clone(true)[0]; } else { return el.cloneNode(true); } } function setRect(el, rect) { css(el, 'position', 'absolute'); css(el, 'top', rect.top); css(el, 'left', rect.left); css(el, 'width', rect.width); css(el, 'height', rect.height); } function unsetRect(el) { css(el, 'position', ''); css(el, 'top', ''); css(el, 'left', ''); css(el, 'width', ''); css(el, 'height', ''); } var expando = 'Sortable' + new Date().getTime(); function AnimationStateManager() { var animationStates = [], animationCallbackId; return { captureAnimationState: function captureAnimationState() { animationStates = []; if (!this.options.animation) return; var children = [].slice.call(this.el.children); children.forEach(function (child) { if (css(child, 'display') === 'none' || child === Sortable.ghost) return; animationStates.push({ target: child, rect: getRect(child) }); var fromRect = _objectSpread({}, animationStates[animationStates.length - 1].rect); // If animating: compensate for current animation if (child.thisAnimationDuration) { var childMatrix = matrix(child, true); if (childMatrix) { fromRect.top -= childMatrix.f; fromRect.left -= childMatrix.e; } } child.fromRect = fromRect; }); }, addAnimationState: function addAnimationState(state) { animationStates.push(state); }, removeAnimationState: function removeAnimationState(target) { animationStates.splice(indexOfObject(animationStates, { target: target }), 1); }, animateAll: function animateAll(callback) { var _this = this; if (!this.options.animation) { clearTimeout(animationCallbackId); if (typeof callback === 'function') callback(); return; } var animating = false, animationTime = 0; animationStates.forEach(function (state) { var time = 0, target = state.target, fromRect = target.fromRect, toRect = getRect(target), prevFromRect = target.prevFromRect, prevToRect = target.prevToRect, animatingRect = state.rect, targetMatrix = matrix(target, true); if (targetMatrix) { // Compensate for current animation toRect.top -= targetMatrix.f; toRect.left -= targetMatrix.e; } target.toRect = toRect; if (target.thisAnimationDuration) { // Could also check if animatingRect is between fromRect and toRect if (isRectEqual(prevFromRect, toRect) && !isRectEqual(fromRect, toRect) && // Make sure animatingRect is on line between toRect & fromRect (animatingRect.top - toRect.top) / (animatingRect.left - toRect.left) === (fromRect.top - toRect.top) / (fromRect.left - toRect.left)) { // If returning to same place as started from animation and on same axis time = calculateRealTime(animatingRect, prevFromRect, prevToRect, _this.options); } } // if fromRect != toRect: animate if (!isRectEqual(toRect, fromRect)) { target.prevFromRect = fromRect; target.prevToRect = toRect; if (!time) { time = _this.options.animation; } _this.animate(target, animatingRect, toRect, time); } if (time) { animating = true; animationTime = Math.max(animationTime, time); clearTimeout(target.animationResetTimer); target.animationResetTimer = setTimeout(function () { target.animationTime = 0; target.prevFromRect = null; target.fromRect = null; target.prevToRect = null; target.thisAnimationDuration = null; }, time); target.thisAnimationDuration = time; } }); clearTimeout(animationCallbackId); if (!animating) { if (typeof callback === 'function') callback(); } else { animationCallbackId = setTimeout(function () { if (typeof callback === 'function') callback(); }, animationTime); } animationStates = []; }, animate: function animate(target, currentRect, toRect, duration) { if (duration) { css(target, 'transition', ''); css(target, 'transform', ''); var elMatrix = matrix(this.el), scaleX = elMatrix && elMatrix.a, scaleY = elMatrix && elMatrix.d, translateX = (currentRect.left - toRect.left) / (scaleX || 1), translateY = (currentRect.top - toRect.top) / (scaleY || 1); target.animatingX = !!translateX; target.animatingY = !!translateY; css(target, 'transform', 'translate3d(' + translateX + 'px,' + translateY + 'px,0)'); repaint(target); // repaint css(target, 'transition', 'transform ' + duration + 'ms' + (this.options.easing ? ' ' + this.options.easing : '')); css(target, 'transform', 'translate3d(0,0,0)'); typeof target.animated === 'number' && clearTimeout(target.animated); target.animated = setTimeout(function () { css(target, 'transition', ''); css(target, 'transform', ''); target.animated = false; target.animatingX = false; target.animatingY = false; }, duration); } } }; } function repaint(target) { return target.offsetWidth; } function calculateRealTime(animatingRect, fromRect, toRect, options) { return Math.sqrt(Math.pow(fromRect.top - animatingRect.top, 2) + Math.pow(fromRect.left - animatingRect.left, 2)) / Math.sqrt(Math.pow(fromRect.top - toRect.top, 2) + Math.pow(fromRect.left - toRect.left, 2)) * options.animation; } var plugins = []; var defaults = { initializeByDefault: true }; var PluginManager = { mount: function mount(plugin) { // Set default static properties for (var option in defaults) { if (defaults.hasOwnProperty(option) && !(option in plugin)) { plugin[option] = defaults[option]; } } plugins.push(plugin); }, pluginEvent: function pluginEvent(eventName, sortable, evt) { var _this = this; this.eventCanceled = false; evt.cancel = function () { _this.eventCanceled = true; }; var eventNameGlobal = eventName + 'Global'; plugins.forEach(function (plugin) { if (!sortable[plugin.pluginName]) return; // Fire global events if it exists in this sortable if (sortable[plugin.pluginName][eventNameGlobal]) { sortable[plugin.pluginName][eventNameGlobal](_objectSpread({ sortable: sortable }, evt)); } // Only fire plugin event if plugin is enabled in this sortable, // and plugin has event defined if (sortable.options[plugin.pluginName] && sortable[plugin.pluginName][eventName]) { sortable[plugin.pluginName][eventName](_objectSpread({ sortable: sortable }, evt)); } }); }, initializePlugins: function initializePlugins(sortable, el, defaults, options) { plugins.forEach(function (plugin) { var pluginName = plugin.pluginName; if (!sortable.options[pluginName] && !plugin.initializeByDefault) return; var initialized = new plugin(sortable, el, sortable.options); initialized.sortable = sortable; initialized.options = sortable.options; sortable[pluginName] = initialized; // Add default options from plugin _extends(defaults, initialized.defaults); }); for (var option in sortable.options) { if (!sortable.options.hasOwnProperty(option)) continue; var modified = this.modifyOption(sortable, option, sortable.options[option]); if (typeof modified !== 'undefined') { sortable.options[option] = modified; } } }, getEventProperties: function getEventProperties(name, sortable) { var eventProperties = {}; plugins.forEach(function (plugin) { if (typeof plugin.eventProperties !== 'function') return; _extends(eventProperties, plugin.eventProperties.call(sortable[plugin.pluginName], name)); }); return eventProperties; }, modifyOption: function modifyOption(sortable, name, value) { var modifiedValue; plugins.forEach(function (plugin) { // Plugin must exist on the Sortable if (!sortable[plugin.pluginName]) return; // If static option listener exists for this option, call in the context of the Sortable's instance of this plugin if (plugin.optionListeners && typeof plugin.optionListeners[name] === 'function') { modifiedValue = plugin.optionListeners[name].call(sortable[plugin.pluginName], value); } }); return modifiedValue; } }; function dispatchEvent(_ref) { var sortable = _ref.sortable, rootEl = _ref.rootEl, name = _ref.name, targetEl = _ref.targetEl, cloneEl = _ref.cloneEl, toEl = _ref.toEl, fromEl = _ref.fromEl, oldIndex = _ref.oldIndex, newIndex = _ref.newIndex, oldDraggableIndex = _ref.oldDraggableIndex, newDraggableIndex = _ref.newDraggableIndex, originalEvent = _ref.originalEvent, putSortable = _ref.putSortable, extraEventProperties = _ref.extraEventProperties; sortable = sortable || rootEl && rootEl[expando]; if (!sortable) return; var evt, options = sortable.options, onName = 'on' + name.charAt(0).toUpperCase() + name.substr(1); // Support for new CustomEvent feature if (window.CustomEvent && !IE11OrLess && !Edge) { evt = new CustomEvent(name, { bubbles: true, cancelable: true }); } else { evt = document.createEvent('Event'); evt.initEvent(name, true, true); } evt.to = toEl || rootEl; evt.from = fromEl || rootEl; evt.item = targetEl || rootEl; evt.clone = cloneEl; evt.oldIndex = oldIndex; evt.newIndex = newIndex; evt.oldDraggableIndex = oldDraggableIndex; evt.newDraggableIndex = newDraggableIndex; evt.originalEvent = originalEvent; evt.pullMode = putSortable ? putSortable.lastPutMode : undefined; var allEventProperties = _objectSpread({}, extraEventProperties, PluginManager.getEventProperties(name, sortable)); for (var option in allEventProperties) { evt[option] = allEventProperties[option]; } if (rootEl) { rootEl.dispatchEvent(evt); } if (options[onName]) { options[onName].call(sortable, evt); } } var pluginEvent = function pluginEvent(eventName, sortable) { var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, originalEvent = _ref.evt, data = _objectWithoutProperties(_ref, ["evt"]); PluginManager.pluginEvent.bind(Sortable)(eventName, sortable, _objectSpread({ dragEl: dragEl, parentEl: parentEl, ghostEl: ghostEl, rootEl: rootEl, nextEl: nextEl, lastDownEl: lastDownEl, cloneEl: cloneEl, cloneHidden: cloneHidden, dragStarted: moved, putSortable: putSortable, activeSortable: Sortable.active, originalEvent: originalEvent, oldIndex: oldIndex, oldDraggableIndex: oldDraggableIndex, newIndex: newIndex, newDraggableIndex: newDraggableIndex, hideGhostForTarget: _hideGhostForTarget, unhideGhostForTarget: _unhideGhostForTarget, cloneNowHidden: function cloneNowHidden() { cloneHidden = true; }, cloneNowShown: function cloneNowShown() { cloneHidden = false; }, dispatchSortableEvent: function dispatchSortableEvent(name) { _dispatchEvent({ sortable: sortable, name: name, originalEvent: originalEvent }); } }, data)); }; function _dispatchEvent(info) { dispatchEvent(_objectSpread({ putSortable: putSortable, cloneEl: cloneEl, targetEl: dragEl, rootEl: rootEl, oldIndex: oldIndex, oldDraggableIndex: oldDraggableIndex, newIndex: newIndex, newDraggableIndex: newDraggableIndex }, info)); } var dragEl, parentEl, ghostEl, rootEl, nextEl, lastDownEl, cloneEl, cloneHidden, oldIndex, newIndex, oldDraggableIndex, newDraggableIndex, activeGroup, putSortable, awaitingDragStarted = false, ignoreNextClick = false, sortables = [], tapEvt, touchEvt, lastDx, lastDy, tapDistanceLeft, tapDistanceTop, moved, lastTarget, lastDirection, pastFirstInvertThresh = false, isCircumstantialInvert = false, targetMoveDistance, // For positioning ghost absolutely ghostRelativeParent, ghostRelativeParentInitialScroll = [], // (left, top) _silent = false, savedInputChecked = []; /** @const */ var documentExists = typeof document !== 'undefined', PositionGhostAbsolutely = IOS, CSSFloatProperty = Edge || IE11OrLess ? 'cssFloat' : 'float', // This will not pass for IE9, because IE9 DnD only works on anchors supportDraggable = documentExists && !ChromeForAndroid && !IOS && 'draggable' in document.createElement('div'), supportCssPointerEvents = function () { if (!documentExists) return; // false when <= IE11 if (IE11OrLess) { return false; } var el = document.createElement('x'); el.style.cssText = 'pointer-events:auto'; return el.style.pointerEvents === 'auto'; }(), _detectDirection = function _detectDirection(el, options) { var elCSS = css(el), elWidth = parseInt(elCSS.width) - parseInt(elCSS.paddingLeft) - parseInt(elCSS.paddingRight) - parseInt(elCSS.borderLeftWidth) - parseInt(elCSS.borderRightWidth), child1 = getChild(el, 0, options), child2 = getChild(el, 1, options), firstChildCSS = child1 && css(child1), secondChildCSS = child2 && css(child2), firstChildWidth = firstChildCSS && parseInt(firstChildCSS.marginLeft) + parseInt(firstChildCSS.marginRight) + getRect(child1).width, secondChildWidth = secondChildCSS && parseInt(secondChildCSS.marginLeft) + parseInt(secondChildCSS.marginRight) + getRect(child2).width; if (elCSS.display === 'flex') { return elCSS.flexDirection === 'column' || elCSS.flexDirection === 'column-reverse' ? 'vertical' : 'horizontal'; } if (elCSS.display === 'grid') { return elCSS.gridTemplateColumns.split(' ').length <= 1 ? 'vertical' : 'horizontal'; } if (child1 && firstChildCSS["float"] && firstChildCSS["float"] !== 'none') { var touchingSideChild2 = firstChildCSS["float"] === 'left' ? 'left' : 'right'; return child2 && (secondChildCSS.clear === 'both' || secondChildCSS.clear === touchingSideChild2) ? 'vertical' : 'horizontal'; } return child1 && (firstChildCSS.display === 'block' || firstChildCSS.display === 'flex' || firstChildCSS.display === 'table' || firstChildCSS.display === 'grid' || firstChildWidth >= elWidth && elCSS[CSSFloatProperty] === 'none' || child2 && elCSS[CSSFloatProperty] === 'none' && firstChildWidth + secondChildWidth > elWidth) ? 'vertical' : 'horizontal'; }, _dragElInRowColumn = function _dragElInRowColumn(dragRect, targetRect, vertical) { var dragElS1Opp = vertical ? dragRect.left : dragRect.top, dragElS2Opp = vertical ? dragRect.right : dragRect.bottom, dragElOppLength = vertical ? dragRect.width : dragRect.height, targetS1Opp = vertical ? targetRect.left : targetRect.top, targetS2Opp = vertical ? targetRect.right : targetRect.bottom, targetOppLength = vertical ? targetRect.width : targetRect.height; return dragElS1Opp === targetS1Opp || dragElS2Opp === targetS2Opp || dragElS1Opp + dragElOppLength / 2 === targetS1Opp + targetOppLength / 2; }, /** * Detects first nearest empty sortable to X and Y position using emptyInsertThreshold. * @param {Number} x X position * @param {Number} y Y position * @return {HTMLElement} Element of the first found nearest Sortable */ _detectNearestEmptySortable = function _detectNearestEmptySortable(x, y) { var ret; sortables.some(function (sortable) { if (lastChild(sortable)) return; var rect = getRect(sortable), threshold = sortable[expando].options.emptyInsertThreshold, insideHorizontally = x >= rect.left - threshold && x <= rect.right + threshold, insideVertically = y >= rect.top - threshold && y <= rect.bottom + threshold; if (threshold && insideHorizontally && insideVertically) { return ret = sortable; } }); return ret; }, _prepareGroup = function _prepareGroup(options) { function toFn(value, pull) { return function (to, from, dragEl, evt) { var sameGroup = to.options.group.name && from.options.group.name && to.options.group.name === from.options.group.name; if (value == null && (pull || sameGroup)) { // Default pull value // Default pull and put value if same group return true; } else if (value == null || value === false) { return false; } else if (pull && value === 'clone') { return value; } else if (typeof value === 'function') { return toFn(value(to, from, dragEl, evt), pull)(to, from, dragEl, evt); } else { var otherGroup = (pull ? to : from).options.group.name; return value === true || typeof value === 'string' && value === otherGroup || value.join && value.indexOf(otherGroup) > -1; } }; } var group = {}; var originalGroup = options.group; if (!originalGroup || _typeof(originalGroup) != 'object') { originalGroup = { name: originalGroup }; } group.name = originalGroup.name; group.checkPull = toFn(originalGroup.pull, true); group.checkPut = toFn(originalGroup.put); group.revertClone = originalGroup.revertClone; options.group = group; }, _hideGhostForTarget = function _hideGhostForTarget() { if (!supportCssPointerEvents && ghostEl) { css(ghostEl, 'display', 'none'); } }, _unhideGhostForTarget = function _unhideGhostForTarget() { if (!supportCssPointerEvents && ghostEl) { css(ghostEl, 'display', ''); } }; // #1184 fix - Prevent click event on fallback if dragged but item not changed position if (documentExists) { document.addEventListener('click', function (evt) { if (ignoreNextClick) { evt.preventDefault(); evt.stopPropagation && evt.stopPropagation(); evt.stopImmediatePropagation && evt.stopImmediatePropagation(); ignoreNextClick = false; return false; } }, true); } var nearestEmptyInsertDetectEvent = function nearestEmptyInsertDetectEvent(evt) { if (dragEl) { evt = evt.touches ? evt.touches[0] : evt; var nearest = _detectNearestEmptySortable(evt.clientX, evt.clientY); if (nearest) { // Create imitation event var event = {}; for (var i in evt) { if (evt.hasOwnProperty(i)) { event[i] = evt[i]; } } event.target = event.rootEl = nearest; event.preventDefault = void 0; event.stopPropagation = void 0; nearest[expando]._onDragOver(event); } } }; var _checkOutsideTargetEl = function _checkOutsideTargetEl(evt) { if (dragEl) { dragEl.parentNode[expando]._isOutsideThisEl(evt.target); } }; /** * @class Sortable * @param {HTMLElement} el * @param {Object} [options] */ function Sortable(el, options) { if (!(el && el.nodeType && el.nodeType === 1)) { throw "Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(el)); } this.el = el; // root element this.options = options = _extends({}, options); // Export instance el[expando] = this; var defaults = { group: null, sort: true, disabled: false, store: null, handle: null, draggable: /^[uo]l$/i.test(el.nodeName) ? '>li' : '>*', swapThreshold: 1, // percentage; 0 <= x <= 1 invertSwap: false, // invert always invertedSwapThreshold: null, // will be set to same as swapThreshold if default removeCloneOnHide: true, direction: function direction() { return _detectDirection(el, this.options); }, ghostClass: 'sortable-ghost', chosenClass: 'sortable-chosen', dragClass: 'sortable-drag', ignore: 'a, img', filter: null, preventOnFilter: true, animation: 0, easing: null, setData: function setData(dataTransfer, dragEl) { dataTransfer.setData('Text', dragEl.textContent); }, dropBubble: false, dragoverBubble: false, dataIdAttr: 'data-id', delay: 0, delayOnTouchOnly: false, touchStartThreshold: (Number.parseInt ? Number : window).parseInt(window.devicePixelRatio, 10) || 1, forceFallback: false, fallbackClass: 'sortable-fallback', fallbackOnBody: false, fallbackTolerance: 0, fallbackOffset: { x: 0, y: 0 }, supportPointer: Sortable.supportPointer !== false && 'PointerEvent' in window, emptyInsertThreshold: 5 }; PluginManager.initializePlugins(this, el, defaults); // Set default options for (var name in defaults) { !(name in options) && (options[name] = defaults[name]); } _prepareGroup(options); // Bind all private methods for (var fn in this) { if (fn.charAt(0) === '_' && typeof this[fn] === 'function') { this[fn] = this[fn].bind(this); } } // Setup drag mode this.nativeDraggable = options.forceFallback ? false : supportDraggable; if (this.nativeDraggable) { // Touch start threshold cannot be greater than the native dragstart threshold this.options.touchStartThreshold = 1; } // Bind events if (options.supportPointer) { on(el, 'pointerdown', this._onTapStart); } else { on(el, 'mousedown', this._onTapStart); on(el, 'touchstart', this._onTapStart); } if (this.nativeDraggable) { on(el, 'dragover', this); on(el, 'dragenter', this); } sortables.push(this.el); // Restore sorting options.store && options.store.get && this.sort(options.store.get(this) || []); // Add animation state manager _extends(this, AnimationStateManager()); } Sortable.prototype = /** @lends Sortable.prototype */ { constructor: Sortable, _isOutsideThisEl: function _isOutsideThisEl(target) { if (!this.el.contains(target) && target !== this.el) { lastTarget = null; } }, _getDirection: function _getDirection(evt, target) { return typeof this.options.direction === 'function' ? this.options.direction.call(this, evt, target, dragEl) : this.options.direction; }, _onTapStart: function _onTapStart( /** Event|TouchEvent */ evt) { if (!evt.cancelable) return; var _this = this, el = this.el, options = this.options, preventOnFilter = options.preventOnFilter, type = evt.type, touch = evt.touches && evt.touches[0] || evt.pointerType && evt.pointerType === 'touch' && evt, target = (touch || evt).target, originalTarget = evt.target.shadowRoot && (evt.path && evt.path[0] || evt.composedPath && evt.composedPath()[0]) || target, filter = options.filter; _saveInputCheckedState(el); // Don't trigger start event when an element is been dragged, otherwise the evt.oldindex always wrong when set option.group. if (dragEl) { return; } if (/mousedown|pointerdown/.test(type) && evt.button !== 0 || options.disabled) { return; // only left button and enabled } // cancel dnd if original target is content editable if (originalTarget.isContentEditable) { return; } target = closest(target, options.draggable, el, false); if (target && target.animated) { return; } if (lastDownEl === target) { // Ignoring duplicate `down` return; } // Get the index of the dragged element within its parent oldIndex = index(target); oldDraggableIndex = index(target, options.draggable); // Check filter if (typeof filter === 'function') { if (filter.call(this, evt, target, this)) { _dispatchEvent({ sortable: _this, rootEl: originalTarget, name: 'filter', targetEl: target, toEl: el, fromEl: el }); pluginEvent('filter', _this, { evt: evt }); preventOnFilter && evt.cancelable && evt.preventDefault(); return; // cancel dnd } } else if (filter) { filter = filter.split(',').some(function (criteria) { criteria = closest(originalTarget, criteria.trim(), el, false); if (criteria) { _dispatchEvent({ sortable: _this, rootEl: criteria, name: 'filter', targetEl: target, fromEl: el, toEl: el }); pluginEvent('filter', _this, { evt: evt }); return true; } }); if (filter) { preventOnFilter && evt.cancelable && evt.preventDefault(); return; // cancel dnd } } if (options.handle && !closest(originalTarget, options.handle, el, false)) { return; } // Prepare `dragstart` this._prepareDragStart(evt, touch, target); }, _prepareDragStart: function _prepareDragStart( /** Event */ evt, /** Touch */ touch, /** HTMLElement */ target) { var _this = this, el = _this.el, options = _this.options, ownerDocument = el.ownerDocument, dragStartFn; if (target && !dragEl && target.parentNode === el) { var dragRect = getRect(target); rootEl = el; dragEl = target; parentEl = dragEl.parentNode; nextEl = dragEl.nextSibling; lastDownEl = target; activeGroup = options.group; Sortable.dragged = dragEl; tapEvt = { target: dragEl, clientX: (touch || evt).clientX, clientY: (touch || evt).clientY }; tapDistanceLeft = tapEvt.clientX - dragRect.left; tapDistanceTop = tapEvt.clientY - dragRect.top; this._lastX = (touch || evt).clientX; this._lastY = (touch || evt).clientY; dragEl.style['will-change'] = 'all'; dragStartFn = function dragStartFn() { pluginEvent('delayEnded', _this, { evt: evt }); if (Sortable.eventCanceled) { _this._onDrop(); return; } // Delayed drag has been triggered // we can re-enable the events: touchmove/mousemove _this._disableDelayedDragEvents(); if (!FireFox && _this.nativeDraggable) { dragEl.draggable = true; } // Bind the events: dragstart/dragend _this._triggerDragStart(evt, touch); // Drag start event _dispatchEvent({ sortable: _this, name: 'choose', originalEvent: evt }); // Chosen item toggleClass(dragEl, options.chosenClass, true); }; // Disable "draggable" options.ignore.split(',').forEach(function (criteria) { find(dragEl, criteria.trim(), _disableDraggable); }); on(ownerDocument, 'dragover', nearestEmptyInsertDetectEvent); on(ownerDocument, 'mousemove', nearestEmptyInsertDetectEvent); on(ownerDocument, 'touchmove', nearestEmptyInsertDetectEvent); on(ownerDocument, 'mouseup', _this._onDrop); on(ownerDocument, 'touchend', _this._onDrop); on(ownerDocument, 'touchcancel', _this._onDrop); // Make dragEl draggable (must be before delay for FireFox) if (FireFox && this.nativeDraggable) { this.options.touchStartThreshold = 4; dragEl.draggable = true; } pluginEvent('delayStart', this, { evt: evt }); // Delay is impossible for native DnD in Edge or IE if (options.delay && (!options.delayOnTouchOnly || touch) && (!this.nativeDraggable || !(Edge || IE11OrLess))) { if (Sortable.eventCanceled) { this._onDrop(); return; } // If the user moves the pointer or let go the click or touch // before the delay has been reached: // disable the delayed drag on(ownerDocument, 'mouseup', _this._disableDelayedDrag); on(ownerDocument, 'touchend', _this._disableDelayedDrag); on(ownerDocument, 'touchcancel', _this._disableDelayedDrag); on(ownerDocument, 'mousemove', _this._delayedDragTouchMoveHandler); on(ownerDocument, 'touchmove', _this._delayedDragTouchMoveHandler); options.supportPointer && on(ownerDocument, 'pointermove', _this._delayedDragTouchMoveHandler); _this._dragStartTimer = setTimeout(dragStartFn, options.delay); } else { dragStartFn(); } } }, _delayedDragTouchMoveHandler: function _delayedDragTouchMoveHandler( /** TouchEvent|PointerEvent **/ e) { var touch = e.touches ? e.touches[0] : e; if (Math.max(Math.abs(touch.clientX - this._lastX), Math.abs(touch.clientY - this._lastY)) >= Math.floor(this.options.touchStartThreshold / (this.nativeDraggable && window.devicePixelRatio || 1))) { this._disableDelayedDrag(); } }, _disableDelayedDrag: function _disableDelayedDrag() { dragEl && _disableDraggable(dragEl); clearTimeout(this._dragStartTimer); this._disableDelayedDragEvents(); }, _disableDelayedDragEvents: function _disableDelayedDragEvents() { var ownerDocument = this.el.ownerDocument; off(ownerDocument, 'mouseup', this._disableDelayedDrag); off(ownerDocument, 'touchend', this._disableDelayedDrag); off(ownerDocument, 'touchcancel', this._disableDelayedDrag); off(ownerDocument, 'mousemove', this._delayedDragTouchMoveHandler); off(ownerDocument, 'touchmove', this._delayedDragTouchMoveHandler); off(ownerDocument, 'pointermove', this._delayedDragTouchMoveHandler); }, _triggerDragStart: function _triggerDragStart( /** Event */ evt, /** Touch */ touch) { touch = touch || evt.pointerType == 'touch' && evt; if (!this.nativeDraggable || touch) { if (this.options.supportPointer) { on(document, 'pointermove', this._onTouchMove); } else if (touch) { on(document, 'touchmove', this._onTouchMove); } else { on(document, 'mousemove', this._onTouchMove); } } else { on(dragEl, 'dragend', this); on(rootEl, 'dragstart', this._onDragStart); } try { if (document.selection) { // Timeout neccessary for IE9 _nextTick(function () { document.selection.empty(); }); } else { window.getSelection().removeAllRanges(); } } catch (err) {} }, _dragStarted: function _dragStarted(fallback, evt) { awaitingDragStarted = false; if (rootEl && dragEl) { pluginEvent('dragStarted', this, { evt: evt }); if (this.nativeDraggable) { on(document, 'dragover', _checkOutsideTargetEl); } var options = this.options; // Apply effect !fallback && toggleClass(dragEl, options.dragClass, false); toggleClass(dragEl, options.ghostClass, true); Sortable.active = this; fallback && this._appendGhost(); // Drag start event _dispatchEvent({ sortable: this, name: 'start', originalEvent: evt }); } else { this._nulling(); } }, _emulateDragOver: function _emulateDragOver() { if (touchEvt) { this._lastX = touchEvt.clientX; this._lastY = touchEvt.clientY; _hideGhostForTarget(); var target = document.elementFromPoint(touchEvt.clientX, touchEvt.clientY); var parent = target; while (target && target.shadowRoot) { target = target.shadowRoot.elementFromPoint(touchEvt.clientX, touchEvt.clientY); if (target === parent) break; parent = target; } dragEl.parentNode[expando]._isOutsideThisEl(target); if (parent) { do { if (parent[expando]) { var inserted = void 0; inserted = parent[expando]._onDragOver({ clientX: touchEvt.clientX, clientY: touchEvt.clientY, target: target, rootEl: parent }); if (inserted && !this.options.dragoverBubble) { break; } } target = parent; // store last element } /* jshint boss:true */ while (parent = parent.parentNode); } _unhideGhostForTarget(); } }, _onTouchMove: function _onTouchMove( /**TouchEvent*/ evt) { if (tapEvt) { var options = this.options, fallbackTolerance = options.fallbackTolerance, fallbackOffset = options.fallbackOffset, touch = evt.touches ? evt.touches[0] : evt, ghostMatrix = ghostEl && matrix(ghostEl, true), scaleX = ghostEl && ghostMatrix && ghostMatrix.a, scaleY = ghostEl && ghostMatrix && ghostMatrix.d, relativeScrollOffset = PositionGhostAbsolutely && ghostRelativeParent && getRelativeScrollOffset(ghostRelativeParent), dx = (touch.clientX - tapEvt.clientX + fallbackOffset.x) / (scaleX || 1) + (relativeScrollOffset ? relativeScrollOffset[0] - ghostRelativeParentInitialScroll[0] : 0) / (scaleX || 1), dy = (touch.clientY - tapEvt.clientY + fallbackOffset.y) / (scaleY || 1) + (relativeScrollOffset ? relativeScrollOffset[1] - ghostRelativeParentInitialScroll[1] : 0) / (scaleY || 1); // only set the status to dragging, when we are actually dragging if (!Sortable.active && !awaitingDragStarted) { if (fallbackTolerance && Math.max(Math.abs(touch.clientX - this._lastX), Math.abs(touch.clientY - this._lastY)) < fallbackTolerance) { return; } this._onDragStart(evt, true); } if (ghostEl) { if (ghostMatrix) { ghostMatrix.e += dx - (lastDx || 0); ghostMatrix.f += dy - (lastDy || 0); } else { ghostMatrix = { a: 1, b: 0, c: 0, d: 1, e: dx, f: dy }; } var cssMatrix = "matrix(".concat(ghostMatrix.a, ",").concat(ghostMatrix.b, ",").concat(ghostMatrix.c, ",").concat(ghostMatrix.d, ",").concat(ghostMatrix.e, ",").concat(ghostMatrix.f, ")"); css(ghostEl, 'webkitTransform', cssMatrix); css(ghostEl, 'mozTransform', cssMatrix); css(ghostEl, 'msTransform', cssMatrix); css(ghostEl, 'transform', cssMatrix); lastDx = dx; lastDy = dy; touchEvt = touch; } evt.cancelable && evt.preventDefault(); } }, _appendGhost: function _appendGhost() { // Bug if using scale(): https://stackoverflow.com/questions/2637058 // Not being adjusted for if (!ghostEl) { var container = this.options.fallbackOnBody ? document.body : rootEl, rect = getRect(dragEl, true, PositionGhostAbsolutely, true, container), options = this.options; // Position absolutely if (PositionGhostAbsolutely) { // Get relatively positioned parent ghostRelativeParent = container; while (css(ghostRelativeParent, 'position') === 'static' && css(ghostRelativeParent, 'transform') === 'none' && ghostRelativeParent !== document) { ghostRelativeParent = ghostRelativeParent.parentNode; } if (ghostRelativeParent !== document.body && ghostRelativeParent !== document.documentElement) { if (ghostRelativeParent === document) ghostRelativeParent = getWindowScrollingElement(); rect.top += ghostRelativeParent.scrollTop; rect.left += ghostRelativeParent.scrollLeft; } else { ghostRelativeParent = getWindowScrollingElement(); } ghostRelativeParentInitialScroll = getRelativeScrollOffset(ghostRelativeParent); } ghostEl = dragEl.cloneNode(true); toggleClass(ghostEl, options.ghostClass, false); toggleClass(ghostEl, options.fallbackClass, true); toggleClass(ghostEl, options.dragClass, true); css(ghostEl, 'transition', ''); css(ghostEl, 'transform', ''); css(ghostEl, 'box-sizing', 'border-box'); css(ghostEl, 'margin', 0); css(ghostEl, 'top', rect.top); css(ghostEl, 'left', rect.left); css(ghostEl, 'width', rect.width); css(ghostEl, 'height', rect.height); css(ghostEl, 'opacity', '0.8'); css(ghostEl, 'position', PositionGhostAbsolutely ? 'absolute' : 'fixed'); css(ghostEl, 'zIndex', '100000'); css(ghostEl, 'pointerEvents', 'none'); Sortable.ghost = ghostEl; container.appendChild(ghostEl); // Set transform-origin css(ghostEl, 'transform-origin', tapDistanceLeft / parseInt(ghostEl.style.width) * 100 + '% ' + tapDistanceTop / parseInt(ghostEl.style.height) * 100 + '%'); } }, _onDragStart: function _onDragStart( /**Event*/ evt, /**boolean*/ fallback) { var _this = this; var dataTransfer = evt.dataTransfer; var options = _this.options; pluginEvent('dragStart', this, { evt: evt }); if (Sortable.eventCanceled) { this._onDrop(); return; } pluginEvent('setupClone', this); if (!Sortable.eventCanceled) { cloneEl = clone(dragEl); cloneEl.draggable = false; cloneEl.style['will-change'] = ''; this._hideClone(); toggleClass(cloneEl, this.options.chosenClass, false); Sortable.clone = cloneEl; } // #1143: IFrame support workaround _this.cloneId = _nextTick(function () { pluginEvent('clone', _this); if (Sortable.eventCanceled) return; if (!_this.options.removeCloneOnHide) { rootEl.insertBefore(cloneEl, dragEl); } _this._hideClone(); _dispatchEvent({ sortable: _this, name: 'clone' }); }); !fallback && toggleClass(dragEl, options.dragClass, true); // Set proper drop events if (fallback) { ignoreNextClick = true; _this._loopId = setInterval(_this._emulateDragOver, 50); } else { // Undo what was set in _prepareDragStart before drag started off(document, 'mouseup', _this._onDrop); off(document, 'touchend', _this._onDrop); off(document, 'touchcancel', _this._onDrop); if (dataTransfer) { dataTransfer.effectAllowed = 'move'; options.setData && options.setData.call(_this, dataTransfer, dragEl); } on(document, 'drop', _this); // #1276 fix: css(dragEl, 'transform', 'translateZ(0)'); } awaitingDragStarted = true; _this._dragStartId = _nextTick(_this._dragStarted.bind(_this, fallback, evt)); on(document, 'selectstart', _this); moved = true; if (Safari) { css(document.body, 'user-select', 'none'); } }, // Returns true - if no further action is needed (either inserted or another condition) _onDragOver: function _onDragOver( /**Event*/ evt) { var el = this.el, target = evt.target, dragRect, targetRect, revert, options = this.options, group = options.group, activeSortable = Sortable.active, isOwner = activeGroup === group, canSort = options.sort, fromSortable = putSortable || activeSortable, vertical, _this = this, completedFired = false; if (_silent) return; function dragOverEvent(name, extra) { pluginEvent(name, _this, _objectSpread({ evt: evt, isOwner: isOwner, axis: vertical ? 'vertical' : 'horizontal', revert: revert, dragRect: dragRect, targetRect: targetRect, canSort: canSort, fromSortable: fromSortable, target: target, completed: completed, onMove: function onMove(target, after) { return _onMove(rootEl, el, dragEl, dragRect, target, getRect(target), evt, after); }, changed: changed }, extra)); } // Capture animation state function capture() { dragOverEvent('dragOverAnimationCapture'); _this.captureAnimationState(); if (_this !== fromSortable) { fromSortable.captureAnimationState(); } } // Return invocation when dragEl is inserted (or completed) function completed(insertion) { dragOverEvent('dragOverCompleted', { insertion: insertion }); if (insertion) { // Clones must be hidden before folding animation to capture dragRectAbsolute properly if (isOwner) { activeSortable._hideClone(); } else { activeSortable._showClone(_this); } if (_this !== fromSortable) { // Set ghost class to new sortable's ghost class toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : activeSortable.options.ghostClass, false); toggleClass(dragEl, options.ghostClass, true); } if (putSortable !== _this && _this !== Sortable.active) { putSortable = _this; } else if (_this === Sortable.active && putSortable) { putSortable = null; } // Animation if (fromSortable === _this) { _this._ignoreWhileAnimating = target; } _this.animateAll(function () { dragOverEvent('dragOverAnimationComplete'); _this._ignoreWhileAnimating = null; }); if (_this !== fromSortable) { fromSortable.animateAll(); fromSortable._ignoreWhileAnimating = null; } } // Null lastTarget if it is not inside a previously swapped element if (target === dragEl && !dragEl.animated || target === el && !target.animated) { lastTarget = null; } // no bubbling and not fallback if (!options.dragoverBubble && !evt.rootEl && target !== document) { dragEl.parentNode[expando]._isOutsideThisEl(evt.target); // Do not detect for empty insert if already inserted !insertion && nearestEmptyInsertDetectEvent(evt); } !options.dragoverBubble && evt.stopPropagation && evt.stopPropagation(); return completedFired = true; } // Call when dragEl has been inserted function changed() { newIndex = index(dragEl); newDraggableIndex = index(dragEl, options.draggable); _dispatchEvent({ sortable: _this, name: 'change', toEl: el, newIndex: newIndex, newDraggableIndex: newDraggableIndex, originalEvent: evt }); } if (evt.preventDefault !== void 0) { evt.cancelable && evt.preventDefault(); } target = closest(target, options.draggable, el, true); dragOverEvent('dragOver'); if (Sortable.eventCanceled) return completedFired; if (dragEl.contains(evt.target) || target.animated && target.animatingX && target.animatingY || _this._ignoreWhileAnimating === target) { return completed(false); } ignoreNextClick = false; if (activeSortable && !options.disabled && (isOwner ? canSort || (revert = !rootEl.contains(dragEl)) // Reverting item into the original list : putSortable === this || (this.lastPutMode = activeGroup.checkPull(this, activeSortable, dragEl, evt)) && group.checkPut(this, activeSortable, dragEl, evt))) { vertical = this._getDirection(evt, target) === 'vertical'; dragRect = getRect(dragEl); dragOverEvent('dragOverValid'); if (Sortable.eventCanceled) return completedFired; if (revert) { parentEl = rootEl; // actualization capture(); this._hideClone(); dragOverEvent('revert'); if (!Sortable.eventCanceled) { if (nextEl) { rootEl.insertBefore(dragEl, nextEl); } else { rootEl.appendChild(dragEl); } } return completed(true); } var elLastChild = lastChild(el, options.draggable); if (!elLastChild || _ghostIsLast(evt, vertical, this) && !elLastChild.animated) { // If already at end of list: Do not insert if (elLastChild === dragEl) { return completed(false); } // assign target only if condition is true if (elLastChild && el === evt.target) { target = elLastChild; } if (target) { targetRect = getRect(target); } if (_onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, !!target) !== false) { capture(); el.appendChild(dragEl); parentEl = el; // actualization changed(); return completed(true); } } else if (target.parentNode === el) { targetRect = getRect(target); var direction = 0, targetBeforeFirstSwap, differentLevel = dragEl.parentNode !== el, differentRowCol = !_dragElInRowColumn(dragEl.animated && dragEl.toRect || dragRect, target.animated && target.toRect || targetRect, vertical), side1 = vertical ? 'top' : 'left', scrolledPastTop = isScrolledPast(target, 'top', 'top') || isScrolledPast(dragEl, 'top', 'top'), scrollBefore = scrolledPastTop ? scrolledPastTop.scrollTop : void 0; if (lastTarget !== target) { targetBeforeFirstSwap = targetRect[side1]; pastFirstInvertThresh = false; isCircumstantialInvert = !differentRowCol && options.invertSwap || differentLevel; } direction = _getSwapDirection(evt, target, targetRect, vertical, differentRowCol ? 1 : options.swapThreshold, options.invertedSwapThreshold == null ? options.swapThreshold : options.invertedSwapThreshold, isCircumstantialInvert, lastTarget === target); var sibling; if (direction !== 0) { // Check if target is beside dragEl in respective direction (ignoring hidden elements) var dragIndex = index(dragEl); do { dragIndex -= direction; sibling = parentEl.children[dragIndex]; } while (sibling && (css(sibling, 'display') === 'none' || sibling === ghostEl)); } // If dragEl is already beside target: Do not insert if (direction === 0 || sibling === target) { return completed(false); } lastTarget = target; lastDirection = direction; var nextSibling = target.nextElementSibling, after = false; after = direction === 1; var moveVector = _onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, after); if (moveVector !== false) { if (moveVector === 1 || moveVector === -1) { after = moveVector === 1; } _silent = true; setTimeout(_unsilent, 30); capture(); if (after && !nextSibling) { el.appendChild(dragEl); } else { target.parentNode.insertBefore(dragEl, after ? nextSibling : target); } // Undo chrome's scroll adjustment (has no effect on other browsers) if (scrolledPastTop) { scrollBy(scrolledPastTop, 0, scrollBefore - scrolledPastTop.scrollTop); } parentEl = dragEl.parentNode; // actualization // must be done before animation if (targetBeforeFirstSwap !== undefined && !isCircumstantialInvert) { targetMoveDistance = Math.abs(targetBeforeFirstSwap - getRect(target)[side1]); } changed(); return completed(true); } } if (el.contains(dragEl)) { return completed(false); } } return false; }, _ignoreWhileAnimating: null, _offMoveEvents: function _offMoveEvents() { off(document, 'mousemove', this._onTouchMove); off(document, 'touchmove', this._onTouchMove); off(document, 'pointermove', this._onTouchMove); off(document, 'dragover', nearestEmptyInsertDetectEvent); off(document, 'mousemove', nearestEmptyInsertDetectEvent); off(document, 'touchmove', nearestEmptyInsertDetectEvent); }, _offUpEvents: function _offUpEvents() { var ownerDocument = this.el.ownerDocument; off(ownerDocument, 'mouseup', this._onDrop); off(ownerDocument, 'touchend', this._onDrop); off(ownerDocument, 'pointerup', this._onDrop); off(ownerDocument, 'touchcancel', this._onDrop); off(document, 'selectstart', this); }, _onDrop: function _onDrop( /**Event*/ evt) { var el = this.el, options = this.options; // Get the index of the dragged element within its parent newIndex = index(dragEl); newDraggableIndex = index(dragEl, options.draggable); pluginEvent('drop', this, { evt: evt }); parentEl = dragEl && dragEl.parentNode; // Get again after plugin event newIndex = index(dragEl); newDraggableIndex = index(dragEl, options.draggable); if (Sortable.eventCanceled) { this._nulling(); return; } awaitingDragStarted = false; isCircumstantialInvert = false; pastFirstInvertThresh = false; clearInterval(this._loopId); clearTimeout(this._dragStartTimer); _cancelNextTick(this.cloneId); _cancelNextTick(this._dragStartId); // Unbind events if (this.nativeDraggable) { off(document, 'drop', this); off(el, 'dragstart', this._onDragStart); } this._offMoveEvents(); this._offUpEvents(); if (Safari) { css(document.body, 'user-select', ''); } css(dragEl, 'transform', ''); if (evt) { if (moved) { evt.cancelable && evt.preventDefault(); !options.dropBubble && evt.stopPropagation(); } ghostEl && ghostEl.parentNode && ghostEl.parentNode.removeChild(ghostEl); if (rootEl === parentEl || putSortable && putSortable.lastPutMode !== 'clone') { // Remove clone(s) cloneEl && cloneEl.parentNode && cloneEl.parentNode.removeChild(cloneEl); } if (dragEl) { if (this.nativeDraggable) { off(dragEl, 'dragend', this); } _disableDraggable(dragEl); dragEl.style['will-change'] = ''; // Remove classes // ghostClass is added in dragStarted if (moved && !awaitingDragStarted) { toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : this.options.ghostClass, false); } toggleClass(dragEl, this.options.chosenClass, false); // Drag stop event _dispatchEvent({ sortable: this, name: 'unchoose', toEl: parentEl, newIndex: null, newDraggableIndex: null, originalEvent: evt }); if (rootEl !== parentEl) { if (newIndex >= 0) { // Add event _dispatchEvent({ rootEl: parentEl, name: 'add', toEl: parentEl, fromEl: rootEl, originalEvent: evt }); // Remove event _dispatchEvent({ sortable: this, name: 'remove', toEl: parentEl, originalEvent: evt }); // drag from one list and drop into another _dispatchEvent({ rootEl: parentEl, name: 'sort', toEl: parentEl, fromEl: rootEl, originalEvent: evt }); _dispatchEvent({ sortable: this, name: 'sort', toEl: parentEl, originalEvent: evt }); } putSortable && putSortable.save(); } else { if (newIndex !== oldIndex) { if (newIndex >= 0) { // drag & drop within the same list _dispatchEvent({ sortable: this, name: 'update', toEl: parentEl, originalEvent: evt }); _dispatchEvent({ sortable: this, name: 'sort', toEl: parentEl, originalEvent: evt }); } } } if (Sortable.active) { /* jshint eqnull:true */ if (newIndex == null || newIndex === -1) { newIndex = oldIndex; newDraggableIndex = oldDraggableIndex; } _dispatchEvent({ sortable: this, name: 'end', toEl: parentEl, originalEvent: evt }); // Save sorting this.save(); } } } this._nulling(); }, _nulling: function _nulling() { pluginEvent('nulling', this); rootEl = dragEl = parentEl = ghostEl = nextEl = cloneEl = lastDownEl = cloneHidden = tapEvt = touchEvt = moved = newIndex = newDraggableIndex = oldIndex = oldDraggableIndex = lastTarget = lastDirection = putSortable = activeGroup = Sortable.dragged = Sortable.ghost = Sortable.clone = Sortable.active = null; savedInputChecked.forEach(function (el) { el.checked = true; }); savedInputChecked.length = lastDx = lastDy = 0; }, handleEvent: function handleEvent( /**Event*/ evt) { switch (evt.type) { case 'drop': case 'dragend': this._onDrop(evt); break; case 'dragenter': case 'dragover': if (dragEl) { this._onDragOver(evt); _globalDragOver(evt); } break; case 'selectstart': evt.preventDefault(); break; } }, /** * Serializes the item into an array of string. * @returns {String[]} */ toArray: function toArray() { var order = [], el, children = this.el.children, i = 0, n = children.length, options = this.options; for (; i < n; i++) { el = children[i]; if (closest(el, options.draggable, this.el, false)) { order.push(el.getAttribute(options.dataIdAttr) || _generateId(el)); } } return order; }, /** * Sorts the elements according to the array. * @param {String[]} order order of the items */ sort: function sort(order) { var items = {}, rootEl = this.el; this.toArray().forEach(function (id, i) { var el = rootEl.children[i]; if (closest(el, this.options.draggable, rootEl, false)) { items[id] = el; } }, this); order.forEach(function (id) { if (items[id]) { rootEl.removeChild(items[id]); rootEl.appendChild(items[id]); } }); }, /** * Save the current sorting */ save: function save() { var store = this.options.store; store && store.set && store.set(this); }, /** * For each element in the set, get the first element that matches the selector by testing the element itself and traversing up through its ancestors in the DOM tree. * @param {HTMLElement} el * @param {String} [selector] default: `options.draggable` * @returns {HTMLElement|null} */ closest: function closest$1(el, selector) { return closest(el, selector || this.options.draggable, this.el, false); }, /** * Set/get option * @param {string} name * @param {*} [value] * @returns {*} */ option: function option(name, value) { var options = this.options; if (value === void 0) { return options[name]; } else { var modifiedValue = PluginManager.modifyOption(this, name, value); if (typeof modifiedValue !== 'undefined') { options[name] = modifiedValue; } else { options[name] = value; } if (name === 'group') { _prepareGroup(options); } } }, /** * Destroy */ destroy: function destroy() { pluginEvent('destroy', this); var el = this.el; el[expando] = null; off(el, 'mousedown', this._onTapStart); off(el, 'touchstart', this._onTapStart); off(el, 'pointerdown', this._onTapStart); if (this.nativeDraggable) { off(el, 'dragover', this); off(el, 'dragenter', this); } // Remove draggable attributes Array.prototype.forEach.call(el.querySelectorAll('[draggable]'), function (el) { el.removeAttribute('draggable'); }); this._onDrop(); this._disableDelayedDragEvents(); sortables.splice(sortables.indexOf(this.el), 1); this.el = el = null; }, _hideClone: function _hideClone() { if (!cloneHidden) { pluginEvent('hideClone', this); if (Sortable.eventCanceled) return; css(cloneEl, 'display', 'none'); if (this.options.removeCloneOnHide && cloneEl.parentNode) { cloneEl.parentNode.removeChild(cloneEl); } cloneHidden = true; } }, _showClone: function _showClone(putSortable) { if (putSortable.lastPutMode !== 'clone') { this._hideClone(); return; } if (cloneHidden) { pluginEvent('showClone', this); if (Sortable.eventCanceled) return; // show clone at dragEl or original position if (rootEl.contains(dragEl) && !this.options.group.revertClone) { rootEl.insertBefore(cloneEl, dragEl); } else if (nextEl) { rootEl.insertBefore(cloneEl, nextEl); } else { rootEl.appendChild(cloneEl); } if (this.options.group.revertClone) { this.animate(dragEl, cloneEl); } css(cloneEl, 'display', ''); cloneHidden = false; } } }; function _globalDragOver( /**Event*/ evt) { if (evt.dataTransfer) { evt.dataTransfer.dropEffect = 'move'; } evt.cancelable && evt.preventDefault(); } function _onMove(fromEl, toEl, dragEl, dragRect, targetEl, targetRect, originalEvent, willInsertAfter) { var evt, sortable = fromEl[expando], onMoveFn = sortable.options.onMove, retVal; // Support for new CustomEvent feature if (window.CustomEvent && !IE11OrLess && !Edge) { evt = new CustomEvent('move', { bubbles: true, cancelable: true }); } else { evt = document.createEvent('Event'); evt.initEvent('move', true, true); } evt.to = toEl; evt.from = fromEl; evt.dragged = dragEl; evt.draggedRect = dragRect; evt.related = targetEl || toEl; evt.relatedRect = targetRect || getRect(toEl); evt.willInsertAfter = willInsertAfter; evt.originalEvent = originalEvent; fromEl.dispatchEvent(evt); if (onMoveFn) { retVal = onMoveFn.call(sortable, evt, originalEvent); } return retVal; } function _disableDraggable(el) { el.draggable = false; } function _unsilent() { _silent = false; } function _ghostIsLast(evt, vertical, sortable) { var rect = getRect(lastChild(sortable.el, sortable.options.draggable)); var spacer = 10; return vertical ? evt.clientX > rect.right + spacer || evt.clientX <= rect.right && evt.clientY > rect.bottom && evt.clientX >= rect.left : evt.clientX > rect.right && evt.clientY > rect.top || evt.clientX <= rect.right && evt.clientY > rect.bottom + spacer; } function _getSwapDirection(evt, target, targetRect, vertical, swapThreshold, invertedSwapThreshold, invertSwap, isLastTarget) { var mouseOnAxis = vertical ? evt.clientY : evt.clientX, targetLength = vertical ? targetRect.height : targetRect.width, targetS1 = vertical ? targetRect.top : targetRect.left, targetS2 = vertical ? targetRect.bottom : targetRect.right, invert = false; if (!invertSwap) { // Never invert or create dragEl shadow when target movemenet causes mouse to move past the end of regular swapThreshold if (isLastTarget && targetMoveDistance < targetLength * swapThreshold) { // multiplied only by swapThreshold because mouse will already be inside target by (1 - threshold) * targetLength / 2 // check if past first invert threshold on side opposite of lastDirection if (!pastFirstInvertThresh && (lastDirection === 1 ? mouseOnAxis > targetS1 + targetLength * invertedSwapThreshold / 2 : mouseOnAxis < targetS2 - targetLength * invertedSwapThreshold / 2)) { // past first invert threshold, do not restrict inverted threshold to dragEl shadow pastFirstInvertThresh = true; } if (!pastFirstInvertThresh) { // dragEl shadow (target move distance shadow) if (lastDirection === 1 ? mouseOnAxis < targetS1 + targetMoveDistance // over dragEl shadow : mouseOnAxis > targetS2 - targetMoveDistance) { return -lastDirection; } } else { invert = true; } } else { // Regular if (mouseOnAxis > targetS1 + targetLength * (1 - swapThreshold) / 2 && mouseOnAxis < targetS2 - targetLength * (1 - swapThreshold) / 2) { return _getInsertDirection(target); } } } invert = invert || invertSwap; if (invert) { // Invert of regular if (mouseOnAxis < targetS1 + targetLength * invertedSwapThreshold / 2 || mouseOnAxis > targetS2 - targetLength * invertedSwapThreshold / 2) { return mouseOnAxis > targetS1 + targetLength / 2 ? 1 : -1; } } return 0; } /** * Gets the direction dragEl must be swapped relative to target in order to make it * seem that dragEl has been "inserted" into that element's position * @param {HTMLElement} target The target whose position dragEl is being inserted at * @return {Number} Direction dragEl must be swapped */ function _getInsertDirection(target) { if (index(dragEl) < index(target)) { return 1; } else { return -1; } } /** * Generate id * @param {HTMLElement} el * @returns {String} * @private */ function _generateId(el) { var str = el.tagName + el.className + el.src + el.href + el.textContent, i = str.length, sum = 0; while (i--) { sum += str.charCodeAt(i); } return sum.toString(36); } function _saveInputCheckedState(root) { savedInputChecked.length = 0; var inputs = root.getElementsByTagName('input'); var idx = inputs.length; while (idx--) { var el = inputs[idx]; el.checked && savedInputChecked.push(el); } } function _nextTick(fn) { return setTimeout(fn, 0); } function _cancelNextTick(id) { return clearTimeout(id); } // Fixed #973: if (documentExists) { on(document, 'touchmove', function (evt) { if ((Sortable.active || awaitingDragStarted) && evt.cancelable) { evt.preventDefault(); } }); } // Export utils Sortable.utils = { on: on, off: off, css: css, find: find, is: function is(el, selector) { return !!closest(el, selector, el, false); }, extend: extend, throttle: throttle, closest: closest, toggleClass: toggleClass, clone: clone, index: index, nextTick: _nextTick, cancelNextTick: _cancelNextTick, detectDirection: _detectDirection, getChild: getChild }; /** * Get the Sortable instance of an element * @param {HTMLElement} element The element * @return {Sortable|undefined} The instance of Sortable */ Sortable.get = function (element) { return element[expando]; }; /** * Mount a plugin to Sortable * @param {...SortablePlugin|SortablePlugin[]} plugins Plugins being mounted */ Sortable.mount = function () { for (var _len = arguments.length, plugins = new Array(_len), _key = 0; _key < _len; _key++) { plugins[_key] = arguments[_key]; } if (plugins[0].constructor === Array) plugins = plugins[0]; plugins.forEach(function (plugin) { if (!plugin.prototype || !plugin.prototype.constructor) { throw "Sortable: Mounted plugin must be a constructor function, not ".concat({}.toString.call(plugin)); } if (plugin.utils) Sortable.utils = _objectSpread({}, Sortable.utils, plugin.utils); PluginManager.mount(plugin); }); }; /** * Create sortable instance * @param {HTMLElement} el * @param {Object} [options] */ Sortable.create = function (el, options) { return new Sortable(el, options); }; // Export Sortable.version = version; var autoScrolls = [], scrollEl, scrollRootEl, scrolling = false, lastAutoScrollX, lastAutoScrollY, touchEvt$1, pointerElemChangedInterval; function AutoScrollPlugin() { function AutoScroll() { this.defaults = { scroll: true, scrollSensitivity: 30, scrollSpeed: 10, bubbleScroll: true }; // Bind all private methods for (var fn in this) { if (fn.charAt(0) === '_' && typeof this[fn] === 'function') { this[fn] = this[fn].bind(this); } } } AutoScroll.prototype = { dragStarted: function dragStarted(_ref) { var originalEvent = _ref.originalEvent; if (this.sortable.nativeDraggable) { on(document, 'dragover', this._handleAutoScroll); } else { if (this.options.supportPointer) { on(document, 'pointermove', this._handleFallbackAutoScroll); } else if (originalEvent.touches) { on(document, 'touchmove', this._handleFallbackAutoScroll); } else { on(document, 'mousemove', this._handleFallbackAutoScroll); } } }, dragOverCompleted: function dragOverCompleted(_ref2) { var originalEvent = _ref2.originalEvent; // For when bubbling is canceled and using fallback (fallback 'touchmove' always reached) if (!this.options.dragOverBubble && !originalEvent.rootEl) { this._handleAutoScroll(originalEvent); } }, drop: function drop() { if (this.sortable.nativeDraggable) { off(document, 'dragover', this._handleAutoScroll); } else { off(document, 'pointermove', this._handleFallbackAutoScroll); off(document, 'touchmove', this._handleFallbackAutoScroll); off(document, 'mousemove', this._handleFallbackAutoScroll); } clearPointerElemChangedInterval(); clearAutoScrolls(); cancelThrottle(); }, nulling: function nulling() { touchEvt$1 = scrollRootEl = scrollEl = scrolling = pointerElemChangedInterval = lastAutoScrollX = lastAutoScrollY = null; autoScrolls.length = 0; }, _handleFallbackAutoScroll: function _handleFallbackAutoScroll(evt) { this._handleAutoScroll(evt, true); }, _handleAutoScroll: function _handleAutoScroll(evt, fallback) { var _this = this; var x = (evt.touches ? evt.touches[0] : evt).clientX, y = (evt.touches ? evt.touches[0] : evt).clientY, elem = document.elementFromPoint(x, y); touchEvt$1 = evt; // IE does not seem to have native autoscroll, // Edge's autoscroll seems too conditional, // MACOS Safari does not have autoscroll, // Firefox and Chrome are good if (fallback || Edge || IE11OrLess || Safari) { autoScroll(evt, this.options, elem, fallback); // Listener for pointer element change var ogElemScroller = getParentAutoScrollElement(elem, true); if (scrolling && (!pointerElemChangedInterval || x !== lastAutoScrollX || y !== lastAutoScrollY)) { pointerElemChangedInterval && clearPointerElemChangedInterval(); // Detect for pointer elem change, emulating native DnD behaviour pointerElemChangedInterval = setInterval(function () { var newElem = getParentAutoScrollElement(document.elementFromPoint(x, y), true); if (newElem !== ogElemScroller) { ogElemScroller = newElem; clearAutoScrolls(); } autoScroll(evt, _this.options, newElem, fallback); }, 10); lastAutoScrollX = x; lastAutoScrollY = y; } } else { // if DnD is enabled (and browser has good autoscrolling), first autoscroll will already scroll, so get parent autoscroll of first autoscroll if (!this.options.bubbleScroll || getParentAutoScrollElement(elem, true) === getWindowScrollingElement()) { clearAutoScrolls(); return; } autoScroll(evt, this.options, getParentAutoScrollElement(elem, false), false); } } }; return _extends(AutoScroll, { pluginName: 'scroll', initializeByDefault: true }); } function clearAutoScrolls() { autoScrolls.forEach(function (autoScroll) { clearInterval(autoScroll.pid); }); autoScrolls = []; } function clearPointerElemChangedInterval() { clearInterval(pointerElemChangedInterval); } var autoScroll = throttle(function (evt, options, rootEl, isFallback) { // Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=505521 if (!options.scroll) return; var x = (evt.touches ? evt.touches[0] : evt).clientX, y = (evt.touches ? evt.touches[0] : evt).clientY, sens = options.scrollSensitivity, speed = options.scrollSpeed, winScroller = getWindowScrollingElement(); var scrollThisInstance = false, scrollCustomFn; // New scroll root, set scrollEl if (scrollRootEl !== rootEl) { scrollRootEl = rootEl; clearAutoScrolls(); scrollEl = options.scroll; scrollCustomFn = options.scrollFn; if (scrollEl === true) { scrollEl = getParentAutoScrollElement(rootEl, true); } } var layersOut = 0; var currentParent = scrollEl; do { var el = currentParent, rect = getRect(el), top = rect.top, bottom = rect.bottom, left = rect.left, right = rect.right, width = rect.width, height = rect.height, canScrollX = void 0, canScrollY = void 0, scrollWidth = el.scrollWidth, scrollHeight = el.scrollHeight, elCSS = css(el), scrollPosX = el.scrollLeft, scrollPosY = el.scrollTop; if (el === winScroller) { canScrollX = width < scrollWidth && (elCSS.overflowX === 'auto' || elCSS.overflowX === 'scroll' || elCSS.overflowX === 'visible'); canScrollY = height < scrollHeight && (elCSS.overflowY === 'auto' || elCSS.overflowY === 'scroll' || elCSS.overflowY === 'visible'); } else { canScrollX = width < scrollWidth && (elCSS.overflowX === 'auto' || elCSS.overflowX === 'scroll'); canScrollY = height < scrollHeight && (elCSS.overflowY === 'auto' || elCSS.overflowY === 'scroll'); } var vx = canScrollX && (Math.abs(right - x) <= sens && scrollPosX + width < scrollWidth) - (Math.abs(left - x) <= sens && !!scrollPosX); var vy = canScrollY && (Math.abs(bottom - y) <= sens && scrollPosY + height < scrollHeight) - (Math.abs(top - y) <= sens && !!scrollPosY); if (!autoScrolls[layersOut]) { for (var i = 0; i <= layersOut; i++) { if (!autoScrolls[i]) { autoScrolls[i] = {}; } } } if (autoScrolls[layersOut].vx != vx || autoScrolls[layersOut].vy != vy || autoScrolls[layersOut].el !== el) { autoScrolls[layersOut].el = el; autoScrolls[layersOut].vx = vx; autoScrolls[layersOut].vy = vy; clearInterval(autoScrolls[layersOut].pid); if (vx != 0 || vy != 0) { scrollThisInstance = true; /* jshint loopfunc:true */ autoScrolls[layersOut].pid = setInterval(function () { // emulate drag over during autoscroll (fallback), emulating native DnD behaviour if (isFallback && this.layer === 0) { Sortable.active._onTouchMove(touchEvt$1); // To move ghost if it is positioned absolutely } var scrollOffsetY = autoScrolls[this.layer].vy ? autoScrolls[this.layer].vy * speed : 0; var scrollOffsetX = autoScrolls[this.layer].vx ? autoScrolls[this.layer].vx * speed : 0; if (typeof scrollCustomFn === 'function') { if (scrollCustomFn.call(Sortable.dragged.parentNode[expando], scrollOffsetX, scrollOffsetY, evt, touchEvt$1, autoScrolls[this.layer].el) !== 'continue') { return; } } scrollBy(autoScrolls[this.layer].el, scrollOffsetX, scrollOffsetY); }.bind({ layer: layersOut }), 24); } } layersOut++; } while (options.bubbleScroll && currentParent !== winScroller && (currentParent = getParentAutoScrollElement(currentParent, false))); scrolling = scrollThisInstance; // in case another function catches scrolling as false in between when it is not }, 30); var drop = function drop(_ref) { var originalEvent = _ref.originalEvent, putSortable = _ref.putSortable, dragEl = _ref.dragEl, activeSortable = _ref.activeSortable, dispatchSortableEvent = _ref.dispatchSortableEvent, hideGhostForTarget = _ref.hideGhostForTarget, unhideGhostForTarget = _ref.unhideGhostForTarget; if (!originalEvent) return; var toSortable = putSortable || activeSortable; hideGhostForTarget(); var touch = originalEvent.changedTouches && originalEvent.changedTouches.length ? originalEvent.changedTouches[0] : originalEvent; var target = document.elementFromPoint(touch.clientX, touch.clientY); unhideGhostForTarget(); if (toSortable && !toSortable.el.contains(target)) { dispatchSortableEvent('spill'); this.onSpill({ dragEl: dragEl, putSortable: putSortable }); } }; function Revert() {} Revert.prototype = { startIndex: null, dragStart: function dragStart(_ref2) { var oldDraggableIndex = _ref2.oldDraggableIndex; this.startIndex = oldDraggableIndex; }, onSpill: function onSpill(_ref3) { var dragEl = _ref3.dragEl, putSortable = _ref3.putSortable; this.sortable.captureAnimationState(); if (putSortable) { putSortable.captureAnimationState(); } var nextSibling = getChild(this.sortable.el, this.startIndex, this.options); if (nextSibling) { this.sortable.el.insertBefore(dragEl, nextSibling); } else { this.sortable.el.appendChild(dragEl); } this.sortable.animateAll(); if (putSortable) { putSortable.animateAll(); } }, drop: drop }; _extends(Revert, { pluginName: 'revertOnSpill' }); function Remove() {} Remove.prototype = { onSpill: function onSpill(_ref4) { var dragEl = _ref4.dragEl, putSortable = _ref4.putSortable; var parentSortable = putSortable || this.sortable; parentSortable.captureAnimationState(); dragEl.parentNode && dragEl.parentNode.removeChild(dragEl); parentSortable.animateAll(); }, drop: drop }; _extends(Remove, { pluginName: 'removeOnSpill' }); var lastSwapEl; function SwapPlugin() { function Swap() { this.defaults = { swapClass: 'sortable-swap-highlight' }; } Swap.prototype = { dragStart: function dragStart(_ref) { var dragEl = _ref.dragEl; lastSwapEl = dragEl; }, dragOverValid: function dragOverValid(_ref2) { var completed = _ref2.completed, target = _ref2.target, onMove = _ref2.onMove, activeSortable = _ref2.activeSortable, changed = _ref2.changed, cancel = _ref2.cancel; if (!activeSortable.options.swap) return; var el = this.sortable.el, options = this.options; if (target && target !== el) { var prevSwapEl = lastSwapEl; if (onMove(target) !== false) { toggleClass(target, options.swapClass, true); lastSwapEl = target; } else { lastSwapEl = null; } if (prevSwapEl && prevSwapEl !== lastSwapEl) { toggleClass(prevSwapEl, options.swapClass, false); } } changed(); completed(true); cancel(); }, drop: function drop(_ref3) { var activeSortable = _ref3.activeSortable, putSortable = _ref3.putSortable, dragEl = _ref3.dragEl; var toSortable = putSortable || this.sortable; var options = this.options; lastSwapEl && toggleClass(lastSwapEl, options.swapClass, false); if (lastSwapEl && (options.swap || putSortable && putSortable.options.swap)) { if (dragEl !== lastSwapEl) { toSortable.captureAnimationState(); if (toSortable !== activeSortable) activeSortable.captureAnimationState(); swapNodes(dragEl, lastSwapEl); toSortable.animateAll(); if (toSortable !== activeSortable) activeSortable.animateAll(); } } }, nulling: function nulling() { lastSwapEl = null; } }; return _extends(Swap, { pluginName: 'swap', eventProperties: function eventProperties() { return { swapItem: lastSwapEl }; } }); } function swapNodes(n1, n2) { var p1 = n1.parentNode, p2 = n2.parentNode, i1, i2; if (!p1 || !p2 || p1.isEqualNode(n2) || p2.isEqualNode(n1)) return; i1 = index(n1); i2 = index(n2); if (p1.isEqualNode(p2) && i1 < i2) { i2++; } p1.insertBefore(n2, p1.children[i1]); p2.insertBefore(n1, p2.children[i2]); } var multiDragElements = [], multiDragClones = [], lastMultiDragSelect, // for selection with modifier key down (SHIFT) multiDragSortable, initialFolding = false, // Initial multi-drag fold when drag started folding = false, // Folding any other time dragStarted = false, dragEl$1, clonesFromRect, clonesHidden; function MultiDragPlugin() { function MultiDrag(sortable) { // Bind all private methods for (var fn in this) { if (fn.charAt(0) === '_' && typeof this[fn] === 'function') { this[fn] = this[fn].bind(this); } } if (sortable.options.supportPointer) { on(document, 'pointerup', this._deselectMultiDrag); } else { on(document, 'mouseup', this._deselectMultiDrag); on(document, 'touchend', this._deselectMultiDrag); } on(document, 'keydown', this._checkKeyDown); on(document, 'keyup', this._checkKeyUp); this.defaults = { selectedClass: 'sortable-selected', multiDragKey: null, setData: function setData(dataTransfer, dragEl) { var data = ''; if (multiDragElements.length && multiDragSortable === sortable) { multiDragElements.forEach(function (multiDragElement, i) { data += (!i ? '' : ', ') + multiDragElement.textContent; }); } else { data = dragEl.textContent; } dataTransfer.setData('Text', data); } }; } MultiDrag.prototype = { multiDragKeyDown: false, isMultiDrag: false, delayStartGlobal: function delayStartGlobal(_ref) { var dragged = _ref.dragEl; dragEl$1 = dragged; }, delayEnded: function delayEnded() { this.isMultiDrag = ~multiDragElements.indexOf(dragEl$1); }, setupClone: function setupClone(_ref2) { var sortable = _ref2.sortable, cancel = _ref2.cancel; if (!this.isMultiDrag) return; for (var i = 0; i < multiDragElements.length; i++) { multiDragClones.push(clone(multiDragElements[i])); multiDragClones[i].sortableIndex = multiDragElements[i].sortableIndex; multiDragClones[i].draggable = false; multiDragClones[i].style['will-change'] = ''; toggleClass(multiDragClones[i], this.options.selectedClass, false); multiDragElements[i] === dragEl$1 && toggleClass(multiDragClones[i], this.options.chosenClass, false); } sortable._hideClone(); cancel(); }, clone: function clone(_ref3) { var sortable = _ref3.sortable, rootEl = _ref3.rootEl, dispatchSortableEvent = _ref3.dispatchSortableEvent, cancel = _ref3.cancel; if (!this.isMultiDrag) return; if (!this.options.removeCloneOnHide) { if (multiDragElements.length && multiDragSortable === sortable) { insertMultiDragClones(true, rootEl); dispatchSortableEvent('clone'); cancel(); } } }, showClone: function showClone(_ref4) { var cloneNowShown = _ref4.cloneNowShown, rootEl = _ref4.rootEl, cancel = _ref4.cancel; if (!this.isMultiDrag) return; insertMultiDragClones(false, rootEl); multiDragClones.forEach(function (clone) { css(clone, 'display', ''); }); cloneNowShown(); clonesHidden = false; cancel(); }, hideClone: function hideClone(_ref5) { var _this = this; var sortable = _ref5.sortable, cloneNowHidden = _ref5.cloneNowHidden, cancel = _ref5.cancel; if (!this.isMultiDrag) return; multiDragClones.forEach(function (clone) { css(clone, 'display', 'none'); if (_this.options.removeCloneOnHide && clone.parentNode) { clone.parentNode.removeChild(clone); } }); cloneNowHidden(); clonesHidden = true; cancel(); }, dragStartGlobal: function dragStartGlobal(_ref6) { var sortable = _ref6.sortable; if (!this.isMultiDrag && multiDragSortable) { multiDragSortable.multiDrag._deselectMultiDrag(); } multiDragElements.forEach(function (multiDragElement) { multiDragElement.sortableIndex = index(multiDragElement); }); // Sort multi-drag elements multiDragElements = multiDragElements.sort(function (a, b) { return a.sortableIndex - b.sortableIndex; }); dragStarted = true; }, dragStarted: function dragStarted(_ref7) { var _this2 = this; var sortable = _ref7.sortable; if (!this.isMultiDrag) return; if (this.options.sort) { // Capture rects, // hide multi drag elements (by positioning them absolute), // set multi drag elements rects to dragRect, // show multi drag elements, // animate to rects, // unset rects & remove from DOM sortable.captureAnimationState(); if (this.options.animation) { multiDragElements.forEach(function (multiDragElement) { if (multiDragElement === dragEl$1) return; css(multiDragElement, 'position', 'absolute'); }); var dragRect = getRect(dragEl$1, false, true, true); multiDragElements.forEach(function (multiDragElement) { if (multiDragElement === dragEl$1) return; setRect(multiDragElement, dragRect); }); folding = true; initialFolding = true; } } sortable.animateAll(function () { folding = false; initialFolding = false; if (_this2.options.animation) { multiDragElements.forEach(function (multiDragElement) { unsetRect(multiDragElement); }); } // Remove all auxiliary multidrag items from el, if sorting enabled if (_this2.options.sort) { removeMultiDragElements(); } }); }, dragOver: function dragOver(_ref8) { var target = _ref8.target, completed = _ref8.completed, cancel = _ref8.cancel; if (folding && ~multiDragElements.indexOf(target)) { completed(false); cancel(); } }, revert: function revert(_ref9) { var fromSortable = _ref9.fromSortable, rootEl = _ref9.rootEl, sortable = _ref9.sortable, dragRect = _ref9.dragRect; if (multiDragElements.length > 1) { // Setup unfold animation multiDragElements.forEach(function (multiDragElement) { sortable.addAnimationState({ target: multiDragElement, rect: folding ? getRect(multiDragElement) : dragRect }); unsetRect(multiDragElement); multiDragElement.fromRect = dragRect; fromSortable.removeAnimationState(multiDragElement); }); folding = false; insertMultiDragElements(!this.options.removeCloneOnHide, rootEl); } }, dragOverCompleted: function dragOverCompleted(_ref10) { var sortable = _ref10.sortable, isOwner = _ref10.isOwner, insertion = _ref10.insertion, activeSortable = _ref10.activeSortable, parentEl = _ref10.parentEl, putSortable = _ref10.putSortable; var options = this.options; if (insertion) { // Clones must be hidden before folding animation to capture dragRectAbsolute properly if (isOwner) { activeSortable._hideClone(); } initialFolding = false; // If leaving sort:false root, or already folding - Fold to new location if (options.animation && multiDragElements.length > 1 && (folding || !isOwner && !activeSortable.options.sort && !putSortable)) { // Fold: Set all multi drag elements's rects to dragEl's rect when multi-drag elements are invisible var dragRectAbsolute = getRect(dragEl$1, false, true, true); multiDragElements.forEach(function (multiDragElement) { if (multiDragElement === dragEl$1) return; setRect(multiDragElement, dragRectAbsolute); // Move element(s) to end of parentEl so that it does not interfere with multi-drag clones insertion if they are inserted // while folding, and so that we can capture them again because old sortable will no longer be fromSortable parentEl.appendChild(multiDragElement); }); folding = true; } // Clones must be shown (and check to remove multi drags) after folding when interfering multiDragElements are moved out if (!isOwner) { // Only remove if not folding (folding will remove them anyways) if (!folding) { removeMultiDragElements(); } if (multiDragElements.length > 1) { var clonesHiddenBefore = clonesHidden; activeSortable._showClone(sortable); // Unfold animation for clones if showing from hidden if (activeSortable.options.animation && !clonesHidden && clonesHiddenBefore) { multiDragClones.forEach(function (clone) { activeSortable.addAnimationState({ target: clone, rect: clonesFromRect }); clone.fromRect = clonesFromRect; clone.thisAnimationDuration = null; }); } } else { activeSortable._showClone(sortable); } } } }, dragOverAnimationCapture: function dragOverAnimationCapture(_ref11) { var dragRect = _ref11.dragRect, isOwner = _ref11.isOwner, activeSortable = _ref11.activeSortable; multiDragElements.forEach(function (multiDragElement) { multiDragElement.thisAnimationDuration = null; }); if (activeSortable.options.animation && !isOwner && activeSortable.multiDrag.isMultiDrag) { clonesFromRect = _extends({}, dragRect); var dragMatrix = matrix(dragEl$1, true); clonesFromRect.top -= dragMatrix.f; clonesFromRect.left -= dragMatrix.e; } }, dragOverAnimationComplete: function dragOverAnimationComplete() { if (folding) { folding = false; removeMultiDragElements(); } }, drop: function drop(_ref12) { var evt = _ref12.originalEvent, rootEl = _ref12.rootEl, parentEl = _ref12.parentEl, sortable = _ref12.sortable, dispatchSortableEvent = _ref12.dispatchSortableEvent, oldIndex = _ref12.oldIndex, putSortable = _ref12.putSortable; var toSortable = putSortable || this.sortable; if (!evt) return; var options = this.options, children = parentEl.children; // Multi-drag selection if (!dragStarted) { if (options.multiDragKey && !this.multiDragKeyDown) { this._deselectMultiDrag(); } toggleClass(dragEl$1, options.selectedClass, !~multiDragElements.indexOf(dragEl$1)); if (!~multiDragElements.indexOf(dragEl$1)) { multiDragElements.push(dragEl$1); dispatchEvent({ sortable: sortable, rootEl: rootEl, name: 'select', targetEl: dragEl$1, originalEvt: evt }); // Modifier activated, select from last to dragEl if (evt.shiftKey && lastMultiDragSelect && sortable.el.contains(lastMultiDragSelect)) { var lastIndex = index(lastMultiDragSelect), currentIndex = index(dragEl$1); if (~lastIndex && ~currentIndex && lastIndex !== currentIndex) { // Must include lastMultiDragSelect (select it), in case modified selection from no selection // (but previous selection existed) var n, i; if (currentIndex > lastIndex) { i = lastIndex; n = currentIndex; } else { i = currentIndex; n = lastIndex + 1; } for (; i < n; i++) { if (~multiDragElements.indexOf(children[i])) continue; toggleClass(children[i], options.selectedClass, true); multiDragElements.push(children[i]); dispatchEvent({ sortable: sortable, rootEl: rootEl, name: 'select', targetEl: children[i], originalEvt: evt }); } } } else { lastMultiDragSelect = dragEl$1; } multiDragSortable = toSortable; } else { multiDragElements.splice(multiDragElements.indexOf(dragEl$1), 1); lastMultiDragSelect = null; dispatchEvent({ sortable: sortable, rootEl: rootEl, name: 'deselect', targetEl: dragEl$1, originalEvt: evt }); } } // Multi-drag drop if (dragStarted && this.isMultiDrag) { // Do not "unfold" after around dragEl if reverted if ((parentEl[expando].options.sort || parentEl !== rootEl) && multiDragElements.length > 1) { var dragRect = getRect(dragEl$1), multiDragIndex = index(dragEl$1, ':not(.' + this.options.selectedClass + ')'); if (!initialFolding && options.animation) dragEl$1.thisAnimationDuration = null; toSortable.captureAnimationState(); if (!initialFolding) { if (options.animation) { dragEl$1.fromRect = dragRect; multiDragElements.forEach(function (multiDragElement) { multiDragElement.thisAnimationDuration = null; if (multiDragElement !== dragEl$1) { var rect = folding ? getRect(multiDragElement) : dragRect; multiDragElement.fromRect = rect; // Prepare unfold animation toSortable.addAnimationState({ target: multiDragElement, rect: rect }); } }); } // Multi drag elements are not necessarily removed from the DOM on drop, so to reinsert // properly they must all be removed removeMultiDragElements(); multiDragElements.forEach(function (multiDragElement) { if (children[multiDragIndex]) { parentEl.insertBefore(multiDragElement, children[multiDragIndex]); } else { parentEl.appendChild(multiDragElement); } multiDragIndex++; }); // If initial folding is done, the elements may have changed position because they are now // unfolding around dragEl, even though dragEl may not have his index changed, so update event // must be fired here as Sortable will not. if (oldIndex === index(dragEl$1)) { var update = false; multiDragElements.forEach(function (multiDragElement) { if (multiDragElement.sortableIndex !== index(multiDragElement)) { update = true; return; } }); if (update) { dispatchSortableEvent('update'); } } } // Must be done after capturing individual rects (scroll bar) multiDragElements.forEach(function (multiDragElement) { unsetRect(multiDragElement); }); toSortable.animateAll(); } multiDragSortable = toSortable; } // Remove clones if necessary if (rootEl === parentEl || putSortable && putSortable.lastPutMode !== 'clone') { multiDragClones.forEach(function (clone) { clone.parentNode && clone.parentNode.removeChild(clone); }); } }, nullingGlobal: function nullingGlobal() { this.isMultiDrag = dragStarted = false; multiDragClones.length = 0; }, destroyGlobal: function destroyGlobal() { this._deselectMultiDrag(); off(document, 'pointerup', this._deselectMultiDrag); off(document, 'mouseup', this._deselectMultiDrag); off(document, 'touchend', this._deselectMultiDrag); off(document, 'keydown', this._checkKeyDown); off(document, 'keyup', this._checkKeyUp); }, _deselectMultiDrag: function _deselectMultiDrag(evt) { if (typeof dragStarted !== "undefined" && dragStarted) return; // Only deselect if selection is in this sortable if (multiDragSortable !== this.sortable) return; // Only deselect if target is not item in this sortable if (evt && closest(evt.target, this.options.draggable, this.sortable.el, false)) return; // Only deselect if left click if (evt && evt.button !== 0) return; while (multiDragElements.length) { var el = multiDragElements[0]; toggleClass(el, this.options.selectedClass, false); multiDragElements.shift(); dispatchEvent({ sortable: this.sortable, rootEl: this.sortable.el, name: 'deselect', targetEl: el, originalEvt: evt }); } }, _checkKeyDown: function _checkKeyDown(evt) { if (evt.key === this.options.multiDragKey) { this.multiDragKeyDown = true; } }, _checkKeyUp: function _checkKeyUp(evt) { if (evt.key === this.options.multiDragKey) { this.multiDragKeyDown = false; } } }; return _extends(MultiDrag, { // Static methods & properties pluginName: 'multiDrag', utils: { /** * Selects the provided multi-drag item * @param {HTMLElement} el The element to be selected */ select: function select(el) { var sortable = el.parentNode[expando]; if (!sortable || !sortable.options.multiDrag || ~multiDragElements.indexOf(el)) return; if (multiDragSortable && multiDragSortable !== sortable) { multiDragSortable.multiDrag._deselectMultiDrag(); multiDragSortable = sortable; } toggleClass(el, sortable.options.selectedClass, true); multiDragElements.push(el); }, /** * Deselects the provided multi-drag item * @param {HTMLElement} el The element to be deselected */ deselect: function deselect(el) { var sortable = el.parentNode[expando], index = multiDragElements.indexOf(el); if (!sortable || !sortable.options.multiDrag || !~index) return; toggleClass(el, sortable.options.selectedClass, false); multiDragElements.splice(index, 1); } }, eventProperties: function eventProperties() { var _this3 = this; var oldIndicies = [], newIndicies = []; multiDragElements.forEach(function (multiDragElement) { oldIndicies.push({ multiDragElement: multiDragElement, index: multiDragElement.sortableIndex }); // multiDragElements will already be sorted if folding var newIndex; if (folding && multiDragElement !== dragEl$1) { newIndex = -1; } else if (folding) { newIndex = index(multiDragElement, ':not(.' + _this3.options.selectedClass + ')'); } else { newIndex = index(multiDragElement); } newIndicies.push({ multiDragElement: multiDragElement, index: newIndex }); }); return { items: _toConsumableArray(multiDragElements), clones: [].concat(multiDragClones), oldIndicies: oldIndicies, newIndicies: newIndicies }; }, optionListeners: { multiDragKey: function multiDragKey(key) { key = key.toLowerCase(); if (key === 'ctrl') { key = 'Control'; } else if (key.length > 1) { key = key.charAt(0).toUpperCase() + key.substr(1); } return key; } } }); } function insertMultiDragElements(clonesInserted, rootEl) { multiDragElements.forEach(function (multiDragElement, i) { var target = rootEl.children[multiDragElement.sortableIndex + (clonesInserted ? Number(i) : 0)]; if (target) { rootEl.insertBefore(multiDragElement, target); } else { rootEl.appendChild(multiDragElement); } }); } /** * Insert multi-drag clones * @param {[Boolean]} elementsInserted Whether the multi-drag elements are inserted * @param {HTMLElement} rootEl */ function insertMultiDragClones(elementsInserted, rootEl) { multiDragClones.forEach(function (clone, i) { var target = rootEl.children[clone.sortableIndex + (elementsInserted ? Number(i) : 0)]; if (target) { rootEl.insertBefore(clone, target); } else { rootEl.appendChild(clone); } }); } function removeMultiDragElements() { multiDragElements.forEach(function (multiDragElement) { if (multiDragElement === dragEl$1) return; multiDragElement.parentNode && multiDragElement.parentNode.removeChild(multiDragElement); }); } Sortable.mount(new AutoScrollPlugin()); Sortable.mount(Remove, Revert); /* harmony default export */ __webpack_exports__["default"] = (Sortable); /***/ }), /***/ "24b8": /***/ (function(module, exports, __webpack_require__) { "use strict"; var $ = __webpack_require__("d866"); var toObject = __webpack_require__("baca"); var lengthOfArrayLike = __webpack_require__("3134"); var setArrayLength = __webpack_require__("3a39"); var doesNotExceedSafeInteger = __webpack_require__("d04d"); var fails = __webpack_require__("8637"); var INCORRECT_TO_LENGTH = fails(function () { return [].push.call({ length: 0x100000000 }, 1) !== 4294967297; }); // V8 and Safari <= 15.4, FF < 23 throws InternalError // https://bugs.chromium.org/p/v8/issues/detail?id=12681 var SILENT_ON_NON_WRITABLE_LENGTH = !function () { try { // eslint-disable-next-line es/no-object-defineproperty -- safe Object.defineProperty([], 'length', { writable: false }).push(); } catch (error) { return error instanceof TypeError; } }(); // `Array.prototype.push` method // https://tc39.es/ecma262/#sec-array.prototype.push $({ target: 'Array', proto: true, arity: 1, forced: INCORRECT_TO_LENGTH || SILENT_ON_NON_WRITABLE_LENGTH }, { // eslint-disable-next-line no-unused-vars -- required for `.length` push: function push(item) { var O = toObject(this); var len = lengthOfArrayLike(O); var argCount = arguments.length; doesNotExceedSafeInteger(len + argCount); for (var i = 0; i < argCount; i++) { O[len] = arguments[i]; len++; } setArrayLength(O, len); return len; } }); /***/ }), /***/ "262d": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "265e": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); // Headers whose duplicates are ignored by node // c.f. https://nodejs.org/api/http.html#http_message_headers var ignoreDuplicateOf = [ 'age', 'authorization', 'content-length', 'content-type', 'etag', 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since', 'last-modified', 'location', 'max-forwards', 'proxy-authorization', 'referer', 'retry-after', 'user-agent' ]; /** * Parse headers into an object * * ``` * Date: Wed, 27 Aug 2014 08:58:49 GMT * Content-Type: application/json * Connection: keep-alive * Transfer-Encoding: chunked * ``` * * @param {String} headers Headers needing to be parsed * @returns {Object} Headers parsed into an object */ module.exports = function parseHeaders(headers) { var parsed = {}; var key; var val; var i; if (!headers) { return parsed; } utils.forEach(headers.split('\n'), function parser(line) { i = line.indexOf(':'); key = utils.trim(line.substr(0, i)).toLowerCase(); val = utils.trim(line.substr(i + 1)); if (key) { if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) { return; } if (key === 'set-cookie') { parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]); } else { parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val; } } }); return parsed; }; /***/ }), /***/ "2b1f": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_@vue_cli-service@4.5.19@@vue/cli-service/lib/commands/build/setPublicPath.js // This file is imported into lib/wc client bundles. if (typeof window !== 'undefined') { var currentScript = window.document.currentScript if (false) { var getCurrentScript; } var src = currentScript && currentScript.src.match(/(.+\/)[^/]+\.js(\?.*)?$/) if (src) { __webpack_require__.p = src[1] // eslint-disable-line } } // Indicate to webpack that this file can be concatenated /* harmony default export */ var setPublicPath = (null); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/index.vue?vue&type=template&id=14078f98&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('el-form', { ref: "renderForm", staticClass: "render-form", class: [_vm.customClass], attrs: { "label-position": _vm.labelPosition, "size": _vm.size, "label-width": _vm.labelWidth, "validate-on-rule-change": false, "model": _vm.formDataModel }, nativeOn: { "submit": function ($event) { $event.preventDefault(); } } }, [_vm._l(_vm.widgetList, function (widget, index) { return ['container' === widget.category ? [_c(_vm.getContainerWidgetName(widget), { key: widget.id, tag: "component", attrs: { "widget": widget, "parent-list": _vm.widgetList, "index-of-parent-list": index, "parent-widget": null }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) })] : [_c(_vm.getWidgetName(widget), { key: widget.id, tag: "component", attrs: { "field": widget, "form-model": _vm.formDataModel, "designer": null, "parent-list": _vm.widgetList, "index-of-parent-list": index, "parent-widget": null }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) })]]; })], 2); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-render/index.vue?vue&type=template&id=14078f98&scoped=true& // EXTERNAL MODULE: ./node_modules/_core-js@3.26.0@core-js/modules/es.array.push.js var es_array_push = __webpack_require__("24b8"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: external {"commonjs":"vue","commonjs2":"vue","root":"Vue"} var external_commonjs_vue_commonjs2_vue_root_Vue_ = __webpack_require__("8bbf"); var external_commonjs_vue_commonjs2_vue_root_Vue_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_vue_commonjs2_vue_root_Vue_); // CONCATENATED MODULE: ./src/components/form-render/container-item/index.js const requireComponent = __webpack_require__("10ae"); /** * 容器组件时递归组件,且内部可以嵌套其他容器,局部注册会找不到组件,必须注册为全局组件,原因不明?! * begin * let comps = {} requireComponent.keys().map(fileName => { let comp = requireComponent(fileName).default; comps[comp.name] = comp }) export default comps; end */ /* 全局注册!! */ requireComponent.keys().map(fileName => { let comp = requireComponent(fileName).default; external_commonjs_vue_commonjs2_vue_root_Vue_default.a.component(comp.name, comp); }); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/index.js var field_widget = __webpack_require__("c029"); // EXTERNAL MODULE: ./src/utils/util.js var util = __webpack_require__("ca00"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/index.vue?vue&type=script&lang=js& //import ElForm from 'element-ui/packages/form/src/form.vue' /* 用于源码调试Element UI */ /* harmony default export */ var form_rendervue_type_script_lang_js_ = ({ name: "VFormRender", componentName: 'VFormRender', mixins: [emitter["a" /* default */], i18n["b" /* default */]], components: { //ElForm, ...field_widget["a" /* default */] }, props: { formJson: Object, //prop传入的表单JSON配置 formData: { //prop传入的表单数据 Object, default: () => {} }, optionData: { //prop传入的选项数据 type: Object, default: () => {} }, previewState: { //是否表单预览状态 type: Boolean, default: false }, globalDsv: { // 全局数据源变量 type: Object, default: () => {} } }, provide() { return { refList: this.widgetRefList, sfRefList: this.subFormRefList, //收集SubForm引用 //formConfig: this.formConfig, getFormConfig: () => this.formJsonObj.formConfig, /* 解决provide传递formConfig属性的响应式更新问题!! */ getGlobalDsv: () => this.globalDsv, // 全局数据源变量 globalOptionData: this.optionData, getOptionData: () => this.optionData, /* 该方法用于在异步更新option-data之后重新获取到最新值 */ globalModel: { formModel: this.formDataModel }, previewState: this.previewState }; }, data() { return { formJsonObj: this.formJson, formDataModel: { // }, widgetRefList: {}, subFormRefList: {}, formId: null //表单唯一Id,用于区分页面上的多个v-form-render组件!! }; }, computed: { formConfig() { return this.formJsonObj.formConfig; }, widgetList() { return this.formJsonObj.widgetList; }, labelPosition() { if (!!this.formConfig && !!this.formConfig.labelPosition) { return this.formConfig.labelPosition; } return 'left'; }, labelWidth() { if (!!this.formConfig && !!this.formConfig.labelWidth) { return this.formConfig.labelWidth + 'px'; } return '80px'; }, size() { if (!!this.formConfig && !!this.formConfig.size) { return this.formConfig.size; } return 'medium'; }, customClass() { return !!this.formConfig && !!this.formConfig.customClass ? this.formConfig.customClass : ''; } }, watch: { // }, created() { this.buildFormModel(!this.formJsonObj ? null : this.formJsonObj.widgetList); this.initFormObject(); }, mounted() { this.initLocale(); this.handleOnMounted(); }, methods: { initFormObject() { this.formId = 'vfRender' + Object(util["b" /* generateId */])(); this.insertCustomStyleAndScriptNode(); this.addFieldChangeEventHandler(); this.addFieldValidateEventHandler(); this.registerFormToRefList(); this.handleOnCreated(); }, getContainerWidgetName(widget) { return widget.type + '-item'; }, getWidgetName(widget) { return widget.type + '-widget'; }, initLocale() { let curLocale = localStorage.getItem('v_form_locale') || 'zh-CN'; this.changeLanguage(curLocale); }, insertCustomStyleAndScriptNode() { if (!!this.formConfig && !!this.formConfig.cssCode) { Object(util["e" /* insertCustomCssToHead */])(this.formConfig.cssCode, !!this.previewState ? '' : this.formId); } if (!!this.formConfig && !!this.formConfig.functions) { Object(util["f" /* insertGlobalFunctionsToHtml */])(this.formConfig.functions, !!this.previewState ? '' : this.formId); } }, buildFormModel(widgetList) { if (!!widgetList && widgetList.length > 0) { widgetList.forEach(wItem => { this.buildDataFromWidget(wItem); }); } }, buildDataFromWidget(wItem) { if (wItem.category === 'container') { if (wItem.type === 'grid') { if (!!wItem.cols && wItem.cols.length > 0) { wItem.cols.forEach(childItem => { this.buildDataFromWidget(childItem); }); } } else if (wItem.type === 'table') { if (!!wItem.rows && wItem.rows.length > 0) { wItem.rows.forEach(rowItem => { if (!!rowItem.cols && rowItem.cols.length > 0) { rowItem.cols.forEach(colItem => { this.buildDataFromWidget(colItem); }); } }); } } else if (wItem.type === 'tab') { if (!!wItem.tabs && wItem.tabs.length > 0) { wItem.tabs.forEach(tabItem => { if (!!tabItem.widgetList && tabItem.widgetList.length > 0) { tabItem.widgetList.forEach(childItem => { this.buildDataFromWidget(childItem); }); } }); } } else if (wItem.type === 'sub-form') { let subFormName = wItem.options.name; if (!this.formData.hasOwnProperty(subFormName)) { let subFormDataRow = {}; if (wItem.options.showBlankRow) { wItem.widgetList.forEach(subFormItem => { if (!!subFormItem.formItemFlag) { subFormDataRow[subFormItem.options.name] = subFormItem.options.defaultValue; } }); this.$set(this.formDataModel, subFormName, [subFormDataRow]); // } else { this.$set(this.formDataModel, subFormName, []); // } } else { let initialValue = this.formData[subFormName]; this.$set(this.formDataModel, subFormName, Object(util["a" /* deepClone */])(initialValue)); } } else if (wItem.type === 'grid-col' || wItem.type === 'table-cell') { if (!!wItem.widgetList && wItem.widgetList.length > 0) { wItem.widgetList.forEach(childItem => { this.buildDataFromWidget(childItem); }); } } else { //自定义容器组件 if (!!wItem.widgetList && wItem.widgetList.length > 0) { wItem.widgetList.forEach(childItem => { this.buildDataFromWidget(childItem); }); } } } else if (!!wItem.formItemFlag) { if (!this.formData.hasOwnProperty(wItem.options.name)) { //this.formDataModel[wItem.options.name] = '' //这种写法不支持对象属性响应式更新,必须用$set方法!! this.$set(this.formDataModel, wItem.options.name, wItem.options.defaultValue); //设置字段默认值 } else { let initialValue = this.formData[wItem.options.name]; this.$set(this.formDataModel, wItem.options.name, Object(util["a" /* deepClone */])(initialValue)); } } }, addFieldChangeEventHandler() { this.$off('fieldChange'); //移除原有事件监听 this.$on('fieldChange', (fieldName, newValue, oldValue, subFormName, subFormRowIndex) => { this.handleFieldDataChange(fieldName, newValue, oldValue, subFormName, subFormRowIndex); this.$emit('formChange', fieldName, newValue, oldValue, this.formDataModel, subFormName, subFormRowIndex); }); }, addFieldValidateEventHandler() { this.$off('fieldValidation'); //移除原有事件监听 this.$on('fieldValidation', fieldName => { this.$refs.renderForm.validateField(fieldName); }); }, registerFormToRefList() { this.widgetRefList['v_form_ref'] = this; }, handleFieldDataChange(fieldName, newValue, oldValue, subFormName, subFormRowIndex) { if (!!this.formConfig && !!this.formConfig.onFormDataChange) { let customFunc = new Function('fieldName', 'newValue', 'oldValue', 'formModel', 'subFormName', 'subFormRowIndex', this.formConfig.onFormDataChange); customFunc.call(this, fieldName, newValue, oldValue, this.formDataModel, subFormName, subFormRowIndex); } }, handleOnCreated() { if (!!this.formConfig && !!this.formConfig.onFormCreated) { let customFunc = new Function(this.formConfig.onFormCreated); customFunc.call(this); } }, handleOnMounted() { if (!!this.formConfig && !!this.formConfig.onFormMounted) { let customFunc = new Function(this.formConfig.onFormMounted); customFunc.call(this); } }, findWidgetAndSetDisabled(widgetName, disabledFlag) { let foundW = this.getWidgetRef(widgetName); if (!!foundW) { foundW.setDisabled(disabledFlag); } else { //没找到,可能是子表单中的组件 this.findWidgetOfSubFormAndSetDisabled(widgetName, disabledFlag); } }, findWidgetOfSubFormAndSetDisabled(widgetName, disabledFlag) { this.findWidgetNameInSubForm(widgetName).forEach(wn => { let sw = this.getWidgetRef(wn); if (!!sw) { sw.setDisabled(disabledFlag); } }); }, findWidgetAndSetHidden(widgetName, hiddenFlag) { let foundW = this.getWidgetRef(widgetName); if (!!foundW) { foundW.setHidden(hiddenFlag); } else { //没找到,可能是子表单中的组件 this.findWidgetOfSubFormAndSetHidden(widgetName, hiddenFlag); } }, findWidgetOfSubFormAndSetHidden(widgetName, hiddenFlag) { this.findWidgetNameInSubForm(widgetName).forEach(wn => { let sw = this.getWidgetRef(wn); if (!!sw) { sw.setHidden(hiddenFlag); } }); }, findWidgetNameInSubForm(widgetName) { let result = []; let subFormName = null; let handlerFn = (field, parent) => { if (!!field.options && field.options.name === widgetName) { subFormName = parent.options.name; } }; Object(util["n" /* traverseFieldWidgets */])(this.widgetList, handlerFn); if (!!subFormName) { let subFormRef = this.getWidgetRef(subFormName); if (!!subFormRef) { let rowIds = subFormRef.getRowIdData(); if (!!rowIds && rowIds.length > 0) { rowIds.forEach(rid => { result.push(widgetName + '@row' + rid); }); } } } return result; }, //--------------------- 以下为组件支持外部调用的API方法 begin ------------------// /* 提示:用户可自行扩充这些方法!!! */ changeLanguage(langName) { Object(i18n["a" /* changeLocale */])(langName); }, getNativeForm() { //获取原生form引用 return this.$refs['renderForm']; }, getWidgetRef(widgetName, showError = false) { let foundRef = this.widgetRefList[widgetName]; if (!foundRef && !!showError) { this.$message.error(this.i18nt('render.hint.refNotFound') + widgetName); } return foundRef; }, clearFormDataModel() { for (let pkey in this.formDataModel) { delete this.formDataModel[pkey]; } }, /** * 动态加载表单JSON * @param newFormJson */ setFormJson(newFormJson) { if (!!newFormJson) { if (typeof newFormJson === 'string' || newFormJson.constructor === Object) { let newFormJsonObj = null; if (typeof newFormJson === 'string') { newFormJsonObj = JSON.parse(newFormJson); } else { newFormJsonObj = newFormJson; } if (!newFormJsonObj.formConfig || !newFormJsonObj.widgetList) { this.$message.error('Invalid format of form json.'); return; } /* formDataModel必须在widgetList赋值完成初始化,因为widgetList赋值意味着子组件开始创建!!! */ //this.formDataModel = {} //清空表单数据对象(有bug,会导致表单校验失败!!) this.clearFormDataModel(); //上行代码有问题,会导致表单校验失败,故保留原对象引用只清空对象属性!! this.buildFormModel(newFormJsonObj.widgetList); this.$set(this.formJsonObj, 'formConfig', newFormJsonObj.formConfig); this._provided.formConfig = newFormJsonObj.formConfig; //强制更新provide的formConfig对象 this.$set(this.formJsonObj, 'widgetList', newFormJsonObj.widgetList); this.$nextTick(() => { this.initFormObject(); this.handleOnMounted(); }); } else { this.$message.error('Set form json failed.'); } } }, /** * 重新加载选项数据 * @param widgetNames 指定重新加载的组件名称或组件名数组,不传则重新加载所有选项字段 */ reloadOptionData(widgetNames) { let eventParams = []; if (!!widgetNames && typeof widgetNames === 'string') { eventParams = [widgetNames]; } else if (!!widgetNames && Array.isArray(widgetNames)) { eventParams = [...widgetNames]; } this.broadcast('FieldWidget', 'reloadOptionItems', [eventParams]); }, getFormData(needValidation = true) { if (!needValidation) { return this.formDataModel; } let callback = function nullFunc() {}; let promise = new window.Promise(function (resolve, reject) { callback = function (formData, error) { !error ? resolve(formData) : reject(error); }; }); this.$refs['renderForm'].validate(valid => { if (valid) { callback(this.formDataModel); } else { callback(this.formDataModel, this.i18nt('render.hint.validationFailed')); } }); return promise; }, setFormData(formData) { //设置表单数据 Object.keys(this.formDataModel).forEach(propName => { if (!!formData && formData.hasOwnProperty(propName)) { this.formDataModel[propName] = Object(util["a" /* deepClone */])(formData[propName]); } }); // 通知SubForm组件:表单数据更新事件!! this.broadcast('ContainerItem', 'setFormData', this.formDataModel); // 通知FieldWidget组件:表单数据更新事件!! this.broadcast('FieldWidget', 'setFormData', this.formDataModel); }, getFieldValue(fieldName) { //单个字段获取值 let fieldRef = this.getWidgetRef(fieldName); if (!!fieldRef && !!fieldRef.getValue) { return fieldRef.getValue(); } if (!fieldRef) { //如果是子表单字段 let result = []; this.findWidgetNameInSubForm(fieldName).forEach(wn => { let sw = this.getWidgetRef(wn); if (!!sw && !!sw.getValue) { result.push(sw.getValue()); } }); return result; } }, setFieldValue(fieldName, fieldValue) { //单个更新字段值 let fieldRef = this.getWidgetRef(fieldName); if (!!fieldRef && !!fieldRef.setValue) { fieldRef.setValue(fieldValue); } if (!fieldRef) { //如果是子表单字段 this.findWidgetNameInSubForm(fieldName).forEach(wn => { let sw = this.getWidgetRef(wn); if (!!sw && !!sw.setValue) { sw.setValue(fieldValue); } }); } }, getSubFormValues(subFormName, needValidation = true) { let foundSFRef = this.subFormRefList[subFormName]; return foundSFRef.getSubFormValues(needValidation); }, setSubFormValues(subFormName, subFormValues) { //TODO: 待实现!! }, disableForm() { let wNameList = Object.keys(this.widgetRefList); wNameList.forEach(wName => { let foundW = this.getWidgetRef(wName); if (!!foundW) { if (!!foundW.widget && foundW.widget.type === 'sub-form') { foundW.disableSubForm(); } else { !!foundW.setDisabled && foundW.setDisabled(true); } } }); }, enableForm() { let wNameList = Object.keys(this.widgetRefList); wNameList.forEach(wName => { let foundW = this.getWidgetRef(wName); if (!!foundW) { if (!!foundW.widget && foundW.widget.type === 'sub-form') { foundW.enableSubForm(); } else { !!foundW.setDisabled && foundW.setDisabled(false); } } }); }, resetForm() { //重置表单 let subFormNames = Object.keys(this.subFormRefList); subFormNames.forEach(sfName => { if (!!this.subFormRefList[sfName].resetSubForm) { this.subFormRefList[sfName].resetSubForm(); this.subFormRefList[sfName].addSubFormRow(); } }); let wNameList = Object.keys(this.widgetRefList); wNameList.forEach(wName => { let foundW = this.getWidgetRef(wName); if (!!foundW && !!foundW.resetField) { foundW.resetField(); } }); this.$nextTick(() => { this.clearValidate(); /* 清除resetField方法触发的校验错误提示 */ }); }, clearValidate(props) { this.$refs.renderForm.clearValidate(props); }, /** * 校验表单 * @param callback 回调函数 */ validateForm(callback) { this.$refs['renderForm'].validate(valid => { callback(valid); }); }, validateFields() { // }, disableWidgets(widgetNames) { if (!!widgetNames) { if (typeof widgetNames === 'string') { this.findWidgetAndSetDisabled(widgetNames, true); } else if (Array.isArray(widgetNames)) { widgetNames.forEach(wn => { this.findWidgetAndSetDisabled(wn, true); }); } } }, enableWidgets(widgetNames) { if (!!widgetNames) { if (typeof widgetNames === 'string') { this.findWidgetAndSetDisabled(widgetNames, false); } else if (Array.isArray(widgetNames)) { widgetNames.forEach(wn => { this.findWidgetAndSetDisabled(wn, false); }); } } }, hideWidgets(widgetNames) { if (!!widgetNames) { if (typeof widgetNames === 'string') { this.findWidgetAndSetHidden(widgetNames, true); } else if (Array.isArray(widgetNames)) { widgetNames.forEach(wn => { this.findWidgetAndSetHidden(wn, true); }); } } }, showWidgets(widgetNames) { if (!!widgetNames) { if (typeof widgetNames === 'string') { this.findWidgetAndSetHidden(widgetNames, false); } else if (Array.isArray(widgetNames)) { widgetNames.forEach(wn => { this.findWidgetAndSetHidden(wn, false); }); } } }, /** * 获取所有字段组件 * @returns {*[]} */ getFieldWidgets(widgetList = null) { return !!widgetList ? Object(util["d" /* getAllFieldWidgets */])(widgetList) : Object(util["d" /* getAllFieldWidgets */])(this.formJsonObj.widgetList); }, /** * 获取所有容器组件 * @returns {*[]} */ getContainerWidgets(widgetList = null) { return !!widgetList ? Object(util["c" /* getAllContainerWidgets */])(widgetList) : Object(util["c" /* getAllContainerWidgets */])(this.formJsonObj.widgetList); } //--------------------- 以上为组件支持外部调用的API方法 end ------------------// } }); // CONCATENATED MODULE: ./src/components/form-render/index.vue?vue&type=script&lang=js& /* harmony default export */ var components_form_rendervue_type_script_lang_js_ = (form_rendervue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-render/index.vue?vue&type=style&index=0&id=14078f98&prod&lang=scss&scoped=true& var form_rendervue_type_style_index_0_id_14078f98_prod_lang_scss_scoped_true_ = __webpack_require__("e661"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-render/index.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( components_form_rendervue_type_script_lang_js_, render, staticRenderFns, false, null, "14078f98", null ) /* harmony default export */ var form_render = (component.exports); // CONCATENATED MODULE: ./src/components/form-designer/widget-panel/widgetsConfig.js const containers = [{ type: 'grid', category: 'container', icon: 'grid', cols: [], options: { name: '', hidden: false, gutter: 12, colHeight: null, //栅格列统一高度属性,用于解决栅格列设置响应式布局浮动后被挂住的问题!! customClass: '' //自定义css类名 } }, { type: 'table', category: 'container', icon: 'table', rows: [], options: { name: '', hidden: false, customClass: '' //自定义css类名 } }, { type: 'tab', category: 'container', icon: 'tab', displayType: 'border-card', tabs: [], options: { name: '', hidden: false, customClass: '' //自定义css类名 } }, { type: 'sub-form', category: 'container', icon: 'sub-form', widgetList: [], options: { name: '', showBlankRow: true, showRowNumber: true, labelAlign: 'label-center-align', hidden: false, customClass: '', //自定义css类名 onSubFormRowAdd: '', onSubFormRowInsert: '', onSubFormRowDelete: '', onSubFormRowChange: '' } }, { type: 'grid-col', category: 'container', icon: 'grid-col', internal: true, widgetList: [], options: { name: '', hidden: false, span: 12, offset: 0, push: 0, pull: 0, responsive: false, //是否开启响应式布局 md: 12, sm: 12, xs: 12, customClass: '' //自定义css类名 } }, { type: 'table-cell', category: 'container', icon: 'table-cell', internal: true, widgetList: [], merged: false, options: { name: '', cellWidth: '', cellHeight: '', colspan: 1, rowspan: 1, customClass: '' //自定义css类名 } }, { type: 'tab-pane', category: 'container', icon: 'tab-pane', internal: true, widgetList: [], options: { name: '', label: '', hidden: false, active: false, disabled: false, customClass: '' //自定义css类名 } }, { type: 'data-table', category: 'container', icon: 'data-table', widgetList: [], options: { name: '', label: 'data-table', hidden: false, rowSpacing: 8, tableHeight: '300px', //高度,百分比或像素 tableWidth: '100%', //宽度,百分比或像素宽度 customClass: '', //自定义css样式 stripe: true, // 是否斑马线 showIndex: false, // 是否显示行号列 showCheckBox: true, // 是否显示复选框列 showPagination: true, // 是否分页 smallPagination: false, //是否显示小型分页 showSummary: false, // 是否合计 border: true, // 是否带有纵向边框(拖拽) tableSize: 'medium', // 表格大小 large大;medium中;small小,mini迷你 tableColumns: [ //表格列信息 { columnId: 1, prop: 'name', label: '姓名', width: '100', show: true, align: 'left', fixed: 'left', sortable: true }, { columnId: 2, prop: 'date', label: '日期1', width: '160', show: true, align: 'left', formatS: 'd1' }, { columnId: 3, prop: 'date2', label: '日期2', width: '160', show: true, align: 'left', formatS: 'd4' }, { columnId: 4, prop: 'date3', label: '日期3', width: '160', show: true, align: 'left', formatS: 'd5' }, { columnId: 5, prop: 'f1', label: '基金', width: '150', show: true, align: 'right', sortable: true, formatS: 'n1' }, { columnId: 6, prop: 'f2', label: '股票', width: '150', show: true, align: 'right', sortable: true, formatS: 'n2' }, { columnId: 7, prop: 'f3', label: '存款', width: '150', show: true, align: 'right', sortable: true, formatS: 'n3' }, { columnId: 8, prop: 'f4', label: '基金2', width: '150', show: true, align: 'right', sortable: true, formatS: 'n4' }, { columnId: 9, prop: 'f5', label: '股票2', width: '150', show: true, align: 'right', sortable: true, formatS: 'n5' }, { columnId: 10, prop: 'f6', label: '存款2', width: '150', show: true, align: 'right', sortable: true, formatS: 'n6' }, { columnId: 11, prop: 'f7', label: '成功率', width: '140', show: true, align: 'right', sortable: true, formatS: 'n7' }, { columnId: 12, prop: 'add', label: '地址', width: '250', show: true }, { columnId: 13, prop: 'ss', label: '秘密', width: '100', show: false }], pagination: { // 分页信息 currentPage: 1, pageSizes: [10, 15, 20, 30, 50, 100, 200], pageSize: 20, total: 366 }, tableData: [ //表格数据 { date: '2016-05-02', date2: '2016-05-02 23:12:12', date3: '2016-05-02 9:11:12', name: '小二', f1: 10001000.2, f2: 10001000.239567, f3: 10001000.239567, f4: 10001000.239567, f5: 10001000.239567, f6: 10001000.239567, f7: 0.25, add: '上海市普陀区金沙江路 1518 弄', ss: 100 }, { date: '2016-05-04', date2: '2016-05-02 11:12:12', date3: '2016-05-02 9:11:12', name: '王小虎2', f1: 10001000.23, f2: 10001000.23, f3: 10001000.239567, f4: 10001000.239567, f5: 10001000.239567, f6: 10001000.239567, f7: 0.256, add: '上海市普陀区金沙江路 1518 弄', ss: 100 }, { date: '2016-05-01', date2: '2016-05-02 12:12:12', date3: '2016-05-02 9:11:12', name: '王小虎3', f1: 10001000.239, f2: 10001000.239, f3: 10001000.239567, f4: 10001000.239567, f5: 10001000.239567, f6: 10001000.239567, f7: 0.2569, add: '上海市普陀区金沙江路 1518 弄', ss: 100 }, { date: '2016-05-03', date2: '2016-05-02 12:12:12', date3: '2016-05-02 9:11:12', name: '王小虎4', f1: 10001000.239567, f2: 10001000.239567, f3: 10001000.239567, f4: 10001000.239567, f5: 10001000.239567, f6: 10001000.239567, f7: 1.9527102, add: '上海市普陀区金沙江路 1518 弄', ss: 100 }] } }]; const basicFields = [{ type: 'input', icon: 'text-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', type: 'text', defaultValue: '', placeholder: '', columnWidth: '200px', size: '', labelWidth: null, labelHidden: false, readonly: false, disabled: false, hidden: false, clearable: true, showPassword: false, required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, minLength: null, maxLength: null, showWordLimit: false, prefixIcon: '', suffixIcon: '', appendButton: false, appendButtonDisabled: false, buttonIcon: 'el-icon-search', //------------------- onCreated: '', onMounted: '', onInput: '', onChange: '', onFocus: '', onBlur: '', onValidate: '' } }, { type: 'textarea', icon: 'textarea-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', rows: 3, defaultValue: '', placeholder: '', columnWidth: '200px', size: '', labelWidth: null, labelHidden: false, readonly: false, disabled: false, hidden: false, required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, minLength: null, maxLength: null, showWordLimit: false, //------------------- onCreated: '', onMounted: '', onInput: '', onChange: '', onFocus: '', onBlur: '', onValidate: '' } }, { type: 'number', icon: 'number-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', defaultValue: 0, placeholder: '', columnWidth: '200px', size: '', labelWidth: null, labelHidden: false, disabled: false, hidden: false, required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, min: -100000000000, max: 100000000000, precision: 0, step: 1, controlsPosition: 'right', //------------------- onCreated: '', onMounted: '', onChange: '', onFocus: '', onBlur: '', onValidate: '' } }, { type: 'radio', icon: 'radio-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', defaultValue: null, columnWidth: '200px', size: '', displayStyle: 'inline', buttonStyle: false, border: false, labelWidth: null, labelHidden: false, disabled: false, hidden: false, dsEnabled: false, // 是否使用数据源数据 dsName: '', // 数据源名称 labelKey: 'label', valueKey: 'value', optionItems: [{ label: 'radio 1', value: 1 }, { label: 'radio 2', value: 2 }, { label: 'radio 3', value: 3 }], required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, //------------------- onCreated: '', onMounted: '', onChange: '', onValidate: '' } }, { type: 'checkbox', icon: 'checkbox-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', defaultValue: [], columnWidth: '200px', size: '', displayStyle: 'inline', buttonStyle: false, border: false, labelWidth: null, labelHidden: false, disabled: false, hidden: false, dsEnabled: false, // 是否使用数据源数据 dsName: '', // 数据源名称 labelKey: 'label', valueKey: 'value', optionItems: [{ label: 'check 1', value: 1 }, { label: 'check 2', value: 2 }, { label: 'check 3', value: 3 }], required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, //------------------- onCreated: '', onMounted: '', onChange: '', onValidate: '' } }, { type: 'select', icon: 'select-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', defaultValue: '', placeholder: '', columnWidth: '200px', size: '', labelWidth: null, labelHidden: false, disabled: false, hidden: false, clearable: true, filterable: false, allowCreate: false, remote: false, automaticDropdown: false, //自动下拉 multiple: false, multipleLimit: 0, dsEnabled: false, // 是否使用数据源数据 dsName: '', // 数据源名称 labelKey: 'label', valueKey: 'value', optionItems: [{ label: 'select 1', value: 1 }, { label: 'select 2', value: 2 }, { label: 'select 3', value: 3 }], required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, //------------------- onCreated: '', onMounted: '', onRemoteQuery: '', onChange: '', onFocus: '', onBlur: '', onValidate: '' } }, { type: 'time', icon: 'time-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', defaultValue: null, placeholder: '', columnWidth: '200px', size: '', labelWidth: null, labelHidden: false, readonly: false, disabled: false, hidden: false, clearable: true, editable: false, format: 'HH:mm:ss', //时间格式 required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, //------------------- onCreated: '', onMounted: '', onChange: '', onFocus: '', onBlur: '', onValidate: '' } }, { type: 'time-range', icon: 'time-range-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', defaultValue: null, startPlaceholder: '', endPlaceholder: '', columnWidth: '200px', size: '', labelWidth: null, labelHidden: false, readonly: false, disabled: false, hidden: false, clearable: true, editable: false, format: 'HH:mm:ss', //时间格式 required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, //------------------- onCreated: '', onMounted: '', onChange: '', onFocus: '', onBlur: '', onValidate: '' } }, { type: 'date', icon: 'date-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', type: 'date', defaultValue: null, placeholder: '', columnWidth: '200px', size: '', labelWidth: null, labelHidden: false, readonly: false, disabled: false, hidden: false, clearable: true, editable: false, format: 'yyyy-MM-dd', //日期显示格式 valueFormat: 'yyyy-MM-dd', //日期对象格式 required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, //------------------- onCreated: '', onMounted: '', onChange: '', onFocus: '', onBlur: '', onValidate: '' } }, { type: 'date-range', icon: 'date-range-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', type: 'daterange', defaultValue: null, startPlaceholder: '', endPlaceholder: '', columnWidth: '200px', size: '', labelWidth: null, labelHidden: false, readonly: false, disabled: false, hidden: false, clearable: true, editable: false, format: 'yyyy-MM-dd', //日期显示格式 valueFormat: 'yyyy-MM-dd', //日期对象格式 required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, //------------------- onCreated: '', onMounted: '', onChange: '', onFocus: '', onBlur: '', onValidate: '' } }, { type: 'switch', icon: 'switch-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', defaultValue: null, columnWidth: '200px', labelWidth: null, labelHidden: false, disabled: false, hidden: false, //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, switchWidth: 40, activeText: '', inactiveText: '', activeColor: null, inactiveColor: null, //------------------- onCreated: '', onMounted: '', onChange: '', onValidate: '' } }, { type: 'rate', icon: 'rate-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', defaultValue: null, columnWidth: '200px', labelWidth: null, labelHidden: false, disabled: false, hidden: false, required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, max: 5, lowThreshold: 2, highThreshold: 4, allowHalf: false, showText: false, showScore: false, //------------------- onCreated: '', onMounted: '', onChange: '', onValidate: '' } }, { type: 'color', icon: 'color-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', defaultValue: null, columnWidth: '200px', size: '', labelWidth: null, labelHidden: false, disabled: false, hidden: false, required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, //------------------- onCreated: '', onMounted: '', onChange: '', onValidate: '' } }, { type: 'slider', icon: 'slider-field', formItemFlag: true, options: { name: '', label: '', labelAlign: '', columnWidth: '200px', showStops: true, size: '', labelWidth: null, labelHidden: false, disabled: false, hidden: false, required: false, requiredHint: '', validation: '', validationHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, min: 0, max: 100, step: 10, range: false, //vertical: false, height: null, //------------------- onCreated: '', onMounted: '', onChange: '', onValidate: '' } }, { type: 'static-text', icon: 'static-text', formItemFlag: false, options: { name: '', columnWidth: '200px', hidden: false, textContent: 'static text', fontSize: '13px', //------------------- customClass: '', //自定义css类名 //------------------- onCreated: '', onMounted: '' } }, { type: 'html-text', icon: 'html-text', formItemFlag: false, options: { name: '', columnWidth: '200px', hidden: false, htmlContent: 'html text', //------------------- customClass: '', //自定义css类名 //------------------- onCreated: '', onMounted: '' } }, { type: 'button', icon: 'button', formItemFlag: false, options: { name: '', label: '', columnWidth: '200px', size: '', displayStyle: 'block', disabled: false, hidden: false, type: '', plain: false, round: false, circle: false, icon: null, //------------------- customClass: '', //自定义css类名 //------------------- onCreated: '', onMounted: '', onClick: '' } }, { type: 'divider', icon: 'divider', formItemFlag: false, options: { name: '', label: '', columnWidth: '200px', direction: 'horizontal', contentPosition: 'center', hidden: false, //------------------- customClass: '', //自定义css类名 //------------------- onCreated: '', onMounted: '' } } // ]; const advancedFields = [{ type: 'picture-upload', icon: 'picture-upload-field', formItemFlag: true, options: { name: '', label: '', labelWidth: null, labelHidden: false, columnWidth: '200px', disabled: false, hidden: false, required: false, requiredHint: '', customRule: '', customRuleHint: '', //------------------- uploadURL: '', uploadTip: '', withCredentials: false, multipleSelect: false, showFileList: true, limit: 3, fileMaxSize: 5, //MB fileTypes: ['jpeg', 'png'], //headers: [], //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, //------------------- onCreated: '', onMounted: '', onBeforeUpload: '', onUploadSuccess: `const list = fileList.map(e => { return e.response ? { name: e.response.data.name, url: e.response.data.dfsUrl, type: 'file' } : e }) this.updateUploadFieldModelAndEmitDataChange(list)`, onUploadError: '', onFileRemove: `const list = fileList.map(e => { return e.response ? { name: e.response.data.name, url: e.response.data.dfsUrl, type: 'file' } : e }) this.updateUploadFieldModelAndEmitDataChange(list)`, onValidate: '' //onFileChange: '', } }, { type: 'file-upload', icon: 'file-upload-field', formItemFlag: true, options: { name: '', label: '', labelWidth: null, labelHidden: false, columnWidth: '200px', disabled: false, hidden: false, required: false, requiredHint: '', customRule: '', customRuleHint: '', //------------------- uploadURL: '', uploadTip: '', withCredentials: false, multipleSelect: false, showFileList: true, limit: 3, fileMaxSize: 5, //MB fileTypes: ['doc', 'docx', 'xls', 'xlsx'], //headers: [], //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, //------------------- onCreated: '', onMounted: '', onBeforeUpload: '', onUploadSuccess: `const list = fileList.map(e => { return e.response ? { name: e.response.data.name, url: e.response.data.dfsUrl, type: 'file' } : e }) this.updateUploadFieldModelAndEmitDataChange(list)`, onUploadError: '', onFileRemove: `const list = fileList.map(e => { return e.response ? { name: e.response.data.name, url: e.response.data.dfsUrl, type: 'file' } : e }) this.updateUploadFieldModelAndEmitDataChange(list)`, onValidate: '' //onFileChange: '', } }, { type: 'rich-editor', icon: 'rich-editor-field', formItemFlag: true, options: { name: '', label: '', placeholder: '', labelWidth: null, labelHidden: false, columnWidth: '200px', disabled: false, hidden: false, required: false, requiredHint: '', customRule: '', customRuleHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, minLength: null, maxLength: null, showWordLimit: false, //------------------- onCreated: '', onMounted: '', onValidate: '' } }, { type: 'cascader', icon: 'cascader-field', formItemFlag: true, options: { name: '', label: '', defaultValue: '', placeholder: '', size: '', labelWidth: null, labelHidden: false, columnWidth: '200px', disabled: false, hidden: false, clearable: true, filterable: false, multiple: false, checkStrictly: false, //可选择任意一级选项,默认不开启 dsEnabled: false, // 是否使用数据源数据 dsName: '', // 数据源名称 labelKey: 'label', valueKey: 'value', childrenKey: 'children', optionItems: [{ label: 'select 1', value: 1, children: [{ label: 'child 1', value: 11 }] }, { label: 'select 2', value: 2 }, { label: 'select 3', value: 3 }], required: false, requiredHint: '', customRule: '', customRuleHint: '', //------------------- customClass: '', //自定义css类名 labelIconClass: null, labelIconPosition: 'rear', labelTooltip: null, //------------------- onCreated: '', onMounted: '', onChange: '', onFocus: '', onBlur: '', onValidate: '' } }, { type: 'slot', icon: 'slot-field', formItemFlag: false, options: { name: '', label: '', customClass: '' //自定义css类名 } }]; const customFields = []; function addContainerWidgetSchema(containerSchema) { containers.push(containerSchema); } function addBasicFieldSchema(fieldSchema) { basicFields.push(fieldSchema); } function addAdvancedFieldSchema(fieldSchema) { advancedFields.push(fieldSchema); } function addCustomWidgetSchema(widgetSchema) { customFields.push(widgetSchema); } // CONCATENATED MODULE: ./src/components/form-designer/setting-panel/propertyRegister.js /** * 格式说明:属性名称==对应属性编辑器的组件名称 */ const COMMON_PROPERTIES = { //字段 'name': 'name-editor', 'label': 'label-editor', 'labelAlign': 'labelAlign-editor', 'type': 'type-editor', 'defaultValue': 'defaultValue-editor', 'placeholder': 'placeholder-editor', 'startPlaceholder': 'startPlaceholder-editor', 'endPlaceholder': 'endPlaceholder-editor', 'columnWidth': 'columnWidth-editor', 'size': 'size-editor', 'showStops': 'showStops-editor', 'displayStyle': 'displayStyle-editor', 'buttonStyle': 'buttonStyle-editor', 'border': 'border-editor', 'labelWidth': 'labelWidth-editor', 'labelHidden': 'labelHidden-editor', 'rows': 'rows-editor', 'required': 'required-editor', 'requiredHint': 'requiredHint-editor', 'validation': 'validation-editor', 'validationHint': 'validationHint-editor', 'readonly': 'readonly-editor', 'disabled': 'disabled-editor', 'hidden': 'hidden-editor', 'clearable': 'clearable-editor', 'editable': 'editable-editor', 'showPassword': 'showPassword-editor', 'textContent': 'textContent-editor', 'fontSize': 'fontSize-editor', 'htmlContent': 'htmlContent-editor', 'format': 'format-editor', 'valueFormat': 'valueFormat-editor', 'filterable': 'filterable-editor', 'allowCreate': 'allowCreate-editor', 'remote': 'remote-editor', 'automaticDropdown': 'automaticDropdown-editor', 'checkStrictly': 'checkStrictly-editor', 'multiple': 'multiple-editor', 'multipleLimit': 'multipleLimit-editor', 'contentPosition': 'contentPosition-editor', 'optionItems': 'optionItems-editor', 'uploadURL': 'uploadURL-editor', 'uploadTip': 'uploadTip-editor', 'withCredentials': 'withCredentials-editor', 'multipleSelect': 'multipleSelect-editor', 'limit': 'limit-editor', 'fileMaxSize': 'fileMaxSize-editor', 'fileTypes': 'fileTypes-editor', 'customClass': 'customClass-editor', //容器 'showBlankRow': 'showBlankRow-editor', 'showRowNumber': 'showRowNumber-editor', 'cellWidth': 'cellWidth-editor', 'cellHeight': 'cellHeight-editor', 'colHeight': 'colHeight-editor', 'gutter': 'gutter-editor', 'responsive': 'responsive-editor', 'span': 'span-editor', 'offset': 'offset-editor', 'push': 'push-editor', 'pull': 'pull-editor' }; const ADVANCED_PROPERTIES = { 'min': 'min-editor', 'max': 'max-editor', 'precision': 'precision-editor', 'step': 'step-editor', 'controlsPosition': 'controlsPosition-editor', 'minLength': 'minLength-editor', 'maxLength': 'maxLength-editor', 'showWordLimit': 'showWordLimit-editor', 'prefixIcon': 'prefixIcon-editor', 'suffixIcon': 'suffixIcon-editor', 'switchWidth': 'switchWidth-editor', 'activeText': 'activeText-editor', 'inactiveText': 'inactiveText-editor', 'activeColor': 'activeColor-editor', 'inactiveColor': 'inactiveColor-editor', 'lowThreshold': 'lowThreshold-editor', 'highThreshold': 'highThreshold-editor', 'allowHalf': 'allowHalf-editor', 'showText': 'showText-editor', 'showScore': 'showScore-editor', 'range': 'range-editor', 'vertical': 'vertical-editor', 'plain': 'plain-editor', 'round': 'round-editor', 'circle': 'circle-editor', 'icon': 'icon-editor', 'labelIconClass': 'labelIconClass-editor', 'labelIconPosition': 'labelIconPosition-editor', 'labelTooltip': 'labelTooltip-editor', 'appendButton': 'appendButton-editor', 'appendButtonDisabled': 'appendButtonDisabled-editor', 'buttonIcon': 'buttonIcon-editor' }; const EVENT_PROPERTIES = { //字段 'onCreated': 'onCreated-editor', 'onMounted': 'onMounted-editor', 'onClick': 'onClick-editor', 'onInput': 'onInput-editor', 'onChange': 'onChange-editor', 'onFocus': 'onFocus-editor', 'onBlur': 'onBlur-editor', 'onRemoteQuery': 'onRemoteQuery-editor', 'onBeforeUpload': 'onBeforeUpload-editor', 'onUploadSuccess': 'onUploadSuccess-editor', 'onUploadError': 'onUploadError-editor', 'onFileRemove': 'onFileRemove-editor', 'onValidate': 'onValidate-editor', //容器 'onSubFormRowAdd': 'onSubFormRowAdd-editor', 'onSubFormRowInsert': 'onSubFormRowInsert-editor', 'onSubFormRowDelete': 'onSubFormRowDelete-editor', 'onSubFormRowChange': 'onSubFormRowChange-editor' }; /** * 注册组件常见属性 * 如属性编辑器的组件名称propEditorName设置为null,则不显示该属性编辑器!! * @param uniquePropName 属性名称(保证名称唯一,不跟其他组件属性冲突) * @param propEditorName 对应属性编辑器的组件名称 */ function registerCommonProperty(uniquePropName, propEditorName) { COMMON_PROPERTIES[uniquePropName] = propEditorName; } /** * 注册组件高级属性 * 如属性编辑器的组件名称propEditorName设置为null,则不显示该属性编辑器!! * @param uniquePropName 属性名称(保证名称唯一,不跟其他组件属性冲突) * @param propEditorName 对应属性编辑器的组件名称 */ function registerAdvancedProperty(uniquePropName, propEditorName) { ADVANCED_PROPERTIES[uniquePropName] = propEditorName; } /** * 注册组件事件属性 * 如属性编辑器的组件名称propEditorName设置为null,则不显示该属性编辑器!! * @param uniquePropName 属性名称(保证名称唯一,不跟其他组件属性冲突) * @param propEditorName 对应属性编辑器的组件名称 */ function registerEventProperty(uniquePropName, propEditorName) { EVENT_PROPERTIES[uniquePropName] = propEditorName; } /** * 判断属性是否已注册 * @param uniquePropName 属性名称(保证名称唯一,不跟其他组件属性冲突) */ function propertyRegistered(uniquePropName) { return !!COMMON_PROPERTIES[uniquePropName] || !!ADVANCED_PROPERTIES[uniquePropName] || !!EVENT_PROPERTIES[uniquePropName]; } /** * 注册常见属性对应的属性编辑器 * @param uniquePropName * @param propEditorName * @param editorComponent */ function registerCPEditor(uniquePropName, propEditorName, editorComponent) { external_commonjs_vue_commonjs2_vue_root_Vue_default.a.component(propEditorName, editorComponent); registerCommonProperty(uniquePropName, propEditorName); } /** * 注册高级属性对应的属性编辑器 * @param uniquePropName * @param propEditorName * @param editorComponent */ function registerAPEditor(uniquePropName, propEditorName, editorComponent) { external_commonjs_vue_commonjs2_vue_root_Vue_default.a.component(propEditorName, editorComponent); registerAdvancedProperty(uniquePropName, propEditorName); } /** * 注册事件属性对应的属性编辑器 * @param uniquePropName * @param propEditorName * @param editorComponent */ function registerEPEditor(uniquePropName, propEditorName, editorComponent) { external_commonjs_vue_commonjs2_vue_root_Vue_default.a.component(propEditorName, editorComponent); registerEventProperty(uniquePropName, propEditorName); } /* harmony default export */ var propertyRegister = ({ COMMON_PROPERTIES, ADVANCED_PROPERTIES, EVENT_PROPERTIES }); // CONCATENATED MODULE: ./src/components/form-designer/setting-panel/property-editor-factory.js const createInputTextEditor = function (propName, propLabelKey) { return { props: { optionModel: Object }, render(h) { return h("el-form-item", { "attrs": { "label": Object(i18n["c" /* translate */])(propLabelKey) } }, [h("el-input", { "attrs": { "type": "text" }, "model": { value: this.optionModel[propName], callback: $$v => { this.$set(this.optionModel, propName, $$v); } } })]); } }; }; const createInputNumberEditor = function (propName, propLabelKey) { return { props: { optionModel: Object }, methods: { updateValue(newValue) { if (newValue === undefined || newValue === null || isNaN(newValue)) { this.optionModel[propName] = null; } else { this.optionModel[propName] = Number(newValue); } } }, render(h) { return h("el-form-item", { "attrs": { "label": Object(i18n["c" /* translate */])(propLabelKey) } }, [h("el-input-number", { "attrs": { "type": "text" }, "on": { "change": this.updateValue }, "style": "width: 100%", "model": { value: this.optionModel[propName], callback: $$v => { this.$set(this.optionModel, propName, $$v); } } })]); } }; }; const createBooleanEditor = function (propName, propLabelKey) { return { props: { optionModel: Object }, render(h) { return h("el-form-item", { "attrs": { "label": Object(i18n["c" /* translate */])(propLabelKey) } }, [h("el-switch", { "model": { value: this.optionModel[propName], callback: $$v => { this.$set(this.optionModel, propName, $$v); } } })]); } }; }; const createCheckboxGroupEditor = function (propName, propLabelKey, configs) { return { props: { optionModel: Object }, render(h) { return h("el-form-item", { "attrs": { "label": Object(i18n["c" /* translate */])(propLabelKey) } }, [h("el-checkbox-group", { "model": { value: this.optionModel[propName], callback: $$v => { this.$set(this.optionModel, propName, $$v); } } }, [configs.optionItems.map(item => { return h("el-checkbox", { "attrs": { "label": item.value } }, [item.label]); })])]); } }; }; const createRadioGroupEditor = function (propName, propLabelKey, configs) { return { props: { optionModel: Object }, render(h) { return h("el-form-item", { "attrs": { "label": Object(i18n["c" /* translate */])(propLabelKey) } }, [h("el-radio-group", { "model": { value: this.optionModel[propName], callback: $$v => { this.$set(this.optionModel, propName, $$v); } } }, [configs.optionItems.map(item => { return h("el-radio", { "attrs": { "label": item.value } }, [item.label]); })])]); } }; }; const createRadioButtonGroupEditor = function (propName, propLabelKey, configs) { return { props: { optionModel: Object }, render(h) { return h("el-form-item", { "attrs": { "label": Object(i18n["c" /* translate */])(propLabelKey) } }, [h("el-radio-group", { "model": { value: this.optionModel[propName], callback: $$v => { this.$set(this.optionModel, propName, $$v); } } }, [configs.optionItems.map(item => { return h("el-radio-button", { "attrs": { "label": item.value } }, [item.label]); })])]); } }; }; const createSelectEditor = function (propName, propLabelKey, configs) { return { props: { optionModel: Object }, render(h) { return h("el-form-item", { "attrs": { "label": Object(i18n["c" /* translate */])(propLabelKey) } }, [h("el-select", { "model": { value: this.optionModel[propName], callback: $$v => { this.$set(this.optionModel, propName, $$v); } } }, [configs.optionItems.map(item => { return h("el-option", { "attrs": { "label": item.label, "value": item.value } }); })])]); } }; }; const createEventHandlerEditor = function (eventPropName, eventParams) { return { props: { optionModel: Object }, mixins: [emitter["a" /* default */]], methods: { editEventHandler() { this.dispatch('SettingPanel', 'editEventHandler', [eventPropName, [...eventParams]]); } }, render(h) { return h("el-form-item", { "attrs": { "label": eventPropName, "label-width": "150px" } }, [h("el-button", { "attrs": { "type": "info", "icon": "el-icon-edit", "plain": true, "round": true }, "on": { "click": this.editEventHandler } }, [Object(i18n["c" /* translate */])('designer.setting.addEventHandler')])]); } }; }; const createEmptyEditor = function () { return { render() { const h = arguments[0]; return h("div", { "style": "display: none" }); } }; }; // CONCATENATED MODULE: ./src/extension/samples/extension-schema.js const cardSchema = { type: 'card', category: 'container', icon: 'card', widgetList: [], options: { name: '', label: 'card', hidden: false, folded: false, showFold: true, cardWidth: '100%', shadow: 'never', customClass: '' } }; const alertSchema = { type: 'alert', icon: 'alert', formItemFlag: false, options: { name: '', title: 'Good things are coming...', type: 'info', description: '', closable: true, closeText: '', center: true, showIcon: false, effect: 'light', hidden: false, onClose: '', customClass: '' } }; // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/extension/samples/card/card-widget.vue?vue&type=template&id=83793ff4&scoped=true& var card_widgetvue_type_template_id_83793ff4_scoped_true_render = function render() { var _vm = this, _c = _vm._self._c; return _c('container-wrapper', { attrs: { "designer": _vm.designer, "widget": _vm.widget, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList } }, [_c('el-card', { key: _vm.widget.id, staticClass: "card-container", class: [_vm.selected ? 'selected' : '', !!_vm.widget.options.folded ? 'folded' : '', _vm.customClass], style: { width: _vm.widget.options.cardWidth + '!important' || false }, attrs: { "shadow": _vm.widget.options.shadow }, nativeOn: { "click": function ($event) { $event.stopPropagation(); return _vm.selectWidget(_vm.widget); } } }, [_c('div', { staticClass: "clear-fix", attrs: { "slot": "header" }, slot: "header" }, [_c('span', [_vm._v(_vm._s(_vm.widget.options.label))]), _vm.widget.options.showFold ? _c('i', { staticClass: "float-right", class: [!_vm.widget.options.folded ? 'el-icon-arrow-down' : 'el-icon-arrow-up'], on: { "click": _vm.toggleCard } }) : _vm._e()]), _c('draggable', _vm._b({ attrs: { "list": _vm.widget.widgetList, "handle": ".drag-handler", "move": _vm.checkContainerMove }, on: { "add": evt => _vm.onContainerDragAdd(evt, _vm.widget.widgetList), "update": _vm.onContainerDragUpdate } }, 'draggable', { group: 'dragGroup', ghostClass: 'ghost', animation: 200 }, false), [_c('transition-group', { staticClass: "form-widget-list", attrs: { "name": "fade", "tag": "div" } }, [_vm._l(_vm.widget.widgetList, function (subWidget, swIdx) { return ['container' === subWidget.category ? [_c(subWidget.type + '-widget', { key: subWidget.id, tag: "component", attrs: { "widget": subWidget, "designer": _vm.designer, "parent-list": _vm.widget.widgetList, "index-of-parent-list": swIdx, "parent-widget": _vm.widget } })] : [_c(subWidget.type + '-widget', { key: subWidget.id, tag: "component", attrs: { "field": subWidget, "designer": _vm.designer, "parent-list": _vm.widget.widgetList, "index-of-parent-list": swIdx, "parent-widget": _vm.widget, "design-state": true } })]]; })], 2)], 1)], 1)], 1); }; var card_widgetvue_type_template_id_83793ff4_scoped_true_staticRenderFns = []; // CONCATENATED MODULE: ./src/extension/samples/card/card-widget.vue?vue&type=template&id=83793ff4&scoped=true& // CONCATENATED MODULE: ./src/components/form-designer/form-widget/container-widget/containerMixin.js /* harmony default export */ var containerMixin = ({ inject: ['getFormConfig'], computed: { formConfig() { return this.getFormConfig(); } }, methods: { appendTableRow(widget) { this.designer.appendTableRow(widget); }, appendTableCol(widget) { this.designer.appendTableCol(widget); }, onContainerDragAdd(evt, subList) { const newIndex = evt.newIndex; if (!!subList[newIndex]) { this.designer.setSelected(subList[newIndex]); } this.designer.emitHistoryChange(); this.designer.emitEvent('field-selected', this.widget); }, onContainerDragUpdate() { this.designer.emitHistoryChange(); }, checkContainerMove(evt) { return this.designer.checkWidgetMove(evt); }, selectWidget(widget) { this.designer.setSelected(widget); }, selectParentWidget() { if (this.parentWidget) { this.designer.setSelected(this.parentWidget); } else { this.designer.clearSelected(); } }, moveUpWidget() { this.designer.moveUpWidget(this.parentList, this.indexOfParentList); this.designer.emitHistoryChange(); }, moveDownWidget() { this.designer.moveDownWidget(this.parentList, this.indexOfParentList); this.designer.emitHistoryChange(); }, cloneContainer(widget) { if (!!this.parentList) { let newCon = this.designer.cloneContainer(widget); this.parentList.splice(this.indexOfParentList + 1, 0, newCon); this.designer.setSelected(newCon); this.designer.emitHistoryChange(); } }, removeWidget() { if (!!this.parentList) { let nextSelected = null; if (this.parentList.length === 1) { if (!!this.parentWidget) { nextSelected = this.parentWidget; } } else if (this.parentList.length === 1 + this.indexOfParentList) { nextSelected = this.parentList[this.indexOfParentList - 1]; } else { nextSelected = this.parentList[this.indexOfParentList + 1]; } this.$nextTick(() => { this.parentList.splice(this.indexOfParentList, 1); //if (!!nextSelected) { this.designer.setSelected(nextSelected); //} this.designer.emitHistoryChange(); }); } }, setWidgetOption(optionName, optionValue) { //通用组件选项修改API if (this.widget.options.hasOwnProperty(optionName)) { this.widget.options[optionName] = optionValue; } } } }); // EXTERNAL MODULE: ./node_modules/_vuedraggable@2.24.3@vuedraggable/dist/vuedraggable.umd.js var vuedraggable_umd = __webpack_require__("3335"); var vuedraggable_umd_default = /*#__PURE__*/__webpack_require__.n(vuedraggable_umd); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/container-widget/container-wrapper.vue?vue&type=template&id=b98cf8dc&scoped=true& var container_wrappervue_type_template_id_b98cf8dc_scoped_true_render = function render() { var _vm = this, _c = _vm._self._c; return _c('div', { staticClass: "container-wrapper", class: [_vm.customClass] }, [_vm._t("default"), _vm.designer.selectedId === _vm.widget.id && !_vm.widget.internal ? _c('div', { staticClass: "container-action" }, [_c('i', { staticClass: "el-icon-back", attrs: { "title": _vm.i18nt('designer.hint.selectParentWidget') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.selectParentWidget(_vm.widget); } } }), !!_vm.parentList && _vm.parentList.length > 1 ? _c('i', { staticClass: "el-icon-top", attrs: { "title": _vm.i18nt('designer.hint.moveUpWidget') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.moveUpWidget(); } } }) : _vm._e(), !!_vm.parentList && _vm.parentList.length > 1 ? _c('i', { staticClass: "el-icon-bottom", attrs: { "title": _vm.i18nt('designer.hint.moveDownWidget') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.moveDownWidget(); } } }) : _vm._e(), _vm.widget.type === 'table' ? _c('i', { staticClass: "iconfont icon-insertrow", attrs: { "title": _vm.i18nt('designer.hint.insertRow') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.appendTableRow(_vm.widget); } } }) : _vm._e(), _vm.widget.type === 'table' ? _c('i', { staticClass: "iconfont icon-insertcolumn", attrs: { "title": _vm.i18nt('designer.hint.insertColumn') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.appendTableCol(_vm.widget); } } }) : _vm._e(), _vm.widget.type === 'grid' || _vm.widget.type === 'table' ? _c('i', { staticClass: "el-icon-copy-document", attrs: { "title": _vm.i18nt('designer.hint.cloneWidget') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.cloneContainer(_vm.widget); } } }) : _vm._e(), _c('i', { staticClass: "el-icon-delete", attrs: { "title": _vm.i18nt('designer.hint.remove') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.removeWidget.apply(null, arguments); } } })]) : _vm._e(), _vm.designer.selectedId === _vm.widget.id && !_vm.widget.internal ? _c('div', { staticClass: "drag-handler" }, [_c('i', { staticClass: "el-icon-rank", attrs: { "title": _vm.i18nt('designer.hint.dragHandler') } }), _c('i', [_vm._v(_vm._s(_vm.i18n2t(`designer.widgetLabel.${_vm.widget.type}`, `extension.widgetLabel.${_vm.widget.type}`)))]), _vm.widget.options.hidden === true ? _c('i', { staticClass: "iconfont icon-hide" }) : _vm._e()]) : _vm._e()], 2); }; var container_wrappervue_type_template_id_b98cf8dc_scoped_true_staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/container-widget/container-wrapper.vue?vue&type=template&id=b98cf8dc&scoped=true& // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/container-widget/container-wrapper.vue?vue&type=script&lang=js& /* harmony default export */ var container_wrappervue_type_script_lang_js_ = ({ name: "container-wrapper", mixins: [i18n["b" /* default */], containerMixin], props: { widget: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object }, computed: { customClass() { return !!this.widget.options.customClass ? this.widget.options.customClass.join(' ') : ''; } } }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/container-widget/container-wrapper.vue?vue&type=script&lang=js& /* harmony default export */ var container_widget_container_wrappervue_type_script_lang_js_ = (container_wrappervue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/container-widget/container-wrapper.vue?vue&type=style&index=0&id=b98cf8dc&prod&lang=scss&scoped=true& var container_wrappervue_type_style_index_0_id_b98cf8dc_prod_lang_scss_scoped_true_ = __webpack_require__("0a5e"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/container-widget/container-wrapper.vue /* normalize component */ var container_wrapper_component = Object(componentNormalizer["a" /* default */])( container_widget_container_wrappervue_type_script_lang_js_, container_wrappervue_type_template_id_b98cf8dc_scoped_true_render, container_wrappervue_type_template_id_b98cf8dc_scoped_true_staticRenderFns, false, null, "b98cf8dc", null ) /* harmony default export */ var container_wrapper = (container_wrapper_component.exports); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/extension/samples/card/card-widget.vue?vue&type=script&lang=js& /* harmony default export */ var card_widgetvue_type_script_lang_js_ = ({ name: "card-widget", componentName: 'ContainerWidget', mixins: [i18n["b" /* default */], containerMixin], components: { Draggable: vuedraggable_umd_default.a, ContainerWrapper: container_wrapper, ...field_widget["a" /* default */] }, props: { widget: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object }, computed: { selected() { return this.widget.id === this.designer.selectedId; }, customClass() { return this.widget.options.customClass || ''; } }, methods: { /** * 检查接收哪些组件拖放,如不接受某些组件拖放,则根据组件类型判断后返回false * @param evt * @returns {boolean} */ checkContainerMove(evt) { return true; }, toggleCard() { this.widget.options.folded = !this.widget.options.folded; }, /** * 设置折叠/打开状态 * @param folded */ setFolded(folded) { this.widget.options.folded = !!folded; } } }); // CONCATENATED MODULE: ./src/extension/samples/card/card-widget.vue?vue&type=script&lang=js& /* harmony default export */ var card_card_widgetvue_type_script_lang_js_ = (card_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/extension/samples/card/card-widget.vue?vue&type=style&index=0&id=83793ff4&prod&lang=scss&scoped=true& var card_widgetvue_type_style_index_0_id_83793ff4_prod_lang_scss_scoped_true_ = __webpack_require__("f893"); // CONCATENATED MODULE: ./src/extension/samples/card/card-widget.vue /* normalize component */ var card_widget_component = Object(componentNormalizer["a" /* default */])( card_card_widgetvue_type_script_lang_js_, card_widgetvue_type_template_id_83793ff4_scoped_true_render, card_widgetvue_type_template_id_83793ff4_scoped_true_staticRenderFns, false, null, "83793ff4", null ) /* harmony default export */ var card_widget = (card_widget_component.exports); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/extension/samples/card/card-item.vue?vue&type=template&id=7970f550&scoped=true& var card_itemvue_type_template_id_7970f550_scoped_true_render = function render() { var _vm = this, _c = _vm._self._c; return _c('container-item-wrapper', { attrs: { "widget": _vm.widget } }, [_c('el-card', { directives: [{ name: "show", rawName: "v-show", value: !_vm.widget.options.hidden, expression: "!widget.options.hidden" }], key: _vm.widget.id, ref: _vm.widget.id, staticClass: "card-container", class: [!!_vm.widget.options.folded ? 'folded' : '', _vm.customClass], style: { width: _vm.widget.options.cardWidth + '!important' || false }, attrs: { "shadow": _vm.widget.options.shadow } }, [_c('div', { staticClass: "clear-fix", attrs: { "slot": "header" }, slot: "header" }, [_c('span', [_vm._v(_vm._s(_vm.widget.options.label))]), _vm.widget.options.showFold ? _c('i', { staticClass: "float-right", class: [!_vm.widget.options.folded ? 'el-icon-arrow-down' : 'el-icon-arrow-up'], on: { "click": _vm.toggleCard } }) : _vm._e()]), !!_vm.widget.widgetList && _vm.widget.widgetList.length > 0 ? [_vm._l(_vm.widget.widgetList, function (subWidget, swIdx) { return ['container' === subWidget.category ? [_c(subWidget.type + '-item', { key: swIdx, tag: "component", attrs: { "widget": subWidget, "parent-list": _vm.widget.widgetList, "index-of-parent-list": swIdx, "parent-widget": _vm.widget }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) })] : [_c(subWidget.type + '-widget', { key: swIdx, tag: "component", attrs: { "field": subWidget, "designer": null, "parent-list": _vm.widget.widgetList, "index-of-parent-list": swIdx, "parent-widget": _vm.widget }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) })]]; })] : _vm._e()], 2)], 1); }; var card_itemvue_type_template_id_7970f550_scoped_true_staticRenderFns = []; // CONCATENATED MODULE: ./src/extension/samples/card/card-item.vue?vue&type=template&id=7970f550&scoped=true& // EXTERNAL MODULE: ./node_modules/_element-ui@2.15.10@element-ui/lib/mixins/emitter.js var mixins_emitter = __webpack_require__("8c46"); var emitter_default = /*#__PURE__*/__webpack_require__.n(mixins_emitter); // EXTERNAL MODULE: ./src/components/form-render/refMixin.js var refMixin = __webpack_require__("d67f"); // EXTERNAL MODULE: ./src/components/form-render/container-item/container-item-wrapper.vue + 4 modules var container_item_wrapper = __webpack_require__("90c2"); // EXTERNAL MODULE: ./src/components/form-render/container-item/containerItemMixin.js var containerItemMixin = __webpack_require__("34f0"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/extension/samples/card/card-item.vue?vue&type=script&lang=js& /* harmony default export */ var card_itemvue_type_script_lang_js_ = ({ name: "card-item", componentName: 'ContainerItem', mixins: [emitter_default.a, i18n["b" /* default */], refMixin["a" /* default */], containerItemMixin["a" /* default */]], components: { ContainerItemWrapper: container_item_wrapper["default"], ...field_widget["a" /* default */] }, props: { widget: Object }, inject: ['refList', 'sfRefList', 'globalModel'], computed: { customClass() { return this.widget.options.customClass || ''; } }, created() { this.initRefList(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: { toggleCard() { this.widget.options.folded = !this.widget.options.folded; } } }); // CONCATENATED MODULE: ./src/extension/samples/card/card-item.vue?vue&type=script&lang=js& /* harmony default export */ var card_card_itemvue_type_script_lang_js_ = (card_itemvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/extension/samples/card/card-item.vue?vue&type=style&index=0&id=7970f550&prod&lang=scss&scoped=true& var card_itemvue_type_style_index_0_id_7970f550_prod_lang_scss_scoped_true_ = __webpack_require__("10aa"); // CONCATENATED MODULE: ./src/extension/samples/card/card-item.vue /* normalize component */ var card_item_component = Object(componentNormalizer["a" /* default */])( card_card_itemvue_type_script_lang_js_, card_itemvue_type_template_id_7970f550_scoped_true_render, card_itemvue_type_template_id_7970f550_scoped_true_staticRenderFns, false, null, "7970f550", null ) /* harmony default export */ var card_item = (card_item_component.exports); // EXTERNAL MODULE: ./src/utils/vue2js-generator.js var vue2js_generator = __webpack_require__("71bc"); // CONCATENATED MODULE: ./src/utils/config.js const VARIANT_FORM_VERSION = '2.3.0'; //export const MOCK_CASE_URL = 'https://www.fastmock.site/mock/2de212e0dc4b8e0885fea44ab9f2e1d0/vform/' const MOCK_CASE_URL = 'https://ks3-cn-beijing.ksyuncs.com/vform-static/vcase/'; //export const ACE_BASE_PATH = 'public/lib/ace/src-min-noconflict' const ACE_BASE_PATH = 'https://ks3-cn-beijing.ksyun.com/vform2021/ace-mini'; const BEAUTIFIER_PATH = 'https://ks3-cn-beijing.ksyun.com/vform2021/js-beautify/1.14.0/beautifier.min.js'; // CONCATENATED MODULE: ./src/utils/beautifierLoader.js let beautifierObj; const beautifierOpts = { html: { indent_size: '2', indent_char: ' ', max_preserve_newlines: '-1', preserve_newlines: false, keep_array_indentation: false, break_chained_methods: false, indent_scripts: 'separate', brace_style: 'end-expand', space_before_conditional: true, unescape_strings: false, jslint_happy: false, end_with_newline: true, wrap_line_length: '110', indent_inner_html: true, comma_first: false, e4x: true, indent_empty_lines: true }, js: { indent_size: '2', indent_char: ' ', max_preserve_newlines: '-1', preserve_newlines: false, keep_array_indentation: false, break_chained_methods: false, indent_scripts: 'normal', brace_style: 'end-expand', space_before_conditional: true, unescape_strings: false, jslint_happy: true, end_with_newline: true, wrap_line_length: '110', indent_inner_html: true, comma_first: false, e4x: true, indent_empty_lines: true }, css: { indent_size: '2', indent_char: ' ', max_preserve_newlines: '-1', preserve_newlines: false, keep_array_indentation: false, break_chained_methods: false, indent_scripts: 'normal', brace_style: 'end-expand', space_before_conditional: true, unescape_strings: false, jslint_happy: true, end_with_newline: true, wrap_line_length: '110', indent_inner_html: true, comma_first: false, e4x: true, indent_empty_lines: true } }; function loadBeautifier(callback) { if (beautifierObj) { callback(beautifierObj); return; } Object(util["i" /* loadRemoteScript */])(BEAUTIFIER_PATH, () => { // eslint-disable-next-line no-undef beautifierObj = beautifier; //beautifier为全局对象 callback(beautifierObj); }); } // CONCATENATED MODULE: ./src/utils/vue3js-generator.js const genVue3JS = function (formConfig, widgetList) { let defaultValueList = []; let rulesList = []; let fieldOptions = []; let uploadData = []; Object(util["n" /* traverseFieldWidgets */])(widgetList, widget => { Object(vue2js_generator["b" /* buildDefaultValueListFn */])(formConfig, widgetList, defaultValueList)(widget); Object(vue2js_generator["d" /* buildRulesListFn */])(formConfig, widgetList, rulesList)(widget); Object(vue2js_generator["c" /* buildFieldOptionsFn */])(formConfig, widgetList, fieldOptions)(widget); Object(vue2js_generator["e" /* buildUploadDataFn */])(formConfig, widgetList, uploadData)(widget); }); const activeTabs = Object(vue2js_generator["a" /* buildActiveTabs */])(formConfig, widgetList); const v3JSTemplate = ` import { defineComponent, toRefs, reactive, getCurrentInstance } from 'vue' export default defineComponent({ components: {}, props: {}, setup() { const state = reactive({ ${formConfig.modelName}: { ${defaultValueList.join('\n')} }, ${formConfig.rulesName}: { ${rulesList.join('\n')} }, ${activeTabs.join('\n')} ${fieldOptions.join('\n')} ${uploadData.join('\n')} }) const instance = getCurrentInstance() const submitForm = () => { instance.ctx.$refs['vForm'].validate(valid => { if (!valid) return //TODO: 提交表单 }) } const resetForm = () => { instance.ctx.$refs['vForm'].resetFields() } return { ...toRefs(state), submitForm, resetForm } } })`; return v3JSTemplate; }; // CONCATENATED MODULE: ./src/utils/sfc-generator.js function buildClassAttr(ctn, defaultClass) { const cop = ctn.options; let gridClassArray = []; !!defaultClass && gridClassArray.push(defaultClass); !!cop.customClass && cop.customClass.length > 0 && gridClassArray.push(cop.customClass.join(' ')); return gridClassArray.length > 0 ? `class="${gridClassArray.join(' ')}"` : ''; } const containerTemplates = { //容器组件属性 'grid': (ctn, formConfig) => { const gridClassAttr = buildClassAttr(ctn); const gridTemplate = ` ${ctn.cols.map(col => { const colOpt = col.options; const spanAttr = !!colOpt.responsive ? '' : `:span="${colOpt.span}"`; const mdAttr = !colOpt.responsive ? '' : `:md="${colOpt.md}"`; const smAttr = !colOpt.responsive ? '' : `:sm="${colOpt.sm}"`; const xsAttr = !colOpt.responsive ? '' : `:xs="${colOpt.xs}"`; const offsetAttr = !!colOpt.offset ? `:offset="${colOpt.offset}"` : ''; const pushAttr = !!colOpt.push ? `:push="${colOpt.push}"` : ''; const pullAttr = !!colOpt.pull ? `:pull="${colOpt.pull}"` : ''; const colClassAttr = buildClassAttr(col, 'grid-cell'); return ` ${col.widgetList.map(cw => { if (cw.category === 'container') { return buildContainerWidget(cw, formConfig); } else { return buildFieldWidget(cw, formConfig); } }).join('')} `; }).join('')} `; return gridTemplate; }, 'table': (ctn, formConfig) => { const tableClassAttr = buildClassAttr(ctn, 'table-layout'); const tableTemplate = `
${ctn.rows.map(tr => { return `${tr.cols.filter(td => !td.merged).map(td => { const tdOpt = td.options; const tdClassAttr = buildClassAttr(td, 'table-cell'); const colspanAttr = !isNaN(tdOpt.colspan) && tdOpt.colspan !== 1 ? `colspan="${tdOpt.colspan}"` : ''; const rowspanAttr = !isNaN(tdOpt.rowspan) && tdOpt.rowspan !== 1 ? `rowspan="${tdOpt.rowspan}"` : ''; let tdStyleArray = []; !!tdOpt.cellWidth && tdStyleArray.push('width: ' + tdOpt.cellWidth + ' !important'); !!tdOpt.cellHeight && tdStyleArray.push('height: ' + tdOpt.cellHeight + ' !important'); let tdStyleAttr = tdStyleArray.length > 0 ? `style="${tdStyleArray.join(';')}"` : ''; return ``; }).join('')}`; }).join('')}
${td.widgetList.map(tw => { if (tw.category === 'container') { return buildContainerWidget(tw, formConfig); } else { return buildFieldWidget(tw, formConfig); } }).join('')}
`; return tableTemplate; }, 'tab': (ctn, formConfig) => { const tabClassAttr = buildClassAttr(ctn); const vModel = ctn.tabs && ctn.tabs.length > 0 ? `v-model="${ctn.options.name}ActiveTab"` : ''; const tabTemplate = `
${ctn.tabs.map(tab => { const tabOpt = tab.options; const disabledAttr = tabOpt.disabled === true ? `disabled` : ''; return ` ${tab.widgetList.map(tw => { if (tw.category === 'container') { return buildContainerWidget(tw, formConfig); } else { return buildFieldWidget(tw, formConfig); } }).join('')}`; }).join('')}
`; return tabTemplate; }, 'sub-form': (ctn, formConfig) => { //TODO: } }; function buildContainerWidget(widget, formConfig) { return containerTemplates[widget.type] ? containerTemplates[widget.type](widget, formConfig) : null; } function getElAttrs(widget, formConfig) { //获取El组件属性 let wop = widget.options; return { vModel: `v-model="${formConfig.modelName}.${wop.name}"`, readonly: wop.readonly ? `readonly="true"` : '', disabled: wop.disabled ? `:disabled="true"` : '', size: !!wop.size ? `size="${wop.size}"` : '', type: !!wop.type ? `type="${wop.type === 'number' ? 'text' : wop.type}"` : '', showPassword: !!wop.showPassword ? `:show-password="${wop.showPassword}"` : '', placeholder: !!wop.placeholder ? `placeholder="${wop.placeholder}"` : '', rows: Object(util["g" /* isNotNull */])(wop.rows) && !isNaN(wop.rows) ? `rows="${wop.rows}"` : '', clearable: !!wop.clearable ? 'clearable' : '', minlength: Object(util["g" /* isNotNull */])(wop.minLength) && !isNaN(wop.minLength) ? `:minlength="${wop.minLength}"` : '', maxlength: Object(util["g" /* isNotNull */])(wop.maxLength) && !isNaN(wop.maxLength) ? `:maxlength="${wop.maxLength}"` : '', showWordLimit: !!wop.showWordLimit ? `:show-word-limit="true"` : '', prefixIcon: !!wop.prefixIcon ? `prefix-icon="${wop.prefixIcon}"` : '', suffixIcon: !!wop.suffixIcon ? `suffix-icon="${wop.suffixIcon}"` : '', controlsPosition: wop.controlsPosition === 'right' ? `controls-position="right"` : '', min: Object(util["g" /* isNotNull */])(wop.min) && !isNaN(wop.min) ? `:min="${wop.min}"` : '', max: Object(util["g" /* isNotNull */])(wop.max) && !isNaN(wop.max) ? `:max="${wop.max}"` : '', precision: Object(util["g" /* isNotNull */])(wop.precision) && !isNaN(wop.precision) ? `:precision="${wop.precision}"` : '', step: Object(util["g" /* isNotNull */])(wop.step) && !isNaN(wop.step) ? `:step="${wop.step}"` : '', filterable: !!wop.filterable ? `filterable` : '', allowCreate: !!wop.allowCreate ? `allow-create` : '', defaultFirstOption: !!wop.filterable && !!wop.allowCreate ? `default-first-option` : '', multiple: !!wop.multiple ? `multiple` : '', multipleLimit: !isNaN(wop.multipleLimit) && wop.multipleLimit > 0 ? `:multiple-limit="${wop.multipleLimit}"` : '', automaticDropdown: !!wop.automaticDropdown ? `automatic-dropdown` : '', remote: !!wop.remote ? `remote` : '', format: !!wop.format ? `format="${wop.format}"` : '', valueFormat: !!wop.valueFormat ? `value-format="${wop.valueFormat}"` : '', editable: !!wop.editable ? `:editable="${wop.editable}"` : '', startPlaceholder: !!wop.startPlaceholder ? `start-placeholder="${wop.startPlaceholder}"` : '', endPlaceholder: !!wop.endPlaceholder ? `end-placeholder="${wop.endPlaceholder}"` : '', activeText: !!wop.activeText ? `active-text="${wop.activeText}"` : '', inactiveText: !!wop.inactiveText ? `inactive-text="${wop.inactiveText}"` : '', activeColor: !!wop.activeColor ? `active-color="${wop.activeColor}"` : '', inactiveColor: !!wop.inactiveColor ? `inactive-color="${wop.inactiveColor}"` : '', switchWidth: !isNaN(wop.switchWidth) && wop.switchWidth !== 40 ? `:width="${wop.switchWidth}"` : '', rateMax: !isNaN(wop.max) && wop.max !== 5 ? `:max="${wop.max}"` : '', lowThreshold: !isNaN(wop.lowThreshold) && wop.lowThreshold !== 2 ? `:low-threshold="${wop.lowThreshold}"` : '', highThreshold: !isNaN(wop.highThreshold) && wop.highThreshold !== 4 ? `:high-threshold="${wop.highThreshold}"` : '', allowHalf: !!wop.allowHalf ? `allow-half` : '', showText: !!wop.showText ? `show-text` : '', showScore: !!wop.showScore ? `show-score` : '', sliderMin: !isNaN(wop.min) && wop.min !== 0 ? `:min="${wop.min}"` : '', sliderMax: !isNaN(wop.max) && wop.max !== 100 ? `:max="${wop.max}"` : '', sliderStep: !isNaN(wop.step) && wop.step !== 1 ? `:step="${wop.step}"` : '', sliderRange: !!wop.range ? `range` : '', sliderVertical: !!wop.vertical ? `vertical` : '', uploadAction: !!wop.uploadURL ? `action="${wop.uploadURL}"` : '', withCredentials: !!wop.withCredentials ? `with-credentials` : '', multipleSelect: !!wop.multipleSelect ? `multiple` : '', showFileList: !!wop.showFileList ? `show-file-list` : '', limit: !isNaN(wop.limit) ? `:limit="${wop.limit}"` : '', uploadTipSlotChild: !!wop.uploadTip ? `` : '', pictureUploadIconChild: ``, fileUploadIconChild: ``, buttonType: !!wop.type ? `type="${wop.type}"` : '', buttonPlain: !!wop.plain ? `plain` : '', buttonRound: !!wop.round ? `round` : '', buttonCircle: !!wop.circle ? `circle` : '', buttonIcon: !!wop.icon ? `icon="${wop.icon}"` : '', contentPosition: !!wop.contentPosition && wop.contentPosition !== 'center' ? `content-position="${wop.contentPosition}"` : '', appendButtonChild: !!wop.appendButton ? `` : '' }; } function buildRadioChildren(widget, formConfig) { let wop = widget.options; const childTag = !!wop.buttonStyle ? 'el-radio-button' : 'el-radio'; const borderAttr = !!wop.border ? `border` : ''; const styleAttr = `style="{display: ${wop.displayStyle}}"`; return `<${childTag} v-for="(item, index) in ${wop.name}Options" :key="index" :label="item.value" :disabled="item.disabled" ${borderAttr} ${styleAttr}>{{item.label}}`; } function buildCheckboxChildren(widget, formConfig) { let wop = widget.options; const childTag = !!wop.buttonStyle ? 'el-checkbox-button' : 'el-checkbox'; const borderAttr = !!wop.border ? `border` : ''; const styleAttr = `style="{display: ${wop.displayStyle}}"`; return `<${childTag} v-for="(item, index) in ${wop.name}Options" :key="index" :label="item.value" :disabled="item.disabled" ${borderAttr} ${styleAttr}>{{item.label}}`; } function buildSelectChildren(widget, formConfig) { let wop = widget.options; const childTag = 'el-option'; return `<${childTag} v-for="(item, index) in ${wop.name}Options" :key="index" :label="item.value" :value="item.value" :disabled="item.disabled">`; } const elTemplates = { //字段组件属性 'input': (widget, formConfig) => { const { vModel, readonly, disabled, size, type, showPassword, placeholder, clearable, minlength, maxlength, showWordLimit, prefixIcon, suffixIcon, appendButtonChild } = getElAttrs(widget, formConfig); return `${appendButtonChild}`; }, 'textarea': (widget, formConfig) => { const { vModel, readonly, disabled, size, type, showPassword, placeholder, rows, clearable, minlength, maxlength, showWordLimit } = getElAttrs(widget, formConfig); return ``; }, 'number': (widget, formConfig) => { const { vModel, disabled, size, type, showPassword, placeholder, controlsPosition, min, max, precision, step } = getElAttrs(widget, formConfig); return ``; }, 'radio': (widget, formConfig) => { const { vModel, disabled, size } = getElAttrs(widget, formConfig); const radioOptions = buildRadioChildren(widget, formConfig); return `${radioOptions}`; }, 'checkbox': (widget, formConfig) => { const { vModel, disabled, size } = getElAttrs(widget, formConfig); const checkboxOptions = buildCheckboxChildren(widget, formConfig); return `${checkboxOptions}`; }, 'select': (widget, formConfig) => { const { vModel, disabled, size, clearable, filterable, allowCreate, defaultFirstOption, automaticDropdown, multiple, multipleLimit, remote, placeholder } = getElAttrs(widget, formConfig); const selectOptions = buildSelectChildren(widget, formConfig); return `${selectOptions}`; }, 'time': (widget, formConfig) => { const { vModel, readonly, disabled, size, placeholder, clearable, format, editable } = getElAttrs(widget, formConfig); return ``; }, 'time-range': (widget, formConfig) => { const { vModel, readonly, disabled, size, startPlaceholder, endPlaceholder, clearable, format, editable } = getElAttrs(widget, formConfig); return ``; }, 'date': (widget, formConfig) => { const { vModel, readonly, disabled, size, type, placeholder, clearable, format, valueFormat, editable } = getElAttrs(widget, formConfig); return ``; }, 'date-range': (widget, formConfig) => { const { vModel, readonly, disabled, size, type, startPlaceholder, endPlaceholder, clearable, format, valueFormat, editable } = getElAttrs(widget, formConfig); return ``; }, 'switch': (widget, formConfig) => { const { vModel, disabled, activeText, inactiveText, activeColor, inactiveColor, switchWidth } = getElAttrs(widget, formConfig); return ``; }, 'rate': (widget, formConfig) => { const { vModel, disabled, rateMax, lowThreshold, highThreshold, allowHalf, showText, showScore } = getElAttrs(widget, formConfig); return ``; }, 'color': (widget, formConfig) => { const { vModel, disabled, size } = getElAttrs(widget, formConfig); return ``; }, 'slider': (widget, formConfig) => { const { vModel, disabled, sliderMin, sliderMax, sliderStep, sliderRange, sliderVertical } = getElAttrs(widget, formConfig); return ``; }, 'picture-upload': (widget, formConfig) => { const { vModel, disabled, uploadAction, withCredentials, multipleSelect, showFileList, limit, uploadTipSlotChild, pictureUploadIconChild } = getElAttrs(widget, formConfig); let wop = widget.options; return `${uploadTipSlotChild} ${pictureUploadIconChild}`; }, 'file-upload': (widget, formConfig) => { const { vModel, disabled, uploadAction, withCredentials, multipleSelect, showFileList, limit, uploadTipSlotChild, fileUploadIconChild } = getElAttrs(widget, formConfig); let wop = widget.options; return `${uploadTipSlotChild} ${fileUploadIconChild}`; }, 'rich-editor': (widget, formConfig) => { const { vModel, disabled, placeholder } = getElAttrs(widget, formConfig); return ``; }, 'cascader': (widget, formConfig) => { const { vModel, disabled, size, clearable, filterable, placeholder } = getElAttrs(widget, formConfig); let wop = widget.options; const optionsAttr = `:options="${wop.name}Options"`; return ``; }, 'static-text': (widget, formConfig) => { return `
${widget.options.textContent}
`; }, 'html-text': (widget, formConfig) => { return `
`; }, 'button': (widget, formConfig) => { const { buttonType, buttonPlain, buttonRound, buttonCircle, buttonIcon, disabled } = getElAttrs(widget, formConfig); return `${widget.options.label}`; }, 'divider': (widget, formConfig) => { const { contentPosition } = getElAttrs(widget, formConfig); return ``; } }; function buildFieldWidget(widget, formConfig) { let wop = widget.options; const label = wop.labelHidden ? '' : wop.label; const labelWidthAttr = wop.labelHidden ? `label-width="0"` : !!wop.labelWidth ? `label-width="${wop.labelWidth}px"` : ''; const labelTooltipAttr = wop.labelTooltip ? `title="${wop.labelTooltip}"` : ''; const propAttr = `prop="${wop.name}"`; let classArray = []; !!wop.required && classArray.push('required'); !!wop.customClass && wop.customClass.length > 0 && classArray.push(wop.customClass.join(' ')); if (!!wop.labelAlign) { wop.labelAlign !== 'label-left-align' && classArray.push(wop.labelAlign); } else if (!!widget.formItemFlag) { //classArray.push(formConfig.labelAlign || 'label-left-align') formConfig.labelAlign !== 'label-left-align' && classArray.push(formConfig.labelAlign); } if (!widget.formItemFlag) { classArray.push('static-content-item'); } const classAttr = classArray.length > 0 ? `class="${classArray.join(' ')}"` : ''; let customLabelDom = ``; !wop.labelIconClass && (customLabelDom = ''); const fwDom = elTemplates[widget.type] ? elTemplates[widget.type](widget, formConfig) : null; const isFormItem = !!widget.formItemFlag; const vShowAttr = !!wop.hidden ? `v-show="false"` : ''; return isFormItem ? ` ${customLabelDom} ${fwDom} ` : `
${fwDom}
`; } function genTemplate(formConfig, widgetList, vue3Flag = false) { const submitAttr = !!vue3Flag ? `@submit.prevent` : `@submit.native.prevent`; let childrenList = []; widgetList.forEach(wgt => { if (wgt.category === 'container') { childrenList.push(buildContainerWidget(wgt, formConfig)); } else { childrenList.push(buildFieldWidget(wgt, formConfig)); } }); const formTemplate = ` ${!!childrenList ? childrenList.join('\n') : ''} `; return formTemplate; } const genGlobalCSS = function (formConfig) { const globalCssTemplate = ` .el-input-number.full-width-input, .el-cascader.full-width-input { width: 100% !important; } .el-form-item--medium { .el-radio { line-height: 36px !important; } .el-rate{ margin-top: 8px; } } .el-form-item--small { .el-radio { line-height: 32px !important; } .el-rate{ margin-top: 6px; } } .el-form-item--mini { .el-radio { line-height: 28px !important; } .el-rate{ margin-top: 4px; } } .clear-fix:before, .clear-fix:after { display: table; content: ""; } .clear-fix:after { clear: both; } .float-right { float: right; } ${formConfig.cssCode}`; return globalCssTemplate; }; const genScopedCSS = function (formConfig, vue3Flag = false) { //const vDeep = !!vue3Flag ? `::v-deep` : `:deep` const cssTemplate = ` div.table-container { table.table-layout { width: 100%; table-layout: fixed; border-collapse: collapse; td.table-cell { display: table-cell; height: 36px; border: 1px solid #e1e2e3; } } } div.tab-container { } .label-left-align ${!!vue3Flag ? `:deep(.el-form-item__label)` : `::v-deep .el-form-item__label`} { text-align: left; } .label-center-align ${!!vue3Flag ? `:deep(.el-form-item__label)` : `::v-deep .el-form-item__label`} { text-align: center; } .label-right-align ${!!vue3Flag ? `:deep(.el-form-item__label)` : `::v-deep .el-form-item__label`} { text-align: right; } .custom-label { } .static-content-item { min-height: 20px; display: flex; align-items: center; ${!!vue3Flag ? `:deep(.el-divider--horizontal)` : `::v-deep .el-divider--horizontal`} { margin: 0; } }`; return cssTemplate; }; /** * 注册容器组件的代码生成器 * @param containerType 容器类型,必须唯一 * @param ctGenerator 代码生成器函数,接收两个参数(containerWidget, formConfig),返回生成的容器组件代码 */ const registerCWGenerator = function (containerType, ctGenerator) { containerTemplates[containerType] = ctGenerator; }; /** * 注册字段组件的代码生成器 * @param fieldType 字段类型,必须唯一 * @param ftGenerator 代码生成器函数,接收两个参数(fieldWidget, formConfig),返回生成的字段组件代码 */ const registerFWGenerator = function (fieldType, ftGenerator) { elTemplates[fieldType] = ftGenerator; }; const genSFC = function (formConfig, widgetList, beautifier, vue3Flag = false) { const html = beautifier.html(genTemplate(formConfig, widgetList, vue3Flag), beautifierOpts.html); const js = beautifier.js(!!vue3Flag ? genVue3JS(formConfig, widgetList) : Object(vue2js_generator["f" /* genVue2JS */])(formConfig, widgetList), beautifierOpts.js); const globalCss = beautifier.css(genGlobalCSS(formConfig), beautifierOpts.css); const scopedCss = beautifier.css(genScopedCSS(formConfig, vue3Flag), beautifierOpts.css); return ` `; }; // CONCATENATED MODULE: ./src/extension/samples/extension-sfc-generator.js const cardTemplateGenerator = function (cw, formConfig) { const wop = cw.options; //const headerAttr = `header="${wop.label}"` const classAttr = buildClassAttr(cw); const styleAttr = !!wop.cardWidth ? `style="{width: ${wop.cardWidth} !important}"` : ''; const shadowAttr = `shadow="${wop.shadow}"`; const vShowAttr = !!wop.hidden ? `v-show="false"` : ''; const cardTemplate = `
${wop.label} ${!!wop.showFold ? `` : ''}
${cw.widgetList.map(wItem => { if (wItem.category === 'container') { return buildContainerWidget(wItem, formConfig); } else { return buildFieldWidget(wItem, formConfig); } }).join('')}
`; return cardTemplate; }; const alertTemplateGenerator = function (fw, formConfig) { const wop = fw.options; const titleAttr = `title="${wop.title}"`; const typeAttr = `type=${wop.type}`; const descriptionAttr = !!wop.description ? `description="${wop.description}"` : ''; const closableAttr = `:closable="${wop.closable}"`; const closeTextAttr = !!wop.closeText ? `close-text="${wop.closeText}"` : ''; const centerAttr = `:center="${wop.center}"`; const showIconAttr = `:show-icon="${wop.showIcon}"`; const effectAttr = `effect="${wop.effect}"`; const alertTemplate = ` `; return alertTemplate; }; // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/extension/samples/alert/alert-widget.vue?vue&type=template&id=142c4cc6&scoped=true& var alert_widgetvue_type_template_id_142c4cc6_scoped_true_render = function render() { var _vm = this, _c = _vm._self._c; return _c('static-content-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-alert', { ref: "fieldEditor", attrs: { "title": _vm.field.options.title, "type": _vm.field.options.type, "description": _vm.field.options.description, "closable": _vm.field.options.closable, "center": _vm.field.options.center, "close-text": _vm.field.options.closeText, "show-icon": _vm.field.options.showIcon, "effect": _vm.field.options.effect }, on: { "close": _vm.handelCloseCustomEvent } })], 1); }; var alert_widgetvue_type_template_id_142c4cc6_scoped_true_staticRenderFns = []; // CONCATENATED MODULE: ./src/extension/samples/alert/alert-widget.vue?vue&type=template&id=142c4cc6&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue + 4 modules var static_content_wrapper = __webpack_require__("828b"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/extension/samples/alert/alert-widget.vue?vue&type=script&lang=js& /* harmony default export */ var alert_widgetvue_type_script_lang_js_ = ({ name: "alert-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter_default.a, fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { StaticContentWrapper: static_content_wrapper["default"] }, created() { this.registerToRefList(); this.initEventHandler(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: { handelCloseCustomEvent() { if (!!this.field.options.onClose) { let changeFn = new Function(this.field.options.onClose); changeFn.call(this); } } } }); // CONCATENATED MODULE: ./src/extension/samples/alert/alert-widget.vue?vue&type=script&lang=js& /* harmony default export */ var alert_alert_widgetvue_type_script_lang_js_ = (alert_widgetvue_type_script_lang_js_); // CONCATENATED MODULE: ./src/extension/samples/alert/alert-widget.vue /* normalize component */ var alert_widget_component = Object(componentNormalizer["a" /* default */])( alert_alert_widgetvue_type_script_lang_js_, alert_widgetvue_type_template_id_142c4cc6_scoped_true_render, alert_widgetvue_type_template_id_142c4cc6_scoped_true_staticRenderFns, false, null, "142c4cc6", null ) /* harmony default export */ var alert_widget = (alert_widget_component.exports); // CONCATENATED MODULE: ./src/extension/extension-loader.js const loadExtension = function () { /** * 加载容器组件步骤: * 1. 加载组件Json Schema; * 2. 全局注册容器组件,容器组件有两种状态——设计期和运行期,故需要注册两个组件; * 3. 全局注册属性编辑器组件(基本属性、高级属性、事件属性); * 4. 注册容器组件的代码生成器; * 5. 加载完毕。 */ addContainerWidgetSchema(cardSchema); //加载组件Json Schema /* -------------------------------------------------- */ external_commonjs_vue_commonjs2_vue_root_Vue_default.a.component(card_widget.name, card_widget); //注册设计期的容器组件 external_commonjs_vue_commonjs2_vue_root_Vue_default.a.component(card_item.name, card_item); //注册运行期的容器组件 /* -------------------------------------------------- */ registerCPEditor('card-folded', 'card-folded-editor', createBooleanEditor('folded', 'extension.setting.cardFolded')); registerCPEditor('card-showFold', 'card-showFold-editor', createBooleanEditor('showFold', 'extension.setting.cardShowFold')); registerCPEditor('card-cardWidth', 'card-cardWidth-editor', createInputTextEditor('cardWidth', 'extension.setting.cardWidth')); let shadowOptions = [{ label: 'never', value: 'never' }, { label: 'hover', value: 'hover' }, { label: 'always', value: 'always' }]; registerCPEditor('card-shadow', 'card-shadow-editor', createSelectEditor('shadow', 'extension.setting.cardShadow', { optionItems: shadowOptions })); /* -------------------------------------------------- */ registerCWGenerator('card', cardTemplateGenerator); //注册容器组件的代码生成器 /* -------------------------------------------------- */ /* 容器组件加载完毕 end */ /** * 加载字段组件步骤: * 1. 加载组件Json Schema; * 2. 全局注册字段组件,字段组件设计期和运行期共用,故需要仅需注册一个组件; * 3. 全局注册属性编辑器组件(基本属性、高级属性、事件属性); * 4. 注册字段组件的代码生成器; * 5. 加载完毕。 */ addCustomWidgetSchema(alertSchema); //加载组件Json Schema /* -------------------------------------------------- */ external_commonjs_vue_commonjs2_vue_root_Vue_default.a.component(alert_widget.name, alert_widget); //注册组件 /* -------------------------------------------------- */ registerCPEditor('alert-title', 'alert-title-editor', createInputTextEditor('title', 'extension.setting.alertTitle')); let typeOptions = [{ label: 'success', value: 'success' }, { label: 'warning', value: 'warning' }, { label: 'info', value: 'info' }, { label: 'error', value: 'error' }]; // PERegister.registerCPEditor('alert-type', 'alert-type-editor', // PEFactory.createSelectEditor('type', 'extension.setting.alertType', // {optionItems: typeOptions})) /* type属性映射已存在,无须再注册,故只需注册属性编辑器即可!! */ external_commonjs_vue_commonjs2_vue_root_Vue_default.a.component('alert-type-editor', createSelectEditor('type', 'extension.setting.alertType', { optionItems: typeOptions })); registerCPEditor('alert-description', 'alert-description-editor', createInputTextEditor('description', 'extension.setting.description')); registerCPEditor('alert-closable', 'alert-closable-editor', createBooleanEditor('closable', 'extension.setting.closable')); registerCPEditor('alert-closeText', 'alert-closeText-editor', createInputTextEditor('closeText', 'extension.setting.closeText')); registerCPEditor('alert-center', 'alert-center-editor', createBooleanEditor('center', 'extension.setting.center')); registerCPEditor('alert-showIcon', 'alert-showIcon-editor', createBooleanEditor('showIcon', 'extension.setting.showIcon')); let effectOptions = [{ label: 'light', value: 'light' }, { label: 'dark', value: 'dark' }]; registerCPEditor('alert-effect', 'alert-effect-editor', createRadioButtonGroupEditor('effect', 'extension.setting.effect', { optionItems: effectOptions })); registerEPEditor('alert-onClose', 'alert-onClose-editor', createEventHandlerEditor('onClose', [])); /* -------------------------------------------------- */ registerFWGenerator('alert', alertTemplateGenerator); //注册字段组件的代码生成器 /* -------------------------------------------------- */ /* 字段组件加载完毕 end */ }; // EXTERNAL MODULE: ./node_modules/_axios@0.21.4@axios/index.js var _axios_0_21_4_axios = __webpack_require__("4ff3"); var _axios_0_21_4_axios_default = /*#__PURE__*/__webpack_require__.n(_axios_0_21_4_axios); // CONCATENATED MODULE: ./install-render.js loadExtension(); form_render.install = function (Vue) { Vue.component(form_render.name, form_render); }; const components = [form_render]; const install = Vue => { window.axios = _axios_0_21_4_axios_default.a; components.forEach(component => { Vue.component(component.name, component); }); }; if (typeof window !== 'undefined' && window.Vue) { /* script方式引入时主动调用install方法!! */ install(window.Vue); } /* harmony default export */ var install_render = ({ install, VFormRender: form_render }); // CONCATENATED MODULE: ./node_modules/_@vue_cli-service@4.5.19@@vue/cli-service/lib/commands/build/entry-lib.js /* harmony default export */ var entry_lib = __webpack_exports__["default"] = (install_render); /***/ }), /***/ "2c15": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "2d11": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("24b8"); /* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("ca00"); /* harmony import */ var _utils_validators__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("a00a"); /* harmony default export */ __webpack_exports__["a"] = ({ inject: ['refList', 'getFormConfig', 'globalOptionData', 'globalModel', 'getOptionData', 'getGlobalDsv'], computed: { formConfig() { return this.getFormConfig(); }, subFormName() { return !!this.parentWidget ? this.parentWidget.options.name : ''; }, subFormItemFlag() { return !!this.parentWidget ? this.parentWidget.type === 'sub-form' : false; }, formModel: { cache: false, get() { return this.globalModel.formModel; } } }, methods: { //--------------------- 组件内部方法 begin ------------------// getPropName() { if (this.subFormItemFlag && !this.designState) { return this.subFormName + "." + this.subFormRowIndex + "." + this.field.options.name + ""; } else { return this.field.options.name; } }, initFieldModel() { if (!this.field.formItemFlag) { return; } if (!!this.subFormItemFlag && !this.designState) { //SubForm子表单组件需要特殊处理!! let subFormData = this.formModel[this.subFormName]; if ((subFormData === undefined || subFormData[this.subFormRowIndex] === undefined || subFormData[this.subFormRowIndex][this.field.options.name] === undefined) && this.field.options.defaultValue !== undefined) { this.fieldModel = this.field.options.defaultValue; subFormData[this.subFormRowIndex][this.field.options.name] = this.field.options.defaultValue; } else if (subFormData[this.subFormRowIndex][this.field.options.name] === undefined) { this.fieldModel = null; subFormData[this.subFormRowIndex][this.field.options.name] = null; } else { this.fieldModel = subFormData[this.subFormRowIndex][this.field.options.name]; } /* 主动触发子表单内field-widget的onChange事件!! */ setTimeout(() => { //延时触发onChange事件, 便于更新计算字段!! this.handleOnChangeForSubForm(this.fieldModel, this.oldFieldValue, subFormData, this.subFormRowId); }, 800); this.oldFieldValue = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* deepClone */ "a"])(this.fieldModel); this.initFileList(); //处理图片上传、文件上传字段 return; } if (this.formModel[this.field.options.name] === undefined && this.field.options.defaultValue !== undefined) { this.fieldModel = this.field.options.defaultValue; } else if (this.formModel[this.field.options.name] === undefined) { //如果formModel为空对象,则初始化字段值为null!! this.formModel[this.field.options.name] = null; } else { this.fieldModel = this.formModel[this.field.options.name]; } this.oldFieldValue = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* deepClone */ "a"])(this.fieldModel); this.initFileList(); //处理图片上传、文件上传字段 }, initFileList() { //初始化上传组件的已上传文件列表 if (this.field.type !== 'picture-upload' && this.field.type !== 'file-upload' || this.designState === true) { return; } if (!!this.fieldModel) { if (Array.isArray(this.fieldModel)) { this.fileList = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* deepClone */ "a"])(this.fieldModel); } else { this.fileList.splice(0, 0, Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* deepClone */ "a"])(this.fieldModel)); } } }, initEventHandler() { this.$on('setFormData', function (newFormData) { //console.log('formModel of globalModel----------', this.globalModel.formModel) if (!this.subFormItemFlag) { this.setValue(newFormData[this.field.options.name]); } }); this.$on('field-value-changed', function (values) { if (!!this.subFormItemFlag) { let subFormData = this.formModel[this.subFormName]; this.handleOnChangeForSubForm(values[0], values[1], subFormData, this.subFormRowId); } else { this.handleOnChange(values[0], values[1]); } }); /* 监听重新加载选项事件 */ this.$on('reloadOptionItems', function (widgetNames) { if (widgetNames.length === 0 || widgetNames.indexOf(this.field.options.name) > -1) { this.initOptionItems(true); } }); }, handleOnCreated() { if (!!this.field.options.onCreated) { let customFunc = new Function(this.field.options.onCreated); customFunc.call(this); } }, handleOnMounted() { if (!!this.field.options.onMounted) { let mountFunc = new Function(this.field.options.onMounted); mountFunc.call(this); } }, registerToRefList(oldRefName) { if (this.refList !== null && !!this.field.options.name) { if (this.subFormItemFlag && !this.designState) { //处理子表单元素(且非设计状态) if (!!oldRefName) { delete this.refList[oldRefName + '@row' + this.subFormRowId]; } this.refList[this.field.options.name + '@row' + this.subFormRowId] = this; } else { if (!!oldRefName) { delete this.refList[oldRefName]; } this.refList[this.field.options.name] = this; } } }, unregisterFromRefList() { //销毁组件时注销组件ref if (this.refList !== null && !!this.field.options.name) { let oldRefName = this.field.options.name; if (this.subFormItemFlag && !this.designState) { //处理子表单元素(且非设计状态) delete this.refList[oldRefName + '@row' + this.subFormRowId]; } else { delete this.refList[oldRefName]; } } }, initOptionItems(keepSelected) { if (this.designState) { return; } if (this.field.type === 'radio' || this.field.type === 'checkbox' || this.field.type === 'select' || this.field.type === 'cascader') { /* 首先处理数据源选项加载 */ if (!!this.field.options.dsEnabled) { this.field.options.optionItems.splice(0, this.field.options.optionItems.length); // 清空原有选项 let curDSName = this.field.options.dsName; if (!!curDSName && !!this.formConfig.dataSources) { let curDS = null; this.formConfig.dataSources.forEach(ds => { if (ds.uniqueName === curDSName) { curDS = ds; } }); if (!!curDS) { let gDsv = this.getGlobalDsv() || {}; console.log('Global DSV is: ', gDsv); let localDsv = new Object({}); Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* overwriteObj */ "j"])(localDsv, gDsv); localDsv['widgetName'] = this.field.options.name; Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* runDataSourceRequest */ "k"])(curDS, localDsv, false, this.$message).then(res => { this.loadOptions(res); }).catch(err => { this.$message.error(err.message); }); } } return; } /* 异步更新option-data之后globalOptionData不能获取到最新值,改用provide的getOptionData()方法 */ const newOptionItems = this.getOptionData(); if (!!newOptionItems && newOptionItems.hasOwnProperty(this.field.options.name)) { if (!!keepSelected) { this.reloadOptions(newOptionItems[this.field.options.name]); } else { this.loadOptions(newOptionItems[this.field.options.name]); } } } }, refreshDefaultValue() { if (this.designState === true && this.field.options.defaultValue !== undefined) { this.fieldModel = this.field.options.defaultValue; } }, clearFieldRules() { if (!this.field.formItemFlag) { return; } this.rules.splice(0, this.rules.length); //清空已有 }, buildFieldRules() { if (!this.field.formItemFlag) { return; } this.rules.splice(0, this.rules.length); //清空已有 if (!!this.field.options.required) { this.rules.push({ required: true, //trigger: ['blur', 'change'], trigger: ['blur'], /* 去掉change事件触发校验,change事件触发时formModel数据尚未更新,导致radio/checkbox必填校验出错!! */ message: this.field.options.requiredHint || this.i18nt('render.hint.fieldRequired') }); } if (!!this.field.options.validation) { let vldName = this.field.options.validation; if (!!_utils_validators__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"][vldName]) { this.rules.push({ validator: _utils_validators__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"][vldName], trigger: ['blur', 'change'], label: this.field.options.label, errorMsg: this.field.options.validationHint }); } else { this.rules.push({ validator: _utils_validators__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"]['regExp'], trigger: ['blur', 'change'], regExp: vldName, label: this.field.options.label, errorMsg: this.field.options.validationHint }); } } if (!!this.field.options.onValidate) { let customFn = new Function('rule', 'value', 'callback', this.field.options.onValidate); this.rules.push({ validator: customFn, trigger: ['blur', 'change'], label: this.field.options.label }); } }, /** * 禁用字段值变动触发表单校验 */ disableChangeValidate() { if (!this.rules) { return; } this.rules.forEach(rule => { if (!!rule.trigger) { rule.trigger.splice(0, rule.trigger.length); } }); }, /** * 启用字段值变动触发表单校验 */ enableChangeValidate() { if (!this.rules) { return; } this.rules.forEach(rule => { if (!!rule.trigger) { rule.trigger.push('blur'); rule.trigger.push('change'); } }); }, disableOptionOfList(optionList, optionValue) { if (!!optionList && optionList.length > 0) { optionList.forEach(opt => { if (opt.value === optionValue) { opt.disabled = true; } }); } }, enableOptionOfList(optionList, optionValue) { if (!!optionList && optionList.length > 0) { optionList.forEach(opt => { if (opt.value === optionValue) { opt.disabled = false; } }); } }, //--------------------- 组件内部方法 end ------------------// //--------------------- 事件处理 begin ------------------// emitFieldDataChange(newValue, oldValue) { this.$emit('field-value-changed', [newValue, oldValue]); /* 必须用dispatch向指定父组件派发消息!! */ this.dispatch('VFormRender', 'fieldChange', [this.field.options.name, newValue, oldValue, this.subFormName, this.subFormRowIndex]); }, syncUpdateFormModel(value) { if (!!this.designState) { return; } if (!!this.subFormItemFlag) { let subFormData = this.formModel[this.subFormName] || [{}]; let subFormDataRow = subFormData[this.subFormRowIndex]; subFormDataRow[this.field.options.name] = value; } else { this.formModel[this.field.options.name] = value; } }, handleChangeEvent(value) { /* input的清除输入小按钮会同时触发handleChangeEvent、handleInputCustomEvent!! */ this.syncUpdateFormModel(value); this.emitFieldDataChange(value, this.oldFieldValue); //number组件一般不会触发focus事件,故此处需要手工赋值oldFieldValue!! this.oldFieldValue = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* deepClone */ "a"])(value); /* oldFieldValue需要在initFieldModel()方法中赋初值!! */ /* 主动触发表单的单个字段校验,用于清除字段可能存在的校验错误提示 */ this.dispatch('VFormRender', 'fieldValidation', [this.getPropName()]); }, handleFocusCustomEvent(event) { this.oldFieldValue = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* deepClone */ "a"])(this.fieldModel); //保存修改change之前的值 if (!!this.field.options.onFocus) { let customFn = new Function('event', this.field.options.onFocus); customFn.call(this, event); } }, handleBlurCustomEvent(event) { if (!!this.field.options.onBlur) { let customFn = new Function('event', this.field.options.onBlur); customFn.call(this, event); } }, handleInputCustomEvent(value) { this.syncUpdateFormModel(value); /* 主动触发表单的单个字段校验,用于清除字段可能存在的校验错误提示 */ this.dispatch('VFormRender', 'fieldValidation', [this.getPropName()]); if (!!this.field.options.onInput) { let customFn = new Function('value', this.field.options.onInput); customFn.call(this, value); } }, emitAppendButtonClick() { /* 必须调用mixins中的dispatch方法逐级向父组件发送消息!! */ this.dispatch('VFormRender', 'appendButtonClick', [this]); }, handleOnChange(val, oldVal) { //自定义onChange事件 if (!!this.field.options.onChange) { let changeFn = new Function('value', 'oldValue', this.field.options.onChange); changeFn.call(this, val, oldVal); } }, handleOnChangeForSubForm(val, oldVal, subFormData, rowId) { //子表单自定义onChange事件 if (!!this.field.options.onChange) { let changeFn = new Function('value', 'oldValue', 'subFormData', 'rowId', this.field.options.onChange); changeFn.call(this, val, oldVal, subFormData, rowId); } }, handleButtonWidgetClick() { if (!!this.designState) { //设计状态不触发点击事件 return; } if (!!this.field.options.onClick) { let changeFn = new Function(this.field.options.onClick); changeFn.call(this); } else { this.dispatch('VFormRender', 'buttonClick', [this]); } }, remoteQuery(keyword) { if (!!this.field.options.onRemoteQuery) { let remoteFn = new Function('keyword', this.field.options.onRemoteQuery); remoteFn.call(this, keyword); } }, //--------------------- 事件处理 end ------------------// //--------------------- 以下为组件支持外部调用的API方法 begin ------------------// /* 提示:用户可自行扩充这些方法!!! */ getFormRef() { /* 获取VFrom引用,必须在VForm组件created之后方可调用 */ return this.refList['v_form_ref']; }, getWidgetRef(widgetName, showError) { let foundRef = this.refList[widgetName]; if (!foundRef && !!showError) { this.$message.error(this.i18nt('render.hint.refNotFound') + widgetName); } return foundRef; }, getFieldEditor() { //获取内置的el表单组件 return this.$refs['fieldEditor']; }, /* 注意:VFormRender的setFormData方法不会触发子表单内field-widget的setValue方法, 因为setFormData方法调用后,子表单内所有field-widget组件已被清空,接收不到setFormData事件!! * */ setValue(newValue) { /* if ((this.field.type === 'picture-upload') || (this.field.type === 'file-upload')) { this.fileList = newValue } else */ if (!!this.field.formItemFlag) { let oldValue = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* deepClone */ "a"])(this.fieldModel); this.fieldModel = newValue; this.initFileList(); this.syncUpdateFormModel(newValue); this.emitFieldDataChange(newValue, oldValue); } }, getValue() { /* if ((this.field.type === 'picture-upload') || (this.field.type === 'file-upload')) { return this.fileList } else */ { return this.fieldModel; } }, resetField() { if (!!this.subFormItemFlag) { //跳过子表单组件 return; } let defaultValue = this.field.options.defaultValue; this.setValue(defaultValue); //清空上传组件文件列表 if (this.field.type === 'picture-upload' || this.field.type === 'file-upload') { this.$refs['fieldEditor'].clearFiles(); this.fileList.splice(0, this.fileList.length); } }, setWidgetOption(optionName, optionValue) { //通用组件选项修改API if (this.field.options.hasOwnProperty(optionName)) { this.field.options[optionName] = optionValue; //TODO: 是否重新构建组件??有些属性修改后必须重新构建组件才能生效,比如字段校验规则。 } }, setReadonly(flag) { this.field.options.readonly = flag; }, setDisabled(flag) { this.field.options.disabled = flag; }, setAppendButtonVisible(flag) { this.field.options.appendButton = flag; }, setAppendButtonDisabled(flag) { this.field.options.appendButtonDisabled = flag; }, setHidden(flag) { this.field.options.hidden = flag; if (!!flag) { //清除组件校验规则 this.clearFieldRules(); } else { //重建组件校验规则 this.buildFieldRules(); } }, setRequired(flag) { this.field.options.required = flag; this.buildFieldRules(); }, setLabel(newLabel) { this.field.options.label = newLabel; }, focus() { if (!!this.getFieldEditor() && !!this.getFieldEditor().focus) { this.getFieldEditor().focus(); } }, clearSelectedOptions() { //清空已选选项 if (this.field.type !== 'checkbox' && this.field.type !== 'radio' && this.field.type !== 'select') { return; } if (this.field.type === 'checkbox' || this.field.type === 'select' && this.field.options.multiple) { this.fieldModel = []; } else { this.fieldModel = ''; } }, /** * 加载选项,并清空字段值 * @param options */ loadOptions(options) { /* this.field.options.optionItems = deepClone(options) //this.clearSelectedOptions() //清空已选选项 */ this.field.options.optionItems = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* translateOptionItems */ "l"])(options, this.field.type, this.field.options.labelKey, this.field.options.valueKey); }, /** * 重新加载选项,不清空字段值 * @param options */ reloadOptions(options) { // this.field.options.optionItems = deepClone(options) this.field.options.optionItems = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* translateOptionItems */ "l"])(options, this.field.type, this.field.options.labelKey, this.field.options.valueKey); }, /** * 返回radio/checkbox/select/cascader的选项数据 * @returns 选择项数组 */ getOptions() { return this.field.options.optionItems; }, disableOption(optionValue) { this.disableOptionOfList(this.field.options.optionItems, optionValue); }, enableOption(optionValue) { this.enableOptionOfList(this.field.options.optionItems, optionValue); }, /** * 返回选择项 * @returns {*} */ getOptionItems() { return this.field.options.optionItems; }, setUploadHeader(name, value) { this.$set(this.uploadHeaders, name, value); }, setUploadData(name, value) { this.$set(this.uploadData, name, value); }, setToolbar(customToolbar) { this.customToolbar = customToolbar; }, /** * 是否子表单内嵌的组件 * @returns {boolean} */ isSubFormItem() { return !!this.parentWidget ? this.parentWidget.type === 'sub-form' : false; } //--------------------- 以上为组件支持外部调用的API方法 end ------------------// } }); /***/ }), /***/ "2e4e": /***/ (function(module, exports, __webpack_require__) { var classof = __webpack_require__("f1a4"); // `IsArray` abstract operation // https://tc39.es/ecma262/#sec-isarray // eslint-disable-next-line es/no-array-isarray -- safe module.exports = Array.isArray || function isArray(argument) { return classof(argument) == 'Array'; }; /***/ }), /***/ "2f19": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_time_widget_vue_vue_type_style_index_0_id_0b0dc71b_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("f4f2"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_time_widget_vue_vue_type_style_index_0_id_0b0dc71b_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_time_widget_vue_vue_type_style_index_0_id_0b0dc71b_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "2faa": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/rate-widget.vue?vue&type=template&id=9fc10714&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-rate', { ref: "fieldEditor", attrs: { "disabled": _vm.field.options.disabled, "max": _vm.field.options.max, "low-threshold": _vm.field.options.lowThreshold, "high-threshold": _vm.field.options.highThreshold, "allow-half": _vm.field.options.allowHalf, "show-text": _vm.field.options.showText, "show-score": _vm.field.options.showScore }, on: { "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/rate-widget.vue?vue&type=template&id=9fc10714&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/rate-widget.vue?vue&type=script&lang=js& /* harmony default export */ var rate_widgetvue_type_script_lang_js_ = ({ name: "rate-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/rate-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_rate_widgetvue_type_script_lang_js_ = (rate_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/rate-widget.vue?vue&type=style&index=0&id=9fc10714&prod&lang=scss&scoped=true& var rate_widgetvue_type_style_index_0_id_9fc10714_prod_lang_scss_scoped_true_ = __webpack_require__("f169"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/rate-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_rate_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "9fc10714", null ) /* harmony default export */ var rate_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "3134": /***/ (function(module, exports, __webpack_require__) { var toLength = __webpack_require__("0bce"); // `LengthOfArrayLike` abstract operation // https://tc39.es/ecma262/#sec-lengthofarraylike module.exports = function (obj) { return toLength(obj.length); }; /***/ }), /***/ "3135": /***/ (function(module, exports, __webpack_require__) { var toString = __webpack_require__("d4e1"); module.exports = function (argument, $default) { return argument === undefined ? arguments.length < 2 ? '' : $default : toString(argument); }; /***/ }), /***/ "32ad": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_select_widget_vue_vue_type_style_index_0_id_0eb4f146_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("9580"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_select_widget_vue_vue_type_style_index_0_id_0eb4f146_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_select_widget_vue_vue_type_style_index_0_id_0eb4f146_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "3335": /***/ (function(module, exports, __webpack_require__) { (function webpackUniversalModuleDefinition(root, factory) { if(true) module.exports = factory(__webpack_require__("2480")); else {} })((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE_a352__) { return /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "fb15"); /******/ }) /************************************************************************/ /******/ ({ /***/ "01f9": /***/ (function(module, exports, __webpack_require__) { "use strict"; var LIBRARY = __webpack_require__("2d00"); var $export = __webpack_require__("5ca1"); var redefine = __webpack_require__("2aba"); var hide = __webpack_require__("32e9"); var Iterators = __webpack_require__("84f2"); var $iterCreate = __webpack_require__("41a0"); var setToStringTag = __webpack_require__("7f20"); var getPrototypeOf = __webpack_require__("38fd"); var ITERATOR = __webpack_require__("2b4c")('iterator'); var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` var FF_ITERATOR = '@@iterator'; var KEYS = 'keys'; var VALUES = 'values'; var returnThis = function () { return this; }; module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { $iterCreate(Constructor, NAME, next); var getMethod = function (kind) { if (!BUGGY && kind in proto) return proto[kind]; switch (kind) { case KEYS: return function keys() { return new Constructor(this, kind); }; case VALUES: return function values() { return new Constructor(this, kind); }; } return function entries() { return new Constructor(this, kind); }; }; var TAG = NAME + ' Iterator'; var DEF_VALUES = DEFAULT == VALUES; var VALUES_BUG = false; var proto = Base.prototype; var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; var $default = $native || getMethod(DEFAULT); var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; var methods, key, IteratorPrototype; // Fix native if ($anyNative) { IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { // Set @@toStringTag to native iterators setToStringTag(IteratorPrototype, TAG, true); // fix for some old engines if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis); } } // fix Array#{values, @@iterator}.name in V8 / FF if (DEF_VALUES && $native && $native.name !== VALUES) { VALUES_BUG = true; $default = function values() { return $native.call(this); }; } // Define iterator if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { hide(proto, ITERATOR, $default); } // Plug for library Iterators[NAME] = $default; Iterators[TAG] = returnThis; if (DEFAULT) { methods = { values: DEF_VALUES ? $default : getMethod(VALUES), keys: IS_SET ? $default : getMethod(KEYS), entries: $entries }; if (FORCED) for (key in methods) { if (!(key in proto)) redefine(proto, key, methods[key]); } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); } return methods; }; /***/ }), /***/ "02f4": /***/ (function(module, exports, __webpack_require__) { var toInteger = __webpack_require__("4588"); var defined = __webpack_require__("be13"); // true -> String#at // false -> String#codePointAt module.exports = function (TO_STRING) { return function (that, pos) { var s = String(defined(that)); var i = toInteger(pos); var l = s.length; var a, b; if (i < 0 || i >= l) return TO_STRING ? '' : undefined; a = s.charCodeAt(i); return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff ? TO_STRING ? s.charAt(i) : a : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; }; }; /***/ }), /***/ "0390": /***/ (function(module, exports, __webpack_require__) { "use strict"; var at = __webpack_require__("02f4")(true); // `AdvanceStringIndex` abstract operation // https://tc39.github.io/ecma262/#sec-advancestringindex module.exports = function (S, index, unicode) { return index + (unicode ? at(S, index).length : 1); }; /***/ }), /***/ "0bfb": /***/ (function(module, exports, __webpack_require__) { "use strict"; // 21.2.5.3 get RegExp.prototype.flags var anObject = __webpack_require__("cb7c"); module.exports = function () { var that = anObject(this); var result = ''; if (that.global) result += 'g'; if (that.ignoreCase) result += 'i'; if (that.multiline) result += 'm'; if (that.unicode) result += 'u'; if (that.sticky) result += 'y'; return result; }; /***/ }), /***/ "0d58": /***/ (function(module, exports, __webpack_require__) { // 19.1.2.14 / 15.2.3.14 Object.keys(O) var $keys = __webpack_require__("ce10"); var enumBugKeys = __webpack_require__("e11e"); module.exports = Object.keys || function keys(O) { return $keys(O, enumBugKeys); }; /***/ }), /***/ "1495": /***/ (function(module, exports, __webpack_require__) { var dP = __webpack_require__("86cc"); var anObject = __webpack_require__("cb7c"); var getKeys = __webpack_require__("0d58"); module.exports = __webpack_require__("9e1e") ? Object.defineProperties : function defineProperties(O, Properties) { anObject(O); var keys = getKeys(Properties); var length = keys.length; var i = 0; var P; while (length > i) dP.f(O, P = keys[i++], Properties[P]); return O; }; /***/ }), /***/ "214f": /***/ (function(module, exports, __webpack_require__) { "use strict"; __webpack_require__("b0c5"); var redefine = __webpack_require__("2aba"); var hide = __webpack_require__("32e9"); var fails = __webpack_require__("79e5"); var defined = __webpack_require__("be13"); var wks = __webpack_require__("2b4c"); var regexpExec = __webpack_require__("520a"); var SPECIES = wks('species'); var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () { // #replace needs built-in support for named groups. // #match works fine because it just return the exec results, even if it has // a "grops" property. var re = /./; re.exec = function () { var result = []; result.groups = { a: '7' }; return result; }; return ''.replace(re, '$') !== '7'; }); var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () { // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec var re = /(?:)/; var originalExec = re.exec; re.exec = function () { return originalExec.apply(this, arguments); }; var result = 'ab'.split(re); return result.length === 2 && result[0] === 'a' && result[1] === 'b'; })(); module.exports = function (KEY, length, exec) { var SYMBOL = wks(KEY); var DELEGATES_TO_SYMBOL = !fails(function () { // String methods call symbol-named RegEp methods var O = {}; O[SYMBOL] = function () { return 7; }; return ''[KEY](O) != 7; }); var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () { // Symbol-named RegExp methods call .exec var execCalled = false; var re = /a/; re.exec = function () { execCalled = true; return null; }; if (KEY === 'split') { // RegExp[@@split] doesn't call the regex's exec method, but first creates // a new one. We need to return the patched regex when creating the new one. re.constructor = {}; re.constructor[SPECIES] = function () { return re; }; } re[SYMBOL](''); return !execCalled; }) : undefined; if ( !DELEGATES_TO_SYMBOL || !DELEGATES_TO_EXEC || (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) || (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC) ) { var nativeRegExpMethod = /./[SYMBOL]; var fns = exec( defined, SYMBOL, ''[KEY], function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) { if (regexp.exec === regexpExec) { if (DELEGATES_TO_SYMBOL && !forceStringMethod) { // The native String method already delegates to @@method (this // polyfilled function), leasing to infinite recursion. // We avoid it by directly calling the native @@method method. return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) }; } return { done: true, value: nativeMethod.call(str, regexp, arg2) }; } return { done: false }; } ); var strfn = fns[0]; var rxfn = fns[1]; redefine(String.prototype, KEY, strfn); hide(RegExp.prototype, SYMBOL, length == 2 // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue) // 21.2.5.11 RegExp.prototype[@@split](string, limit) ? function (string, arg) { return rxfn.call(string, this, arg); } // 21.2.5.6 RegExp.prototype[@@match](string) // 21.2.5.9 RegExp.prototype[@@search](string) : function (string) { return rxfn.call(string, this); } ); } }; /***/ }), /***/ "230e": /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__("d3f4"); var document = __webpack_require__("7726").document; // typeof document.createElement is 'object' in old IE var is = isObject(document) && isObject(document.createElement); module.exports = function (it) { return is ? document.createElement(it) : {}; }; /***/ }), /***/ "23c6": /***/ (function(module, exports, __webpack_require__) { // getting tag from 19.1.3.6 Object.prototype.toString() var cof = __webpack_require__("2d95"); var TAG = __webpack_require__("2b4c")('toStringTag'); // ES3 wrong here var ARG = cof(function () { return arguments; }()) == 'Arguments'; // fallback for IE11 Script Access Denied error var tryGet = function (it, key) { try { return it[key]; } catch (e) { /* empty */ } }; module.exports = function (it) { var O, T, B; return it === undefined ? 'Undefined' : it === null ? 'Null' // @@toStringTag case : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T // builtinTag case : ARG ? cof(O) // ES3 arguments fallback : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B; }; /***/ }), /***/ "2621": /***/ (function(module, exports) { exports.f = Object.getOwnPropertySymbols; /***/ }), /***/ "2aba": /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__("7726"); var hide = __webpack_require__("32e9"); var has = __webpack_require__("69a8"); var SRC = __webpack_require__("ca5a")('src'); var $toString = __webpack_require__("fa5b"); var TO_STRING = 'toString'; var TPL = ('' + $toString).split(TO_STRING); __webpack_require__("8378").inspectSource = function (it) { return $toString.call(it); }; (module.exports = function (O, key, val, safe) { var isFunction = typeof val == 'function'; if (isFunction) has(val, 'name') || hide(val, 'name', key); if (O[key] === val) return; if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key))); if (O === global) { O[key] = val; } else if (!safe) { delete O[key]; hide(O, key, val); } else if (O[key]) { O[key] = val; } else { hide(O, key, val); } // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative })(Function.prototype, TO_STRING, function toString() { return typeof this == 'function' && this[SRC] || $toString.call(this); }); /***/ }), /***/ "2aeb": /***/ (function(module, exports, __webpack_require__) { // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) var anObject = __webpack_require__("cb7c"); var dPs = __webpack_require__("1495"); var enumBugKeys = __webpack_require__("e11e"); var IE_PROTO = __webpack_require__("613b")('IE_PROTO'); var Empty = function () { /* empty */ }; var PROTOTYPE = 'prototype'; // Create object with fake `null` prototype: use iframe Object with cleared prototype var createDict = function () { // Thrash, waste and sodomy: IE GC bug var iframe = __webpack_require__("230e")('iframe'); var i = enumBugKeys.length; var lt = '<'; var gt = '>'; var iframeDocument; iframe.style.display = 'none'; __webpack_require__("fab2").appendChild(iframe); iframe.src = 'javascript:'; // eslint-disable-line no-script-url // createDict = iframe.contentWindow.Object; // html.removeChild(iframe); iframeDocument = iframe.contentWindow.document; iframeDocument.open(); iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt); iframeDocument.close(); createDict = iframeDocument.F; while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; return createDict(); }; module.exports = Object.create || function create(O, Properties) { var result; if (O !== null) { Empty[PROTOTYPE] = anObject(O); result = new Empty(); Empty[PROTOTYPE] = null; // add "__proto__" for Object.getPrototypeOf polyfill result[IE_PROTO] = O; } else result = createDict(); return Properties === undefined ? result : dPs(result, Properties); }; /***/ }), /***/ "2b4c": /***/ (function(module, exports, __webpack_require__) { var store = __webpack_require__("5537")('wks'); var uid = __webpack_require__("ca5a"); var Symbol = __webpack_require__("7726").Symbol; var USE_SYMBOL = typeof Symbol == 'function'; var $exports = module.exports = function (name) { return store[name] || (store[name] = USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); }; $exports.store = store; /***/ }), /***/ "2d00": /***/ (function(module, exports) { module.exports = false; /***/ }), /***/ "2d95": /***/ (function(module, exports) { var toString = {}.toString; module.exports = function (it) { return toString.call(it).slice(8, -1); }; /***/ }), /***/ "2fdb": /***/ (function(module, exports, __webpack_require__) { "use strict"; // 21.1.3.7 String.prototype.includes(searchString, position = 0) var $export = __webpack_require__("5ca1"); var context = __webpack_require__("d2c8"); var INCLUDES = 'includes'; $export($export.P + $export.F * __webpack_require__("5147")(INCLUDES), 'String', { includes: function includes(searchString /* , position = 0 */) { return !!~context(this, searchString, INCLUDES) .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined); } }); /***/ }), /***/ "32e9": /***/ (function(module, exports, __webpack_require__) { var dP = __webpack_require__("86cc"); var createDesc = __webpack_require__("4630"); module.exports = __webpack_require__("9e1e") ? function (object, key, value) { return dP.f(object, key, createDesc(1, value)); } : function (object, key, value) { object[key] = value; return object; }; /***/ }), /***/ "38fd": /***/ (function(module, exports, __webpack_require__) { // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) var has = __webpack_require__("69a8"); var toObject = __webpack_require__("4bf8"); var IE_PROTO = __webpack_require__("613b")('IE_PROTO'); var ObjectProto = Object.prototype; module.exports = Object.getPrototypeOf || function (O) { O = toObject(O); if (has(O, IE_PROTO)) return O[IE_PROTO]; if (typeof O.constructor == 'function' && O instanceof O.constructor) { return O.constructor.prototype; } return O instanceof Object ? ObjectProto : null; }; /***/ }), /***/ "41a0": /***/ (function(module, exports, __webpack_require__) { "use strict"; var create = __webpack_require__("2aeb"); var descriptor = __webpack_require__("4630"); var setToStringTag = __webpack_require__("7f20"); var IteratorPrototype = {}; // 25.1.2.1.1 %IteratorPrototype%[@@iterator]() __webpack_require__("32e9")(IteratorPrototype, __webpack_require__("2b4c")('iterator'), function () { return this; }); module.exports = function (Constructor, NAME, next) { Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); setToStringTag(Constructor, NAME + ' Iterator'); }; /***/ }), /***/ "456d": /***/ (function(module, exports, __webpack_require__) { // 19.1.2.14 Object.keys(O) var toObject = __webpack_require__("4bf8"); var $keys = __webpack_require__("0d58"); __webpack_require__("5eda")('keys', function () { return function keys(it) { return $keys(toObject(it)); }; }); /***/ }), /***/ "4588": /***/ (function(module, exports) { // 7.1.4 ToInteger var ceil = Math.ceil; var floor = Math.floor; module.exports = function (it) { return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); }; /***/ }), /***/ "4630": /***/ (function(module, exports) { module.exports = function (bitmap, value) { return { enumerable: !(bitmap & 1), configurable: !(bitmap & 2), writable: !(bitmap & 4), value: value }; }; /***/ }), /***/ "4bf8": /***/ (function(module, exports, __webpack_require__) { // 7.1.13 ToObject(argument) var defined = __webpack_require__("be13"); module.exports = function (it) { return Object(defined(it)); }; /***/ }), /***/ "5147": /***/ (function(module, exports, __webpack_require__) { var MATCH = __webpack_require__("2b4c")('match'); module.exports = function (KEY) { var re = /./; try { '/./'[KEY](re); } catch (e) { try { re[MATCH] = false; return !'/./'[KEY](re); } catch (f) { /* empty */ } } return true; }; /***/ }), /***/ "520a": /***/ (function(module, exports, __webpack_require__) { "use strict"; var regexpFlags = __webpack_require__("0bfb"); var nativeExec = RegExp.prototype.exec; // This always refers to the native implementation, because the // String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js, // which loads this file before patching the method. var nativeReplace = String.prototype.replace; var patchedExec = nativeExec; var LAST_INDEX = 'lastIndex'; var UPDATES_LAST_INDEX_WRONG = (function () { var re1 = /a/, re2 = /b*/g; nativeExec.call(re1, 'a'); nativeExec.call(re2, 'a'); return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0; })(); // nonparticipating capturing group, copied from es5-shim's String#split patch. var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined; var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED; if (PATCH) { patchedExec = function exec(str) { var re = this; var lastIndex, reCopy, match, i; if (NPCG_INCLUDED) { reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re)); } if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX]; match = nativeExec.call(re, str); if (UPDATES_LAST_INDEX_WRONG && match) { re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex; } if (NPCG_INCLUDED && match && match.length > 1) { // Fix browsers whose `exec` methods don't consistently return `undefined` // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/ // eslint-disable-next-line no-loop-func nativeReplace.call(match[0], reCopy, function () { for (i = 1; i < arguments.length - 2; i++) { if (arguments[i] === undefined) match[i] = undefined; } }); } return match; }; } module.exports = patchedExec; /***/ }), /***/ "52a7": /***/ (function(module, exports) { exports.f = {}.propertyIsEnumerable; /***/ }), /***/ "5537": /***/ (function(module, exports, __webpack_require__) { var core = __webpack_require__("8378"); var global = __webpack_require__("7726"); var SHARED = '__core-js_shared__'; var store = global[SHARED] || (global[SHARED] = {}); (module.exports = function (key, value) { return store[key] || (store[key] = value !== undefined ? value : {}); })('versions', []).push({ version: core.version, mode: __webpack_require__("2d00") ? 'pure' : 'global', copyright: '© 2019 Denis Pushkarev (zloirock.ru)' }); /***/ }), /***/ "5ca1": /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__("7726"); var core = __webpack_require__("8378"); var hide = __webpack_require__("32e9"); var redefine = __webpack_require__("2aba"); var ctx = __webpack_require__("9b43"); var PROTOTYPE = 'prototype'; var $export = function (type, name, source) { var IS_FORCED = type & $export.F; var IS_GLOBAL = type & $export.G; var IS_STATIC = type & $export.S; var IS_PROTO = type & $export.P; var IS_BIND = type & $export.B; var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]; var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {}); var key, own, out, exp; if (IS_GLOBAL) source = name; for (key in source) { // contains in native own = !IS_FORCED && target && target[key] !== undefined; // export native or passed out = (own ? target : source)[key]; // bind timers to global for call from export context exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; // extend global if (target) redefine(target, key, out, type & $export.U); // export if (exports[key] != out) hide(exports, key, exp); if (IS_PROTO && expProto[key] != out) expProto[key] = out; } }; global.core = core; // type bitmap $export.F = 1; // forced $export.G = 2; // global $export.S = 4; // static $export.P = 8; // proto $export.B = 16; // bind $export.W = 32; // wrap $export.U = 64; // safe $export.R = 128; // real proto method for `library` module.exports = $export; /***/ }), /***/ "5eda": /***/ (function(module, exports, __webpack_require__) { // most Object methods by ES6 should accept primitives var $export = __webpack_require__("5ca1"); var core = __webpack_require__("8378"); var fails = __webpack_require__("79e5"); module.exports = function (KEY, exec) { var fn = (core.Object || {})[KEY] || Object[KEY]; var exp = {}; exp[KEY] = exec(fn); $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); }; /***/ }), /***/ "5f1b": /***/ (function(module, exports, __webpack_require__) { "use strict"; var classof = __webpack_require__("23c6"); var builtinExec = RegExp.prototype.exec; // `RegExpExec` abstract operation // https://tc39.github.io/ecma262/#sec-regexpexec module.exports = function (R, S) { var exec = R.exec; if (typeof exec === 'function') { var result = exec.call(R, S); if (typeof result !== 'object') { throw new TypeError('RegExp exec method returned something other than an Object or null'); } return result; } if (classof(R) !== 'RegExp') { throw new TypeError('RegExp#exec called on incompatible receiver'); } return builtinExec.call(R, S); }; /***/ }), /***/ "613b": /***/ (function(module, exports, __webpack_require__) { var shared = __webpack_require__("5537")('keys'); var uid = __webpack_require__("ca5a"); module.exports = function (key) { return shared[key] || (shared[key] = uid(key)); }; /***/ }), /***/ "626a": /***/ (function(module, exports, __webpack_require__) { // fallback for non-array-like ES3 and non-enumerable old V8 strings var cof = __webpack_require__("2d95"); // eslint-disable-next-line no-prototype-builtins module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { return cof(it) == 'String' ? it.split('') : Object(it); }; /***/ }), /***/ "6762": /***/ (function(module, exports, __webpack_require__) { "use strict"; // https://github.com/tc39/Array.prototype.includes var $export = __webpack_require__("5ca1"); var $includes = __webpack_require__("c366")(true); $export($export.P, 'Array', { includes: function includes(el /* , fromIndex = 0 */) { return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined); } }); __webpack_require__("9c6c")('includes'); /***/ }), /***/ "6821": /***/ (function(module, exports, __webpack_require__) { // to indexed object, toObject with fallback for non-array-like ES3 strings var IObject = __webpack_require__("626a"); var defined = __webpack_require__("be13"); module.exports = function (it) { return IObject(defined(it)); }; /***/ }), /***/ "69a8": /***/ (function(module, exports) { var hasOwnProperty = {}.hasOwnProperty; module.exports = function (it, key) { return hasOwnProperty.call(it, key); }; /***/ }), /***/ "6a99": /***/ (function(module, exports, __webpack_require__) { // 7.1.1 ToPrimitive(input [, PreferredType]) var isObject = __webpack_require__("d3f4"); // instead of the ES6 spec version, we didn't implement @@toPrimitive case // and the second argument - flag - preferred type is a string module.exports = function (it, S) { if (!isObject(it)) return it; var fn, val; if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; throw TypeError("Can't convert object to primitive value"); }; /***/ }), /***/ "7333": /***/ (function(module, exports, __webpack_require__) { "use strict"; // 19.1.2.1 Object.assign(target, source, ...) var getKeys = __webpack_require__("0d58"); var gOPS = __webpack_require__("2621"); var pIE = __webpack_require__("52a7"); var toObject = __webpack_require__("4bf8"); var IObject = __webpack_require__("626a"); var $assign = Object.assign; // should work with symbols and should have deterministic property order (V8 bug) module.exports = !$assign || __webpack_require__("79e5")(function () { var A = {}; var B = {}; // eslint-disable-next-line no-undef var S = Symbol(); var K = 'abcdefghijklmnopqrst'; A[S] = 7; K.split('').forEach(function (k) { B[k] = k; }); return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K; }) ? function assign(target, source) { // eslint-disable-line no-unused-vars var T = toObject(target); var aLen = arguments.length; var index = 1; var getSymbols = gOPS.f; var isEnum = pIE.f; while (aLen > index) { var S = IObject(arguments[index++]); var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S); var length = keys.length; var j = 0; var key; while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key]; } return T; } : $assign; /***/ }), /***/ "7726": /***/ (function(module, exports) { // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 var global = module.exports = typeof window != 'undefined' && window.Math == Math ? window : typeof self != 'undefined' && self.Math == Math ? self // eslint-disable-next-line no-new-func : Function('return this')(); if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef /***/ }), /***/ "77f1": /***/ (function(module, exports, __webpack_require__) { var toInteger = __webpack_require__("4588"); var max = Math.max; var min = Math.min; module.exports = function (index, length) { index = toInteger(index); return index < 0 ? max(index + length, 0) : min(index, length); }; /***/ }), /***/ "79e5": /***/ (function(module, exports) { module.exports = function (exec) { try { return !!exec(); } catch (e) { return true; } }; /***/ }), /***/ "7f20": /***/ (function(module, exports, __webpack_require__) { var def = __webpack_require__("86cc").f; var has = __webpack_require__("69a8"); var TAG = __webpack_require__("2b4c")('toStringTag'); module.exports = function (it, tag, stat) { if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); }; /***/ }), /***/ "8378": /***/ (function(module, exports) { var core = module.exports = { version: '2.6.5' }; if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef /***/ }), /***/ "84f2": /***/ (function(module, exports) { module.exports = {}; /***/ }), /***/ "86cc": /***/ (function(module, exports, __webpack_require__) { var anObject = __webpack_require__("cb7c"); var IE8_DOM_DEFINE = __webpack_require__("c69a"); var toPrimitive = __webpack_require__("6a99"); var dP = Object.defineProperty; exports.f = __webpack_require__("9e1e") ? Object.defineProperty : function defineProperty(O, P, Attributes) { anObject(O); P = toPrimitive(P, true); anObject(Attributes); if (IE8_DOM_DEFINE) try { return dP(O, P, Attributes); } catch (e) { /* empty */ } if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); if ('value' in Attributes) O[P] = Attributes.value; return O; }; /***/ }), /***/ "9b43": /***/ (function(module, exports, __webpack_require__) { // optional / simple context binding var aFunction = __webpack_require__("d8e8"); module.exports = function (fn, that, length) { aFunction(fn); if (that === undefined) return fn; switch (length) { case 1: return function (a) { return fn.call(that, a); }; case 2: return function (a, b) { return fn.call(that, a, b); }; case 3: return function (a, b, c) { return fn.call(that, a, b, c); }; } return function (/* ...args */) { return fn.apply(that, arguments); }; }; /***/ }), /***/ "9c6c": /***/ (function(module, exports, __webpack_require__) { // 22.1.3.31 Array.prototype[@@unscopables] var UNSCOPABLES = __webpack_require__("2b4c")('unscopables'); var ArrayProto = Array.prototype; if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__("32e9")(ArrayProto, UNSCOPABLES, {}); module.exports = function (key) { ArrayProto[UNSCOPABLES][key] = true; }; /***/ }), /***/ "9def": /***/ (function(module, exports, __webpack_require__) { // 7.1.15 ToLength var toInteger = __webpack_require__("4588"); var min = Math.min; module.exports = function (it) { return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 }; /***/ }), /***/ "9e1e": /***/ (function(module, exports, __webpack_require__) { // Thank's IE8 for his funny defineProperty module.exports = !__webpack_require__("79e5")(function () { return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), /***/ "a352": /***/ (function(module, exports) { module.exports = __WEBPACK_EXTERNAL_MODULE_a352__; /***/ }), /***/ "a481": /***/ (function(module, exports, __webpack_require__) { "use strict"; var anObject = __webpack_require__("cb7c"); var toObject = __webpack_require__("4bf8"); var toLength = __webpack_require__("9def"); var toInteger = __webpack_require__("4588"); var advanceStringIndex = __webpack_require__("0390"); var regExpExec = __webpack_require__("5f1b"); var max = Math.max; var min = Math.min; var floor = Math.floor; var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g; var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g; var maybeToString = function (it) { return it === undefined ? it : String(it); }; // @@replace logic __webpack_require__("214f")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) { return [ // `String.prototype.replace` method // https://tc39.github.io/ecma262/#sec-string.prototype.replace function replace(searchValue, replaceValue) { var O = defined(this); var fn = searchValue == undefined ? undefined : searchValue[REPLACE]; return fn !== undefined ? fn.call(searchValue, O, replaceValue) : $replace.call(String(O), searchValue, replaceValue); }, // `RegExp.prototype[@@replace]` method // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace function (regexp, replaceValue) { var res = maybeCallNative($replace, regexp, this, replaceValue); if (res.done) return res.value; var rx = anObject(regexp); var S = String(this); var functionalReplace = typeof replaceValue === 'function'; if (!functionalReplace) replaceValue = String(replaceValue); var global = rx.global; if (global) { var fullUnicode = rx.unicode; rx.lastIndex = 0; } var results = []; while (true) { var result = regExpExec(rx, S); if (result === null) break; results.push(result); if (!global) break; var matchStr = String(result[0]); if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); } var accumulatedResult = ''; var nextSourcePosition = 0; for (var i = 0; i < results.length; i++) { result = results[i]; var matched = String(result[0]); var position = max(min(toInteger(result.index), S.length), 0); var captures = []; // NOTE: This is equivalent to // captures = result.slice(1).map(maybeToString) // but for some reason `nativeSlice.call(result, 1, result.length)` (called in // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it. for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j])); var namedCaptures = result.groups; if (functionalReplace) { var replacerArgs = [matched].concat(captures, position, S); if (namedCaptures !== undefined) replacerArgs.push(namedCaptures); var replacement = String(replaceValue.apply(undefined, replacerArgs)); } else { replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue); } if (position >= nextSourcePosition) { accumulatedResult += S.slice(nextSourcePosition, position) + replacement; nextSourcePosition = position + matched.length; } } return accumulatedResult + S.slice(nextSourcePosition); } ]; // https://tc39.github.io/ecma262/#sec-getsubstitution function getSubstitution(matched, str, position, captures, namedCaptures, replacement) { var tailPos = position + matched.length; var m = captures.length; var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED; if (namedCaptures !== undefined) { namedCaptures = toObject(namedCaptures); symbols = SUBSTITUTION_SYMBOLS; } return $replace.call(replacement, symbols, function (match, ch) { var capture; switch (ch.charAt(0)) { case '$': return '$'; case '&': return matched; case '`': return str.slice(0, position); case "'": return str.slice(tailPos); case '<': capture = namedCaptures[ch.slice(1, -1)]; break; default: // \d\d? var n = +ch; if (n === 0) return match; if (n > m) { var f = floor(n / 10); if (f === 0) return match; if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1); return match; } capture = captures[n - 1]; } return capture === undefined ? '' : capture; }); } }); /***/ }), /***/ "aae3": /***/ (function(module, exports, __webpack_require__) { // 7.2.8 IsRegExp(argument) var isObject = __webpack_require__("d3f4"); var cof = __webpack_require__("2d95"); var MATCH = __webpack_require__("2b4c")('match'); module.exports = function (it) { var isRegExp; return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp'); }; /***/ }), /***/ "ac6a": /***/ (function(module, exports, __webpack_require__) { var $iterators = __webpack_require__("cadf"); var getKeys = __webpack_require__("0d58"); var redefine = __webpack_require__("2aba"); var global = __webpack_require__("7726"); var hide = __webpack_require__("32e9"); var Iterators = __webpack_require__("84f2"); var wks = __webpack_require__("2b4c"); var ITERATOR = wks('iterator'); var TO_STRING_TAG = wks('toStringTag'); var ArrayValues = Iterators.Array; var DOMIterables = { CSSRuleList: true, // TODO: Not spec compliant, should be false. CSSStyleDeclaration: false, CSSValueList: false, ClientRectList: false, DOMRectList: false, DOMStringList: false, DOMTokenList: true, DataTransferItemList: false, FileList: false, HTMLAllCollection: false, HTMLCollection: false, HTMLFormElement: false, HTMLSelectElement: false, MediaList: true, // TODO: Not spec compliant, should be false. MimeTypeArray: false, NamedNodeMap: false, NodeList: true, PaintRequestList: false, Plugin: false, PluginArray: false, SVGLengthList: false, SVGNumberList: false, SVGPathSegList: false, SVGPointList: false, SVGStringList: false, SVGTransformList: false, SourceBufferList: false, StyleSheetList: true, // TODO: Not spec compliant, should be false. TextTrackCueList: false, TextTrackList: false, TouchList: false }; for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) { var NAME = collections[i]; var explicit = DOMIterables[NAME]; var Collection = global[NAME]; var proto = Collection && Collection.prototype; var key; if (proto) { if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues); if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); Iterators[NAME] = ArrayValues; if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true); } } /***/ }), /***/ "b0c5": /***/ (function(module, exports, __webpack_require__) { "use strict"; var regexpExec = __webpack_require__("520a"); __webpack_require__("5ca1")({ target: 'RegExp', proto: true, forced: regexpExec !== /./.exec }, { exec: regexpExec }); /***/ }), /***/ "be13": /***/ (function(module, exports) { // 7.2.1 RequireObjectCoercible(argument) module.exports = function (it) { if (it == undefined) throw TypeError("Can't call method on " + it); return it; }; /***/ }), /***/ "c366": /***/ (function(module, exports, __webpack_require__) { // false -> Array#indexOf // true -> Array#includes var toIObject = __webpack_require__("6821"); var toLength = __webpack_require__("9def"); var toAbsoluteIndex = __webpack_require__("77f1"); module.exports = function (IS_INCLUDES) { return function ($this, el, fromIndex) { var O = toIObject($this); var length = toLength(O.length); var index = toAbsoluteIndex(fromIndex, length); var value; // Array#includes uses SameValueZero equality algorithm // eslint-disable-next-line no-self-compare if (IS_INCLUDES && el != el) while (length > index) { value = O[index++]; // eslint-disable-next-line no-self-compare if (value != value) return true; // Array#indexOf ignores holes, Array#includes - not } else for (;length > index; index++) if (IS_INCLUDES || index in O) { if (O[index] === el) return IS_INCLUDES || index || 0; } return !IS_INCLUDES && -1; }; }; /***/ }), /***/ "c649": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return insertNodeAt; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return camelize; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return console; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return removeNode; }); /* harmony import */ var core_js_modules_es6_regexp_replace__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("a481"); /* harmony import */ var core_js_modules_es6_regexp_replace__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_regexp_replace__WEBPACK_IMPORTED_MODULE_0__); function getConsole() { if (typeof window !== "undefined") { return window.console; } return global.console; } var console = getConsole(); function cached(fn) { var cache = Object.create(null); return function cachedFn(str) { var hit = cache[str]; return hit || (cache[str] = fn(str)); }; } var regex = /-(\w)/g; var camelize = cached(function (str) { return str.replace(regex, function (_, c) { return c ? c.toUpperCase() : ""; }); }); function removeNode(node) { if (node.parentElement !== null) { node.parentElement.removeChild(node); } } function insertNodeAt(fatherNode, node, position) { var refNode = position === 0 ? fatherNode.children[0] : fatherNode.children[position - 1].nextSibling; fatherNode.insertBefore(node, refNode); } /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("c8ba"))) /***/ }), /***/ "c69a": /***/ (function(module, exports, __webpack_require__) { module.exports = !__webpack_require__("9e1e") && !__webpack_require__("79e5")(function () { return Object.defineProperty(__webpack_require__("230e")('div'), 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), /***/ "c8ba": /***/ (function(module, exports) { var g; // This works in non-strict mode g = (function() { return this; })(); try { // This works if eval is allowed (see CSP) g = g || new Function("return this")(); } catch (e) { // This works if the window reference is available if (typeof window === "object") g = window; } // g can still be undefined, but nothing to do about it... // We return undefined, instead of nothing here, so it's // easier to handle this case. if(!global) { ...} module.exports = g; /***/ }), /***/ "ca5a": /***/ (function(module, exports) { var id = 0; var px = Math.random(); module.exports = function (key) { return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); }; /***/ }), /***/ "cadf": /***/ (function(module, exports, __webpack_require__) { "use strict"; var addToUnscopables = __webpack_require__("9c6c"); var step = __webpack_require__("d53b"); var Iterators = __webpack_require__("84f2"); var toIObject = __webpack_require__("6821"); // 22.1.3.4 Array.prototype.entries() // 22.1.3.13 Array.prototype.keys() // 22.1.3.29 Array.prototype.values() // 22.1.3.30 Array.prototype[@@iterator]() module.exports = __webpack_require__("01f9")(Array, 'Array', function (iterated, kind) { this._t = toIObject(iterated); // target this._i = 0; // next index this._k = kind; // kind // 22.1.5.2.1 %ArrayIteratorPrototype%.next() }, function () { var O = this._t; var kind = this._k; var index = this._i++; if (!O || index >= O.length) { this._t = undefined; return step(1); } if (kind == 'keys') return step(0, index); if (kind == 'values') return step(0, O[index]); return step(0, [index, O[index]]); }, 'values'); // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) Iterators.Arguments = Iterators.Array; addToUnscopables('keys'); addToUnscopables('values'); addToUnscopables('entries'); /***/ }), /***/ "cb7c": /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__("d3f4"); module.exports = function (it) { if (!isObject(it)) throw TypeError(it + ' is not an object!'); return it; }; /***/ }), /***/ "ce10": /***/ (function(module, exports, __webpack_require__) { var has = __webpack_require__("69a8"); var toIObject = __webpack_require__("6821"); var arrayIndexOf = __webpack_require__("c366")(false); var IE_PROTO = __webpack_require__("613b")('IE_PROTO'); module.exports = function (object, names) { var O = toIObject(object); var i = 0; var result = []; var key; for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); // Don't enum bug & hidden keys while (names.length > i) if (has(O, key = names[i++])) { ~arrayIndexOf(result, key) || result.push(key); } return result; }; /***/ }), /***/ "d2c8": /***/ (function(module, exports, __webpack_require__) { // helper for String#{startsWith, endsWith, includes} var isRegExp = __webpack_require__("aae3"); var defined = __webpack_require__("be13"); module.exports = function (that, searchString, NAME) { if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!"); return String(defined(that)); }; /***/ }), /***/ "d3f4": /***/ (function(module, exports) { module.exports = function (it) { return typeof it === 'object' ? it !== null : typeof it === 'function'; }; /***/ }), /***/ "d53b": /***/ (function(module, exports) { module.exports = function (done, value) { return { value: value, done: !!done }; }; /***/ }), /***/ "d8e8": /***/ (function(module, exports) { module.exports = function (it) { if (typeof it != 'function') throw TypeError(it + ' is not a function!'); return it; }; /***/ }), /***/ "e11e": /***/ (function(module, exports) { // IE 8- don't enum bug keys module.exports = ( 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' ).split(','); /***/ }), /***/ "f559": /***/ (function(module, exports, __webpack_require__) { "use strict"; // 21.1.3.18 String.prototype.startsWith(searchString [, position ]) var $export = __webpack_require__("5ca1"); var toLength = __webpack_require__("9def"); var context = __webpack_require__("d2c8"); var STARTS_WITH = 'startsWith'; var $startsWith = ''[STARTS_WITH]; $export($export.P + $export.F * __webpack_require__("5147")(STARTS_WITH), 'String', { startsWith: function startsWith(searchString /* , position = 0 */) { var that = context(this, searchString, STARTS_WITH); var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length)); var search = String(searchString); return $startsWith ? $startsWith.call(that, search, index) : that.slice(index, index + search.length) === search; } }); /***/ }), /***/ "f6fd": /***/ (function(module, exports) { // document.currentScript polyfill by Adam Miller // MIT license (function(document){ var currentScript = "currentScript", scripts = document.getElementsByTagName('script'); // Live NodeList collection // If browser needs currentScript polyfill, add get currentScript() to the document object if (!(currentScript in document)) { Object.defineProperty(document, currentScript, { get: function(){ // IE 6-10 supports script readyState // IE 10+ support stack trace try { throw new Error(); } catch (err) { // Find the second match for the "at" string to get file src url from stack. // Specifically works with the format of stack traces in IE. var i, res = ((/.*at [^\(]*\((.*):.+:.+\)$/ig).exec(err.stack) || [false])[1]; // For all scripts on the page, if src matches or if ready state is interactive, return the script tag for(i in scripts){ if(scripts[i].src == res || scripts[i].readyState == "interactive"){ return scripts[i]; } } // If no match, return null return null; } } }); } })(document); /***/ }), /***/ "f751": /***/ (function(module, exports, __webpack_require__) { // 19.1.3.1 Object.assign(target, source) var $export = __webpack_require__("5ca1"); $export($export.S + $export.F, 'Object', { assign: __webpack_require__("7333") }); /***/ }), /***/ "fa5b": /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__("5537")('native-function-to-string', Function.toString); /***/ }), /***/ "fab2": /***/ (function(module, exports, __webpack_require__) { var document = __webpack_require__("7726").document; module.exports = document && document.documentElement; /***/ }), /***/ "fb15": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js // This file is imported into lib/wc client bundles. if (typeof window !== 'undefined') { if (true) { __webpack_require__("f6fd") } var setPublicPath_i if ((setPublicPath_i = window.document.currentScript) && (setPublicPath_i = setPublicPath_i.src.match(/(.+\/)[^/]+\.js(\?.*)?$/))) { __webpack_require__.p = setPublicPath_i[1] // eslint-disable-line } } // Indicate to webpack that this file can be concatenated /* harmony default export */ var setPublicPath = (null); // EXTERNAL MODULE: ./node_modules/core-js/modules/es6.object.assign.js var es6_object_assign = __webpack_require__("f751"); // EXTERNAL MODULE: ./node_modules/core-js/modules/es6.string.starts-with.js var es6_string_starts_with = __webpack_require__("f559"); // EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom.iterable.js var web_dom_iterable = __webpack_require__("ac6a"); // EXTERNAL MODULE: ./node_modules/core-js/modules/es6.array.iterator.js var es6_array_iterator = __webpack_require__("cadf"); // EXTERNAL MODULE: ./node_modules/core-js/modules/es6.object.keys.js var es6_object_keys = __webpack_require__("456d"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js 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; } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js 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); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } // EXTERNAL MODULE: ./node_modules/core-js/modules/es7.array.includes.js var es7_array_includes = __webpack_require__("6762"); // EXTERNAL MODULE: ./node_modules/core-js/modules/es6.string.includes.js var es6_string_includes = __webpack_require__("2fdb"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } // EXTERNAL MODULE: external {"commonjs":"sortablejs","commonjs2":"sortablejs","amd":"sortablejs","root":"Sortable"} var external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_ = __webpack_require__("a352"); var external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_); // EXTERNAL MODULE: ./src/util/helper.js var helper = __webpack_require__("c649"); // CONCATENATED MODULE: ./src/vuedraggable.js function buildAttribute(object, propName, value) { if (value === undefined) { return object; } object = object || {}; object[propName] = value; return object; } function computeVmIndex(vnodes, element) { return vnodes.map(function (elt) { return elt.elm; }).indexOf(element); } function _computeIndexes(slots, children, isTransition, footerOffset) { if (!slots) { return []; } var elmFromNodes = slots.map(function (elt) { return elt.elm; }); var footerIndex = children.length - footerOffset; var rawIndexes = _toConsumableArray(children).map(function (elt, idx) { return idx >= footerIndex ? elmFromNodes.length : elmFromNodes.indexOf(elt); }); return isTransition ? rawIndexes.filter(function (ind) { return ind !== -1; }) : rawIndexes; } function emit(evtName, evtData) { var _this = this; this.$nextTick(function () { return _this.$emit(evtName.toLowerCase(), evtData); }); } function delegateAndEmit(evtName) { var _this2 = this; return function (evtData) { if (_this2.realList !== null) { _this2["onDrag" + evtName](evtData); } emit.call(_this2, evtName, evtData); }; } function isTransitionName(name) { return ["transition-group", "TransitionGroup"].includes(name); } function vuedraggable_isTransition(slots) { if (!slots || slots.length !== 1) { return false; } var _slots = _slicedToArray(slots, 1), componentOptions = _slots[0].componentOptions; if (!componentOptions) { return false; } return isTransitionName(componentOptions.tag); } function getSlot(slot, scopedSlot, key) { return slot[key] || (scopedSlot[key] ? scopedSlot[key]() : undefined); } function computeChildrenAndOffsets(children, slot, scopedSlot) { var headerOffset = 0; var footerOffset = 0; var header = getSlot(slot, scopedSlot, "header"); if (header) { headerOffset = header.length; children = children ? [].concat(_toConsumableArray(header), _toConsumableArray(children)) : _toConsumableArray(header); } var footer = getSlot(slot, scopedSlot, "footer"); if (footer) { footerOffset = footer.length; children = children ? [].concat(_toConsumableArray(children), _toConsumableArray(footer)) : _toConsumableArray(footer); } return { children: children, headerOffset: headerOffset, footerOffset: footerOffset }; } function getComponentAttributes($attrs, componentData) { var attributes = null; var update = function update(name, value) { attributes = buildAttribute(attributes, name, value); }; var attrs = Object.keys($attrs).filter(function (key) { return key === "id" || key.startsWith("data-"); }).reduce(function (res, key) { res[key] = $attrs[key]; return res; }, {}); update("attrs", attrs); if (!componentData) { return attributes; } var on = componentData.on, props = componentData.props, componentDataAttrs = componentData.attrs; update("on", on); update("props", props); Object.assign(attributes.attrs, componentDataAttrs); return attributes; } var eventsListened = ["Start", "Add", "Remove", "Update", "End"]; var eventsToEmit = ["Choose", "Unchoose", "Sort", "Filter", "Clone"]; var readonlyProperties = ["Move"].concat(eventsListened, eventsToEmit).map(function (evt) { return "on" + evt; }); var draggingElement = null; var props = { options: Object, list: { type: Array, required: false, default: null }, value: { type: Array, required: false, default: null }, noTransitionOnDrag: { type: Boolean, default: false }, clone: { type: Function, default: function _default(original) { return original; } }, element: { type: String, default: "div" }, tag: { type: String, default: null }, move: { type: Function, default: null }, componentData: { type: Object, required: false, default: null } }; var draggableComponent = { name: "draggable", inheritAttrs: false, props: props, data: function data() { return { transitionMode: false, noneFunctionalComponentMode: false }; }, render: function render(h) { var slots = this.$slots.default; this.transitionMode = vuedraggable_isTransition(slots); var _computeChildrenAndOf = computeChildrenAndOffsets(slots, this.$slots, this.$scopedSlots), children = _computeChildrenAndOf.children, headerOffset = _computeChildrenAndOf.headerOffset, footerOffset = _computeChildrenAndOf.footerOffset; this.headerOffset = headerOffset; this.footerOffset = footerOffset; var attributes = getComponentAttributes(this.$attrs, this.componentData); return h(this.getTag(), attributes, children); }, created: function created() { if (this.list !== null && this.value !== null) { helper["b" /* console */].error("Value and list props are mutually exclusive! Please set one or another."); } if (this.element !== "div") { helper["b" /* console */].warn("Element props is deprecated please use tag props instead. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#element-props"); } if (this.options !== undefined) { helper["b" /* console */].warn("Options props is deprecated, add sortable options directly as vue.draggable item, or use v-bind. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#options-props"); } }, mounted: function mounted() { var _this3 = this; this.noneFunctionalComponentMode = this.getTag().toLowerCase() !== this.$el.nodeName.toLowerCase() && !this.getIsFunctional(); if (this.noneFunctionalComponentMode && this.transitionMode) { throw new Error("Transition-group inside component is not supported. Please alter tag value or remove transition-group. Current tag value: ".concat(this.getTag())); } var optionsAdded = {}; eventsListened.forEach(function (elt) { optionsAdded["on" + elt] = delegateAndEmit.call(_this3, elt); }); eventsToEmit.forEach(function (elt) { optionsAdded["on" + elt] = emit.bind(_this3, elt); }); var attributes = Object.keys(this.$attrs).reduce(function (res, key) { res[Object(helper["a" /* camelize */])(key)] = _this3.$attrs[key]; return res; }, {}); var options = Object.assign({}, this.options, attributes, optionsAdded, { onMove: function onMove(evt, originalEvent) { return _this3.onDragMove(evt, originalEvent); } }); !("draggable" in options) && (options.draggable = ">*"); this._sortable = new external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_default.a(this.rootContainer, options); this.computeIndexes(); }, beforeDestroy: function beforeDestroy() { if (this._sortable !== undefined) this._sortable.destroy(); }, computed: { rootContainer: function rootContainer() { return this.transitionMode ? this.$el.children[0] : this.$el; }, realList: function realList() { return this.list ? this.list : this.value; } }, watch: { options: { handler: function handler(newOptionValue) { this.updateOptions(newOptionValue); }, deep: true }, $attrs: { handler: function handler(newOptionValue) { this.updateOptions(newOptionValue); }, deep: true }, realList: function realList() { this.computeIndexes(); } }, methods: { getIsFunctional: function getIsFunctional() { var fnOptions = this._vnode.fnOptions; return fnOptions && fnOptions.functional; }, getTag: function getTag() { return this.tag || this.element; }, updateOptions: function updateOptions(newOptionValue) { for (var property in newOptionValue) { var value = Object(helper["a" /* camelize */])(property); if (readonlyProperties.indexOf(value) === -1) { this._sortable.option(value, newOptionValue[property]); } } }, getChildrenNodes: function getChildrenNodes() { if (this.noneFunctionalComponentMode) { return this.$children[0].$slots.default; } var rawNodes = this.$slots.default; return this.transitionMode ? rawNodes[0].child.$slots.default : rawNodes; }, computeIndexes: function computeIndexes() { var _this4 = this; this.$nextTick(function () { _this4.visibleIndexes = _computeIndexes(_this4.getChildrenNodes(), _this4.rootContainer.children, _this4.transitionMode, _this4.footerOffset); }); }, getUnderlyingVm: function getUnderlyingVm(htmlElt) { var index = computeVmIndex(this.getChildrenNodes() || [], htmlElt); if (index === -1) { //Edge case during move callback: related element might be //an element different from collection return null; } var element = this.realList[index]; return { index: index, element: element }; }, getUnderlyingPotencialDraggableComponent: function getUnderlyingPotencialDraggableComponent(_ref) { var vue = _ref.__vue__; if (!vue || !vue.$options || !isTransitionName(vue.$options._componentTag)) { if (!("realList" in vue) && vue.$children.length === 1 && "realList" in vue.$children[0]) return vue.$children[0]; return vue; } return vue.$parent; }, emitChanges: function emitChanges(evt) { var _this5 = this; this.$nextTick(function () { _this5.$emit("change", evt); }); }, alterList: function alterList(onList) { if (this.list) { onList(this.list); return; } var newList = _toConsumableArray(this.value); onList(newList); this.$emit("input", newList); }, spliceList: function spliceList() { var _arguments = arguments; var spliceList = function spliceList(list) { return list.splice.apply(list, _toConsumableArray(_arguments)); }; this.alterList(spliceList); }, updatePosition: function updatePosition(oldIndex, newIndex) { var updatePosition = function updatePosition(list) { return list.splice(newIndex, 0, list.splice(oldIndex, 1)[0]); }; this.alterList(updatePosition); }, getRelatedContextFromMoveEvent: function getRelatedContextFromMoveEvent(_ref2) { var to = _ref2.to, related = _ref2.related; var component = this.getUnderlyingPotencialDraggableComponent(to); if (!component) { return { component: component }; } var list = component.realList; var context = { list: list, component: component }; if (to !== related && list && component.getUnderlyingVm) { var destination = component.getUnderlyingVm(related); if (destination) { return Object.assign(destination, context); } } return context; }, getVmIndex: function getVmIndex(domIndex) { var indexes = this.visibleIndexes; var numberIndexes = indexes.length; return domIndex > numberIndexes - 1 ? numberIndexes : indexes[domIndex]; }, getComponent: function getComponent() { return this.$slots.default[0].componentInstance; }, resetTransitionData: function resetTransitionData(index) { if (!this.noTransitionOnDrag || !this.transitionMode) { return; } var nodes = this.getChildrenNodes(); nodes[index].data = null; var transitionContainer = this.getComponent(); transitionContainer.children = []; transitionContainer.kept = undefined; }, onDragStart: function onDragStart(evt) { this.context = this.getUnderlyingVm(evt.item); evt.item._underlying_vm_ = this.clone(this.context.element); draggingElement = evt.item; }, onDragAdd: function onDragAdd(evt) { var element = evt.item._underlying_vm_; if (element === undefined) { return; } Object(helper["d" /* removeNode */])(evt.item); var newIndex = this.getVmIndex(evt.newIndex); this.spliceList(newIndex, 0, element); this.computeIndexes(); var added = { element: element, newIndex: newIndex }; this.emitChanges({ added: added }); }, onDragRemove: function onDragRemove(evt) { Object(helper["c" /* insertNodeAt */])(this.rootContainer, evt.item, evt.oldIndex); if (evt.pullMode === "clone") { Object(helper["d" /* removeNode */])(evt.clone); return; } var oldIndex = this.context.index; this.spliceList(oldIndex, 1); var removed = { element: this.context.element, oldIndex: oldIndex }; this.resetTransitionData(oldIndex); this.emitChanges({ removed: removed }); }, onDragUpdate: function onDragUpdate(evt) { Object(helper["d" /* removeNode */])(evt.item); Object(helper["c" /* insertNodeAt */])(evt.from, evt.item, evt.oldIndex); var oldIndex = this.context.index; var newIndex = this.getVmIndex(evt.newIndex); this.updatePosition(oldIndex, newIndex); var moved = { element: this.context.element, oldIndex: oldIndex, newIndex: newIndex }; this.emitChanges({ moved: moved }); }, updateProperty: function updateProperty(evt, propertyName) { evt.hasOwnProperty(propertyName) && (evt[propertyName] += this.headerOffset); }, computeFutureIndex: function computeFutureIndex(relatedContext, evt) { if (!relatedContext.element) { return 0; } var domChildren = _toConsumableArray(evt.to.children).filter(function (el) { return el.style["display"] !== "none"; }); var currentDOMIndex = domChildren.indexOf(evt.related); var currentIndex = relatedContext.component.getVmIndex(currentDOMIndex); var draggedInList = domChildren.indexOf(draggingElement) !== -1; return draggedInList || !evt.willInsertAfter ? currentIndex : currentIndex + 1; }, onDragMove: function onDragMove(evt, originalEvent) { var onMove = this.move; if (!onMove || !this.realList) { return true; } var relatedContext = this.getRelatedContextFromMoveEvent(evt); var draggedContext = this.context; var futureIndex = this.computeFutureIndex(relatedContext, evt); Object.assign(draggedContext, { futureIndex: futureIndex }); var sendEvt = Object.assign({}, evt, { relatedContext: relatedContext, draggedContext: draggedContext }); return onMove(sendEvt, originalEvent); }, onDragEnd: function onDragEnd() { this.computeIndexes(); draggingElement = null; } } }; if (typeof window !== "undefined" && "Vue" in window) { window.Vue.component("draggable", draggableComponent); } /* harmony default export */ var vuedraggable = (draggableComponent); // CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js /* harmony default export */ var entry_lib = __webpack_exports__["default"] = (vuedraggable); /***/ }) /******/ })["default"]; }); //# sourceMappingURL=vuedraggable.umd.js.map /***/ }), /***/ "333d": /***/ (function(module, exports, __webpack_require__) { /* eslint-disable es/no-symbol -- required for testing */ var NATIVE_SYMBOL = __webpack_require__("977d"); module.exports = NATIVE_SYMBOL && !Symbol.sham && typeof Symbol.iterator == 'symbol'; /***/ }), /***/ "34f0": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("ca00"); /* harmony default export */ __webpack_exports__["a"] = ({ computed: { customClass() { return this.widget.options.customClass || ''; }, formModel: { cache: false, get() { return this.globalModel.formModel; } } }, mounted() { this.callSetHidden(); }, methods: { unregisterFromRefList() { //销毁容器组件时注销组件ref if (this.refList !== null && !!this.widget.options.name) { let oldRefName = this.widget.options.name; delete this.refList[oldRefName]; } }, /* 主动触发setHidden()方法,以清空被隐藏容器内字段组件的校验规则!! */ callSetHidden() { if (this.widget.options.hidden === true) { this.setHidden(true); } }, //--------------------- 以下为组件支持外部调用的API方法 begin ------------------// /* 提示:用户可自行扩充这些方法!!! */ setHidden(flag) { this.widget.options.hidden = flag; /* 容器被隐藏后,需要同步清除容器内部字段组件的校验规则 */ let clearRulesFn = fieldWidget => { let fwName = fieldWidget.options.name; let fwRef = this.getWidgetRef(fwName); if (flag && !!fwRef && !!fwRef.clearFieldRules) { fwRef.clearFieldRules(); } if (!flag && !!fwRef && !!fwRef.buildFieldRules) { fwRef.buildFieldRules(); } }; Object(_utils_util__WEBPACK_IMPORTED_MODULE_0__[/* traverseFieldWidgetsOfContainer */ "o"])(this.widget, clearRulesFn); }, activeTab(tabIndex) { //tabIndex从0计数 if (tabIndex >= 0 && tabIndex < this.widget.tabs.length) { this.widget.tabs.forEach((tp, idx) => { tp.options.active = idx === tabIndex; if (idx === tabIndex) { this.activeTabName = tp.options.name; } }); } }, disableTab(tabIndex) { if (tabIndex >= 0 && tabIndex < this.widget.tabs.length) { this.widget.tabs[tabIndex].options.disabled = true; } }, enableTab(tabIndex) { if (tabIndex >= 0 && tabIndex < this.widget.tabs.length) { this.widget.tabs[tabIndex].options.disabled = false; } }, hideTab(tabIndex) { if (tabIndex >= 0 && tabIndex < this.widget.tabs.length) { this.widget.tabs[tabIndex].options.hidden = true; } }, showTab(tabIndex) { if (tabIndex >= 0 && tabIndex < this.widget.tabs.length) { this.widget.tabs[tabIndex].options.hidden = false; } }, setWidgetOption(optionName, optionValue) { //通用组件选项修改API if (this.widget.options.hasOwnProperty(optionName)) { this.widget.options[optionName] = optionValue; } }, /** * 获取子表单的行数 */ getSubFormRowCount() { return !this.rowIdData ? 0 : this.rowIdData.length; }, disableSubFormRow(rowIndex) { this.widget.widgetList.forEach(subWidget => { let swRefName = subWidget.options.name + '@row' + this.rowIdData[rowIndex]; let foundSW = this.getWidgetRef(swRefName); if (!!foundSW) { foundSW.setDisabled(true); } }); }, enableSubFormRow(rowIndex) { this.widget.widgetList.forEach(subWidget => { let swRefName = subWidget.options.name + '@row' + this.rowIdData[rowIndex]; let foundSW = this.getWidgetRef(swRefName); if (!!foundSW) { foundSW.setDisabled(false); } }); }, disableSubForm() { if (this.rowIdData.length > 0) { this.rowIdData.forEach((dataRow, rIdx) => { this.disableSubFormRow(rIdx); }); } //禁用3个操作按钮 this.actionDisabled = true; }, enableSubForm() { if (this.rowIdData.length > 0) { this.rowIdData.forEach((dataRow, rIdx) => { this.enableSubFormRow(rIdx); }); } //启用3个操作按钮 this.actionDisabled = false; }, resetSubForm() { //重置subForm数据为空 if (this.widget.type === 'sub-form') { let subFormModel = this.formModel[this.widget.options.name]; if (!!subFormModel) { subFormModel.splice(0, subFormModel.length); this.rowIdData.splice(0, this.rowIdData.length); } } }, getSubFormValues(needValidation = true) { if (this.widget.type === 'sub-form') { //TODO: 逐行校验子表单!暂未实现!! return this.formModel[this.widget.options.name]; } else { this.$message.error(this.i18nt('render.hint.nonSubFormType')); } }, setSubFormValues(subFormValues) { //TODO: 待实现!! } // validateField(fieldName) { //逐行校验子表单字段 // //TODO: // }, // // validateSubForm() { //逐行校验子表单全部字段 // //TODO: // }, //--------------------- 以上为组件支持外部调用的API方法 end ------------------// } }); /***/ }), /***/ "367a": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _form_item_wrapper__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("9eeb"); /* harmony import */ var _utils_emitter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("c6e3"); /* harmony import */ var _utils_i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("79fa"); /* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("ca00"); /* harmony import */ var _components_form_designer_form_widget_field_widget_fieldMixin__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("2d11"); /* harmony default export */ __webpack_exports__["a"] = ({ name: "picture-upload-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [_utils_emitter__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], _components_form_designer_form_widget_field_widget_fieldMixin__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"], _utils_i18n__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: _form_item_wrapper__WEBPACK_IMPORTED_MODULE_0__["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [], uploadHeaders: {}, uploadData: { key: '' //七牛云上传文件名 //token: '', //七牛云上传token //policy: '', //又拍云上传policy //authorization: '', //又拍云上传签名 }, fileList: [], //上传文件列表 uploadBtnHidden: false }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: { handlePictureExceed() { let uploadLimit = this.field.options.limit; /* 此行不能注释,下一行ES6模板字符串需要用到!! */ this.$message.warning(eval('`' + this.i18nt('render.hint.uploadExceed') + '`')); }, updateUploadFieldModelAndEmitDataChange(fileList) { let oldValue = Object(_utils_util__WEBPACK_IMPORTED_MODULE_3__[/* deepClone */ "a"])(this.fieldModel); this.fieldModel = Object(_utils_util__WEBPACK_IMPORTED_MODULE_3__[/* deepClone */ "a"])(fileList); this.syncUpdateFormModel(this.fieldModel); this.emitFieldDataChange(this.fieldModel, oldValue); }, beforePictureUpload(file) { let fileTypeCheckResult = false; if (!!this.field.options && !!this.field.options.fileTypes) { let uploadFileTypes = this.field.options.fileTypes; if (uploadFileTypes.length > 0) { fileTypeCheckResult = uploadFileTypes.some(ft => { return file.type === 'image/' + ft; }); } } if (!fileTypeCheckResult) { this.$message.error(this.i18nt('render.hint.unsupportedFileType') + file.type); return false; } let fileSizeCheckResult = false; let uploadFileMaxSize = 5; //5MB if (!!this.field.options && !!this.field.options.fileMaxSize) { uploadFileMaxSize = this.field.options.fileMaxSize; } fileSizeCheckResult = file.size / 1024 / 1024 <= uploadFileMaxSize; if (!fileSizeCheckResult) { this.$message.error(this.i18nt('render.hint.fileSizeExceed') + uploadFileMaxSize + 'MB'); return false; } this.uploadData.key = file.name; return this.handleOnBeforeUpload(file); }, handleOnBeforeUpload(file) { if (!!this.field.options.onBeforeUpload) { let bfFunc = new Function('file', this.field.options.onBeforeUpload); let result = bfFunc.call(this, file); if (typeof result === 'boolean') { return result; } else { return true; } } return true; }, handlePictureUpload(res, file, fileList) { if (file.status === 'success') { //this.fileList.push(file) /* 上传过程中,this.fileList是只读的,不能修改赋值!! */ this.updateUploadFieldModelAndEmitDataChange(fileList); this.fileList = Object(_utils_util__WEBPACK_IMPORTED_MODULE_3__[/* deepClone */ "a"])(fileList); this.uploadBtnHidden = fileList.length >= this.field.options.limit; if (!!this.field.options.onUploadSuccess) { let customFn = new Function('result', 'file', 'fileList', this.field.options.onUploadSuccess); customFn.call(this, res, file, fileList); } } }, handlePictureRemove(file, fileList) { this.fileList = Object(_utils_util__WEBPACK_IMPORTED_MODULE_3__[/* deepClone */ "a"])(fileList); //this.fileList = fileList this.updateUploadFieldModelAndEmitDataChange(fileList); this.uploadBtnHidden = fileList.length >= this.field.options.limit; if (!!this.field.options.onFileRemove) { let customFn = new Function('file', 'fileList', this.field.options.onFileRemove); customFn.call(this, file, fileList); } }, handelUploadError(err, file, fileList) { if (!!this.field.options.onUploadError) { let customFn = new Function('error', 'file', 'fileList', this.field.options.onUploadError); customFn.call(this, err, file, fileList); } else { this.$message({ message: this.i18nt('render.hint.uploadError') + err, duration: 3000, type: 'error' }); } } } }); /***/ }), /***/ "3766": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "39ca": /***/ (function(module, exports, __webpack_require__) { "use strict"; module.exports = function isCancel(value) { return !!(value && value.__CANCEL__); }; /***/ }), /***/ "39fc": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_date_widget_vue_vue_type_style_index_0_id_db96b016_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("6453"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_date_widget_vue_vue_type_style_index_0_id_db96b016_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_date_widget_vue_vue_type_style_index_0_id_db96b016_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "3a39": /***/ (function(module, exports, __webpack_require__) { "use strict"; var DESCRIPTORS = __webpack_require__("a549"); var isArray = __webpack_require__("2e4e"); var $TypeError = TypeError; // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; // Safari < 13 does not throw an error in this case var SILENT_ON_NON_WRITABLE_LENGTH_SET = DESCRIPTORS && !function () { // makes no sense without proper strict mode support if (this !== undefined) return true; try { // eslint-disable-next-line es/no-object-defineproperty -- safe Object.defineProperty([], 'length', { writable: false }).length = 1; } catch (error) { return error instanceof TypeError; } }(); module.exports = SILENT_ON_NON_WRITABLE_LENGTH_SET ? function (O, length) { if (isArray(O) && !getOwnPropertyDescriptor(O, 'length').writable) { throw $TypeError('Cannot set read only .length'); } return O.length = length; } : function (O, length) { return O.length = length; }; /***/ }), /***/ "3ad3": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/color-widget.vue?vue&type=template&id=42e4e88e&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-color-picker', { ref: "fieldEditor", attrs: { "size": _vm.field.options.size, "disabled": _vm.field.options.disabled }, on: { "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/color-widget.vue?vue&type=template&id=42e4e88e&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/color-widget.vue?vue&type=script&lang=js& /* harmony default export */ var color_widgetvue_type_script_lang_js_ = ({ name: "color-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/color-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_color_widgetvue_type_script_lang_js_ = (color_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/color-widget.vue?vue&type=style&index=0&id=42e4e88e&prod&lang=scss&scoped=true& var color_widgetvue_type_style_index_0_id_42e4e88e_prod_lang_scss_scoped_true_ = __webpack_require__("717b"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/color-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_color_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "42e4e88e", null ) /* harmony default export */ var color_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "3c3d": /***/ (function(module, exports) { // eslint-disable-next-line es/no-object-getownpropertysymbols -- safe exports.f = Object.getOwnPropertySymbols; /***/ }), /***/ "3c51": /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__("1ff0"); var isObject = __webpack_require__("02ca"); var document = global.document; // typeof document.createElement is 'object' in old IE var EXISTS = isObject(document) && isObject(document.createElement); module.exports = function (it) { return EXISTS ? document.createElement(it) : {}; }; /***/ }), /***/ "4027": /***/ (function(module, exports, __webpack_require__) { "use strict"; var Cancel = __webpack_require__("f3af"); /** * A `CancelToken` is an object that can be used to request cancellation of an operation. * * @class * @param {Function} executor The executor function. */ function CancelToken(executor) { if (typeof executor !== 'function') { throw new TypeError('executor must be a function.'); } var resolvePromise; this.promise = new Promise(function promiseExecutor(resolve) { resolvePromise = resolve; }); var token = this; executor(function cancel(message) { if (token.reason) { // Cancellation has already been requested return; } token.reason = new Cancel(message); resolvePromise(token.reason); }); } /** * Throws a `Cancel` if cancellation has been requested. */ CancelToken.prototype.throwIfRequested = function throwIfRequested() { if (this.reason) { throw this.reason; } }; /** * Returns an object that contains a new `CancelToken` and a function that, when called, * cancels the `CancelToken`. */ CancelToken.source = function source() { var cancel; var token = new CancelToken(function executor(c) { cancel = c; }); return { token: token, cancel: cancel }; }; module.exports = CancelToken; /***/ }), /***/ "410d": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); function InterceptorManager() { this.handlers = []; } /** * Add a new interceptor to the stack * * @param {Function} fulfilled The function to handle `then` for a `Promise` * @param {Function} rejected The function to handle `reject` for a `Promise` * * @return {Number} An ID used to remove interceptor later */ InterceptorManager.prototype.use = function use(fulfilled, rejected, options) { this.handlers.push({ fulfilled: fulfilled, rejected: rejected, synchronous: options ? options.synchronous : false, runWhen: options ? options.runWhen : null }); return this.handlers.length - 1; }; /** * Remove an interceptor from the stack * * @param {Number} id The ID that was returned by `use` */ InterceptorManager.prototype.eject = function eject(id) { if (this.handlers[id]) { this.handlers[id] = null; } }; /** * Iterate over all the registered interceptors * * This method is particularly useful for skipping over any * interceptors that may have become `null` calling `eject`. * * @param {Function} fn The function to call for each interceptor */ InterceptorManager.prototype.forEach = function forEach(fn) { utils.forEach(this.handlers, function forEachHandler(h) { if (h !== null) { fn(h); } }); }; module.exports = InterceptorManager; /***/ }), /***/ "415b": /***/ (function(module, exports, __webpack_require__) { var getBuiltIn = __webpack_require__("ec3f"); var uncurryThis = __webpack_require__("d027"); var getOwnPropertyNamesModule = __webpack_require__("fea3"); var getOwnPropertySymbolsModule = __webpack_require__("3c3d"); var anObject = __webpack_require__("0eaf"); var concat = uncurryThis([].concat); // all object keys, includes non-enumerable and symbols module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) { var keys = getOwnPropertyNamesModule.f(anObject(it)); var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys; }; /***/ }), /***/ "43d9": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_static_content_wrapper_vue_vue_type_style_index_0_id_c1251358_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("44e9"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_static_content_wrapper_vue_vue_type_style_index_0_id_c1251358_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_static_content_wrapper_vue_vue_type_style_index_0_id_c1251358_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "44e9": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "4694": /***/ (function(module, exports, __webpack_require__) { "use strict"; var pkg = __webpack_require__("63b7"); var validators = {}; // eslint-disable-next-line func-names ['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) { validators[type] = function validator(thing) { return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type; }; }); var deprecatedWarnings = {}; var currentVerArr = pkg.version.split('.'); /** * Compare package versions * @param {string} version * @param {string?} thanVersion * @returns {boolean} */ function isOlderVersion(version, thanVersion) { var pkgVersionArr = thanVersion ? thanVersion.split('.') : currentVerArr; var destVer = version.split('.'); for (var i = 0; i < 3; i++) { if (pkgVersionArr[i] > destVer[i]) { return true; } else if (pkgVersionArr[i] < destVer[i]) { return false; } } return false; } /** * Transitional option validator * @param {function|boolean?} validator * @param {string?} version * @param {string} message * @returns {function} */ validators.transitional = function transitional(validator, version, message) { var isDeprecated = version && isOlderVersion(version); function formatMessage(opt, desc) { return '[Axios v' + pkg.version + '] Transitional option \'' + opt + '\'' + desc + (message ? '. ' + message : ''); } // eslint-disable-next-line func-names return function(value, opt, opts) { if (validator === false) { throw new Error(formatMessage(opt, ' has been removed in ' + version)); } if (isDeprecated && !deprecatedWarnings[opt]) { deprecatedWarnings[opt] = true; // eslint-disable-next-line no-console console.warn( formatMessage( opt, ' has been deprecated since v' + version + ' and will be removed in the near future' ) ); } return validator ? validator(value, opt, opts) : true; }; }; /** * Assert object's properties type * @param {object} options * @param {object} schema * @param {boolean?} allowUnknown */ function assertOptions(options, schema, allowUnknown) { if (typeof options !== 'object') { throw new TypeError('options must be an object'); } var keys = Object.keys(options); var i = keys.length; while (i-- > 0) { var opt = keys[i]; var validator = schema[opt]; if (validator) { var value = options[opt]; var result = value === undefined || validator(value, opt, options); if (result !== true) { throw new TypeError('option ' + opt + ' must be ' + result); } continue; } if (allowUnknown !== true) { throw Error('Unknown option ' + opt); } } } module.exports = { isOlderVersion: isOlderVersion, assertOptions: assertOptions, validators: validators }; /***/ }), /***/ "4833": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "4a70": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/file-upload-widget.vue?vue&type=template&id=fd980ab6&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-upload', { ref: "fieldEditor", staticClass: "dynamicPseudoAfter", class: { 'hideUploadDiv': _vm.uploadBtnHidden }, style: _vm.styleVariables, attrs: { "disabled": _vm.field.options.disabled, "action": _vm.field.options.uploadURL, "headers": _vm.uploadHeaders, "data": _vm.uploadData, "with-credentials": _vm.field.options.withCredentials, "multiple": _vm.field.options.multipleSelect, "file-list": _vm.fileList, "show-file-list": _vm.field.options.showFileList, "limit": _vm.field.options.limit, "on-exceed": _vm.handleFileExceed, "before-upload": _vm.beforeFileUpload, "on-success": _vm.handleFileUpload, "on-error": _vm.handelUploadError, "on-remove": _vm.handleFileRemove }, scopedSlots: _vm._u([{ key: "file", fn: function ({ file }) { return [_c('div', { staticClass: "upload-file-list" }, [_c('span', { staticClass: "upload-file-name", attrs: { "title": file.name } }, [_vm._v(_vm._s(file.name))]), _c('a', { attrs: { "href": file.url, "download": "" } }, [_c('i', { staticClass: "el-icon-download file-action", attrs: { "title": _vm.i18nt('render.hint.downloadFile') } })]), !_vm.field.options.disabled ? _c('i', { staticClass: "el-icon-delete file-action", attrs: { "title": _vm.i18nt('render.hint.removeFile') }, on: { "click": function ($event) { return _vm.removeUploadFile(file.name); } } }) : _vm._e()])]; } }]) }, [!!_vm.field.options.uploadTip ? _c('div', { staticClass: "el-upload__tip", attrs: { "slot": "tip" }, slot: "tip" }, [_vm._v(_vm._s(_vm.field.options.uploadTip))]) : _vm._e(), _c('i', { staticClass: "el-icon-plus avatar-uploader-icon", attrs: { "slot": "default" }, slot: "default" })])], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/file-upload-widget.vue?vue&type=template&id=fd980ab6&scoped=true& // EXTERNAL MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/file-upload-widget.vue?vue&type=script&lang=js& var file_upload_widgetvue_type_script_lang_js_ = __webpack_require__("7eab"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/file-upload-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_file_upload_widgetvue_type_script_lang_js_ = (file_upload_widgetvue_type_script_lang_js_["a" /* default */]); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/file-upload-widget.vue?vue&type=style&index=0&id=fd980ab6&prod&lang=scss&scoped=true& var file_upload_widgetvue_type_style_index_0_id_fd980ab6_prod_lang_scss_scoped_true_ = __webpack_require__("faf6"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/file-upload-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_file_upload_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "fd980ab6", null ) /* harmony default export */ var file_upload_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "4c59": /***/ (function(module, exports, __webpack_require__) { var DESCRIPTORS = __webpack_require__("a549"); var fails = __webpack_require__("8637"); var createElement = __webpack_require__("3c51"); // Thanks to IE8 for its funny defineProperty module.exports = !DESCRIPTORS && !fails(function () { // eslint-disable-next-line es/no-object-defineproperty -- required for testing return Object.defineProperty(createElement('div'), 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), /***/ "4d60": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); function encode(val) { return encodeURIComponent(val). replace(/%3A/gi, ':'). replace(/%24/g, '$'). replace(/%2C/gi, ','). replace(/%20/g, '+'). replace(/%5B/gi, '['). replace(/%5D/gi, ']'); } /** * Build a URL by appending params to the end * * @param {string} url The base of the url (e.g., http://www.google.com) * @param {object} [params] The params to be appended * @returns {string} The formatted url */ module.exports = function buildURL(url, params, paramsSerializer) { /*eslint no-param-reassign:0*/ if (!params) { return url; } var serializedParams; if (paramsSerializer) { serializedParams = paramsSerializer(params); } else if (utils.isURLSearchParams(params)) { serializedParams = params.toString(); } else { var parts = []; utils.forEach(params, function serialize(val, key) { if (val === null || typeof val === 'undefined') { return; } if (utils.isArray(val)) { key = key + '[]'; } else { val = [val]; } utils.forEach(val, function parseValue(v) { if (utils.isDate(v)) { v = v.toISOString(); } else if (utils.isObject(v)) { v = JSON.stringify(v); } parts.push(encode(key) + '=' + encode(v)); }); }); serializedParams = parts.join('&'); } if (serializedParams) { var hashmarkIndex = url.indexOf('#'); if (hashmarkIndex !== -1) { url = url.slice(0, hashmarkIndex); } url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams; } return url; }; /***/ }), /***/ "4e7b": /***/ (function(module, exports, __webpack_require__) { var wellKnownSymbol = __webpack_require__("f500"); var TO_STRING_TAG = wellKnownSymbol('toStringTag'); var test = {}; test[TO_STRING_TAG] = 'z'; module.exports = String(test) === '[object z]'; /***/ }), /***/ "4f22": /***/ (function(module, exports, __webpack_require__) { var isCallable = __webpack_require__("a9ce"); var definePropertyModule = __webpack_require__("d3a8"); var makeBuiltIn = __webpack_require__("97c1"); var defineGlobalProperty = __webpack_require__("6910"); module.exports = function (O, key, value, options) { if (!options) options = {}; var simple = options.enumerable; var name = options.name !== undefined ? options.name : key; if (isCallable(value)) makeBuiltIn(value, name, options); if (options.global) { if (simple) O[key] = value; else defineGlobalProperty(key, value); } else { try { if (!options.unsafe) delete O[key]; else if (O[key]) simple = true; } catch (error) { /* empty */ } if (simple) O[key] = value; else definePropertyModule.f(O, key, { value: value, enumerable: false, configurable: !options.nonConfigurable, writable: !options.nonWritable }); } return O; }; /***/ }), /***/ "4ff3": /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__("52cc"); /***/ }), /***/ "513d": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_grid_col_item_vue_vue_type_style_index_0_id_4f64a923_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("9d4c"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_grid_col_item_vue_vue_type_style_index_0_id_4f64a923_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_grid_col_item_vue_vue_type_style_index_0_id_4f64a923_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "5163": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "527d": /***/ (function(module, exports, __webpack_require__) { var DESCRIPTORS = __webpack_require__("a549"); var call = __webpack_require__("7d92"); var propertyIsEnumerableModule = __webpack_require__("c8c7"); var createPropertyDescriptor = __webpack_require__("f097"); var toIndexedObject = __webpack_require__("9f48"); var toPropertyKey = __webpack_require__("cda1"); var hasOwn = __webpack_require__("7cfe"); var IE8_DOM_DEFINE = __webpack_require__("4c59"); // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; // `Object.getOwnPropertyDescriptor` method // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) { O = toIndexedObject(O); P = toPropertyKey(P); if (IE8_DOM_DEFINE) try { return $getOwnPropertyDescriptor(O, P); } catch (error) { /* empty */ } if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]); }; /***/ }), /***/ "52cc": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); var bind = __webpack_require__("11d5"); var Axios = __webpack_require__("e29d"); var mergeConfig = __webpack_require__("fad8"); var defaults = __webpack_require__("9632"); /** * Create an instance of Axios * * @param {Object} defaultConfig The default config for the instance * @return {Axios} A new instance of Axios */ function createInstance(defaultConfig) { var context = new Axios(defaultConfig); var instance = bind(Axios.prototype.request, context); // Copy axios.prototype to instance utils.extend(instance, Axios.prototype, context); // Copy context to instance utils.extend(instance, context); return instance; } // Create the default instance to be exported var axios = createInstance(defaults); // Expose Axios class to allow class inheritance axios.Axios = Axios; // Factory for creating new instances axios.create = function create(instanceConfig) { return createInstance(mergeConfig(axios.defaults, instanceConfig)); }; // Expose Cancel & CancelToken axios.Cancel = __webpack_require__("f3af"); axios.CancelToken = __webpack_require__("4027"); axios.isCancel = __webpack_require__("39ca"); // Expose all/spread axios.all = function all(promises) { return Promise.all(promises); }; axios.spread = __webpack_require__("89fb"); // Expose isAxiosError axios.isAxiosError = __webpack_require__("db6e"); module.exports = axios; // Allow use of default import syntax in TypeScript module.exports.default = axios; /***/ }), /***/ "5baf": /***/ (function(module, exports, __webpack_require__) { "use strict"; var isMergeableObject = function isMergeableObject(value) { return isNonNullObject(value) && !isSpecial(value) }; function isNonNullObject(value) { return !!value && typeof value === 'object' } function isSpecial(value) { var stringValue = Object.prototype.toString.call(value); return stringValue === '[object RegExp]' || stringValue === '[object Date]' || isReactElement(value) } // see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25 var canUseSymbol = typeof Symbol === 'function' && Symbol.for; var REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7; function isReactElement(value) { return value.$$typeof === REACT_ELEMENT_TYPE } function emptyTarget(val) { return Array.isArray(val) ? [] : {} } function cloneIfNecessary(value, optionsArgument) { var clone = optionsArgument && optionsArgument.clone === true; return (clone && isMergeableObject(value)) ? deepmerge(emptyTarget(value), value, optionsArgument) : value } function defaultArrayMerge(target, source, optionsArgument) { var destination = target.slice(); source.forEach(function(e, i) { if (typeof destination[i] === 'undefined') { destination[i] = cloneIfNecessary(e, optionsArgument); } else if (isMergeableObject(e)) { destination[i] = deepmerge(target[i], e, optionsArgument); } else if (target.indexOf(e) === -1) { destination.push(cloneIfNecessary(e, optionsArgument)); } }); return destination } function mergeObject(target, source, optionsArgument) { var destination = {}; if (isMergeableObject(target)) { Object.keys(target).forEach(function(key) { destination[key] = cloneIfNecessary(target[key], optionsArgument); }); } Object.keys(source).forEach(function(key) { if (!isMergeableObject(source[key]) || !target[key]) { destination[key] = cloneIfNecessary(source[key], optionsArgument); } else { destination[key] = deepmerge(target[key], source[key], optionsArgument); } }); return destination } function deepmerge(target, source, optionsArgument) { var sourceIsArray = Array.isArray(source); var targetIsArray = Array.isArray(target); var options = optionsArgument || { arrayMerge: defaultArrayMerge }; var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray; if (!sourceAndTargetTypesMatch) { return cloneIfNecessary(source, optionsArgument) } else if (sourceIsArray) { var arrayMerge = options.arrayMerge || defaultArrayMerge; return arrayMerge(target, source, optionsArgument) } else { return mergeObject(target, source, optionsArgument) } } deepmerge.all = function deepmergeAll(array, optionsArgument) { if (!Array.isArray(array) || array.length < 2) { throw new Error('first argument should be an array with at least two elements') } // we are sure there are at least 2 values, so it is safe to have no initial value return array.reduce(function(prev, next) { return deepmerge(prev, next, optionsArgument) }) }; var deepmerge_1 = deepmerge; module.exports = deepmerge_1; /***/ }), /***/ "5bf5": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "5cfc": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "5f36": /***/ (function(module, exports, __webpack_require__) { var uncurryThis = __webpack_require__("d027"); var fails = __webpack_require__("8637"); var classof = __webpack_require__("f1a4"); var $Object = Object; var split = uncurryThis(''.split); // fallback for non-array-like ES3 and non-enumerable old V8 strings module.exports = fails(function () { // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346 // eslint-disable-next-line no-prototype-builtins -- safe return !$Object('z').propertyIsEnumerable(0); }) ? function (it) { return classof(it) == 'String' ? split(it, '') : $Object(it); } : $Object; /***/ }), /***/ "60c5": /***/ (function(module, exports, __webpack_require__) { var fails = __webpack_require__("8637"); var createPropertyDescriptor = __webpack_require__("f097"); module.exports = !fails(function () { var error = Error('a'); if (!('stack' in error)) return true; // eslint-disable-next-line es/no-object-defineproperty -- safe Object.defineProperty(error, 'stack', createPropertyDescriptor(1, 7)); return error.stack !== 7; }); /***/ }), /***/ "61e5": /***/ (function(module, exports, __webpack_require__) { var hasOwn = __webpack_require__("7cfe"); var ownKeys = __webpack_require__("415b"); var getOwnPropertyDescriptorModule = __webpack_require__("527d"); var definePropertyModule = __webpack_require__("d3a8"); module.exports = function (target, source, exceptions) { var keys = ownKeys(source); var defineProperty = definePropertyModule.f; var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; for (var i = 0; i < keys.length; i++) { var key = keys[i]; if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) { defineProperty(target, key, getOwnPropertyDescriptor(source, key)); } } }; /***/ }), /***/ "6266": /***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {// .dirname, .basename, and .extname methods are extracted from Node.js v8.11.1, // backported and transplited with Babel, with backwards-compat fixes // Copyright Joyent, Inc. and other Node contributors. // // Permission is hereby granted, free of charge, to any person obtaining a // copy of this software and associated documentation files (the // "Software"), to deal in the Software without restriction, including // without limitation the rights to use, copy, modify, merge, publish, // distribute, sublicense, and/or sell copies of the Software, and to permit // persons to whom the Software is furnished to do so, subject to the // following conditions: // // The above copyright notice and this permission notice shall be included // in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE // USE OR OTHER DEALINGS IN THE SOFTWARE. // resolves . and .. elements in a path array with directory names there // must be no slashes, empty elements, or device names (c:\) in the array // (so also no leading and trailing slashes - it does not distinguish // relative and absolute paths) function normalizeArray(parts, allowAboveRoot) { // if the path tries to go above the root, `up` ends up > 0 var up = 0; for (var i = parts.length - 1; i >= 0; i--) { var last = parts[i]; if (last === '.') { parts.splice(i, 1); } else if (last === '..') { parts.splice(i, 1); up++; } else if (up) { parts.splice(i, 1); up--; } } // if the path is allowed to go above the root, restore leading ..s if (allowAboveRoot) { for (; up--; up) { parts.unshift('..'); } } return parts; } // path.resolve([from ...], to) // posix version exports.resolve = function() { var resolvedPath = '', resolvedAbsolute = false; for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { var path = (i >= 0) ? arguments[i] : process.cwd(); // Skip empty and invalid entries if (typeof path !== 'string') { throw new TypeError('Arguments to path.resolve must be strings'); } else if (!path) { continue; } resolvedPath = path + '/' + resolvedPath; resolvedAbsolute = path.charAt(0) === '/'; } // At this point the path should be resolved to a full absolute path, but // handle relative paths to be safe (might happen when process.cwd() fails) // Normalize the path resolvedPath = normalizeArray(filter(resolvedPath.split('/'), function(p) { return !!p; }), !resolvedAbsolute).join('/'); return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.'; }; // path.normalize(path) // posix version exports.normalize = function(path) { var isAbsolute = exports.isAbsolute(path), trailingSlash = substr(path, -1) === '/'; // Normalize the path path = normalizeArray(filter(path.split('/'), function(p) { return !!p; }), !isAbsolute).join('/'); if (!path && !isAbsolute) { path = '.'; } if (path && trailingSlash) { path += '/'; } return (isAbsolute ? '/' : '') + path; }; // posix version exports.isAbsolute = function(path) { return path.charAt(0) === '/'; }; // posix version exports.join = function() { var paths = Array.prototype.slice.call(arguments, 0); return exports.normalize(filter(paths, function(p, index) { if (typeof p !== 'string') { throw new TypeError('Arguments to path.join must be strings'); } return p; }).join('/')); }; // path.relative(from, to) // posix version exports.relative = function(from, to) { from = exports.resolve(from).substr(1); to = exports.resolve(to).substr(1); function trim(arr) { var start = 0; for (; start < arr.length; start++) { if (arr[start] !== '') break; } var end = arr.length - 1; for (; end >= 0; end--) { if (arr[end] !== '') break; } if (start > end) return []; return arr.slice(start, end - start + 1); } var fromParts = trim(from.split('/')); var toParts = trim(to.split('/')); var length = Math.min(fromParts.length, toParts.length); var samePartsLength = length; for (var i = 0; i < length; i++) { if (fromParts[i] !== toParts[i]) { samePartsLength = i; break; } } var outputParts = []; for (var i = samePartsLength; i < fromParts.length; i++) { outputParts.push('..'); } outputParts = outputParts.concat(toParts.slice(samePartsLength)); return outputParts.join('/'); }; exports.sep = '/'; exports.delimiter = ':'; exports.dirname = function (path) { if (typeof path !== 'string') path = path + ''; if (path.length === 0) return '.'; var code = path.charCodeAt(0); var hasRoot = code === 47 /*/*/; var end = -1; var matchedSlash = true; for (var i = path.length - 1; i >= 1; --i) { code = path.charCodeAt(i); if (code === 47 /*/*/) { if (!matchedSlash) { end = i; break; } } else { // We saw the first non-path separator matchedSlash = false; } } if (end === -1) return hasRoot ? '/' : '.'; if (hasRoot && end === 1) { // return '//'; // Backwards-compat fix: return '/'; } return path.slice(0, end); }; function basename(path) { if (typeof path !== 'string') path = path + ''; var start = 0; var end = -1; var matchedSlash = true; var i; for (i = path.length - 1; i >= 0; --i) { if (path.charCodeAt(i) === 47 /*/*/) { // If we reached a path separator that was not part of a set of path // separators at the end of the string, stop now if (!matchedSlash) { start = i + 1; break; } } else if (end === -1) { // We saw the first non-path separator, mark this as the end of our // path component matchedSlash = false; end = i + 1; } } if (end === -1) return ''; return path.slice(start, end); } // Uses a mixed approach for backwards-compatibility, as ext behavior changed // in new Node.js versions, so only basename() above is backported here exports.basename = function (path, ext) { var f = basename(path); if (ext && f.substr(-1 * ext.length) === ext) { f = f.substr(0, f.length - ext.length); } return f; }; exports.extname = function (path) { if (typeof path !== 'string') path = path + ''; var startDot = -1; var startPart = 0; var end = -1; var matchedSlash = true; // Track the state of characters (if any) we see before our first dot and // after any path separator we find var preDotState = 0; for (var i = path.length - 1; i >= 0; --i) { var code = path.charCodeAt(i); if (code === 47 /*/*/) { // If we reached a path separator that was not part of a set of path // separators at the end of the string, stop now if (!matchedSlash) { startPart = i + 1; break; } continue; } if (end === -1) { // We saw the first non-path separator, mark this as the end of our // extension matchedSlash = false; end = i + 1; } if (code === 46 /*.*/) { // If this is our first dot, mark it as the start of our extension if (startDot === -1) startDot = i; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { // We saw a non-dot and non-path separator before our dot, so we should // have a good chance at having a non-empty extension preDotState = -1; } } if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot preDotState === 0 || // The (right-most) trimmed path component is exactly '..' preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { return ''; } return path.slice(startDot, end); }; function filter (xs, f) { if (xs.filter) return xs.filter(f); var res = []; for (var i = 0; i < xs.length; i++) { if (f(xs[i], i, xs)) res.push(xs[i]); } return res; } // String.prototype.substr - negative index don't work in IE8 var substr = 'ab'.substr(-1) === 'b' ? function (str, start, len) { return str.substr(start, len) } : function (str, start, len) { if (start < 0) start = str.length + start; return str.substr(start, len); } ; /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("eef6"))) /***/ }), /***/ "6295": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_slot_widget_vue_vue_type_style_index_0_id_856e2df6_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("0afe"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_slot_widget_vue_vue_type_style_index_0_id_856e2df6_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_slot_widget_vue_vue_type_style_index_0_id_856e2df6_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "63a8": /***/ (function(module, exports, __webpack_require__) { var NATIVE_BIND = __webpack_require__("f805"); var FunctionPrototype = Function.prototype; var call = FunctionPrototype.call; var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call); module.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) { return function () { return call.apply(fn, arguments); }; }; /***/ }), /***/ "63b7": /***/ (function(module) { module.exports = JSON.parse("{\"name\":\"axios\",\"version\":\"0.21.4\",\"description\":\"Promise based HTTP client for the browser and node.js\",\"main\":\"index.js\",\"scripts\":{\"test\":\"grunt test\",\"start\":\"node ./sandbox/server.js\",\"build\":\"NODE_ENV=production grunt build\",\"preversion\":\"npm test\",\"version\":\"npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json\",\"postversion\":\"git push && git push --tags\",\"examples\":\"node ./examples/server.js\",\"coveralls\":\"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js\",\"fix\":\"eslint --fix lib/**/*.js\"},\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/axios/axios.git\"},\"keywords\":[\"xhr\",\"http\",\"ajax\",\"promise\",\"node\"],\"author\":\"Matt Zabriskie\",\"license\":\"MIT\",\"bugs\":{\"url\":\"https://github.com/axios/axios/issues\"},\"homepage\":\"https://axios-http.com\",\"devDependencies\":{\"coveralls\":\"^3.0.0\",\"es6-promise\":\"^4.2.4\",\"grunt\":\"^1.3.0\",\"grunt-banner\":\"^0.6.0\",\"grunt-cli\":\"^1.2.0\",\"grunt-contrib-clean\":\"^1.1.0\",\"grunt-contrib-watch\":\"^1.0.0\",\"grunt-eslint\":\"^23.0.0\",\"grunt-karma\":\"^4.0.0\",\"grunt-mocha-test\":\"^0.13.3\",\"grunt-ts\":\"^6.0.0-beta.19\",\"grunt-webpack\":\"^4.0.2\",\"istanbul-instrumenter-loader\":\"^1.0.0\",\"jasmine-core\":\"^2.4.1\",\"karma\":\"^6.3.2\",\"karma-chrome-launcher\":\"^3.1.0\",\"karma-firefox-launcher\":\"^2.1.0\",\"karma-jasmine\":\"^1.1.1\",\"karma-jasmine-ajax\":\"^0.1.13\",\"karma-safari-launcher\":\"^1.0.0\",\"karma-sauce-launcher\":\"^4.3.6\",\"karma-sinon\":\"^1.0.5\",\"karma-sourcemap-loader\":\"^0.3.8\",\"karma-webpack\":\"^4.0.2\",\"load-grunt-tasks\":\"^3.5.2\",\"minimist\":\"^1.2.0\",\"mocha\":\"^8.2.1\",\"sinon\":\"^4.5.0\",\"terser-webpack-plugin\":\"^4.2.3\",\"typescript\":\"^4.0.5\",\"url-search-params\":\"^0.10.0\",\"webpack\":\"^4.44.2\",\"webpack-dev-server\":\"^3.11.0\"},\"browser\":{\"./lib/adapters/http.js\":\"./lib/adapters/xhr.js\"},\"jsdelivr\":\"dist/axios.min.js\",\"unpkg\":\"dist/axios.min.js\",\"typings\":\"./index.d.ts\",\"dependencies\":{\"follow-redirects\":\"^1.14.0\"},\"bundlesize\":[{\"path\":\"./dist/axios.min.js\",\"threshold\":\"5kB\"}],\"__npminstall_done\":true,\"_from\":\"axios@0.21.4\",\"_resolved\":\"https://registry.npmmirror.com/axios/-/axios-0.21.4.tgz\"}"); /***/ }), /***/ "6453": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "660a": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "6910": /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__("1ff0"); // eslint-disable-next-line es/no-object-defineproperty -- safe var defineProperty = Object.defineProperty; module.exports = function (key, value) { try { defineProperty(global, key, { value: value, configurable: true, writable: true }); } catch (error) { global[key] = value; } return value; }; /***/ }), /***/ "692d": /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__("1ff0"); var defineGlobalProperty = __webpack_require__("6910"); var SHARED = '__core-js_shared__'; var store = global[SHARED] || defineGlobalProperty(SHARED, {}); module.exports = store; /***/ }), /***/ "6930": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "69c5": /***/ (function(module, exports, __webpack_require__) { "use strict"; /** * Update an Error with the specified config, error code, and response. * * @param {Error} error The error to update. * @param {Object} config The config. * @param {string} [code] The error code (for example, 'ECONNABORTED'). * @param {Object} [request] The request. * @param {Object} [response] The response. * @returns {Error} The error. */ module.exports = function enhanceError(error, config, code, request, response) { error.config = config; if (code) { error.code = code; } error.request = request; error.response = response; error.isAxiosError = true; error.toJSON = function toJSON() { return { // Standard message: this.message, name: this.name, // Microsoft description: this.description, number: this.number, // Mozilla fileName: this.fileName, lineNumber: this.lineNumber, columnNumber: this.columnNumber, stack: this.stack, // Axios config: this.config, code: this.code }; }; return error; }; /***/ }), /***/ "6a79": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/table-cell-item.vue?vue&type=template&id=79b5d9f8&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('td', { staticClass: "table-cell", class: [_vm.customClass], style: { width: _vm.widget.options.cellWidth + ' !important' || false, height: _vm.widget.options.cellHeight + ' !important' || false }, attrs: { "colspan": _vm.widget.options.colspan || 1, "rowspan": _vm.widget.options.rowspan || 1 } }, [_vm._l(_vm.widget.widgetList, function (subWidget, swIdx) { return ['container' === subWidget.category ? [_c(subWidget.type + '-item', { key: swIdx, tag: "component", attrs: { "widget": subWidget, "parent-list": _vm.widget.widgetList, "index-of-parent-list": swIdx, "parent-widget": _vm.widget }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) })] : [_c(subWidget.type + '-widget', { key: swIdx, tag: "component", attrs: { "field": subWidget, "parent-list": _vm.widget.widgetList, "index-of-parent-list": swIdx, "parent-widget": _vm.widget }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) })]]; })], 2); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-render/container-item/table-cell-item.vue?vue&type=template&id=79b5d9f8&scoped=true& // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-render/refMixin.js var refMixin = __webpack_require__("d67f"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/index.js var field_widget = __webpack_require__("c029"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/table-cell-item.vue?vue&type=script&lang=js& /* harmony default export */ var table_cell_itemvue_type_script_lang_js_ = ({ name: "TableCellItem", componentName: "ContainerItem", mixins: [emitter["a" /* default */], i18n["b" /* default */], refMixin["a" /* default */]], components: { ...field_widget["a" /* default */] }, props: { widget: Object, rowIndex: Number, colIndex: Number }, inject: ['refList', 'globalModel'], computed: { customClass() { return this.widget.options.customClass || ''; } }, created() { /* tableCell不生成组件引用,故无须调用initRefList!! */ //this.initRefList() }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-render/container-item/table-cell-item.vue?vue&type=script&lang=js& /* harmony default export */ var container_item_table_cell_itemvue_type_script_lang_js_ = (table_cell_itemvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-render/container-item/table-cell-item.vue?vue&type=style&index=0&id=79b5d9f8&prod&lang=scss&scoped=true& var table_cell_itemvue_type_style_index_0_id_79b5d9f8_prod_lang_scss_scoped_true_ = __webpack_require__("fba0"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-render/container-item/table-cell-item.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( container_item_table_cell_itemvue_type_script_lang_js_, render, staticRenderFns, false, null, "79b5d9f8", null ) /* harmony default export */ var table_cell_item = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "6b1f": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "6bb4": /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; exports.default = function (Vue) { /** * template * * @param {String} string * @param {Array} ...args * @return {String} */ function template(string) { for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { args[_key - 1] = arguments[_key]; } if (args.length === 1 && _typeof(args[0]) === 'object') { args = args[0]; } if (!args || !args.hasOwnProperty) { args = {}; } return string.replace(RE_NARGS, function (match, prefix, i, index) { var result = void 0; if (string[index - 1] === '{' && string[index + match.length] === '}') { return i; } else { result = (0, _util.hasOwn)(args, i) ? args[i] : null; if (result === null || result === undefined) { return ''; } return result; } }); } return template; }; var _util = __webpack_require__("0b51"); var RE_NARGS = /(%|)\{([0-9a-zA-Z_]+)\}/g; /** * String format template * - Inspired: * https://github.com/Matt-Esch/string-template/index.js */ /***/ }), /***/ "6d04": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/checkbox-widget.vue?vue&type=template&id=3a2d3865&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-checkbox-group', { ref: "fieldEditor", attrs: { "disabled": _vm.field.options.disabled, "size": _vm.field.options.size }, on: { "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } }, [!!_vm.field.options.buttonStyle ? _vm._l(_vm.field.options.optionItems, function (item, index) { return _c('el-checkbox-button', { key: index, style: { display: _vm.field.options.displayStyle }, attrs: { "label": item.value, "disabled": item.disabled, "border": _vm.field.options.border } }, [_vm._v(_vm._s(item.label))]); }) : _vm._l(_vm.field.options.optionItems, function (item, index) { return _c('el-checkbox', { key: index, style: { display: _vm.field.options.displayStyle }, attrs: { "label": item.value, "disabled": item.disabled, "border": _vm.field.options.border } }, [_vm._v(_vm._s(item.label))]); })], 2)], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/checkbox-widget.vue?vue&type=template&id=3a2d3865&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/checkbox-widget.vue?vue&type=script&lang=js& /* harmony default export */ var checkbox_widgetvue_type_script_lang_js_ = ({ name: "checkbox-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initOptionItems(); this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/checkbox-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_checkbox_widgetvue_type_script_lang_js_ = (checkbox_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/checkbox-widget.vue?vue&type=style&index=0&id=3a2d3865&prod&lang=scss&scoped=true& var checkbox_widgetvue_type_style_index_0_id_3a2d3865_prod_lang_scss_scoped_true_ = __webpack_require__("ec47"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/checkbox-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_checkbox_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "3a2d3865", null ) /* harmony default export */ var checkbox_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "6d23": /***/ (function(module, exports, __webpack_require__) { var DESCRIPTORS = __webpack_require__("a549"); var definePropertyModule = __webpack_require__("d3a8"); var createPropertyDescriptor = __webpack_require__("f097"); module.exports = DESCRIPTORS ? function (object, key, value) { return definePropertyModule.f(object, key, createPropertyDescriptor(1, value)); } : function (object, key, value) { object[key] = value; return object; }; /***/ }), /***/ "6e5c": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/button-widget.vue?vue&type=template&id=1293f105&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('static-content-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "design-state": _vm.designState, "display-style": _vm.field.options.displayStyle, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-button', { ref: "fieldEditor", attrs: { "type": _vm.field.options.type, "size": _vm.field.options.size, "plain": _vm.field.options.plain, "round": _vm.field.options.round, "circle": _vm.field.options.circle, "icon": _vm.field.options.icon, "disabled": _vm.field.options.disabled }, nativeOn: { "click": function ($event) { return _vm.handleButtonWidgetClick.apply(null, arguments); } } }, [_vm._v(" " + _vm._s(_vm.field.options.label))])], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/button-widget.vue?vue&type=template&id=1293f105&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue + 4 modules var static_content_wrapper = __webpack_require__("828b"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/button-widget.vue?vue&type=script&lang=js& /* harmony default export */ var button_widgetvue_type_script_lang_js_ = ({ name: "button-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { StaticContentWrapper: static_content_wrapper["default"] }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.registerToRefList(); this.initEventHandler(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/button-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_button_widgetvue_type_script_lang_js_ = (button_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/button-widget.vue?vue&type=style&index=0&id=1293f105&prod&lang=scss&scoped=true& var button_widgetvue_type_style_index_0_id_1293f105_prod_lang_scss_scoped_true_ = __webpack_require__("d719"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/button-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_button_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "1293f105", null ) /* harmony default export */ var button_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "717b": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_color_widget_vue_vue_type_style_index_0_id_42e4e88e_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("2c15"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_color_widget_vue_vue_type_style_index_0_id_42e4e88e_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_color_widget_vue_vue_type_style_index_0_id_42e4e88e_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "71bc": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return buildDefaultValueListFn; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return buildRulesListFn; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return buildFieldOptionsFn; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return buildUploadDataFn; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return buildActiveTabs; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return genVue2JS; }); /* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("24b8"); /* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("ca00"); /* harmony import */ var _utils_i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("79fa"); /* harmony import */ var _utils_validators__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("a00a"); function buildDefaultValueListFn(formConfig, widgetList, resultList) { return function (fieldWidget) { const fop = fieldWidget.options; const fd = fop.defaultValue; if (Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isNotNull */ "g"])(fd)) { resultList.push(`${fop.name}: ${JSON.stringify(fd)},`); } else { resultList.push(`${fop.name}: null,`); } }; } function buildRulesListFn(formConfig, widgetList, resultList) { return function (fieldWidget) { const fop = fieldWidget.options; let fieldRules = []; if (!!fop.required) { fieldRules.push(`{ required: true, message: '${Object(_utils_i18n__WEBPACK_IMPORTED_MODULE_2__[/* translate */ "c"])('render.hint.fieldRequired')}', }`); } if (!!fop.validation) { let vldName = fop.validation; if (!!_utils_validators__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"][vldName]) { fieldRules.push(`{ pattern: ${eval(Object(_utils_validators__WEBPACK_IMPORTED_MODULE_3__[/* getRegExp */ "b"])(vldName))}, trigger: ['blur', 'change'], message: '${fop.validationHint}' }`); } else { fieldRules.push(`{ pattern: '${eval(vldName)}', trigger: ['blur', 'change'], message: '${fop.validationHint}' }`); } } //TODO: 自定义校验函数 fieldRules.length > 0 && resultList.push(`${fop.name}: [${fieldRules.join(',')}],`); }; } function buildFieldOptionsFn(formConfig, widgetList, resultList) { return function (fieldWidget) { const fop = fieldWidget.options; const ft = fieldWidget.type; if (ft === 'radio' || ft === 'checkbox' || ft === 'select' || ft === 'cascader') { resultList.push(`${fop.name}Options: ${JSON.stringify(fop.optionItems)},`); } }; } function buildUploadDataFn(formConfig, widgetList, resultList) { return function (fieldWidget) { const fop = fieldWidget.options; const ft = fieldWidget.type; if (ft === 'picture-upload' || ft === 'file-upload') { resultList.push(`${fop.name}FileList: [],`); resultList.push(`${fop.name}UploadHeaders: {},`); resultList.push(`${fop.name}UploadData: {},`); } }; } function buildActiveTabs(formConfig, widgetList) { let resultList = []; const handlerFn = function (cw) { const cop = cw.options; const ct = cw.type; if (ct === 'tab') { cw.tabs.length > 0 && resultList.push(`'${cop.name}ActiveTab': '${cw.tabs[0].options.name}',`); } }; Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* traverseContainWidgets */ "m"])(widgetList, handlerFn); return resultList; } const genVue2JS = function (formConfig, widgetList) { let defaultValueList = []; let rulesList = []; let fieldOptions = []; let uploadData = []; Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* traverseFieldWidgets */ "n"])(widgetList, widget => { buildDefaultValueListFn(formConfig, widgetList, defaultValueList)(widget); buildRulesListFn(formConfig, widgetList, rulesList)(widget); buildFieldOptionsFn(formConfig, widgetList, fieldOptions)(widget); buildUploadDataFn(formConfig, widgetList, uploadData)(widget); }); const activeTabs = buildActiveTabs(formConfig, widgetList); const v2JSTemplate = ` export default { components: {}, props: {}, data() { return { ${formConfig.modelName}: { ${defaultValueList.join('\n')} }, ${formConfig.rulesName}: { ${rulesList.join('\n')} }, ${activeTabs.join('\n')} ${fieldOptions.join('\n')} ${uploadData.join('\n')} } }, computed: {}, watch: {}, created() { }, mounted() { }, methods: { submitForm() { this.$refs['vForm'].validate(valid => { if (!valid) return //TODO: 提交表单 }) }, resetForm() { this.$refs['vForm'].resetFields() } } }`; return v2JSTemplate; }; /***/ }), /***/ "71da": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "72cd": /***/ (function(module, exports, __webpack_require__) { var TO_STRING_TAG_SUPPORT = __webpack_require__("4e7b"); var isCallable = __webpack_require__("a9ce"); var classofRaw = __webpack_require__("f1a4"); var wellKnownSymbol = __webpack_require__("f500"); var TO_STRING_TAG = wellKnownSymbol('toStringTag'); var $Object = Object; // ES3 wrong here var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments'; // fallback for IE11 Script Access Denied error var tryGet = function (it, key) { try { return it[key]; } catch (error) { /* empty */ } }; // getting tag from ES6+ `Object.prototype.toString` module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) { var O, tag, result; return it === undefined ? 'Undefined' : it === null ? 'Null' // @@toStringTag case : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag // builtinTag case : CORRECT_ARGUMENTS ? classofRaw(O) // ES3 arguments fallback : (result = classofRaw(O)) == 'Object' && isCallable(O.callee) ? 'Arguments' : result; }; /***/ }), /***/ "72dd": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); module.exports = ( utils.isStandardBrowserEnv() ? // Standard browser envs support document.cookie (function standardBrowserEnv() { return { write: function write(name, value, expires, path, domain, secure) { var cookie = []; cookie.push(name + '=' + encodeURIComponent(value)); if (utils.isNumber(expires)) { cookie.push('expires=' + new Date(expires).toGMTString()); } if (utils.isString(path)) { cookie.push('path=' + path); } if (utils.isString(domain)) { cookie.push('domain=' + domain); } if (secure === true) { cookie.push('secure'); } document.cookie = cookie.join('; '); }, read: function read(name) { var match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)')); return (match ? decodeURIComponent(match[3]) : null); }, remove: function remove(name) { this.write(name, '', Date.now() - 86400000); } }; })() : // Non standard browser env (web workers, react-native) lack needed support. (function nonStandardBrowserEnv() { return { write: function write() {}, read: function read() { return null; }, remove: function remove() {} }; })() ); /***/ }), /***/ "757b": /***/ (function(module, exports, __webpack_require__) { "use strict"; var getBuiltIn = __webpack_require__("ec3f"); var hasOwn = __webpack_require__("7cfe"); var createNonEnumerableProperty = __webpack_require__("6d23"); var isPrototypeOf = __webpack_require__("0ea1"); var setPrototypeOf = __webpack_require__("822e"); var copyConstructorProperties = __webpack_require__("61e5"); var proxyAccessor = __webpack_require__("802d"); var inheritIfRequired = __webpack_require__("c00d"); var normalizeStringArgument = __webpack_require__("3135"); var installErrorCause = __webpack_require__("d4ef"); var clearErrorStack = __webpack_require__("1d46"); var ERROR_STACK_INSTALLABLE = __webpack_require__("60c5"); var DESCRIPTORS = __webpack_require__("a549"); var IS_PURE = __webpack_require__("2176"); module.exports = function (FULL_NAME, wrapper, FORCED, IS_AGGREGATE_ERROR) { var STACK_TRACE_LIMIT = 'stackTraceLimit'; var OPTIONS_POSITION = IS_AGGREGATE_ERROR ? 2 : 1; var path = FULL_NAME.split('.'); var ERROR_NAME = path[path.length - 1]; var OriginalError = getBuiltIn.apply(null, path); if (!OriginalError) return; var OriginalErrorPrototype = OriginalError.prototype; // V8 9.3- bug https://bugs.chromium.org/p/v8/issues/detail?id=12006 if (!IS_PURE && hasOwn(OriginalErrorPrototype, 'cause')) delete OriginalErrorPrototype.cause; if (!FORCED) return OriginalError; var BaseError = getBuiltIn('Error'); var WrappedError = wrapper(function (a, b) { var message = normalizeStringArgument(IS_AGGREGATE_ERROR ? b : a, undefined); var result = IS_AGGREGATE_ERROR ? new OriginalError(a) : new OriginalError(); if (message !== undefined) createNonEnumerableProperty(result, 'message', message); if (ERROR_STACK_INSTALLABLE) createNonEnumerableProperty(result, 'stack', clearErrorStack(result.stack, 2)); if (this && isPrototypeOf(OriginalErrorPrototype, this)) inheritIfRequired(result, this, WrappedError); if (arguments.length > OPTIONS_POSITION) installErrorCause(result, arguments[OPTIONS_POSITION]); return result; }); WrappedError.prototype = OriginalErrorPrototype; if (ERROR_NAME !== 'Error') { if (setPrototypeOf) setPrototypeOf(WrappedError, BaseError); else copyConstructorProperties(WrappedError, BaseError, { name: true }); } else if (DESCRIPTORS && STACK_TRACE_LIMIT in OriginalError) { proxyAccessor(WrappedError, OriginalError, STACK_TRACE_LIMIT); proxyAccessor(WrappedError, OriginalError, 'prepareStackTrace'); } copyConstructorProperties(WrappedError, OriginalError); if (!IS_PURE) try { // Safari 13- bug: WebAssembly errors does not have a proper `.name` if (OriginalErrorPrototype.name !== ERROR_NAME) { createNonEnumerableProperty(OriginalErrorPrototype, 'name', ERROR_NAME); } OriginalErrorPrototype.constructor = WrappedError; } catch (error) { /* empty */ } return WrappedError; }; /***/ }), /***/ "75a8": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_number_widget_vue_vue_type_style_index_0_id_638ae813_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("a67b"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_number_widget_vue_vue_type_style_index_0_id_638ae813_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_number_widget_vue_vue_type_style_index_0_id_638ae813_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "763b": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_slider_widget_vue_vue_type_style_index_0_id_c46858e4_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("8b95"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_slider_widget_vue_vue_type_style_index_0_id_c46858e4_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_slider_widget_vue_vue_type_style_index_0_id_c46858e4_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "77c1": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); module.exports = ( utils.isStandardBrowserEnv() ? // Standard browser envs have full support of the APIs needed to test // whether the request URL is of the same origin as current location. (function standardBrowserEnv() { var msie = /(msie|trident)/i.test(navigator.userAgent); var urlParsingNode = document.createElement('a'); var originURL; /** * Parse a URL to discover it's components * * @param {String} url The URL to be parsed * @returns {Object} */ function resolveURL(url) { var href = url; if (msie) { // IE needs attribute set twice to normalize properties urlParsingNode.setAttribute('href', href); href = urlParsingNode.href; } urlParsingNode.setAttribute('href', href); // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils return { href: urlParsingNode.href, protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '', host: urlParsingNode.host, search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, '') : '', hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '', hostname: urlParsingNode.hostname, port: urlParsingNode.port, pathname: (urlParsingNode.pathname.charAt(0) === '/') ? urlParsingNode.pathname : '/' + urlParsingNode.pathname }; } originURL = resolveURL(window.location.href); /** * Determine if a URL shares the same origin as the current location * * @param {String} requestURL The URL to test * @returns {boolean} True if URL shares the same origin, otherwise false */ return function isURLSameOrigin(requestURL) { var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL; return (parsed.protocol === originURL.protocol && parsed.host === originURL.host); }; })() : // Non standard browser envs (web workers, react-native) lack needed support. (function nonStandardBrowserEnv() { return function isURLSameOrigin() { return true; }; })() ); /***/ }), /***/ "7899": /***/ (function(module, exports, __webpack_require__) { var map = { "./button-widget.vue": "6e5c", "./cascader-widget.vue": "c077", "./checkbox-widget.vue": "6d04", "./color-widget.vue": "3ad3", "./date-range-widget.vue": "ba08", "./date-widget.vue": "da4e", "./divider-widget.vue": "de19", "./file-upload-widget.vue": "4a70", "./form-item-wrapper.vue": "9eeb", "./html-text-widget.vue": "090f", "./input-widget.vue": "d67b", "./number-widget.vue": "cf32", "./picture-upload-widget.vue": "7ede", "./radio-widget.vue": "b87d", "./rate-widget.vue": "2faa", "./rich-editor-widget.vue": "f4c1", "./select-widget.vue": "8a3e", "./slider-widget.vue": "826c", "./slot-widget.vue": "b8e9", "./static-content-wrapper.vue": "828b", "./static-text-widget.vue": "851c", "./switch-widget.vue": "ecaa", "./textarea-widget.vue": "84b5", "./time-range-widget.vue": "cab0", "./time-widget.vue": "20c0" }; function webpackContext(req) { var id = webpackContextResolve(req); return __webpack_require__(id); } function webpackContextResolve(req) { if(!__webpack_require__.o(map, req)) { var e = new Error("Cannot find module '" + req + "'"); e.code = 'MODULE_NOT_FOUND'; throw e; } return map[req]; } webpackContext.keys = function webpackContextKeys() { return Object.keys(map); }; webpackContext.resolve = webpackContextResolve; module.exports = webpackContext; webpackContext.id = "7899"; /***/ }), /***/ "7999": /***/ (function(module, exports, __webpack_require__) { var NATIVE_BIND = __webpack_require__("f805"); var FunctionPrototype = Function.prototype; var apply = FunctionPrototype.apply; var call = FunctionPrototype.call; // eslint-disable-next-line es/no-reflect -- safe module.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () { return call.apply(apply, arguments); }); /***/ }), /***/ "79fa": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ changeLocale; }); __webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ translate; }); // EXTERNAL MODULE: external {"commonjs":"vue","commonjs2":"vue","root":"Vue"} var external_commonjs_vue_commonjs2_vue_root_Vue_ = __webpack_require__("8bbf"); var external_commonjs_vue_commonjs2_vue_root_Vue_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_vue_commonjs2_vue_root_Vue_); // CONCATENATED MODULE: ./src/utils/smart-vue-i18n/utils.js // 值存在 function isDef(value) { return value !== undefined && value !== null; } // 对象映射 'a.b' {a: {b: 'val'}} function get(object, path) { const keys = path.split('.'); let result = object; keys.forEach(key => { result = isDef(result) && isDef(result[key]) ? result[key] : null; }); return result; } // 是否是对象 function isObj(x) { const type = typeof x; return x !== null && (type === 'object' || type === 'function'); } // 深拷贝 const { hasOwnProperty: utils_hasOwnProperty } = Object.prototype; function assignKey(to, from, key) { const val = from[key]; if (!isDef(val)) { return; } if (!utils_hasOwnProperty.call(to, key) || !isObj(val)) { to[key] = val; } else { to[key] = deepAssign(Object(to[key]), from[key]); } } function deepAssign(to, from) { Object.keys(from).forEach(key => { assignKey(to, from, key); }); return to; } // CONCATENATED MODULE: ./src/utils/smart-vue-i18n/index.js const install = (Vue, options) => { const proto = Vue.prototype; proto.$si18n = proto.$si18n || {}; // 初始化多语言 deepAssign(proto.$si18n, options); const _vm = new Vue({ data: options }); Object.defineProperty(Vue.prototype.$si18n, 'lang', { get() { return _vm.lang; } }); proto.$st = (path, ...args) => { let messages = _vm.messages[_vm.lang]; if (!proto.$si18n.messages) { if (false) {} return () => path; } //const message = get(messages, path) || get(messages, path) const message = get(messages, path); return typeof message === 'function' ? message(...args) : message !== null ? message : path; }; proto.$st2 = (path, path2) => { let messages = _vm.messages[_vm.lang]; const message = get(messages, path); return message !== null ? message : get(messages, path2); }; proto.$si18n.add = (messages = {}) => { deepAssign(proto.$si18n.messages, messages); }; proto.$si18n.setLang = lang => { _vm.lang = lang; }; Vue.mixin({ beforeCreate() { this.$options.i18n && this.$si18n.add(this.$options.i18n); } }); }; /* harmony default export */ var smart_vue_i18n = ({ install }); // EXTERNAL MODULE: ./node_modules/_element-ui@2.15.10@element-ui/lib/locale/lang/en.js var en = __webpack_require__("dcd7"); var en_default = /*#__PURE__*/__webpack_require__.n(en); // EXTERNAL MODULE: ./node_modules/_element-ui@2.15.10@element-ui/lib/locale/lang/zh-CN.js var zh_CN = __webpack_require__("a655"); var zh_CN_default = /*#__PURE__*/__webpack_require__.n(zh_CN); // EXTERNAL MODULE: ./node_modules/_element-ui@2.15.10@element-ui/lib/locale/index.js var locale = __webpack_require__("024b"); var locale_default = /*#__PURE__*/__webpack_require__.n(locale); // CONCATENATED MODULE: ./src/lang/en-US.js /* harmony default export */ var en_US = ({ application: { 'zh-CN': '简体中文', 'en-US': 'English', productTitle: 'Online Form Designer', github: 'GitHub', document: 'Docs', qqGroup: 'WeChat Group', deployment: 'Deployment', subscription: 'Subscription' }, designer: { componentLib: 'Components', formLib: 'Templates', containerTitle: 'Container', dragHandlerHint: 'drag container or field to layout center', dragAction: 'drag', basicFieldTitle: 'Basic Field', advancedFieldTitle: 'Advanced Field', customFieldTitle: 'Customized Field', noWidgetHint: 'Please select a widget from the left list, drag and drop to this container.', widgetLabel: { grid: 'Grid', table: 'Table', tab: 'Tab', section: 'Section', 'sub-form': 'SubForm', 'grid-col': 'GridCol', 'table-cell': 'TableCell', 'tab-pane': 'TabPane', 'data-table': 'DataTable', input: 'Input', textarea: 'Textarea', number: 'InputNumber', radio: 'Radio', checkbox: 'Checkbox', select: 'Select', time: 'Time', 'time-range': 'Time range', date: 'Date', 'date-range': 'Date range', switch: 'Switch', rate: 'Rate', color: 'ColorPicker', slider: 'Slider', 'static-text': 'Text', 'html-text': 'HTML', button: 'Button', divider: 'Divider', 'picture-upload': 'Picture', 'file-upload': 'File', 'rich-editor': 'Rich Editor', cascader: 'Cascader', slot: 'Slot', custom: 'Custom Component' }, hint: { selectParentWidget: 'Select parent of this widget', moveUpWidget: 'Move up this widget', moveDownWidget: 'Move down this widget', cloneWidget: 'Clone this widget', insertRow: 'Insert new row', insertColumn: 'Insert new column', remove: 'Remove this widget', cellSetting: 'Cell setting', dragHandler: 'Drag handler', copyField: 'Copy field widget', onlyFieldWidgetAcceptable: 'Only field widget can be dragged into sub-form', moveUpFirstChildHint: 'First child can not be move up', moveDownLastChildHint: 'Last child can not be move down', closePreview: 'Close', copyJson: 'Copy', saveFormJson: 'Save As File', copyVueCode: 'Copy Vue Code', copyHtmlCode: 'Copy HTML Code', copyJsonSuccess: 'Copy succeed', importJsonSuccess: 'Import succeed', copyJsonFail: 'Copy failed', copyVueCodeSuccess: 'Copy succeed', copyVueCodeFail: 'Copy failed', copyHtmlCodeSuccess: 'Copy succeed', copyHtmlCodeFail: 'Copy failed', saveVueCode: 'Save Vue File', saveHtmlCode: 'Save Html File', getFormData: 'Get Data', resetForm: 'Reset', disableForm: 'Disable', enableForm: 'Enable', exportFormData: 'Form Data', copyFormData: 'Copy', saveFormData: 'Save As File', copyVue2SFC: 'Copy Vue2', copyVue3SFC: 'Copy Vue3', copySFCFail: 'Copy failed', copySFCSuccess: 'Copy succeed', saveVue2SFC: 'Save As Vue2', saveVue3SFC: 'Save As Vue3', fileNameForSave: 'File name:', saveFileTitle: 'Save as File', fileNameInputPlaceholder: 'Enter the file name', sampleLoadedSuccess: 'Example loaded successfully', sampleLoadedFail: 'Sample load failed', loadFormTemplate: 'Load This', loadFormTemplateHint: 'Are you sure to load this template?', loadFormTemplateSuccess: 'Load form template success!', loadFormTemplateFailed: 'Load form template failed.', currentNodeCannotBeSelected: 'The current node cannot be selected.', noSelectedWidgetHint: 'No selected widget.', widgetSetting: 'Widget Prop', formSetting: 'Form Prop', prompt: 'Prompt', confirm: 'OK', cancel: 'Cancel', import: 'Import', importJsonHint: 'The code to be imported should have the following JSON format.', invalidOptionsData: 'Invalid data of options:', lastPaneCannotBeDeleted: 'The last pane cannot be deleted.', duplicateName: 'Duplicate name: ', nameRequired: 'Name required.', numberValidator: 'Number', letterValidator: 'Letter', letterAndNumberValidator: 'LetterAndNumber', mobilePhoneValidator: 'MobilePhone', emailValidator: 'Email', urlValidator: 'URL', noChineseValidator: 'Non-Chinese', chineseValidator: 'Chinese', rowspanNotConsistentForMergeEntireRow: 'Cells in this row don\'t have the same rowspan, operation failed.', colspanNotConsistentForMergeEntireColumn: 'Cells in this column don\'t have the same colspan, operation failed.', rowspanNotConsistentForDeleteEntireRow: 'Cells in this row don\'t have the same rowspan, operation failed.', colspanNotConsistentForDeleteEntireColumn: 'Cells in this column don\'t have the same colspan, operation failed.', lastColCannotBeDeleted: 'The last col cannot be deleted.', lastRowCannotBeDeleted: 'The last row cannot be deleted.' }, toolbar: { undoHint: 'Undo', redoHint: 'Redo', pcLayout: 'PC', padLayout: 'Pad', mobileLayout: 'H5', nodeTreeHint: 'Tree View Of Component Hierarchy', nodeTreeTitle: 'Tree View Of Component Hierarchy', clear: 'Clear', preview: 'Preview', importJson: 'Import', exportJson: 'Export', exportCode: 'Codes', generateCode: 'Generate Code', generateSFC: 'Generate SFC' }, setting: { basicSetting: 'Basic Setting', attributeSetting: 'Attribute Setting', commonSetting: 'Common Setting', advancedSetting: 'Advanced Setting', eventSetting: 'Event Setting', uniqueName: 'Unique Name', editNameHelp: 'Press enter to confirm the modification', label: 'Label', displayType: 'Type', defaultValue: 'Default Value', placeholder: 'Placeholder', startPlaceholder: 'Start Placeholder', endPlaceholder: 'End Placeholder', widgetColumnWidth: 'Width', widgetSize: 'Size', fontSize: 'Font Size', showStops: 'Show Stops', displayStyle: 'Display Style', inlineLayout: 'inline', blockLayout: 'block', buttonStyle: 'Show As Button', border: 'Show Border', labelWidth: 'Width Of Label', rows: 'Rows', labelHidden: 'Hide Label', required: 'Required', requiredHint: 'Failure Hint', validation: 'Validation', validationHelp: 'Regular expressions supported', validationHint: 'Validation Hint', readonly: 'Readonly', disabled: 'Disabled', hidden: 'Hidden', textContent: 'Text', htmlContent: 'HTML', clearable: 'Clearable', editable: 'Editable', format: 'Format', valueFormat: 'Value Format', showPassword: 'Show Reveal', filterable: 'Filterable', allowCreate: 'Allow Create', remote: 'Remote Query', automaticDropdown: 'Automatic Dropdown', multiple: 'Multiple', multipleLimit: 'Multiple Limit', checkStrictly: 'Any Level Selectable', contentPosition: 'Content Position', plain: 'Plain', round: 'Round', circle: 'Circle', icon: 'Icon', optionsSetting: 'Options Setting', addOption: 'Add Option', importOptions: 'Import Options', resetDefault: 'Reset Default', uploadSetting: 'Upload Setting', uploadURL: 'Upload URL', uploadTip: 'Tip Content', withCredentials: 'Send Cookie', multipleSelect: 'File Multi-select', showFileList: 'Show File List', limit: 'Max Upload Number', fileMaxSize: 'Max Size(MB)', fileTypes: 'Upload File Types', fileTypesHelp: 'Allows to add more file types', headers: 'Request Headers', cellWidth: 'Width', cellHeight: 'Height', gridColHeight: 'Height Of Col(px)', gutter: 'Gutter(px)', columnSetting: 'Cols Setting', colsOfGrid: 'Cols Of Grid:', colSpanTitle: 'Spans Of Col', colOffsetTitle: 'Offset Of Col', colPushTitle: 'Push Of Col', colPullTitle: 'Pull Of Col', addColumn: 'Add Column', responsive: 'Responsive', tabPaneSetting: 'Tab Panes', addTabPane: 'Add Tab Pane', paneActive: 'Active', customLabelIcon: 'Custom Label', labelIconClass: 'Label Icon Class', labelIconPosition: 'Label Icon Position', labelTooltip: 'Label Tooltip', minValue: 'Min Value', maxValue: 'Max Value', precision: 'Precision', step: 'Step', controlsPosition: 'Controls Position', minLength: 'Min Length', maxLength: 'Max Length', showWordLimit: 'Show Word Limit', prefixIcon: 'Prefix Icon', suffixIcon: 'Suffix Icon', inputButton: 'Input Button Setting', appendButton: 'Append Button', appendButtonDisabled: 'Button Disabled', appendButtonIcon: 'Append Button Icon', buttonIcon: 'Button Icon', switchWidth: 'Width of Switch(px)', activeText: 'Active Text', inactiveText: 'Inactive Text', activeColor: 'Active Color', inactiveColor: 'Inactive Color', maxStars: 'Stars Max Number', lowThreshold: 'Low Threshold', highThreshold: 'High Threshold', allowHalf: 'Allow Half', showText: 'Show Text', showScore: 'Show Score', range: 'Range', vertical: 'Vertical', showBlankRow: 'Show Blank Row', showRowNumber: 'Show Row Number', insertColumnToLeft: 'insert column to left', insertColumnToRight: 'insert column to right', insertRowAbove: 'insert row above', insertRowBelow: 'insert row below', mergeLeftColumn: 'merge left cell', mergeRightColumn: 'merge right cell', mergeEntireRow: 'merge entire row', mergeRowAbove: 'merge cell above', mergeRowBelow: 'merge cell below', mergeEntireColumn: 'merge entire column', undoMergeCol: 'undo merge column', undoMergeRow: 'undo merge row', deleteEntireCol: 'delete entire column', deleteEntireRow: 'delete entire row', widgetName: 'Unique Name', formSize: 'Size', labelPosition: 'Position Of Label', topPosition: 'Top', leftPosition: 'Left', labelAlign: 'Label Align', leftAlign: 'Left', centerAlign: 'Center', rightAlign: 'Right', formCss: 'Form CSS', addCss: 'Edit', customClass: 'Custom Class', globalFunctions: 'Global Functions', addEventHandler: 'Edit', editWidgetEventHandler: 'Edit Widget Event Handler', editFormEventHandler: 'Edit Form Event Handler', formSFCSetting: 'SFC Setting', formModelName: 'Model Name', formRefName: 'Ref Name', formRulesName: 'Rules Name', syntaxCheckWarning: 'Syntax error in the javascript codes, please check again!', //data-table tableWidth: 'Width(px/%)', tableHeight: 'Height(px/%)', showCheckBox: 'Show CheckBox', showIndex: 'Show Row Number', showPagination: 'Show Pagination', smallPagination: 'Small Pagination', tableColEdit: 'Edit Cols', tableDataEdit: 'Edit Data', stripe: 'Stripe', showSummary: 'Show Summary', rowSpacing: 'Row Spacing(px)', editAction: 'Edit...', columnName: 'Name', columnLabel: 'Label', columnWidth: 'Width(px/%)', visibleColumn: 'Visible', sortableColumn: 'Sortable', fixedColumn: 'Fixed', alignTypeOfColumn: 'Align', formatOfColumn: 'Format', actionColumn: 'Action', addTableColumn: 'Add New Column', deleteTableColumn: 'Delete This Column', OnlyOneColumnCannotBeDeleted: 'The last column cannot be deleted.', //data-source dsEnabled: 'Use Datasource', dsName: 'Datasource Name', labelKeyName: 'Label Key', valueKeyName: 'Value Key', childrenKeyName: 'Children Key', dataSource: 'Datasource', noDataSource: 'No datasource.', addDataSource: 'Add Datasource', dataSourceSetting: 'Datasource Setting', deleteDataSourceHint: 'Delete this datasource?', fieldValueRequired: 'Value can not be null', dsUniqueName: 'Unique Name', dsRequestURL: 'Request URL', dsRequestURLType: 'Request URL Type', dsURLStringType: 'String', dsURLVariableType: 'Expression', dsDescription: 'Description', dsRequestMethod: 'Request Method', dsRequestHeaders: 'Headers', addRequestHeader: 'Add Header', dsRequestParams: 'Params', addRequestParam: 'Add Param', dsRequestData: 'Data', addRequestData: 'Add Data', dsRequestValueStringType: 'String', dsRequestValueNumberType: 'Number', dsRequestValueBooleanType: 'Boolean', dsRequestValueVariableType: 'Variable', dsRequestNameInputPlaceholder: 'Name', dsRequestTypeInputPlaceholder: 'Type', dsRequestValueInputPlaceholder: 'Value', dsConfigHandlerTitle: '1. Config Handler', dsDataHandlerTitle: '2. Data Handler', dsErrorHandlerTitle: '3. Error Handler', testDataSource: 'Test Datasource', saveDataSource: 'Save Datasource', dsvTitle: 'Datasource Variable', dsRequestResult: 'Result Data', executeDataSource: 'Run Test', clearRequestResult: 'Clear Result', dsRequestNumberTypeError: 'Number value error', dsRequestBooleanTypeError: 'Boolean value error', dsValidationError: 'Datasource check failure.', dsDuplicatedNameError: 'Duplicate datasource name.' } } }); // CONCATENATED MODULE: ./src/lang/zh-CN.js /* harmony default export */ var lang_zh_CN = ({ application: { 'zh-CN': '简体中文', 'en-US': 'English', productTitle: '表单设计器', github: 'GitHub', document: '文档', qqGroup: '技术WX群', deployment: '私有部署', subscription: '订阅Pro' }, designer: { componentLib: '组件库', formLib: '表单模板', containerTitle: '容器', dragHandlerHint: '鼠标拖拽容器组件或字段组件并放置于表单中', dragAction: '拖动', basicFieldTitle: '基础字段', advancedFieldTitle: '高级字段', customFieldTitle: '自定义扩展字段', noWidgetHint: '请从左侧列表中选择一个组件, 然后用鼠标拖动组件放置于此处.', widgetLabel: { grid: '栅格', table: '表格', tab: '标签页', section: '区块', 'sub-form': '子表单', 'grid-col': '栅格列', 'table-cell': '单元格', 'tab-pane': '选项卡页', 'data-table': '数据表格', input: '单行输入', textarea: '多行输入', number: '计数器', radio: '单选项', checkbox: '多选项', select: '下拉选项', time: '时间', 'time-range': '时间范围', date: '日期', 'date-range': '日期范围', switch: '开关', rate: '评分', color: '颜色选择器', slider: '滑块', 'static-text': '静态文字', 'html-text': 'HTML', button: '按钮', divider: '分隔线', 'picture-upload': '图片', 'file-upload': '文件', 'rich-editor': '富文本', cascader: '级联选择', slot: '插槽', custom: 'Custom Component' }, hint: { selectParentWidget: '选中父组件', moveUpWidget: '上移组件', moveDownWidget: '下移组件', cloneWidget: '复制组件', insertRow: '插入新行', insertColumn: '插入新列', remove: '移除组件', cellSetting: '单元格操作', dragHandler: '拖拽手柄', copyField: '复制字段组件', onlyFieldWidgetAcceptable: '子表单只能接收字段组件', moveUpFirstChildHint: '已经移动到最上面', moveDownLastChildHint: '已经移动到最下面', closePreview: '关闭', copyJson: '复制JSON', saveFormJson: '保存为文件', copyVueCode: '复制Vue代码', copyHtmlCode: '复制HTML代码', copyJsonSuccess: '复制JSON成功', importJsonSuccess: '导入JSON成功', copyJsonFail: '复制JSON失败', copyVueCodeSuccess: '复制Vue代码成功', copyVueCodeFail: '复制Vue代码失败', copyHtmlCodeSuccess: '复制HTML代码成功', copyHtmlCodeFail: '复制HTML代码失败', saveVueCode: '保存Vue文件', saveHtmlCode: '保存Html文件', getFormData: '获取数据', resetForm: '重置表单', disableForm: '禁用编辑', enableForm: '恢复编辑', exportFormData: '表单数据', copyFormData: '复制JSON', saveFormData: '保存为文件', copyVue2SFC: '复制Vue2代码', copyVue3SFC: '复制Vue3代码', copySFCFail: '复制SFC代码失败', copySFCSuccess: '复制SFC代码成功', saveVue2SFC: '保存为Vue2组件', saveVue3SFC: '保存为Vue3组件', fileNameForSave: '文件名:', saveFileTitle: '保存为文件', fileNameInputPlaceholder: '请输入文件名', sampleLoadedSuccess: '表单示例加载成功', sampleLoadedFail: '表单示例加载失败', loadFormTemplate: '加载此模板', loadFormTemplateHint: '是否加载这个模板?加载后会覆盖设计器当前表单,你可以使用“撤销”功能恢复。', loadFormTemplateSuccess: '表单模板加载成功', loadFormTemplateFailed: '表单模板加载失败', currentNodeCannotBeSelected: '当前组件节点不可选择', noSelectedWidgetHint: '当前没有选中设置的组件', widgetSetting: '组件设置', formSetting: '表单设置', prompt: '提示', confirm: '确定', cancel: '取消', import: '导入', importJsonHint: '导入的JSON内容须符合下述格式,以保证顺利导入.', invalidOptionsData: '无效的选项数据:', lastPaneCannotBeDeleted: '仅剩一个选项卡页不可删除.', duplicateName: '组件名称已存在: ', nameRequired: '组件名称不可为空', numberValidator: '数字', letterValidator: '字母', letterAndNumberValidator: '数字字母', mobilePhoneValidator: '手机号码', emailValidator: '邮箱', urlValidator: '网址', noChineseValidator: '非中文字符', chineseValidator: '仅中文字符', rowspanNotConsistentForMergeEntireRow: '存在行高不一致的单元格, 无法合并整行.', colspanNotConsistentForMergeEntireColumn: '存在列宽不一致的单元格, 无法合并整列.', rowspanNotConsistentForDeleteEntireRow: '存在行高不一致的单元格, 不可删除整行.', colspanNotConsistentForDeleteEntireColumn: '存在列宽不一致的单元格, 不可删除整列.', lastColCannotBeDeleted: '最后一列不可删除.', lastRowCannotBeDeleted: '最后一行不可删除.' }, toolbar: { undoHint: '撤销', redoHint: '重做', pcLayout: 'PC', padLayout: 'Pad', mobileLayout: 'H5', nodeTreeHint: '组件层次结构树', nodeTreeTitle: '组件层次结构树', clear: '清空', preview: '预览', importJson: '导入JSON', exportJson: '导出JSON', exportCode: '导出代码', generateCode: '生成代码', generateSFC: '生成SFC' }, setting: { basicSetting: '基本属性', attributeSetting: '属性设置', commonSetting: '常见属性', advancedSetting: '高级属性', eventSetting: '事件属性', uniqueName: '唯一名称', editNameHelp: '修改名称后需按回车确认', label: '标签', displayType: '显示类型', defaultValue: '默认值', placeholder: '占位内容', startPlaceholder: '起始占位内容', endPlaceholder: '截止占位内容', widgetColumnWidth: '组件列宽', widgetSize: '组件大小', fontSize: '字体大小', showStops: '显示间断点', displayStyle: '显示样式', inlineLayout: '行内', blockLayout: '块', buttonStyle: '显示为按钮', border: '带有边框', labelWidth: '标签宽度', rows: '行数', labelHidden: '隐藏字段标签', required: '必填字段', validation: '字段校验', requiredHint: '必填校验提示', validationHelp: '支持输入正则表达式', validationHint: '校验失败提示', readonly: '只读', disabled: '禁用', hidden: '隐藏', textContent: '静态文字', htmlContent: 'HTML', clearable: '可清除', editable: '可输入', format: '显示格式', valueFormat: '绑定值格式', showPassword: '可显示密码', filterable: '可搜索选项', allowCreate: '允许创建选项', remote: '可远程搜索', automaticDropdown: '自动弹出选项', multiple: '选项可多选', multipleLimit: '多选数量限制', checkStrictly: '任意级节点可选', contentPosition: '文字位置', plain: '朴素按钮', round: '圆角按钮', circle: '圆形按钮', icon: '图标', optionsSetting: '选项设置', addOption: '增加选项', importOptions: '导入选项', resetDefault: '重设选中项', uploadSetting: '上传参数设置', uploadURL: '上传地址', uploadTip: '上传提示内容', withCredentials: '发送cookie凭证', multipleSelect: '文件可多选', showFileList: '显示文件列表', limit: '最大上传数量', fileMaxSize: '文件大小限制(MB)', fileTypes: '上传文件类型', fileTypesHelp: '支持添加其他文件类型', headers: '上传请求头', cellWidth: '宽度', cellHeight: '高度', gridColHeight: '栅格列统一高度(px)', gutter: '栅格间隔(px)', columnSetting: '栅格属性设置', colsOfGrid: '当前栅格列:', colSpanTitle: '栅格宽度', colOffsetTitle: '左侧间隔格数', colPushTitle: '右移栅格数', colPullTitle: '左移栅格数', addColumn: '增加栅格', responsive: '响应式布局', tabPaneSetting: '选项卡设置', addTabPane: '增加选项卡页', paneActive: '激活', customLabelIcon: '定制字段标签', labelIconClass: '标签Icon样式', labelIconPosition: '标签Icon位置', labelTooltip: '标签文字提示', minValue: '最小值', maxValue: '最大值', precision: '精度', step: '增减步长', controlsPosition: '控制按钮位置', minLength: '最小长度', maxLength: '最大长度', showWordLimit: '显示字数统计', prefixIcon: '头部Icon', suffixIcon: '尾部Icon', inputButton: '输入框按钮设置', appendButton: '添加后置按钮', appendButtonDisabled: '后置按钮禁用', appendButtonIcon: '后置按钮Icon', buttonIcon: '按钮Icon', switchWidth: '开关宽度(像素)', activeText: '开启时文字描述', inactiveText: '关闭时文字描述', activeColor: '开启时背景色', inactiveColor: '关闭时背景色', maxStars: '最大评分值', lowThreshold: '低分界限值', highThreshold: '高分界限值', allowHalf: '允许半选', showText: '显示辅助文字', showScore: '显示当前分数', range: '是否为范围选择', vertical: '是否竖向显示', showBlankRow: '默认显示新行', showRowNumber: '显示行号', insertColumnToLeft: '插入左侧列', insertColumnToRight: '插入右侧列', insertRowAbove: '插入上方行', insertRowBelow: '插入下方行', mergeLeftColumn: '合并左侧单元格', mergeRightColumn: '合并右侧单元格', mergeEntireRow: '合并整行', mergeRowAbove: '合并上方单元格', mergeRowBelow: '合并下方单元格', mergeEntireColumn: '合并整列', undoMergeCol: '撤销列合并', undoMergeRow: '撤销行合并', deleteEntireCol: '删除整列', deleteEntireRow: '删除整行', widgetName: '组件唯一名称', formSize: '全局组件大小', labelPosition: '字段标签位置', topPosition: '顶部', leftPosition: '左边', labelAlign: '标签对齐', leftAlign: '居左', centerAlign: '居中', rightAlign: '居右', formCss: '表单全局CSS', addCss: '编写CSS', customClass: '自定义CSS样式', globalFunctions: '表单全局函数', addEventHandler: '编写代码', editWidgetEventHandler: '组件事件处理', editFormEventHandler: '表单事件处理', formSFCSetting: '生成SFC设置', formModelName: '数据对象名称', formRefName: '引用名称', formRulesName: '验证规则名称', syntaxCheckWarning: 'JS代码存在语法错误,请仔细检查!', //data-table tableWidth: '宽度(px/%)', tableHeight: '高度(px/%)', showCheckBox: '是否显示复选框列', showIndex: '是否显示行号', showPagination: '是否显示分页', smallPagination: '小型分页', tableColEdit: '表格列编辑', tableDataEdit: '表格数据编辑', showSummary: '是否合计', stripe: '是否斑马线', rowSpacing: '行距(px)', editAction: '编辑...', columnName: '字段名称', columnLabel: '显示名称', columnWidth: '列宽(px/%)', visibleColumn: '是否显示', sortableColumn: '是否排序', fixedColumn: '是否固定', alignTypeOfColumn: '对齐方式', formatOfColumn: '格式化', actionColumn: '操作', addTableColumn: '增加列', deleteTableColumn: '删除列', OnlyOneColumnCannotBeDeleted: '表格只有一列时不可删除.', //data-source dsEnabled: '使用数据源', dsName: '指定数据源', labelKeyName: '选项标签名', valueKeyName: '选项值名', childrenKeyName: '子节点属性名称', dataSource: '数据源', noDataSource: '暂无数据源', addDataSource: '新增数据源', dataSourceSetting: '数据源设置', deleteDataSourceHint: '确认删除该数据源?', fieldValueRequired: '输入内容不可为空', dsUniqueName: '唯一名称', dsRequestURL: '请求地址', dsRequestURLType: '请求URL类型', dsURLStringType: '固定字符串', dsURLVariableType: '变量或表达式', dsDescription: '描述信息', dsRequestMethod: '请求方法', dsRequestHeaders: '请求头(headers)', addRequestHeader: '新增请求头', dsRequestParams: '参数(params)', addRequestParam: '新增请求参数', dsRequestData: '发送数据(data)', addRequestData: '新增发送数据', dsRequestValueStringType: '字符串类型', dsRequestValueNumberType: '数值类型', dsRequestValueBooleanType: '布尔类型', dsRequestValueVariableType: '变量或表达式', dsRequestNameInputPlaceholder: '名称', dsRequestTypeInputPlaceholder: '类型', dsRequestValueInputPlaceholder: '值', dsConfigHandlerTitle: '1. 请求配置', dsDataHandlerTitle: '2. 数据处理', dsErrorHandlerTitle: '3. 错误处理', testDataSource: '测试数据源', saveDataSource: '保存数据源', dsvTitle: 'DSV数据源变量', dsRequestResult: '返回数据', executeDataSource: '立即执行', clearRequestResult: '清空结果', dsRequestNumberTypeError: '数据类型值错误', dsRequestBooleanTypeError: '布尔类型值错误', dsValidationError: '数据源设置存在错误,请修改', dsDuplicatedNameError: '数据源名称重复,请修改!' } } }); // CONCATENATED MODULE: ./src/lang/en-US_render.js /* harmony default export */ var en_US_render = ({ render: { hint: { prompt: 'Prompt', confirm: 'OK', cancel: 'Cancel', selectPlaceholder: 'Pick some item', timePlaceholder: 'Select time', startTimePlaceholder: 'Start time', endTimePlaceholder: 'End time', datePlaceholder: 'Select date', startDatePlaceholder: 'Start date', endDatePlaceholder: 'End date', blankCellContent: '--', uploadError: 'Upload error: ', uploadExceed: 'The maximum number(${uploadLimit}) of file uploads has been exceeded.', unsupportedFileType: 'Unsupported format: ', fileSizeExceed: 'File size out of limit: ', refNotFound: 'Ref not found: ', fieldRequired: 'Input value should be not null.', invalidNumber: 'Invalid number format', selectFile: ' File...', downloadFile: 'Download', removeFile: 'Remove', validationFailed: 'Form validation failed', subFormAction: 'Action', subFormAddAction: 'Add', subFormAddActionHint: 'add new row', insertSubFormRow: 'insert new row', deleteSubFormRow: 'delete this row', nonSubFormType: 'The type of widget don\'t match sub-form' } } }); // CONCATENATED MODULE: ./src/lang/zh-CN_render.js /* harmony default export */ var zh_CN_render = ({ render: { hint: { prompt: '提示', confirm: '确定', cancel: '取消', selectPlaceholder: '请选择', timePlaceholder: '选择时间', startTimePlaceholder: '起始时间', endTimePlaceholder: '截止时间', datePlaceholder: '选择日期', startDatePlaceholder: '起始日期', endDatePlaceholder: '截止日期', blankCellContent: '--', uploadError: '上传错误: ', uploadExceed: '最大上传数量(${uploadLimit})已超出.', unsupportedFileType: '不支持格式: ', fileSizeExceed: '文件大小已超出: ', refNotFound: '组件未找到: ', fieldRequired: '字段值不可为空', invalidNumber: '数据格式错误', selectFile: ' 选择文件', downloadFile: '下载', removeFile: '移除', validationFailed: '表单数据校验失败', subFormAction: '操作', subFormAddAction: '新增', subFormAddActionHint: '新增行', insertSubFormRow: '插入行', deleteSubFormRow: '删除行', nonSubFormType: '组件类型不是子表单' } } }); // CONCATENATED MODULE: ./src/lang/en-US_extension.js /* harmony default export */ var en_US_extension = ({ extension: { widgetLabel: { card: 'Card', alert: 'Alert' }, setting: { cardFolded: 'Folded', cardShowFold: 'Show Fold', cardWidth: 'Width Of Card', cardShadow: 'Shadow', alertTitle: 'Title', alertType: 'Type', description: 'Description', closable: 'Closable', closeText: 'Text On Close Btn', center: 'Center', showIcon: 'Show Icon', effect: 'Effect' } } }); // CONCATENATED MODULE: ./src/lang/zh-CN_extension.js /* harmony default export */ var zh_CN_extension = ({ extension: { widgetLabel: { card: '卡片', alert: '提示' }, setting: { cardFolded: '是否收起', cardShowFold: '显示折叠按钮', cardWidth: '卡片宽度', cardShadow: '显示阴影', alertTitle: '标题', alertType: '类型', description: '辅助性文字', closable: '是否可关闭', closeText: '关闭按钮文字', center: '文字居中', showIcon: '显示图标', effect: '显示效果' } } }); // CONCATENATED MODULE: ./src/utils/i18n.js const langResources = { 'en-US': { something: { //... }, ...en_default.a, ...en_US, ...en_US_render, ...en_US_extension }, 'zh-CN': { something: { //... }, ...zh_CN_default.a, ...lang_zh_CN, ...zh_CN_render, ...zh_CN_extension } }; // ********************* 下述代码参考element-ui/lib/locale/format.js begin *****************// const RE_NARGS = /(%|)\{([0-9a-zA-Z_]+)\}/g; function hasOwn(obj, key) { return Object.prototype.hasOwnProperty.call(obj, key); } const elLocalFormatter = function template(string, args) { return string.replace(RE_NARGS, (match, prefix, i, index) => { let result; if (string[index - 1] === '{' && string[index + match.length] === '}') { return i; } else { result = hasOwn(args, i) ? args[i] : null; if (result === null || result === undefined) { return ''; } return result; } }); }; // ********************* 下述代码参考element-ui/lib/locale/format.js end ******************// external_commonjs_vue_commonjs2_vue_root_Vue_default.a.use(smart_vue_i18n, { lang: localStorage.getItem('v_form_locale') || 'zh-CN', messages: langResources }); locale_default.a.i18n((key, value) => { let result = external_commonjs_vue_commonjs2_vue_root_Vue_default.a.prototype.$st(key); return elLocalFormatter(result, value); }); const changeLocale = function (langName) { external_commonjs_vue_commonjs2_vue_root_Vue_default.a.prototype.$si18n.setLang(langName); localStorage.setItem('v_form_locale', langName); }; const translate = function (key) { return external_commonjs_vue_commonjs2_vue_root_Vue_default.a.prototype.$st(key); }; /* harmony default export */ var i18n = __webpack_exports__["b"] = ({ methods: { i18nt(key) { return this.$st(key); }, /* 如果key1不存在,则查找key2 */ i18n2t(key1, key2) { return this.$st2(key1, key2); } } }); /***/ }), /***/ "7cce": /***/ (function(module, exports, __webpack_require__) { "use strict"; /** * Determines whether the specified URL is absolute * * @param {string} url The URL to test * @returns {boolean} True if the specified URL is absolute, otherwise false */ module.exports = function isAbsoluteURL(url) { // A URL is considered absolute if it begins with "://" or "//" (protocol-relative URL). // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed // by any combination of letters, digits, plus, period, or hyphen. return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(url); }; /***/ }), /***/ "7cfe": /***/ (function(module, exports, __webpack_require__) { var uncurryThis = __webpack_require__("d027"); var toObject = __webpack_require__("baca"); var hasOwnProperty = uncurryThis({}.hasOwnProperty); // `HasOwnProperty` abstract operation // https://tc39.es/ecma262/#sec-hasownproperty // eslint-disable-next-line es/no-object-hasown -- safe module.exports = Object.hasOwn || function hasOwn(it, key) { return hasOwnProperty(toObject(it), key); }; /***/ }), /***/ "7d03": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); var transformData = __webpack_require__("eca8"); var isCancel = __webpack_require__("39ca"); var defaults = __webpack_require__("9632"); /** * Throws a `Cancel` if cancellation has been requested. */ function throwIfCancellationRequested(config) { if (config.cancelToken) { config.cancelToken.throwIfRequested(); } } /** * Dispatch a request to the server using the configured adapter. * * @param {object} config The config that is to be used for the request * @returns {Promise} The Promise to be fulfilled */ module.exports = function dispatchRequest(config) { throwIfCancellationRequested(config); // Ensure headers exist config.headers = config.headers || {}; // Transform request data config.data = transformData.call( config, config.data, config.headers, config.transformRequest ); // Flatten headers config.headers = utils.merge( config.headers.common || {}, config.headers[config.method] || {}, config.headers ); utils.forEach( ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'], function cleanHeaderConfig(method) { delete config.headers[method]; } ); var adapter = config.adapter || defaults.adapter; return adapter(config).then(function onAdapterResolution(response) { throwIfCancellationRequested(config); // Transform response data response.data = transformData.call( config, response.data, response.headers, config.transformResponse ); return response; }, function onAdapterRejection(reason) { if (!isCancel(reason)) { throwIfCancellationRequested(config); // Transform response data if (reason && reason.response) { reason.response.data = transformData.call( config, reason.response.data, reason.response.headers, config.transformResponse ); } } return Promise.reject(reason); }); }; /***/ }), /***/ "7d63": /***/ (function(module, exports) { // we can't use just `it == null` since of `document.all` special case // https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec module.exports = function (it) { return it === null || it === undefined; }; /***/ }), /***/ "7d92": /***/ (function(module, exports, __webpack_require__) { var NATIVE_BIND = __webpack_require__("f805"); var call = Function.prototype.call; module.exports = NATIVE_BIND ? call.bind(call) : function () { return call.apply(call, arguments); }; /***/ }), /***/ "7eab": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _form_item_wrapper__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("9eeb"); /* harmony import */ var _utils_emitter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("c6e3"); /* harmony import */ var _utils_i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("79fa"); /* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("ca00"); /* harmony import */ var _components_form_designer_form_widget_field_widget_fieldMixin__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("2d11"); let selectFileText = "'" + Object(_utils_i18n__WEBPACK_IMPORTED_MODULE_2__[/* translate */ "c"])('render.hint.selectFile') + "'"; /* harmony default export */ __webpack_exports__["a"] = ({ name: "file-upload-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [_utils_emitter__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], _components_form_designer_form_widget_field_widget_fieldMixin__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"], _utils_i18n__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: _form_item_wrapper__WEBPACK_IMPORTED_MODULE_0__["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [], uploadHeaders: {}, uploadData: { key: '' //七牛云上传文件名 //token: '', //七牛云上传token //policy: '', //又拍云上传policy //authorization: '', //又拍云上传签名 }, fileList: [], //上传文件列表 uploadBtnHidden: false, styleVariables: { '--select-file-action': selectFileText } }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: { handleFileExceed() { let uploadLimit = this.field.options.limit; /* 此行不能注释,下一行ES6模板字符串需要用到!! */ this.$message.warning(eval('`' + this.i18nt('render.hint.uploadExceed') + '`')); }, updateUploadFieldModelAndEmitDataChange(fileList) { let oldValue = Object(_utils_util__WEBPACK_IMPORTED_MODULE_3__[/* deepClone */ "a"])(this.fieldModel); this.fieldModel = Object(_utils_util__WEBPACK_IMPORTED_MODULE_3__[/* deepClone */ "a"])(fileList); this.syncUpdateFormModel(this.fieldModel); this.emitFieldDataChange(this.fieldModel, oldValue); }, beforeFileUpload(file) { let fileTypeCheckResult = false; let extFileName = file.name.substring(file.name.lastIndexOf('.') + 1); if (!!this.field.options && !!this.field.options.fileTypes) { let uploadFileTypes = this.field.options.fileTypes; if (uploadFileTypes.length > 0) { fileTypeCheckResult = uploadFileTypes.some(ft => { return extFileName.toLowerCase() === ft.toLowerCase(); }); } } if (!fileTypeCheckResult) { this.$message.error(this.i18nt('render.hint.unsupportedFileType') + extFileName); return false; } let fileSizeCheckResult = false; let uploadFileMaxSize = 5; //5MB if (!!this.field.options && !!this.field.options.fileMaxSize) { uploadFileMaxSize = this.field.options.fileMaxSize; } fileSizeCheckResult = file.size / 1024 / 1024 <= uploadFileMaxSize; if (!fileSizeCheckResult) { this.$message.error(this.i18nt('render.hint.fileSizeExceed') + uploadFileMaxSize + 'MB'); return false; } this.uploadData.key = file.name; return this.handleOnBeforeUpload(file); }, handleOnBeforeUpload(file) { if (!!this.field.options.onBeforeUpload) { let bfFunc = new Function('file', this.field.options.onBeforeUpload); let result = bfFunc.call(this, file); if (typeof result === 'boolean') { return result; } else { return true; } } return true; }, handleFileUpload(res, file, fileList) { if (file.status === 'success') { //this.fileList.push(file) /* 上传过程中,this.fileList是只读的,不能修改赋值!! */ this.updateUploadFieldModelAndEmitDataChange(fileList); this.fileList = Object(_utils_util__WEBPACK_IMPORTED_MODULE_3__[/* deepClone */ "a"])(fileList); this.uploadBtnHidden = fileList.length >= this.field.options.limit; if (!!this.field.options.onUploadSuccess) { let mountFunc = new Function('result', 'file', 'fileList', this.field.options.onUploadSuccess); mountFunc.call(this, res, file, fileList); } } }, handleFileRemove(file, fileList) { this.fileList = Object(_utils_util__WEBPACK_IMPORTED_MODULE_3__[/* deepClone */ "a"])(fileList); //this.fileList = fileList this.updateUploadFieldModelAndEmitDataChange(fileList); this.uploadBtnHidden = fileList.length >= this.field.options.limit; if (!!this.field.options.onFileRemove) { let customFn = new Function('file', 'fileList', this.field.options.onFileRemove); customFn.call(this, file, fileList); } }, removeUploadFile(fileName) { let foundIdx = -1; let foundFile = null; this.fileList.forEach((file, idx) => { if (file.name === fileName) { foundIdx = idx; foundFile = file; } }); if (foundIdx >= 0) { this.fileList.splice(foundIdx, 1); this.updateUploadFieldModelAndEmitDataChange(this.fileList); this.uploadBtnHidden = this.fileList.length >= this.field.options.limit; if (!!this.field.options.onFileRemove) { let customFn = new Function('file', 'fileList', this.field.options.onFileRemove); customFn.call(this, foundFile, this.fileList); } } }, handelUploadError(err, file, fileList) { if (!!this.field.options.onUploadError) { let customFn = new Function('error', 'file', 'fileList', this.field.options.onUploadError); customFn.call(this, err, file, fileList); } else { this.$message({ message: this.i18nt('render.hint.uploadError') + err, duration: 3000, type: 'error' }); } } } }); /***/ }), /***/ "7ede": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/picture-upload-widget.vue?vue&type=template&id=c1fcc786&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-upload', { ref: "fieldEditor", class: { 'hideUploadDiv': _vm.uploadBtnHidden }, attrs: { "disabled": _vm.field.options.disabled, "action": _vm.field.options.uploadURL, "headers": _vm.uploadHeaders, "data": _vm.uploadData, "with-credentials": _vm.field.options.withCredentials, "multiple": _vm.field.options.multipleSelect, "file-list": _vm.fileList, "show-file-list": _vm.field.options.showFileList, "list-type": "picture-card", "limit": _vm.field.options.limit, "on-exceed": _vm.handlePictureExceed, "before-upload": _vm.beforePictureUpload, "on-success": _vm.handlePictureUpload, "on-error": _vm.handelUploadError, "on-remove": _vm.handlePictureRemove } }, [!!_vm.field.options.uploadTip ? _c('div', { staticClass: "el-upload__tip", attrs: { "slot": "tip" }, slot: "tip" }, [_vm._v(_vm._s(_vm.field.options.uploadTip))]) : _vm._e(), _c('i', { staticClass: "el-icon-plus avatar-uploader-icon" })])], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/picture-upload-widget.vue?vue&type=template&id=c1fcc786&scoped=true& // EXTERNAL MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/picture-upload-widget.vue?vue&type=script&lang=js& var picture_upload_widgetvue_type_script_lang_js_ = __webpack_require__("367a"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/picture-upload-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_picture_upload_widgetvue_type_script_lang_js_ = (picture_upload_widgetvue_type_script_lang_js_["a" /* default */]); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/picture-upload-widget.vue?vue&type=style&index=0&id=c1fcc786&prod&lang=scss&scoped=true& var picture_upload_widgetvue_type_style_index_0_id_c1fcc786_prod_lang_scss_scoped_true_ = __webpack_require__("b1e7"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/picture-upload-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_picture_upload_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "c1fcc786", null ) /* harmony default export */ var picture_upload_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "802d": /***/ (function(module, exports, __webpack_require__) { var defineProperty = __webpack_require__("d3a8").f; module.exports = function (Target, Source, key) { key in Target || defineProperty(Target, key, { configurable: true, get: function () { return Source[key]; }, set: function (it) { Source[key] = it; } }); }; /***/ }), /***/ "80c6": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_static_text_widget_vue_vue_type_style_index_0_id_15a81133_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("6930"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_static_text_widget_vue_vue_type_style_index_0_id_15a81133_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_static_text_widget_vue_vue_type_style_index_0_id_15a81133_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "80e0": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_table_item_vue_vue_type_style_index_0_id_5a8d7072_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("6b1f"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_table_item_vue_vue_type_style_index_0_id_5a8d7072_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_table_item_vue_vue_type_style_index_0_id_5a8d7072_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "822e": /***/ (function(module, exports, __webpack_require__) { /* eslint-disable no-proto -- safe */ var uncurryThis = __webpack_require__("d027"); var anObject = __webpack_require__("0eaf"); var aPossiblePrototype = __webpack_require__("bd84"); // `Object.setPrototypeOf` method // https://tc39.es/ecma262/#sec-object.setprototypeof // Works with __proto__ only. Old v8 can't work with null proto objects. // eslint-disable-next-line es/no-object-setprototypeof -- safe module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () { var CORRECT_SETTER = false; var test = {}; var setter; try { // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe setter = uncurryThis(Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set); setter(test, []); CORRECT_SETTER = test instanceof Array; } catch (error) { /* empty */ } return function setPrototypeOf(O, proto) { anObject(O); aPossiblePrototype(proto); if (CORRECT_SETTER) setter(O, proto); else O.__proto__ = proto; return O; }; }() : undefined); /***/ }), /***/ "826c": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/slider-widget.vue?vue&type=template&id=c46858e4&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-slider', { ref: "fieldEditor", attrs: { "disabled": _vm.field.options.disabled, "show-stops": _vm.field.options.showStops, "min": _vm.field.options.min, "max": _vm.field.options.max, "step": _vm.field.options.step, "range": _vm.field.options.range, "vertical": _vm.field.options.vertical }, on: { "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/slider-widget.vue?vue&type=template&id=c46858e4&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/slider-widget.vue?vue&type=script&lang=js& /* harmony default export */ var slider_widgetvue_type_script_lang_js_ = ({ name: "slider-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/slider-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_slider_widgetvue_type_script_lang_js_ = (slider_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/slider-widget.vue?vue&type=style&index=0&id=c46858e4&prod&lang=scss&scoped=true& var slider_widgetvue_type_style_index_0_id_c46858e4_prod_lang_scss_scoped_true_ = __webpack_require__("763b"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/slider-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_slider_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "c46858e4", null ) /* harmony default export */ var slider_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "828b": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue?vue&type=template&id=c1251358&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('div', { staticClass: "field-wrapper", class: { 'design-time-bottom-margin': !!this.designer }, style: { display: _vm.displayStyle } }, [_c('div', { directives: [{ name: "show", rawName: "v-show", value: !_vm.field.options.hidden || _vm.designState === true, expression: "!field.options.hidden || (designState === true)" }], staticClass: "static-content-item", class: [_vm.selected ? 'selected' : '', _vm.customClass], style: { display: _vm.displayStyle }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.selectField(_vm.field); } } }, [_vm._t("default")], 2), !!this.designer ? [_vm.designer.selectedId === _vm.field.id ? _c('div', { staticClass: "field-action" }, [_c('i', { staticClass: "el-icon-back", attrs: { "title": _vm.i18nt('designer.hint.selectParentWidget') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.selectParentWidget(_vm.field); } } }), !!_vm.parentList && _vm.parentList.length > 1 ? _c('i', { staticClass: "el-icon-top", attrs: { "title": _vm.i18nt('designer.hint.moveUpWidget') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.moveUpWidget(_vm.field); } } }) : _vm._e(), !!_vm.parentList && _vm.parentList.length > 1 ? _c('i', { staticClass: "el-icon-bottom", attrs: { "title": _vm.i18nt('designer.hint.moveDownWidget') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.moveDownWidget(_vm.field); } } }) : _vm._e(), _c('i', { staticClass: "el-icon-delete", attrs: { "title": _vm.i18nt('designer.hint.remove') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.removeFieldWidget.apply(null, arguments); } } })]) : _vm._e(), _vm.designer.selectedId === _vm.field.id ? _c('div', { staticClass: "drag-handler background-opacity" }, [_c('i', { staticClass: "el-icon-rank", attrs: { "title": _vm.i18nt('designer.hint.dragHandler') } }), _c('i', [_vm._v(_vm._s(_vm.i18n2t(`designer.widgetLabel.${_vm.field.type}`, `extension.widgetLabel.${_vm.field.type}`)))]), _vm.field.options.hidden === true ? _c('i', { staticClass: "iconfont icon-hide" }) : _vm._e()]) : _vm._e()] : _vm._e()], 2); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue?vue&type=template&id=c1251358&scoped=true& // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue?vue&type=script&lang=js& /* harmony default export */ var static_content_wrappervue_type_script_lang_js_ = ({ name: "static-content-wrapper", mixins: [i18n["b" /* default */]], props: { field: Object, designer: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designState: { type: Boolean, default: false }, displayStyle: { type: String, default: 'block' }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, computed: { selected() { return !!this.designer && this.field.id === this.designer.selectedId; }, customClass() { return !!this.field.options.customClass ? this.field.options.customClass.join(' ') : ''; } }, methods: { selectField(field) { if (!!this.designer) { this.designer.setSelected(field); this.designer.emitEvent('field-selected', this.parentWidget); //发送选中组件的父组件对象 } }, selectParentWidget() { if (this.parentWidget) { this.designer.setSelected(this.parentWidget); } else { this.designer.clearSelected(); } }, moveUpWidget() { this.designer.moveUpWidget(this.parentList, this.indexOfParentList); this.designer.emitHistoryChange(); }, moveDownWidget() { this.designer.moveDownWidget(this.parentList, this.indexOfParentList); this.designer.emitHistoryChange(); }, removeFieldWidget() { if (!!this.parentList) { let nextSelected = null; if (this.parentList.length === 1) { if (!!this.parentWidget) { nextSelected = this.parentWidget; } } else if (this.parentList.length === 1 + this.indexOfParentList) { nextSelected = this.parentList[this.indexOfParentList - 1]; } else { nextSelected = this.parentList[this.indexOfParentList + 1]; } this.$nextTick(() => { this.parentList.splice(this.indexOfParentList, 1); //if (!!nextSelected) { this.designer.setSelected(nextSelected); //} this.designer.emitHistoryChange(); }); } } } }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_static_content_wrappervue_type_script_lang_js_ = (static_content_wrappervue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue?vue&type=style&index=0&id=c1251358&prod&lang=scss&scoped=true& var static_content_wrappervue_type_style_index_0_id_c1251358_prod_lang_scss_scoped_true_ = __webpack_require__("43d9"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_static_content_wrappervue_type_script_lang_js_, render, staticRenderFns, false, null, "c1251358", null ) /* harmony default export */ var static_content_wrapper = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "84b5": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/textarea-widget.vue?vue&type=template&id=29f8f632&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-input', { ref: "fieldEditor", attrs: { "type": "textarea", "disabled": _vm.field.options.disabled, "readonly": _vm.field.options.readonly, "size": _vm.field.options.size, "placeholder": _vm.field.options.placeholder, "rows": _vm.field.options.rows, "minlength": _vm.field.options.minLength, "maxlength": _vm.field.options.maxLength, "show-word-limit": _vm.field.options.showWordLimit }, on: { "focus": _vm.handleFocusCustomEvent, "blur": _vm.handleBlurCustomEvent, "input": _vm.handleInputCustomEvent, "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/textarea-widget.vue?vue&type=template&id=29f8f632&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/textarea-widget.vue?vue&type=script&lang=js& /* harmony default export */ var textarea_widgetvue_type_script_lang_js_ = ({ name: "textarea-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/textarea-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_textarea_widgetvue_type_script_lang_js_ = (textarea_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/textarea-widget.vue?vue&type=style&index=0&id=29f8f632&prod&lang=scss&scoped=true& var textarea_widgetvue_type_style_index_0_id_29f8f632_prod_lang_scss_scoped_true_ = __webpack_require__("c103"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/textarea-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_textarea_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "29f8f632", null ) /* harmony default export */ var textarea_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "84e5": /***/ (function(module, exports, __webpack_require__) { /*! * clipboard.js v2.0.11 * https://clipboardjs.com/ * * Licensed MIT © Zeno Rocha */ (function webpackUniversalModuleDefinition(root, factory) { if(true) module.exports = factory(); else {} })(this, function() { return /******/ (function() { // webpackBootstrap /******/ var __webpack_modules__ = ({ /***/ 686: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, { "default": function() { return /* binding */ clipboard; } }); // EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js var tiny_emitter = __webpack_require__(279); var tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter); // EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js var listen = __webpack_require__(370); var listen_default = /*#__PURE__*/__webpack_require__.n(listen); // EXTERNAL MODULE: ./node_modules/select/src/select.js var src_select = __webpack_require__(817); var select_default = /*#__PURE__*/__webpack_require__.n(src_select); ;// CONCATENATED MODULE: ./src/common/command.js /** * Executes a given operation type. * @param {String} type * @return {Boolean} */ function command(type) { try { return document.execCommand(type); } catch (err) { return false; } } ;// CONCATENATED MODULE: ./src/actions/cut.js /** * Cut action wrapper. * @param {String|HTMLElement} target * @return {String} */ var ClipboardActionCut = function ClipboardActionCut(target) { var selectedText = select_default()(target); command('cut'); return selectedText; }; /* harmony default export */ var actions_cut = (ClipboardActionCut); ;// CONCATENATED MODULE: ./src/common/create-fake-element.js /** * Creates a fake textarea element with a value. * @param {String} value * @return {HTMLElement} */ function createFakeElement(value) { var isRTL = document.documentElement.getAttribute('dir') === 'rtl'; var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS fakeElement.style.fontSize = '12pt'; // Reset box model fakeElement.style.border = '0'; fakeElement.style.padding = '0'; fakeElement.style.margin = '0'; // Move element out of screen horizontally fakeElement.style.position = 'absolute'; fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically var yPosition = window.pageYOffset || document.documentElement.scrollTop; fakeElement.style.top = "".concat(yPosition, "px"); fakeElement.setAttribute('readonly', ''); fakeElement.value = value; return fakeElement; } ;// CONCATENATED MODULE: ./src/actions/copy.js /** * Create fake copy action wrapper using a fake element. * @param {String} target * @param {Object} options * @return {String} */ var fakeCopyAction = function fakeCopyAction(value, options) { var fakeElement = createFakeElement(value); options.container.appendChild(fakeElement); var selectedText = select_default()(fakeElement); command('copy'); fakeElement.remove(); return selectedText; }; /** * Copy action wrapper. * @param {String|HTMLElement} target * @param {Object} options * @return {String} */ var ClipboardActionCopy = function ClipboardActionCopy(target) { var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { container: document.body }; var selectedText = ''; if (typeof target === 'string') { selectedText = fakeCopyAction(target, options); } else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) { // If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange selectedText = fakeCopyAction(target.value, options); } else { selectedText = select_default()(target); command('copy'); } return selectedText; }; /* harmony default export */ var actions_copy = (ClipboardActionCopy); ;// CONCATENATED MODULE: ./src/actions/default.js function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } /** * Inner function which performs selection from either `text` or `target` * properties and then executes copy or cut operations. * @param {Object} options */ var ClipboardActionDefault = function ClipboardActionDefault() { var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; // Defines base properties passed from constructor. var _options$action = options.action, action = _options$action === void 0 ? 'copy' : _options$action, container = options.container, target = options.target, text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'. if (action !== 'copy' && action !== 'cut') { throw new Error('Invalid "action" value, use either "copy" or "cut"'); } // Sets the `target` property using an element that will be have its content copied. if (target !== undefined) { if (target && _typeof(target) === 'object' && target.nodeType === 1) { if (action === 'copy' && target.hasAttribute('disabled')) { throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute'); } if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) { throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes'); } } else { throw new Error('Invalid "target" value, use a valid Element'); } } // Define selection strategy based on `text` property. if (text) { return actions_copy(text, { container: container }); } // Defines which selection strategy based on `target` property. if (target) { return action === 'cut' ? actions_cut(target) : actions_copy(target, { container: container }); } }; /* harmony default export */ var actions_default = (ClipboardActionDefault); ;// CONCATENATED MODULE: ./src/clipboard.js function clipboard_typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return clipboard_typeof(obj); } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; } function _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } /** * Helper function to retrieve attribute value. * @param {String} suffix * @param {Element} element */ function getAttributeValue(suffix, element) { var attribute = "data-clipboard-".concat(suffix); if (!element.hasAttribute(attribute)) { return; } return element.getAttribute(attribute); } /** * Base class which takes one or more elements, adds event listeners to them, * and instantiates a new `ClipboardAction` on each click. */ var Clipboard = /*#__PURE__*/function (_Emitter) { _inherits(Clipboard, _Emitter); var _super = _createSuper(Clipboard); /** * @param {String|HTMLElement|HTMLCollection|NodeList} trigger * @param {Object} options */ function Clipboard(trigger, options) { var _this; _classCallCheck(this, Clipboard); _this = _super.call(this); _this.resolveOptions(options); _this.listenClick(trigger); return _this; } /** * Defines if attributes would be resolved using internal setter functions * or custom functions that were passed in the constructor. * @param {Object} options */ _createClass(Clipboard, [{ key: "resolveOptions", value: function resolveOptions() { var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; this.action = typeof options.action === 'function' ? options.action : this.defaultAction; this.target = typeof options.target === 'function' ? options.target : this.defaultTarget; this.text = typeof options.text === 'function' ? options.text : this.defaultText; this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body; } /** * Adds a click event listener to the passed trigger. * @param {String|HTMLElement|HTMLCollection|NodeList} trigger */ }, { key: "listenClick", value: function listenClick(trigger) { var _this2 = this; this.listener = listen_default()(trigger, 'click', function (e) { return _this2.onClick(e); }); } /** * Defines a new `ClipboardAction` on each click event. * @param {Event} e */ }, { key: "onClick", value: function onClick(e) { var trigger = e.delegateTarget || e.currentTarget; var action = this.action(trigger) || 'copy'; var text = actions_default({ action: action, container: this.container, target: this.target(trigger), text: this.text(trigger) }); // Fires an event based on the copy operation result. this.emit(text ? 'success' : 'error', { action: action, text: text, trigger: trigger, clearSelection: function clearSelection() { if (trigger) { trigger.focus(); } window.getSelection().removeAllRanges(); } }); } /** * Default `action` lookup function. * @param {Element} trigger */ }, { key: "defaultAction", value: function defaultAction(trigger) { return getAttributeValue('action', trigger); } /** * Default `target` lookup function. * @param {Element} trigger */ }, { key: "defaultTarget", value: function defaultTarget(trigger) { var selector = getAttributeValue('target', trigger); if (selector) { return document.querySelector(selector); } } /** * Allow fire programmatically a copy action * @param {String|HTMLElement} target * @param {Object} options * @returns Text copied. */ }, { key: "defaultText", /** * Default `text` lookup function. * @param {Element} trigger */ value: function defaultText(trigger) { return getAttributeValue('text', trigger); } /** * Destroy lifecycle. */ }, { key: "destroy", value: function destroy() { this.listener.destroy(); } }], [{ key: "copy", value: function copy(target) { var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { container: document.body }; return actions_copy(target, options); } /** * Allow fire programmatically a cut action * @param {String|HTMLElement} target * @returns Text cutted. */ }, { key: "cut", value: function cut(target) { return actions_cut(target); } /** * Returns the support of the given action, or all actions if no action is * given. * @param {String} [action] */ }, { key: "isSupported", value: function isSupported() { var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut']; var actions = typeof action === 'string' ? [action] : action; var support = !!document.queryCommandSupported; actions.forEach(function (action) { support = support && !!document.queryCommandSupported(action); }); return support; } }]); return Clipboard; }((tiny_emitter_default())); /* harmony default export */ var clipboard = (Clipboard); /***/ }), /***/ 828: /***/ (function(module) { var DOCUMENT_NODE_TYPE = 9; /** * A polyfill for Element.matches() */ if (typeof Element !== 'undefined' && !Element.prototype.matches) { var proto = Element.prototype; proto.matches = proto.matchesSelector || proto.mozMatchesSelector || proto.msMatchesSelector || proto.oMatchesSelector || proto.webkitMatchesSelector; } /** * Finds the closest parent that matches a selector. * * @param {Element} element * @param {String} selector * @return {Function} */ function closest (element, selector) { while (element && element.nodeType !== DOCUMENT_NODE_TYPE) { if (typeof element.matches === 'function' && element.matches(selector)) { return element; } element = element.parentNode; } } module.exports = closest; /***/ }), /***/ 438: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var closest = __webpack_require__(828); /** * Delegates event to a selector. * * @param {Element} element * @param {String} selector * @param {String} type * @param {Function} callback * @param {Boolean} useCapture * @return {Object} */ function _delegate(element, selector, type, callback, useCapture) { var listenerFn = listener.apply(this, arguments); element.addEventListener(type, listenerFn, useCapture); return { destroy: function() { element.removeEventListener(type, listenerFn, useCapture); } } } /** * Delegates event to a selector. * * @param {Element|String|Array} [elements] * @param {String} selector * @param {String} type * @param {Function} callback * @param {Boolean} useCapture * @return {Object} */ function delegate(elements, selector, type, callback, useCapture) { // Handle the regular Element usage if (typeof elements.addEventListener === 'function') { return _delegate.apply(null, arguments); } // Handle Element-less usage, it defaults to global delegation if (typeof type === 'function') { // Use `document` as the first parameter, then apply arguments // This is a short way to .unshift `arguments` without running into deoptimizations return _delegate.bind(null, document).apply(null, arguments); } // Handle Selector-based usage if (typeof elements === 'string') { elements = document.querySelectorAll(elements); } // Handle Array-like based usage return Array.prototype.map.call(elements, function (element) { return _delegate(element, selector, type, callback, useCapture); }); } /** * Finds closest match and invokes callback. * * @param {Element} element * @param {String} selector * @param {String} type * @param {Function} callback * @return {Function} */ function listener(element, selector, type, callback) { return function(e) { e.delegateTarget = closest(e.target, selector); if (e.delegateTarget) { callback.call(element, e); } } } module.exports = delegate; /***/ }), /***/ 879: /***/ (function(__unused_webpack_module, exports) { /** * Check if argument is a HTML element. * * @param {Object} value * @return {Boolean} */ exports.node = function(value) { return value !== undefined && value instanceof HTMLElement && value.nodeType === 1; }; /** * Check if argument is a list of HTML elements. * * @param {Object} value * @return {Boolean} */ exports.nodeList = function(value) { var type = Object.prototype.toString.call(value); return value !== undefined && (type === '[object NodeList]' || type === '[object HTMLCollection]') && ('length' in value) && (value.length === 0 || exports.node(value[0])); }; /** * Check if argument is a string. * * @param {Object} value * @return {Boolean} */ exports.string = function(value) { return typeof value === 'string' || value instanceof String; }; /** * Check if argument is a function. * * @param {Object} value * @return {Boolean} */ exports.fn = function(value) { var type = Object.prototype.toString.call(value); return type === '[object Function]'; }; /***/ }), /***/ 370: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var is = __webpack_require__(879); var delegate = __webpack_require__(438); /** * Validates all params and calls the right * listener function based on its target type. * * @param {String|HTMLElement|HTMLCollection|NodeList} target * @param {String} type * @param {Function} callback * @return {Object} */ function listen(target, type, callback) { if (!target && !type && !callback) { throw new Error('Missing required arguments'); } if (!is.string(type)) { throw new TypeError('Second argument must be a String'); } if (!is.fn(callback)) { throw new TypeError('Third argument must be a Function'); } if (is.node(target)) { return listenNode(target, type, callback); } else if (is.nodeList(target)) { return listenNodeList(target, type, callback); } else if (is.string(target)) { return listenSelector(target, type, callback); } else { throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList'); } } /** * Adds an event listener to a HTML element * and returns a remove listener function. * * @param {HTMLElement} node * @param {String} type * @param {Function} callback * @return {Object} */ function listenNode(node, type, callback) { node.addEventListener(type, callback); return { destroy: function() { node.removeEventListener(type, callback); } } } /** * Add an event listener to a list of HTML elements * and returns a remove listener function. * * @param {NodeList|HTMLCollection} nodeList * @param {String} type * @param {Function} callback * @return {Object} */ function listenNodeList(nodeList, type, callback) { Array.prototype.forEach.call(nodeList, function(node) { node.addEventListener(type, callback); }); return { destroy: function() { Array.prototype.forEach.call(nodeList, function(node) { node.removeEventListener(type, callback); }); } } } /** * Add an event listener to a selector * and returns a remove listener function. * * @param {String} selector * @param {String} type * @param {Function} callback * @return {Object} */ function listenSelector(selector, type, callback) { return delegate(document.body, selector, type, callback); } module.exports = listen; /***/ }), /***/ 817: /***/ (function(module) { function select(element) { var selectedText; if (element.nodeName === 'SELECT') { element.focus(); selectedText = element.value; } else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') { var isReadOnly = element.hasAttribute('readonly'); if (!isReadOnly) { element.setAttribute('readonly', ''); } element.select(); element.setSelectionRange(0, element.value.length); if (!isReadOnly) { element.removeAttribute('readonly'); } selectedText = element.value; } else { if (element.hasAttribute('contenteditable')) { element.focus(); } var selection = window.getSelection(); var range = document.createRange(); range.selectNodeContents(element); selection.removeAllRanges(); selection.addRange(range); selectedText = selection.toString(); } return selectedText; } module.exports = select; /***/ }), /***/ 279: /***/ (function(module) { function E () { // Keep this empty so it's easier to inherit from // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3) } E.prototype = { on: function (name, callback, ctx) { var e = this.e || (this.e = {}); (e[name] || (e[name] = [])).push({ fn: callback, ctx: ctx }); return this; }, once: function (name, callback, ctx) { var self = this; function listener () { self.off(name, listener); callback.apply(ctx, arguments); }; listener._ = callback return this.on(name, listener, ctx); }, emit: function (name) { var data = [].slice.call(arguments, 1); var evtArr = ((this.e || (this.e = {}))[name] || []).slice(); var i = 0; var len = evtArr.length; for (i; i < len; i++) { evtArr[i].fn.apply(evtArr[i].ctx, data); } return this; }, off: function (name, callback) { var e = this.e || (this.e = {}); var evts = e[name]; var liveEvents = []; if (evts && callback) { for (var i = 0, len = evts.length; i < len; i++) { if (evts[i].fn !== callback && evts[i].fn._ !== callback) liveEvents.push(evts[i]); } } // Remove event from queue to prevent memory leak // Suggested by https://github.com/lazd // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910 (liveEvents.length) ? e[name] = liveEvents : delete e[name]; return this; } }; module.exports = E; module.exports.TinyEmitter = E; /***/ }) /******/ }); /************************************************************************/ /******/ // The module cache /******/ var __webpack_module_cache__ = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ // Check if module is in cache /******/ if(__webpack_module_cache__[moduleId]) { /******/ return __webpack_module_cache__[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = __webpack_module_cache__[moduleId] = { /******/ // no module.id needed /******/ // no module.loaded needed /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /************************************************************************/ /******/ /* webpack/runtime/compat get default export */ /******/ !function() { /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function() { return module['default']; } : /******/ function() { return module; }; /******/ __webpack_require__.d(getter, { a: getter }); /******/ return getter; /******/ }; /******/ }(); /******/ /******/ /* webpack/runtime/define property getters */ /******/ !function() { /******/ // define getter functions for harmony exports /******/ __webpack_require__.d = function(exports, definition) { /******/ for(var key in definition) { /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); /******/ } /******/ } /******/ }; /******/ }(); /******/ /******/ /* webpack/runtime/hasOwnProperty shorthand */ /******/ !function() { /******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } /******/ }(); /******/ /************************************************************************/ /******/ // module exports must be returned from runtime so entry inlining is disabled /******/ // startup /******/ // Load entry module and return exports /******/ return __webpack_require__(686); /******/ })() .default; }); /***/ }), /***/ "851c": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/static-text-widget.vue?vue&type=template&id=15a81133&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('static-content-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('div', { ref: "fieldEditor", style: !!_vm.field.options.fontSize ? `font-size: ${_vm.field.options.fontSize};` : '' }, [_vm._v(" " + _vm._s(_vm.field.options.textContent))])]); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/static-text-widget.vue?vue&type=template&id=15a81133&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue + 4 modules var static_content_wrapper = __webpack_require__("828b"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/static-text-widget.vue?vue&type=script&lang=js& /* harmony default export */ var static_text_widgetvue_type_script_lang_js_ = ({ name: "static-text-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { StaticContentWrapper: static_content_wrapper["default"] }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.registerToRefList(); this.initEventHandler(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/static-text-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_static_text_widgetvue_type_script_lang_js_ = (static_text_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/static-text-widget.vue?vue&type=style&index=0&id=15a81133&prod&lang=scss&scoped=true& var static_text_widgetvue_type_style_index_0_id_15a81133_prod_lang_scss_scoped_true_ = __webpack_require__("80c6"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/static-text-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_static_text_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "15a81133", null ) /* harmony default export */ var static_text_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "8637": /***/ (function(module, exports) { module.exports = function (exec) { try { return !!exec(); } catch (error) { return true; } }; /***/ }), /***/ "8921": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/table-item.vue?vue&type=template&id=5a8d7072&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('container-item-wrapper', { attrs: { "widget": _vm.widget } }, [_c('div', { directives: [{ name: "show", rawName: "v-show", value: !_vm.widget.options.hidden, expression: "!widget.options.hidden" }], key: _vm.widget.id, staticClass: "table-container" }, [_c('table', { ref: _vm.widget.id, staticClass: "table-layout", class: [_vm.customClass] }, [_c('tbody', _vm._l(_vm.widget.rows, function (row, rowIdx) { return _c('tr', { key: row.id }, [_vm._l(row.cols, function (colWidget, colIdx) { return [!colWidget.merged ? _c('table-cell-item', { key: colIdx, attrs: { "widget": colWidget, "parent-list": _vm.widget.cols, "row-index": rowIdx, "col-index": colIdx, "parent-widget": _vm.widget }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) }) : _vm._e()]; })], 2); }), 0)])])]); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-render/container-item/table-item.vue?vue&type=template&id=5a8d7072&scoped=true& // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-render/refMixin.js var refMixin = __webpack_require__("d67f"); // EXTERNAL MODULE: ./src/components/form-render/container-item/container-item-wrapper.vue + 4 modules var container_item_wrapper = __webpack_require__("90c2"); // EXTERNAL MODULE: ./src/components/form-render/container-item/table-cell-item.vue + 4 modules var table_cell_item = __webpack_require__("6a79"); // EXTERNAL MODULE: ./src/components/form-render/container-item/containerItemMixin.js var containerItemMixin = __webpack_require__("34f0"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/table-item.vue?vue&type=script&lang=js& /* harmony default export */ var table_itemvue_type_script_lang_js_ = ({ name: "table-item", componentName: 'ContainerItem', mixins: [emitter["a" /* default */], i18n["b" /* default */], refMixin["a" /* default */], containerItemMixin["a" /* default */]], components: { ContainerItemWrapper: container_item_wrapper["default"], TableCellItem: table_cell_item["default"] }, props: { widget: Object }, inject: ['refList', 'sfRefList', 'globalModel'], created() { this.initRefList(); }, mounted() {}, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-render/container-item/table-item.vue?vue&type=script&lang=js& /* harmony default export */ var container_item_table_itemvue_type_script_lang_js_ = (table_itemvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-render/container-item/table-item.vue?vue&type=style&index=0&id=5a8d7072&prod&lang=scss&scoped=true& var table_itemvue_type_style_index_0_id_5a8d7072_prod_lang_scss_scoped_true_ = __webpack_require__("80e0"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-render/container-item/table-item.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( container_item_table_itemvue_type_script_lang_js_, render, staticRenderFns, false, null, "5a8d7072", null ) /* harmony default export */ var table_item = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "8925": /***/ (function(module, exports) { var documentAll = typeof document == 'object' && document.all; // https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot var IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined; module.exports = { all: documentAll, IS_HTMLDDA: IS_HTMLDDA }; /***/ }), /***/ "89fb": /***/ (function(module, exports, __webpack_require__) { "use strict"; /** * Syntactic sugar for invoking a function and expanding an array for arguments. * * Common use case would be to use `Function.prototype.apply`. * * ```js * function f(x, y, z) {} * var args = [1, 2, 3]; * f.apply(null, args); * ``` * * With `spread` this example can be re-written. * * ```js * spread(function(x, y, z) {})([1, 2, 3]); * ``` * * @param {Function} callback * @returns {Function} */ module.exports = function spread(callback) { return function wrap(arr) { return callback.apply(null, arr); }; }; /***/ }), /***/ "8a3e": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/select-widget.vue?vue&type=template&id=0eb4f146&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-select', { ref: "fieldEditor", staticClass: "full-width-input", attrs: { "disabled": _vm.field.options.disabled, "size": _vm.field.options.size, "clearable": _vm.field.options.clearable, "filterable": _vm.field.options.filterable, "allow-create": _vm.field.options.allowCreate, "default-first-option": _vm.allowDefaultFirstOption, "automatic-dropdown": _vm.field.options.automaticDropdown, "multiple": _vm.field.options.multiple, "multiple-limit": _vm.field.options.multipleLimit, "placeholder": _vm.field.options.placeholder || _vm.i18nt('render.hint.selectPlaceholder'), "remote": _vm.field.options.remote, "remote-method": _vm.remoteQuery }, on: { "focus": _vm.handleFocusCustomEvent, "blur": _vm.handleBlurCustomEvent, "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } }, _vm._l(_vm.field.options.optionItems, function (item) { return _c('el-option', { key: item.value, attrs: { "label": item.label, "value": item.value, "disabled": item.disabled } }); }), 1)], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/select-widget.vue?vue&type=template&id=0eb4f146&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/select-widget.vue?vue&type=script&lang=js& /* harmony default export */ var select_widgetvue_type_script_lang_js_ = ({ name: "select-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: { allowDefaultFirstOption() { return !!this.field.options.filterable && !!this.field.options.allowCreate; } }, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initOptionItems(); this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/select-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_select_widgetvue_type_script_lang_js_ = (select_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/select-widget.vue?vue&type=style&index=0&id=0eb4f146&prod&lang=scss&scoped=true& var select_widgetvue_type_style_index_0_id_0eb4f146_prod_lang_scss_scoped_true_ = __webpack_require__("32ad"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/select-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_select_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "0eb4f146", null ) /* harmony default export */ var select_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "8b32": /***/ (function(module, exports, __webpack_require__) { var shared = __webpack_require__("074c"); var uid = __webpack_require__("c055"); var keys = shared('keys'); module.exports = function (key) { return keys[key] || (keys[key] = uid(key)); }; /***/ }), /***/ "8b95": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "8bbf": /***/ (function(module, exports) { module.exports = __WEBPACK_EXTERNAL_MODULE__8bbf__; /***/ }), /***/ "8c46": /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; function _broadcast(componentName, eventName, params) { this.$children.forEach(function (child) { var name = child.$options.componentName; if (name === componentName) { child.$emit.apply(child, [eventName].concat(params)); } else { _broadcast.apply(child, [componentName, eventName].concat([params])); } }); } exports.default = { methods: { dispatch: function dispatch(componentName, eventName, params) { var parent = this.$parent || this.$root; var name = parent.$options.componentName; while (parent && (!name || name !== componentName)) { parent = parent.$parent; if (parent) { name = parent.$options.componentName; } } if (parent) { parent.$emit.apply(parent, [eventName].concat(params)); } }, broadcast: function broadcast(componentName, eventName, params) { _broadcast.call(this, componentName, eventName, params); } } }; /***/ }), /***/ "8dba": /***/ (function(module, exports, __webpack_require__) { var call = __webpack_require__("7d92"); var isObject = __webpack_require__("02ca"); var isSymbol = __webpack_require__("a8c5"); var getMethod = __webpack_require__("ea43"); var ordinaryToPrimitive = __webpack_require__("1a96"); var wellKnownSymbol = __webpack_require__("f500"); var $TypeError = TypeError; var TO_PRIMITIVE = wellKnownSymbol('toPrimitive'); // `ToPrimitive` abstract operation // https://tc39.es/ecma262/#sec-toprimitive module.exports = function (input, pref) { if (!isObject(input) || isSymbol(input)) return input; var exoticToPrim = getMethod(input, TO_PRIMITIVE); var result; if (exoticToPrim) { if (pref === undefined) pref = 'default'; result = call(exoticToPrim, input, pref); if (!isObject(result) || isSymbol(result)) return result; throw $TypeError("Can't convert object to primitive value"); } if (pref === undefined) pref = 'number'; return ordinaryToPrimitive(input, pref); }; /***/ }), /***/ "90c2": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/container-item-wrapper.vue?vue&type=template&id=4277aed9&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('div', { staticClass: "container-wrapper", class: [_vm.customClass] }, [_vm._t("default")], 2); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-render/container-item/container-item-wrapper.vue?vue&type=template&id=4277aed9&scoped=true& // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/container-item-wrapper.vue?vue&type=script&lang=js& /* harmony default export */ var container_item_wrappervue_type_script_lang_js_ = ({ name: "container-item-wrapper", props: { widget: { type: Object, required: true } }, computed: { customClass() { return !!this.widget.options.customClass ? this.widget.options.customClass.join(' ') : ''; } } }); // CONCATENATED MODULE: ./src/components/form-render/container-item/container-item-wrapper.vue?vue&type=script&lang=js& /* harmony default export */ var container_item_container_item_wrappervue_type_script_lang_js_ = (container_item_wrappervue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-render/container-item/container-item-wrapper.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( container_item_container_item_wrappervue_type_script_lang_js_, render, staticRenderFns, false, null, "4277aed9", null ) /* harmony default export */ var container_item_wrapper = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "9580": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "9632": /***/ (function(module, exports, __webpack_require__) { "use strict"; /* WEBPACK VAR INJECTION */(function(process) { var utils = __webpack_require__("aa81"); var normalizeHeaderName = __webpack_require__("9c32"); var enhanceError = __webpack_require__("69c5"); var DEFAULT_CONTENT_TYPE = { 'Content-Type': 'application/x-www-form-urlencoded' }; function setContentTypeIfUnset(headers, value) { if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) { headers['Content-Type'] = value; } } function getDefaultAdapter() { var adapter; if (typeof XMLHttpRequest !== 'undefined') { // For browsers use XHR adapter adapter = __webpack_require__("dfa7"); } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') { // For node use HTTP adapter adapter = __webpack_require__("dfa7"); } return adapter; } function stringifySafely(rawValue, parser, encoder) { if (utils.isString(rawValue)) { try { (parser || JSON.parse)(rawValue); return utils.trim(rawValue); } catch (e) { if (e.name !== 'SyntaxError') { throw e; } } } return (encoder || JSON.stringify)(rawValue); } var defaults = { transitional: { silentJSONParsing: true, forcedJSONParsing: true, clarifyTimeoutError: false }, adapter: getDefaultAdapter(), transformRequest: [function transformRequest(data, headers) { normalizeHeaderName(headers, 'Accept'); normalizeHeaderName(headers, 'Content-Type'); if (utils.isFormData(data) || utils.isArrayBuffer(data) || utils.isBuffer(data) || utils.isStream(data) || utils.isFile(data) || utils.isBlob(data) ) { return data; } if (utils.isArrayBufferView(data)) { return data.buffer; } if (utils.isURLSearchParams(data)) { setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8'); return data.toString(); } if (utils.isObject(data) || (headers && headers['Content-Type'] === 'application/json')) { setContentTypeIfUnset(headers, 'application/json'); return stringifySafely(data); } return data; }], transformResponse: [function transformResponse(data) { var transitional = this.transitional; var silentJSONParsing = transitional && transitional.silentJSONParsing; var forcedJSONParsing = transitional && transitional.forcedJSONParsing; var strictJSONParsing = !silentJSONParsing && this.responseType === 'json'; if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) { try { return JSON.parse(data); } catch (e) { if (strictJSONParsing) { if (e.name === 'SyntaxError') { throw enhanceError(e, this, 'E_JSON_PARSE'); } throw e; } } } return data; }], /** * A timeout in milliseconds to abort a request. If set to 0 (default) a * timeout is not created. */ timeout: 0, xsrfCookieName: 'XSRF-TOKEN', xsrfHeaderName: 'X-XSRF-TOKEN', maxContentLength: -1, maxBodyLength: -1, validateStatus: function validateStatus(status) { return status >= 200 && status < 300; } }; defaults.headers = { common: { 'Accept': 'application/json, text/plain, */*' } }; utils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) { defaults.headers[method] = {}; }); utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) { defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE); }); module.exports = defaults; /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("eef6"))) /***/ }), /***/ "977d": /***/ (function(module, exports, __webpack_require__) { /* eslint-disable es/no-symbol -- required for testing */ var V8_VERSION = __webpack_require__("14db"); var fails = __webpack_require__("8637"); // eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing module.exports = !!Object.getOwnPropertySymbols && !fails(function () { var symbol = Symbol(); // Chrome 38 Symbol has incorrect toString conversion // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances return !String(symbol) || !(Object(symbol) instanceof Symbol) || // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances !Symbol.sham && V8_VERSION && V8_VERSION < 41; }); /***/ }), /***/ "97c1": /***/ (function(module, exports, __webpack_require__) { var fails = __webpack_require__("8637"); var isCallable = __webpack_require__("a9ce"); var hasOwn = __webpack_require__("7cfe"); var DESCRIPTORS = __webpack_require__("a549"); var CONFIGURABLE_FUNCTION_NAME = __webpack_require__("c176").CONFIGURABLE; var inspectSource = __webpack_require__("ca1b"); var InternalStateModule = __webpack_require__("aad4"); var enforceInternalState = InternalStateModule.enforce; var getInternalState = InternalStateModule.get; // eslint-disable-next-line es/no-object-defineproperty -- safe var defineProperty = Object.defineProperty; var CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () { return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8; }); var TEMPLATE = String(String).split('String'); var makeBuiltIn = module.exports = function (value, name, options) { if (String(name).slice(0, 7) === 'Symbol(') { name = '[' + String(name).replace(/^Symbol\(([^)]*)\)/, '$1') + ']'; } if (options && options.getter) name = 'get ' + name; if (options && options.setter) name = 'set ' + name; if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) { if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true }); else value.name = name; } if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) { defineProperty(value, 'length', { value: options.arity }); } try { if (options && hasOwn(options, 'constructor') && options.constructor) { if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false }); // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable } else if (value.prototype) value.prototype = undefined; } catch (error) { /* empty */ } var state = enforceInternalState(value); if (!hasOwn(state, 'source')) { state.source = TEMPLATE.join(typeof name == 'string' ? name : ''); } return value; }; // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative // eslint-disable-next-line no-extend-native -- required Function.prototype.toString = makeBuiltIn(function toString() { return isCallable(this) && getInternalState(this).source || inspectSource(this); }, 'toString'); /***/ }), /***/ "99e6": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_data_table_item_vue_vue_type_style_index_0_id_13d99222_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("e588"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_data_table_item_vue_vue_type_style_index_0_id_13d99222_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_data_table_item_vue_vue_type_style_index_0_id_13d99222_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "9a68": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "9c32": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); module.exports = function normalizeHeaderName(headers, normalizedName) { utils.forEach(headers, function processHeader(value, name) { if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) { headers[normalizedName] = value; delete headers[name]; } }); }; /***/ }), /***/ "9cbe": /***/ (function(module, exports, __webpack_require__) { "use strict"; var createError = __webpack_require__("cedb"); /** * Resolve or reject a Promise based on response status. * * @param {Function} resolve A function that resolves the promise. * @param {Function} reject A function that rejects the promise. * @param {object} response The response. */ module.exports = function settle(resolve, reject, response) { var validateStatus = response.config.validateStatus; if (!response.status || !validateStatus || validateStatus(response.status)) { resolve(response); } else { reject(createError( 'Request failed with status code ' + response.status, response.config, null, response.request, response )); } }; /***/ }), /***/ "9d4c": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "9de7": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_form_item_wrapper_vue_vue_type_style_index_0_id_2e7cceb0_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("221b"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_form_item_wrapper_vue_vue_type_style_index_0_id_2e7cceb0_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_form_item_wrapper_vue_vue_type_style_index_0_id_2e7cceb0_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "9eeb": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue?vue&type=template&id=2e7cceb0&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('div', { staticClass: "field-wrapper", class: { 'design-time-bottom-margin': !!this.designer } }, [!!_vm.field.formItemFlag ? _c('el-form-item', { directives: [{ name: "show", rawName: "v-show", value: !_vm.field.options.hidden || _vm.designState === true, expression: "!field.options.hidden || (designState === true)" }], class: [_vm.selected ? 'selected' : '', _vm.labelAlign, _vm.customClass, _vm.field.options.required ? 'required' : ''], attrs: { "label": _vm.label, "label-width": _vm.labelWidth + 'px', "title": _vm.field.options.labelTooltip, "rules": _vm.rules, "prop": _vm.getPropName() }, nativeOn: { "click": function ($event) { $event.stopPropagation(); return _vm.selectField(_vm.field); } } }, [!!_vm.field.options.labelIconClass ? _c('span', { staticClass: "custom-label", attrs: { "slot": "label" }, slot: "label" }, [_vm.field.options.labelIconPosition === 'front' ? [!!_vm.field.options.labelTooltip ? [_c('el-tooltip', { attrs: { "content": _vm.field.options.labelTooltip, "effect": "light" } }, [_c('i', { class: _vm.field.options.labelIconClass })]), _vm._v(_vm._s(_vm.label))] : [_c('i', { class: _vm.field.options.labelIconClass }), _vm._v(_vm._s(_vm.label))]] : _vm.field.options.labelIconPosition === 'rear' ? [!!_vm.field.options.labelTooltip ? [_vm._v(" " + _vm._s(_vm.label)), _c('el-tooltip', { attrs: { "content": _vm.field.options.labelTooltip, "effect": "light" } }, [_c('i', { class: _vm.field.options.labelIconClass })])] : [_vm._v(" " + _vm._s(_vm.label)), _c('i', { class: _vm.field.options.labelIconClass })]] : _vm._e()], 2) : _vm._e(), _vm._t("default")], 2) : _vm._e(), !!this.designer ? [_vm.designer.selectedId === _vm.field.id ? _c('div', { staticClass: "field-action" }, [_c('i', { staticClass: "el-icon-back", attrs: { "title": _vm.i18nt('designer.hint.selectParentWidget') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.selectParentWidget(_vm.field); } } }), !!_vm.parentList && _vm.parentList.length > 1 ? _c('i', { staticClass: "el-icon-top", attrs: { "title": _vm.i18nt('designer.hint.moveUpWidget') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.moveUpWidget(_vm.field); } } }) : _vm._e(), !!_vm.parentList && _vm.parentList.length > 1 ? _c('i', { staticClass: "el-icon-bottom", attrs: { "title": _vm.i18nt('designer.hint.moveDownWidget') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.moveDownWidget(_vm.field); } } }) : _vm._e(), _c('i', { staticClass: "el-icon-delete", attrs: { "title": _vm.i18nt('designer.hint.remove') }, on: { "click": function ($event) { $event.stopPropagation(); return _vm.removeFieldWidget.apply(null, arguments); } } })]) : _vm._e(), _vm.designer.selectedId === _vm.field.id ? _c('div', { staticClass: "drag-handler background-opacity" }, [_c('i', { staticClass: "el-icon-rank", attrs: { "title": _vm.i18nt('designer.hint.dragHandler') } }), _c('i', [_vm._v(_vm._s(_vm.i18n2t(`designer.widgetLabel.${_vm.field.type}`, `extension.widgetLabel.${_vm.field.type}`)))]), _vm.field.options.hidden === true ? _c('i', { staticClass: "iconfont icon-hide" }) : _vm._e()]) : _vm._e()] : _vm._e()], 2); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue?vue&type=template&id=2e7cceb0&scoped=true& // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue?vue&type=script&lang=js& /* harmony default export */ var form_item_wrappervue_type_script_lang_js_ = ({ name: "form-item-wrapper", mixins: [i18n["b" /* default */]], props: { field: Object, designer: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' }, rules: Array }, inject: ['getFormConfig'], computed: { formConfig() { return this.getFormConfig(); }, selected() { return !!this.designer && this.field.id === this.designer.selectedId; }, label() { if (!!this.field.options.labelHidden) { return ''; } return this.field.options.label; }, labelWidth() { if (!!this.field.options.labelHidden) { return !!this.designState ? 5 : 0; //设计期间标签最小宽度5像素,以便于鼠标点击可选中组件!! } if (!!this.field.options.labelWidth) { return this.field.options.labelWidth; } if (!!this.designer) { return this.designer.formConfig.labelWidth; } else { return this.formConfig.labelWidth; } }, labelAlign() { if (!!this.field.options.labelAlign) { return this.field.options.labelAlign; } if (!!this.designer) { return this.designer.formConfig.labelAlign || 'label-left-align'; } else { return this.formConfig.labelAlign || 'label-left-align'; } }, customClass() { return !!this.field.options.customClass ? this.field.options.customClass.join(' ') : ''; }, subFormName() { return !!this.parentWidget ? this.parentWidget.options.name : ''; }, subFormItemFlag() { return !!this.parentWidget ? this.parentWidget.type === 'sub-form' : false; } }, created() { // }, methods: { selectField(field) { if (!!this.designer) { this.designer.setSelected(field); this.designer.emitEvent('field-selected', this.parentWidget); //发送选中组件的父组件对象 } }, selectParentWidget() { if (this.parentWidget) { this.designer.setSelected(this.parentWidget); } else { this.designer.clearSelected(); } }, moveUpWidget() { this.designer.moveUpWidget(this.parentList, this.indexOfParentList); this.designer.emitHistoryChange(); }, moveDownWidget() { this.designer.moveDownWidget(this.parentList, this.indexOfParentList); this.designer.emitHistoryChange(); }, removeFieldWidget() { if (!!this.parentList) { let nextSelected = null; if (this.parentList.length === 1) { if (!!this.parentWidget) { nextSelected = this.parentWidget; } } else if (this.parentList.length === 1 + this.indexOfParentList) { nextSelected = this.parentList[this.indexOfParentList - 1]; } else { nextSelected = this.parentList[this.indexOfParentList + 1]; } this.$nextTick(() => { this.parentList.splice(this.indexOfParentList, 1); //if (!!nextSelected) { this.designer.setSelected(nextSelected); //} this.designer.emitHistoryChange(); }); } }, getPropName() { if (this.subFormItemFlag && !this.designState) { return this.subFormName + "." + this.subFormRowIndex + "." + this.field.options.name + ""; } else { return this.field.options.name; } } } }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_form_item_wrappervue_type_script_lang_js_ = (form_item_wrappervue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue?vue&type=style&index=0&id=2e7cceb0&prod&lang=scss&scoped=true& var form_item_wrappervue_type_style_index_0_id_2e7cceb0_prod_lang_scss_scoped_true_ = __webpack_require__("9de7"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_form_item_wrappervue_type_script_lang_js_, render, staticRenderFns, false, null, "2e7cceb0", null ) /* harmony default export */ var form_item_wrapper = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "9f48": /***/ (function(module, exports, __webpack_require__) { // toObject with fallback for non-array-like ES3 strings var IndexedObject = __webpack_require__("5f36"); var requireObjectCoercible = __webpack_require__("edba"); module.exports = function (it) { return IndexedObject(requireObjectCoercible(it)); }; /***/ }), /***/ "a00a": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return getRegExp; }); /* harmony import */ var core_js_modules_es_error_cause_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("e157"); /* harmony import */ var core_js_modules_es_error_cause_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_error_cause_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("ca00"); const getRegExp = function (validatorName) { const commonRegExp = { number: '/^\\d+(\\.\\d+)?$/', letter: '/^[A-Za-z]+$/', letterAndNumber: '/^[A-Za-z0-9]+$/', mobilePhone: '/^[1][3-9][0-9]{9}$/', letterStartNumberIncluded: '/^[A-Za-z]+[A-Za-z\\d]*$/', noChinese: '/^[^\u4e00-\u9fa5]+$/', chinese: '/^[\u4e00-\u9fa5]+$/', email: '/^([-_A-Za-z0-9.]+)@([_A-Za-z0-9]+\\.)+[A-Za-z0-9]{2,3}$/', url: '/^([hH][tT]{2}[pP]:\\/\\/|[hH][tT]{2}[pP][sS]:\\/\\/)(([A-Za-z0-9-~]+)\\.)+([A-Za-z0-9-~\\/])+$/' }; return commonRegExp[validatorName]; }; const validateFn = function (validatorName, rule, value, callback, defaultErrorMsg) { //空值不校验 if (Object(_util__WEBPACK_IMPORTED_MODULE_1__[/* isNull */ "h"])(value) || value.length <= 0) { callback(); return; } const reg = eval(getRegExp(validatorName)); if (!reg.test(value)) { let errTxt = rule.errorMsg || defaultErrorMsg; callback(new Error(errTxt)); } else { callback(); } }; const FormValidators = { /* 数字 */ number(rule, value, callback) { validateFn('number', rule, value, callback, '[' + rule.label + ']包含非数字字符'); }, /* 字母 */ letter(rule, value, callback) { validateFn('letter', rule, value, callback, '[' + rule.label + ']包含非字母字符'); }, /* 字母和数字 */ letterAndNumber(rule, value, callback) { validateFn('letterAndNumber', rule, value, callback, '[' + rule.label + ']只能输入字母或数字'); }, /* 手机号码 */ mobilePhone(rule, value, callback) { validateFn('mobilePhone', rule, value, callback, '[' + rule.label + ']手机号码格式有误'); }, /* 禁止空白字符开头 */ noBlankStart(rule, value, callback) { //暂未实现 }, /* 禁止空白字符结尾 */ noBlankEnd(rule, value, callback) { //暂未实现 }, /* 字母开头,仅可包含数字 */ letterStartNumberIncluded(rule, value, callback) { validateFn('letterStartNumberIncluded', rule, value, callback, '[' + rule.label + ']必须以字母开头,可包含数字'); }, /* 禁止中文输入 */ noChinese(rule, value, callback) { validateFn('noChinese', rule, value, callback, '[' + rule.label + ']不可输入中文字符'); }, /* 必须中文输入 */ chinese(rule, value, callback) { validateFn('chinese', rule, value, callback, '[' + rule.label + ']只能输入中文字符'); }, /* 电子邮箱 */ email(rule, value, callback) { validateFn('email', rule, value, callback, '[' + rule.label + ']邮箱格式有误'); }, /* URL网址 */ url(rule, value, callback) { validateFn('url', rule, value, callback, '[' + rule.label + ']URL格式有误'); }, /*测试 test(rule, value, callback, errorMsg) { //空值不校验 if (isNull(value) || (value.length <= 0)) { callback() return } if (value < 100) { callback(new Error('[' + rule.label + ']不能小于100')) } else { callback() } }, */ regExp(rule, value, callback) { //空值不校验 if (Object(_util__WEBPACK_IMPORTED_MODULE_1__[/* isNull */ "h"])(value) || value.length <= 0) { callback(); return; } const pattern = eval(rule.regExp); if (!pattern.test(value)) { let errTxt = rule.errorMsg || '[' + rule.label + ']invalid value'; callback(new Error(errTxt)); } else { callback(); } } }; /* harmony default export */ __webpack_exports__["a"] = (FormValidators); /***/ }), /***/ "a025": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "a09c": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_sub_form_item_vue_vue_type_style_index_0_id_1a8d00b3_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("3766"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_sub_form_item_vue_vue_type_style_index_0_id_1a8d00b3_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_sub_form_item_vue_vue_type_style_index_0_id_1a8d00b3_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "a0e4": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_date_range_widget_vue_vue_type_style_index_0_id_4df667ae_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("262d"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_date_range_widget_vue_vue_type_style_index_0_id_4df667ae_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_date_range_widget_vue_vue_type_style_index_0_id_4df667ae_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "a46c": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "a4cc": /***/ (function(module, exports, __webpack_require__) { var toIntegerOrInfinity = __webpack_require__("0c10"); var max = Math.max; var min = Math.min; // Helper for a popular repeating case of the spec: // Let integer be ? ToInteger(index). // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length). module.exports = function (index, length) { var integer = toIntegerOrInfinity(index); return integer < 0 ? max(integer + length, 0) : min(integer, length); }; /***/ }), /***/ "a549": /***/ (function(module, exports, __webpack_require__) { var fails = __webpack_require__("8637"); // Detect IE8's incomplete defineProperty implementation module.exports = !fails(function () { // eslint-disable-next-line es/no-object-defineproperty -- required for testing return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7; }); /***/ }), /***/ "a655": /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports.default = { el: { colorpicker: { confirm: '确定', clear: '清空' }, datepicker: { now: '此刻', today: '今天', cancel: '取消', clear: '清空', confirm: '确定', selectDate: '选择日期', selectTime: '选择时间', startDate: '开始日期', startTime: '开始时间', endDate: '结束日期', endTime: '结束时间', prevYear: '前一年', nextYear: '后一年', prevMonth: '上个月', nextMonth: '下个月', year: '年', month1: '1 月', month2: '2 月', month3: '3 月', month4: '4 月', month5: '5 月', month6: '6 月', month7: '7 月', month8: '8 月', month9: '9 月', month10: '10 月', month11: '11 月', month12: '12 月', // week: '周次', weeks: { sun: '日', mon: '一', tue: '二', wed: '三', thu: '四', fri: '五', sat: '六' }, months: { jan: '一月', feb: '二月', mar: '三月', apr: '四月', may: '五月', jun: '六月', jul: '七月', aug: '八月', sep: '九月', oct: '十月', nov: '十一月', dec: '十二月' } }, select: { loading: '加载中', noMatch: '无匹配数据', noData: '无数据', placeholder: '请选择' }, cascader: { noMatch: '无匹配数据', loading: '加载中', placeholder: '请选择', noData: '暂无数据' }, pagination: { goto: '前往', pagesize: '条/页', total: '共 {total} 条', pageClassifier: '页' }, messagebox: { title: '提示', confirm: '确定', cancel: '取消', error: '输入的数据不合法!' }, upload: { deleteTip: '按 delete 键可删除', delete: '删除', preview: '查看图片', continue: '继续上传' }, table: { emptyText: '暂无数据', confirmFilter: '筛选', resetFilter: '重置', clearFilter: '全部', sumText: '合计' }, tree: { emptyText: '暂无数据' }, transfer: { noMatch: '无匹配数据', noData: '无数据', titles: ['列表 1', '列表 2'], filterPlaceholder: '请输入搜索内容', noCheckedFormat: '共 {total} 项', hasCheckedFormat: '已选 {checked}/{total} 项' }, image: { error: '加载失败' }, pageHeader: { title: '返回' }, popconfirm: { confirmButtonText: '确定', cancelButtonText: '取消' }, empty: { description: '暂无数据' } } }; /***/ }), /***/ "a67b": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "a8c5": /***/ (function(module, exports, __webpack_require__) { var getBuiltIn = __webpack_require__("ec3f"); var isCallable = __webpack_require__("a9ce"); var isPrototypeOf = __webpack_require__("0ea1"); var USE_SYMBOL_AS_UID = __webpack_require__("333d"); var $Object = Object; module.exports = USE_SYMBOL_AS_UID ? function (it) { return typeof it == 'symbol'; } : function (it) { var $Symbol = getBuiltIn('Symbol'); return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it)); }; /***/ }), /***/ "a93f": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/grid-col-item.vue?vue&type=template&id=4f64a923&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('el-col', _vm._b({ directives: [{ name: "show", rawName: "v-show", value: !_vm.widget.options.hidden, expression: "!widget.options.hidden" }], key: _vm.widget.id, staticClass: "grid-cell", class: [_vm.customClass], style: _vm.colHeightStyle }, 'el-col', _vm.layoutProps, false), [!!_vm.widget.widgetList && _vm.widget.widgetList.length > 0 ? [_vm._l(_vm.widget.widgetList, function (subWidget, swIdx) { return ['container' === subWidget.category ? [_c(subWidget.type + '-item', { key: swIdx, tag: "component", attrs: { "widget": subWidget, "parent-list": _vm.widget.widgetList, "index-of-parent-list": swIdx, "parent-widget": _vm.widget }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) })] : [_c(subWidget.type + '-widget', { key: swIdx, tag: "component", attrs: { "field": subWidget, "designer": null, "parent-list": _vm.widget.widgetList, "index-of-parent-list": swIdx, "parent-widget": _vm.widget }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) })]]; })] : [_c('el-col', [_c('div', { staticClass: "blank-cell" }, [_c('span', { staticClass: "invisible-content" }, [_vm._v(_vm._s(_vm.i18nt('render.hint.blankCellContent')))])])])]], 2); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-render/container-item/grid-col-item.vue?vue&type=template&id=4f64a923&scoped=true& // EXTERNAL MODULE: ./node_modules/_core-js@3.26.0@core-js/modules/es.array.push.js var es_array_push = __webpack_require__("24b8"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-render/refMixin.js var refMixin = __webpack_require__("d67f"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/index.js var field_widget = __webpack_require__("c029"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/grid-col-item.vue?vue&type=script&lang=js& /* harmony default export */ var grid_col_itemvue_type_script_lang_js_ = ({ name: "GridColItem", componentName: 'ContainerItem', mixins: [emitter["a" /* default */], i18n["b" /* default */], refMixin["a" /* default */]], components: { ...field_widget["a" /* default */] }, props: { widget: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, colHeight: { type: String, default: null } }, inject: ['refList', 'globalModel', 'getFormConfig', 'previewState'], data() { return { layoutProps: { span: this.widget.options.span, md: this.widget.options.md || 12, sm: this.widget.options.sm || 12, xs: this.widget.options.xs || 12, offset: this.widget.options.offset || 0, push: this.widget.options.push || 0, pull: this.widget.options.pull || 0 } }; }, computed: { formConfig() { return this.getFormConfig(); }, customClass() { return this.widget.options.customClass || ''; }, colHeightStyle() { return !!this.colHeight ? { height: this.colHeight + 'px' } : {}; } }, created() { this.initLayoutProps(); this.initRefList(); }, methods: { initLayoutProps() { if (!!this.widget.options.responsive) { if (!!this.previewState) { this.layoutProps.md = undefined; this.layoutProps.sm = undefined; this.layoutProps.xs = undefined; let lyType = this.formConfig.layoutType; if (lyType === 'H5') { this.layoutProps.span = this.widget.options.xs || 12; } else if (lyType === 'Pad') { this.layoutProps.span = this.widget.options.sm || 12; } else { this.layoutProps.span = this.widget.options.md || 12; } } else { this.layoutProps.span = undefined; } } else { this.layoutProps.md = undefined; this.layoutProps.sm = undefined; this.layoutProps.xs = undefined; } } } }); // CONCATENATED MODULE: ./src/components/form-render/container-item/grid-col-item.vue?vue&type=script&lang=js& /* harmony default export */ var container_item_grid_col_itemvue_type_script_lang_js_ = (grid_col_itemvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-render/container-item/grid-col-item.vue?vue&type=style&index=0&id=4f64a923&prod&lang=scss&scoped=true& var grid_col_itemvue_type_style_index_0_id_4f64a923_prod_lang_scss_scoped_true_ = __webpack_require__("513d"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-render/container-item/grid-col-item.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( container_item_grid_col_itemvue_type_script_lang_js_, render, staticRenderFns, false, null, "4f64a923", null ) /* harmony default export */ var grid_col_item = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "a9ce": /***/ (function(module, exports, __webpack_require__) { var $documentAll = __webpack_require__("8925"); var documentAll = $documentAll.all; // `IsCallable` abstract operation // https://tc39.es/ecma262/#sec-iscallable module.exports = $documentAll.IS_HTMLDDA ? function (argument) { return typeof argument == 'function' || argument === documentAll; } : function (argument) { return typeof argument == 'function'; }; /***/ }), /***/ "aa81": /***/ (function(module, exports, __webpack_require__) { "use strict"; var bind = __webpack_require__("11d5"); // utils is a library of generic helper functions non-specific to axios var toString = Object.prototype.toString; /** * Determine if a value is an Array * * @param {Object} val The value to test * @returns {boolean} True if value is an Array, otherwise false */ function isArray(val) { return toString.call(val) === '[object Array]'; } /** * Determine if a value is undefined * * @param {Object} val The value to test * @returns {boolean} True if the value is undefined, otherwise false */ function isUndefined(val) { return typeof val === 'undefined'; } /** * Determine if a value is a Buffer * * @param {Object} val The value to test * @returns {boolean} True if value is a Buffer, otherwise false */ function isBuffer(val) { return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val); } /** * Determine if a value is an ArrayBuffer * * @param {Object} val The value to test * @returns {boolean} True if value is an ArrayBuffer, otherwise false */ function isArrayBuffer(val) { return toString.call(val) === '[object ArrayBuffer]'; } /** * Determine if a value is a FormData * * @param {Object} val The value to test * @returns {boolean} True if value is an FormData, otherwise false */ function isFormData(val) { return (typeof FormData !== 'undefined') && (val instanceof FormData); } /** * Determine if a value is a view on an ArrayBuffer * * @param {Object} val The value to test * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false */ function isArrayBufferView(val) { var result; if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) { result = ArrayBuffer.isView(val); } else { result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer); } return result; } /** * Determine if a value is a String * * @param {Object} val The value to test * @returns {boolean} True if value is a String, otherwise false */ function isString(val) { return typeof val === 'string'; } /** * Determine if a value is a Number * * @param {Object} val The value to test * @returns {boolean} True if value is a Number, otherwise false */ function isNumber(val) { return typeof val === 'number'; } /** * Determine if a value is an Object * * @param {Object} val The value to test * @returns {boolean} True if value is an Object, otherwise false */ function isObject(val) { return val !== null && typeof val === 'object'; } /** * Determine if a value is a plain Object * * @param {Object} val The value to test * @return {boolean} True if value is a plain Object, otherwise false */ function isPlainObject(val) { if (toString.call(val) !== '[object Object]') { return false; } var prototype = Object.getPrototypeOf(val); return prototype === null || prototype === Object.prototype; } /** * Determine if a value is a Date * * @param {Object} val The value to test * @returns {boolean} True if value is a Date, otherwise false */ function isDate(val) { return toString.call(val) === '[object Date]'; } /** * Determine if a value is a File * * @param {Object} val The value to test * @returns {boolean} True if value is a File, otherwise false */ function isFile(val) { return toString.call(val) === '[object File]'; } /** * Determine if a value is a Blob * * @param {Object} val The value to test * @returns {boolean} True if value is a Blob, otherwise false */ function isBlob(val) { return toString.call(val) === '[object Blob]'; } /** * Determine if a value is a Function * * @param {Object} val The value to test * @returns {boolean} True if value is a Function, otherwise false */ function isFunction(val) { return toString.call(val) === '[object Function]'; } /** * Determine if a value is a Stream * * @param {Object} val The value to test * @returns {boolean} True if value is a Stream, otherwise false */ function isStream(val) { return isObject(val) && isFunction(val.pipe); } /** * Determine if a value is a URLSearchParams object * * @param {Object} val The value to test * @returns {boolean} True if value is a URLSearchParams object, otherwise false */ function isURLSearchParams(val) { return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams; } /** * Trim excess whitespace off the beginning and end of a string * * @param {String} str The String to trim * @returns {String} The String freed of excess whitespace */ function trim(str) { return str.trim ? str.trim() : str.replace(/^\s+|\s+$/g, ''); } /** * Determine if we're running in a standard browser environment * * This allows axios to run in a web worker, and react-native. * Both environments support XMLHttpRequest, but not fully standard globals. * * web workers: * typeof window -> undefined * typeof document -> undefined * * react-native: * navigator.product -> 'ReactNative' * nativescript * navigator.product -> 'NativeScript' or 'NS' */ function isStandardBrowserEnv() { if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' || navigator.product === 'NativeScript' || navigator.product === 'NS')) { return false; } return ( typeof window !== 'undefined' && typeof document !== 'undefined' ); } /** * Iterate over an Array or an Object invoking a function for each item. * * If `obj` is an Array callback will be called passing * the value, index, and complete array for each item. * * If 'obj' is an Object callback will be called passing * the value, key, and complete object for each property. * * @param {Object|Array} obj The object to iterate * @param {Function} fn The callback to invoke for each item */ function forEach(obj, fn) { // Don't bother if no value provided if (obj === null || typeof obj === 'undefined') { return; } // Force an array if not already something iterable if (typeof obj !== 'object') { /*eslint no-param-reassign:0*/ obj = [obj]; } if (isArray(obj)) { // Iterate over array values for (var i = 0, l = obj.length; i < l; i++) { fn.call(null, obj[i], i, obj); } } else { // Iterate over object keys for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { fn.call(null, obj[key], key, obj); } } } } /** * Accepts varargs expecting each argument to be an object, then * immutably merges the properties of each object and returns result. * * When multiple objects contain the same key the later object in * the arguments list will take precedence. * * Example: * * ```js * var result = merge({foo: 123}, {foo: 456}); * console.log(result.foo); // outputs 456 * ``` * * @param {Object} obj1 Object to merge * @returns {Object} Result of all merge properties */ function merge(/* obj1, obj2, obj3, ... */) { var result = {}; function assignValue(val, key) { if (isPlainObject(result[key]) && isPlainObject(val)) { result[key] = merge(result[key], val); } else if (isPlainObject(val)) { result[key] = merge({}, val); } else if (isArray(val)) { result[key] = val.slice(); } else { result[key] = val; } } for (var i = 0, l = arguments.length; i < l; i++) { forEach(arguments[i], assignValue); } return result; } /** * Extends object a by mutably adding to it the properties of object b. * * @param {Object} a The object to be extended * @param {Object} b The object to copy properties from * @param {Object} thisArg The object to bind function to * @return {Object} The resulting value of object a */ function extend(a, b, thisArg) { forEach(b, function assignValue(val, key) { if (thisArg && typeof val === 'function') { a[key] = bind(val, thisArg); } else { a[key] = val; } }); return a; } /** * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM) * * @param {string} content with BOM * @return {string} content value without BOM */ function stripBOM(content) { if (content.charCodeAt(0) === 0xFEFF) { content = content.slice(1); } return content; } module.exports = { isArray: isArray, isArrayBuffer: isArrayBuffer, isBuffer: isBuffer, isFormData: isFormData, isArrayBufferView: isArrayBufferView, isString: isString, isNumber: isNumber, isObject: isObject, isPlainObject: isPlainObject, isUndefined: isUndefined, isDate: isDate, isFile: isFile, isBlob: isBlob, isFunction: isFunction, isStream: isStream, isURLSearchParams: isURLSearchParams, isStandardBrowserEnv: isStandardBrowserEnv, forEach: forEach, merge: merge, extend: extend, trim: trim, stripBOM: stripBOM }; /***/ }), /***/ "aad4": /***/ (function(module, exports, __webpack_require__) { var NATIVE_WEAK_MAP = __webpack_require__("0789"); var global = __webpack_require__("1ff0"); var isObject = __webpack_require__("02ca"); var createNonEnumerableProperty = __webpack_require__("6d23"); var hasOwn = __webpack_require__("7cfe"); var shared = __webpack_require__("692d"); var sharedKey = __webpack_require__("8b32"); var hiddenKeys = __webpack_require__("d60d"); var OBJECT_ALREADY_INITIALIZED = 'Object already initialized'; var TypeError = global.TypeError; var WeakMap = global.WeakMap; var set, get, has; var enforce = function (it) { return has(it) ? get(it) : set(it, {}); }; var getterFor = function (TYPE) { return function (it) { var state; if (!isObject(it) || (state = get(it)).type !== TYPE) { throw TypeError('Incompatible receiver, ' + TYPE + ' required'); } return state; }; }; if (NATIVE_WEAK_MAP || shared.state) { var store = shared.state || (shared.state = new WeakMap()); /* eslint-disable no-self-assign -- prototype methods protection */ store.get = store.get; store.has = store.has; store.set = store.set; /* eslint-enable no-self-assign -- prototype methods protection */ set = function (it, metadata) { if (store.has(it)) throw TypeError(OBJECT_ALREADY_INITIALIZED); metadata.facade = it; store.set(it, metadata); return metadata; }; get = function (it) { return store.get(it) || {}; }; has = function (it) { return store.has(it); }; } else { var STATE = sharedKey('state'); hiddenKeys[STATE] = true; set = function (it, metadata) { if (hasOwn(it, STATE)) throw TypeError(OBJECT_ALREADY_INITIALIZED); metadata.facade = it; createNonEnumerableProperty(it, STATE, metadata); return metadata; }; get = function (it) { return hasOwn(it, STATE) ? it[STATE] : {}; }; has = function (it) { return hasOwn(it, STATE); }; } module.exports = { set: set, get: get, has: has, enforce: enforce, getterFor: getterFor }; /***/ }), /***/ "b142": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "b1e7": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_picture_upload_widget_vue_vue_type_style_index_0_id_c1fcc786_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("e592"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_picture_upload_widget_vue_vue_type_style_index_0_id_c1fcc786_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_picture_upload_widget_vue_vue_type_style_index_0_id_c1fcc786_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "b243": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_cascader_widget_vue_vue_type_style_index_0_id_beb8eb9c_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("b142"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_cascader_widget_vue_vue_type_style_index_0_id_beb8eb9c_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_cascader_widget_vue_vue_type_style_index_0_id_beb8eb9c_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "b3cb": /***/ (function(module, exports, __webpack_require__) { var DESCRIPTORS = __webpack_require__("a549"); var fails = __webpack_require__("8637"); // V8 ~ Chrome 36- // https://bugs.chromium.org/p/v8/issues/detail?id=3334 module.exports = DESCRIPTORS && fails(function () { // eslint-disable-next-line es/no-object-defineproperty -- required for testing return Object.defineProperty(function () { /* empty */ }, 'prototype', { value: 42, writable: false }).prototype != 42; }); /***/ }), /***/ "b4cb": /***/ (function(module, exports, __webpack_require__) { var fails = __webpack_require__("8637"); var isCallable = __webpack_require__("a9ce"); var replacement = /#|\.prototype\./; var isForced = function (feature, detection) { var value = data[normalize(feature)]; return value == POLYFILL ? true : value == NATIVE ? false : isCallable(detection) ? fails(detection) : !!detection; }; var normalize = isForced.normalize = function (string) { return String(string).replace(replacement, '.').toLowerCase(); }; var data = isForced.data = {}; var NATIVE = isForced.NATIVE = 'N'; var POLYFILL = isForced.POLYFILL = 'P'; module.exports = isForced; /***/ }), /***/ "b87d": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/radio-widget.vue?vue&type=template&id=700c1337&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-radio-group', { ref: "fieldEditor", attrs: { "disabled": _vm.field.options.disabled, "size": _vm.field.options.size }, on: { "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } }, [!!_vm.field.options.buttonStyle ? _vm._l(_vm.field.options.optionItems, function (item, index) { return _c('el-radio-button', { key: index, style: { display: _vm.field.options.displayStyle }, attrs: { "label": item.value, "disabled": item.disabled, "border": _vm.field.options.border } }, [_vm._v(_vm._s(item.label))]); }) : _vm._l(_vm.field.options.optionItems, function (item, index) { return _c('el-radio', { key: index, style: { display: _vm.field.options.displayStyle }, attrs: { "label": item.value, "disabled": item.disabled, "border": _vm.field.options.border } }, [_vm._v(_vm._s(item.label))]); })], 2)], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/radio-widget.vue?vue&type=template&id=700c1337&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/radio-widget.vue?vue&type=script&lang=js& /* harmony default export */ var radio_widgetvue_type_script_lang_js_ = ({ name: "radio-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initOptionItems(); this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/radio-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_radio_widgetvue_type_script_lang_js_ = (radio_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/radio-widget.vue?vue&type=style&index=0&id=700c1337&prod&lang=scss&scoped=true& var radio_widgetvue_type_style_index_0_id_700c1337_prod_lang_scss_scoped_true_ = __webpack_require__("cceb"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/radio-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_radio_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "700c1337", null ) /* harmony default export */ var radio_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "b8e9": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/slot-widget.vue?vue&type=template&id=856e2df6&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('static-content-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('div', { class: [!!_vm.designState ? 'slot-wrapper-design' : 'slot-wrapper-render'] }, [_vm._t(_vm.field.options.name, null, { "formModel": _vm.formModel }), !!_vm.designState ? _c('div', { staticClass: "slot-title" }, [_vm._v(_vm._s(_vm.field.options.label))]) : _vm._e()], 2)]); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/slot-widget.vue?vue&type=template&id=856e2df6&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue + 4 modules var static_content_wrapper = __webpack_require__("828b"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/slot-widget.vue?vue&type=script&lang=js& /* harmony default export */ var slot_widgetvue_type_script_lang_js_ = ({ name: "slot-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { StaticContentWrapper: static_content_wrapper["default"] }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.registerToRefList(); this.initEventHandler(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/slot-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_slot_widgetvue_type_script_lang_js_ = (slot_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/slot-widget.vue?vue&type=style&index=0&id=856e2df6&prod&lang=scss&scoped=true& var slot_widgetvue_type_style_index_0_id_856e2df6_prod_lang_scss_scoped_true_ = __webpack_require__("6295"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/slot-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_slot_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "856e2df6", null ) /* harmony default export */ var slot_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "ba08": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/date-range-widget.vue?vue&type=template&id=4df667ae&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-date-picker', { ref: "fieldEditor", staticClass: "full-width-input", attrs: { "type": _vm.field.options.type, "disabled": _vm.field.options.disabled, "readonly": _vm.field.options.readonly, "size": _vm.field.options.size, "clearable": _vm.field.options.clearable, "editable": _vm.field.options.editable, "format": _vm.field.options.format, "value-format": _vm.field.options.valueFormat, "start-placeholder": _vm.field.options.startPlaceholder || _vm.i18nt('render.hint.startDatePlaceholder'), "end-placeholder": _vm.field.options.endPlaceholder || _vm.i18nt('render.hint.endDatePlaceholder') }, on: { "focus": _vm.handleFocusCustomEvent, "blur": _vm.handleBlurCustomEvent, "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/date-range-widget.vue?vue&type=template&id=4df667ae&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/date-range-widget.vue?vue&type=script&lang=js& /* harmony default export */ var date_range_widgetvue_type_script_lang_js_ = ({ name: "date-range-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/date-range-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_date_range_widgetvue_type_script_lang_js_ = (date_range_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/date-range-widget.vue?vue&type=style&index=0&id=4df667ae&prod&lang=scss&scoped=true& var date_range_widgetvue_type_style_index_0_id_4df667ae_prod_lang_scss_scoped_true_ = __webpack_require__("a0e4"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/date-range-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_date_range_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "4df667ae", null ) /* harmony default export */ var date_range_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "baca": /***/ (function(module, exports, __webpack_require__) { var requireObjectCoercible = __webpack_require__("edba"); var $Object = Object; // `ToObject` abstract operation // https://tc39.es/ecma262/#sec-toobject module.exports = function (argument) { return $Object(requireObjectCoercible(argument)); }; /***/ }), /***/ "bc4e": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "bd84": /***/ (function(module, exports, __webpack_require__) { var isCallable = __webpack_require__("a9ce"); var $String = String; var $TypeError = TypeError; module.exports = function (argument) { if (typeof argument == 'object' || isCallable(argument)) return argument; throw $TypeError("Can't set " + $String(argument) + ' as a prototype'); }; /***/ }), /***/ "c00d": /***/ (function(module, exports, __webpack_require__) { var isCallable = __webpack_require__("a9ce"); var isObject = __webpack_require__("02ca"); var setPrototypeOf = __webpack_require__("822e"); // makes subclassing work correct for wrapped built-ins module.exports = function ($this, dummy, Wrapper) { var NewTarget, NewTargetPrototype; if ( // it can work only with native `setPrototypeOf` setPrototypeOf && // we haven't completely correct pre-ES6 way for getting `new.target`, so use this isCallable(NewTarget = dummy.constructor) && NewTarget !== Wrapper && isObject(NewTargetPrototype = NewTarget.prototype) && NewTargetPrototype !== Wrapper.prototype ) setPrototypeOf($this, NewTargetPrototype); return $this; }; /***/ }), /***/ "c029": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; const requireComponent = __webpack_require__("7899"); let comps = {}; requireComponent.keys().map(fileName => { let comp = requireComponent(fileName).default; comps[comp.name] = comp; }); /* harmony default export */ __webpack_exports__["a"] = (comps); /***/ }), /***/ "c055": /***/ (function(module, exports, __webpack_require__) { var uncurryThis = __webpack_require__("d027"); var id = 0; var postfix = Math.random(); var toString = uncurryThis(1.0.toString); module.exports = function (key) { return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36); }; /***/ }), /***/ "c077": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/cascader-widget.vue?vue&type=template&id=beb8eb9c&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-cascader', { ref: "fieldEditor", staticClass: "full-width-input", attrs: { "options": _vm.field.options.optionItems, "disabled": _vm.field.options.disabled, "size": _vm.field.options.size, "clearable": _vm.field.options.clearable, "filterable": _vm.field.options.filterable, "placeholder": _vm.field.options.placeholder || _vm.i18nt('render.hint.selectPlaceholder'), "props": { checkStrictly: _vm.field.options.checkStrictly, multiple: _vm.field.options.multiple, expandTrigger: 'hover', value: _vm.valueKey, label: _vm.labelKey, children: _vm.childrenKey } }, on: { "visible-change": _vm.hideDropDownOnClick, "expand-change": _vm.hideDropDownOnClick, "focus": _vm.handleFocusCustomEvent, "blur": _vm.handleBlurCustomEvent, "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/cascader-widget.vue?vue&type=template&id=beb8eb9c&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/cascader-widget.vue?vue&type=script&lang=js& /* harmony default export */ var cascader_widgetvue_type_script_lang_js_ = ({ name: "cascader-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: { labelKey() { return this.field.options.labelKey || 'label'; }, valueKey() { return this.field.options.valueKey || 'value'; }, childrenKey() { return this.field.options.childrenKey || 'children'; } }, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initOptionItems(); this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: { /* 开启任意级节点可选后,点击radio隐藏下拉框 */ hideDropDownOnClick() { setTimeout(() => { document.querySelectorAll(".el-cascader-panel .el-radio").forEach(el => { el.onclick = () => { this.$refs.fieldEditor.dropDownVisible = false; //单选框部分点击隐藏下拉框 }; }); }, 100); } } }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/cascader-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_cascader_widgetvue_type_script_lang_js_ = (cascader_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/cascader-widget.vue?vue&type=style&index=0&id=beb8eb9c&prod&lang=scss&scoped=true& var cascader_widgetvue_type_style_index_0_id_beb8eb9c_prod_lang_scss_scoped_true_ = __webpack_require__("b243"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/cascader-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_cascader_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "beb8eb9c", null ) /* harmony default export */ var cascader_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "c103": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_textarea_widget_vue_vue_type_style_index_0_id_29f8f632_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("4833"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_textarea_widget_vue_vue_type_style_index_0_id_29f8f632_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_textarea_widget_vue_vue_type_style_index_0_id_29f8f632_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "c176": /***/ (function(module, exports, __webpack_require__) { var DESCRIPTORS = __webpack_require__("a549"); var hasOwn = __webpack_require__("7cfe"); var FunctionPrototype = Function.prototype; // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor; var EXISTS = hasOwn(FunctionPrototype, 'name'); // additional protection from minified / mangled / dropped function names var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something'; var CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable)); module.exports = { EXISTS: EXISTS, PROPER: PROPER, CONFIGURABLE: CONFIGURABLE }; /***/ }), /***/ "c1fd": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "c6e3": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; function broadcast(componentName, eventName, params) { this.$children.forEach(child => { let name = child.$options.componentName; if (name === componentName) { child.$emit.apply(child, [eventName].concat(params)); broadcast.apply(child, [componentName, eventName].concat([params])); //继续遍历子节点!! } else { broadcast.apply(child, [componentName, eventName].concat([params])); } }); } /* harmony default export */ __webpack_exports__["a"] = ({ methods: { dispatch(componentName, eventName, params) { let parent = this.$parent || this.$root; let name = parent.$options.componentName; while (parent && (!name || name !== componentName)) { parent = parent.$parent; if (parent) { name = parent.$options.componentName; } } if (parent) { parent.$emit.apply(parent, [eventName].concat(params)); } }, broadcast(componentName, eventName, params) { broadcast.call(this, componentName, eventName, params); } } }); /***/ }), /***/ "c76b": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_switch_widget_vue_vue_type_style_index_0_id_8d4f59b4_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("cd97"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_switch_widget_vue_vue_type_style_index_0_id_8d4f59b4_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_switch_widget_vue_vue_type_style_index_0_id_8d4f59b4_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "c8c7": /***/ (function(module, exports, __webpack_require__) { "use strict"; var $propertyIsEnumerable = {}.propertyIsEnumerable; // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; // Nashorn ~ JDK8 bug var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1); // `Object.prototype.propertyIsEnumerable` method implementation // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) { var descriptor = getOwnPropertyDescriptor(this, V); return !!descriptor && descriptor.enumerable; } : $propertyIsEnumerable; /***/ }), /***/ "c9d4": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/tab-item.vue?vue&type=template&id=6abf044c&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('container-item-wrapper', { attrs: { "widget": _vm.widget } }, [_c('div', { directives: [{ name: "show", rawName: "v-show", value: !_vm.widget.options.hidden, expression: "!widget.options.hidden" }], key: _vm.widget.id, staticClass: "tab-container" }, [_c('el-tabs', { ref: _vm.widget.id, class: [_vm.customClass], attrs: { "type": _vm.widget.displayType }, model: { value: _vm.activeTabName, callback: function ($$v) { _vm.activeTabName = $$v; }, expression: "activeTabName" } }, _vm._l(_vm.visibleTabs, function (tab, index) { return _c('el-tab-pane', { key: index, attrs: { "label": tab.options.label, "disabled": tab.options.disabled, "name": tab.options.name } }, [_vm._l(tab.widgetList, function (subWidget, swIdx) { return ['container' === subWidget.category ? [_c(subWidget.type + '-item', { key: swIdx, tag: "component", attrs: { "widget": subWidget, "parent-list": tab.widgetList, "index-of-parent-list": swIdx, "parent-widget": _vm.widget }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) })] : [_c(subWidget.type + '-widget', { key: swIdx, tag: "component", attrs: { "field": subWidget, "parent-list": tab.widgetList, "index-of-parent-list": swIdx, "parent-widget": _vm.widget }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) })]]; })], 2); }), 1)], 1)]); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-render/container-item/tab-item.vue?vue&type=template&id=6abf044c&scoped=true& // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-render/refMixin.js var refMixin = __webpack_require__("d67f"); // EXTERNAL MODULE: ./src/components/form-render/container-item/container-item-wrapper.vue + 4 modules var container_item_wrapper = __webpack_require__("90c2"); // EXTERNAL MODULE: ./src/components/form-render/container-item/containerItemMixin.js var containerItemMixin = __webpack_require__("34f0"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/index.js var field_widget = __webpack_require__("c029"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/tab-item.vue?vue&type=script&lang=js& /* harmony default export */ var tab_itemvue_type_script_lang_js_ = ({ name: "tab-item", componentName: 'ContainerItem', mixins: [emitter["a" /* default */], i18n["b" /* default */], refMixin["a" /* default */], containerItemMixin["a" /* default */]], components: { ContainerItemWrapper: container_item_wrapper["default"], ...field_widget["a" /* default */] }, props: { widget: Object }, inject: ['refList', 'sfRefList', 'globalModel'], data() { return { activeTabName: '' }; }, computed: { visibleTabs() { return this.widget.tabs.filter(tp => { return !tp.options.hidden; }); } }, created() { this.initRefList(); }, mounted() { this.initActiveTab(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: { initActiveTab() { if (this.widget.type === 'tab' && this.widget.tabs.length > 0) { let activePanes = this.widget.tabs.filter(tp => { return tp.options.active === true; }); if (activePanes.length > 0) { this.activeTabName = activePanes[0].options.name; } else { this.activeTabName = this.widget.tabs[0].options.name; } } } } }); // CONCATENATED MODULE: ./src/components/form-render/container-item/tab-item.vue?vue&type=script&lang=js& /* harmony default export */ var container_item_tab_itemvue_type_script_lang_js_ = (tab_itemvue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-render/container-item/tab-item.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( container_item_tab_itemvue_type_script_lang_js_, render, staticRenderFns, false, null, "6abf044c", null ) /* harmony default export */ var tab_item = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "ca00": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return isNull; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return isNotNull; }); /* unused harmony export isEmptyStr */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return generateId; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return deepClone; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return overwriteObj; }); /* unused harmony export addWindowResizeHandler */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return insertCustomCssToHead; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return insertGlobalFunctionsToHtml; }); /* unused harmony export optionExists */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return loadRemoteScript; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "n", function() { return traverseFieldWidgets; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "m", function() { return traverseContainWidgets; }); /* unused harmony export traverseAllWidgets */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "o", function() { return traverseFieldWidgetsOfContainer; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return getAllFieldWidgets; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return getAllContainerWidgets; }); /* unused harmony export copyToClipboard */ /* unused harmony export getQueryParam */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "l", function() { return translateOptionItems; }); /* unused harmony export assembleAxiosConfig */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "k", function() { return runDataSourceRequest; }); /* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("24b8"); /* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var clipboard__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("84e5"); /* harmony import */ var clipboard__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(clipboard__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("4ff3"); /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_2__); function isNull(value) { return value === null || value === undefined; } function isNotNull(value) { return value !== null && value !== undefined; } function isEmptyStr(str) { //return (str === undefined) || (!str) || (!/[^\s]/.test(str)); return str === undefined || !str && str !== 0 && str !== '0' || !/[^\s]/.test(str); } const generateId = function () { return Math.floor(Math.random() * 100000 + Math.random() * 20000 + Math.random() * 5000); }; const deepClone = function (origin) { if (origin === undefined) { return undefined; } return JSON.parse(JSON.stringify(origin)); }; const overwriteObj = function (obj1, obj2) { /* 浅拷贝对象属性,obj2覆盖obj1 */ // for (let prop in obj2) { // if (obj2.hasOwnProperty(prop)) { // obj1[prop] = obj2[prop] // } // } Object.keys(obj2).forEach(prop => { obj1[prop] = obj2[prop]; }); }; const addWindowResizeHandler = function (handler) { let oldHandler = window.onresize; if (typeof window.onresize != 'function') { window.onresize = handler; } else { window.onresize = function () { oldHandler(); handler(); }; } }; const createStyleSheet = function () { let head = document.head || document.getElementsByTagName('head')[0]; let style = document.createElement('style'); style.type = 'text/css'; head.appendChild(style); return style.sheet; }; const insertCustomCssToHead = function (cssCode, formId = '') { let head = document.getElementsByTagName('head')[0]; let oldStyle = document.getElementById('vform-custom-css'); if (!!oldStyle) { head.removeChild(oldStyle); //先清除后插入!! } if (!!formId) { oldStyle = document.getElementById('vform-custom-css' + '-' + formId); !!oldStyle && head.removeChild(oldStyle); //先清除后插入!! } let newStyle = document.createElement('style'); newStyle.type = 'text/css'; newStyle.rel = 'stylesheet'; newStyle.id = !!formId ? 'vform-custom-css' + '-' + formId : 'vform-custom-css'; try { newStyle.appendChild(document.createTextNode(cssCode)); } catch (ex) { newStyle.styleSheet.cssText = cssCode; } head.appendChild(newStyle); }; const insertGlobalFunctionsToHtml = function (functionsCode, formId = '') { let bodyEle = document.getElementsByTagName('body')[0]; let oldScriptEle = document.getElementById('v_form_global_functions'); !!oldScriptEle && bodyEle.removeChild(oldScriptEle); //先清除后插入!! if (!!formId) { oldScriptEle = document.getElementById('v_form_global_functions' + '-' + formId); !!oldScriptEle && bodyEle.removeChild(oldScriptEle); //先清除后插入!! } let newScriptEle = document.createElement('script'); newScriptEle.id = !!formId ? 'v_form_global_functions' + '-' + formId : 'v_form_global_functions'; newScriptEle.type = 'text/javascript'; newScriptEle.innerHTML = functionsCode; bodyEle.appendChild(newScriptEle); }; const optionExists = function (optionsObj, optionName) { if (!optionsObj) { return false; } return Object.keys(optionsObj).indexOf(optionName) > -1; }; const loadRemoteScript = function (srcPath, callback) { /*加载远程js,加载成功后执行回调函数*/ let sid = encodeURIComponent(srcPath); let oldScriptEle = document.getElementById(sid); if (!oldScriptEle) { let s = document.createElement('script'); s.src = srcPath; s.id = sid; document.body.appendChild(s); s.onload = s.onreadystatechange = function (_, isAbort) { /* 借鉴自ace.js */ if (isAbort || !s.readyState || s.readyState === "loaded" || s.readyState === "complete") { s = s.onload = s.onreadystatechange = null; if (!isAbort) { callback(); } } }; } }; function traverseFieldWidgets(widgetList, handler, parent = null) { widgetList.forEach(w => { if (w.formItemFlag) { handler(w, parent); } else if (w.type === 'grid') { w.cols.forEach(col => { traverseFieldWidgets(col.widgetList, handler, w); }); } else if (w.type === 'table') { w.rows.forEach(row => { row.cols.forEach(cell => { traverseFieldWidgets(cell.widgetList, handler, w); }); }); } else if (w.type === 'tab') { w.tabs.forEach(tab => { traverseFieldWidgets(tab.widgetList, handler, w); }); } else if (w.type === 'sub-form') { traverseFieldWidgets(w.widgetList, handler, w); } else if (w.category === 'container') { //自定义容器 traverseFieldWidgets(w.widgetList, handler, w); } }); } function traverseContainWidgets(widgetList, handler) { widgetList.forEach(w => { if (w.category === 'container') { handler(w); } if (w.type === 'grid') { w.cols.forEach(col => { traverseContainWidgets(col.widgetList, handler); }); } else if (w.type === 'table') { w.rows.forEach(row => { row.cols.forEach(cell => { traverseContainWidgets(cell.widgetList, handler); }); }); } else if (w.type === 'tab') { w.tabs.forEach(tab => { traverseContainWidgets(tab.widgetList, handler); }); } else if (w.type === 'sub-form') { traverseContainWidgets(w.widgetList, handler); } else if (w.category === 'container') { //自定义容器 traverseContainWidgets(w.widgetList, handler); } }); } function traverseAllWidgets(widgetList, handler) { widgetList.forEach(w => { handler(w); if (w.type === 'grid') { w.cols.forEach(col => { handler(col); traverseAllWidgets(col.widgetList, handler); }); } else if (w.type === 'table') { w.rows.forEach(row => { row.cols.forEach(cell => { handler(cell); traverseAllWidgets(cell.widgetList, handler); }); }); } else if (w.type === 'tab') { w.tabs.forEach(tab => { traverseAllWidgets(tab.widgetList, handler); }); } else if (w.type === 'sub-form') { traverseAllWidgets(w.widgetList, handler); } else if (w.category === 'container') { //自定义容器 traverseAllWidgets(w.widgetList, handler); } }); } function handleWidgetForTraverse(widget, handler) { if (!!widget.category) { traverseFieldWidgetsOfContainer(widget, handler); } else if (widget.formItemFlag) { handler(widget); } } /** * 遍历容器内的字段组件 * @param con * @param handler */ function traverseFieldWidgetsOfContainer(con, handler) { if (con.type === 'grid') { con.cols.forEach(col => { col.widgetList.forEach(cw => { handleWidgetForTraverse(cw, handler); }); }); } else if (con.type === 'table') { con.rows.forEach(row => { row.cols.forEach(cell => { cell.widgetList.forEach(cw => { handleWidgetForTraverse(cw, handler); }); }); }); } else if (con.type === 'tab') { con.tabs.forEach(tab => { tab.widgetList.forEach(cw => { handleWidgetForTraverse(cw, handler); }); }); } else if (con.type === 'sub-form') { con.widgetList.forEach(cw => { handleWidgetForTraverse(cw, handler); }); } else if (con.category === 'container') { //自定义容器 con.widgetList.forEach(cw => { handleWidgetForTraverse(cw, handler); }); } } /** * 获取所有字段组件 * @param widgetList * @returns {[]} */ function getAllFieldWidgets(widgetList) { let result = []; let handlerFn = w => { result.push({ type: w.type, name: w.options.name, field: w }); }; traverseFieldWidgets(widgetList, handlerFn); return result; } /** * 获取所有容器组件 * @param widgetList * @returns {[]} */ function getAllContainerWidgets(widgetList) { let result = []; let handlerFn = w => { result.push({ type: w.type, name: w.options.name, container: w }); }; traverseContainWidgets(widgetList, handlerFn); return result; } function copyToClipboard(content, clickEvent, $message, successMsg, errorMsg) { const clipboard = new clipboard__WEBPACK_IMPORTED_MODULE_1___default.a(clickEvent.target, { text: () => content }); clipboard.on('success', () => { $message.success(successMsg); clipboard.destroy(); }); clipboard.on('error', () => { $message.error(errorMsg); clipboard.destroy(); }); clipboard.onClick(clickEvent); } function getQueryParam(variable) { let query = window.location.search.substring(1); let vars = query.split("&"); for (let i = 0; i < vars.length; i++) { let pair = vars[i].split("="); if (pair[0] == variable) { return pair[1]; } } return undefined; } /** * 转译选择项数据 * @param rawData * @param widgetType * @param labelKey * @param valueKey * @returns {[]} */ function translateOptionItems(rawData, widgetType, labelKey, valueKey) { if (widgetType === 'cascader') { // 级联选择不转译 return deepClone(rawData); } let result = []; if (!!rawData && rawData.length > 0) { rawData.forEach(ri => { result.push({ label: ri[labelKey], value: ri[valueKey] }); }); } return result; } /** * 组装axios请求配置参数 * @param arrayObj * @param DSV * @returns {{}} */ function assembleAxiosConfig(arrayObj, DSV) { let result = {}; if (!arrayObj || arrayObj.length <= 0) { return result; } arrayObj.map(ai => { if (ai.type === 'String') { result[ai.name] = String(ai.value); } else if (ai.type === 'Number') { result[ai.name] = Number(ai.value); } else if (ai.type === 'Boolean') { if (ai.value.toLowerCase() === 'false' || ai.value === '0') { result[ai.name] = false; } else if (ai.value.toLowerCase() === 'true' || ai.value === '1') { result[ai.name] = true; } else { result[ai.name] = null; } } else if (ai.type === 'Variable') { result[ai.name] = eval(ai.value); } }); return result; } function buildRequestConfig(dataSource, DSV, isSandbox) { let config = {}; if (dataSource.requestURLType === 'String') { config.url = dataSource.requestURL; } else { config.url = eval(dataSource.requestURL); } config.method = dataSource.requestMethod; config.headers = assembleAxiosConfig(dataSource.headers, DSV); config.params = assembleAxiosConfig(dataSource.params, DSV); config.data = assembleAxiosConfig(dataSource.data, DSV); //let chFn = new Function('config', 'sandbox', 'form', 'widget', dataSource.configHandlerCode) let chFn = new Function('config', 'isSandbox', 'DSV', dataSource.configHandlerCode); return chFn.call(null, config, isSandbox, DSV); } async function runDataSourceRequest(dataSource, DSV, isSandbox, $message) { try { let requestConfig = buildRequestConfig(dataSource, DSV, isSandbox); //console.log('test------', requestConfig) let result = await axios__WEBPACK_IMPORTED_MODULE_2___default.a.request(requestConfig); //let dhFn = new Function('result', 'sandbox', 'form', 'widget', dataSource.dataHandlerCode) let dhFn = new Function('result', 'isSandbox', 'DSV', dataSource.dataHandlerCode); return dhFn.call(null, result, isSandbox, DSV); } catch (err) { //let ehFn = new Function('error', 'sandbox', 'form', 'widget', '$message', dataSource.dataHandlerCode) let ehFn = new Function('error', 'isSandbox', 'DSV', '$message', dataSource.errorHandlerCode); ehFn.call(null, err, isSandbox, DSV, $message); console.error(err); } } /***/ }), /***/ "ca1b": /***/ (function(module, exports, __webpack_require__) { var uncurryThis = __webpack_require__("d027"); var isCallable = __webpack_require__("a9ce"); var store = __webpack_require__("692d"); var functionToString = uncurryThis(Function.toString); // this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper if (!isCallable(store.inspectSource)) { store.inspectSource = function (it) { return functionToString(it); }; } module.exports = store.inspectSource; /***/ }), /***/ "ca74": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "cab0": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/time-range-widget.vue?vue&type=template&id=44d80437&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-time-picker', { ref: "fieldEditor", staticClass: "full-width-input", attrs: { "is-range": "", "disabled": _vm.field.options.disabled, "readonly": _vm.field.options.readonly, "size": _vm.field.options.size, "clearable": _vm.field.options.clearable, "editable": _vm.field.options.editable, "format": _vm.field.options.format, "value-format": "HH:mm:ss", "start-placeholder": _vm.field.options.startPlaceholder || _vm.i18nt('render.hint.startTimePlaceholder'), "end-placeholder": _vm.field.options.endPlaceholder || _vm.i18nt('render.hint.endTimePlaceholder') }, on: { "focus": _vm.handleFocusCustomEvent, "blur": _vm.handleBlurCustomEvent, "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/time-range-widget.vue?vue&type=template&id=44d80437&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/time-range-widget.vue?vue&type=script&lang=js& /* harmony default export */ var time_range_widgetvue_type_script_lang_js_ = ({ name: "time-range-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/time-range-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_time_range_widgetvue_type_script_lang_js_ = (time_range_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/time-range-widget.vue?vue&type=style&index=0&id=44d80437&prod&lang=scss&scoped=true& var time_range_widgetvue_type_style_index_0_id_44d80437_prod_lang_scss_scoped_true_ = __webpack_require__("de09"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/time-range-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_time_range_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "44d80437", null ) /* harmony default export */ var time_range_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "cceb": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_radio_widget_vue_vue_type_style_index_0_id_700c1337_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("a025"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_radio_widget_vue_vue_type_style_index_0_id_700c1337_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_radio_widget_vue_vue_type_style_index_0_id_700c1337_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "cd97": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "cda1": /***/ (function(module, exports, __webpack_require__) { var toPrimitive = __webpack_require__("8dba"); var isSymbol = __webpack_require__("a8c5"); // `ToPropertyKey` abstract operation // https://tc39.es/ecma262/#sec-topropertykey module.exports = function (argument) { var key = toPrimitive(argument, 'string'); return isSymbol(key) ? key : key + ''; }; /***/ }), /***/ "cedb": /***/ (function(module, exports, __webpack_require__) { "use strict"; var enhanceError = __webpack_require__("69c5"); /** * Create an Error with the specified message, config, error code, request and response. * * @param {string} message The error message. * @param {Object} config The config. * @param {string} [code] The error code (for example, 'ECONNABORTED'). * @param {Object} [request] The request. * @param {Object} [response] The response. * @returns {Error} The created error. */ module.exports = function createError(message, config, code, request, response) { var error = new Error(message); return enhanceError(error, config, code, request, response); }; /***/ }), /***/ "cf32": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/number-widget.vue?vue&type=template&id=638ae813&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-input-number', { ref: "fieldEditor", staticClass: "full-width-input", attrs: { "disabled": _vm.field.options.disabled, "size": _vm.field.options.size, "controls-position": _vm.field.options.controlsPosition, "placeholder": _vm.field.options.placeholder, "min": _vm.field.options.min, "max": _vm.field.options.max, "precision": _vm.field.options.precision, "step": _vm.field.options.step }, on: { "focus": _vm.handleFocusCustomEvent, "blur": _vm.handleBlurCustomEvent, "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/number-widget.vue?vue&type=template&id=638ae813&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/number-widget.vue?vue&type=script&lang=js& /* harmony default export */ var number_widgetvue_type_script_lang_js_ = ({ name: "number-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/number-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_number_widgetvue_type_script_lang_js_ = (number_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/number-widget.vue?vue&type=style&index=0&id=638ae813&prod&lang=scss&scoped=true& var number_widgetvue_type_style_index_0_id_638ae813_prod_lang_scss_scoped_true_ = __webpack_require__("75a8"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/number-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_number_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "638ae813", null ) /* harmony default export */ var number_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "d027": /***/ (function(module, exports, __webpack_require__) { var classofRaw = __webpack_require__("f1a4"); var uncurryThisRaw = __webpack_require__("63a8"); module.exports = function (fn) { // Nashorn bug: // https://github.com/zloirock/core-js/issues/1128 // https://github.com/zloirock/core-js/issues/1130 if (classofRaw(fn) === 'Function') return uncurryThisRaw(fn); }; /***/ }), /***/ "d04d": /***/ (function(module, exports) { var $TypeError = TypeError; var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991 module.exports = function (it) { if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded'); return it; }; /***/ }), /***/ "d09d": /***/ (function(module, exports) { var $String = String; module.exports = function (argument) { try { return $String(argument); } catch (error) { return 'Object'; } }; /***/ }), /***/ "d3a8": /***/ (function(module, exports, __webpack_require__) { var DESCRIPTORS = __webpack_require__("a549"); var IE8_DOM_DEFINE = __webpack_require__("4c59"); var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__("b3cb"); var anObject = __webpack_require__("0eaf"); var toPropertyKey = __webpack_require__("cda1"); var $TypeError = TypeError; // eslint-disable-next-line es/no-object-defineproperty -- safe var $defineProperty = Object.defineProperty; // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; var ENUMERABLE = 'enumerable'; var CONFIGURABLE = 'configurable'; var WRITABLE = 'writable'; // `Object.defineProperty` method // https://tc39.es/ecma262/#sec-object.defineproperty exports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) { anObject(O); P = toPropertyKey(P); anObject(Attributes); if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) { var current = $getOwnPropertyDescriptor(O, P); if (current && current[WRITABLE]) { O[P] = Attributes.value; Attributes = { configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE], enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE], writable: false }; } } return $defineProperty(O, P, Attributes); } : $defineProperty : function defineProperty(O, P, Attributes) { anObject(O); P = toPropertyKey(P); anObject(Attributes); if (IE8_DOM_DEFINE) try { return $defineProperty(O, P, Attributes); } catch (error) { /* empty */ } if ('get' in Attributes || 'set' in Attributes) throw $TypeError('Accessors not supported'); if ('value' in Attributes) O[P] = Attributes.value; return O; }; /***/ }), /***/ "d3b3": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "d4d1": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "d4e1": /***/ (function(module, exports, __webpack_require__) { var classof = __webpack_require__("72cd"); var $String = String; module.exports = function (argument) { if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string'); return $String(argument); }; /***/ }), /***/ "d4ef": /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__("02ca"); var createNonEnumerableProperty = __webpack_require__("6d23"); // `InstallErrorCause` abstract operation // https://tc39.es/proposal-error-cause/#sec-errorobjects-install-error-cause module.exports = function (O, options) { if (isObject(options) && 'cause' in options) { createNonEnumerableProperty(O, 'cause', options.cause); } }; /***/ }), /***/ "d60d": /***/ (function(module, exports) { module.exports = {}; /***/ }), /***/ "d67b": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/input-widget.vue?vue&type=template&id=5d21c6de&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-input', { ref: "fieldEditor", staticClass: "hide-spin-button", attrs: { "disabled": _vm.field.options.disabled, "readonly": _vm.field.options.readonly, "size": _vm.field.options.size, "type": _vm.inputType, "show-password": _vm.field.options.showPassword, "placeholder": _vm.field.options.placeholder, "clearable": _vm.field.options.clearable, "minlength": _vm.field.options.minLength, "maxlength": _vm.field.options.maxLength, "show-word-limit": _vm.field.options.showWordLimit, "prefix-icon": _vm.field.options.prefixIcon, "suffix-icon": _vm.field.options.suffixIcon }, on: { "focus": _vm.handleFocusCustomEvent, "blur": _vm.handleBlurCustomEvent, "input": _vm.handleInputCustomEvent, "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } }, [_vm.field.options.appendButton ? _c('el-button', { class: _vm.field.options.buttonIcon, attrs: { "slot": "append", "disabled": _vm.field.options.disabled || _vm.field.options.appendButtonDisabled }, nativeOn: { "click": function ($event) { return _vm.emitAppendButtonClick.apply(null, arguments); } }, slot: "append" }) : _vm._e()], 1)], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/input-widget.vue?vue&type=template&id=5d21c6de&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/input-widget.vue?vue&type=script&lang=js& /* harmony default export */ var input_widgetvue_type_script_lang_js_ = ({ name: "input-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: { inputType() { if (this.field.options.type === 'number') { return 'text'; //当input的type设置为number时,如果输入非数字字符,则v-model拿到的值为空字符串,无法实现输入校验!故屏蔽之!! } return this.field.options.type; } }, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/input-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_input_widgetvue_type_script_lang_js_ = (input_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/input-widget.vue?vue&type=style&index=0&id=5d21c6de&prod&lang=scss&scoped=true& var input_widgetvue_type_style_index_0_id_5d21c6de_prod_lang_scss_scoped_true_ = __webpack_require__("e6fe"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/input-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_input_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "5d21c6de", null ) /* harmony default export */ var input_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "d67f": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony default export */ __webpack_exports__["a"] = ({ methods: { initRefList() { if (this.refList !== null && !!this.widget.options.name) { this.refList[this.widget.options.name] = this; } }, getWidgetRef(widgetName, showError = false) { let foundRef = this.refList[widgetName]; if (!foundRef && !!showError) { this.$message.error(this.i18nt('render.hint.refNotFound') + widgetName); } return foundRef; }, getFormRef() { /* 获取VFrom引用,必须在VForm组件created之后方可调用 */ return this.refList['v_form_ref']; } } }); /***/ }), /***/ "d6b4": /***/ (function(module, exports, __webpack_require__) { var uncurryThis = __webpack_require__("d027"); var hasOwn = __webpack_require__("7cfe"); var toIndexedObject = __webpack_require__("9f48"); var indexOf = __webpack_require__("0f2b").indexOf; var hiddenKeys = __webpack_require__("d60d"); var push = uncurryThis([].push); module.exports = function (object, names) { var O = toIndexedObject(object); var i = 0; var result = []; var key; for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key); // Don't enum bug & hidden keys while (names.length > i) if (hasOwn(O, key = names[i++])) { ~indexOf(result, key) || push(result, key); } return result; }; /***/ }), /***/ "d6d1": /***/ (function(module, exports) { var ceil = Math.ceil; var floor = Math.floor; // `Math.trunc` method // https://tc39.es/ecma262/#sec-math.trunc // eslint-disable-next-line es/no-math-trunc -- safe module.exports = Math.trunc || function trunc(x) { var n = +x; return (n > 0 ? floor : ceil)(n); }; /***/ }), /***/ "d719": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_button_widget_vue_vue_type_style_index_0_id_1293f105_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("660a"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_button_widget_vue_vue_type_style_index_0_id_1293f105_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_button_widget_vue_vue_type_style_index_0_id_1293f105_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "d866": /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__("1ff0"); var getOwnPropertyDescriptor = __webpack_require__("527d").f; var createNonEnumerableProperty = __webpack_require__("6d23"); var defineBuiltIn = __webpack_require__("4f22"); var defineGlobalProperty = __webpack_require__("6910"); var copyConstructorProperties = __webpack_require__("61e5"); var isForced = __webpack_require__("b4cb"); /* options.target - name of the target object options.global - target is the global object options.stat - export as static methods of target options.proto - export as prototype methods of target options.real - real prototype method for the `pure` version options.forced - export even if the native feature is available options.bind - bind methods to the target, required for the `pure` version options.wrap - wrap constructors to preventing global pollution, required for the `pure` version options.unsafe - use the simple assignment of property instead of delete + defineProperty options.sham - add a flag to not completely full polyfills options.enumerable - export as enumerable property options.dontCallGetSet - prevent calling a getter on target options.name - the .name of the function if it does not match the key */ module.exports = function (options, source) { var TARGET = options.target; var GLOBAL = options.global; var STATIC = options.stat; var FORCED, target, key, targetProperty, sourceProperty, descriptor; if (GLOBAL) { target = global; } else if (STATIC) { target = global[TARGET] || defineGlobalProperty(TARGET, {}); } else { target = (global[TARGET] || {}).prototype; } if (target) for (key in source) { sourceProperty = source[key]; if (options.dontCallGetSet) { descriptor = getOwnPropertyDescriptor(target, key); targetProperty = descriptor && descriptor.value; } else targetProperty = target[key]; FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced); // contained in target if (!FORCED && targetProperty !== undefined) { if (typeof sourceProperty == typeof targetProperty) continue; copyConstructorProperties(sourceProperty, targetProperty); } // add a flag to not completely full polyfills if (options.sham || (targetProperty && targetProperty.sham)) { createNonEnumerableProperty(sourceProperty, 'sham', true); } defineBuiltIn(target, key, sourceProperty, options); } }; /***/ }), /***/ "da4e": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/date-widget.vue?vue&type=template&id=db96b016&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-date-picker', { ref: "fieldEditor", staticClass: "full-width-input", attrs: { "type": _vm.field.options.type, "readonly": _vm.field.options.readonly, "disabled": _vm.field.options.disabled, "size": _vm.field.options.size, "clearable": _vm.field.options.clearable, "editable": _vm.field.options.editable, "format": _vm.field.options.format, "value-format": _vm.field.options.valueFormat, "placeholder": _vm.field.options.placeholder || _vm.i18nt('render.hint.datePlaceholder') }, on: { "focus": _vm.handleFocusCustomEvent, "blur": _vm.handleBlurCustomEvent, "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/date-widget.vue?vue&type=template&id=db96b016&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/date-widget.vue?vue&type=script&lang=js& /* harmony default export */ var date_widgetvue_type_script_lang_js_ = ({ name: "date-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/date-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_date_widgetvue_type_script_lang_js_ = (date_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/date-widget.vue?vue&type=style&index=0&id=db96b016&prod&lang=scss&scoped=true& var date_widgetvue_type_style_index_0_id_db96b016_prod_lang_scss_scoped_true_ = __webpack_require__("39fc"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/date-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_date_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "db96b016", null ) /* harmony default export */ var date_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "db6e": /***/ (function(module, exports, __webpack_require__) { "use strict"; /** * Determines whether the payload is an error thrown by Axios * * @param {*} payload The value to test * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false */ module.exports = function isAxiosError(payload) { return (typeof payload === 'object') && (payload.isAxiosError === true); }; /***/ }), /***/ "dcbf": /***/ (function(module, exports, __webpack_require__) { var getBuiltIn = __webpack_require__("ec3f"); module.exports = getBuiltIn('navigator', 'userAgent') || ''; /***/ }), /***/ "dcd7": /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports.default = { el: { colorpicker: { confirm: 'OK', clear: 'Clear' }, datepicker: { now: 'Now', today: 'Today', cancel: 'Cancel', clear: 'Clear', confirm: 'OK', selectDate: 'Select date', selectTime: 'Select time', startDate: 'Start Date', startTime: 'Start Time', endDate: 'End Date', endTime: 'End Time', prevYear: 'Previous Year', nextYear: 'Next Year', prevMonth: 'Previous Month', nextMonth: 'Next Month', year: '', month1: 'January', month2: 'February', month3: 'March', month4: 'April', month5: 'May', month6: 'June', month7: 'July', month8: 'August', month9: 'September', month10: 'October', month11: 'November', month12: 'December', week: 'week', weeks: { sun: 'Sun', mon: 'Mon', tue: 'Tue', wed: 'Wed', thu: 'Thu', fri: 'Fri', sat: 'Sat' }, months: { jan: 'Jan', feb: 'Feb', mar: 'Mar', apr: 'Apr', may: 'May', jun: 'Jun', jul: 'Jul', aug: 'Aug', sep: 'Sep', oct: 'Oct', nov: 'Nov', dec: 'Dec' } }, select: { loading: 'Loading', noMatch: 'No matching data', noData: 'No data', placeholder: 'Select' }, cascader: { noMatch: 'No matching data', loading: 'Loading', placeholder: 'Select', noData: 'No data' }, pagination: { goto: 'Go to', pagesize: '/page', total: 'Total {total}', pageClassifier: '' }, messagebox: { title: 'Message', confirm: 'OK', cancel: 'Cancel', error: 'Illegal input' }, upload: { deleteTip: 'press delete to remove', delete: 'Delete', preview: 'Preview', continue: 'Continue' }, table: { emptyText: 'No Data', confirmFilter: 'Confirm', resetFilter: 'Reset', clearFilter: 'All', sumText: 'Sum' }, tree: { emptyText: 'No Data' }, transfer: { noMatch: 'No matching data', noData: 'No data', titles: ['List 1', 'List 2'], // to be translated filterPlaceholder: 'Enter keyword', // to be translated noCheckedFormat: '{total} items', // to be translated hasCheckedFormat: '{checked}/{total} checked' // to be translated }, image: { error: 'FAILED' }, pageHeader: { title: 'Back' // to be translated }, popconfirm: { confirmButtonText: 'Yes', cancelButtonText: 'No' }, empty: { description: 'No Data' } } }; /***/ }), /***/ "de09": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_time_range_widget_vue_vue_type_style_index_0_id_44d80437_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("d3b3"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_time_range_widget_vue_vue_type_style_index_0_id_44d80437_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_time_range_widget_vue_vue_type_style_index_0_id_44d80437_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "de19": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/divider-widget.vue?vue&type=template&id=0faf59b2&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('static-content-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-divider', { ref: "fieldEditor", attrs: { "direction": "horizontal", "content-position": _vm.field.options.contentPosition } }, [_vm._v(" " + _vm._s(_vm.field.options.label))])], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/divider-widget.vue?vue&type=template&id=0faf59b2&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue + 4 modules var static_content_wrapper = __webpack_require__("828b"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/divider-widget.vue?vue&type=script&lang=js& /* harmony default export */ var divider_widgetvue_type_script_lang_js_ = ({ name: "divider-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { StaticContentWrapper: static_content_wrapper["default"] }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.registerToRefList(); this.initEventHandler(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/divider-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_divider_widgetvue_type_script_lang_js_ = (divider_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/divider-widget.vue?vue&type=style&index=0&id=0faf59b2&prod&lang=scss&scoped=true& var divider_widgetvue_type_style_index_0_id_0faf59b2_prod_lang_scss_scoped_true_ = __webpack_require__("0916"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/divider-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_divider_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "0faf59b2", null ) /* harmony default export */ var divider_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "def7": /***/ (function(module, exports) { // IE8- don't enum bug keys module.exports = [ 'constructor', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'valueOf' ]; /***/ }), /***/ "dfa7": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); var settle = __webpack_require__("9cbe"); var cookies = __webpack_require__("72dd"); var buildURL = __webpack_require__("4d60"); var buildFullPath = __webpack_require__("e7b3"); var parseHeaders = __webpack_require__("265e"); var isURLSameOrigin = __webpack_require__("77c1"); var createError = __webpack_require__("cedb"); module.exports = function xhrAdapter(config) { return new Promise(function dispatchXhrRequest(resolve, reject) { var requestData = config.data; var requestHeaders = config.headers; var responseType = config.responseType; if (utils.isFormData(requestData)) { delete requestHeaders['Content-Type']; // Let the browser set it } var request = new XMLHttpRequest(); // HTTP basic authentication if (config.auth) { var username = config.auth.username || ''; var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : ''; requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password); } var fullPath = buildFullPath(config.baseURL, config.url); request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true); // Set the request timeout in MS request.timeout = config.timeout; function onloadend() { if (!request) { return; } // Prepare the response var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null; var responseData = !responseType || responseType === 'text' || responseType === 'json' ? request.responseText : request.response; var response = { data: responseData, status: request.status, statusText: request.statusText, headers: responseHeaders, config: config, request: request }; settle(resolve, reject, response); // Clean up request request = null; } if ('onloadend' in request) { // Use onloadend if available request.onloadend = onloadend; } else { // Listen for ready state to emulate onloadend request.onreadystatechange = function handleLoad() { if (!request || request.readyState !== 4) { return; } // The request errored out and we didn't get a response, this will be // handled by onerror instead // With one exception: request that using file: protocol, most browsers // will return status as 0 even though it's a successful request if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) { return; } // readystate handler is calling before onerror or ontimeout handlers, // so we should call onloadend on the next 'tick' setTimeout(onloadend); }; } // Handle browser request cancellation (as opposed to a manual cancellation) request.onabort = function handleAbort() { if (!request) { return; } reject(createError('Request aborted', config, 'ECONNABORTED', request)); // Clean up request request = null; }; // Handle low level network errors request.onerror = function handleError() { // Real errors are hidden from us by the browser // onerror should only fire if it's a network error reject(createError('Network Error', config, null, request)); // Clean up request request = null; }; // Handle timeout request.ontimeout = function handleTimeout() { var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded'; if (config.timeoutErrorMessage) { timeoutErrorMessage = config.timeoutErrorMessage; } reject(createError( timeoutErrorMessage, config, config.transitional && config.transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED', request)); // Clean up request request = null; }; // Add xsrf header // This is only done if running in a standard browser environment. // Specifically not if we're in a web worker, or react-native. if (utils.isStandardBrowserEnv()) { // Add xsrf header var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ? cookies.read(config.xsrfCookieName) : undefined; if (xsrfValue) { requestHeaders[config.xsrfHeaderName] = xsrfValue; } } // Add headers to the request if ('setRequestHeader' in request) { utils.forEach(requestHeaders, function setRequestHeader(val, key) { if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') { // Remove Content-Type if data is undefined delete requestHeaders[key]; } else { // Otherwise add header to the request request.setRequestHeader(key, val); } }); } // Add withCredentials to request if needed if (!utils.isUndefined(config.withCredentials)) { request.withCredentials = !!config.withCredentials; } // Add responseType to request if needed if (responseType && responseType !== 'json') { request.responseType = config.responseType; } // Handle progress if needed if (typeof config.onDownloadProgress === 'function') { request.addEventListener('progress', config.onDownloadProgress); } // Not all browsers support upload events if (typeof config.onUploadProgress === 'function' && request.upload) { request.upload.addEventListener('progress', config.onUploadProgress); } if (config.cancelToken) { // Handle cancellation config.cancelToken.promise.then(function onCanceled(cancel) { if (!request) { return; } request.abort(); reject(cancel); // Clean up request request = null; }); } if (!requestData) { requestData = null; } // Send the request request.send(requestData); }); }; /***/ }), /***/ "e004": /***/ (function(module, exports, __webpack_require__) { var isCallable = __webpack_require__("a9ce"); var tryToString = __webpack_require__("d09d"); var $TypeError = TypeError; // `Assert: IsCallable(argument) is true` module.exports = function (argument) { if (isCallable(argument)) return argument; throw $TypeError(tryToString(argument) + ' is not a function'); }; /***/ }), /***/ "e157": /***/ (function(module, exports, __webpack_require__) { /* eslint-disable no-unused-vars -- required for functions `.length` */ var $ = __webpack_require__("d866"); var global = __webpack_require__("1ff0"); var apply = __webpack_require__("7999"); var wrapErrorConstructorWithCause = __webpack_require__("757b"); var WEB_ASSEMBLY = 'WebAssembly'; var WebAssembly = global[WEB_ASSEMBLY]; var FORCED = Error('e', { cause: 7 }).cause !== 7; var exportGlobalErrorCauseWrapper = function (ERROR_NAME, wrapper) { var O = {}; O[ERROR_NAME] = wrapErrorConstructorWithCause(ERROR_NAME, wrapper, FORCED); $({ global: true, constructor: true, arity: 1, forced: FORCED }, O); }; var exportWebAssemblyErrorCauseWrapper = function (ERROR_NAME, wrapper) { if (WebAssembly && WebAssembly[ERROR_NAME]) { var O = {}; O[ERROR_NAME] = wrapErrorConstructorWithCause(WEB_ASSEMBLY + '.' + ERROR_NAME, wrapper, FORCED); $({ target: WEB_ASSEMBLY, stat: true, constructor: true, arity: 1, forced: FORCED }, O); } }; // https://github.com/tc39/proposal-error-cause exportGlobalErrorCauseWrapper('Error', function (init) { return function Error(message) { return apply(init, this, arguments); }; }); exportGlobalErrorCauseWrapper('EvalError', function (init) { return function EvalError(message) { return apply(init, this, arguments); }; }); exportGlobalErrorCauseWrapper('RangeError', function (init) { return function RangeError(message) { return apply(init, this, arguments); }; }); exportGlobalErrorCauseWrapper('ReferenceError', function (init) { return function ReferenceError(message) { return apply(init, this, arguments); }; }); exportGlobalErrorCauseWrapper('SyntaxError', function (init) { return function SyntaxError(message) { return apply(init, this, arguments); }; }); exportGlobalErrorCauseWrapper('TypeError', function (init) { return function TypeError(message) { return apply(init, this, arguments); }; }); exportGlobalErrorCauseWrapper('URIError', function (init) { return function URIError(message) { return apply(init, this, arguments); }; }); exportWebAssemblyErrorCauseWrapper('CompileError', function (init) { return function CompileError(message) { return apply(init, this, arguments); }; }); exportWebAssemblyErrorCauseWrapper('LinkError', function (init) { return function LinkError(message) { return apply(init, this, arguments); }; }); exportWebAssemblyErrorCauseWrapper('RuntimeError', function (init) { return function RuntimeError(message) { return apply(init, this, arguments); }; }); /***/ }), /***/ "e29d": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); var buildURL = __webpack_require__("4d60"); var InterceptorManager = __webpack_require__("410d"); var dispatchRequest = __webpack_require__("7d03"); var mergeConfig = __webpack_require__("fad8"); var validator = __webpack_require__("4694"); var validators = validator.validators; /** * Create a new instance of Axios * * @param {Object} instanceConfig The default config for the instance */ function Axios(instanceConfig) { this.defaults = instanceConfig; this.interceptors = { request: new InterceptorManager(), response: new InterceptorManager() }; } /** * Dispatch a request * * @param {Object} config The config specific for this request (merged with this.defaults) */ Axios.prototype.request = function request(config) { /*eslint no-param-reassign:0*/ // Allow for axios('example/url'[, config]) a la fetch API if (typeof config === 'string') { config = arguments[1] || {}; config.url = arguments[0]; } else { config = config || {}; } config = mergeConfig(this.defaults, config); // Set config.method if (config.method) { config.method = config.method.toLowerCase(); } else if (this.defaults.method) { config.method = this.defaults.method.toLowerCase(); } else { config.method = 'get'; } var transitional = config.transitional; if (transitional !== undefined) { validator.assertOptions(transitional, { silentJSONParsing: validators.transitional(validators.boolean, '1.0.0'), forcedJSONParsing: validators.transitional(validators.boolean, '1.0.0'), clarifyTimeoutError: validators.transitional(validators.boolean, '1.0.0') }, false); } // filter out skipped interceptors var requestInterceptorChain = []; var synchronousRequestInterceptors = true; this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) { return; } synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); }); var responseInterceptorChain = []; this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); }); var promise; if (!synchronousRequestInterceptors) { var chain = [dispatchRequest, undefined]; Array.prototype.unshift.apply(chain, requestInterceptorChain); chain = chain.concat(responseInterceptorChain); promise = Promise.resolve(config); while (chain.length) { promise = promise.then(chain.shift(), chain.shift()); } return promise; } var newConfig = config; while (requestInterceptorChain.length) { var onFulfilled = requestInterceptorChain.shift(); var onRejected = requestInterceptorChain.shift(); try { newConfig = onFulfilled(newConfig); } catch (error) { onRejected(error); break; } } try { promise = dispatchRequest(newConfig); } catch (error) { return Promise.reject(error); } while (responseInterceptorChain.length) { promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift()); } return promise; }; Axios.prototype.getUri = function getUri(config) { config = mergeConfig(this.defaults, config); return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\?/, ''); }; // Provide aliases for supported request methods utils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) { /*eslint func-names:0*/ Axios.prototype[method] = function(url, config) { return this.request(mergeConfig(config || {}, { method: method, url: url, data: (config || {}).data })); }; }); utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) { /*eslint func-names:0*/ Axios.prototype[method] = function(url, data, config) { return this.request(mergeConfig(config || {}, { method: method, url: url, data: data })); }; }); module.exports = Axios; /***/ }), /***/ "e588": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "e592": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "e661": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_14078f98_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("71da"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_14078f98_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_14078f98_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "e6fe": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_input_widget_vue_vue_type_style_index_0_id_5d21c6de_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("9a68"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_input_widget_vue_vue_type_style_index_0_id_5d21c6de_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_input_widget_vue_vue_type_style_index_0_id_5d21c6de_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "e7b3": /***/ (function(module, exports, __webpack_require__) { "use strict"; var isAbsoluteURL = __webpack_require__("7cce"); var combineURLs = __webpack_require__("1a77"); /** * Creates a new URL by combining the baseURL with the requestedURL, * only when the requestedURL is not already an absolute URL. * If the requestURL is absolute, this function returns the requestedURL untouched. * * @param {string} baseURL The base URL * @param {string} requestedURL Absolute or relative URL to combine * @returns {string} The combined full path */ module.exports = function buildFullPath(baseURL, requestedURL) { if (baseURL && !isAbsoluteURL(requestedURL)) { return combineURLs(baseURL, requestedURL); } return requestedURL; }; /***/ }), /***/ "ea43": /***/ (function(module, exports, __webpack_require__) { var aCallable = __webpack_require__("e004"); var isNullOrUndefined = __webpack_require__("7d63"); // `GetMethod` abstract operation // https://tc39.es/ecma262/#sec-getmethod module.exports = function (V, P) { var func = V[P]; return isNullOrUndefined(func) ? undefined : aCallable(func); }; /***/ }), /***/ "ec3f": /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__("1ff0"); var isCallable = __webpack_require__("a9ce"); var aFunction = function (argument) { return isCallable(argument) ? argument : undefined; }; module.exports = function (namespace, method) { return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method]; }; /***/ }), /***/ "ec47": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_checkbox_widget_vue_vue_type_style_index_0_id_3a2d3865_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("ca74"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_checkbox_widget_vue_vue_type_style_index_0_id_3a2d3865_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_checkbox_widget_vue_vue_type_style_index_0_id_3a2d3865_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "eca8": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); var defaults = __webpack_require__("9632"); /** * Transform the data for a request or a response * * @param {Object|String} data The data to be transformed * @param {Array} headers The headers for the request or response * @param {Array|Function} fns A single function or Array of functions * @returns {*} The resulting transformed data */ module.exports = function transformData(data, headers, fns) { var context = this || defaults; /*eslint no-param-reassign:0*/ utils.forEach(fns, function transform(fn) { data = fn.call(context, data, headers); }); return data; }; /***/ }), /***/ "ecaa": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/switch-widget.vue?vue&type=template&id=8d4f59b4&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('el-switch', { ref: "fieldEditor", attrs: { "disabled": _vm.field.options.disabled, "active-text": _vm.field.options.activeText, "inactive-text": _vm.field.options.inactiveText, "active-color": _vm.field.options.activeColor, "inactive-color": _vm.field.options.inactiveColor, "width": _vm.field.options.switchWidth }, on: { "change": _vm.handleChangeEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/switch-widget.vue?vue&type=template&id=8d4f59b4&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/switch-widget.vue?vue&type=script&lang=js& /* harmony default export */ var switch_widgetvue_type_script_lang_js_ = ({ name: "switch-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"] }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [] }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/switch-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_switch_widgetvue_type_script_lang_js_ = (switch_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/switch-widget.vue?vue&type=style&index=0&id=8d4f59b4&prod&lang=scss&scoped=true& var switch_widgetvue_type_style_index_0_id_8d4f59b4_prod_lang_scss_scoped_true_ = __webpack_require__("c76b"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/switch-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_switch_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "8d4f59b4", null ) /* harmony default export */ var switch_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "edba": /***/ (function(module, exports, __webpack_require__) { var isNullOrUndefined = __webpack_require__("7d63"); var $TypeError = TypeError; // `RequireObjectCoercible` abstract operation // https://tc39.es/ecma262/#sec-requireobjectcoercible module.exports = function (it) { if (isNullOrUndefined(it)) throw $TypeError("Can't call method on " + it); return it; }; /***/ }), /***/ "eef6": /***/ (function(module, exports, __webpack_require__) { exports.nextTick = function nextTick(fn) { var args = Array.prototype.slice.call(arguments); args.shift(); setTimeout(function () { fn.apply(null, args); }, 0); }; exports.platform = exports.arch = exports.execPath = exports.title = 'browser'; exports.pid = 1; exports.browser = true; exports.env = {}; exports.argv = []; exports.binding = function (name) { throw new Error('No such module. (Possibly not yet loaded)') }; (function () { var cwd = '/'; var path; exports.cwd = function () { return cwd }; exports.chdir = function (dir) { if (!path) path = __webpack_require__("6266"); cwd = path.resolve(dir, cwd); }; })(); exports.exit = exports.kill = exports.umask = exports.dlopen = exports.uptime = exports.memoryUsage = exports.uvCounters = function() {}; exports.features = {}; /***/ }), /***/ "efdc": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/sub-form-item.vue?vue&type=template&id=1a8d00b3&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('container-item-wrapper', { attrs: { "widget": _vm.widget } }, [_c('div', { directives: [{ name: "show", rawName: "v-show", value: !_vm.widget.options.hidden, expression: "!widget.options.hidden" }], key: _vm.widget.id, staticClass: "sub-form-container" }, [_c('el-row', { staticClass: "header-row" }, [_c('div', { staticClass: "action-header-column" }, [_c('span', { staticClass: "action-label" }, [_vm._v(_vm._s(_vm.i18nt('render.hint.subFormAction')))]), _c('el-button', { staticClass: "action-button", attrs: { "disabled": _vm.actionDisabled, "round": "", "type": "primary", "size": "mini", "title": _vm.i18nt('render.hint.subFormAddActionHint') }, on: { "click": _vm.addSubFormRow } }, [_vm._v(" " + _vm._s(_vm.i18nt('render.hint.subFormAddAction'))), _c('i', { staticClass: "el-icon-plus el-icon-right" })])], 1), _vm._l(_vm.widget.widgetList, function (subWidget) { return [_c('div', { key: subWidget.id + 'thc', staticClass: "field-header-column", class: [_vm.getLabelAlign(_vm.widget, subWidget), !!subWidget.options.required ? 'is-required' : ''], style: { width: subWidget.options.columnWidth } }, [!!subWidget.options.labelIconClass ? _c('span', { staticClass: "custom-label" }, [subWidget.options.labelIconPosition === 'front' ? [!!subWidget.options.labelTooltip ? [_c('el-tooltip', { attrs: { "content": subWidget.options.labelTooltip, "effect": "light" } }, [_c('i', { class: subWidget.options.labelIconClass })]), _vm._v(_vm._s(subWidget.options.label))] : [_c('i', { class: subWidget.options.labelIconClass }), _vm._v(_vm._s(subWidget.options.label))]] : subWidget.options.labelIconPosition === 'rear' ? [!!subWidget.options.labelTooltip ? [_vm._v(" " + _vm._s(subWidget.options.label)), _c('el-tooltip', { attrs: { "content": subWidget.options.labelTooltip, "effect": "light" } }, [_c('i', { class: subWidget.options.labelIconClass })])] : [_vm._v(" " + _vm._s(subWidget.options.label)), _c('i', { class: subWidget.options.labelIconClass })]] : _vm._e()], 2) : [_c('span', { attrs: { "title": subWidget.options.labelTooltip } }, [_vm._v(_vm._s(subWidget.options.label))])]], 2)]; })], 2), _vm._l(_vm.rowIdData, function (subFormRowId, sfrIdx) { return _c('el-row', { key: subFormRowId, staticClass: "sub-form-row" }, [_c('div', { staticClass: "sub-form-action-column hide-label" }, [_c('div', { staticClass: "action-button-column" }, [_c('el-button', { attrs: { "disabled": _vm.actionDisabled, "circle": "", "type": "", "icon": "el-icon-circle-plus-outline", "title": _vm.i18nt('render.hint.insertSubFormRow') }, on: { "click": function ($event) { return _vm.insertSubFormRow(sfrIdx); } } }), _c('el-button', { attrs: { "disabled": _vm.actionDisabled, "circle": "", "type": "", "icon": "el-icon-delete", "title": _vm.i18nt('render.hint.deleteSubFormRow') }, on: { "click": function ($event) { return _vm.deleteSubFormRow(sfrIdx); } } }), _vm.widget.options.showRowNumber ? _c('span', { staticClass: "row-number-span" }, [_vm._v("#" + _vm._s(sfrIdx + 1))]) : _vm._e()], 1)]), _vm._l(_vm.widget.widgetList, function (subWidget, swIdx) { return [_c('div', { key: subWidget.id + 'tc' + subFormRowId, staticClass: "sub-form-table-column hide-label", style: { width: subWidget.options.columnWidth } }, [_c(subWidget.type + '-widget', { key: _vm.fieldSchemaData[sfrIdx][swIdx].id, tag: "component", attrs: { "field": _vm.fieldSchemaData[sfrIdx][swIdx], "parent-list": _vm.widget.widgetList, "index-of-parent-list": swIdx, "parent-widget": _vm.widget, "sub-form-row-id": subFormRowId, "sub-form-row-index": sfrIdx, "sub-form-col-index": swIdx } })], 1)]; })], 2); })], 2)]); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-render/container-item/sub-form-item.vue?vue&type=template&id=1a8d00b3&scoped=true& // EXTERNAL MODULE: ./node_modules/_core-js@3.26.0@core-js/modules/es.array.push.js var es_array_push = __webpack_require__("24b8"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/utils/util.js var util = __webpack_require__("ca00"); // EXTERNAL MODULE: ./src/components/form-render/refMixin.js var refMixin = __webpack_require__("d67f"); // EXTERNAL MODULE: ./src/components/form-render/container-item/container-item-wrapper.vue + 4 modules var container_item_wrapper = __webpack_require__("90c2"); // EXTERNAL MODULE: ./src/components/form-render/container-item/containerItemMixin.js var containerItemMixin = __webpack_require__("34f0"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/index.js var field_widget = __webpack_require__("c029"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/sub-form-item.vue?vue&type=script&lang=js& /* harmony default export */ var sub_form_itemvue_type_script_lang_js_ = ({ name: "sub-form-item", componentName: 'ContainerItem', mixins: [emitter["a" /* default */], i18n["b" /* default */], refMixin["a" /* default */], containerItemMixin["a" /* default */]], components: { ContainerItemWrapper: container_item_wrapper["default"], ...field_widget["a" /* default */] }, props: { widget: Object }, inject: ['refList', 'sfRefList', 'globalModel'], data() { return { rowIdData: [], fieldSchemaData: [], actionDisabled: false }; }, created() { this.initRefList(); this.registerSubFormToRefList(); this.initRowIdData(true); this.initFieldSchemaData(); this.initEventHandler(); }, mounted() { this.handleSubFormFirstRowAdd(); //默认添加首行后,主动触发相关事件!! }, beforeDestroy() { this.unregisterFromRefList(); }, methods: { getLabelAlign(widget, subWidget) { return subWidget.options.labelAlign || widget.options.labelAlign; }, registerSubFormToRefList() { if (this.widget.type === 'sub-form') { this.sfRefList[this.widget.options.name] = this; } }, initRowIdData(initFlag) { if (this.widget.type === 'sub-form') { this.rowIdData.splice(0, this.rowIdData.length); //清除数组必须用splice,length=0不会响应式更新!! let subFormModel = this.formModel[this.widget.options.name]; if (!!subFormModel && subFormModel.length > 0) { subFormModel.forEach(() => { this.rowIdData.push('id' + Object(util["b" /* generateId */])()); }); if (!!initFlag) { //注意:事件触发需延期执行,SumFormDataChange事件处理代码中可能存在尚未创建完成的组件!! setTimeout(() => { this.handleSubFormRowChange(subFormModel); }, 800); } } } }, addToRowIdData() { this.rowIdData.push('id' + Object(util["b" /* generateId */])()); }, insertToRowIdData(rowIndex) { this.rowIdData.splice(rowIndex, 0, 'id' + Object(util["b" /* generateId */])()); }, deleteFromRowIdData(rowIndex) { this.rowIdData.splice(rowIndex, 1); }, getRowIdData() { return this.rowIdData; }, initFieldSchemaData() { //初始化fieldSchemaData!!! if (this.widget.type !== 'sub-form') { return; } let rowLength = this.rowIdData.length; this.fieldSchemaData.splice(0, this.fieldSchemaData.length); //清除数组必须用splice,length=0不会响应式更新!! if (rowLength > 0) { for (let i = 0; i < rowLength; i++) { let fieldSchemas = []; this.widget.widgetList.forEach(swItem => { fieldSchemas.push(this.cloneFieldSchema(swItem)); }); this.fieldSchemaData.push(fieldSchemas); } } }, addToFieldSchemaData(rowIndex) { let fieldSchemas = []; this.widget.widgetList.forEach(swItem => { fieldSchemas.push(this.cloneFieldSchema(swItem)); }); if (rowIndex === undefined) { this.fieldSchemaData.push(fieldSchemas); } else { this.fieldSchemaData.splice(rowIndex, 0, fieldSchemas); } }, deleteFromFieldSchemaData(rowIndex) { this.fieldSchemaData.splice(rowIndex, 1); }, cloneFieldSchema(fieldWidget) { let newFieldSchema = Object(util["a" /* deepClone */])(fieldWidget); newFieldSchema.id = fieldWidget.type + Object(util["b" /* generateId */])(); return newFieldSchema; }, initEventHandler() { if (this.widget.type !== 'sub-form') { return; } this.$on('setFormData', function (newFormData) { this.initRowIdData(false); this.initFieldSchemaData(); let subFormData = newFormData[this.widget.options.name] || []; setTimeout(() => { //延时触发SubFormRowChange事件, 便于更新计算字段!! this.handleSubFormRowChange(subFormData); }, 800); }); }, handleSubFormFirstRowAdd() { if (this.widget.type !== 'sub-form') { return; } if (!!this.widget.options.showBlankRow && this.rowIdData.length === 1) { let oldSubFormData = this.formModel[this.widget.options.name] || []; this.handleSubFormRowAdd(oldSubFormData, this.rowIdData[0]); this.handleSubFormRowChange(oldSubFormData); } }, addSubFormRow(data = {}) { data = typeof data === 'object' ? data || {} : {}; let newSubFormDataRow = data; this.widget.widgetList.forEach(subFormItem => { if (!!subFormItem.formItemFlag) { newSubFormDataRow[subFormItem.options.name] = data[subFormItem.options.name] || datasubFormItem.options.defaultValue; } }); let oldSubFormData = this.formModel[this.widget.options.name] || []; oldSubFormData.push(newSubFormDataRow); this.addToRowIdData(); this.addToFieldSchemaData(); this.handleSubFormRowAdd(oldSubFormData, this.rowIdData[oldSubFormData.length - 1]); this.handleSubFormRowChange(oldSubFormData); }, insertSubFormRow(beforeFormRowIndex) { let newSubFormDataRow = {}; this.widget.widgetList.forEach(subFormItem => { if (!!subFormItem.formItemFlag) { newSubFormDataRow[subFormItem.options.name] = subFormItem.options.defaultValue; } }); let oldSubFormData = this.formModel[this.widget.options.name] || []; oldSubFormData.splice(beforeFormRowIndex, 0, newSubFormDataRow); this.insertToRowIdData(beforeFormRowIndex); this.addToFieldSchemaData(beforeFormRowIndex); this.handleSubFormRowInsert(oldSubFormData, this.rowIdData[beforeFormRowIndex]); this.handleSubFormRowChange(oldSubFormData); }, deleteSubFormRow(formRowIndex) { this.$confirm(this.i18nt('render.hint.deleteSubFormRow') + '?', this.i18nt('render.hint.prompt'), { confirmButtonText: this.i18nt('render.hint.confirm'), cancelButtonText: this.i18nt('render.hint.cancel') }).then(() => { let oldSubFormData = this.formModel[this.widget.options.name] || []; let deletedDataRow = Object(util["a" /* deepClone */])(oldSubFormData[formRowIndex]); oldSubFormData.splice(formRowIndex, 1); this.deleteFromRowIdData(formRowIndex); this.deleteFromFieldSchemaData(formRowIndex); this.handelSubFormRowDelete(oldSubFormData, deletedDataRow); this.handleSubFormRowChange(oldSubFormData); }).catch(() => { // }); }, handleSubFormRowChange(subFormData) { if (!!this.widget.options.onSubFormRowChange) { let customFunc = new Function('subFormData', this.widget.options.onSubFormRowChange); customFunc.call(this, subFormData); } }, handleSubFormRowAdd(subFormData, newRowId) { if (!!this.widget.options.onSubFormRowAdd) { let customFunc = new Function('subFormData', 'newRowId', this.widget.options.onSubFormRowAdd); customFunc.call(this, subFormData, newRowId); } }, handleSubFormRowInsert(subFormData, newRowId) { if (!!this.widget.options.onSubFormRowInsert) { let customFunc = new Function('subFormData', 'newRowId', this.widget.options.onSubFormRowInsert); customFunc.call(this, subFormData, newRowId); } }, handelSubFormRowDelete(subFormData, deletedDataRow) { if (!!this.widget.options.onSubFormRowDelete) { let customFunc = new Function('subFormData', 'deletedDataRow', this.widget.options.onSubFormRowDelete); customFunc.call(this, subFormData, deletedDataRow); } } } }); // CONCATENATED MODULE: ./src/components/form-render/container-item/sub-form-item.vue?vue&type=script&lang=js& /* harmony default export */ var container_item_sub_form_itemvue_type_script_lang_js_ = (sub_form_itemvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-render/container-item/sub-form-item.vue?vue&type=style&index=0&id=1a8d00b3&prod&lang=scss&scoped=true& var sub_form_itemvue_type_style_index_0_id_1a8d00b3_prod_lang_scss_scoped_true_ = __webpack_require__("a09c"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-render/container-item/sub-form-item.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( container_item_sub_form_itemvue_type_script_lang_js_, render, staticRenderFns, false, null, "1a8d00b3", null ) /* harmony default export */ var sub_form_item = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "f097": /***/ (function(module, exports) { module.exports = function (bitmap, value) { return { enumerable: !(bitmap & 1), configurable: !(bitmap & 2), writable: !(bitmap & 4), value: value }; }; /***/ }), /***/ "f169": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_rate_widget_vue_vue_type_style_index_0_id_9fc10714_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("5163"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_rate_widget_vue_vue_type_style_index_0_id_9fc10714_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_rate_widget_vue_vue_type_style_index_0_id_9fc10714_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "f1a4": /***/ (function(module, exports, __webpack_require__) { var uncurryThisRaw = __webpack_require__("63a8"); var toString = uncurryThisRaw({}.toString); var stringSlice = uncurryThisRaw(''.slice); module.exports = function (it) { return stringSlice(toString(it), 8, -1); }; /***/ }), /***/ "f3af": /***/ (function(module, exports, __webpack_require__) { "use strict"; /** * A `Cancel` is an object that is thrown when an operation is canceled. * * @class * @param {string=} message The message. */ function Cancel(message) { this.message = message; } Cancel.prototype.toString = function toString() { return 'Cancel' + (this.message ? ': ' + this.message : ''); }; Cancel.prototype.__CANCEL__ = true; module.exports = Cancel; /***/ }), /***/ "f4c1": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/rich-editor-widget.vue?vue&type=template&id=753833ec&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('form-item-wrapper', { attrs: { "designer": _vm.designer, "field": _vm.field, "rules": _vm.rules, "design-state": _vm.designState, "parent-widget": _vm.parentWidget, "parent-list": _vm.parentList, "index-of-parent-list": _vm.indexOfParentList, "sub-form-row-index": _vm.subFormRowIndex, "sub-form-col-index": _vm.subFormColIndex, "sub-form-row-id": _vm.subFormRowId } }, [_c('vue-editor', { ref: "fieldEditor", attrs: { "editor-toolbar": _vm.customToolbar, "disabled": _vm.field.options.disabled, "placeholder": _vm.field.options.placeholder }, on: { "text-change": _vm.handleRichEditorChangeEvent, "focus": _vm.handleRichEditorFocusEvent, "blur": _vm.handleRichEditorBlurEvent }, model: { value: _vm.fieldModel, callback: function ($$v) { _vm.fieldModel = $$v; }, expression: "fieldModel" } })], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/rich-editor-widget.vue?vue&type=template&id=753833ec&scoped=true& // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue + 4 modules var form_item_wrapper = __webpack_require__("9eeb"); // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/utils/util.js var util = __webpack_require__("ca00"); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/fieldMixin.js var fieldMixin = __webpack_require__("2d11"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-designer/form-widget/field-widget/rich-editor-widget.vue?vue&type=script&lang=js& /* harmony default export */ var rich_editor_widgetvue_type_script_lang_js_ = ({ name: "rich-editor-widget", componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件 mixins: [emitter["a" /* default */], fieldMixin["a" /* default */], i18n["b" /* default */]], props: { field: Object, parentWidget: Object, parentList: Array, indexOfParentList: Number, designer: Object, designState: { type: Boolean, default: false }, subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */ type: Number, default: -1 }, subFormColIndex: { /* 子表单组件列索引,从0开始计数 */ type: Number, default: -1 }, subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */ type: String, default: '' } }, components: { FormItemWrapper: form_item_wrapper["default"], VueEditor: resolve => { //懒加载!! __webpack_require__.e(/* AMD require */ 1).then(function() { var __WEBPACK_AMD_REQUIRE_ARRAY__ = [__webpack_require__("992e")]; (({ VueEditor }) => resolve(VueEditor)).apply(null, __WEBPACK_AMD_REQUIRE_ARRAY__);}).catch(__webpack_require__.oe); } }, inject: ['refList', 'globalOptionData', 'globalModel'], data() { return { oldFieldValue: null, //field组件change之前的值 fieldModel: null, rules: [], customToolbar: [], //富文本编辑器自定义工具栏 valueChangedFlag: false //vue2-editor数据值是否改变标志 }; }, computed: {}, beforeCreate() { /* 这里不能访问方法和属性!! */ }, created() { /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop 需要在父组件created中初始化!! */ this.initFieldModel(); this.registerToRefList(); this.initEventHandler(); this.buildFieldRules(); this.handleOnCreated(); }, mounted() { this.handleOnMounted(); }, beforeDestroy() { this.unregisterFromRefList(); }, methods: { handleRichEditorChangeEvent() { this.valueChangedFlag = true; this.syncUpdateFormModel(this.fieldModel); }, handleRichEditorFocusEvent() { this.oldFieldValue = Object(util["a" /* deepClone */])(this.fieldModel); }, handleRichEditorBlurEvent() { if (this.valueChangedFlag) { this.emitFieldDataChange(this.fieldModel, this.oldFieldValue); this.valueChangedFlag = false; } } } }); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/rich-editor-widget.vue?vue&type=script&lang=js& /* harmony default export */ var field_widget_rich_editor_widgetvue_type_script_lang_js_ = (rich_editor_widgetvue_type_script_lang_js_); // EXTERNAL MODULE: ./src/components/form-designer/form-widget/field-widget/rich-editor-widget.vue?vue&type=style&index=0&id=753833ec&prod&lang=scss&scoped=true& var rich_editor_widgetvue_type_style_index_0_id_753833ec_prod_lang_scss_scoped_true_ = __webpack_require__("fb21"); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-designer/form-widget/field-widget/rich-editor-widget.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( field_widget_rich_editor_widgetvue_type_script_lang_js_, render, staticRenderFns, false, null, "753833ec", null ) /* harmony default export */ var rich_editor_widget = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "f4f2": /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "f500": /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__("1ff0"); var shared = __webpack_require__("074c"); var hasOwn = __webpack_require__("7cfe"); var uid = __webpack_require__("c055"); var NATIVE_SYMBOL = __webpack_require__("977d"); var USE_SYMBOL_AS_UID = __webpack_require__("333d"); var WellKnownSymbolsStore = shared('wks'); var Symbol = global.Symbol; var symbolFor = Symbol && Symbol['for']; var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid; module.exports = function (name) { if (!hasOwn(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) { var description = 'Symbol.' + name; if (NATIVE_SYMBOL && hasOwn(Symbol, name)) { WellKnownSymbolsStore[name] = Symbol[name]; } else if (USE_SYMBOL_AS_UID && symbolFor) { WellKnownSymbolsStore[name] = symbolFor(description); } else { WellKnownSymbolsStore[name] = createWellKnownSymbol(description); } } return WellKnownSymbolsStore[name]; }; /***/ }), /***/ "f746": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"455fb70f-vue-loader-template"}!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/grid-item.vue?vue&type=template&id=7f44c96e&scoped=true& var render = function render() { var _vm = this, _c = _vm._self._c; return _c('container-item-wrapper', { attrs: { "widget": _vm.widget } }, [_c('el-row', { directives: [{ name: "show", rawName: "v-show", value: !_vm.widget.options.hidden, expression: "!widget.options.hidden" }], key: _vm.widget.id, ref: _vm.widget.id, staticClass: "grid-container", class: [_vm.customClass], attrs: { "gutter": _vm.widget.options.gutter } }, [_vm._l(_vm.widget.cols, function (colWidget, colIdx) { return [_c('grid-col-item', { key: colIdx, attrs: { "widget": colWidget, "parent-list": _vm.widget.cols, "index-of-parent-list": colIdx, "parent-widget": _vm.widget, "col-height": _vm.widget.options.colHeight }, scopedSlots: _vm._u([_vm._l(Object.keys(_vm.$scopedSlots), function (slot) { return { key: slot, fn: function (scope) { return [_vm._t(slot, null, null, scope)]; } }; })], null, true) })]; })], 2)], 1); }; var staticRenderFns = []; // CONCATENATED MODULE: ./src/components/form-render/container-item/grid-item.vue?vue&type=template&id=7f44c96e&scoped=true& // EXTERNAL MODULE: ./src/utils/emitter.js var emitter = __webpack_require__("c6e3"); // EXTERNAL MODULE: ./src/utils/i18n.js + 8 modules var i18n = __webpack_require__("79fa"); // EXTERNAL MODULE: ./src/components/form-render/refMixin.js var refMixin = __webpack_require__("d67f"); // EXTERNAL MODULE: ./src/components/form-render/container-item/container-item-wrapper.vue + 4 modules var container_item_wrapper = __webpack_require__("90c2"); // EXTERNAL MODULE: ./src/components/form-render/container-item/grid-col-item.vue + 4 modules var grid_col_item = __webpack_require__("a93f"); // EXTERNAL MODULE: ./src/components/form-render/container-item/containerItemMixin.js var containerItemMixin = __webpack_require__("34f0"); // CONCATENATED MODULE: ./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_thread-loader@2.1.3@thread-loader/dist/cjs.js!./node_modules/_babel-loader@8.2.5@babel-loader/lib!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.10.0@vue-loader/lib??vue-loader-options!./src/components/form-render/container-item/grid-item.vue?vue&type=script&lang=js& /* harmony default export */ var grid_itemvue_type_script_lang_js_ = ({ name: "grid-item", componentName: 'ContainerItem', mixins: [emitter["a" /* default */], i18n["b" /* default */], refMixin["a" /* default */], containerItemMixin["a" /* default */]], components: { ContainerItemWrapper: container_item_wrapper["default"], GridColItem: grid_col_item["default"] }, props: { widget: Object }, inject: ['refList', 'sfRefList', 'globalModel'], created() { this.initRefList(); }, mounted() {}, beforeDestroy() { this.unregisterFromRefList(); }, methods: {} }); // CONCATENATED MODULE: ./src/components/form-render/container-item/grid-item.vue?vue&type=script&lang=js& /* harmony default export */ var container_item_grid_itemvue_type_script_lang_js_ = (grid_itemvue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("0b56"); // CONCATENATED MODULE: ./src/components/form-render/container-item/grid-item.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( container_item_grid_itemvue_type_script_lang_js_, render, staticRenderFns, false, null, "7f44c96e", null ) /* harmony default export */ var grid_item = __webpack_exports__["default"] = (component.exports); /***/ }), /***/ "f805": /***/ (function(module, exports, __webpack_require__) { var fails = __webpack_require__("8637"); module.exports = !fails(function () { // eslint-disable-next-line es/no-function-prototype-bind -- safe var test = (function () { /* empty */ }).bind(); // eslint-disable-next-line no-prototype-builtins -- safe return typeof test != 'function' || test.hasOwnProperty('prototype'); }); /***/ }), /***/ "f893": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_card_widget_vue_vue_type_style_index_0_id_83793ff4_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("0cda"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_card_widget_vue_vue_type_style_index_0_id_83793ff4_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_card_widget_vue_vue_type_style_index_0_id_83793ff4_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "fad8": /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = __webpack_require__("aa81"); /** * Config-specific merge-function which creates a new config-object * by merging two configuration objects together. * * @param {Object} config1 * @param {Object} config2 * @returns {Object} New object resulting from merging config2 to config1 */ module.exports = function mergeConfig(config1, config2) { // eslint-disable-next-line no-param-reassign config2 = config2 || {}; var config = {}; var valueFromConfig2Keys = ['url', 'method', 'data']; var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy', 'params']; var defaultToConfig2Keys = [ 'baseURL', 'transformRequest', 'transformResponse', 'paramsSerializer', 'timeout', 'timeoutMessage', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName', 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress', 'decompress', 'maxContentLength', 'maxBodyLength', 'maxRedirects', 'transport', 'httpAgent', 'httpsAgent', 'cancelToken', 'socketPath', 'responseEncoding' ]; var directMergeKeys = ['validateStatus']; function getMergedValue(target, source) { if (utils.isPlainObject(target) && utils.isPlainObject(source)) { return utils.merge(target, source); } else if (utils.isPlainObject(source)) { return utils.merge({}, source); } else if (utils.isArray(source)) { return source.slice(); } return source; } function mergeDeepProperties(prop) { if (!utils.isUndefined(config2[prop])) { config[prop] = getMergedValue(config1[prop], config2[prop]); } else if (!utils.isUndefined(config1[prop])) { config[prop] = getMergedValue(undefined, config1[prop]); } } utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) { if (!utils.isUndefined(config2[prop])) { config[prop] = getMergedValue(undefined, config2[prop]); } }); utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties); utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) { if (!utils.isUndefined(config2[prop])) { config[prop] = getMergedValue(undefined, config2[prop]); } else if (!utils.isUndefined(config1[prop])) { config[prop] = getMergedValue(undefined, config1[prop]); } }); utils.forEach(directMergeKeys, function merge(prop) { if (prop in config2) { config[prop] = getMergedValue(config1[prop], config2[prop]); } else if (prop in config1) { config[prop] = getMergedValue(undefined, config1[prop]); } }); var axiosKeys = valueFromConfig2Keys .concat(mergeDeepPropertiesKeys) .concat(defaultToConfig2Keys) .concat(directMergeKeys); var otherKeys = Object .keys(config1) .concat(Object.keys(config2)) .filter(function filterAxiosKeys(key) { return axiosKeys.indexOf(key) === -1; }); utils.forEach(otherKeys, mergeDeepProperties); return config; }; /***/ }), /***/ "faf6": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_file_upload_widget_vue_vue_type_style_index_0_id_fd980ab6_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("5bf5"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_file_upload_widget_vue_vue_type_style_index_0_id_fd980ab6_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_file_upload_widget_vue_vue_type_style_index_0_id_fd980ab6_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "fb21": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_rich_editor_widget_vue_vue_type_style_index_0_id_753833ec_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("a46c"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_rich_editor_widget_vue_vue_type_style_index_0_id_753833ec_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_rich_editor_widget_vue_vue_type_style_index_0_id_753833ec_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "fba0": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_table_cell_item_vue_vue_type_style_index_0_id_79b5d9f8_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("5cfc"); /* harmony import */ var _node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_table_cell_item_vue_vue_type_style_index_0_id_79b5d9f8_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_0_9_0_mini_css_extract_plugin_dist_loader_js_ref_9_oneOf_1_0_node_modules_css_loader_3_6_0_css_loader_dist_cjs_js_ref_9_oneOf_1_1_node_modules_vue_loader_15_10_0_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_9_oneOf_1_2_node_modules_sass_loader_8_0_2_sass_loader_dist_cjs_js_ref_9_oneOf_1_3_node_modules_cache_loader_4_1_0_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_15_10_0_vue_loader_lib_index_js_vue_loader_options_table_cell_item_vue_vue_type_style_index_0_id_79b5d9f8_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* unused harmony reexport * */ /***/ }), /***/ "fea3": /***/ (function(module, exports, __webpack_require__) { var internalObjectKeys = __webpack_require__("d6b4"); var enumBugKeys = __webpack_require__("def7"); var hiddenKeys = enumBugKeys.concat('length', 'prototype'); // `Object.getOwnPropertyNames` method // https://tc39.es/ecma262/#sec-object.getownpropertynames // eslint-disable-next-line es/no-object-getownpropertynames -- safe exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { return internalObjectKeys(O, hiddenKeys); }; /***/ }) /******/ })["default"]; }); //# sourceMappingURL=VFormRender.umd.js.map