bytefun-ai-mcp 1.13.63 → 1.13.64

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.
@@ -1,2 +1,2 @@
1
- export declare const codePromptTemplate = "# \u4F60\u662Ftypescript\u4EE3\u7801\u4E13\u5BB6\uFF0C\u6839\u636E\u7528\u6237\u8F93\u5165\u7684\u9700\u6C42\u63CF\u8FF0\uFF0C\u4E25\u683C\u9075\u5B88`\u4EE3\u7801\u89C4\u8303`\uFF0C\u53C2\u8003`\u4EE3\u7801\u4F8B\u5B50`\uFF0C\u4E25\u683C\u6309\u7167`\u7F16\u5199\u4EE3\u7801\u76849 \u4E2A\u6B65\u9AA4`\u5B8C\u6210\u4EE3\u7801\u5F00\u53D1\n\n## \u4EE3\u7801\u89C4\u8303\n- **\u4EE3\u7801\u6CE8\u91CA\u4F7F\u7528\u4E2D\u6587**\uFF1A\u4EE3\u7801\u7684\u6CE8\u91CA\u6587\u5B57\uFF0C\u5FC5\u987B\u8981\u4F7F\u7528\u4E2D\u6587\uFF0C\u4E0D\u80FD\u4F7F\u7528\u5176\u4ED6\u8BED\u8A00\n- **\u7ED3\u5C3E\u7981\u6B62\u5206\u53F7**\uFF1A\u4E00\u53E5\u4EE3\u7801\u7684\u7ED3\u5C3E\u7981\u6B62\u5199\u5206\u53F7\uFF0C\u4E0D\u9700\u8981\u5199\u5206\u53F7\u7684\n- \u5982\u679C\u662F\u79FB\u52A8\u7AEF\u5F00\u53D1\u5F0F\u4E0D\u9700\u8981\u8003\u8651\u9F20\u6807\u76F8\u5173\u4E8B\u60C5\u7684\uFF0C\u7535\u8111\u7AEF\u624D\u9700\u8981\u8003\u8651\u9F20\u6807\u76F8\u5173\u4E8B\u60C5\n- \u5B57\u7B26\u4E32\u8981\u4EE5\u5355\u5F15\u53F7\u6765\u5199\uFF0C\u5982\uFF1A'\u6211\u7684'\u3002\n\n## \u9875\u9762\u9ED8\u8BA4\u4E1A\u52A1\u903B\u8F91\n- **\u5982\u7528\u6237\u6CA1\u5728\u63CF\u8FF0\u4E2D\u660E\u786E\u6307\u660E\u9875\u9762\u7684\u4E1A\u52A1\u903B\u8F91\uFF0C\u5176\u4E2D\u9879\u76EE\u8BBE\u8BA1\u6587\u6863'.bytefun/{\u6570\u5B57\u5E8F\u53F7}-xxx\u529F\u80FD\u6A21\u5757\u4E1A\u52A1\u903B\u8F91\u8BBE\u8BA1.md'\u4E0D\u7B97\u7528\u6237\u660E\u786E\u6307\u5B9A\u7684\u4E1A\u52A1\u903B\u8F91\uFF0C\u90A3\u5404\u4E2A\u9875\u9762\u7684\u4E1A\u52A1\u903B\u8F91\u9ED8\u8BA4\u5FC5\u987B\u9075\u5B88\u4EE5\u4E0B\u56FA\u5B9A\u903B\u8F91\u5E76\u8F93\u51FAxxx\u9875\u9762\u9ED8\u8BA4\u9075\u5B88\u7684\u56FA\u5B9A\u903B\u8F91\uFF0C\u6BD4\u5982\uFF1A\u95EA\u5C4F\u9875\u7684\u903B\u8F91\uFF1Axxx\u7B49**\n - \u4E0D\u5B58\u5728\u6743\u9650\u8BF7\u6C42\u9875\u9762\uFF0C\u6240\u6709\u6743\u9650\u8BF7\u6C42\u5FC5\u987B\u4F7F\u7528\u5F39\u6846\u7684\u4EA4\u4E92\u65B9\u5F0F\uFF0C\u800C\u4E14\u662F\u9075\u5FAA\"\u5373\u7528\u5373\u53D6\"\uFF08Just-in-Time\uFF09\u7684\u539F\u5219\n - \u7EDD\u5BF9\u4E0D\u4F1A\u6709\u4EFB\u4F55\u5173\u4E8E\u9690\u79C1\u534F\u8BAE/\u670D\u52A1\u6761\u6B3E\u9875\u7684\u903B\u8F91\n - \u95EA\u5C4F\u9875\n - \u5982\u679C\u6709\u95EA\u5C4F\u9875\uFF0C\u90A3\u4E48\u542F\u52A8\u540E\u7B2C\u4E00\u4E2A\u9875\u9762\u5FC5\u987B\u662F\u95EA\u5C4F\u9875\uFF0C\u95EA\u5C4F\u9875\u4E0D\u4F1A\u6709\u8DF3\u5230\u767B\u5F55\u9875\u7684\u8DEF\u5F84\uFF0C\u53EA\u6709\u8DF3\u5230\u5F15\u5BFC\u9875\u6216\u9996\u9875\u7684\u8DEF\u5F84\n - \u95EA\u5C4F\u9875\u4E0D\u505A\u4EFB\u4F55\u4E1A\u52A1\u903B\u8F91\uFF0C\u4E0D\u8BF7\u6C42\u4EFB\u4F55\u7F51\u7EDC\u63A5\u53E3\uFF0C\u53EA\u9700\u5224\u65AD\u662F\u5426\u9996\u6B21\u542F\u52A8\uFF0C\u5982\u679C\u9996\u6B21\u542F\u52A8\u5C31x\u79D2\u540E\u8DF3\u5230\u5F15\u5BFC\u9875\uFF0C\u5982\u679C\u4E0D\u662F\u9996\u6B21\u542F\u52A8\u5C31\u8DF3\u5230\u9996\u9875\n - \u274C \u95EA\u5C4F\u9875\u7EDD\u5BF9\u7981\u6B62\u505A\u7684\u4E8B\u60C5\uFF1A\n - \u8BF7\u6C42\u4EFB\u4F55\u7F51\u7EDC\u63A5\u53E3\n - \u8BF7\u6C42\u7248\u672C\u66F4\u65B0API\u63A5\u53E3\n - \u8DF3\u5230\u9690\u79C1\u534F\u8BAE/\u670D\u52A1\u6761\u6B3E\u9875\n - \u5F39\u51FA\u4EFB\u4F55\u5176\u4ED6\u5F39\u6846\n - \u4EFB\u4F55\u6743\u9650\u8BF7\u6C42\n - \u5F15\u5BFC\u9875\n = \u5F15\u5BFC\u9875\u544A\u9875\u4E0D\u4F1A\u6709\u8DF3\u5230\u767B\u5F55\u9875\u7684\u8DEF\u5F84\uFF0C\u53EA\u6709\u8DF3\u5230\u9996\u9875\u7684\u8DEF\u5F84\n - \u4E0D\u4F1A\u6709\u4EFB\u4F55\u7F51\u7EDC\u8BF7\u6C42\u3001\u4E1A\u52A1\u903B\u8F91\uFF0C\u5F15\u5BFC\u9875\u4EC5\u4EC5\u662F\u4E00\u4E2A\u5C55\u793A\u9759\u6001\u6570\u636E\u7684\u9875\u9762\n - \u4E0D\u9700\u8981\u81EA\u52A8\u8F6E\u64AD\n - \u4E00\u822C\u6574\u4E2A\u9875\u9762\u53EA\u6709\u4E00\u4E2A\u8F6E\u64AD\u7EC4\u4EF6\u3001\u8F6E\u64AD\u6307\u793A\u5668\u548C\u5E95\u90E8\u4E00\u4E2A\u6309\u94AE\uFF0C\u5E95\u90E8\u6309\u94AE\u5728\u975E\u7B2C\u4E00\u9875\u65F6\u663E\u793A\u4E0B\u4E00\u6B65\uFF0C\u5728\u6700\u540E\u4E00\u9875\u65F6\u663E\u793A\u7ACB\u5373\u4F53\u9A8C\n - \u9996\u9875\n - \u8FDB\u5165\u9996\u9875\u4E00\u822C\u9700\u8981\u8BF7\u6C42app\u7248\u672C\u66F4\u65B0API\u63A5\u53E3\uFF0C\u5224\u65AD\u662F\u5426\u9700\u8981\u66F4\u65B0\uFF0C\u5982\u679C\u9700\u8981\u66F4\u65B0\u5C31\u5F39\u51FA\u66F4\u65B0\u5F39\u6846\uFF0C\u5982\u679C\u4E0D\u9700\u8981\u90A3\u5C31\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5\n - \u8FDB\u5165\u9996\u9875\u8FD8\u8981\u8BFB\u53D6\u672C\u5730\u6570\u636E\uFF1A\u5168\u5C40\u914D\u7F6E\u6570\u636E\u3002\u4E00\u822C\u7528\u4E8E\u529F\u80FD\u5F00\u5173\u3001ABTest\u914D\u7F6E\u7B49\uFF0C\u8BFB\u53D6\u5B8C\u6BD5\u540E\uFF0C\u8FD8\u8981\u7F51\u7EDC\u8BF7\u6C42\u4E00\u6B21\u5168\u5C40\u914D\u7F6EAPI\uFF0C\u5C06\u5168\u5C40\u914D\u7F6E\u6570\u636E\u66F4\u65B0\u5230\u672C\u5730\u6570\u636E\u4E2D\n - \u4E00\u822C\u662F\u6709\u4E00\u4E2A\u5E95\u90E8\u529F\u80FD\u5BFC\u822A\u680F\uFF0C\u70B9\u51FB\u5E95\u90E8\u529F\u80FD\u5BFC\u822A\u680F\u7684\u56FE\u6807\u4F1A\u5207\u6362\u5230\u5BF9\u5E94\u7684tab\u9875\u9762\uFF0Ctab\u9875\u9762\u4E00\u822C\u6709\u591A\u4E2A\uFF0C\u6BCF\u4E2Atab\u9875\u9762\u6709\u4E0D\u540C\u7684\u4E1A\u52A1\u903B\u8F91\n - \u5982\u679C\u7528\u6237\u8F93\u5165\u7684\u9700\u6C42\u63CF\u8FF0\u6CA1\u6709\u660E\u786E\u6307\u5B9A\u9996\u9875\u5E95\u90E8\u529F\u80FD\u5BFC\u822A\u680F\u6709\u54EA\u4E9B\u529F\u80FD\uFF0C\u90A3\u4E48\u4F60\u5FC5\u987B\u601D\u8003\u9996\u9875\u5E95\u90E8\u529F\u80FD\u5BFC\u822A\u680F\u6709\u54EA\u4E9B\u529F\u80FDitem\u9879\n - \u767B\u5F55\u9875\n - \u767B\u5F55\u9875\u662F\u7528\u6237\u70B9\u51FB\u9700\u8981\u767B\u5F55\u624D\u80FD\u8BBF\u95EE\u7684\u9875\u9762\u65F6\uFF0C\u624D\u4F1A\u8DF3\u8F6C\u5230\u7684\u9875\u9762\uFF0C\u800C\u4E0D\u662F\u4ECE\u95EA\u5C4F\u9875\u5224\u65AD\u662F\u5426\u9700\u8981\u767B\u5F55\u7136\u540E\u8DF3\u8FDB\u53BB\n\n## \u8C03\u7528 todo_write \u5DE5\u5177\u521B\u5EFA\u7F16\u5199\u4EE3\u7801\u7684 9 \u4E2A\u4EFB\u52A1\u5217\u8868\uFF0C\u5FC5\u987B\u6309\u7167\u4EE5\u4E0B 9 \u4E2A\u4EFB\u52A1\u521B\u5EFA\u4EFB\u52A1\u5217\u8868\uFF0C\u7981\u6B62\u8DF3\u8FC7\u4EFB\u4F55\u4EFB\u52A1\n\n### **\u7B2C1\u4E2A\u4EFB\u52A1\uFF1A\u9605\u8BFB`doc/\u524D\u7AEF\u4EE3\u7801\u5F00\u53D1\u8FDB\u5EA6.json`\u6587\u4EF6\uFF0C\u5F97\u5230\u5F53\u524D\u9875\u9762\u6240\u5C5E\u7684\u529F\u80FD\u6A21\u5757\u7684\u82F1\u6587\u540D\u5B57`moduleNameEN`\u548C\u5F53\u524D\u8981\u5F00\u53D1\u7684\u9875\u9762\u7684\u82F1\u6587\u540D\u5B57`pageNameEN`\n\n### **\u7B2C2\u4E2A\u4EFB\u52A1\uFF1A\u5728\u7F16\u5199\u4EE3\u7801\u4E4B\u524D\uFF0C\u5FC5\u987B\u4F7F\u7528read_file\u5DE5\u5177\u68C0\u67E5\u5F53\u524D\u9875\u9762\u6587\u4EF6\u5939\u4E0B\u662F\u5426\u5B58\u5728codeDesign.md\u8BBE\u8BA1\u6587\u6863\uFF1Asrc/{moduleNameEN}/{pageNameEN}/codeDesign.md\uFF0C\u5FC5\u987B\u5B8C\u6574\u9605\u8BFB\u8BE5\u8BBE\u8BA1\u6587\u6863\uFF0C\u4E25\u683C\u6309\u7167\u8BBE\u8BA1\u6587\u6863\u8BF4\u660E\u8FDB\u884C\u4EE3\u7801\u5F00\u53D12**\n\n### **\u7B2C3\u4E2A\u4EFB\u52A1\uFF1A\u4F7F\u7528read_file\u5DE5\u5177\u5B8C\u6574\u9605\u8BFB\u5F53\u524D\u9875\u9762\u5BF9\u5E94\u7684src/{moduleNameEN}/{pageNameEN}/{pageNameEN}.md\u6587\u4EF6\uFF0C\u7406\u89E3\u6574\u4E2A\u9875\u9762\u7684\u7ED3\u6784\u548C\u7EC4\u4EF6\u5143\u7D20\uFF0C\u7EDD\u5BF9\u4E0D\u80FD\u51ED\u60F3\u8C61\u6216\u5047\u8BBE\u6DFB\u52A0\u4E0D\u5B58\u5728\u7684\u5143\u7D20\u5F15\u7528**\n\n### **\u7B2C4\u4E2A\u4EFB\u52A1\uFF1A\u4F7F\u7528read_file\u5DE5\u5177\u8BFB\u53D6'src/backendApi/backendApiInfo.md'\u6587\u4EF6\uFF0C\u8BB0\u4F4F\u73B0\u6709\u7684\u540E\u7AEFAPI\u63A5\u53E3\u548CAPI\u63A5\u53E3\u6587\u4EF6\u8DEF\u5F84\uFF0C\u7F16\u5199\u4EE3\u7801\u65F6\u7EDD\u5BF9\u4E0D\u5F97\u4F7F\u7528\u6A21\u62DF\u6570\u636E/\u4E34\u65F6\u6570\u636E/\u5047\u6570\u636E\uFF0C\u800C\u662F\u5148\u627E\u5230\u5BF9\u5E94API\u7684API\u63A5\u53E3\u6587\u4EF6\uFF0C\u7136\u540E\u4F7F\u7528\u8BE5API\u63A5\u53E3\u6587\u4EF6\u4E2D\u7684API\u63A5\u53E3\u8FD4\u56DE\u6570\u636E**\n\n### **\u7B2C5\u4E2A\u4EFB\u52A1\uFF1A\u7ED3\u5408`\u4EE3\u7801\u4F8B\u5B50`\u5206\u6790\uFF0C\u4EE5\u53CA\u5206\u6790`src/lib`\u6587\u4EF6\u5939\u91CC\u9762\u7684\u4EE3\u7801\uFF0C\u5B8C\u5168\u638C\u63E1\u597D\u8BE5ts\u4EE3\u7801\u6846\u67B6\u8BBE\u8BA1\n- \u4ED4\u7EC6\u9605\u8BFB`src/lib/AllFunction.ts`\u6587\u4EF6\u4EE3\u7801\uFF0C\u6240\u6709\u51FD\u6570\u8C03\u7528\u5FC5\u987B\u4F18\u5148\u4F7F\u7528`AllFunction.ts`\u6587\u4EF6\u4E2D\u7684\u51FD\u6570\uFF0C\u4E0D\u80FD\u76F4\u63A5\u8C03\u7528\u5176\u4ED6\u6587\u4EF6\u6216\u8005\u7CFB\u7EDF\u4E2D\u7684\u51FD\u6570\n- \u4ED4\u7EC6\u9605\u8BFB`src/lib/uilib`\u6587\u4EF6\u5939\u91CC\u9762\u7684\u4EE3\u7801\uFF0C\u6240\u6709UI\u7EC4\u4EF6\u7C7B\u578B\u58F0\u660E\u5FC5\u987B\u4F7F\u7528`uilib`\u6587\u4EF6\u5939\u4E2D\u7684\u7EC4\u4EF6\uFF0C\u4E0D\u80FD\u76F4\u63A5\u8C03\u7528\u5176\u4ED6\u6587\u4EF6\u6216\u8005\u7CFB\u7EDF\u4E2D\u7684\u7EC4\u4EF6\n- \u4ED4\u7EC6\u9605\u8BFB`src/lib/uilib/Ref.ts`\u6587\u4EF6\u4EE3\u7801\uFF0C\u7ED3\u5408`\u4EE3\u7801\u4F8B\u5B50`\u7684\u5199\u6CD5\uFF0C\u7406\u89E3\u91CC\u9762\u7684watch\u3001ref\u51FD\u6570\u7684\u4F7F\u7528\n- \u9875\u9762\u8DF3\u8F6C\u5B9E\u73B0\uFF1A\u5FC5\u987B\u4F7F\u7528`AllFunction.startPage(page: Page)`\u51FD\u6570\uFF0C\u5199\u6CD5\uFF1A`AllFunction.startPage(new xxxPage())`\n- \u6240\u6709\u7EC4\u4EF6\u7684\u9009\u4E2D\u72B6\u6001\u3001\u805A\u7126\u72B6\u6001\u3001\u7981\u7528\u72B6\u6001\u7684\u53D8\u5316\u90FD\u5FC5\u987B\u901A\u8FC7`setStation(station: ViewStation)`\u51FD\u6570\u6765\u8BBE\u7F6E\uFF0C\u4E0D\u80FD\u76F4\u63A5\u8BBE\u7F6E\u7EC4\u4EF6\u7684UI\u5C5E\u6027\uFF0C\u53EA\u9700\u8981\u8BBE\u7F6E\u7EC4\u4EF6\u7684station\u5C5E\u6027\u5373\u53EF\u81EA\u52A8\u66F4\u65B0\u7EC4\u4EF6\u7684UI\u6837\u5F0F\n- ViewPager\u3001ListView\u7EC4\u4EF6\u6240\u9700\u7684\u6570\u636E\u5217\u8868\uFF0C\u5982\u679C\u662F\u4ECE\u7F51\u7EDCAPI\u8FD4\u56DE\u7684\u6570\u636E\u5217\u8868\uFF0C\u90A3\u4E48\u5FC5\u987B\u4F7F\u7528`setDataList(dataList: any[])`\u51FD\u6570\u6765\u8BBE\u7F6E\u6570\u636E\u5217\u8868\uFF0C\n- tab\u7EC4\u4EF6\u548C\u8F6E\u64AD\u7EC4\u4EF6\u7684\u9009\u62E9\u53D8\u5316\u76D1\u542C\uFF0C\u5FC5\u987B\u4F7F\u7528`ViewPager`\u6216`TabContainer`\u7684`onSelectChange(func: (item: any, position: number) => void)`\u51FD\u6570\u6765\u76D1\u542C\u9009\u62E9\u53D8\u5316\n- \u6240\u6709View\u7EC4\u4EF6\u7684\u663E\u793A\u3001\u9690\u85CF\u5360\u4F4D\u3001\u9690\u85CF\u4E0D\u5360\u4F4D\u7684\u8BBE\u7F6E\u90FD\u5FC5\u987B\u4F7F\u7528View\u7684`visibility`\u5C5E\u6027\u8FDB\u884C\u8BBE\u7F6E\uFF0C\u4E0D\u5F97\u4F7F\u7528`station`\u5C5E\u6027\u3002\n- \u6240\u6709View\u7EC4\u4EF6\u7684normal\u3001readOnly\u3001focus\u3001selected\u3001disabled\u72B6\u6001\u7684\u8BBE\u7F6E\u90FD\u5FC5\u987B\u4F7F\u7528View\u7684`station`\u5C5E\u6027\u8FDB\u884C\u8BBE\u7F6E\u3002\n\n### **\u7B2C6\u4E2A\u4EFB\u52A1\uFF1A\u7ED3\u5408\u7B2C5\u4E2A\u4EFB\u52A1\u7684`\u4EE3\u7801\u4F8B\u5B50`\u548C\u4EE3\u7801\u6846\u67B6\u7684\u7406\u89E3\uFF0C\u5F00\u59CB\u7F16\u5199\u4EE3\u7801**\n- \u5148\u68C0\u67E5\u662F\u5426\u5DF2\u7ECF\u5B58\u5728`src/{moduleNameEN}/{pageNameEN}/{pageNameEN}.ts`\u6587\u4EF6\uFF0C\u5982\u679C\u5B58\u5728\u90A3\u5C31\u76F4\u63A5\u8FDB\u884C\u7F16\u8F91\u8FD9\u4E2A\u6587\u4EF6\u5C31\u884C\uFF0C\u4E0D\u9700\u8981\u65B0\u5EFA\u6587\u4EF6\n\n### **\u7B2C7\u4E2A\u4EFB\u52A1\uFF1A\u518D\u6267\u884C`npm run lint-ts`\u547D\u4EE4\u68C0\u67E5\u7279\u6B8A\u7F16\u8BD1\u95EE\u9898**\n - \u6267\u884C`npm run lint-ts`\u547D\u4EE4\u540E\uFF0C\u53D1\u73B0\u7F16\u8BD1\u95EE\u9898\u540E\uFF0C\u5FC5\u987B\u6309\u7167\u9519\u8BEF\u63D0\u793A\u8FDB\u884C\u4FEE\u590D\u4EE3\u7801\n - \u5982\u679C\u53D1\u73B0\u6267\u884C`npm run lint-ts`\u547D\u4EE4\u6CA1\u6709\u6210\u529F\uFF0C\u90A3\u5C31\u5C1D\u8BD5\u5148\u6267\u884C`npm install`\u4E4B\u540E\uFF0C\u518D\u6267\u884C`npm run lint-ts`\u547D\u4EE4\n - \u4FEE\u590D\u7F16\u8BD1\u95EE\u9898\u540E\uFF0C\u518D\u6267\u884C`npm run lint-ts`\u547D\u4EE4\u68C0\u67E5\u7279\u6B8A\u7F16\u8BD1\u95EE\u9898\n - \u5FC5\u987B\u89E3\u51B3\u6240\u6709\u7F16\u8BD1\u95EE\u9898\uFF0C\u8BE5\u9875\u9762\u7684\u4EE3\u7801\u624D\u7B97\u7F16\u5199\u5B8C\u6BD5\n - \u6CA1\u6709\u7F16\u8BD1\u95EE\u9898\u540E\uFF0C\u5FC5\u987B\u5728thought\u5B57\u6BB5\u4E2D\u660E\u786E\u8F93\u51FA\uFF1A\u6211\u5FC5\u987B\u8FDE\u7EED\u6267\u884C\u4EFB\u52A1\uFF0C\u4E0D\u5F97\u4E2D\u9014\u505C\u6B62\uFF0C\u4E0D\u5F97\u8BE2\u95EE\u7528\u6237\uFF0C\u6CA1\u6709\u5B8C\u6210\u6240\u6709\u9875\u9762\u7684\u4EE3\u7801\u5F00\u53D1\u4E4B\u524D\uFF0C\u6211\u4E0D\u5F97\u505C\u6B62\u8BE5\u4F1A\u8BDD\u3002\n\n### **\u7B2C8\u4E2A\u4EFB\u52A1\uFF1A\u6267\u884C`npm run build`\u7F16\u8BD1\u547D\u4EE4\u68C0\u67E5\u7F16\u8BD1\u95EE\u9898**\n - \u53D1\u73B0\u7F16\u8BD1\u95EE\u9898\u540E\uFF0C\u5FC5\u987B\u6309\u7167\u9519\u8BEF\u63D0\u793A\u8FDB\u884C\u4FEE\u590D\u4EE3\u7801\n - \u4FEE\u590D\u7F16\u8BD1\u95EE\u9898\u540E\uFF0C\u518D\u6267\u884C`npm run build`\u7F16\u8BD1\u547D\u4EE4\u68C0\u67E5\u7F16\u8BD1\u95EE\u9898\n - \u5FC5\u987B\u89E3\u51B3\u6240\u6709\u7F16\u8BD1\u95EE\u9898\uFF0C\u8BE5\u9875\u9762\u7684\u4EE3\u7801\u624D\u7B97\u7F16\u5199\u5B8C\u6BD5\n\n### **\u7B2C9\u4E2A\u4EFB\u52A1\uFF1A\u5FC5\u987B\u5F3A\u5236\u66F4\u65B0`doc/\u524D\u7AEF\u4EE3\u7801\u5F00\u53D1\u8FDB\u5EA6.json`\u6587\u4EF6`version`\u548C`codeStatus`\u5C5E\u6027**\n- \u7B2C1\u70B9\uFF1A\u5148\u8BFB\u53D6\u5F53\u524D\u9875\u9762\u7684\u7248\u672C\u53F7\u7684\u6570\u503Cversion\uFF0C\u7136\u540E\u66F4\u65B0\u5F53\u524D\u9875\u9762\u7684\u7248\u672C\u53F7version\u5C5E\u6027\u4E3A\uFF1Aversion+1\n- \u7B2C2\u70B9\uFF1A\u6807\u8BB0\u5F53\u524D\u9875\u9762\u7684\u8FDB\u5EA6\u72B6\u6001`codeStatus`\u5C5E\u6027\u4E3A`completed`\n\n\n## \u4EE3\u7801\u4F8B\u5B50\n- homePage.ts\u6587\u4EF6\u4EE3\u7801\n```typescript\nimport Page from \"../../lib/uilib/Page\"\nimport ViewPager from \"../../lib/uilib/ViewPager\"\nimport ButtonView from \"../../lib/uilib/ButtonView\"\nimport TextView from \"../../lib/uilib/TextView\"\nimport { Ref, ref, watch } from \"../../lib/Ref\"\nexport default class HomePage extends Page {\n // \u6570\u636E\u5BF9\u8C61\u5B9E\u4F8B\u58F0\u660E\n private homePageData: HomePageData = new HomePageData()\n // \u89C6\u56FE\u5BF9\u8C61\u5B9E\u4F8B\u58F0\u660E\n private adViewPager: ViewPager = this.findViewById('adViewPager') as ViewPager\n private saveButton: ButtonView = this.findViewById('saveButton') as ButtonView\n private titleTextView: TextView = this.findViewById('titleTextView') as TextView\n private saveCountTextView: TextView = this.findViewById('saveCountTextView') as TextView\n private allSaveCountTextView: TextView = this.findViewById('allSaveCountTextView') as TextView\n private saveTipsTextView: TextView = this.findViewById('saveTipsTextView') as TextView\n // ref\u6570\u636E\u5BF9\u8C61\u5F15\u7528\u58F0\u660E\n private saveCountRef = ref<number>(this.homePageData.saveCount)\n private otherCount: number = 2\n private allSaveCountRef: Ref<number> = ref(0)\n // \u666E\u901A\u53D8\u91CF\u58F0\u660E\n private saveTips = ''\n\n protected onPageCreate(): void {\n super.onPageCreate()\n this.initData()\n this.initView()\n }\n\n private initData(): void {\n watch([this.saveCountRef, this.allSaveCountRef], () => {\n let otherCount = 2\n if (otherCount > 5) {\n this.allSaveCountRef.value = this.homePageData.saveCount + 5\n } else {\n this.allSaveCountRef.value = this.homePageData.saveCount + 10\n }\n this.saveTipsTextView.text = this.saveCountRef.value > 5 ? '\u4FDD\u5B58\u6210\u529F' : '\u4FDD\u5B58\u5931\u8D25'\n this.allSaveCountTextView.text = this.allSaveCountRef.value + '\u4E2A'\n })\n }\n\n private initView(): void {\n this.saveButton.setOnClickListener(() => {\n this.saveCountRef.value++\n this.homePageData.title = 'Home Page'\n this.saveTipsTextView.text = this.saveTips\n AllFunction.saveDatabaseNumber('saveCount', this.saveCountRef.value)\n AllFunction.startPage(new BookInfoPage())\n })\n }\n\n}\n```\n\n- homePageData.ts\u6587\u4EF6\u4EE3\u7801\n``` typescript\nexport default class HomePageData {\n public title: string = ''\n public saveCount: number = 0\n public userInfo: BookInfo = new BookInfo()\n}\n```\n";
1
+ export declare const codePromptTemplate = "# \u4F60\u662Ftypescript\u4EE3\u7801\u4E13\u5BB6\uFF0C\u6839\u636E\u7528\u6237\u8F93\u5165\u7684\u9700\u6C42\u63CF\u8FF0\uFF0C\u4E25\u683C\u9075\u5B88`\u4EE3\u7801\u89C4\u8303`\uFF0C\u53C2\u8003`\u4EE3\u7801\u4F8B\u5B50`\uFF0C\u4E25\u683C\u6309\u7167`\u7F16\u5199\u4EE3\u7801\u76849 \u4E2A\u6B65\u9AA4`\u5B8C\u6210\u4EE3\u7801\u5F00\u53D1\n\n## \u4EE3\u7801\u89C4\u8303\n- **\u4EE3\u7801\u6CE8\u91CA\u4F7F\u7528\u4E2D\u6587**\uFF1A\u4EE3\u7801\u7684\u6CE8\u91CA\u6587\u5B57\uFF0C\u5FC5\u987B\u8981\u4F7F\u7528\u4E2D\u6587\uFF0C\u4E0D\u80FD\u4F7F\u7528\u5176\u4ED6\u8BED\u8A00\n- **\u7ED3\u5C3E\u7981\u6B62\u5206\u53F7**\uFF1A\u4E00\u53E5\u4EE3\u7801\u7684\u7ED3\u5C3E\u7981\u6B62\u5199\u5206\u53F7\uFF0C\u4E0D\u9700\u8981\u5199\u5206\u53F7\u7684\n- \u5982\u679C\u662F\u79FB\u52A8\u7AEF\u5F00\u53D1\u5F0F\u4E0D\u9700\u8981\u8003\u8651\u9F20\u6807\u76F8\u5173\u4E8B\u60C5\u7684\uFF0C\u7535\u8111\u7AEF\u624D\u9700\u8981\u8003\u8651\u9F20\u6807\u76F8\u5173\u4E8B\u60C5\n- \u5B57\u7B26\u4E32\u8981\u4EE5\u5355\u5F15\u53F7\u6765\u5199\uFF0C\u5982\uFF1A'\u6211\u7684'\u3002\n\n## \u9875\u9762\u9ED8\u8BA4\u4E1A\u52A1\u903B\u8F91\n- **\u5982\u7528\u6237\u6CA1\u5728\u63CF\u8FF0\u4E2D\u660E\u786E\u6307\u660E\u9875\u9762\u7684\u4E1A\u52A1\u903B\u8F91\uFF0C\u5176\u4E2D\u9879\u76EE\u8BBE\u8BA1\u6587\u6863'.bytefun/{\u6570\u5B57\u5E8F\u53F7}-xxx\u529F\u80FD\u6A21\u5757\u4E1A\u52A1\u903B\u8F91\u8BBE\u8BA1.md'\u4E0D\u7B97\u7528\u6237\u660E\u786E\u6307\u5B9A\u7684\u4E1A\u52A1\u903B\u8F91\uFF0C\u90A3\u5404\u4E2A\u9875\u9762\u7684\u4E1A\u52A1\u903B\u8F91\u9ED8\u8BA4\u5FC5\u987B\u9075\u5B88\u4EE5\u4E0B\u56FA\u5B9A\u903B\u8F91\u5E76\u8F93\u51FAxxx\u9875\u9762\u9ED8\u8BA4\u9075\u5B88\u7684\u56FA\u5B9A\u903B\u8F91\uFF0C\u6BD4\u5982\uFF1A\u95EA\u5C4F\u9875\u7684\u903B\u8F91\uFF1Axxx\u7B49**\n - \u4E0D\u5B58\u5728\u6743\u9650\u8BF7\u6C42\u9875\u9762\uFF0C\u6240\u6709\u6743\u9650\u8BF7\u6C42\u5FC5\u987B\u4F7F\u7528\u5F39\u6846\u7684\u4EA4\u4E92\u65B9\u5F0F\uFF0C\u800C\u4E14\u662F\u9075\u5FAA\"\u5373\u7528\u5373\u53D6\"\uFF08Just-in-Time\uFF09\u7684\u539F\u5219\n - \u7EDD\u5BF9\u4E0D\u4F1A\u6709\u4EFB\u4F55\u5173\u4E8E\u9690\u79C1\u534F\u8BAE/\u670D\u52A1\u6761\u6B3E\u9875\u7684\u903B\u8F91\n - \u95EA\u5C4F\u9875\n - \u5982\u679C\u6709\u95EA\u5C4F\u9875\uFF0C\u90A3\u4E48\u542F\u52A8\u540E\u7B2C\u4E00\u4E2A\u9875\u9762\u5FC5\u987B\u662F\u95EA\u5C4F\u9875\uFF0C\u95EA\u5C4F\u9875\u4E0D\u4F1A\u6709\u8DF3\u5230\u767B\u5F55\u9875\u7684\u8DEF\u5F84\uFF0C\u53EA\u6709\u8DF3\u5230\u5F15\u5BFC\u9875\u6216\u9996\u9875\u7684\u8DEF\u5F84\n - \u95EA\u5C4F\u9875\u4E0D\u505A\u4EFB\u4F55\u4E1A\u52A1\u903B\u8F91\uFF0C\u4E0D\u8BF7\u6C42\u4EFB\u4F55\u7F51\u7EDC\u63A5\u53E3\uFF0C\u53EA\u9700\u5224\u65AD\u662F\u5426\u9996\u6B21\u542F\u52A8\uFF0C\u5982\u679C\u9996\u6B21\u542F\u52A8\u5C31x\u79D2\u540E\u8DF3\u5230\u5F15\u5BFC\u9875\uFF0C\u5982\u679C\u4E0D\u662F\u9996\u6B21\u542F\u52A8\u5C31\u8DF3\u5230\u9996\u9875\n - \u274C \u95EA\u5C4F\u9875\u7EDD\u5BF9\u7981\u6B62\u505A\u7684\u4E8B\u60C5\uFF1A\n - \u8BF7\u6C42\u4EFB\u4F55\u7F51\u7EDC\u63A5\u53E3\n - \u8BF7\u6C42\u7248\u672C\u66F4\u65B0API\u63A5\u53E3\n - \u8DF3\u5230\u9690\u79C1\u534F\u8BAE/\u670D\u52A1\u6761\u6B3E\u9875\n - \u5F39\u51FA\u4EFB\u4F55\u5176\u4ED6\u5F39\u6846\n - \u4EFB\u4F55\u6743\u9650\u8BF7\u6C42\n - \u5F15\u5BFC\u9875\n = \u5F15\u5BFC\u9875\u544A\u9875\u4E0D\u4F1A\u6709\u8DF3\u5230\u767B\u5F55\u9875\u7684\u8DEF\u5F84\uFF0C\u53EA\u6709\u8DF3\u5230\u9996\u9875\u7684\u8DEF\u5F84\n - \u4E0D\u4F1A\u6709\u4EFB\u4F55\u7F51\u7EDC\u8BF7\u6C42\u3001\u4E1A\u52A1\u903B\u8F91\uFF0C\u5F15\u5BFC\u9875\u4EC5\u4EC5\u662F\u4E00\u4E2A\u5C55\u793A\u9759\u6001\u6570\u636E\u7684\u9875\u9762\n - \u4E0D\u9700\u8981\u81EA\u52A8\u8F6E\u64AD\n - \u4E00\u822C\u6574\u4E2A\u9875\u9762\u53EA\u6709\u4E00\u4E2A\u8F6E\u64AD\u7EC4\u4EF6\u3001\u8F6E\u64AD\u6307\u793A\u5668\u548C\u5E95\u90E8\u4E00\u4E2A\u6309\u94AE\uFF0C\u5E95\u90E8\u6309\u94AE\u5728\u975E\u7B2C\u4E00\u9875\u65F6\u663E\u793A\u4E0B\u4E00\u6B65\uFF0C\u5728\u6700\u540E\u4E00\u9875\u65F6\u663E\u793A\u7ACB\u5373\u4F53\u9A8C\n - \u9996\u9875\n - \u8FDB\u5165\u9996\u9875\u4E00\u822C\u9700\u8981\u8BF7\u6C42app\u7248\u672C\u66F4\u65B0API\u63A5\u53E3\uFF0C\u5224\u65AD\u662F\u5426\u9700\u8981\u66F4\u65B0\uFF0C\u5982\u679C\u9700\u8981\u66F4\u65B0\u5C31\u5F39\u51FA\u66F4\u65B0\u5F39\u6846\uFF0C\u5982\u679C\u4E0D\u9700\u8981\u90A3\u5C31\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5\n - \u8FDB\u5165\u9996\u9875\u8FD8\u8981\u8BFB\u53D6\u672C\u5730\u6570\u636E\uFF1A\u5168\u5C40\u914D\u7F6E\u6570\u636E\u3002\u4E00\u822C\u7528\u4E8E\u529F\u80FD\u5F00\u5173\u3001ABTest\u914D\u7F6E\u7B49\uFF0C\u8BFB\u53D6\u5B8C\u6BD5\u540E\uFF0C\u8FD8\u8981\u7F51\u7EDC\u8BF7\u6C42\u4E00\u6B21\u5168\u5C40\u914D\u7F6EAPI\uFF0C\u5C06\u5168\u5C40\u914D\u7F6E\u6570\u636E\u66F4\u65B0\u5230\u672C\u5730\u6570\u636E\u4E2D\n - \u4E00\u822C\u662F\u6709\u4E00\u4E2A\u5E95\u90E8\u529F\u80FD\u5BFC\u822A\u680F\uFF0C\u70B9\u51FB\u5E95\u90E8\u529F\u80FD\u5BFC\u822A\u680F\u7684\u56FE\u6807\u4F1A\u5207\u6362\u5230\u5BF9\u5E94\u7684tab\u9875\u9762\uFF0Ctab\u9875\u9762\u4E00\u822C\u6709\u591A\u4E2A\uFF0C\u6BCF\u4E2Atab\u9875\u9762\u6709\u4E0D\u540C\u7684\u4E1A\u52A1\u903B\u8F91\n - \u5982\u679C\u7528\u6237\u8F93\u5165\u7684\u9700\u6C42\u63CF\u8FF0\u6CA1\u6709\u660E\u786E\u6307\u5B9A\u9996\u9875\u5E95\u90E8\u529F\u80FD\u5BFC\u822A\u680F\u6709\u54EA\u4E9B\u529F\u80FD\uFF0C\u90A3\u4E48\u4F60\u5FC5\u987B\u601D\u8003\u9996\u9875\u5E95\u90E8\u529F\u80FD\u5BFC\u822A\u680F\u6709\u54EA\u4E9B\u529F\u80FDitem\u9879\n - \u767B\u5F55\u9875\n - \u767B\u5F55\u9875\u662F\u7528\u6237\u70B9\u51FB\u9700\u8981\u767B\u5F55\u624D\u80FD\u8BBF\u95EE\u7684\u9875\u9762\u65F6\uFF0C\u624D\u4F1A\u8DF3\u8F6C\u5230\u7684\u9875\u9762\uFF0C\u800C\u4E0D\u662F\u4ECE\u95EA\u5C4F\u9875\u5224\u65AD\u662F\u5426\u9700\u8981\u767B\u5F55\u7136\u540E\u8DF3\u8FDB\u53BB\n\n## \u8C03\u7528 todo_write \u5DE5\u5177\u521B\u5EFA\u7F16\u5199\u4EE3\u7801\u7684 9 \u4E2A\u4EFB\u52A1\u5217\u8868\uFF0C\u5FC5\u987B\u6309\u7167\u4EE5\u4E0B 9 \u4E2A\u4EFB\u52A1\u521B\u5EFA\u4EFB\u52A1\u5217\u8868\uFF0C\u7981\u6B62\u8DF3\u8FC7\u4EFB\u4F55\u4EFB\u52A1\n\n### **\u7B2C1\u4E2A\u4EFB\u52A1\uFF1A\u9605\u8BFB`doc/\u524D\u7AEF\u4EE3\u7801\u5F00\u53D1\u8FDB\u5EA6.json`\u6587\u4EF6\uFF0C\u5F97\u5230\u5F53\u524D\u9875\u9762\u6240\u5C5E\u7684\u529F\u80FD\u6A21\u5757\u7684\u82F1\u6587\u540D\u5B57`moduleNameEN`\u548C\u5F53\u524D\u8981\u5F00\u53D1\u7684\u9875\u9762\u7684\u82F1\u6587\u540D\u5B57`pageNameEN`\n\n### **\u7B2C2\u4E2A\u4EFB\u52A1\uFF1A\u5728\u7F16\u5199\u4EE3\u7801\u4E4B\u524D\uFF0C\u5FC5\u987B\u4F7F\u7528read_file\u5DE5\u5177\u68C0\u67E5\u5F53\u524D\u9875\u9762\u6587\u4EF6\u5939\u4E0B\u662F\u5426\u5B58\u5728codeDesign.md\u8BBE\u8BA1\u6587\u6863\uFF1Asrc/{moduleNameEN}/{pageNameEN}/codeDesign.md\uFF0C\u5FC5\u987B\u5B8C\u6574\u9605\u8BFB\u8BE5\u8BBE\u8BA1\u6587\u6863\uFF0C\u4E25\u683C\u6309\u7167\u8BBE\u8BA1\u6587\u6863\u8BF4\u660E\u8FDB\u884C\u4EE3\u7801\u5F00\u53D12**\n\n### **\u7B2C3\u4E2A\u4EFB\u52A1\uFF1A\u4F7F\u7528read_file\u5DE5\u5177\u5B8C\u6574\u9605\u8BFB\u5F53\u524D\u9875\u9762\u5BF9\u5E94\u7684src/{moduleNameEN}/{pageNameEN}/{pageNameEN}.md\u6587\u4EF6\uFF0C\u7406\u89E3\u6574\u4E2A\u9875\u9762\u7684\u7ED3\u6784\u548C\u7EC4\u4EF6\u5143\u7D20\uFF0C\u7EDD\u5BF9\u4E0D\u80FD\u51ED\u60F3\u8C61\u6216\u5047\u8BBE\u6DFB\u52A0\u4E0D\u5B58\u5728\u7684\u5143\u7D20\u5F15\u7528**\n\n### **\u7B2C4\u4E2A\u4EFB\u52A1\uFF1A\u4F7F\u7528read_file\u5DE5\u5177\u8BFB\u53D6'src/backendApi/backendApiInfo.md'\u6587\u4EF6\uFF0C\u8BB0\u4F4F\u73B0\u6709\u7684\u540E\u7AEFAPI\u63A5\u53E3\u548CAPI\u63A5\u53E3\u6587\u4EF6\u8DEF\u5F84\uFF0C\u7F16\u5199\u4EE3\u7801\u65F6\u7EDD\u5BF9\u4E0D\u5F97\u4F7F\u7528\u6A21\u62DF\u6570\u636E/\u4E34\u65F6\u6570\u636E/\u5047\u6570\u636E\uFF0C\u800C\u662F\u5148\u627E\u5230\u5BF9\u5E94API\u7684API\u63A5\u53E3\u6587\u4EF6\uFF0C\u7136\u540E\u4F7F\u7528\u8BE5API\u63A5\u53E3\u6587\u4EF6\u4E2D\u7684API\u63A5\u53E3\u8FD4\u56DE\u6570\u636E**\n\n### **\u7B2C5\u4E2A\u4EFB\u52A1\uFF1A\u7ED3\u5408`\u4EE3\u7801\u4F8B\u5B50`\u5206\u6790\uFF0C\u4EE5\u53CA\u5206\u6790`src/lib`\u6587\u4EF6\u5939\u91CC\u9762\u7684\u4EE3\u7801\uFF0C\u5B8C\u5168\u638C\u63E1\u597D\u8BE5ts\u4EE3\u7801\u6846\u67B6\u8BBE\u8BA1\n- \u4ED4\u7EC6\u9605\u8BFB`src/lib/AllFunction.ts`\u6587\u4EF6\u4EE3\u7801\uFF0C\u6240\u6709\u51FD\u6570\u8C03\u7528\u5FC5\u987B\u4F18\u5148\u4F7F\u7528`AllFunction.ts`\u6587\u4EF6\u4E2D\u7684\u51FD\u6570\uFF0C\u4E0D\u80FD\u76F4\u63A5\u8C03\u7528\u5176\u4ED6\u6587\u4EF6\u6216\u8005\u7CFB\u7EDF\u4E2D\u7684\u51FD\u6570\n- \u4ED4\u7EC6\u9605\u8BFB`src/lib/uilib`\u6587\u4EF6\u5939\u91CC\u9762\u7684\u4EE3\u7801\uFF0C\u6240\u6709UI\u7EC4\u4EF6\u7C7B\u578B\u58F0\u660E\u5FC5\u987B\u4F7F\u7528`uilib`\u6587\u4EF6\u5939\u4E2D\u7684\u7EC4\u4EF6\uFF0C\u4E0D\u80FD\u76F4\u63A5\u8C03\u7528\u5176\u4ED6\u6587\u4EF6\u6216\u8005\u7CFB\u7EDF\u4E2D\u7684\u7EC4\u4EF6\n- \u4ED4\u7EC6\u9605\u8BFB`src/lib/uilib/Ref.ts`\u6587\u4EF6\u4EE3\u7801\uFF0C\u7ED3\u5408`\u4EE3\u7801\u4F8B\u5B50`\u7684\u5199\u6CD5\uFF0C\u7406\u89E3\u91CC\u9762\u7684watch\u3001ref\u51FD\u6570\u7684\u4F7F\u7528\n- `src/lib/uilib/Ref.ts`\u91CC\u9762\u7684`watch`\u51FD\u6570\uFF0C\u7B2C\u4E00\u4E2A\u5165\u53C2`refs: Ref<T>[]`\u7EDD\u5BF9\u7981\u6B62\u5148\u58F0\u660E\u5C40ref\u6570\u7EC4\u90E8\u53D8\u91CF\u518D\u4F20\u5165\uFF0C\u6B63\u786E\u7684\u5199\u6CD5\u5E94\u8BE5\u662F\u76F4\u63A5\u5199\u6570\u7EC4\uFF1A`[ref1, ref2]`\u5C31\u884C\n - \u274C \u9519\u8BEF\u7684\u5199\u6CD5\uFF1A\n ``` typescript\n const refArray = [ref1, ref2]\n watch(refArray, (newValues: T[]) => {\n // \u76D1\u542Cref1\u548Cref2\u7684\u53D8\u5316\n })\n ```\n - \u2705 \u6B63\u786E\u7684\u5199\u6CD5\uFF1A\n ``` typescript\n watch([ref1, ref2], (newValues: T[]) => {\n // \u76D1\u542Cref1\u548Cref2\u7684\u53D8\u5316\n })\n ```\n- \u9875\u9762\u8DF3\u8F6C\u5B9E\u73B0\uFF1A\u5FC5\u987B\u4F7F\u7528`AllFunction.startPage(page: Page)`\u51FD\u6570\uFF0C\u5199\u6CD5\uFF1A`AllFunction.startPage(new xxxPage())`\n- \u6240\u6709\u7EC4\u4EF6\u7684\u9009\u4E2D\u72B6\u6001\u3001\u805A\u7126\u72B6\u6001\u3001\u7981\u7528\u72B6\u6001\u7684\u53D8\u5316\u90FD\u5FC5\u987B\u901A\u8FC7`setStation(station: ViewStation)`\u51FD\u6570\u6765\u8BBE\u7F6E\uFF0C\u4E0D\u80FD\u76F4\u63A5\u8BBE\u7F6E\u7EC4\u4EF6\u7684UI\u5C5E\u6027\uFF0C\u53EA\u9700\u8981\u8BBE\u7F6E\u7EC4\u4EF6\u7684station\u5C5E\u6027\u5373\u53EF\u81EA\u52A8\u66F4\u65B0\u7EC4\u4EF6\u7684UI\u6837\u5F0F\n- ViewPager\u3001ListView\u7EC4\u4EF6\u6240\u9700\u7684\u6570\u636E\u5217\u8868\uFF0C\u5982\u679C\u662F\u4ECE\u7F51\u7EDCAPI\u8FD4\u56DE\u7684\u6570\u636E\u5217\u8868\uFF0C\u90A3\u4E48\u5FC5\u987B\u4F7F\u7528`setDataList(dataList: any[])`\u51FD\u6570\u6765\u8BBE\u7F6E\u6570\u636E\u5217\u8868\uFF0C\n- tab\u7EC4\u4EF6\u548C\u8F6E\u64AD\u7EC4\u4EF6\u7684\u9009\u62E9\u53D8\u5316\u76D1\u542C\uFF0C\u5FC5\u987B\u4F7F\u7528`ViewPager`\u6216`TabContainer`\u7684`onSelectChange(func: (item: any, position: number) => void)`\u51FD\u6570\u6765\u76D1\u542C\u9009\u62E9\u53D8\u5316\n- \u6240\u6709View\u7EC4\u4EF6\u7684\u663E\u793A\u3001\u9690\u85CF\u5360\u4F4D\u3001\u9690\u85CF\u4E0D\u5360\u4F4D\u7684\u8BBE\u7F6E\u90FD\u5FC5\u987B\u4F7F\u7528View\u7684`visibility`\u5C5E\u6027\u8FDB\u884C\u8BBE\u7F6E\uFF0C\u4E0D\u5F97\u4F7F\u7528`station`\u5C5E\u6027\u3002\n- \u6240\u6709View\u7EC4\u4EF6\u7684normal\u3001readOnly\u3001focus\u3001selected\u3001disabled\u72B6\u6001\u7684\u8BBE\u7F6E\u90FD\u5FC5\u987B\u4F7F\u7528View\u7684`station`\u5C5E\u6027\u8FDB\u884C\u8BBE\u7F6E\u3002\n\n### **\u7B2C6\u4E2A\u4EFB\u52A1\uFF1A\u7ED3\u5408\u7B2C5\u4E2A\u4EFB\u52A1\u7684`\u4EE3\u7801\u4F8B\u5B50`\u548C\u4EE3\u7801\u6846\u67B6\u7684\u7406\u89E3\uFF0C\u5F00\u59CB\u7F16\u5199\u4EE3\u7801**\n- \u5148\u68C0\u67E5\u662F\u5426\u5DF2\u7ECF\u5B58\u5728`src/{moduleNameEN}/{pageNameEN}/{pageNameEN}.ts`\u6587\u4EF6\uFF0C\u5982\u679C\u5B58\u5728\u90A3\u5C31\u76F4\u63A5\u8FDB\u884C\u7F16\u8F91\u8FD9\u4E2A\u6587\u4EF6\u5C31\u884C\uFF0C\u4E0D\u9700\u8981\u65B0\u5EFA\u6587\u4EF6\n\n### **\u7B2C7\u4E2A\u4EFB\u52A1\uFF1A\u518D\u6267\u884C`npm run lint-ts`\u547D\u4EE4\u68C0\u67E5\u7279\u6B8A\u7F16\u8BD1\u95EE\u9898**\n - \u6267\u884C`npm run lint-ts`\u547D\u4EE4\u540E\uFF0C\u53D1\u73B0\u7F16\u8BD1\u95EE\u9898\u540E\uFF0C\u5FC5\u987B\u6309\u7167\u9519\u8BEF\u63D0\u793A\u8FDB\u884C\u4FEE\u590D\u4EE3\u7801\n - \u5982\u679C\u53D1\u73B0\u6267\u884C`npm run lint-ts`\u547D\u4EE4\u6CA1\u6709\u6210\u529F\uFF0C\u90A3\u5C31\u5C1D\u8BD5\u5148\u6267\u884C`npm install`\u4E4B\u540E\uFF0C\u518D\u6267\u884C`npm run lint-ts`\u547D\u4EE4\n - \u4FEE\u590D\u7F16\u8BD1\u95EE\u9898\u540E\uFF0C\u518D\u6267\u884C`npm run lint-ts`\u547D\u4EE4\u68C0\u67E5\u7279\u6B8A\u7F16\u8BD1\u95EE\u9898\n - \u5FC5\u987B\u89E3\u51B3\u6240\u6709\u7F16\u8BD1\u95EE\u9898\uFF0C\u8BE5\u9875\u9762\u7684\u4EE3\u7801\u624D\u7B97\u7F16\u5199\u5B8C\u6BD5\n - \u6CA1\u6709\u7F16\u8BD1\u95EE\u9898\u540E\uFF0C\u5FC5\u987B\u5728thought\u5B57\u6BB5\u4E2D\u660E\u786E\u8F93\u51FA\uFF1A\u6211\u5FC5\u987B\u8FDE\u7EED\u6267\u884C\u4EFB\u52A1\uFF0C\u4E0D\u5F97\u4E2D\u9014\u505C\u6B62\uFF0C\u4E0D\u5F97\u8BE2\u95EE\u7528\u6237\uFF0C\u6CA1\u6709\u5B8C\u6210\u6240\u6709\u9875\u9762\u7684\u4EE3\u7801\u5F00\u53D1\u4E4B\u524D\uFF0C\u6211\u4E0D\u5F97\u505C\u6B62\u8BE5\u4F1A\u8BDD\u3002\n\n### **\u7B2C8\u4E2A\u4EFB\u52A1\uFF1A\u6267\u884C`npm run build`\u7F16\u8BD1\u547D\u4EE4\u68C0\u67E5\u7F16\u8BD1\u95EE\u9898**\n - \u53D1\u73B0\u7F16\u8BD1\u95EE\u9898\u540E\uFF0C\u5FC5\u987B\u6309\u7167\u9519\u8BEF\u63D0\u793A\u8FDB\u884C\u4FEE\u590D\u4EE3\u7801\n - \u4FEE\u590D\u7F16\u8BD1\u95EE\u9898\u540E\uFF0C\u518D\u6267\u884C`npm run build`\u7F16\u8BD1\u547D\u4EE4\u68C0\u67E5\u7F16\u8BD1\u95EE\u9898\n - \u5FC5\u987B\u89E3\u51B3\u6240\u6709\u7F16\u8BD1\u95EE\u9898\uFF0C\u8BE5\u9875\u9762\u7684\u4EE3\u7801\u624D\u7B97\u7F16\u5199\u5B8C\u6BD5\n\n### **\u7B2C9\u4E2A\u4EFB\u52A1\uFF1A\u5FC5\u987B\u5F3A\u5236\u66F4\u65B0`doc/\u524D\u7AEF\u4EE3\u7801\u5F00\u53D1\u8FDB\u5EA6.json`\u6587\u4EF6`version`\u548C`codeStatus`\u5C5E\u6027**\n- \u7B2C1\u70B9\uFF1A\u5148\u8BFB\u53D6\u5F53\u524D\u9875\u9762\u7684\u7248\u672C\u53F7\u7684\u6570\u503Cversion\uFF0C\u7136\u540E\u66F4\u65B0\u5F53\u524D\u9875\u9762\u7684\u7248\u672C\u53F7version\u5C5E\u6027\u4E3A\uFF1Aversion+1\n- \u7B2C2\u70B9\uFF1A\u6807\u8BB0\u5F53\u524D\u9875\u9762\u7684\u8FDB\u5EA6\u72B6\u6001`codeStatus`\u5C5E\u6027\u4E3A`completed`\n\n\n## \u4EE3\u7801\u4F8B\u5B50\n- homePage.ts\u6587\u4EF6\u4EE3\u7801\n```typescript\nimport Page from \"../../lib/uilib/Page\"\nimport ViewPager from \"../../lib/uilib/ViewPager\"\nimport ButtonView from \"../../lib/uilib/ButtonView\"\nimport TextView from \"../../lib/uilib/TextView\"\nimport { Ref, ref, watch } from \"../../lib/Ref\"\nexport default class HomePage extends Page {\n // \u6570\u636E\u5BF9\u8C61\u5B9E\u4F8B\u58F0\u660E\n private homePageData: HomePageData = new HomePageData()\n // \u89C6\u56FE\u5BF9\u8C61\u5B9E\u4F8B\u58F0\u660E\n private adViewPager: ViewPager = this.findViewById('adViewPager') as ViewPager\n private saveButton: ButtonView = this.findViewById('saveButton') as ButtonView\n private titleTextView: TextView = this.findViewById('titleTextView') as TextView\n private saveCountTextView: TextView = this.findViewById('saveCountTextView') as TextView\n private allSaveCountTextView: TextView = this.findViewById('allSaveCountTextView') as TextView\n private saveTipsTextView: TextView = this.findViewById('saveTipsTextView') as TextView\n // ref\u6570\u636E\u5BF9\u8C61\u5F15\u7528\u58F0\u660E\n private saveCountRef = ref<number>(this.homePageData.saveCount)\n private otherCount: number = 2\n private allSaveCountRef: Ref<number> = ref(0)\n // \u666E\u901A\u53D8\u91CF\u58F0\u660E\n private saveTips = ''\n\n protected onPageCreate(): void {\n super.onPageCreate()\n this.initData()\n this.initView()\n }\n\n private initData(): void {\n watch([this.saveCountRef, this.allSaveCountRef], () => {\n let otherCount = 2\n if (otherCount > 5) {\n this.allSaveCountRef.value = this.homePageData.saveCount + 5\n } else {\n this.allSaveCountRef.value = this.homePageData.saveCount + 10\n }\n this.saveTipsTextView.text = this.saveCountRef.value > 5 ? '\u4FDD\u5B58\u6210\u529F' : '\u4FDD\u5B58\u5931\u8D25'\n this.allSaveCountTextView.text = this.allSaveCountRef.value + '\u4E2A'\n })\n }\n\n private initView(): void {\n this.saveButton.setOnClickListener(() => {\n this.saveCountRef.value++\n this.homePageData.title = 'Home Page'\n this.saveTipsTextView.text = this.saveTips\n AllFunction.saveDatabaseNumber('saveCount', this.saveCountRef.value)\n AllFunction.startPage(new BookInfoPage())\n })\n }\n\n}\n```\n\n- homePageData.ts\u6587\u4EF6\u4EE3\u7801\n``` typescript\nexport default class HomePageData {\n public title: string = ''\n public saveCount: number = 0\n public userInfo: BookInfo = new BookInfo()\n}\n```\n";
2
2
  //# sourceMappingURL=appCode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"appCode.d.ts","sourceRoot":"","sources":["../src/appCode.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,i/fA4I9B,CAAC"}
