@jiess/core
Version:
基于javascript的配置式渲染库,同时支持vue2,vue3和react
125 lines (108 loc) • 30.2 kB
JavaScript
/*
* ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
* This devtool is neither made for production nor for readable output files.
* It uses "eval()" calls to create a separate source file in the browser devtools.
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
* or disable the default devtool with "devtool: false".
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
*/
/******/ var __webpack_modules__ = ({
/***/ "../common/enum/index.js":
/*!*******************************!*\
!*** ../common/enum/index.js ***!
\*******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Env: () => (/* binding */ Env),\n/* harmony export */ react: () => (/* binding */ react),\n/* harmony export */ vue2: () => (/* binding */ vue2),\n/* harmony export */ vue3: () => (/* binding */ vue3)\n/* harmony export */ });\nconst react = 'react';\nconst vue2 = 'vue2';\nconst vue3 = 'vue3';\nvar Env;\n(function (Env) {\n Env[\"React\"] = \"react\";\n Env[\"Vue2\"] = \"vue2\";\n Env[\"Vue3\"] = \"vue3\";\n})(Env || (Env = {}));\n\n//# sourceURL=webpack://jiess-core/../common/enum/index.js?");
/***/ }),
/***/ "../common/static.js":
/*!***************************!*\
!*** ../common/static.js ***!
\***************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ JIESS_COMPUTED: () => (/* binding */ JIESS_COMPUTED),\n/* harmony export */ JIESS_FRAGMENT: () => (/* binding */ JIESS_FRAGMENT),\n/* harmony export */ JIESS_IS: () => (/* binding */ JIESS_IS),\n/* harmony export */ JIESS_PARENT: () => (/* binding */ JIESS_PARENT),\n/* harmony export */ JIESS_REF: () => (/* binding */ JIESS_REF),\n/* harmony export */ JIESS_TAG: () => (/* binding */ JIESS_TAG),\n/* harmony export */ JIESS_TARGET: () => (/* binding */ JIESS_TARGET),\n/* harmony export */ JIESS_UPDATE: () => (/* binding */ JIESS_UPDATE),\n/* harmony export */ JIESS_VAL: () => (/* binding */ JIESS_VAL),\n/* harmony export */ NAME: () => (/* binding */ NAME),\n/* harmony export */ NOT_CLONES: () => (/* binding */ NOT_CLONES),\n/* harmony export */ NOT_CLONES_FIELDS: () => (/* binding */ NOT_CLONES_FIELDS)\n/* harmony export */ });\nconst NAME = 'JIESS_CONSTRUCTOR';\nconst JIESS_IS = 'isJiess';\nconst JIESS_TAG = 'THIS_IS_JIESS';\nconst JIESS_VAL = 'JIESS_INIT_VALUE';\nconst JIESS_REF = '_isJiessRef';\nconst JIESS_COMPUTED = '_isJiessComputed';\nconst JIESS_FRAGMENT = 'JiessFragment';\nconst JIESS_UPDATE = 'JiessForceUpdate';\nconst JIESS_TARGET = '_initialTarget';\nconst JIESS_PARENT = '_initialParent';\nconst NOT_CLONES = [NAME, '_isVue', '_uid', '_Ctor', '__v_isRef', '__v_isReactive', '$$typeof', '_store', {\n field: 'install',\n type: 'function'\n}];\nconst NOT_CLONES_FIELDS = ['is', 'component', '$exclude'];\n\n//# sourceURL=webpack://jiess-core/../common/static.js?");
/***/ }),
/***/ "../common/utils.js":
/*!**************************!*\
!*** ../common/utils.js ***!
\**************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ buildParam: () => (/* binding */ buildParam),\n/* harmony export */ check: () => (/* binding */ check),\n/* harmony export */ destoryRender: () => (/* binding */ destoryRender),\n/* harmony export */ filterChild: () => (/* binding */ filterChild),\n/* harmony export */ getMap: () => (/* binding */ getMap),\n/* harmony export */ hasProxy: () => (/* binding */ hasProxy),\n/* harmony export */ initNative: () => (/* binding */ initNative),\n/* harmony export */ initValue: () => (/* binding */ initValue),\n/* harmony export */ isJsRender: () => (/* binding */ isJsRender),\n/* harmony export */ isNativeMethod: () => (/* binding */ isNativeMethod),\n/* harmony export */ isNotClone: () => (/* binding */ isNotClone),\n/* harmony export */ isReactive: () => (/* binding */ isReactive),\n/* harmony export */ noProxy: () => (/* binding */ noProxy),\n/* harmony export */ parseJiessRender: () => (/* binding */ parseJiessRender),\n/* harmony export */ shallowCopy: () => (/* binding */ shallowCopy),\n/* harmony export */ throwErr: () => (/* binding */ throwErr),\n/* harmony export */ throwError: () => (/* binding */ throwError),\n/* harmony export */ validateProp: () => (/* binding */ validateProp)\n/* harmony export */ });\n/* harmony import */ var _jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jiess-utils/src/tools/index.js */ \"../jiess-utils/src/tools/index.js\");\n/* harmony import */ var _static_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./static.js */ \"../common/static.js\");\n\n\nconst throwErr = (type, msg) => {\n throw new Error(`${type} Error:${msg}`);\n};\nconst check = (obj, v, k = _static_js__WEBPACK_IMPORTED_MODULE_1__.NAME) => {\n if ((0,_jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__.$identify)(obj, 'object')) {\n return Object.is(obj[k], v);\n } else {\n return false;\n }\n};\nconst isNotClone = target => {\n return _static_js__WEBPACK_IMPORTED_MODULE_1__.NOT_CLONES.some(value => {\n if (typeof value === 'string') {\n return Reflect.has(target, value);\n } else {\n const {\n field,\n type\n } = value;\n if (Reflect.has(target, field)) return (0,_jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__.$identify)(target[field], type);\n }\n });\n};\nfunction throwError(data, type, callback = _jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__.$nfn, title = '数据类型') {\n if ((0,_jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__.$identify)(data, type)) {\n return callback();\n } else {\n throwErr(title, `须提供 ${type} 类型`);\n }\n}\nconst buildParam = info => {\n const param = {\n ...info\n };\n const def = param.default;\n delete param.default;\n return Object.assign(param, def);\n};\nfunction initMethod(target = {}, name = 'toString') {\n if (typeof target[name] === 'function') {\n if (typeof name === 'string') {\n const exp = new RegExp(name, 'g');\n return (target[name] + '').replace(exp, '');\n } else {\n return target[name] + '';\n }\n }\n}\nconst isNativeMethod = (() => {\n const tpl = initMethod();\n return (o, n) => initMethod(o, n) === tpl;\n})();\nconst shallowCopy = (data, isError) => {\n if (Array.isArray(data)) {\n return [...data];\n } else if ((0,_jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__.$identify)(data, 'object')) {\n return {\n ...data\n };\n }\n if (isError) {\n throwErr('shallowCopy', '须提供对象或数组');\n } else {\n return data;\n }\n};\nconst getMap = (map, obj, def = {}) => {\n if (map.has(obj)) {\n const fn = def;\n def = map.get(obj);\n if (typeof fn === 'function') fn(def);\n }\n return def;\n};\nfunction isJsRender(JR) {\n return check(JR, 'JsRender');\n}\nfunction parseJiessRender(data, callback) {\n if (isJsRender(data)) {\n callback(data);\n } else if (Array.isArray(data)) {\n data.forEach(cd => {\n if (isJsRender(cd)) callback(cd);\n });\n }\n}\nfunction destoryRender(children) {\n parseJiessRender(children, jsRender => {\n jsRender.destory();\n });\n}\nconst mapDisplay = new WeakMap();\nfunction filterChild(children) {\n let lastState = null;\n return children.filter(item => {\n if (isJsRender(item)) {\n const o = item;\n const {\n _resConfig,\n _resData\n } = o;\n if (_resConfig.$show !== undefined) {\n const style = _resData.style = {\n ..._resData.style\n };\n if (!mapDisplay.has(o)) mapDisplay.set(o, style.display);\n if (_resConfig.$show) {\n if (style.display === 'none') {\n const record = mapDisplay.get(o);\n if (record) {\n style.display = record;\n } else {\n delete style.display;\n }\n }\n } else {\n style.display = 'none';\n }\n }\n let {\n $if = true,\n $elseIf\n } = _resConfig;\n $if = initValue($if);\n $elseIf = initValue($elseIf);\n if ((0,_jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__.$isDef)($elseIf, true)) {\n if (typeof lastState === 'boolean') {\n const state = $elseIf && !lastState;\n if (state) lastState = true;\n return state;\n } else {\n throwErr('$elseIf', `须配合$if`);\n }\n } else if (_resConfig.hasOwnProperty('$if')) {\n lastState = !!$if;\n return $if;\n } else {\n lastState = null;\n return $if;\n }\n } else {\n return true;\n }\n });\n}\nfunction isReactive(o) {\n if (o && typeof o === 'object') {\n return !!o[_static_js__WEBPACK_IMPORTED_MODULE_1__.JIESS_TAG];\n } else {\n return false;\n }\n}\n;\nconst hasProxy = v => {\n if ((0,_jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__.$identify)(v, 'object')) {\n return Reflect.has(v, '$proxy');\n } else return false;\n};\nconst noProxy = data => {\n const {\n $proxy,\n field,\n done\n } = data;\n return done ? done($proxy) : field ? $proxy[field] : $proxy;\n};\nconst initValue = v => {\n if (hasProxy(v)) {\n const {\n $proxy,\n field = 'value'\n } = v;\n return $proxy[field];\n } else {\n return v;\n }\n};\nconst validateProp = function (data, propsFn, name = '') {\n if (propsFn) {\n let prefix = '';\n let result = {};\n if (name) prefix = `${name} 组件 `;\n throwError(propsFn, 'function', () => {\n let option = propsFn();\n throwError(option, 'object', () => {\n for (let key in option) {\n const v = option[key];\n let def = undefined;\n let required = false;\n let type = null;\n let isResponsive = false;\n let isRef = false;\n if (typeof v === 'string') {\n type = v;\n } else if (typeof v === 'object') {\n const o = v;\n type = o.type;\n def = o.default;\n isRef = !!o.isRef;\n required = !!o.required;\n isResponsive = !!o.isResponsive;\n }\n if (required && !data.hasOwnProperty(key)) throwErr(`${prefix}${key}`, '必须');\n const checkType = value => {\n if (value === undefined) return;\n if (typeof type === 'string' && !(0,_jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__.$identify)(value, type)) {\n throwErr(`${prefix}${key}`, `须提供 ${type} 类型`);\n }\n ;\n return value;\n };\n const checkRef = v => {\n return v && typeof v === 'object' && v[_static_js__WEBPACK_IMPORTED_MODULE_1__.JIESS_REF];\n };\n const dd = data.hasOwnProperty(key) ? data[key] : def;\n isResponsive && !isReactive(dd) && throwErr(`${prefix}${key}`, `须提供 Jiess 响应式数据`);\n if (checkRef(dd)) {\n checkType(dd.value);\n result[key] = dd;\n } else if (dd !== undefined && isRef) {\n throwErr(`${prefix}${key}`, '须提供 JiessRef 响应式数据');\n } else result[key] = checkType(dd);\n }\n }, `${prefix}Props 返回`);\n }, `${prefix}Props 定义`);\n return result;\n } else {\n return {\n ...data\n };\n }\n};\nconst initNative = (o, key) => {\n if (Array.isArray(o)) {\n return filterChild(o).map(initNative);\n } else if (isJsRender(o)) {\n return o.getNative(key);\n } else if ((0,_jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__.$isDef)(o)) return o;\n};\n\n//# sourceURL=webpack://jiess-core/../common/utils.js?");
/***/ }),
/***/ "../jiess-utils/src/tools/index.js":
/*!*****************************************!*\
!*** ../jiess-utils/src/tools/index.js ***!
\*****************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ $baseDebounce1: () => (/* binding */ $baseDebounce1),\n/* harmony export */ $baseDebounce2: () => (/* binding */ $baseDebounce2),\n/* harmony export */ $baseThrottle1: () => (/* binding */ $baseThrottle1),\n/* harmony export */ $baseThrottle2: () => (/* binding */ $baseThrottle2),\n/* harmony export */ $clone: () => (/* binding */ $clone),\n/* harmony export */ $copy: () => (/* binding */ $copy),\n/* harmony export */ $dateFormat: () => (/* binding */ $dateFormat),\n/* harmony export */ $debounce1: () => (/* binding */ $debounce1),\n/* harmony export */ $debounce2: () => (/* binding */ $debounce2),\n/* harmony export */ $diff: () => (/* binding */ $diff),\n/* harmony export */ $firstLowerCase: () => (/* binding */ $firstLowerCase),\n/* harmony export */ $firstUpperCase: () => (/* binding */ $firstUpperCase),\n/* harmony export */ $getCookie: () => (/* binding */ $getCookie),\n/* harmony export */ $getUUID: () => (/* binding */ $getUUID),\n/* harmony export */ $identify: () => (/* binding */ $identify),\n/* harmony export */ $initExecute: () => (/* binding */ $initExecute),\n/* harmony export */ $isDef: () => (/* binding */ $isDef),\n/* harmony export */ $isUndef: () => (/* binding */ $isUndef),\n/* harmony export */ $nfn: () => (/* binding */ $nfn),\n/* harmony export */ $querystring: () => (/* binding */ $querystring),\n/* harmony export */ $setCookie: () => (/* binding */ $setCookie),\n/* harmony export */ $throttle1: () => (/* binding */ $throttle1),\n/* harmony export */ $throttle2: () => (/* binding */ $throttle2),\n/* harmony export */ $timer: () => (/* binding */ $timer),\n/* harmony export */ $toString: () => (/* binding */ $toString),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _common_static_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/static.js */ \"../common/static.js\");\n/* harmony import */ var _common_utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/utils.js */ \"../common/utils.js\");\n\n\nfunction $deepEqual(obj1, obj2) {\n const keys1 = Object.keys(obj1);\n const keys2 = Object.keys(obj2);\n for (let k of keys1) {\n if (!keys2.includes(k)) return false;\n if (!$diff(obj1[k], obj2[k], false)) return false;\n }\n return true;\n}\nconst $diff = (a, b, isClone = true) => {\n if (Object.is(a, b)) return true;\n const typeA = Object.prototype.toString.call(a);\n const typeB = Object.prototype.toString.call(b);\n if (typeA !== typeB) return false;\n if (typeA === \"[object Date]\") {\n return a.getTime() === b.getTime();\n } else if (typeA === \"[object Promise]\") {\n return false;\n } else if (typeof a === \"function\") {\n return String(a) === String(b);\n } else if (a && typeof a === \"object\") {\n const keys1 = Object.keys(a);\n const keys2 = Object.keys(b);\n if (keys1.length === keys2.length) {\n let obj1 = a;\n let obj2 = b;\n if (isClone) {\n const arr1 = [];\n const arr2 = [];\n obj1 = $clone(a, v => {\n arr1.push(v);\n return arr1.length;\n });\n obj2 = $clone(b, v => {\n arr2.push(v);\n return arr2.length;\n });\n if (arr1.length === arr2.length) {\n if (arr1.every((d1, k) => Object.is(d1, arr2[k]))) {} else {\n return false;\n }\n } else {\n return false;\n }\n }\n return $deepEqual(obj1, obj2);\n }\n }\n return false;\n};\nfunction $firstUpperCase(str) {\n return str.slice(0, 1).toUpperCase() + str.slice(1);\n}\nfunction $firstLowerCase(str) {\n return str.slice(0, 1).toLowerCase() + str.slice(1);\n}\nconst $nfn = (..._) => {};\nconst $timer = (fn = $nfn, wait = 0) => {\n let t = setTimeout(() => {\n if (t !== null) clearTimeout(t);\n fn();\n }, wait);\n};\nconst $identify = function (val, type, state = true) {\n if (type === \"exp\") type = \"RegExp\";\n if (Array.isArray(type)) return type.some(t => $identify(val, t));\n if (state && !$identify(type, \"string\", false)) throw new Error(`${type} Error:须提供字符串`);\n type = $firstUpperCase(type);\n return Object.prototype.toString.call(val) === `[object ${type}]`;\n};\nfunction $copy(obj_new, obj_old) {\n for (let filed in obj_old) {\n let item = obj_old[filed];\n if (Array.isArray(item)) {\n obj_new[filed] = [];\n $copy(obj_new[filed], item);\n } else if ($identify(item, \"object\")) {\n obj_new[filed] = {};\n $copy(obj_new[filed], item);\n } else {\n obj_new[filed] = item;\n }\n }\n}\nconst $clone = (source, custom, seen = new WeakSet()) => {\n if ($identify(source, [\"array\", \"object\"])) {\n if (seen.has(source)) return custom?.(source, \"loop\");\n seen.add(source);\n if (Array.isArray(source)) {\n return source.map(item => $clone(item, custom, seen));\n } else if ((0,_common_utils_js__WEBPACK_IMPORTED_MODULE_1__.isNotClone)(source)) {\n return custom?.(source, \"filter\") || source;\n } else {\n const result = {};\n for (const key in source) {\n if (_common_static_js__WEBPACK_IMPORTED_MODULE_0__.NOT_CLONES_FIELDS.includes(key)) {\n result[key] = source[key];\n } else {\n if (Reflect.has(source, key)) {\n const dd = source[key];\n result[key] = $clone(dd, custom, seen);\n }\n }\n }\n return result;\n }\n } else {\n return source;\n }\n};\nconst $isUndef = (v, b) => {\n const checkArr = [null, undefined, NaN];\n if (b && v === \"\") return true;\n return checkArr.some(val => Object.is(val, v));\n};\nconst $isDef = (v, b) => !$isUndef(v, b);\nconst $getUUID = function (len = 6) {\n len = parseInt(len.toString(), 10);\n len = isNaN(len) ? 6 : len;\n var seed = \"0123456789abcdefghijklmnopqrstubwxyzABCEDFGHIJKLMNOPQRSTUVWXYZ\";\n var seedLen = seed.length - 1;\n var uuid = \"\";\n while (len--) {\n uuid += seed[Math.round(Math.random() * seedLen)];\n }\n return uuid;\n};\nconst $dateFormat = function (source, fmt) {\n let dd = new Date(source);\n let o = {\n \"M+\": dd.getMonth() + 1,\n \"d+\": dd.getDate(),\n \"h+\": dd.getHours(),\n \"H+\": dd.getHours(),\n \"m+\": dd.getMinutes(),\n \"s+\": dd.getSeconds(),\n \"q+\": Math.floor((dd.getMonth() + 3) / 3),\n S: dd.getMilliseconds()\n };\n const v = (/(y+)/.exec(fmt) || [])[1];\n if (v) fmt = fmt.replace(v, dd.getFullYear() + \"\");\n for (let k in o) {\n const s = o[k] + \"\";\n const v = (new RegExp(\"(\" + k + \")\").exec(fmt) || [])[1];\n if (v) fmt = fmt.replace(v, `00${s}`.slice(-v.length));\n }\n return fmt;\n};\nconst $toString = o => {\n let i = 0;\n let fns = {};\n let initTemplate = (k, v) => {\n if (Array.isArray(v)) {\n return v.map(i => initTemplate(k, i));\n } else if (typeof v === \"function\") {\n let f = `__${i++}__`;\n fns[f] = v.toString();\n if (fns[f].startsWith(k)) {\n fns[f] = fns[f].replace(k, \"function\");\n }\n return f;\n } else if ($identify(v, \"object\")) {\n if (v && typeof v === \"object\" && !Array.isArray(v)) {\n const {\n $model,\n $done,\n ...o\n } = v;\n if ($model === \"template\") {\n let f = `__${i++}__`;\n fns[f] = $done(o);\n return f;\n } else {\n return o;\n }\n } else {\n return v;\n }\n } else {\n return v;\n }\n };\n let s = JSON.stringify(o, (k, v) => k ? initTemplate(k, v) : v, 2);\n for (let k in fns) {\n s = s.replace(new RegExp(`\"${k}\"`), fns[k]);\n }\n return s;\n};\nconst $getCookie = function (name) {\n let reg = new RegExp(\"(^| )\" + name + \"=([^;]*)(;|$)\");\n let arr = document.cookie.match(reg);\n return arr ? decodeURIComponent(arr[2]) : null;\n};\nconst $setCookie = function (name, value, Days = 30) {\n let exp = new Date();\n exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);\n value = encodeURIComponent(value);\n document.cookie = `${name}=${value};expires=${exp.toUTCString()};path=/`;\n};\nconst $baseDebounce1 = (immediate = false) => {\n let timer;\n return function (callback, wait = 100) {\n if ($isDef(timer, true)) {\n clearTimeout(timer);\n } else if (immediate) {\n callback();\n }\n timer = setTimeout(callback, wait);\n };\n};\nconst $debounce1 = $baseDebounce1();\nconst $baseDebounce2 = () => {\n let lastTime = 0;\n return function (callback, wait = 100) {\n let currentTime = new Date().getTime();\n if (currentTime - lastTime > wait) callback();\n lastTime = currentTime;\n };\n};\nconst $debounce2 = $baseDebounce2();\nconst $baseThrottle1 = () => {\n let flag = true;\n return function (callback, wait = 100) {\n if (flag) {\n flag = false;\n setTimeout(() => {\n flag = true;\n callback();\n }, wait);\n }\n };\n};\nconst $throttle1 = $baseThrottle1();\nconst $baseThrottle2 = () => {\n let lastTime = 0;\n return function (callback, wait = 100) {\n let currentTime = new Date().getTime();\n if (currentTime - lastTime > wait) {\n lastTime = currentTime;\n callback();\n }\n };\n};\nconst $throttle2 = $baseThrottle2();\nconst $querystring = {\n initVal(value) {\n return [\"string\", \"number\"].includes(typeof value) ? value.toString() : \"\";\n },\n stringify(obj) {\n let arr = [];\n for (let key in obj) {\n const value = obj[key];\n if (Array.isArray(value)) {\n value.forEach(val => arr.push(`${key}=${this.initVal(val)}`));\n } else {\n arr.push(`${key}=${this.initVal(value)}`);\n }\n }\n return arr.join(\"&\");\n },\n parse(str) {\n const result = {};\n const pairs = str.split(\"&\");\n pairs.forEach(pair => {\n const [key, ...values] = pair.split(\"=\");\n const value = values.join(\"=\");\n if (key in result) {\n if (!Array.isArray(result[key])) {\n result[key] = [result[key]];\n }\n result[key].push(value);\n } else {\n result[key] = value;\n }\n });\n return result;\n }\n};\nconst $initExecute = function (ctx, ...args1) {\n return (func, args2 = [], def) => {\n if (typeof func === \"function\") {\n let dd = null;\n if (ctx) {\n dd = func.call(ctx, ...args1, ...args2);\n } else {\n dd = func(...args1, ...args2);\n }\n return dd === undefined ? def : dd;\n } else {\n return def === undefined ? func : def;\n }\n };\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({\n $nfn,\n $diff,\n $copy,\n $isDef,\n $timer,\n $clone,\n $isUndef,\n $getUUID,\n $identify,\n $toString,\n $getCookie,\n $setCookie,\n $dateFormat,\n $debounce1,\n $debounce2,\n $throttle1,\n $throttle2,\n $initExecute,\n $baseDebounce1,\n $baseDebounce2,\n $baseThrottle1,\n $baseThrottle2,\n $querystring,\n $firstUpperCase,\n $firstLowerCase\n});\n\n//# sourceURL=webpack://jiess-core/../jiess-utils/src/tools/index.js?");
/***/ }),
/***/ "./src/env/vue3/index.js":
/*!*******************************!*\
!*** ./src/env/vue3/index.js ***!
\*******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ JiessEnv)\n/* harmony export */ });\n/* harmony import */ var _jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../jiess-utils/src/tools/index.js */ \"../jiess-utils/src/tools/index.js\");\n/* harmony import */ var _common_enum_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../common/enum/index.js */ \"../common/enum/index.js\");\n/* harmony import */ var _common_static_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../common/static.js */ \"../common/static.js\");\n\n\n\nconst env = _common_enum_index_js__WEBPACK_IMPORTED_MODULE_1__.vue3;\nclass JiessEnv {\n jiess;\n env = env;\n constructor(jiess, cbCpt) {\n this.jiess = jiess;\n this.initRender();\n this.env = jiess.$env = env;\n jiess.JiessComponent = props => {\n const {\n is,\n setup,\n children,\n ...attrs\n } = props;\n const param = {\n is,\n setup,\n jiessEnv: this\n };\n return this.createElement(cbCpt(param).start(attrs, children));\n };\n }\n initRender() {\n const {\n $render\n } = this.jiess;\n if (typeof $render === 'function') {\n this.jiess.h = (...args) => {\n return $render.call(this, ...args);\n };\n }\n }\n createElement(is, param, children) {\n const {\n useDirectives,\n ...attrs\n } = param || {};\n const {\n withDirectives,\n h\n } = this.jiess;\n if (typeof useDirectives === 'function') {\n return withDirectives(h(is, attrs, children), useDirectives());\n } else {\n return h(is, attrs, children);\n }\n }\n createVNode({\n key\n }, callback) {\n const {\n NativeComponent\n } = callback(this);\n return this.createElement(NativeComponent, {\n key\n });\n }\n component(that, cycleCallback) {\n let initCycle = _jiess_utils_src_tools_index_js__WEBPACK_IMPORTED_MODULE_0__.$nfn;\n return {\n inheritAttrs: true,\n data: () => ({\n [_common_static_js__WEBPACK_IMPORTED_MODULE_2__.JIESS_UPDATE]: false\n }),\n created() {\n const frameCtx = this;\n that.frame = frameCtx;\n that.frameProps = frameCtx.$props;\n initCycle = cycleCallback();\n },\n beforeMount() {\n initCycle('beforeMount');\n },\n mounted() {\n initCycle('mounted');\n },\n beforeUpdate() {\n initCycle('beforeUpdate');\n },\n updated() {\n initCycle('updated');\n },\n beforeUnmount() {\n initCycle('beforeUnmount');\n },\n render() {\n this[_common_static_js__WEBPACK_IMPORTED_MODULE_2__.JIESS_UPDATE];\n return that.ctx._buildVNodeTree();\n },\n methods: {\n forceUpdate() {\n this[_common_static_js__WEBPACK_IMPORTED_MODULE_2__.JIESS_UPDATE] = !this[_common_static_js__WEBPACK_IMPORTED_MODULE_2__.JIESS_UPDATE];\n }\n }\n };\n }\n}\n\n//# sourceURL=webpack://jiess-core/./src/env/vue3/index.js?");
/***/ })
/******/ });
/************************************************************************/
/******/ // The module cache
/******/ var __webpack_module_cache__ = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ var cachedModule = __webpack_module_cache__[moduleId];
/******/ if (cachedModule !== undefined) {
/******/ return cachedModule.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/define property getters */
/******/ (() => {
/******/ // define getter functions for harmony exports
/******/ __webpack_require__.d = (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 */
/******/ (() => {
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ })();
/******/
/******/ /* webpack/runtime/make namespace object */
/******/ (() => {
/******/ // define __esModule on exports
/******/ __webpack_require__.r = (exports) => {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/ })();
/******/
/************************************************************************/
/******/
/******/ // startup
/******/ // Load entry module and return exports
/******/ // This entry module can't be inlined because the eval devtool is used.
/******/ var __webpack_exports__ = __webpack_require__("./src/env/vue3/index.js");
/******/ var __webpack_exports__default = __webpack_exports__["default"]
/******/ export { __webpack_exports__default as default };
/******/