@tarojs/plugin-platform-swan 3.5.0-canary.1 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/template.ts","../src/components.ts","../src/program.ts","../src/index.ts"],"sourcesContent":["import { isArray, Shortcuts, indent } from '@tarojs/shared'\nimport { RecursiveTemplate } from '@tarojs/shared/dist/template'\n\nconst swanSpecialAttrs = {\n 'scroll-view': ['scrollTop', 'scrollLeft', 'scrollIntoView'],\n 'movable-view': ['x', 'y'],\n slider: ['value'],\n input: ['value'],\n textarea: ['value']\n}\n\ninterface TemplateOptions {\n flattenViewLevel?: number\n flattenCoverLevel?: number\n flattenTextLevel?: number\n}\n\nexport class Template extends RecursiveTemplate {\n supportXS = true\n\n Adapter = {\n if: 's-if',\n else: 's-else',\n elseif: 's-elif',\n for: 's-for',\n forItem: 's-for-item',\n forIndex: 's-for-index',\n key: 's-key',\n xs: 'sjs',\n type: 'swan'\n }\n\n flattenViewLevel: number\n flattenCoverLevel: number\n flattenTextLevel: number\n\n legacyMiniComponents: {\n [key: string]: Record<string, string>\n }\n\n constructor (options?: TemplateOptions) {\n super()\n this.flattenViewLevel = options?.flattenViewLevel ?? 8\n this.flattenCoverLevel = options?.flattenCoverLevel ?? 3\n this.flattenTextLevel = options?.flattenTextLevel ?? 3\n }\n\n createMiniComponents (components): any {\n const result = super.createMiniComponents(components)\n\n this.legacyMiniComponents = { ...result }\n\n delete result['pure-view']\n delete result['static-view']\n\n return result\n }\n\n buildXsTemplate () {\n return '<import-sjs module=\"xs\" src=\"./utils.sjs\" />'\n }\n\n dataKeymap (keymap: string) {\n return `{ ${keymap} }`\n }\n\n getAttrValue (value: string, key: string, nodeName: string) {\n if (isArray(swanSpecialAttrs[nodeName]) && swanSpecialAttrs[nodeName].includes(key)) {\n return `= ${value} =`\n }\n\n return `{ ${value} }`\n }\n\n buildFlattenNodeAttributes (nodeName: string): string {\n const component = this.legacyMiniComponents[nodeName]\n\n return Object.keys(component)\n .map(k => `${k}=\"${k.startsWith('bind') || k.startsWith('on') || k.startsWith('catch') ? component[k] : `{{${component[k].replace('i.', 'item.')}}}`}\"`)\n .join(' ')\n }\n\n buildFlattenView = (level = this.flattenViewLevel): string => {\n if (level === 0) {\n return '<template is=\"{{xs.e(0)}}\" data=\"{{{i:item}}}\" />'\n }\n\n const child = this.buildFlattenView(level - 1)\n\n const template =\n`<view s-if=\"{{item.nn==='view'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('view')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n ${indent(child, 4)}\n </block>\n</view>\n<text s-elif=\"{{item.nn==='text'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('text')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n <block>{{item.v}}</block>\n </block>\n</text>\n<text s-elif=\"{{item.nn==='static-text'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('static-text')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n <block>{{item.v}}</block>\n </block>\n</text>\n<button s-elif=\"{{item.nn==='button'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('button')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n <template is=\"{{xs.e(0)}}\" data=\"{{{ i:item }}}\" />\n </block>\n</button>\n<input s-elif=\"{{item.nn==='input'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('input')} />\n<swiper s-elif=\"{{item.nn==='swiper'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('swiper')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n <template is=\"{{xs.e(0)}}\" data=\"{{{ i:item }}}\" />\n </block>\n</swiper>\n<block s-else>\n <template is=\"{{xs.e(0)}}\" data=\"{{{i:item}}}\" />\n</block>`\n\n return template\n }\n\n buildFlattenCover = (level = this.flattenCoverLevel): string => {\n if (level === 0) {\n return '<template is=\"{{xs.e(0)}}\" data=\"{{{i:item}}}\" />'\n }\n\n const child = this.buildFlattenCover(level - 1)\n\n const template =\n`<cover-view s-if=\"{{item.nn==='cover-view'}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('cover-view')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n ${indent(child, 4)}\n </block>\n</cover-view>\n<cover-image s-elif=\"{{item.nn==='cover-image'}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('cover-image')}></cover-image>\n<block s-elif=\"{{item.nn==='#text'}}\">{{item.v}}</block>\n<block s-else>\n <template is=\"{{xs.e(0)}}\" data=\"{{{i:item}}}\" />\n</block>`\n\n return template\n }\n\n buildFlattenText = (level = this.flattenTextLevel): string => {\n if (level === 0) {\n return `<block>{{i.${Shortcuts.Childnodes}[index].${Shortcuts.Text}}}</block>`\n }\n\n const child = this.buildFlattenText(level - 1)\n\n const template =\n`<block s-if=\"item.nn === '#text'\">{{item.v}}</block>\n<text s-else id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('text')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n ${indent(child, 4)}\n </block>\n</text>`\n return template\n }\n\n modifyLoopBody = (child: string, nodeName: string): string => {\n switch (nodeName) {\n case 'view':\n // fix issue #6015\n return this.buildFlattenView()\n\n case 'cover-view':\n case 'canvas':\n case 'map':\n case 'animation-view':\n case 'camera':\n case 'live-player':\n return this.buildFlattenCover()\n\n case 'video': {\n const body =\n `<ad s-if={{item.nn==='ad'}} id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('ad')}></ad>\n<block s-else>\n ${indent(this.buildFlattenCover(), 2)}\n</block>`\n return body\n }\n\n case 'text':\n case 'static-text':\n return this.buildFlattenText()\n\n case 'picker-view':\n return `<picker-view-column id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('picker-view-column')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n ${child}\n </block>\n </picker-view-column>`\n\n default:\n return child\n }\n }\n\n modifyLoopContainer = (children: string, nodeName: string) => {\n if (nodeName === 'swiper') {\n return children.replace(/s-for=\"{{i\\.cn}}\"/, 's-for=\"{{xs.f(i.cn)}}\"')\n }\n\n return children\n }\n\n modifyTemplateResult = (res: string, nodeName: string) => {\n if (nodeName === 'picker-view-column') return ''\n return res\n }\n\n buildXSTmpExtra () {\n return `f: function (l) {\n return l.filter(function (i) {return i.nn === 'swiper-item'})\n }`\n }\n}\n","import { singleQuote } from '@tarojs/shared'\n\nexport const components = {\n // ======== 调整属性 ========\n Progress: {\n 'border-radius': '0',\n 'font-size': '16',\n duration: '30'\n },\n RichText: {\n selectable: 'false',\n name: '',\n attrs: '',\n children: '[]',\n text: '',\n 'image-menu-prevent': 'false',\n preview: ''\n },\n Map: {\n polygons: '[]',\n 'enable-3D': 'false',\n 'show-compass': 'false',\n 'enable-overlooking': 'false',\n 'enable-zoom': 'true',\n 'enable-scroll': 'true',\n 'enable-rotate': 'false',\n bindRegionChange: '',\n bindPoiTap: ''\n },\n Button: {\n bindGetPhoneNumber: '',\n bindGetUserInfo: '',\n bindOpenSetting: '',\n bindContact: '',\n bindChooseAddress: '',\n bindChooseInvoiceTitle: ''\n },\n Form: {\n 'report-type': 'default',\n 'template-id': '',\n 'subscribe-id': ''\n },\n Input: {\n 'adjust-position': 'true'\n },\n Textarea: {\n 'confirm-type': singleQuote('default'),\n 'confirm-hold': 'false',\n 'show-confirm-bar': 'true',\n 'adjust-position': 'true'\n },\n Navigator: {\n target: singleQuote('self'),\n 'app-id': '',\n path: '',\n 'extra-data': '',\n version: singleQuote('version')\n },\n Image: {\n webp: 'false',\n 'image-menu-prevent': 'false',\n preview: '',\n 'original-src': ''\n },\n Video: {\n title: '',\n 'show-no-wifi-tip': 'true',\n 'vslide-gesture': 'false',\n 'vslide-gesture-in-fullscreen': 'true',\n 'enable-play-gesture': 'false',\n 'show-rate-btn': 'false',\n 'show-vslide-btn-in-fullscreen': 'true',\n 'silent-play': 'false',\n bindLoadedMetadata: ''\n },\n Ad: {\n appid: '',\n apid: '',\n type: singleQuote('feed'),\n updatetime: '',\n bindStatus: ''\n },\n // ======== 额外组件 ========\n Tabs: {\n 'tabs-background-color': singleQuote('#fff'),\n 'tabs-active-text-color': singleQuote('#000'),\n 'tabs-inactive-text-color': singleQuote('#666'),\n 'tabs-underline-color': singleQuote('#333'),\n 'active-name': '',\n 'url-query-name': '',\n 'max-tab-item-amount': '5',\n bindTabChange: ''\n },\n TabItem: {\n label: '',\n name: '',\n 'badge-type': '',\n 'badge-text': ''\n },\n AnimationVideo: {\n 'resource-width': '800',\n 'resource-height': '400',\n 'canvas-style': singleQuote('width:400px;height:400px'),\n path: '',\n loop: 'fasle',\n autoplay: 'fasle',\n bindStarted: '',\n bindEnded: ''\n },\n AnimationView: {\n path: '',\n loop: 'false',\n autoplay: 'true',\n action: singleQuote('play'),\n hidden: 'true',\n bindEnded: ''\n },\n ArCamera: {\n key: '',\n type: '',\n flash: singleQuote('off'),\n bindError: '',\n bindLoad: '',\n bindMessage: '',\n bindScanCode: ''\n },\n RtcRoom: {\n id: '',\n 'enable-camera': 'true',\n 'enable-auto-focus': 'true',\n 'enable-zoom': 'false',\n 'device-position': singleQuote('front'),\n 'enable-mic': 'true',\n 'enable-agc': 'false',\n 'enable-ans': 'false',\n bitrate: '900',\n 'video-width': '360',\n 'video-height': '640',\n 'enable-remote-mirror': 'false',\n 'local-mirror': singleQuote('auto'),\n 'sound-mode': singleQuote('speaker'),\n bindStateChange: '',\n bindError: ''\n },\n RtcRoomItem: {\n id: '',\n type: '',\n 'user-id': ''\n },\n OpenData: {\n type: ''\n },\n Login: {\n 'button-class': '',\n bindGetPhoneNumber: '',\n bindLoadError: ''\n }\n}\n","import { TaroPlatformBase } from '@tarojs/service'\nimport { Template } from './template'\nimport { components } from './components'\n\nconst PACKAGE_NAME = '@tarojs/plugin-platform-swan'\nconst PROJECT_JSON = 'project.swan.json'\n\nexport default class Swan extends TaroPlatformBase {\n platform = 'swan'\n globalObject = 'swan'\n runtimePath = `${PACKAGE_NAME}/dist/runtime`\n taroComponentsPath = `${PACKAGE_NAME}/dist/components-react`\n fileType = {\n templ: '.swan',\n style: '.css',\n config: '.json',\n script: '.js',\n xs: '.sjs'\n }\n\n template: Template\n\n /**\n * 1. setupTransaction - init\n * 2. setup\n * 3. setupTransaction - close\n * 4. buildTransaction - init\n * 5. build\n * 6. buildTransaction - close\n */\n constructor (ctx, config) {\n super(ctx, config)\n\n this.setupTransaction.addWrapper({\n close () {\n this.modifyComponents()\n ctx.generateFrameworkInfo()\n this.generateProjectConfig(PROJECT_JSON, PROJECT_JSON)\n }\n })\n\n this.template = new Template({\n flattenViewLevel: config.flattenViewLevel\n })\n }\n\n /**\n * 增加组件或修改组件属性\n */\n modifyComponents () {\n this.template.mergeComponents(this.ctx, components)\n delete this.template.internalComponents.Input.cursor\n delete this.template.internalComponents.Input['selection-start']\n delete this.template.internalComponents.Input['selection-end']\n }\n}\n","import Swan from './program'\nimport type { IPluginContext } from '@tarojs/service'\n\n// 让其它平台插件可以继承此平台\nexport { Swan }\n\nexport default (ctx: IPluginContext) => {\n ctx.registerPlatform({\n name: 'swan',\n useConfigName: 'mini',\n async fn ({ config }) {\n const program = new Swan(ctx, config)\n await program.start()\n }\n })\n}\n"],"names":["RecursiveTemplate","indent","isArray","singleQuote","TaroPlatformBase"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/components.ts","../src/template.ts","../src/program.ts","../src/index.ts"],"sourcesContent":["import { singleQuote } from '@tarojs/shared'\n\nexport const components = {\n // ======== 调整属性 ========\n Progress: {\n 'border-radius': '0',\n 'font-size': '16',\n duration: '30'\n },\n RichText: {\n selectable: 'false',\n name: '',\n attrs: '',\n children: '[]',\n text: '',\n 'image-menu-prevent': 'false',\n preview: ''\n },\n Map: {\n polygons: '[]',\n 'enable-3D': 'false',\n 'show-compass': 'false',\n 'enable-overlooking': 'false',\n 'enable-zoom': 'true',\n 'enable-scroll': 'true',\n 'enable-rotate': 'false',\n bindRegionChange: '',\n bindPoiTap: ''\n },\n Button: {\n bindGetPhoneNumber: '',\n bindGetUserInfo: '',\n bindOpenSetting: '',\n bindContact: '',\n bindChooseAddress: '',\n bindChooseInvoiceTitle: '',\n bindLogin: ''\n },\n Form: {\n 'report-type': 'default',\n 'template-id': '',\n 'subscribe-id': ''\n },\n Input: {\n 'adjust-position': 'true'\n },\n Textarea: {\n 'confirm-type': singleQuote('default'),\n 'confirm-hold': 'false',\n 'show-confirm-bar': 'true',\n 'adjust-position': 'true'\n },\n Navigator: {\n target: singleQuote('self'),\n 'app-id': '',\n path: '',\n 'extra-data': '',\n version: singleQuote('version')\n },\n Image: {\n webp: 'false',\n 'image-menu-prevent': 'false',\n preview: '',\n 'original-src': ''\n },\n Video: {\n title: '',\n 'show-no-wifi-tip': 'true',\n 'vslide-gesture': 'false',\n 'vslide-gesture-in-fullscreen': 'true',\n 'enable-play-gesture': 'false',\n 'show-rate-btn': 'false',\n 'show-vslide-btn-in-fullscreen': 'true',\n 'silent-play': 'false',\n bindLoadedMetadata: ''\n },\n Ad: {\n appid: '',\n apid: '',\n type: singleQuote('feed'),\n updatetime: '',\n bindStatus: ''\n },\n // ======== 额外组件 ========\n Tabs: {\n 'tabs-background-color': singleQuote('#fff'),\n 'tabs-active-text-color': singleQuote('#000'),\n 'tabs-inactive-text-color': singleQuote('#666'),\n 'tabs-underline-color': singleQuote('#333'),\n 'active-name': '',\n 'url-query-name': '',\n 'max-tab-item-amount': '5',\n bindTabChange: ''\n },\n TabItem: {\n label: '',\n name: '',\n 'badge-type': '',\n 'badge-text': ''\n },\n AnimationVideo: {\n 'resource-width': '800',\n 'resource-height': '400',\n 'canvas-style': singleQuote('width:400px;height:400px'),\n path: '',\n loop: 'fasle',\n autoplay: 'fasle',\n bindStarted: '',\n bindEnded: ''\n },\n AnimationView: {\n path: '',\n loop: 'false',\n autoplay: 'true',\n action: singleQuote('play'),\n hidden: 'true',\n bindEnded: ''\n },\n ArCamera: {\n key: '',\n type: '',\n flash: singleQuote('off'),\n bindError: '',\n bindLoad: '',\n bindMessage: '',\n bindScanCode: ''\n },\n RtcRoom: {\n id: '',\n 'enable-camera': 'true',\n 'enable-auto-focus': 'true',\n 'enable-zoom': 'false',\n 'device-position': singleQuote('front'),\n 'enable-mic': 'true',\n 'enable-agc': 'false',\n 'enable-ans': 'false',\n bitrate: '900',\n 'video-width': '360',\n 'video-height': '640',\n 'enable-remote-mirror': 'false',\n 'local-mirror': singleQuote('auto'),\n 'sound-mode': singleQuote('speaker'),\n bindStateChange: '',\n bindError: ''\n },\n RtcRoomItem: {\n id: '',\n type: '',\n 'user-id': ''\n },\n OpenData: {\n type: ''\n },\n Login: {\n 'button-class': '',\n bindGetPhoneNumber: '',\n bindLoadError: ''\n }\n}\n","import { indent, isArray, Shortcuts } from '@tarojs/shared'\nimport { RecursiveTemplate } from '@tarojs/shared/dist/template'\n\nconst swanSpecialAttrs = {\n 'scroll-view': ['scroll-top', 'scroll-left', 'scroll-into-view'],\n 'movable-view': ['x', 'y'],\n slider: ['value'],\n input: ['value'],\n textarea: ['value']\n}\n\ninterface TemplateOptions {\n flattenViewLevel?: number\n flattenCoverLevel?: number\n flattenTextLevel?: number\n}\n\nexport class Template extends RecursiveTemplate {\n supportXS = true\n\n Adapter = {\n if: 's-if',\n else: 's-else',\n elseif: 's-elif',\n for: 's-for',\n forItem: 's-for-item',\n forIndex: 's-for-index',\n key: 's-key',\n xs: 'sjs',\n type: 'swan'\n }\n\n flattenViewLevel: number\n flattenCoverLevel: number\n flattenTextLevel: number\n\n legacyMiniComponents: {\n [key: string]: Record<string, string>\n }\n\n constructor (options?: TemplateOptions) {\n super()\n this.flattenViewLevel = options?.flattenViewLevel ?? 8\n this.flattenCoverLevel = options?.flattenCoverLevel ?? 3\n this.flattenTextLevel = options?.flattenTextLevel ?? 3\n }\n\n createMiniComponents (components): any {\n const result = super.createMiniComponents(components)\n\n this.legacyMiniComponents = { ...result }\n\n delete result['pure-view']\n delete result['static-view']\n\n return result\n }\n\n buildXsTemplate () {\n return '<import-sjs module=\"xs\" src=\"./utils.sjs\" />'\n }\n\n dataKeymap (keymap: string) {\n return `{ ${keymap} }`\n }\n\n getAttrValue (value: string, key: string, nodeName: string) {\n if (isArray(swanSpecialAttrs[nodeName]) && swanSpecialAttrs[nodeName].includes(key)) {\n return `= ${value} =`\n }\n\n return `{${value}}`\n }\n\n buildFlattenNodeAttributes (nodeName: string): string {\n const component = this.legacyMiniComponents[nodeName]\n\n return Object.keys(component)\n .map(k => `${k}=\"${k.startsWith('bind') || k.startsWith('on') || k.startsWith('catch') ? component[k] : `{{${component[k].replace('i.', 'item.')}}}`}\"`)\n .join(' ')\n }\n\n buildFlattenView = (level = this.flattenViewLevel): string => {\n if (level === 0) {\n return '<template is=\"{{xs.e(0)}}\" data=\"{{{i:item}}}\" />'\n }\n\n const child = this.buildFlattenView(level - 1)\n\n const componentsAlias = this.componentsAlias\n const viewAlias = componentsAlias.view._num\n const textAlias = componentsAlias.text._num\n const staticTextAlias = componentsAlias['static-text']._num\n const buttonAlias = componentsAlias.button._num\n const inputAlias = componentsAlias.input._num\n const swiperAlias = componentsAlias.swiper._num\n\n const template =\n`<view s-if=\"{{item.nn==='${viewAlias}'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('view')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n ${indent(child, 4)}\n </block>\n</view>\n<text s-elif=\"{{item.nn==='${textAlias}'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('text')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n <block>{{item.v}}</block>\n </block>\n</text>\n<text s-elif=\"{{item.nn==='${staticTextAlias}'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('static-text')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n <block>{{item.v}}</block>\n </block>\n</text>\n<button s-elif=\"{{item.nn==='${buttonAlias}'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('button')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n <template is=\"{{xs.e(0)}}\" data=\"{{{ i:item }}}\" />\n </block>\n</button>\n<input s-elif=\"{{item.nn==='${inputAlias}'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('input')} />\n<swiper s-elif=\"{{item.nn==='${swiperAlias}'&&(item.st||item.cl)}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('swiper')}>\n <block s-for=\"{{xs.f(item.cn)}}\" s-key=\"sid\">\n <template is=\"{{xs.e(0)}}\" data=\"{{{ i:item }}}\" />\n </block>\n</swiper>\n<block s-else>\n <template is=\"{{xs.e(0)}}\" data=\"{{{i:item}}}\" />\n</block>`\n\n return template\n }\n\n buildFlattenCover = (level = this.flattenCoverLevel): string => {\n if (level === 0) {\n return '<template is=\"{{xs.e(0)}}\" data=\"{{{i:item}}}\" />'\n }\n\n const child = this.buildFlattenCover(level - 1)\n\n const componentsAlias = this.componentsAlias\n const coverViewAlias = componentsAlias['cover-view']._num\n const coverImageAlias = componentsAlias['cover-image']._num\n const contentAlias = componentsAlias['#text']._num\n\n const template =\n`<cover-view s-if=\"{{item.nn==='${coverViewAlias}'}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('cover-view')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n ${indent(child, 4)}\n </block>\n</cover-view>\n<cover-image s-elif=\"{{item.nn==='${coverImageAlias}'}}\" id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('cover-image')}></cover-image>\n<block s-elif=\"{{item.nn==='${contentAlias}'}}\">{{item.v}}</block>\n<block s-else>\n <template is=\"{{xs.e(0)}}\" data=\"{{{i:item}}}\" />\n</block>`\n\n return template\n }\n\n buildFlattenText = (level = this.flattenTextLevel): string => {\n if (level === 0) {\n return `<block>{{i.${Shortcuts.Childnodes}[index].${Shortcuts.Text}}}</block>`\n }\n\n const child = this.buildFlattenText(level - 1)\n\n const componentsAlias = this.componentsAlias\n const contentAlias = componentsAlias['#text']._num\n\n const template =\n`<block s-if=\"item.nn === '${contentAlias}'\">{{item.v}}</block>\n<text s-else id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('text')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n ${indent(child, 4)}\n </block>\n</text>`\n return template\n }\n\n modifyLoopBody = (child: string, nodeName: string): string => {\n const componentsAlias = this.componentsAlias\n const adAlias = componentsAlias.ad._num\n\n switch (nodeName) {\n case 'view':\n // fix issue #6015\n return this.buildFlattenView()\n\n case 'cover-view':\n case 'canvas':\n case 'map':\n case 'animation-view':\n case 'camera':\n case 'live-player':\n return this.buildFlattenCover()\n\n case 'video': {\n const body =\n `<ad s-if={{item.nn==='${adAlias}'}} id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('ad')}></ad>\n<block s-else>\n ${indent(this.buildFlattenCover(), 2)}\n</block>`\n return body\n }\n\n case 'text':\n case 'static-text':\n return this.buildFlattenText()\n\n case 'picker-view':\n return `<picker-view-column id=\"{{item.uid||item.sid}}\" data-sid=\"{{item.sid}}\" ${this.buildFlattenNodeAttributes('picker-view-column')}>\n <block s-for=\"{{item.cn}}\" s-key=\"sid\">\n ${child}\n </block>\n </picker-view-column>`\n\n default:\n return child\n }\n }\n\n modifyLoopContainer = (children: string, nodeName: string) => {\n if (nodeName === 'swiper') {\n return children.replace(/s-for=\"{{i\\.cn}}\"/, 's-for=\"{{xs.f(i.cn)}}\"')\n }\n\n return children\n }\n\n modifyTemplateResult = (res: string, nodeName: string) => {\n if (nodeName === 'picker-view-column') return ''\n return res\n }\n\n buildXSTmpExtra () {\n const componentsAlias = this.componentsAlias\n const swiperAlias = componentsAlias['swiper-item']._num\n return `f: function (l) {\n return l.filter(function (i) {return i.nn === '${swiperAlias}'})\n }`\n }\n}\n","import { TaroPlatformBase } from '@tarojs/service'\n\nimport { components } from './components'\nimport { Template } from './template'\n\nconst PACKAGE_NAME = '@tarojs/plugin-platform-swan'\nconst PROJECT_JSON = 'project.swan.json'\n\nexport default class Swan extends TaroPlatformBase {\n platform = 'swan'\n globalObject = 'swan'\n runtimePath = `${PACKAGE_NAME}/dist/runtime`\n taroComponentsPath = `${PACKAGE_NAME}/dist/components-react`\n fileType = {\n templ: '.swan',\n style: '.css',\n config: '.json',\n script: '.js',\n xs: '.sjs'\n }\n\n template: Template\n\n /**\n * 1. setupTransaction - init\n * 2. setup\n * 3. setupTransaction - close\n * 4. buildTransaction - init\n * 5. build\n * 6. buildTransaction - close\n */\n constructor (ctx, config) {\n super(ctx, config)\n\n this.setupTransaction.addWrapper({\n close () {\n this.modifyComponents()\n ctx.generateFrameworkInfo()\n this.generateProjectConfig(PROJECT_JSON, PROJECT_JSON)\n }\n })\n\n this.template = new Template({\n flattenViewLevel: config.flattenViewLevel\n })\n }\n\n /**\n * 增加组件或修改组件属性\n */\n modifyComponents () {\n this.template.mergeComponents(this.ctx, components)\n delete this.template.internalComponents.Input.cursor\n delete this.template.internalComponents.Input['selection-start']\n delete this.template.internalComponents.Input['selection-end']\n }\n}\n","import type { IPluginContext } from '@tarojs/service'\n\nimport Swan from './program'\n\n// 让其它平台插件可以继承此平台\nexport { Swan }\n\nexport default (ctx: IPluginContext) => {\n ctx.registerPlatform({\n name: 'swan',\n useConfigName: 'mini',\n async fn ({ config }) {\n const program = new Swan(ctx, config)\n await program.start()\n }\n })\n}\n"],"names":["singleQuote","RecursiveTemplate","indent","isArray","TaroPlatformBase"],"mappings":"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"}
@@ -1,246 +1,247 @@
1
1
  import { processApis, singleQuote } from '@tarojs/shared';
2
2
 
3
- const needPromiseApis = new Set([
4
- 'addEventOnCalendar',
5
- 'chooseAlbum',
6
- 'closeCommunityEditor',
7
- 'getSwanId',
8
- 'requestPolymerPayment',
9
- 'navigateBackSmartProgram',
10
- 'navigateToSmartProgram',
11
- 'setPageInfo',
12
- 'closeReplyEditor',
13
- 'deleteBookShelf',
14
- 'deleteEventOnCalendar',
15
- 'getSystemRiskInfo',
16
- 'insertBookshelf',
17
- 'loadSubPackage',
18
- 'openCommunityEditor',
19
- 'openReplyEditor',
20
- 'openShare',
21
- 'setDocumentTitle',
22
- 'setMetaDescription',
23
- 'setMetaKeywords',
24
- 'shareFile',
25
- 'subscribeService',
26
- 'updateBookshelfReadTime'
3
+ const needPromiseApis = new Set([
4
+ 'addEventOnCalendar',
5
+ 'chooseAlbum',
6
+ 'closeCommunityEditor',
7
+ 'getSwanId',
8
+ 'requestPolymerPayment',
9
+ 'navigateBackSmartProgram',
10
+ 'navigateToSmartProgram',
11
+ 'setPageInfo',
12
+ 'closeReplyEditor',
13
+ 'deleteBookShelf',
14
+ 'deleteEventOnCalendar',
15
+ 'getSystemRiskInfo',
16
+ 'insertBookshelf',
17
+ 'loadSubPackage',
18
+ 'openCommunityEditor',
19
+ 'openReplyEditor',
20
+ 'openShare',
21
+ 'setDocumentTitle',
22
+ 'setMetaDescription',
23
+ 'setMetaKeywords',
24
+ 'shareFile',
25
+ 'subscribeService',
26
+ 'updateBookshelfReadTime'
27
27
  ]);
28
28
 
29
- const apiDiff = {
30
- login: {
31
- alias: 'getLoginCode'
32
- }
33
- };
34
- function transformMeta(api, options) {
35
- let apiAlias = api;
36
- Object.keys(apiDiff).forEach(item => {
37
- const apiItem = apiDiff[item];
38
- if (api === item) {
39
- if (apiItem.alias) {
40
- apiAlias = apiItem.alias;
41
- }
42
- if (apiItem.options) {
43
- const change = apiItem.options.change;
44
- const set = apiItem.options.set;
45
- if (change) {
46
- change.forEach(changeItem => {
47
- options[changeItem.new] = options[changeItem.old];
48
- });
49
- }
50
- if (set) {
51
- set.forEach(setItem => {
52
- options[setItem.key] = typeof setItem.value === 'function' ? setItem.value(options) : setItem.value;
53
- });
54
- }
55
- }
56
- }
57
- });
58
- return {
59
- key: apiAlias,
60
- options
61
- };
62
- }
63
- function initNativeApi(taro) {
64
- processApis(taro, swan, {
65
- needPromiseApis,
66
- transformMeta
67
- });
29
+ const apiDiff = {
30
+ login: {
31
+ alias: 'getLoginCode'
32
+ }
33
+ };
34
+ function transformMeta(api, options) {
35
+ let apiAlias = api;
36
+ Object.keys(apiDiff).forEach(item => {
37
+ const apiItem = apiDiff[item];
38
+ if (api === item) {
39
+ if (apiItem.alias) {
40
+ apiAlias = apiItem.alias;
41
+ }
42
+ if (apiItem.options) {
43
+ const change = apiItem.options.change;
44
+ const set = apiItem.options.set;
45
+ if (change) {
46
+ change.forEach(changeItem => {
47
+ options[changeItem.new] = options[changeItem.old];
48
+ });
49
+ }
50
+ if (set) {
51
+ set.forEach(setItem => {
52
+ options[setItem.key] = typeof setItem.value === 'function' ? setItem.value(options) : setItem.value;
53
+ });
54
+ }
55
+ }
56
+ }
57
+ });
58
+ return {
59
+ key: apiAlias,
60
+ options
61
+ };
62
+ }
63
+ function initNativeApi(taro) {
64
+ processApis(taro, swan, {
65
+ needPromiseApis,
66
+ transformMeta
67
+ });
68
68
  }
69
69
 
70
- const components = {
71
- // ======== 调整属性 ========
72
- Progress: {
73
- 'border-radius': '0',
74
- 'font-size': '16',
75
- duration: '30'
76
- },
77
- RichText: {
78
- selectable: 'false',
79
- name: '',
80
- attrs: '',
81
- children: '[]',
82
- text: '',
83
- 'image-menu-prevent': 'false',
84
- preview: ''
85
- },
86
- Map: {
87
- polygons: '[]',
88
- 'enable-3D': 'false',
89
- 'show-compass': 'false',
90
- 'enable-overlooking': 'false',
91
- 'enable-zoom': 'true',
92
- 'enable-scroll': 'true',
93
- 'enable-rotate': 'false',
94
- bindRegionChange: '',
95
- bindPoiTap: ''
96
- },
97
- Button: {
98
- bindGetPhoneNumber: '',
99
- bindGetUserInfo: '',
100
- bindOpenSetting: '',
101
- bindContact: '',
102
- bindChooseAddress: '',
103
- bindChooseInvoiceTitle: ''
104
- },
105
- Form: {
106
- 'report-type': 'default',
107
- 'template-id': '',
108
- 'subscribe-id': ''
109
- },
110
- Input: {
111
- 'adjust-position': 'true'
112
- },
113
- Textarea: {
114
- 'confirm-type': singleQuote('default'),
115
- 'confirm-hold': 'false',
116
- 'show-confirm-bar': 'true',
117
- 'adjust-position': 'true'
118
- },
119
- Navigator: {
120
- target: singleQuote('self'),
121
- 'app-id': '',
122
- path: '',
123
- 'extra-data': '',
124
- version: singleQuote('version')
125
- },
126
- Image: {
127
- webp: 'false',
128
- 'image-menu-prevent': 'false',
129
- preview: '',
130
- 'original-src': ''
131
- },
132
- Video: {
133
- title: '',
134
- 'show-no-wifi-tip': 'true',
135
- 'vslide-gesture': 'false',
136
- 'vslide-gesture-in-fullscreen': 'true',
137
- 'enable-play-gesture': 'false',
138
- 'show-rate-btn': 'false',
139
- 'show-vslide-btn-in-fullscreen': 'true',
140
- 'silent-play': 'false',
141
- bindLoadedMetadata: ''
142
- },
143
- Ad: {
144
- appid: '',
145
- apid: '',
146
- type: singleQuote('feed'),
147
- updatetime: '',
148
- bindStatus: ''
149
- },
150
- // ======== 额外组件 ========
151
- Tabs: {
152
- 'tabs-background-color': singleQuote('#fff'),
153
- 'tabs-active-text-color': singleQuote('#000'),
154
- 'tabs-inactive-text-color': singleQuote('#666'),
155
- 'tabs-underline-color': singleQuote('#333'),
156
- 'active-name': '',
157
- 'url-query-name': '',
158
- 'max-tab-item-amount': '5',
159
- bindTabChange: ''
160
- },
161
- TabItem: {
162
- label: '',
163
- name: '',
164
- 'badge-type': '',
165
- 'badge-text': ''
166
- },
167
- AnimationVideo: {
168
- 'resource-width': '800',
169
- 'resource-height': '400',
170
- 'canvas-style': singleQuote('width:400px;height:400px'),
171
- path: '',
172
- loop: 'fasle',
173
- autoplay: 'fasle',
174
- bindStarted: '',
175
- bindEnded: ''
176
- },
177
- AnimationView: {
178
- path: '',
179
- loop: 'false',
180
- autoplay: 'true',
181
- action: singleQuote('play'),
182
- hidden: 'true',
183
- bindEnded: ''
184
- },
185
- ArCamera: {
186
- key: '',
187
- type: '',
188
- flash: singleQuote('off'),
189
- bindError: '',
190
- bindLoad: '',
191
- bindMessage: '',
192
- bindScanCode: ''
193
- },
194
- RtcRoom: {
195
- id: '',
196
- 'enable-camera': 'true',
197
- 'enable-auto-focus': 'true',
198
- 'enable-zoom': 'false',
199
- 'device-position': singleQuote('front'),
200
- 'enable-mic': 'true',
201
- 'enable-agc': 'false',
202
- 'enable-ans': 'false',
203
- bitrate: '900',
204
- 'video-width': '360',
205
- 'video-height': '640',
206
- 'enable-remote-mirror': 'false',
207
- 'local-mirror': singleQuote('auto'),
208
- 'sound-mode': singleQuote('speaker'),
209
- bindStateChange: '',
210
- bindError: ''
211
- },
212
- RtcRoomItem: {
213
- id: '',
214
- type: '',
215
- 'user-id': ''
216
- },
217
- OpenData: {
218
- type: ''
219
- },
220
- Login: {
221
- 'button-class': '',
222
- bindGetPhoneNumber: '',
223
- bindLoadError: ''
224
- }
70
+ const components = {
71
+ // ======== 调整属性 ========
72
+ Progress: {
73
+ 'border-radius': '0',
74
+ 'font-size': '16',
75
+ duration: '30'
76
+ },
77
+ RichText: {
78
+ selectable: 'false',
79
+ name: '',
80
+ attrs: '',
81
+ children: '[]',
82
+ text: '',
83
+ 'image-menu-prevent': 'false',
84
+ preview: ''
85
+ },
86
+ Map: {
87
+ polygons: '[]',
88
+ 'enable-3D': 'false',
89
+ 'show-compass': 'false',
90
+ 'enable-overlooking': 'false',
91
+ 'enable-zoom': 'true',
92
+ 'enable-scroll': 'true',
93
+ 'enable-rotate': 'false',
94
+ bindRegionChange: '',
95
+ bindPoiTap: ''
96
+ },
97
+ Button: {
98
+ bindGetPhoneNumber: '',
99
+ bindGetUserInfo: '',
100
+ bindOpenSetting: '',
101
+ bindContact: '',
102
+ bindChooseAddress: '',
103
+ bindChooseInvoiceTitle: '',
104
+ bindLogin: ''
105
+ },
106
+ Form: {
107
+ 'report-type': 'default',
108
+ 'template-id': '',
109
+ 'subscribe-id': ''
110
+ },
111
+ Input: {
112
+ 'adjust-position': 'true'
113
+ },
114
+ Textarea: {
115
+ 'confirm-type': singleQuote('default'),
116
+ 'confirm-hold': 'false',
117
+ 'show-confirm-bar': 'true',
118
+ 'adjust-position': 'true'
119
+ },
120
+ Navigator: {
121
+ target: singleQuote('self'),
122
+ 'app-id': '',
123
+ path: '',
124
+ 'extra-data': '',
125
+ version: singleQuote('version')
126
+ },
127
+ Image: {
128
+ webp: 'false',
129
+ 'image-menu-prevent': 'false',
130
+ preview: '',
131
+ 'original-src': ''
132
+ },
133
+ Video: {
134
+ title: '',
135
+ 'show-no-wifi-tip': 'true',
136
+ 'vslide-gesture': 'false',
137
+ 'vslide-gesture-in-fullscreen': 'true',
138
+ 'enable-play-gesture': 'false',
139
+ 'show-rate-btn': 'false',
140
+ 'show-vslide-btn-in-fullscreen': 'true',
141
+ 'silent-play': 'false',
142
+ bindLoadedMetadata: ''
143
+ },
144
+ Ad: {
145
+ appid: '',
146
+ apid: '',
147
+ type: singleQuote('feed'),
148
+ updatetime: '',
149
+ bindStatus: ''
150
+ },
151
+ // ======== 额外组件 ========
152
+ Tabs: {
153
+ 'tabs-background-color': singleQuote('#fff'),
154
+ 'tabs-active-text-color': singleQuote('#000'),
155
+ 'tabs-inactive-text-color': singleQuote('#666'),
156
+ 'tabs-underline-color': singleQuote('#333'),
157
+ 'active-name': '',
158
+ 'url-query-name': '',
159
+ 'max-tab-item-amount': '5',
160
+ bindTabChange: ''
161
+ },
162
+ TabItem: {
163
+ label: '',
164
+ name: '',
165
+ 'badge-type': '',
166
+ 'badge-text': ''
167
+ },
168
+ AnimationVideo: {
169
+ 'resource-width': '800',
170
+ 'resource-height': '400',
171
+ 'canvas-style': singleQuote('width:400px;height:400px'),
172
+ path: '',
173
+ loop: 'fasle',
174
+ autoplay: 'fasle',
175
+ bindStarted: '',
176
+ bindEnded: ''
177
+ },
178
+ AnimationView: {
179
+ path: '',
180
+ loop: 'false',
181
+ autoplay: 'true',
182
+ action: singleQuote('play'),
183
+ hidden: 'true',
184
+ bindEnded: ''
185
+ },
186
+ ArCamera: {
187
+ key: '',
188
+ type: '',
189
+ flash: singleQuote('off'),
190
+ bindError: '',
191
+ bindLoad: '',
192
+ bindMessage: '',
193
+ bindScanCode: ''
194
+ },
195
+ RtcRoom: {
196
+ id: '',
197
+ 'enable-camera': 'true',
198
+ 'enable-auto-focus': 'true',
199
+ 'enable-zoom': 'false',
200
+ 'device-position': singleQuote('front'),
201
+ 'enable-mic': 'true',
202
+ 'enable-agc': 'false',
203
+ 'enable-ans': 'false',
204
+ bitrate: '900',
205
+ 'video-width': '360',
206
+ 'video-height': '640',
207
+ 'enable-remote-mirror': 'false',
208
+ 'local-mirror': singleQuote('auto'),
209
+ 'sound-mode': singleQuote('speaker'),
210
+ bindStateChange: '',
211
+ bindError: ''
212
+ },
213
+ RtcRoomItem: {
214
+ id: '',
215
+ type: '',
216
+ 'user-id': ''
217
+ },
218
+ OpenData: {
219
+ type: ''
220
+ },
221
+ Login: {
222
+ 'button-class': '',
223
+ bindGetPhoneNumber: '',
224
+ bindLoadError: ''
225
+ }
225
226
  };
226
227
 
227
- const hostConfig = {
228
- initNativeApi,
229
- getPathIndex(indexOfNode) {
230
- return `${indexOfNode}`;
231
- },
232
- getSpecialNodes() {
233
- return ['text', 'image'];
234
- },
235
- modifyTaroEvent(event, node) {
236
- if (node.tagName === 'MAP' && event.type === 'regionchange') {
237
- event.type = 'end';
238
- }
239
- },
240
- getMiniLifecycle(config) {
241
- config.page[0] = 'onInit';
242
- return config;
243
- }
228
+ const hostConfig = {
229
+ initNativeApi,
230
+ getPathIndex(indexOfNode) {
231
+ return `${indexOfNode}`;
232
+ },
233
+ getSpecialNodes() {
234
+ return ['text', 'image'];
235
+ },
236
+ modifyTaroEvent(event, node) {
237
+ if (node.tagName === 'MAP' && event.type === 'regionchange') {
238
+ event.type = 'end';
239
+ }
240
+ },
241
+ getMiniLifecycle(config) {
242
+ config.page[0] = 'onInit';
243
+ return config;
244
+ }
244
245
  };
245
246
 
246
247
  export { components, hostConfig, initNativeApi, needPromiseApis };