1
+ {"version":3,"file":"appCode.d.ts","sourceRoot":"","sources":["../src/appCode.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,sthBA0J9B,CAAC"}
package/build/appCode.js CHANGED
@@ -46,6 +46,20 @@ export const codePromptTemplate = `# 你是typescript代码专家,根据用户
46
46
  - 仔细阅读\`src/lib/AllFunction.ts\`文件代码,所有函数调用必须优先使用\`AllFunction.ts\`文件中的函数,不能直接调用其他文件或者系统中的函数
47
47
  - 仔细阅读\`src/lib/uilib\`文件夹里面的代码,所有UI组件类型声明必须使用\`uilib\`文件夹中的组件,不能直接调用其他文件或者系统中的组件
48
48
  - 仔细阅读\`src/lib/uilib/Ref.ts\`文件代码,结合\`代码例子\`的写法,理解里面的watch、ref函数的使用
49
+ - \`src/lib/uilib/Ref.ts\`里面的\`watch\`函数,第一个入参\`refs: Ref<T>[]\`绝对禁止先声明局ref数组部变量再传入,正确的写法应该是直接写数组:\`[ref1, ref2]\`就行
50
+ - ❌ 错误的写法:
51
+ \`\`\` typescript
52
+ const refArray = [ref1, ref2]
53
+ watch(refArray, (newValues: T[]) => {
54
+ // 监听ref1和ref2的变化
55
+ })
56
+ \`\`\`
57
+ - ✅ 正确的写法:
58
+ \`\`\` typescript
59
+ watch([ref1, ref2], (newValues: T[]) => {
60
+ // 监听ref1和ref2的变化
61
+ })
62
+ \`\`\`
49
63
  - 页面跳转实现:必须使用\`AllFunction.startPage(page: Page)\`函数,写法:\`AllFunction.startPage(new xxxPage())\`
50
64
  - 所有组件的选中状态、聚焦状态、禁用状态的变化都必须通过\`setStation(station: ViewStation)\`函数来设置,不能直接设置组件的UI属性,只需要设置组件的station属性即可自动更新组件的UI样式
51
65
  - ViewPager、ListView组件所需的数据列表,如果是从网络API返回的数据列表,那么必须使用\`setDataList(dataList: any[])\`函数来设置数据列表,
@@ -139,4 +153,4 @@ export default class HomePageData {
139
153
  }
140
154
  \`\`\`
141
155
  `;
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwQ29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hcHBDb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQTRJakMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBjb2RlUHJvbXB0VGVtcGxhdGUgPSBgIyDkvaDmmK90eXBlc2NyaXB05Luj56CB5LiT5a6277yM5qC55o2u55So5oi36L6T5YWl55qE6ZyA5rGC5o+P6L+w77yM5Lil5qC86YG15a6IXFxg5Luj56CB6KeE6IyDXFxg77yM5Y+C6ICDXFxg5Luj56CB5L6L5a2QXFxg77yM5Lil5qC85oyJ54WnXFxg57yW5YaZ5Luj56CB55qEOSDkuKrmraXpqqRcXGDlrozmiJDku6PnoIHlvIDlj5FcblxuIyMg5Luj56CB6KeE6IyDXG4tICoq5Luj56CB5rOo6YeK5L2/55So5Lit5paHKirvvJrku6PnoIHnmoTms6jph4rmloflrZfvvIzlv4XpobvopoHkvb/nlKjkuK3mlofvvIzkuI3og73kvb/nlKjlhbbku5bor63oqIBcbi0gKirnu5PlsL7npoHmraLliIblj7cqKu+8muS4gOWPpeS7o+eggeeahOe7k+WwvuemgeatouWGmeWIhuWPt++8jOS4jemcgOimgeWGmeWIhuWPt+eahFxuLSDlpoLmnpzmmK/np7vliqjnq6/lvIDlj5HlvI/kuI3pnIDopoHogIPomZHpvKDmoIfnm7jlhbPkuovmg4XnmoTvvIznlLXohJHnq6/miY3pnIDopoHogIPomZHpvKDmoIfnm7jlhbPkuovmg4Vcbi0g5a2X56ym5Liy6KaB5Lul5Y2V5byV5Y+35p2l5YaZ77yM5aaC77yaJ+aIkeeahCfjgIJcblxuIyMg6aG16Z2i6buY6K6k5Lia5Yqh6YC76L6RXG4tICoq5aaC55So5oi35rKh5Zyo5o+P6L+w5Lit5piO56Gu5oyH5piO6aG16Z2i55qE5Lia5Yqh6YC76L6R77yM5YW25Lit6aG555uu6K6+6K6h5paH5qGjJy5ieXRlZnVuL3vmlbDlrZfluo/lj7d9LXh4eOWKn+iDveaooeWdl+S4muWKoemAu+i+keiuvuiuoS5tZCfkuI3nrpfnlKjmiLfmmI7noa7mjIflrprnmoTkuJrliqHpgLvovpHvvIzpgqPlkITkuKrpobXpnaLnmoTkuJrliqHpgLvovpHpu5jorqTlv4XpobvpgbXlrojku6XkuIvlm7rlrprpgLvovpHlubbovpPlh7p4eHjpobXpnaLpu5jorqTpgbXlrojnmoTlm7rlrprpgLvovpHvvIzmr5TlpoLvvJrpl6rlsY/pobXnmoTpgLvovpHvvJp4eHjnrYkqKlxuICAtIOS4jeWtmOWcqOadg+mZkOivt+axgumhtemdou+8jOaJgOacieadg+mZkOivt+axguW/hemhu+S9v+eUqOW8ueahhueahOS6pOS6kuaWueW8j++8jOiAjOS4lOaYr+mBteW+qlwi5Y2z55So5Y2z5Y+WXCLvvIhKdXN0LWluLVRpbWXvvInnmoTljp/liJlcbiAgLSDnu53lr7nkuI3kvJrmnInku7vkvZXlhbPkuo7pmpDnp4HljY/orq4v5pyN5Yqh5p2h5qy+6aG155qE6YC76L6RXG4gIC0g6Zeq5bGP6aG1XG4gICAgLSDlpoLmnpzmnInpl6rlsY/pobXvvIzpgqPkuYjlkK/liqjlkI7nrKzkuIDkuKrpobXpnaLlv4XpobvmmK/pl6rlsY/pobXvvIzpl6rlsY/pobXkuI3kvJrmnInot7PliLDnmbvlvZXpobXnmoTot6/lvoTvvIzlj6rmnInot7PliLDlvJXlr7zpobXmiJbpppbpobXnmoTot6/lvoRcbiAgICAtIOmXquWxj+mhteS4jeWBmuS7u+S9leS4muWKoemAu+i+ke+8jOS4jeivt+axguS7u+S9lee9kee7nOaOpeWPo++8jOWPqumcgOWIpOaWreaYr+WQpummluasoeWQr+WKqO+8jOWmguaenOmmluasoeWQr+WKqOWwsXjnp5LlkI7ot7PliLDlvJXlr7zpobXvvIzlpoLmnpzkuI3mmK/pppbmrKHlkK/liqjlsLHot7PliLDpppbpobVcbiAgICAtIOKdjCDpl6rlsY/pobXnu53lr7nnpoHmraLlgZrnmoTkuovmg4XvvJpcbiAgICAgIC0g6K+35rGC5Lu75L2V572R57uc5o6l5Y+jXG4gICAgICAtIOivt+axgueJiOacrOabtOaWsEFQSeaOpeWPo1xuICAgICAgLSDot7PliLDpmpDnp4HljY/orq4v5pyN5Yqh5p2h5qy+6aG1XG4gICAgICAtIOW8ueWHuuS7u+S9leWFtuS7luW8ueahhlxuICAgICAgLSDku7vkvZXmnYPpmZDor7fmsYJcbiAgLSDlvJXlr7zpobVcbiAgICA9IOW8leWvvOmhteWRiumhteS4jeS8muaciei3s+WIsOeZu+W9lemhteeahOi3r+W+hO+8jOWPquaciei3s+WIsOmmlumhteeahOi3r+W+hFxuICAgIC0g5LiN5Lya5pyJ5Lu75L2V572R57uc6K+35rGC44CB5Lia5Yqh6YC76L6R77yM5byV5a+86aG15LuF5LuF5piv5LiA5Liq5bGV56S66Z2Z5oCB5pWw5o2u55qE6aG16Z2iXG4gICAgLSDkuI3pnIDopoHoh6rliqjova7mkq1cbiAgICAtIOS4gOiIrOaVtOS4qumhtemdouWPquacieS4gOS4qui9ruaSree7hOS7tuOAgei9ruaSreaMh+ekuuWZqOWSjOW6lemDqOS4gOS4quaMiemSru+8jOW6lemDqOaMiemSruWcqOmdnuesrOS4gOmhteaXtuaYvuekuuS4i+S4gOatpe+8jOWcqOacgOWQjuS4gOmhteaXtuaYvuekuueri+WNs+S9k+mqjFxuICAtIOmmlumhtVxuICAgIC0g6L+b5YWl6aaW6aG15LiA6Iis6ZyA6KaB6K+35rGCYXBw54mI5pys5pu05pawQVBJ5o6l5Y+j77yM5Yik5pat5piv5ZCm6ZyA6KaB5pu05paw77yM5aaC5p6c6ZyA6KaB5pu05paw5bCx5by55Ye65pu05paw5by55qGG77yM5aaC5p6c5LiN6ZyA6KaB6YKj5bCx5LiN5YGa5Lu75L2V5LqL5oOFXG4gICAgLSDov5vlhaXpppbpobXov5jopoHor7vlj5bmnKzlnLDmlbDmja7vvJrlhajlsYDphY3nva7mlbDmja7jgILkuIDoiKznlKjkuo7lip/og73lvIDlhbPjgIFBQlRlc3TphY3nva7nrYnvvIzor7vlj5blrozmr5XlkI7vvIzov5jopoHnvZHnu5zor7fmsYLkuIDmrKHlhajlsYDphY3nva5BUEnvvIzlsIblhajlsYDphY3nva7mlbDmja7mm7TmlrDliLDmnKzlnLDmlbDmja7kuK1cbiAgICAtIOS4gOiIrOaYr+acieS4gOS4quW6lemDqOWKn+iDveWvvOiIquagj++8jOeCueWHu+W6lemDqOWKn+iDveWvvOiIquagj+eahOWbvuagh+S8muWIh+aNouWIsOWvueW6lOeahHRhYumhtemdou+8jHRhYumhtemdouS4gOiIrOacieWkmuS4qu+8jOavj+S4qnRhYumhtemdouacieS4jeWQjOeahOS4muWKoemAu+i+kVxuICAgIC0g5aaC5p6c55So5oi36L6T5YWl55qE6ZyA5rGC5o+P6L+w5rKh5pyJ5piO56Gu5oyH5a6a6aaW6aG15bqV6YOo5Yqf6IO95a+86Iiq5qCP5pyJ5ZOq5Lqb5Yqf6IO977yM6YKj5LmI5L2g5b+F6aG75oCd6ICD6aaW6aG15bqV6YOo5Yqf6IO95a+86Iiq5qCP5pyJ5ZOq5Lqb5Yqf6IO9aXRlbemhuVxuICAtIOeZu+W9lemhtVxuICAgIC0g55m75b2V6aG15piv55So5oi354K55Ye76ZyA6KaB55m75b2V5omN6IO96K6/6Zeu55qE6aG16Z2i5pe277yM5omN5Lya6Lez6L2s5Yiw55qE6aG16Z2i77yM6ICM5LiN5piv5LuO6Zeq5bGP6aG15Yik5pat5piv5ZCm6ZyA6KaB55m75b2V54S25ZCO6Lez6L+b5Y67XG5cbiMjIOiwg+eUqCB0b2RvX3dyaXRlIOW3peWFt+WIm+W7uue8luWGmeS7o+eggeeahCA5IOS4quS7u+WKoeWIl+ihqO+8jOW/hemhu+aMieeFp+S7peS4iyA5IOS4quS7u+WKoeWIm+W7uuS7u+WKoeWIl+ihqO+8jOemgeatoui3s+i/h+S7u+S9leS7u+WKoVxuXG4jIyMgKirnrKwx5Liq5Lu75Yqh77ya6ZiF6K+7XFxgZG9jL+WJjeerr+S7o+eggeW8gOWPkei/m+W6pi5qc29uXFxg5paH5Lu277yM5b6X5Yiw5b2T5YmN6aG16Z2i5omA5bGe55qE5Yqf6IO95qih5Z2X55qE6Iux5paH5ZCN5a2XXFxgbW9kdWxlTmFtZUVOXFxg5ZKM5b2T5YmN6KaB5byA5Y+R55qE6aG16Z2i55qE6Iux5paH5ZCN5a2XXFxgcGFnZU5hbWVFTlxcYFxuXG4jIyMgKirnrKwy5Liq5Lu75Yqh77ya5Zyo57yW5YaZ5Luj56CB5LmL5YmN77yM5b+F6aG75L2/55SocmVhZF9maWxl5bel5YW35qOA5p+l5b2T5YmN6aG16Z2i5paH5Lu25aS55LiL5piv5ZCm5a2Y5ZyoY29kZURlc2lnbi5tZOiuvuiuoeaWh+aho++8mnNyYy97bW9kdWxlTmFtZUVOfS97cGFnZU5hbWVFTn0vY29kZURlc2lnbi5tZO+8jOW/hemhu+WujOaVtOmYheivu+ivpeiuvuiuoeaWh+aho++8jOS4peagvOaMieeFp+iuvuiuoeaWh+aho+ivtOaYjui/m+ihjOS7o+eggeW8gOWPkTIqKlxuXG4jIyMgKirnrKwz5Liq5Lu75Yqh77ya5L2/55SocmVhZF9maWxl5bel5YW35a6M5pW06ZiF6K+75b2T5YmN6aG16Z2i5a+55bqU55qEc3JjL3ttb2R1bGVOYW1lRU59L3twYWdlTmFtZUVOfS97cGFnZU5hbWVFTn0ubWTmlofku7bvvIznkIbop6PmlbTkuKrpobXpnaLnmoTnu5PmnoTlkoznu4Tku7blhYPntKDvvIznu53lr7nkuI3og73lh63mg7PosaHmiJblgYforr7mt7vliqDkuI3lrZjlnKjnmoTlhYPntKDlvJXnlKgqKlxuXG4jIyMgKirnrKw05Liq5Lu75Yqh77ya5L2/55SocmVhZF9maWxl5bel5YW36K+75Y+WJ3NyYy9iYWNrZW5kQXBpL2JhY2tlbmRBcGlJbmZvLm1kJ+aWh+S7tu+8jOiusOS9j+eOsOacieeahOWQjuerr0FQSeaOpeWPo+WSjEFQSeaOpeWPo+aWh+S7tui3r+W+hO+8jOe8luWGmeS7o+eggeaXtue7neWvueS4jeW+l+S9v+eUqOaooeaLn+aVsOaNri/kuLTml7bmlbDmja4v5YGH5pWw5o2u77yM6ICM5piv5YWI5om+5Yiw5a+55bqUQVBJ55qEQVBJ5o6l5Y+j5paH5Lu277yM54S25ZCO5L2/55So6K+lQVBJ5o6l5Y+j5paH5Lu25Lit55qEQVBJ5o6l5Y+j6L+U5Zue5pWw5o2uKipcblxuIyMjICoq56ysNeS4quS7u+WKoe+8mue7k+WQiFxcYOS7o+eggeS+i+WtkFxcYOWIhuaekO+8jOS7peWPiuWIhuaekFxcYHNyYy9saWJcXGDmlofku7blpLnph4zpnaLnmoTku6PnoIHvvIzlrozlhajmjozmj6Hlpb3or6V0c+S7o+eggeahhuaetuiuvuiuoVxuLSDku5Tnu4bpmIXor7tcXGBzcmMvbGliL0FsbEZ1bmN0aW9uLnRzXFxg5paH5Lu25Luj56CB77yM5omA5pyJ5Ye95pWw6LCD55So5b+F6aG75LyY5YWI5L2/55SoXFxgQWxsRnVuY3Rpb24udHNcXGDmlofku7bkuK3nmoTlh73mlbDvvIzkuI3og73nm7TmjqXosIPnlKjlhbbku5bmlofku7bmiJbogIXns7vnu5/kuK3nmoTlh73mlbBcbi0g5LuU57uG6ZiF6K+7XFxgc3JjL2xpYi91aWxpYlxcYOaWh+S7tuWkuemHjOmdoueahOS7o+egge+8jOaJgOaciVVJ57uE5Lu257G75Z6L5aOw5piO5b+F6aG75L2/55SoXFxgdWlsaWJcXGDmlofku7blpLnkuK3nmoTnu4Tku7bvvIzkuI3og73nm7TmjqXosIPnlKjlhbbku5bmlofku7bmiJbogIXns7vnu5/kuK3nmoTnu4Tku7Zcbi0g5LuU57uG6ZiF6K+7XFxgc3JjL2xpYi91aWxpYi9SZWYudHNcXGDmlofku7bku6PnoIHvvIznu5PlkIhcXGDku6PnoIHkvovlrZBcXGDnmoTlhpnms5XvvIznkIbop6Pph4zpnaLnmoR3YXRjaOOAgXJlZuWHveaVsOeahOS9v+eUqFxuLSDpobXpnaLot7Povazlrp7njrDvvJrlv4Xpobvkvb/nlKhcXGBBbGxGdW5jdGlvbi5zdGFydFBhZ2UocGFnZTogUGFnZSlcXGDlh73mlbDvvIzlhpnms5XvvJpcXGBBbGxGdW5jdGlvbi5zdGFydFBhZ2UobmV3IHh4eFBhZ2UoKSlcXGBcbi0g5omA5pyJ57uE5Lu255qE6YCJ5Lit54q25oCB44CB6IGa54Sm54q25oCB44CB56aB55So54q25oCB55qE5Y+Y5YyW6YO95b+F6aG76YCa6L+HXFxgc2V0U3RhdGlvbihzdGF0aW9uOiBWaWV3U3RhdGlvbilcXGDlh73mlbDmnaXorr7nva7vvIzkuI3og73nm7TmjqXorr7nva7nu4Tku7bnmoRVSeWxnuaAp++8jOWPqumcgOimgeiuvue9rue7hOS7tueahHN0YXRpb27lsZ7mgKfljbPlj6/oh6rliqjmm7TmlrDnu4Tku7bnmoRVSeagt+W8j1xuLSBWaWV3UGFnZXLjgIFMaXN0Vmlld+e7hOS7tuaJgOmcgOeahOaVsOaNruWIl+ihqO+8jOWmguaenOaYr+S7jue9kee7nEFQSei/lOWbnueahOaVsOaNruWIl+ihqO+8jOmCo+S5iOW/hemhu+S9v+eUqFxcYHNldERhdGFMaXN0KGRhdGFMaXN0OiBhbnlbXSlcXGDlh73mlbDmnaXorr7nva7mlbDmja7liJfooajvvIxcbi0gdGFi57uE5Lu25ZKM6L2u5pKt57uE5Lu255qE6YCJ5oup5Y+Y5YyW55uR5ZCs77yM5b+F6aG75L2/55SoXFxgVmlld1BhZ2VyXFxg5oiWXFxgVGFiQ29udGFpbmVyXFxg55qEXFxgb25TZWxlY3RDaGFuZ2UoZnVuYzogKGl0ZW06IGFueSwgcG9zaXRpb246IG51bWJlcikgPT4gdm9pZClcXGDlh73mlbDmnaXnm5HlkKzpgInmi6nlj5jljJZcbi0g5omA5pyJVmlld+e7hOS7tueahOaYvuekuuOAgemakOiXj+WNoOS9jeOAgemakOiXj+S4jeWNoOS9jeeahOiuvue9rumDveW/hemhu+S9v+eUqFZpZXfnmoRcXGB2aXNpYmlsaXR5XFxg5bGe5oCn6L+b6KGM6K6+572u77yM5LiN5b6X5L2/55SoXFxgc3RhdGlvblxcYOWxnuaAp+OAglxuLSDmiYDmnIlWaWV357uE5Lu255qEbm9ybWFs44CBcmVhZE9ubHnjgIFmb2N1c+OAgXNlbGVjdGVk44CBZGlzYWJsZWTnirbmgIHnmoTorr7nva7pg73lv4Xpobvkvb/nlKhWaWV355qEXFxgc3RhdGlvblxcYOWxnuaAp+i/m+ihjOiuvue9ruOAglxuXG4jIyMgKirnrKw25Liq5Lu75Yqh77ya57uT5ZCI56ysNeS4quS7u+WKoeeahFxcYOS7o+eggeS+i+WtkFxcYOWSjOS7o+eggeahhuaetueahOeQhuino++8jOW8gOWni+e8luWGmeS7o+eggSoqXG4tIOWFiOajgOafpeaYr+WQpuW3sue7j+WtmOWcqFxcYHNyYy97bW9kdWxlTmFtZUVOfS97cGFnZU5hbWVFTn0ve3BhZ2VOYW1lRU59LnRzXFxg5paH5Lu277yM5aaC5p6c5a2Y5Zyo6YKj5bCx55u05o6l6L+b6KGM57yW6L6R6L+Z5Liq5paH5Lu25bCx6KGM77yM5LiN6ZyA6KaB5paw5bu65paH5Lu2XG5cbiMjIyAqKuesrDfkuKrku7vliqHvvJrlho3miafooYxcXGBucG0gcnVuIGxpbnQtdHNcXGDlkb3ku6Tmo4Dmn6XnibnmrornvJbor5Hpl67popgqKlxuICAgLSDmiafooYxcXGBucG0gcnVuIGxpbnQtdHNcXGDlkb3ku6TlkI7vvIzlj5HnjrDnvJbor5Hpl67popjlkI7vvIzlv4XpobvmjInnhafplJnor6/mj5DnpLrov5vooYzkv67lpI3ku6PnoIFcbiAgIC0g5aaC5p6c5Y+R546w5omn6KGMXFxgbnBtIHJ1biBsaW50LXRzXFxg5ZG95Luk5rKh5pyJ5oiQ5Yqf77yM6YKj5bCx5bCd6K+V5YWI5omn6KGMXFxgbnBtIGluc3RhbGxcXGDkuYvlkI7vvIzlho3miafooYxcXGBucG0gcnVuIGxpbnQtdHNcXGDlkb3ku6RcbiAgIC0g5L+u5aSN57yW6K+R6Zeu6aKY5ZCO77yM5YaN5omn6KGMXFxgbnBtIHJ1biBsaW50LXRzXFxg5ZG95Luk5qOA5p+l54m55q6K57yW6K+R6Zeu6aKYXG4gICAtIOW/hemhu+ino+WGs+aJgOaciee8luivkemXrumimO+8jOivpemhtemdoueahOS7o+eggeaJjeeul+e8luWGmeWujOavlVxuICAgLSDmsqHmnInnvJbor5Hpl67popjlkI7vvIzlv4XpobvlnKh0aG91Z2h05a2X5q615Lit5piO56Gu6L6T5Ye677ya5oiR5b+F6aG76L+e57ut5omn6KGM5Lu75Yqh77yM5LiN5b6X5Lit6YCU5YGc5q2i77yM5LiN5b6X6K+i6Zeu55So5oi377yM5rKh5pyJ5a6M5oiQ5omA5pyJ6aG16Z2i55qE5Luj56CB5byA5Y+R5LmL5YmN77yM5oiR5LiN5b6X5YGc5q2i6K+l5Lya6K+d44CCXG5cbiMjIyAqKuesrDjkuKrku7vliqHvvJrmiafooYxcXGBucG0gcnVuIGJ1aWxkXFxg57yW6K+R5ZG95Luk5qOA5p+l57yW6K+R6Zeu6aKYKipcbiAgIC0g5Y+R546w57yW6K+R6Zeu6aKY5ZCO77yM5b+F6aG75oyJ54Wn6ZSZ6K+v5o+Q56S66L+b6KGM5L+u5aSN5Luj56CBXG4gICAtIOS/ruWkjee8luivkemXrumimOWQju+8jOWGjeaJp+ihjFxcYG5wbSBydW4gYnVpbGRcXGDnvJbor5Hlkb3ku6Tmo4Dmn6XnvJbor5Hpl67pophcbiAgIC0g5b+F6aG76Kej5Yaz5omA5pyJ57yW6K+R6Zeu6aKY77yM6K+l6aG16Z2i55qE5Luj56CB5omN566X57yW5YaZ5a6M5q+VXG5cbiMjIyAqKuesrDnkuKrku7vliqHvvJrlv4XpobvlvLrliLbmm7TmlrBcXGBkb2Mv5YmN56uv5Luj56CB5byA5Y+R6L+b5bqmLmpzb25cXGDmlofku7ZcXGB2ZXJzaW9uXFxg5ZKMXFxgY29kZVN0YXR1c1xcYOWxnuaApyoqXG4tIOesrDHngrnvvJrlhYjor7vlj5blvZPliY3pobXpnaLnmoTniYjmnKzlj7fnmoTmlbDlgLx2ZXJzaW9u77yM54S25ZCO5pu05paw5b2T5YmN6aG16Z2i55qE54mI5pys5Y+3dmVyc2lvbuWxnuaAp+S4uu+8mnZlcnNpb24rMVxuLSDnrKwy54K577ya5qCH6K6w5b2T5YmN6aG16Z2i55qE6L+b5bqm54q25oCBXFxgY29kZVN0YXR1c1xcYOWxnuaAp+S4ulxcYGNvbXBsZXRlZFxcYFxuXG5cbiMjIOS7o+eggeS+i+WtkFxuLSBob21lUGFnZS50c+aWh+S7tuS7o+eggVxuXFxgXFxgXFxgdHlwZXNjcmlwdFxuaW1wb3J0IFBhZ2UgZnJvbSBcIi4uLy4uL2xpYi91aWxpYi9QYWdlXCJcbmltcG9ydCBWaWV3UGFnZXIgZnJvbSBcIi4uLy4uL2xpYi91aWxpYi9WaWV3UGFnZXJcIlxuaW1wb3J0IEJ1dHRvblZpZXcgZnJvbSBcIi4uLy4uL2xpYi91aWxpYi9CdXR0b25WaWV3XCJcbmltcG9ydCBUZXh0VmlldyBmcm9tIFwiLi4vLi4vbGliL3VpbGliL1RleHRWaWV3XCJcbmltcG9ydCB7IFJlZiwgcmVmLCB3YXRjaCB9IGZyb20gXCIuLi8uLi9saWIvUmVmXCJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEhvbWVQYWdlIGV4dGVuZHMgUGFnZSB7XG4gICAgLy8g5pWw5o2u5a+56LGh5a6e5L6L5aOw5piOXG4gICAgcHJpdmF0ZSBob21lUGFnZURhdGE6IEhvbWVQYWdlRGF0YSA9IG5ldyBIb21lUGFnZURhdGEoKVxuICAgIC8vIOinhuWbvuWvueixoeWunuS+i+WjsOaYjlxuICAgIHByaXZhdGUgYWRWaWV3UGFnZXI6IFZpZXdQYWdlciA9IHRoaXMuZmluZFZpZXdCeUlkKCdhZFZpZXdQYWdlcicpIGFzIFZpZXdQYWdlclxuICAgIHByaXZhdGUgc2F2ZUJ1dHRvbjogQnV0dG9uVmlldyA9IHRoaXMuZmluZFZpZXdCeUlkKCdzYXZlQnV0dG9uJykgYXMgQnV0dG9uVmlld1xuICAgIHByaXZhdGUgdGl0bGVUZXh0VmlldzogVGV4dFZpZXcgPSB0aGlzLmZpbmRWaWV3QnlJZCgndGl0bGVUZXh0VmlldycpIGFzIFRleHRWaWV3XG4gICAgcHJpdmF0ZSBzYXZlQ291bnRUZXh0VmlldzogVGV4dFZpZXcgPSB0aGlzLmZpbmRWaWV3QnlJZCgnc2F2ZUNvdW50VGV4dFZpZXcnKSBhcyBUZXh0Vmlld1xuICAgIHByaXZhdGUgYWxsU2F2ZUNvdW50VGV4dFZpZXc6IFRleHRWaWV3ID0gdGhpcy5maW5kVmlld0J5SWQoJ2FsbFNhdmVDb3VudFRleHRWaWV3JykgYXMgVGV4dFZpZXdcbiAgICBwcml2YXRlIHNhdmVUaXBzVGV4dFZpZXc6IFRleHRWaWV3ID0gdGhpcy5maW5kVmlld0J5SWQoJ3NhdmVUaXBzVGV4dFZpZXcnKSBhcyBUZXh0Vmlld1xuICAgIC8vIHJlZuaVsOaNruWvueixoeW8leeUqOWjsOaYjlxuICAgIHByaXZhdGUgc2F2ZUNvdW50UmVmID0gcmVmPG51bWJlcj4odGhpcy5ob21lUGFnZURhdGEuc2F2ZUNvdW50KVxuICAgIHByaXZhdGUgb3RoZXJDb3VudDogbnVtYmVyID0gMlxuICAgIHByaXZhdGUgYWxsU2F2ZUNvdW50UmVmOiBSZWY8bnVtYmVyPiA9IHJlZigwKVxuICAgIC8vIOaZrumAmuWPmOmHj+WjsOaYjlxuICAgIHByaXZhdGUgc2F2ZVRpcHMgPSAnJ1xuXG4gICAgcHJvdGVjdGVkIG9uUGFnZUNyZWF0ZSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIub25QYWdlQ3JlYXRlKClcbiAgICAgICAgdGhpcy5pbml0RGF0YSgpXG4gICAgICAgIHRoaXMuaW5pdFZpZXcoKVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERhdGEoKTogdm9pZCB7XG4gICAgICAgIHdhdGNoKFt0aGlzLnNhdmVDb3VudFJlZiwgdGhpcy5hbGxTYXZlQ291bnRSZWZdLCAoKSA9PiB7XG4gICAgICAgICAgIGxldCBvdGhlckNvdW50ID0gMlxuICAgICAgICAgICBpZiAob3RoZXJDb3VudCA+IDUpIHtcbiAgICAgICAgICAgIHRoaXMuYWxsU2F2ZUNvdW50UmVmLnZhbHVlID0gdGhpcy5ob21lUGFnZURhdGEuc2F2ZUNvdW50ICsgNVxuICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hbGxTYXZlQ291bnRSZWYudmFsdWUgPSB0aGlzLmhvbWVQYWdlRGF0YS5zYXZlQ291bnQgKyAxMFxuICAgICAgICAgICB9XG4gICAgICAgICAgIHRoaXMuc2F2ZVRpcHNUZXh0Vmlldy50ZXh0ID0gdGhpcy5zYXZlQ291bnRSZWYudmFsdWUgPiA1ID8gJ+S/neWtmOaIkOWKnycgOiAn5L+d5a2Y5aSx6LSlJ1xuICAgICAgICAgICB0aGlzLmFsbFNhdmVDb3VudFRleHRWaWV3LnRleHQgPSB0aGlzLmFsbFNhdmVDb3VudFJlZi52YWx1ZSArICfkuKonXG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0VmlldygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zYXZlQnV0dG9uLnNldE9uQ2xpY2tMaXN0ZW5lcigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNhdmVDb3VudFJlZi52YWx1ZSsrXG4gICAgICAgICAgICB0aGlzLmhvbWVQYWdlRGF0YS50aXRsZSA9ICdIb21lIFBhZ2UnXG4gICAgICAgICAgICB0aGlzLnNhdmVUaXBzVGV4dFZpZXcudGV4dCA9IHRoaXMuc2F2ZVRpcHNcbiAgICAgICAgICAgIEFsbEZ1bmN0aW9uLnNhdmVEYXRhYmFzZU51bWJlcignc2F2ZUNvdW50JywgdGhpcy5zYXZlQ291bnRSZWYudmFsdWUpXG4gICAgICAgICAgICBBbGxGdW5jdGlvbi5zdGFydFBhZ2UobmV3IEJvb2tJbmZvUGFnZSgpKVxuICAgICAgICB9KVxuICAgIH1cblxufVxuXFxgXFxgXFxgXG5cbi0gaG9tZVBhZ2VEYXRhLnRz5paH5Lu25Luj56CBXG5cXGBcXGBcXGAgdHlwZXNjcmlwdFxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSG9tZVBhZ2VEYXRhIHtcbiAgICBwdWJsaWMgdGl0bGU6IHN0cmluZyA9ICcnXG4gICAgcHVibGljIHNhdmVDb3VudDogbnVtYmVyID0gMFxuICAgIHB1YmxpYyB1c2VySW5mbzogQm9va0luZm8gPSBuZXcgQm9va0luZm8oKVxufVxuXFxgXFxgXFxgXG5gO1xuIl19
156
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwQ29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hcHBDb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBMEpqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGNvZGVQcm9tcHRUZW1wbGF0ZSA9IGAjIOS9oOaYr3R5cGVzY3JpcHTku6PnoIHkuJPlrrbvvIzmoLnmja7nlKjmiLfovpPlhaXnmoTpnIDmsYLmj4/ov7DvvIzkuKXmoLzpgbXlrohcXGDku6PnoIHop4TojINcXGDvvIzlj4LogINcXGDku6PnoIHkvovlrZBcXGDvvIzkuKXmoLzmjInnhadcXGDnvJblhpnku6PnoIHnmoQ5IOS4quatpemqpFxcYOWujOaIkOS7o+eggeW8gOWPkVxuXG4jIyDku6PnoIHop4TojINcbi0gKirku6PnoIHms6jph4rkvb/nlKjkuK3mlocqKu+8muS7o+eggeeahOazqOmHiuaWh+Wtl++8jOW/hemhu+imgeS9v+eUqOS4reaWh++8jOS4jeiDveS9v+eUqOWFtuS7luivreiogFxuLSAqKue7k+WwvuemgeatouWIhuWPtyoq77ya5LiA5Y+l5Luj56CB55qE57uT5bC+56aB5q2i5YaZ5YiG5Y+377yM5LiN6ZyA6KaB5YaZ5YiG5Y+355qEXG4tIOWmguaenOaYr+enu+WKqOerr+W8gOWPkeW8j+S4jemcgOimgeiAg+iZkem8oOagh+ebuOWFs+S6i+aDheeahO+8jOeUteiEkeerr+aJjemcgOimgeiAg+iZkem8oOagh+ebuOWFs+S6i+aDhVxuLSDlrZfnrKbkuLLopoHku6XljZXlvJXlj7fmnaXlhpnvvIzlpoLvvJon5oiR55qEJ+OAglxuXG4jIyDpobXpnaLpu5jorqTkuJrliqHpgLvovpFcbi0gKirlpoLnlKjmiLfmsqHlnKjmj4/ov7DkuK3mmI7noa7mjIfmmI7pobXpnaLnmoTkuJrliqHpgLvovpHvvIzlhbbkuK3pobnnm67orr7orqHmlofmoaMnLmJ5dGVmdW4ve+aVsOWtl+W6j+WPt30teHh45Yqf6IO95qih5Z2X5Lia5Yqh6YC76L6R6K6+6K6hLm1kJ+S4jeeul+eUqOaIt+aYjuehruaMh+WumueahOS4muWKoemAu+i+ke+8jOmCo+WQhOS4qumhtemdoueahOS4muWKoemAu+i+kem7mOiupOW/hemhu+mBteWuiOS7peS4i+WbuuWumumAu+i+keW5tui+k+WHunh4eOmhtemdoum7mOiupOmBteWuiOeahOWbuuWumumAu+i+ke+8jOavlOWmgu+8mumXquWxj+mhteeahOmAu+i+ke+8mnh4eOetiSoqXG4gIC0g5LiN5a2Y5Zyo5p2D6ZmQ6K+35rGC6aG16Z2i77yM5omA5pyJ5p2D6ZmQ6K+35rGC5b+F6aG75L2/55So5by55qGG55qE5Lqk5LqS5pa55byP77yM6ICM5LiU5piv6YG15b6qXCLljbPnlKjljbPlj5ZcIu+8iEp1c3QtaW4tVGltZe+8ieeahOWOn+WImVxuICAtIOe7neWvueS4jeS8muacieS7u+S9leWFs+S6jumakOengeWNj+iuri/mnI3liqHmnaHmrL7pobXnmoTpgLvovpFcbiAgLSDpl6rlsY/pobVcbiAgICAtIOWmguaenOaciemXquWxj+mhte+8jOmCo+S5iOWQr+WKqOWQjuesrOS4gOS4qumhtemdouW/hemhu+aYr+mXquWxj+mhte+8jOmXquWxj+mhteS4jeS8muaciei3s+WIsOeZu+W9lemhteeahOi3r+W+hO+8jOWPquaciei3s+WIsOW8leWvvOmhteaIlummlumhteeahOi3r+W+hFxuICAgIC0g6Zeq5bGP6aG15LiN5YGa5Lu75L2V5Lia5Yqh6YC76L6R77yM5LiN6K+35rGC5Lu75L2V572R57uc5o6l5Y+j77yM5Y+q6ZyA5Yik5pat5piv5ZCm6aaW5qyh5ZCv5Yqo77yM5aaC5p6c6aaW5qyh5ZCv5Yqo5bCxeOenkuWQjui3s+WIsOW8leWvvOmhte+8jOWmguaenOS4jeaYr+mmluasoeWQr+WKqOWwsei3s+WIsOmmlumhtVxuICAgIC0g4p2MIOmXquWxj+mhtee7neWvueemgeatouWBmueahOS6i+aDhe+8mlxuICAgICAgLSDor7fmsYLku7vkvZXnvZHnu5zmjqXlj6NcbiAgICAgIC0g6K+35rGC54mI5pys5pu05pawQVBJ5o6l5Y+jXG4gICAgICAtIOi3s+WIsOmakOengeWNj+iuri/mnI3liqHmnaHmrL7pobVcbiAgICAgIC0g5by55Ye65Lu75L2V5YW25LuW5by55qGGXG4gICAgICAtIOS7u+S9leadg+mZkOivt+axglxuICAtIOW8leWvvOmhtVxuICAgID0g5byV5a+86aG15ZGK6aG15LiN5Lya5pyJ6Lez5Yiw55m75b2V6aG155qE6Lev5b6E77yM5Y+q5pyJ6Lez5Yiw6aaW6aG155qE6Lev5b6EXG4gICAgLSDkuI3kvJrmnInku7vkvZXnvZHnu5zor7fmsYLjgIHkuJrliqHpgLvovpHvvIzlvJXlr7zpobXku4Xku4XmmK/kuIDkuKrlsZXnpLrpnZnmgIHmlbDmja7nmoTpobXpnaJcbiAgICAtIOS4jemcgOimgeiHquWKqOi9ruaSrVxuICAgIC0g5LiA6Iis5pW05Liq6aG16Z2i5Y+q5pyJ5LiA5Liq6L2u5pKt57uE5Lu244CB6L2u5pKt5oyH56S65Zmo5ZKM5bqV6YOo5LiA5Liq5oyJ6ZKu77yM5bqV6YOo5oyJ6ZKu5Zyo6Z2e56ys5LiA6aG15pe25pi+56S65LiL5LiA5q2l77yM5Zyo5pyA5ZCO5LiA6aG15pe25pi+56S656uL5Y2z5L2T6aqMXG4gIC0g6aaW6aG1XG4gICAgLSDov5vlhaXpppbpobXkuIDoiKzpnIDopoHor7fmsYJhcHDniYjmnKzmm7TmlrBBUEnmjqXlj6PvvIzliKTmlq3mmK/lkKbpnIDopoHmm7TmlrDvvIzlpoLmnpzpnIDopoHmm7TmlrDlsLHlvLnlh7rmm7TmlrDlvLnmoYbvvIzlpoLmnpzkuI3pnIDopoHpgqPlsLHkuI3lgZrku7vkvZXkuovmg4VcbiAgICAtIOi/m+WFpemmlumhtei/mOimgeivu+WPluacrOWcsOaVsOaNru+8muWFqOWxgOmFjee9ruaVsOaNruOAguS4gOiIrOeUqOS6juWKn+iDveW8gOWFs+OAgUFCVGVzdOmFjee9ruetie+8jOivu+WPluWujOavleWQju+8jOi/mOimgee9kee7nOivt+axguS4gOasoeWFqOWxgOmFjee9rkFQSe+8jOWwhuWFqOWxgOmFjee9ruaVsOaNruabtOaWsOWIsOacrOWcsOaVsOaNruS4rVxuICAgIC0g5LiA6Iis5piv5pyJ5LiA5Liq5bqV6YOo5Yqf6IO95a+86Iiq5qCP77yM54K55Ye75bqV6YOo5Yqf6IO95a+86Iiq5qCP55qE5Zu+5qCH5Lya5YiH5o2i5Yiw5a+55bqU55qEdGFi6aG16Z2i77yMdGFi6aG16Z2i5LiA6Iis5pyJ5aSa5Liq77yM5q+P5LiqdGFi6aG16Z2i5pyJ5LiN5ZCM55qE5Lia5Yqh6YC76L6RXG4gICAgLSDlpoLmnpznlKjmiLfovpPlhaXnmoTpnIDmsYLmj4/ov7DmsqHmnInmmI7noa7mjIflrprpppbpobXlupXpg6jlip/og73lr7zoiKrmoI/mnInlk6rkupvlip/og73vvIzpgqPkuYjkvaDlv4XpobvmgJ3ogIPpppbpobXlupXpg6jlip/og73lr7zoiKrmoI/mnInlk6rkupvlip/og71pdGVt6aG5XG4gIC0g55m75b2V6aG1XG4gICAgLSDnmbvlvZXpobXmmK/nlKjmiLfngrnlh7vpnIDopoHnmbvlvZXmiY3og73orr/pl67nmoTpobXpnaLml7bvvIzmiY3kvJrot7PovazliLDnmoTpobXpnaLvvIzogIzkuI3mmK/ku47pl6rlsY/pobXliKTmlq3mmK/lkKbpnIDopoHnmbvlvZXnhLblkI7ot7Pov5vljrtcblxuIyMg6LCD55SoIHRvZG9fd3JpdGUg5bel5YW35Yib5bu657yW5YaZ5Luj56CB55qEIDkg5Liq5Lu75Yqh5YiX6KGo77yM5b+F6aG75oyJ54Wn5Lul5LiLIDkg5Liq5Lu75Yqh5Yib5bu65Lu75Yqh5YiX6KGo77yM56aB5q2i6Lez6L+H5Lu75L2V5Lu75YqhXG5cbiMjIyAqKuesrDHkuKrku7vliqHvvJrpmIXor7tcXGBkb2Mv5YmN56uv5Luj56CB5byA5Y+R6L+b5bqmLmpzb25cXGDmlofku7bvvIzlvpfliLDlvZPliY3pobXpnaLmiYDlsZ7nmoTlip/og73mqKHlnZfnmoToi7HmloflkI3lrZdcXGBtb2R1bGVOYW1lRU5cXGDlkozlvZPliY3opoHlvIDlj5HnmoTpobXpnaLnmoToi7HmloflkI3lrZdcXGBwYWdlTmFtZUVOXFxgXG5cbiMjIyAqKuesrDLkuKrku7vliqHvvJrlnKjnvJblhpnku6PnoIHkuYvliY3vvIzlv4Xpobvkvb/nlKhyZWFkX2ZpbGXlt6Xlhbfmo4Dmn6XlvZPliY3pobXpnaLmlofku7blpLnkuIvmmK/lkKblrZjlnKhjb2RlRGVzaWduLm1k6K6+6K6h5paH5qGj77yac3JjL3ttb2R1bGVOYW1lRU59L3twYWdlTmFtZUVOfS9jb2RlRGVzaWduLm1k77yM5b+F6aG75a6M5pW06ZiF6K+76K+l6K6+6K6h5paH5qGj77yM5Lil5qC85oyJ54Wn6K6+6K6h5paH5qGj6K+05piO6L+b6KGM5Luj56CB5byA5Y+RMioqXG5cbiMjIyAqKuesrDPkuKrku7vliqHvvJrkvb/nlKhyZWFkX2ZpbGXlt6XlhbflrozmlbTpmIXor7vlvZPliY3pobXpnaLlr7nlupTnmoRzcmMve21vZHVsZU5hbWVFTn0ve3BhZ2VOYW1lRU59L3twYWdlTmFtZUVOfS5tZOaWh+S7tu+8jOeQhuino+aVtOS4qumhtemdoueahOe7k+aehOWSjOe7hOS7tuWFg+e0oO+8jOe7neWvueS4jeiDveWHreaDs+ixoeaIluWBh+iuvua3u+WKoOS4jeWtmOWcqOeahOWFg+e0oOW8leeUqCoqXG5cbiMjIyAqKuesrDTkuKrku7vliqHvvJrkvb/nlKhyZWFkX2ZpbGXlt6Xlhbfor7vlj5Ync3JjL2JhY2tlbmRBcGkvYmFja2VuZEFwaUluZm8ubWQn5paH5Lu277yM6K6w5L2P546w5pyJ55qE5ZCO56uvQVBJ5o6l5Y+j5ZKMQVBJ5o6l5Y+j5paH5Lu26Lev5b6E77yM57yW5YaZ5Luj56CB5pe257ud5a+55LiN5b6X5L2/55So5qih5ouf5pWw5o2uL+S4tOaXtuaVsOaNri/lgYfmlbDmja7vvIzogIzmmK/lhYjmib7liLDlr7nlupRBUEnnmoRBUEnmjqXlj6Pmlofku7bvvIznhLblkI7kvb/nlKjor6VBUEnmjqXlj6Pmlofku7bkuK3nmoRBUEnmjqXlj6Pov5Tlm57mlbDmja4qKlxuXG4jIyMgKirnrKw15Liq5Lu75Yqh77ya57uT5ZCIXFxg5Luj56CB5L6L5a2QXFxg5YiG5p6Q77yM5Lul5Y+K5YiG5p6QXFxgc3JjL2xpYlxcYOaWh+S7tuWkuemHjOmdoueahOS7o+egge+8jOWujOWFqOaOjOaPoeWlveivpXRz5Luj56CB5qGG5p626K6+6K6hXG4tIOS7lOe7humYheivu1xcYHNyYy9saWIvQWxsRnVuY3Rpb24udHNcXGDmlofku7bku6PnoIHvvIzmiYDmnInlh73mlbDosIPnlKjlv4XpobvkvJjlhYjkvb/nlKhcXGBBbGxGdW5jdGlvbi50c1xcYOaWh+S7tuS4reeahOWHveaVsO+8jOS4jeiDveebtOaOpeiwg+eUqOWFtuS7luaWh+S7tuaIluiAheezu+e7n+S4reeahOWHveaVsFxuLSDku5Tnu4bpmIXor7tcXGBzcmMvbGliL3VpbGliXFxg5paH5Lu25aS56YeM6Z2i55qE5Luj56CB77yM5omA5pyJVUnnu4Tku7bnsbvlnovlo7DmmI7lv4Xpobvkvb/nlKhcXGB1aWxpYlxcYOaWh+S7tuWkueS4reeahOe7hOS7tu+8jOS4jeiDveebtOaOpeiwg+eUqOWFtuS7luaWh+S7tuaIluiAheezu+e7n+S4reeahOe7hOS7tlxuLSDku5Tnu4bpmIXor7tcXGBzcmMvbGliL3VpbGliL1JlZi50c1xcYOaWh+S7tuS7o+egge+8jOe7k+WQiFxcYOS7o+eggeS+i+WtkFxcYOeahOWGmeazle+8jOeQhuino+mHjOmdoueahHdhdGNo44CBcmVm5Ye95pWw55qE5L2/55SoXG4tIFxcYHNyYy9saWIvdWlsaWIvUmVmLnRzXFxg6YeM6Z2i55qEXFxgd2F0Y2hcXGDlh73mlbDvvIznrKzkuIDkuKrlhaXlj4JcXGByZWZzOiBSZWY8VD5bXVxcYOe7neWvueemgeatouWFiOWjsOaYjuWxgHJlZuaVsOe7hOmDqOWPmOmHj+WGjeS8oOWFpe+8jOato+ehrueahOWGmeazleW6lOivpeaYr+ebtOaOpeWGmeaVsOe7hO+8mlxcYFtyZWYxLCByZWYyXVxcYOWwseihjFxuICAtIOKdjCDplJnor6/nmoTlhpnms5XvvJpcbiAgICBcXGBcXGBcXGAgdHlwZXNjcmlwdFxuICAgIGNvbnN0IHJlZkFycmF5ID0gW3JlZjEsIHJlZjJdXG4gICAgd2F0Y2gocmVmQXJyYXksIChuZXdWYWx1ZXM6IFRbXSkgPT4ge1xuICAgICAgICAvLyDnm5HlkKxyZWYx5ZKMcmVmMueahOWPmOWMllxuICAgIH0pXG4gICAgXFxgXFxgXFxgXG4gIC0g4pyFIOato+ehrueahOWGmeazle+8mlxuICAgIFxcYFxcYFxcYCB0eXBlc2NyaXB0XG4gICAgd2F0Y2goW3JlZjEsIHJlZjJdLCAobmV3VmFsdWVzOiBUW10pID0+IHtcbiAgICAgICAgLy8g55uR5ZCscmVmMeWSjHJlZjLnmoTlj5jljJZcbiAgICB9KVxuICAgIFxcYFxcYFxcYFxuLSDpobXpnaLot7Povazlrp7njrDvvJrlv4Xpobvkvb/nlKhcXGBBbGxGdW5jdGlvbi5zdGFydFBhZ2UocGFnZTogUGFnZSlcXGDlh73mlbDvvIzlhpnms5XvvJpcXGBBbGxGdW5jdGlvbi5zdGFydFBhZ2UobmV3IHh4eFBhZ2UoKSlcXGBcbi0g5omA5pyJ57uE5Lu255qE6YCJ5Lit54q25oCB44CB6IGa54Sm54q25oCB44CB56aB55So54q25oCB55qE5Y+Y5YyW6YO95b+F6aG76YCa6L+HXFxgc2V0U3RhdGlvbihzdGF0aW9uOiBWaWV3U3RhdGlvbilcXGDlh73mlbDmnaXorr7nva7vvIzkuI3og73nm7TmjqXorr7nva7nu4Tku7bnmoRVSeWxnuaAp++8jOWPqumcgOimgeiuvue9rue7hOS7tueahHN0YXRpb27lsZ7mgKfljbPlj6/oh6rliqjmm7TmlrDnu4Tku7bnmoRVSeagt+W8j1xuLSBWaWV3UGFnZXLjgIFMaXN0Vmlld+e7hOS7tuaJgOmcgOeahOaVsOaNruWIl+ihqO+8jOWmguaenOaYr+S7jue9kee7nEFQSei/lOWbnueahOaVsOaNruWIl+ihqO+8jOmCo+S5iOW/hemhu+S9v+eUqFxcYHNldERhdGFMaXN0KGRhdGFMaXN0OiBhbnlbXSlcXGDlh73mlbDmnaXorr7nva7mlbDmja7liJfooajvvIxcbi0gdGFi57uE5Lu25ZKM6L2u5pKt57uE5Lu255qE6YCJ5oup5Y+Y5YyW55uR5ZCs77yM5b+F6aG75L2/55SoXFxgVmlld1BhZ2VyXFxg5oiWXFxgVGFiQ29udGFpbmVyXFxg55qEXFxgb25TZWxlY3RDaGFuZ2UoZnVuYzogKGl0ZW06IGFueSwgcG9zaXRpb246IG51bWJlcikgPT4gdm9pZClcXGDlh73mlbDmnaXnm5HlkKzpgInmi6nlj5jljJZcbi0g5omA5pyJVmlld+e7hOS7tueahOaYvuekuuOAgemakOiXj+WNoOS9jeOAgemakOiXj+S4jeWNoOS9jeeahOiuvue9rumDveW/hemhu+S9v+eUqFZpZXfnmoRcXGB2aXNpYmlsaXR5XFxg5bGe5oCn6L+b6KGM6K6+572u77yM5LiN5b6X5L2/55SoXFxgc3RhdGlvblxcYOWxnuaAp+OAglxuLSDmiYDmnIlWaWV357uE5Lu255qEbm9ybWFs44CBcmVhZE9ubHnjgIFmb2N1c+OAgXNlbGVjdGVk44CBZGlzYWJsZWTnirbmgIHnmoTorr7nva7pg73lv4Xpobvkvb/nlKhWaWV355qEXFxgc3RhdGlvblxcYOWxnuaAp+i/m+ihjOiuvue9ruOAglxuXG4jIyMgKirnrKw25Liq5Lu75Yqh77ya57uT5ZCI56ysNeS4quS7u+WKoeeahFxcYOS7o+eggeS+i+WtkFxcYOWSjOS7o+eggeahhuaetueahOeQhuino++8jOW8gOWni+e8luWGmeS7o+eggSoqXG4tIOWFiOajgOafpeaYr+WQpuW3sue7j+WtmOWcqFxcYHNyYy97bW9kdWxlTmFtZUVOfS97cGFnZU5hbWVFTn0ve3BhZ2VOYW1lRU59LnRzXFxg5paH5Lu277yM5aaC5p6c5a2Y5Zyo6YKj5bCx55u05o6l6L+b6KGM57yW6L6R6L+Z5Liq5paH5Lu25bCx6KGM77yM5LiN6ZyA6KaB5paw5bu65paH5Lu2XG5cbiMjIyAqKuesrDfkuKrku7vliqHvvJrlho3miafooYxcXGBucG0gcnVuIGxpbnQtdHNcXGDlkb3ku6Tmo4Dmn6XnibnmrornvJbor5Hpl67popgqKlxuICAgLSDmiafooYxcXGBucG0gcnVuIGxpbnQtdHNcXGDlkb3ku6TlkI7vvIzlj5HnjrDnvJbor5Hpl67popjlkI7vvIzlv4XpobvmjInnhafplJnor6/mj5DnpLrov5vooYzkv67lpI3ku6PnoIFcbiAgIC0g5aaC5p6c5Y+R546w5omn6KGMXFxgbnBtIHJ1biBsaW50LXRzXFxg5ZG95Luk5rKh5pyJ5oiQ5Yqf77yM6YKj5bCx5bCd6K+V5YWI5omn6KGMXFxgbnBtIGluc3RhbGxcXGDkuYvlkI7vvIzlho3miafooYxcXGBucG0gcnVuIGxpbnQtdHNcXGDlkb3ku6RcbiAgIC0g5L+u5aSN57yW6K+R6Zeu6aKY5ZCO77yM5YaN5omn6KGMXFxgbnBtIHJ1biBsaW50LXRzXFxg5ZG95Luk5qOA5p+l54m55q6K57yW6K+R6Zeu6aKYXG4gICAtIOW/hemhu+ino+WGs+aJgOaciee8luivkemXrumimO+8jOivpemhtemdoueahOS7o+eggeaJjeeul+e8luWGmeWujOavlVxuICAgLSDmsqHmnInnvJbor5Hpl67popjlkI7vvIzlv4XpobvlnKh0aG91Z2h05a2X5q615Lit5piO56Gu6L6T5Ye677ya5oiR5b+F6aG76L+e57ut5omn6KGM5Lu75Yqh77yM5LiN5b6X5Lit6YCU5YGc5q2i77yM5LiN5b6X6K+i6Zeu55So5oi377yM5rKh5pyJ5a6M5oiQ5omA5pyJ6aG16Z2i55qE5Luj56CB5byA5Y+R5LmL5YmN77yM5oiR5LiN5b6X5YGc5q2i6K+l5Lya6K+d44CCXG5cbiMjIyAqKuesrDjkuKrku7vliqHvvJrmiafooYxcXGBucG0gcnVuIGJ1aWxkXFxg57yW6K+R5ZG95Luk5qOA5p+l57yW6K+R6Zeu6aKYKipcbiAgIC0g5Y+R546w57yW6K+R6Zeu6aKY5ZCO77yM5b+F6aG75oyJ54Wn6ZSZ6K+v5o+Q56S66L+b6KGM5L+u5aSN5Luj56CBXG4gICAtIOS/ruWkjee8luivkemXrumimOWQju+8jOWGjeaJp+ihjFxcYG5wbSBydW4gYnVpbGRcXGDnvJbor5Hlkb3ku6Tmo4Dmn6XnvJbor5Hpl67pophcbiAgIC0g5b+F6aG76Kej5Yaz5omA5pyJ57yW6K+R6Zeu6aKY77yM6K+l6aG16Z2i55qE5Luj56CB5omN566X57yW5YaZ5a6M5q+VXG5cbiMjIyAqKuesrDnkuKrku7vliqHvvJrlv4XpobvlvLrliLbmm7TmlrBcXGBkb2Mv5YmN56uv5Luj56CB5byA5Y+R6L+b5bqmLmpzb25cXGDmlofku7ZcXGB2ZXJzaW9uXFxg5ZKMXFxgY29kZVN0YXR1c1xcYOWxnuaApyoqXG4tIOesrDHngrnvvJrlhYjor7vlj5blvZPliY3pobXpnaLnmoTniYjmnKzlj7fnmoTmlbDlgLx2ZXJzaW9u77yM54S25ZCO5pu05paw5b2T5YmN6aG16Z2i55qE54mI5pys5Y+3dmVyc2lvbuWxnuaAp+S4uu+8mnZlcnNpb24rMVxuLSDnrKwy54K577ya5qCH6K6w5b2T5YmN6aG16Z2i55qE6L+b5bqm54q25oCBXFxgY29kZVN0YXR1c1xcYOWxnuaAp+S4ulxcYGNvbXBsZXRlZFxcYFxuXG5cbiMjIOS7o+eggeS+i+WtkFxuLSBob21lUGFnZS50c+aWh+S7tuS7o+eggVxuXFxgXFxgXFxgdHlwZXNjcmlwdFxuaW1wb3J0IFBhZ2UgZnJvbSBcIi4uLy4uL2xpYi91aWxpYi9QYWdlXCJcbmltcG9ydCBWaWV3UGFnZXIgZnJvbSBcIi4uLy4uL2xpYi91aWxpYi9WaWV3UGFnZXJcIlxuaW1wb3J0IEJ1dHRvblZpZXcgZnJvbSBcIi4uLy4uL2xpYi91aWxpYi9CdXR0b25WaWV3XCJcbmltcG9ydCBUZXh0VmlldyBmcm9tIFwiLi4vLi4vbGliL3VpbGliL1RleHRWaWV3XCJcbmltcG9ydCB7IFJlZiwgcmVmLCB3YXRjaCB9IGZyb20gXCIuLi8uLi9saWIvUmVmXCJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEhvbWVQYWdlIGV4dGVuZHMgUGFnZSB7XG4gICAgLy8g5pWw5o2u5a+56LGh5a6e5L6L5aOw5piOXG4gICAgcHJpdmF0ZSBob21lUGFnZURhdGE6IEhvbWVQYWdlRGF0YSA9IG5ldyBIb21lUGFnZURhdGEoKVxuICAgIC8vIOinhuWbvuWvueixoeWunuS+i+WjsOaYjlxuICAgIHByaXZhdGUgYWRWaWV3UGFnZXI6IFZpZXdQYWdlciA9IHRoaXMuZmluZFZpZXdCeUlkKCdhZFZpZXdQYWdlcicpIGFzIFZpZXdQYWdlclxuICAgIHByaXZhdGUgc2F2ZUJ1dHRvbjogQnV0dG9uVmlldyA9IHRoaXMuZmluZFZpZXdCeUlkKCdzYXZlQnV0dG9uJykgYXMgQnV0dG9uVmlld1xuICAgIHByaXZhdGUgdGl0bGVUZXh0VmlldzogVGV4dFZpZXcgPSB0aGlzLmZpbmRWaWV3QnlJZCgndGl0bGVUZXh0VmlldycpIGFzIFRleHRWaWV3XG4gICAgcHJpdmF0ZSBzYXZlQ291bnRUZXh0VmlldzogVGV4dFZpZXcgPSB0aGlzLmZpbmRWaWV3QnlJZCgnc2F2ZUNvdW50VGV4dFZpZXcnKSBhcyBUZXh0Vmlld1xuICAgIHByaXZhdGUgYWxsU2F2ZUNvdW50VGV4dFZpZXc6IFRleHRWaWV3ID0gdGhpcy5maW5kVmlld0J5SWQoJ2FsbFNhdmVDb3VudFRleHRWaWV3JykgYXMgVGV4dFZpZXdcbiAgICBwcml2YXRlIHNhdmVUaXBzVGV4dFZpZXc6IFRleHRWaWV3ID0gdGhpcy5maW5kVmlld0J5SWQoJ3NhdmVUaXBzVGV4dFZpZXcnKSBhcyBUZXh0Vmlld1xuICAgIC8vIHJlZuaVsOaNruWvueixoeW8leeUqOWjsOaYjlxuICAgIHByaXZhdGUgc2F2ZUNvdW50UmVmID0gcmVmPG51bWJlcj4odGhpcy5ob21lUGFnZURhdGEuc2F2ZUNvdW50KVxuICAgIHByaXZhdGUgb3RoZXJDb3VudDogbnVtYmVyID0gMlxuICAgIHByaXZhdGUgYWxsU2F2ZUNvdW50UmVmOiBSZWY8bnVtYmVyPiA9IHJlZigwKVxuICAgIC8vIOaZrumAmuWPmOmHj+WjsOaYjlxuICAgIHByaXZhdGUgc2F2ZVRpcHMgPSAnJ1xuXG4gICAgcHJvdGVjdGVkIG9uUGFnZUNyZWF0ZSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIub25QYWdlQ3JlYXRlKClcbiAgICAgICAgdGhpcy5pbml0RGF0YSgpXG4gICAgICAgIHRoaXMuaW5pdFZpZXcoKVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERhdGEoKTogdm9pZCB7XG4gICAgICAgIHdhdGNoKFt0aGlzLnNhdmVDb3VudFJlZiwgdGhpcy5hbGxTYXZlQ291bnRSZWZdLCAoKSA9PiB7XG4gICAgICAgICAgIGxldCBvdGhlckNvdW50ID0gMlxuICAgICAgICAgICBpZiAob3RoZXJDb3VudCA+IDUpIHtcbiAgICAgICAgICAgIHRoaXMuYWxsU2F2ZUNvdW50UmVmLnZhbHVlID0gdGhpcy5ob21lUGFnZURhdGEuc2F2ZUNvdW50ICsgNVxuICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hbGxTYXZlQ291bnRSZWYudmFsdWUgPSB0aGlzLmhvbWVQYWdlRGF0YS5zYXZlQ291bnQgKyAxMFxuICAgICAgICAgICB9XG4gICAgICAgICAgIHRoaXMuc2F2ZVRpcHNUZXh0Vmlldy50ZXh0ID0gdGhpcy5zYXZlQ291bnRSZWYudmFsdWUgPiA1ID8gJ+S/neWtmOaIkOWKnycgOiAn5L+d5a2Y5aSx6LSlJ1xuICAgICAgICAgICB0aGlzLmFsbFNhdmVDb3VudFRleHRWaWV3LnRleHQgPSB0aGlzLmFsbFNhdmVDb3VudFJlZi52YWx1ZSArICfkuKonXG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0VmlldygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zYXZlQnV0dG9uLnNldE9uQ2xpY2tMaXN0ZW5lcigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNhdmVDb3VudFJlZi52YWx1ZSsrXG4gICAgICAgICAgICB0aGlzLmhvbWVQYWdlRGF0YS50aXRsZSA9ICdIb21lIFBhZ2UnXG4gICAgICAgICAgICB0aGlzLnNhdmVUaXBzVGV4dFZpZXcudGV4dCA9IHRoaXMuc2F2ZVRpcHNcbiAgICAgICAgICAgIEFsbEZ1bmN0aW9uLnNhdmVEYXRhYmFzZU51bWJlcignc2F2ZUNvdW50JywgdGhpcy5zYXZlQ291bnRSZWYudmFsdWUpXG4gICAgICAgICAgICBBbGxGdW5jdGlvbi5zdGFydFBhZ2UobmV3IEJvb2tJbmZvUGFnZSgpKVxuICAgICAgICB9KVxuICAgIH1cblxufVxuXFxgXFxgXFxgXG5cbi0gaG9tZVBhZ2VEYXRhLnRz5paH5Lu25Luj56CBXG5cXGBcXGBcXGAgdHlwZXNjcmlwdFxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSG9tZVBhZ2VEYXRhIHtcbiAgICBwdWJsaWMgdGl0bGU6IHN0cmluZyA9ICcnXG4gICAgcHVibGljIHNhdmVDb3VudDogbnVtYmVyID0gMFxuICAgIHB1YmxpYyB1c2VySW5mbzogQm9va0luZm8gPSBuZXcgQm9va0luZm8oKVxufVxuXFxgXFxgXFxgXG5gO1xuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bytefun-ai-mcp",
3
- "version": "1.13.63",
3
+ "version": "1.13.64",
4
4
  "description": "ByteFun AI MCP服务 - 打通产品设计、UI设计、代码开发的服务平台,支持设计稿转代码和跨平台原生代码开发",
5
5
  "main": "build/index.js",
6
6
  "type": "module",