diff --git a/packages/hap-compiler/src/template/validator.js b/packages/hap-compiler/src/template/validator.js index 6100bdad..cc49f0c1 100644 --- a/packages/hap-compiler/src/template/validator.js +++ b/packages/hap-compiler/src/template/validator.js @@ -2148,5 +2148,6 @@ export default { isEmptyElement, isNotTextContentAtomic, isExpr: exp.isExpr, - parseText: exp.parseText + parseText: exp.parseText, + exp: exp } diff --git a/packages/hap-packager/src/post-handler/js-card-post.js b/packages/hap-packager/src/post-handler/js-card-post.js index fa1e3ff3..4c105204 100644 --- a/packages/hap-packager/src/post-handler/js-card-post.js +++ b/packages/hap-packager/src/post-handler/js-card-post.js @@ -2,17 +2,7 @@ * Copyright (c) 2024-present, the hapjs-platform Project Contributors * SPDX-License-Identifier: Apache-2.0 */ -import { - getExprType, - isFunctionStr, - isObject, - isConstObjOrArray, - isSimpleArr, - isSimplePath, - EXPR_TYPE -} from './utils' -import { templater } from '@hap-toolkit/compiler' -const { validator } = templater +import { getExprType, isFunctionStr, isObject, EXPR_TYPE, getNewJsCardExprRes } from './utils' const CARD_ENTRY = '#entry' const TYPE_IMPORT = 'import' @@ -102,7 +92,7 @@ function markIf(template) { const exprType = getExprType(template.shownRaw) if (exprType === EXPR_TYPE.CONST_IN_EXPRESSION || exprType === EXPR_TYPE.EXPRESSION) { - const exprRes = getExprRes(template.shownRaw, template.shown) + const exprRes = getNewJsCardExprRes(template.shownRaw, template.shown) if (exprType === EXPR_TYPE.EXPRESSION) { template['$shown'] = exprRes delete template.shown @@ -119,7 +109,7 @@ function markIs(template) { const exprType = getExprType(template.isRaw) if (exprType === EXPR_TYPE.CONST_IN_EXPRESSION || exprType === EXPR_TYPE.EXPRESSION) { - const exprRes = getExprRes(template.isRaw, template.is) + const exprRes = getNewJsCardExprRes(template.isRaw, template.is) if (exprType === EXPR_TYPE.EXPRESSION) { template['$is'] = exprRes delete template.is @@ -136,7 +126,7 @@ function markId(template) { const exprType = getExprType(template.idRaw) if (exprType === EXPR_TYPE.CONST_IN_EXPRESSION || exprType === EXPR_TYPE.EXPRESSION) { - const exprRes = getExprRes(template.idRaw, template.id) + const exprRes = getNewJsCardExprRes(template.idRaw, template.id) if (exprType === EXPR_TYPE.EXPRESSION) { template['$id'] = exprRes delete template.id @@ -172,7 +162,7 @@ function markFor(template) { */ const exprType = getExprType(template.repeatRaw.expRaw) if (exprType === EXPR_TYPE.CONST_IN_EXPRESSION || exprType === EXPR_TYPE.EXPRESSION) { - const exprRes = getExprRes(template.repeatRaw.expRaw, template.repeat.exp) + const exprRes = getNewJsCardExprRes(template.repeatRaw.expRaw, template.repeat.exp) if (exprType === EXPR_TYPE.EXPRESSION) { template.repeat['$exp'] = exprRes delete template.repeat.exp @@ -187,7 +177,7 @@ function markFor(template) { */ const exprType = getExprType(template.repeatRaw) if (exprType === EXPR_TYPE.CONST_IN_EXPRESSION || exprType === EXPR_TYPE.EXPRESSION) { - const exprRes = getExprRes(template.repeatRaw, template.repeat) + const exprRes = getNewJsCardExprRes(template.repeatRaw, template.repeat) if (exprType === EXPR_TYPE.EXPRESSION) { template['$repeat'] = exprRes delete template.repeat @@ -209,7 +199,7 @@ function markStyle(template) { Object.keys(style).forEach((key) => { const exprType = getExprType(styleRaw[key]) if (exprType === EXPR_TYPE.CONST_IN_EXPRESSION || exprType === EXPR_TYPE.EXPRESSION) { - const exprRes = getExprRes(styleRaw[key], style[key]) + const exprRes = getNewJsCardExprRes(styleRaw[key], style[key]) if (exprType === EXPR_TYPE.EXPRESSION) { template.style['$' + key] = exprRes delete template.style[key] @@ -222,7 +212,7 @@ function markStyle(template) { } else { const exprType = getExprType(styleRaw) if (exprType === EXPR_TYPE.CONST_IN_EXPRESSION || exprType === EXPR_TYPE.EXPRESSION) { - const exprRes = getExprRes(styleRaw, template.style) + const exprRes = getNewJsCardExprRes(styleRaw, template.style) if (exprType === EXPR_TYPE.EXPRESSION) { template['$style'] = exprRes delete template.style @@ -240,7 +230,7 @@ function markClass(template) { const exprType = getExprType(template.classListRaw) if (exprType === EXPR_TYPE.CONST_IN_EXPRESSION || exprType === EXPR_TYPE.EXPRESSION) { - const exprRes = getExprRes(template.classListRaw, template.classList) + const exprRes = getNewJsCardExprRes(template.classListRaw, template.classList) if (exprType === EXPR_TYPE.EXPRESSION) { template['$class'] = exprRes template['$classList'] = exprRes @@ -278,7 +268,7 @@ function markAttr(template) { if (attrValueRaw !== undefined) { const exprType = getExprType(attrValueRaw) if (exprType === EXPR_TYPE.CONST_IN_EXPRESSION || exprType === EXPR_TYPE.EXPRESSION) { - const exprRes = getExprRes(attrValueRaw, attr[attrKey]) + const exprRes = getNewJsCardExprRes(attrValueRaw, attr[attrKey]) if (exprType === EXPR_TYPE.EXPRESSION) { attr['$' + attrKey] = exprRes delete attr[attrKey] @@ -293,26 +283,6 @@ function markAttr(template) { } } -function getExprRes(exprRaw, expr) { - const tokens = validator.parseText(exprRaw.trim()) - if (tokens.length > 1) { - return expr - } - - const parsed = tokens[0].value - if (isConstObjOrArray(parsed)) { - // 简单表达式 {{ [1,2,3] }}、{{ {a: 1} }} - // eslint-disable-next-line no-eval - return eval(`(${parsed})`) - } else if (isSimplePath(parsed) && isSimpleArr(parsed)) { - // 简单表达式 {{name}}、{{title.name}}、{{title['name']}}、{{title[0]}} - return parsed // {{ name }} -> name - } else { - // 复杂表达式,返回function形式的表达式结果 - return expr // {{a + b}} -> function () { return this.a + this.b } - } -} - export function postHandleJSCardRes(JsCardRes) { const uxList = Object.keys(JsCardRes) diff --git a/packages/hap-packager/src/post-handler/lite-card-post.js b/packages/hap-packager/src/post-handler/lite-card-post.js index 959da6b1..f786ae6c 100644 --- a/packages/hap-packager/src/post-handler/lite-card-post.js +++ b/packages/hap-packager/src/post-handler/lite-card-post.js @@ -4,7 +4,14 @@ */ import { templateValueToCardCode } from '@aiot-toolkit/card-expression' -import { isExpr, isObject, isConstObjOrArray, isSimpleArr, isSimplePath } from './utils' +import { + isExpr, + isObject, + isConstObjOrArray, + isSimpleArr, + isSimplePath, + getNewJsCardExprRes +} from './utils' import { templater } from '@hap-toolkit/compiler' const { validator } = templater @@ -44,9 +51,11 @@ function postHandleActions(actions) { function markType(actions) { if (isExpr(actions.type)) { - let { rawExpr, prefixExpr } = getPrefixExpr(actions.type) + const expContent = actions.type + let { prefixExpr } = getPrefixExpr(expContent) delete actions.type - actions['$type'] = rawExpr + const funcStr = validator.exp(expContent, true, false, true) + actions['$type'] = getNewJsCardExprRes(expContent, funcStr) actions['#type'] = prefixExpr } } @@ -56,9 +65,11 @@ function markUrl(actions) { // 如为数组,则遍历数组进行表达式处理 if (typeof actions.url === 'string') { if (isExpr(actions.url)) { - let { rawExpr, prefixExpr } = getPrefixExpr(actions.url) + const expContent = actions.url + let { prefixExpr } = getPrefixExpr(expContent) delete actions.url - actions['$url'] = rawExpr + const funcStr = validator.exp(expContent, true, false, true) + actions['$url'] = getNewJsCardExprRes(expContent, funcStr) actions['#url'] = prefixExpr } } else if (Array.isArray(actions.url)) { @@ -83,16 +94,18 @@ function markUrl(actions) { if (hasBinding) { delete actions.url - actions['$url'] = rawUrlList + // actions['$url'] url 是数组的写法,手表标准上不支持 actions['#url'] = prefixUrlList } } } function markMethod(actions) { if (isExpr(actions.method)) { - let { rawExpr, prefixExpr } = getPrefixExpr(actions.method) + const expContent = actions.method + let { prefixExpr } = getPrefixExpr(expContent) delete actions.method - actions['$method'] = rawExpr + const funcStr = validator.exp(expContent, true, false, true) + actions['$method'] = getNewJsCardExprRes(expContent, funcStr) actions['#method'] = prefixExpr } } @@ -104,9 +117,10 @@ function markParams(actions) { Object.keys(actions.params).forEach((key) => { const value = actions.params[key] if (isExpr(value)) { - let { rawExpr, prefixExpr } = getPrefixExpr(value) + let { prefixExpr } = getPrefixExpr(value) delete actions.params[key] - actions.params['$' + key] = rawExpr + const funcStr = validator.exp(value, true, false, true) + actions.params['$' + key] = getNewJsCardExprRes(value, funcStr) actions.params['#' + key] = prefixExpr } }) @@ -175,9 +189,11 @@ function markIf(template) { if (!template.shown) return if (isExpr(template.shown)) { - let { rawExpr, prefixExpr } = getPrefixExpr(template.shown) + const expContent = template.shown + let { prefixExpr } = getPrefixExpr(expContent) delete template.shown - template['$shown'] = rawExpr + const funcStr = validator.exp(expContent, true, false, true) + template['$shown'] = getNewJsCardExprRes(expContent, funcStr) template['#shown'] = prefixExpr } template.kind = markKind(template.kind, ENUM_KIND_TYPE.FRAGMENT.kind) @@ -187,9 +203,11 @@ function markIs(template) { if (!template.is) return if (isExpr(template.is)) { - let { rawExpr, prefixExpr } = getPrefixExpr(template.is) + const expContent = template.is + let { prefixExpr } = getPrefixExpr(expContent) delete template.is - template['$is'] = rawExpr + const funcStr = validator.exp(expContent, true, false, true) + template['$is'] = getNewJsCardExprRes(expContent, funcStr) template['#is'] = prefixExpr template.kind = markKind(template.kind, ENUM_KIND_TYPE.ELEMENT.kind) } @@ -199,9 +217,11 @@ function markId(template) { if (!template.id) return if (isExpr(template.id)) { - let { rawExpr, prefixExpr } = getPrefixExpr(template.id) + const expContent = template.id + let { prefixExpr } = getPrefixExpr(expContent) delete template.id - template['$id'] = rawExpr + const funcStr = validator.exp(expContent, true, false, true) + template['$id'] = getNewJsCardExprRes(expContent, funcStr) template['#id'] = prefixExpr } // 节点有id属性,标记为kind 为 1 @@ -232,9 +252,11 @@ function markFor(template) { "value": "item" }, */ - let { rawExpr, prefixExpr } = getPrefixExpr(template.repeat.exp) + const expContent = template.repeat.exp + let { prefixExpr } = getPrefixExpr(expContent) delete template.repeat.exp - template.repeat['$exp'] = rawExpr + const funcStr = validator.exp(expContent, true, false, true) + template.repeat['$exp'] = getNewJsCardExprRes(expContent, funcStr) template.repeat['#exp'] = prefixExpr } } else if (isExpr(template.repeat)) { @@ -243,9 +265,11 @@ function markFor(template) { "$repeat": "ItemList", "#repeat": ["$", "ItemList"], */ - let { rawExpr, prefixExpr } = getPrefixExpr(template.repeat) + const expContent = template.repeat + let { prefixExpr } = getPrefixExpr(expContent) delete template.repeat - template['$repeat'] = rawExpr + const funcStr = validator.exp(expContent, true, false, true) + template['$repeat'] = getNewJsCardExprRes(expContent, funcStr) template['#repeat'] = prefixExpr } template.kind = markKind(template.kind, ENUM_KIND_TYPE.FRAGMENT.kind) @@ -259,18 +283,21 @@ function markStyle(template) { Object.keys(style).forEach((key) => { const value = style[key] if (isExpr(value)) { - let { rawExpr, prefixExpr } = getPrefixExpr(value) + let { prefixExpr } = getPrefixExpr(value) delete template.style[key] - template.style['$' + key] = rawExpr + const funcStr = validator.exp(value, true, false, true) + template.style['$' + key] = getNewJsCardExprRes(value, funcStr) template.style['#' + key] = prefixExpr template.kind = markKind(template.kind, ENUM_KIND_TYPE.ELEMENT.kind) } }) } else { if (isExpr(style)) { - let { rawExpr, prefixExpr } = getPrefixExpr(style) + const expContent = style + let { prefixExpr } = getPrefixExpr(expContent) delete template.style - template['$style'] = rawExpr + const funcStr = validator.exp(expContent, true, false, true) + template['$style'] = getNewJsCardExprRes(expContent, funcStr) template['#style'] = prefixExpr template.kind = markKind(template.kind, ENUM_KIND_TYPE.ELEMENT.kind) } @@ -281,9 +308,11 @@ function markClass(template) { if (!template.class || template.class.length === 0) return if (isExpr(template.class)) { - let { rawExpr, prefixExpr } = getPrefixExpr(template.class) + const expContent = template.class + let { prefixExpr } = getPrefixExpr(expContent) delete template.class - template['$class'] = rawExpr + const funcStr = validator.exp(expContent, true, false, true) + template['$class'] = getNewJsCardExprRes(expContent, funcStr) template['#class'] = prefixExpr template.kind = markKind(template.kind, ENUM_KIND_TYPE.ELEMENT.kind) } @@ -324,9 +353,10 @@ function markAttr(template) { Object.keys(attr).forEach((attrKey) => { const attrValue = attr[attrKey] if (isExpr(attrValue)) { - let { rawExpr, prefixExpr } = getPrefixExpr(attrValue) + let { prefixExpr } = getPrefixExpr(attrValue) delete attr[attrKey] - attr['$' + attrKey] = rawExpr + const funcStr = validator.exp(attrValue, true, false, true) + attr['$' + attrKey] = getNewJsCardExprRes(attrValue, funcStr) attr['#' + attrKey] = prefixExpr template.kind = markKind(template.kind, ENUM_KIND_TYPE.ELEMENT.kind) } diff --git a/packages/hap-packager/src/post-handler/utils.js b/packages/hap-packager/src/post-handler/utils.js index c88a47af..d875a82a 100644 --- a/packages/hap-packager/src/post-handler/utils.js +++ b/packages/hap-packager/src/post-handler/utils.js @@ -86,3 +86,23 @@ export function isSimplePath(exp) { exp.slice(0, 5) !== 'Math.' ) } + +export function getNewJsCardExprRes(exprRaw, expr) { + const tokens = validator.parseText(exprRaw.trim()) + if (tokens.length > 1) { + return expr + } + + const parsed = tokens[0].value + if (isConstObjOrArray(parsed)) { + // 简单表达式 {{ [1,2,3] }}、{{ {a: 1} }} + // eslint-disable-next-line no-eval + return eval(`(${parsed})`) + } else if (isSimplePath(parsed) && isSimpleArr(parsed)) { + // 简单表达式 {{name}}、{{title.name}}、{{title['name']}}、{{title[0]}} + return parsed // {{ name }} -> name + } else { + // 复杂表达式,返回function形式的表达式结果 + return expr // {{a + b}} -> function () { return this.a + this.b } + } +} diff --git a/packages/hap-toolkit/__tests__/__snapshots__/splitChunks.test.js.snap b/packages/hap-toolkit/__tests__/__snapshots__/splitChunks.test.js.snap index 018e800d..d461b1f9 100644 --- a/packages/hap-toolkit/__tests__/__snapshots__/splitChunks.test.js.snap +++ b/packages/hap-toolkit/__tests__/__snapshots__/splitChunks.test.js.snap @@ -668,22 +668,22 @@ exports[`split chunks on a project release results include split chunks for [SMA exports[`split chunks on a project release results include split chunks for [SMART]: /build/Demo/index.js 1`] = `"!function(){var e=function(){return(()=>{var e=Object.getPrototypeOf(global)||global;e.chunkFileMap=e.chunkFileMap||{999:\\"Common/moduleA.js\\",999:\\"Common/compB.js\\",999:\\"Common/compA.js\\",999:\\"Common/moduleB.js\\"};var t,o={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999),o(999);t.default={};const a=t.default||e.exports,n=[\\"public\\",\\"protected\\",\\"private\\"];if(a.data&&n.some((function(e){return a[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+n.join(\\",\\")+'\\"同时存在,请使用private替换data名称');a.data||(a.data={},a._descriptor={},n.forEach((function(e){const t=typeof a[e];if(\\"object\\"===t){a.data=Object.assign(a.data,a[e]);for(const t in a[e])a._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o,r,a,n,p)=>{o(999),o(999);var i=o(999);r(\\"@app-component/index\\",[],(function(e,t,r){i(r,t,e),t.__esModule&&t.default&&(r.exports=t.default),r.exports.template=o(999)})),a(\\"@app-component/index\\",{packagerVersion:\\"\\"})}},r={};function a(e){var t=r[e];if(void 0!==t)return t.exports;var n=r[e]={exports:{}};return o[e].call(n.exports,n,n.exports,a,$app_define$,$app_bootstrap$,$app_require$,$app_define_wrap$),n.exports}a.m=o,t=[],a.O=(o,r,n,p)=>{if(!r){var i=1/0;for(l=0;l=p)&&Object.keys(a.O).every((e=>a.O[e](r[c])))?r.splice(c--,1):(s=!1,$app_evaluate$(\`\${e.chunkFileMap[r[c]]}\`),p0&&t[l-1][2]>p;l--)t[l]=t[l-1];t[l]=[r,n,p]},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var t={999:0};a.O.j=e=>0===t[e];var o=(e,o)=>{var r,n,[p,i,s]=o,c=0;if(p.some((e=>0!==t[e]))){for(r in i)a.o(i,r)&&(a.m[r]=i[r]);if(s)var u=s(a)}for(e&&e(o);ca(999)));n=a.O(n)})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; -exports[`split chunks on a project release results include split chunks for [SMART]: /build/DemoDetail/index.js 1`] = `"!function(){var e=function(){return(()=>{var e=Object.getPrototypeOf(global)||global;e.chunkFileMap=e.chunkFileMap||{999:\\"Common/moduleA.js\\",999:\\"Common/compB.js\\",999:\\"Common/compA.js\\",999:\\"Common/moduleB.js\\"};var t,o={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999);var a={onMenuPress(){this.$app.$def.showMenu()}};t.default=a;const n=t.default||e.exports,p=[\\"public\\",\\"protected\\",\\"private\\"];if(n.data&&p.some((function(e){return n[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+p.join(\\",\\")+'\\"同时存在,请使用private替换data名称');n.data||(n.data={},n._descriptor={},p.forEach((function(e){const t=typeof n[e];if(\\"object\\"===t){n.data=Object.assign(n.data,n[e]);for(const t in n[e])n._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o,r,a,n,p)=>{o(999);var i=o(999);r(\\"@app-component/index\\",[],(function(e,t,r){i(r,t,e),t.__esModule&&t.default&&(r.exports=t.default),r.exports.template=o(999)})),a(\\"@app-component/index\\",{packagerVersion:\\"\\"})}},r={};function a(e){var t=r[e];if(void 0!==t)return t.exports;var n=r[e]={exports:{}};return o[e].call(n.exports,n,n.exports,a,$app_define$,$app_bootstrap$,$app_require$,$app_define_wrap$),n.exports}a.m=o,t=[],a.O=(o,r,n,p)=>{if(!r){var i=1/0;for(l=0;l=p)&&Object.keys(a.O).every((e=>a.O[e](r[u])))?r.splice(u--,1):(s=!1,$app_evaluate$(\`\${e.chunkFileMap[r[u]]}\`),p0&&t[l-1][2]>p;l--)t[l]=t[l-1];t[l]=[r,n,p]},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var t={999:0};a.O.j=e=>0===t[e];var o=(e,o)=>{var r,n,[p,i,s]=o,u=0;if(p.some((e=>0!==t[e]))){for(r in i)a.o(i,r)&&(a.m[r]=i[r]);if(s)var c=s(a)}for(e&&e(o);ua(999)));n=a.O(n)})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; +exports[`split chunks on a project release results include split chunks for [SMART]: /build/DemoDetail/index.js 1`] = `"!function(){var e=function(){return(()=>{var e=Object.getPrototypeOf(global)||global;e.chunkFileMap=e.chunkFileMap||{999:\\"Common/moduleA.js\\",999:\\"Common/compB.js\\",999:\\"Common/compA.js\\",999:\\"Common/moduleB.js\\"};var o,t={999:(e,o,t)=>{e.exports=function(e,o,r){\\"use strict\\";Object.defineProperty(o,\\"__esModule\\",{value:!0}),o.default=void 0;t(999);var a={onMenuPress(){this.$app.$def.showMenu()}};o.default=a;const n=o.default||e.exports,p=[\\"public\\",\\"protected\\",\\"private\\"];if(n.data&&p.some((function(e){return n[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+p.join(\\",\\")+'\\"同时存在,请使用private替换data名称');n.data||(n.data={},n._descriptor={},p.forEach((function(e){const o=typeof n[e];if(\\"object\\"===o){n.data=Object.assign(n.data,n[e]);for(const o in n[e])n._descriptor[o]={access:e}}else\\"function\\"===o&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,o,t,r,a,n,p)=>{t(999);var i=t(999);r(\\"@app-component/index\\",[],(function(e,o,r){i(r,o,e),o.__esModule&&o.default&&(r.exports=o.default),r.exports.template=t(999)})),a(\\"@app-component/index\\",{packagerVersion:\\"\\"})}},r={};function a(e){var o=r[e];if(void 0!==o)return o.exports;var n=r[e]={exports:{}};return t[e].call(n.exports,n,n.exports,a,$app_define$,$app_bootstrap$,$app_require$,$app_define_wrap$),n.exports}a.m=t,o=[],a.O=(t,r,n,p)=>{if(!r){var i=1/0;for(l=0;l=p)&&Object.keys(a.O).every((e=>a.O[e](r[u])))?r.splice(u--,1):(s=!1,$app_evaluate$(\`\${e.chunkFileMap[r[u]]}\`),p0&&o[l-1][2]>p;l--)o[l]=o[l-1];o[l]=[r,n,p]},a.o=(e,o)=>Object.prototype.hasOwnProperty.call(e,o),(()=>{var o={999:0};a.O.j=e=>0===o[e];var t=(e,t)=>{var r,n,[p,i,s]=t,u=0;if(p.some((e=>0!==o[e]))){for(r in i)a.o(i,r)&&(a.m[r]=i[r]);if(s)var c=s(a)}for(e&&e(t);ua(999)));n=a.O(n)})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; exports[`split chunks on a project release results include split chunks for [SMART]: /build/app.js 1`] = `"!function(){var e=e||function(){},o=function(){return(()=>{var o=Object.getPrototypeOf(global)||global;o.chunkFileMap=o.chunkFileMap||{999:\\"Common/moduleA.js\\",999:\\"Common/compB.js\\",999:\\"Common/compA.js\\",999:\\"Common/moduleB.js\\"};var t,n={999:(e,o,t,n,r,a,i)=>{var p={},s=t(999);n(\\"@app-application/app\\",[],(function(e,o,n){s(n,o,e),o.__esModule&&o.default&&(n.exports=o.default),n.exports.manifest=t(999),n.exports.style={list:[p]}})),r(\\"@app-application/app\\",{packagerVersion:\\"\\"})},999:(e,o,t)=>{e.exports=function(e,o,n){\\"use strict\\";t(999)}},999:e=>{\\"use strict\\";e.exports=JSON.parse('{\\"package\\":\\"com.application.demo\\",\\"name\\":\\"lewis-demo\\",\\"versionName\\":\\"1.0.0\\",\\"versionCode\\":\\"1\\",\\"minPlatformVersion\\":1070,\\"icon\\":\\"/Common/logo.png\\",\\"features\\":[{\\"name\\":\\"system.prompt\\"},{\\"name\\":\\"system.router\\"},{\\"name\\":\\"system.shortcut\\"}],\\"permissions\\":[{\\"origin\\":\\"*\\"}],\\"config\\":{\\"logLevel\\":\\"trace\\"},\\"router\\":{\\"entry\\":\\"Demo\\",\\"pages\\":{\\"Demo\\":{\\"component\\":\\"index\\"},\\"DemoDetail\\":{\\"component\\":\\"index\\"},\\"About\\":{\\"component\\":\\"index\\"}}},\\"display\\":{\\"titleBarBackgroundColor\\":\\"#f2f2f2\\",\\"titleBarTextColor\\":\\"#414141\\",\\"menu\\":true,\\"pages\\":{\\"Demo\\":{\\"titleBarText\\":\\"示例页\\",\\"menu\\":false},\\"DemoDetail\\":{\\"titleBarText\\":\\"详情页\\"},\\"About\\":{\\"menu\\":false}}}}')}},r={};function a(o){var t=r[o];if(void 0!==t)return t.exports;var i=r[o]={exports:{}};return n[o].call(i.exports,i,i.exports,a,$app_define$,$app_bootstrap$,$app_require$,e),i.exports}a.m=n,t=[],a.O=(e,n,r,i)=>{if(!n){var p=1/0;for(u=0;u=i)&&Object.keys(a.O).every((e=>a.O[e](n[m])))?n.splice(m--,1):(s=!1,$app_evaluate$(\`\${o.chunkFileMap[n[m]]}\`),i0&&t[u-1][2]>i;u--)t[u]=t[u-1];t[u]=[n,r,i]},a.o=(e,o)=>Object.prototype.hasOwnProperty.call(e,o),(()=>{var e={999:0};a.O.j=o=>0===e[o];var t=(o,t)=>{var n,r,[i,p,s]=t,m=0;if(i.some((o=>0!==e[o]))){for(n in p)a.o(p,n)&&(a.m[n]=p[n]);if(s)var l=s(a)}for(o&&o(t);ma(999)));i=a.O(i)})()};if(\\"undefined\\"==typeof window)return o();window.createAppHandler=o,global.manifest={package:\\"com.application.demo\\",name:\\"lewis-demo\\",versionName:\\"1.0.0\\",versionCode:\\"1\\",minPlatformVersion:1070,icon:\\"/Common/logo.png\\",features:[{name:\\"system.prompt\\"},{name:\\"system.router\\"},{name:\\"system.shortcut\\"}],permissions:[{origin:\\"*\\"}],config:{logLevel:\\"trace\\"},router:{entry:\\"Demo\\",pages:{Demo:{component:\\"index\\"},DemoDetail:{component:\\"index\\"},About:{component:\\"index\\"}}},display:{titleBarBackgroundColor:\\"#f2f2f2\\",titleBarTextColor:\\"#414141\\",menu:!0,pages:{Demo:{titleBarText:\\"示例页\\",menu:!1},DemoDetail:{titleBarText:\\"详情页\\"},About:{menu:!1}}}}}();"`; exports[`split chunks on a project release results not include split chunks for [REDUNDANCY]: /build/About/index.js 1`] = `"!function(){var e=function(){return(()=>{var e={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999);t.default={};const n=t.default||e.exports,a=[\\"public\\",\\"protected\\",\\"private\\"];if(n.data&&a.some((function(e){return n[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+a.join(\\",\\")+'\\"同时存在,请使用private替换data名称');n.data||(n.data={},n._descriptor={},a.forEach((function(e){const t=typeof n[e];if(\\"object\\"===t){n.data=Object.assign(n.data,n[e]);for(const t in n[e])n._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compb\\",[],(function(e,t,n){r(n,t,e),t.__esModule&&t.default&&(n.exports=t.default),n.exports.template=o(999)}))},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.multiply=function(e,t){return e*t}}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,o),a.exports}(()=>{o(999);var e=o(999);$app_define$(\\"@app-component/index\\",[],(function(t,r,n){e(n,r,t),r.__esModule&&r.default&&(n.exports=r.default),n.exports.template=o(999)})),$app_bootstrap$(\\"@app-component/index\\",{packagerVersion:\\"\\"})})()})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; -exports[`split chunks on a project release results not include split chunks for [REDUNDANCY]: /build/Demo/index.js 1`] = `"!function(){var e=function(){return(()=>{var e={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999),o(999);t.default={};const a=t.default||e.exports,n=[\\"public\\",\\"protected\\",\\"private\\"];if(a.data&&n.some((function(e){return a[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+n.join(\\",\\")+'\\"同时存在,请使用private替换data名称');a.data||(a.data={},a._descriptor={},n.forEach((function(e){const t=typeof a[e];if(\\"object\\"===t){a.data=Object.assign(a.data,a[e]);for(const t in a[e])a._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compa\\",[],(function(e,t,a){r(a,t,e),t.__esModule&&t.default&&(a.exports=t.default),a.exports.template=o(999)}))},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compb\\",[],(function(e,t,a){r(a,t,e),t.__esModule&&t.default&&(a.exports=t.default),a.exports.template=o(999)}))},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.add=function(e,t){return e+t}},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.multiply=function(e,t){return e*t}}},t={};function o(r){var a=t[r];if(void 0!==a)return a.exports;var n=t[r]={exports:{}};return e[r](n,n.exports,o),n.exports}(()=>{o(999),o(999);var e=o(999);$app_define$(\\"@app-component/index\\",[],(function(t,r,a){e(a,r,t),r.__esModule&&r.default&&(a.exports=r.default),a.exports.template=o(999)})),$app_bootstrap$(\\"@app-component/index\\",{packagerVersion:\\"\\"})})()})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; +exports[`split chunks on a project release results not include split chunks for [REDUNDANCY]: /build/Demo/index.js 1`] = `"!function(){var e=function(){return(()=>{var e={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999),o(999);t.default={};const n=t.default||e.exports,a=[\\"public\\",\\"protected\\",\\"private\\"];if(n.data&&a.some((function(e){return n[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+a.join(\\",\\")+'\\"同时存在,请使用private替换data名称');n.data||(n.data={},n._descriptor={},a.forEach((function(e){const t=typeof n[e];if(\\"object\\"===t){n.data=Object.assign(n.data,n[e]);for(const t in n[e])n._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compa\\",[],(function(e,t,n){r(n,t,e),t.__esModule&&t.default&&(n.exports=t.default),n.exports.template=o(999)}))},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compb\\",[],(function(e,t,n){r(n,t,e),t.__esModule&&t.default&&(n.exports=t.default),n.exports.template=o(999)}))},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.add=function(e,t){return e+t}},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.multiply=function(e,t){return e*t}}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,o),a.exports}(()=>{o(999),o(999);var e=o(999);$app_define$(\\"@app-component/index\\",[],(function(t,r,n){e(n,r,t),r.__esModule&&r.default&&(n.exports=r.default),n.exports.template=o(999)})),$app_bootstrap$(\\"@app-component/index\\",{packagerVersion:\\"\\"})})()})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; -exports[`split chunks on a project release results not include split chunks for [REDUNDANCY]: /build/DemoDetail/index.js 1`] = `"!function(){var e=function(){return(()=>{var e={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999);var a={onMenuPress(){this.$app.$def.showMenu()}};t.default=a;const n=t.default||e.exports,p=[\\"public\\",\\"protected\\",\\"private\\"];if(n.data&&p.some((function(e){return n[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+p.join(\\",\\")+'\\"同时存在,请使用private替换data名称');n.data||(n.data={},n._descriptor={},p.forEach((function(e){const t=typeof n[e];if(\\"object\\"===t){n.data=Object.assign(n.data,n[e]);for(const t in n[e])n._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compa\\",[],(function(e,t,a){r(a,t,e),t.__esModule&&t.default&&(a.exports=t.default),a.exports.template=o(999)}))},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.add=function(e,t){return e+t}}},t={};function o(r){var a=t[r];if(void 0!==a)return a.exports;var n=t[r]={exports:{}};return e[r](n,n.exports,o),n.exports}(()=>{o(999);var e=o(999);$app_define$(\\"@app-component/index\\",[],(function(t,r,a){e(a,r,t),r.__esModule&&r.default&&(a.exports=r.default),a.exports.template=o(999)})),$app_bootstrap$(\\"@app-component/index\\",{packagerVersion:\\"\\"})})()})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; +exports[`split chunks on a project release results not include split chunks for [REDUNDANCY]: /build/DemoDetail/index.js 1`] = `"!function(){var e=function(){return(()=>{var e={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999);var n={onMenuPress(){this.$app.$def.showMenu()}};t.default=n;const a=t.default||e.exports,p=[\\"public\\",\\"protected\\",\\"private\\"];if(a.data&&p.some((function(e){return a[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+p.join(\\",\\")+'\\"同时存在,请使用private替换data名称');a.data||(a.data={},a._descriptor={},p.forEach((function(e){const t=typeof a[e];if(\\"object\\"===t){a.data=Object.assign(a.data,a[e]);for(const t in a[e])a._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compa\\",[],(function(e,t,n){r(n,t,e),t.__esModule&&t.default&&(n.exports=t.default),n.exports.template=o(999)}))},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.add=function(e,t){return e+t}}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,o),a.exports}(()=>{o(999);var e=o(999);$app_define$(\\"@app-component/index\\",[],(function(t,r,n){e(n,r,t),r.__esModule&&r.default&&(n.exports=r.default),n.exports.template=o(999)})),$app_bootstrap$(\\"@app-component/index\\",{packagerVersion:\\"\\"})})()})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; exports[`split chunks on a project release results not include split chunks for [REDUNDANCY]: /build/app.js 1`] = `"!function(){var e=function(){return(()=>{var e,o,t={999:(e,o,t)=>{e.exports=function(e,o,n){\\"use strict\\";t(999)}},999:(e,o)=>{\\"use strict\\";Object.defineProperty(o,\\"__esModule\\",{value:!0}),o.add=function(e,o){return e+o}},999:e=>{\\"use strict\\";e.exports=JSON.parse('{\\"package\\":\\"com.application.demo\\",\\"name\\":\\"lewis-demo\\",\\"versionName\\":\\"1.0.0\\",\\"versionCode\\":\\"1\\",\\"minPlatformVersion\\":1070,\\"icon\\":\\"/Common/logo.png\\",\\"features\\":[{\\"name\\":\\"system.prompt\\"},{\\"name\\":\\"system.router\\"},{\\"name\\":\\"system.shortcut\\"}],\\"permissions\\":[{\\"origin\\":\\"*\\"}],\\"config\\":{\\"logLevel\\":\\"trace\\"},\\"router\\":{\\"entry\\":\\"Demo\\",\\"pages\\":{\\"Demo\\":{\\"component\\":\\"index\\"},\\"DemoDetail\\":{\\"component\\":\\"index\\"},\\"About\\":{\\"component\\":\\"index\\"}}},\\"display\\":{\\"titleBarBackgroundColor\\":\\"#f2f2f2\\",\\"titleBarTextColor\\":\\"#414141\\",\\"menu\\":true,\\"pages\\":{\\"Demo\\":{\\"titleBarText\\":\\"示例页\\",\\"menu\\":false},\\"DemoDetail\\":{\\"titleBarText\\":\\"详情页\\"},\\"About\\":{\\"menu\\":false}}}}')}},n={};function r(e){var o=n[e];if(void 0!==o)return o.exports;var a=n[e]={exports:{}};return t[e](a,a.exports,r),a.exports}e={},o=r(999),$app_define$(\\"@app-application/app\\",[],(function(t,n,a){o(a,n,t),n.__esModule&&n.default&&(a.exports=n.default),a.exports.manifest=r(999),a.exports.style={list:[e]}})),$app_bootstrap$(\\"@app-application/app\\",{packagerVersion:\\"\\"})})()};if(\\"undefined\\"==typeof window)return e();window.createAppHandler=e,global.manifest={package:\\"com.application.demo\\",name:\\"lewis-demo\\",versionName:\\"1.0.0\\",versionCode:\\"1\\",minPlatformVersion:1070,icon:\\"/Common/logo.png\\",features:[{name:\\"system.prompt\\"},{name:\\"system.router\\"},{name:\\"system.shortcut\\"}],permissions:[{origin:\\"*\\"}],config:{logLevel:\\"trace\\"},router:{entry:\\"Demo\\",pages:{Demo:{component:\\"index\\"},DemoDetail:{component:\\"index\\"},About:{component:\\"index\\"}}},display:{titleBarBackgroundColor:\\"#f2f2f2\\",titleBarTextColor:\\"#414141\\",menu:!0,pages:{Demo:{titleBarText:\\"示例页\\",menu:!1},DemoDetail:{titleBarText:\\"详情页\\"},About:{menu:!1}}}}}();"`; exports[`split chunks on a project release results not include split chunks for [other value]: /build/About/index.js 1`] = `"!function(){var e=function(){return(()=>{var e={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999);t.default={};const n=t.default||e.exports,a=[\\"public\\",\\"protected\\",\\"private\\"];if(n.data&&a.some((function(e){return n[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+a.join(\\",\\")+'\\"同时存在,请使用private替换data名称');n.data||(n.data={},n._descriptor={},a.forEach((function(e){const t=typeof n[e];if(\\"object\\"===t){n.data=Object.assign(n.data,n[e]);for(const t in n[e])n._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compb\\",[],(function(e,t,n){r(n,t,e),t.__esModule&&t.default&&(n.exports=t.default),n.exports.template=o(999)}))},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.multiply=function(e,t){return e*t}}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,o),a.exports}(()=>{o(999);var e=o(999);$app_define$(\\"@app-component/index\\",[],(function(t,r,n){e(n,r,t),r.__esModule&&r.default&&(n.exports=r.default),n.exports.template=o(999)})),$app_bootstrap$(\\"@app-component/index\\",{packagerVersion:\\"\\"})})()})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; -exports[`split chunks on a project release results not include split chunks for [other value]: /build/Demo/index.js 1`] = `"!function(){var e=function(){return(()=>{var e={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999),o(999);t.default={};const a=t.default||e.exports,n=[\\"public\\",\\"protected\\",\\"private\\"];if(a.data&&n.some((function(e){return a[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+n.join(\\",\\")+'\\"同时存在,请使用private替换data名称');a.data||(a.data={},a._descriptor={},n.forEach((function(e){const t=typeof a[e];if(\\"object\\"===t){a.data=Object.assign(a.data,a[e]);for(const t in a[e])a._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compa\\",[],(function(e,t,a){r(a,t,e),t.__esModule&&t.default&&(a.exports=t.default),a.exports.template=o(999)}))},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compb\\",[],(function(e,t,a){r(a,t,e),t.__esModule&&t.default&&(a.exports=t.default),a.exports.template=o(999)}))},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.add=function(e,t){return e+t}},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.multiply=function(e,t){return e*t}}},t={};function o(r){var a=t[r];if(void 0!==a)return a.exports;var n=t[r]={exports:{}};return e[r](n,n.exports,o),n.exports}(()=>{o(999),o(999);var e=o(999);$app_define$(\\"@app-component/index\\",[],(function(t,r,a){e(a,r,t),r.__esModule&&r.default&&(a.exports=r.default),a.exports.template=o(999)})),$app_bootstrap$(\\"@app-component/index\\",{packagerVersion:\\"\\"})})()})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; +exports[`split chunks on a project release results not include split chunks for [other value]: /build/Demo/index.js 1`] = `"!function(){var e=function(){return(()=>{var e={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999),o(999);t.default={};const n=t.default||e.exports,a=[\\"public\\",\\"protected\\",\\"private\\"];if(n.data&&a.some((function(e){return n[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+a.join(\\",\\")+'\\"同时存在,请使用private替换data名称');n.data||(n.data={},n._descriptor={},a.forEach((function(e){const t=typeof n[e];if(\\"object\\"===t){n.data=Object.assign(n.data,n[e]);for(const t in n[e])n._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compa\\",[],(function(e,t,n){r(n,t,e),t.__esModule&&t.default&&(n.exports=t.default),n.exports.template=o(999)}))},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compb\\",[],(function(e,t,n){r(n,t,e),t.__esModule&&t.default&&(n.exports=t.default),n.exports.template=o(999)}))},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.add=function(e,t){return e+t}},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.multiply=function(e,t){return e*t}}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,o),a.exports}(()=>{o(999),o(999);var e=o(999);$app_define$(\\"@app-component/index\\",[],(function(t,r,n){e(n,r,t),r.__esModule&&r.default&&(n.exports=r.default),n.exports.template=o(999)})),$app_bootstrap$(\\"@app-component/index\\",{packagerVersion:\\"\\"})})()})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; -exports[`split chunks on a project release results not include split chunks for [other value]: /build/DemoDetail/index.js 1`] = `"!function(){var e=function(){return(()=>{var e={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999);var a={onMenuPress(){this.$app.$def.showMenu()}};t.default=a;const n=t.default||e.exports,p=[\\"public\\",\\"protected\\",\\"private\\"];if(n.data&&p.some((function(e){return n[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+p.join(\\",\\")+'\\"同时存在,请使用private替换data名称');n.data||(n.data={},n._descriptor={},p.forEach((function(e){const t=typeof n[e];if(\\"object\\"===t){n.data=Object.assign(n.data,n[e]);for(const t in n[e])n._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compa\\",[],(function(e,t,a){r(a,t,e),t.__esModule&&t.default&&(a.exports=t.default),a.exports.template=o(999)}))},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.add=function(e,t){return e+t}}},t={};function o(r){var a=t[r];if(void 0!==a)return a.exports;var n=t[r]={exports:{}};return e[r](n,n.exports,o),n.exports}(()=>{o(999);var e=o(999);$app_define$(\\"@app-component/index\\",[],(function(t,r,a){e(a,r,t),r.__esModule&&r.default&&(a.exports=r.default),a.exports.template=o(999)})),$app_bootstrap$(\\"@app-component/index\\",{packagerVersion:\\"\\"})})()})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; +exports[`split chunks on a project release results not include split chunks for [other value]: /build/DemoDetail/index.js 1`] = `"!function(){var e=function(){return(()=>{var e={999:(e,t,o)=>{e.exports=function(e,t,r){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;o(999);var n={onMenuPress(){this.$app.$def.showMenu()}};t.default=n;const a=t.default||e.exports,p=[\\"public\\",\\"protected\\",\\"private\\"];if(a.data&&p.some((function(e){return a[e]})))throw new Error('页面VM对象中的属性data不可与\\"'+p.join(\\",\\")+'\\"同时存在,请使用private替换data名称');a.data||(a.data={},a._descriptor={},p.forEach((function(e){const t=typeof a[e];if(\\"object\\"===t){a.data=Object.assign(a.data,a[e]);for(const t in a[e])a._descriptor[t]={access:e}}else\\"function\\"===t&&console.warn(\\"页面VM对象中的属性\\"+e+\\"的值不能是函数,请使用对象\\")})))}},999:e=>{e.exports=function(e,t,o){\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.default=void 0;t.default={}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:e=>{e.exports={type:\\"div\\",attr:{}}},999:(e,t,o)=>{var r=o(999);$app_define$(\\"@app-component/compa\\",[],(function(e,t,n){r(n,t,e),t.__esModule&&t.default&&(n.exports=t.default),n.exports.template=o(999)}))},999:(e,t)=>{\\"use strict\\";Object.defineProperty(t,\\"__esModule\\",{value:!0}),t.add=function(e,t){return e+t}}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,o),a.exports}(()=>{o(999);var e=o(999);$app_define$(\\"@app-component/index\\",[],(function(t,r,n){e(n,r,t),r.__esModule&&r.default&&(n.exports=r.default),n.exports.template=o(999)})),$app_bootstrap$(\\"@app-component/index\\",{packagerVersion:\\"\\"})})()})()};if(\\"undefined\\"==typeof window)return e();window.createPageHandler=e}();"`; exports[`split chunks on a project release results not include split chunks for [other value]: /build/app.js 1`] = `"!function(){var e=function(){return(()=>{var e,o,t={999:(e,o,t)=>{e.exports=function(e,o,n){\\"use strict\\";t(999)}},999:(e,o)=>{\\"use strict\\";Object.defineProperty(o,\\"__esModule\\",{value:!0}),o.add=function(e,o){return e+o}},999:e=>{\\"use strict\\";e.exports=JSON.parse('{\\"package\\":\\"com.application.demo\\",\\"name\\":\\"lewis-demo\\",\\"versionName\\":\\"1.0.0\\",\\"versionCode\\":\\"1\\",\\"minPlatformVersion\\":1070,\\"icon\\":\\"/Common/logo.png\\",\\"features\\":[{\\"name\\":\\"system.prompt\\"},{\\"name\\":\\"system.router\\"},{\\"name\\":\\"system.shortcut\\"}],\\"permissions\\":[{\\"origin\\":\\"*\\"}],\\"config\\":{\\"logLevel\\":\\"trace\\"},\\"router\\":{\\"entry\\":\\"Demo\\",\\"pages\\":{\\"Demo\\":{\\"component\\":\\"index\\"},\\"DemoDetail\\":{\\"component\\":\\"index\\"},\\"About\\":{\\"component\\":\\"index\\"}}},\\"display\\":{\\"titleBarBackgroundColor\\":\\"#f2f2f2\\",\\"titleBarTextColor\\":\\"#414141\\",\\"menu\\":true,\\"pages\\":{\\"Demo\\":{\\"titleBarText\\":\\"示例页\\",\\"menu\\":false},\\"DemoDetail\\":{\\"titleBarText\\":\\"详情页\\"},\\"About\\":{\\"menu\\":false}}}}')}},n={};function r(e){var o=n[e];if(void 0!==o)return o.exports;var a=n[e]={exports:{}};return t[e](a,a.exports,r),a.exports}e={},o=r(999),$app_define$(\\"@app-application/app\\",[],(function(t,n,a){o(a,n,t),n.__esModule&&n.default&&(a.exports=n.default),a.exports.manifest=r(999),a.exports.style={list:[e]}})),$app_bootstrap$(\\"@app-application/app\\",{packagerVersion:\\"\\"})})()};if(\\"undefined\\"==typeof window)return e();window.createAppHandler=e,global.manifest={package:\\"com.application.demo\\",name:\\"lewis-demo\\",versionName:\\"1.0.0\\",versionCode:\\"1\\",minPlatformVersion:1070,icon:\\"/Common/logo.png\\",features:[{name:\\"system.prompt\\"},{name:\\"system.router\\"},{name:\\"system.shortcut\\"}],permissions:[{origin:\\"*\\"}],config:{logLevel:\\"trace\\"},router:{entry:\\"Demo\\",pages:{Demo:{component:\\"index\\"},DemoDetail:{component:\\"index\\"},About:{component:\\"index\\"}}},display:{titleBarBackgroundColor:\\"#f2f2f2\\",titleBarTextColor:\\"#414141\\",menu:!0,pages:{Demo:{titleBarText:\\"示例页\\",menu:!1},DemoDetail:{titleBarText:\\"详情页\\"},About:{menu:!1}}}}}();"`;