@66rpg/lumimaker 0.1.43 → 0.1.44

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 CHANGED
@@ -1,23 +1,23 @@
1
- import G from"picocolors";import{spawn as Lo}from"node:child_process";import j from"node:fs";import Mo from"node:os";import V from"node:path";var Ot={$schema:"http://json-schema.org/draft-07/schema#",description:"lumimaker CLI \u8FD4\u56DE\u6587\u6848\u5B57\u5178\uFF08\u5305\u542B code \u7801\u4E0E\u6CE8\u91CA\u6587\u6848\uFF09",whoami:{title_logged_in:{code:"",text:"\u8D26\u53F7\u767B\u5F55\u4FE1\u606F",comment:"whoami \u67E5\u770B\u5DF2\u767B\u5F55\u8D26\u53F7\u4FE1\u606F\u65F6\u7684\u5361\u7247\u4E3B\u6807\u9898"},title_expired:{code:"2003",text:"\u767B\u5F55\u5DF2\u5931\u6548",comment:"whoami \u672C\u5730\u51ED\u636E\u8FC7\u671F\u65F6\u7684\u8B66\u544A\u5361\u7247\u6807\u9898"},title_offline:{code:"9000",text:"\u79BB\u7EBF\u6A21\u5F0F",comment:"whoami \u672C\u5730\u6709\u51ED\u636E\u4F46\u7F51\u7EDC\u4E0D\u53EF\u8FBE\u65F6\u7684\u5361\u7247\u6807\u9898"},title_not_logged_in:{code:"2001",text:"\u672A\u767B\u5F55",comment:"whoami \u5C1A\u672A\u767B\u5F55\u65F6\u7684\u63D0\u793A\u5361\u7247\u6807\u9898"},status_expired:{code:"2003",text:"\u51ED\u8BC1\u5DF2\u8FC7\u671F",comment:"\u51ED\u8BC1\u8FC7\u671F\u72B6\u6001\u63CF\u8FF0"},hint_relogin:{code:"2001",text:"\u8BF7\u6267\u884C npx lumimaker login \u91CD\u65B0\u767B\u5F55",comment:"\u91CD\u65B0\u767B\u5F55\u5F15\u5BFC\u5EFA\u8BAE"},status_offline:{code:"9000",text:"\u672C\u5730\u6709\u767B\u5F55\u51ED\u8BC1\uFF0C\u4F46\u5F53\u524D\u8FDE\u4E0D\u4E0A\u5E73\u53F0",comment:"\u79BB\u7EBF\u72B6\u6001\u539F\u56E0\u63CF\u8FF0"},hint_check_network:{code:"9000",text:"\u8BF7\u68C0\u67E5\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5",comment:"\u79BB\u7EBF\u72B6\u6001\u89E3\u51B3\u5EFA\u8BAE"},status_not_logged_in:{code:"2001",text:"\u5C1A\u672A\u767B\u5F55\u6258\u7BA1\u5E73\u53F0",comment:"\u672A\u767B\u5F55\u72B6\u6001\u63CF\u8FF0"},hint_login_now:{code:"2001",text:"\u8BF7\u6267\u884C npx lumimaker login \u5F00\u59CB\u767B\u5F55\u6388\u6743",comment:"\u672A\u767B\u5F55\u65F6\u7684\u767B\u5F55\u5F15\u5BFC\u5EFA\u8BAE"},label_nickname:{code:"",text:"\u7528\u6237\u6635\u79F0",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_uid:{code:"",text:"\u7528\u6237 ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_verified:{code:"",text:"\u5B9E\u540D\u8BA4\u8BC1",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},val_verified_yes:{code:"",text:"\u5DF2\u5B9E\u540D\u8BA4\u8BC1",comment:"\u5DF2\u5B8C\u6210\u5B9E\u540D\u8BA4\u8BC1\u72B6\u6001"},val_verified_no:{code:"",text:"\u672A\u8BA4\u8BC1 (\u90E8\u5206\u6743\u9650\u53D7\u9650)",comment:"\u672A\u5B8C\u6210\u5B9E\u540D\u8BA4\u8BC1\u72B6\u6001"},label_vip:{code:"",text:"\u4F1A\u5458\u7B49\u7EA7",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_admin:{code:"",text:"\u7BA1\u7406\u5458",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_sauthor:{code:"",text:"\u7B7E\u7EA6\u4F5C\u8005",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},val_yes:{code:"",text:"\u662F",comment:"\u5E03\u5C14\u771F\u503C\u6587\u6848"},label_lumi_username:{code:"",text:"\u7528\u6237\u540D",comment:"\u5E7B\u5149 profile.username"},label_display_role:{code:"",text:"\u8EAB\u4EFD",comment:"\u5E7B\u5149 profile.display_role_name"},label_lumi_roles:{code:"",text:"\u89D2\u8272",comment:"\u5E7B\u5149 profile.roles \u7684\u5C55\u793A\u540D"},role_user:{code:"",text:"\u666E\u901A\u7528\u6237",comment:"lumi \u89D2\u8272 user \u7684\u4E2D\u6587\u540D"},role_unknown:{code:"",text:"\u672A\u77E5",comment:"\u672A\u8BC6\u522B\u7684 lumi \u89D2\u8272"},role_author:{code:"",text:"\u4F5C\u8005",comment:"lumi \u89D2\u8272 author \u7684\u4E2D\u6587\u540D"},role_signed_author:{code:"",text:"\u7B7E\u7EA6\u4F5C\u8005",comment:"lumi \u89D2\u8272 signed_author \u7684\u4E2D\u6587\u540D"},role_signed_template_author:{code:"",text:"\u7B7E\u7EA6\u6A21\u677F\u4F5C\u8005",comment:"lumi \u89D2\u8272 signed_template_author \u7684\u4E2D\u6587\u540D"},role_moderator:{code:"",text:"\u7248\u4E3B",comment:"lumi \u89D2\u8272 moderator \u7684\u4E2D\u6587\u540D"},lumi_not_ready:{code:"",text:"\u53D1\u5E03\u5E73\u53F0\u672A\u5C31\u7EEA\uFF1A\u8BF7\u8FD0\u884C npx lumimaker login \u540E\u518D\u53D1\u5E03",comment:"SSO \u5DF2\u767B\u5F55\u4F46 Lumi profile \u5931\u8D25"},label_expires_at:{code:"",text:"\u51ED\u8BC1\u6709\u6548\u671F\u81F3",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},footer_logged_in:{code:"",text:"\u63D0\u793A\uFF1A\u767B\u5F55\u51ED\u636E\u5DF2\u5B89\u5168\u5B58\u50A8\u4E8E\u7CFB\u7EDF\u672C\u5730\u5BC6\u94A5\u73AF\u4E2D\u3002",comment:"\u767B\u5F55\u5361\u7247\u5E95\u90E8\u5B89\u5168\u63D0\u793A"}},publish:{title_success:{code:"",text:"\u4F5C\u54C1\u53D1\u7248\u6210\u529F",comment:"\u4F5C\u54C1\u53D1\u5E03\u6210\u529F\u5361\u7247\u6807\u9898"},label_game_id:{code:"",text:"\u4F5C\u54C1ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E\uFF08\u5217\u8868\u6DF7\u6392\u65F6\u7528\uFF09"},label_game_id_official:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1ID",comment:"\u6B63\u5F0F\u7248\u4F5C\u54C1\u6210\u529F\u5361\u7247"},label_game_id_demo:{code:"",text:"\u8BD5\u73A9ID",comment:"demo \u7248\u4F5C\u54C1\u6210\u529F\u5361\u7247"},label_release_version:{code:"",text:"\u53D1\u5E03\u7248\u672C",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_version_id:{code:"",text:"\u7248\u672C ID",comment:"\u4F5C\u54C1\u53D1\u7248\u6210\u529F\u5361\u7247"},label_version_no:{code:"",text:"\u7248\u672C\u5E8F\u53F7",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_variant_type:{code:"",text:"\u7C7B\u578B",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},val_demo:{code:"",text:"demo\u7248\u4F5C\u54C1\uFF08demo\uFF09",comment:"demo \u7C7B\u578B"},val_official:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"\u6B63\u5F0F\u7248\u7C7B\u578B"},val_derived:{code:"",text:"\u884D\u751F",comment:"\u884D\u751F\u53D8\u4F53\u7C7B\u578B"},label_parent_game_id:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1ID",comment:"demo \u6302\u63A5\u7684\u6B63\u5F0F\u7248"},label_package_size:{code:"",text:"\u4F5C\u54C1\u5305\u5927\u5C0F",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_post_id:{code:"",text:"\u4F5C\u54C1\u5E16\u5B50ID",comment:"versions/create \u56DE\u5305\u7684\u5E16\u5B50 id"},label_page:{code:"",text:"\u5E16\u5B50",comment:"post_status === 4 \u5DF2\u516C\u5F00\u5E16"},label_page_draft:{code:"",text:"\u5E16\u5B50\u8349\u7A3F\uFF08\u786E\u8BA4\u540E\u624D\u4F1A\u516C\u5F00\uFF09",comment:"post_status \u975E 4"},footer_success:{code:"",text:"dist/ \u9759\u6001\u5305\u5DF2\u6210\u529F\u6253\u5305\u8F6C\u7801\u5E76\u4E0A\u4F20\u81F3\u6258\u7BA1\u5E73\u53F0\u3002",comment:"\u4F5C\u54C1\u53D1\u5E03\u6210\u529F\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},title_passed:{code:"",text:"\u4F5C\u54C1\u53D1\u7248\u6210\u529F",comment:"\u4F5C\u54C1\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u6807\u9898"},title_reviewing:{code:"",text:"\u4F5C\u54C1\u5DF2\u63D0\u4EA4\u5BA1\u6838",comment:"\u4F5C\u54C1\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u6807\u9898"},title_rejected:{code:"",text:"\u4F5C\u54C1\u5BA1\u6838\u88AB\u62D2\u7EDD",comment:"\u4F5C\u54C1\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u6807\u9898"},footer_passed:{code:"",text:"\u7248\u672C\u5DF2\u901A\u8FC7\u5BA1\u6838\u3002\u5E16\u5B50\u662F\u5426\u516C\u5F00\u3001\u4F5C\u54C1\u662F\u5426\u4E0A\u67B6\uFF0C\u8BF7\u4EE5\u7F51\u9875\u72B6\u6001\u4E3A\u51C6\u3002",comment:"\u4F5C\u54C1\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_reviewing:{code:"",text:"\u5BA1\u6838\u4E2D\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u5BA1\u6838\u7ED3\u679C\u3002",comment:"\u4F5C\u54C1\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_rejected:{code:"",text:"\u5BA1\u6838\u88AB\u62D2\u7EDD\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u8BE6\u60C5\u3002",comment:"\u4F5C\u54C1\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"}},publish_template:{title_success:{code:"",text:"\u6A21\u677F\u53D1\u7248\u6210\u529F",comment:"\u6A21\u677F\u53D1\u5E03\u6210\u529F\u5361\u7247\u6807\u9898"},label_template_id:{code:"",text:"\u6A21\u677F ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_template_name:{code:"",text:"\u6A21\u677F\u540D\u79F0",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_slug:{code:"",text:"\u82F1\u6587\u77ED\u540D",comment:"\u5F00\u5DE5\u7A0B\u5F15\u7528\u540E\u534A\u6BB5\uFF0C\u4E0D\u662F\u5E73\u53F0\u6A21\u677F\u540D name"},label_create_pull:{code:"",text:"\u4ED6\u4EBA\u62C9\u53D6",comment:"\u53D1\u7248\u540E\u7ED9\u51FA lumimaker-create \u547D\u4EE4\uFF0C\u987B\u7528 \u7528\u6237\u540D/slug"},label_version:{code:"",text:"\u7248\u672C\u53F7",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_revision_id:{code:"",text:"\u6A21\u677F\u7248\u672C ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_data_ver:{code:"",text:"\u6570\u636E\u5305\u7248\u672C",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_data_id:{code:"",text:"\u6570\u636E\u5305 ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_data_summary:{code:"",text:"\u8D44\u6E90\u8BF4\u660E",comment:"\u6570\u636E\u5305 summary \u5361\u7247\u6807\u7B7E"},label_post_id:{code:"",text:"\u5173\u8054\u5E16",comment:"versions/create \u56DE\u5305\u7684\u5E16\u5B50 id"},label_page:{code:"",text:"\u5E16\u5B50",comment:"post_status === 4 \u5DF2\u516C\u5F00\u5E16"},label_page_draft:{code:"",text:"\u5E16\u5B50\u8349\u7A3F\uFF08\u786E\u8BA4\u540E\u624D\u4F1A\u516C\u5F00\uFF09",comment:"post_status \u975E 4"},footer_success:{code:"",text:"\u6A21\u677F\u5DF2\u4E0A\u4F20\u5230\u5E73\u53F0\u3002\u8BF7\u628A .lumimaker/ \u4E00\u5E76\u63D0\u4EA4\u5230 git\u3002",comment:"\u6A21\u677F\u53D1\u7248\u6210\u529F\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},title_passed:{code:"",text:"\u6A21\u677F\u53D1\u7248\u6210\u529F",comment:"\u6A21\u677F\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u6807\u9898"},title_reviewing:{code:"",text:"\u6A21\u677F\u5DF2\u63D0\u4EA4\u5BA1\u6838",comment:"\u6A21\u677F\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u6807\u9898"},title_rejected:{code:"",text:"\u6A21\u677F\u5BA1\u6838\u88AB\u62D2\u7EDD",comment:"\u6A21\u677F\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u6807\u9898"},footer_passed:{code:"",text:"\u7248\u672C\u5DF2\u901A\u8FC7\u5BA1\u6838\u3002\u5E16\u5B50\u662F\u5426\u516C\u5F00\u3001\u6A21\u677F\u662F\u5426\u4E0A\u67B6\uFF0C\u8BF7\u4EE5\u7F51\u9875\u72B6\u6001\u4E3A\u51C6\u3002",comment:"\u6A21\u677F\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_reviewing:{code:"",text:"\u5BA1\u6838\u4E2D\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u5BA1\u6838\u7ED3\u679C\u3002",comment:"\u6A21\u677F\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_rejected:{code:"",text:"\u5BA1\u6838\u88AB\u62D2\u7EDD\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u8BE6\u60C5\u3002",comment:"\u6A21\u677F\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},title_data_success:{code:"",text:"\u6570\u636E\u5305\u5DF2\u4E0A\u4F20",comment:"\u53EA\u53D1\u6570\u636E\u5305\u6210\u529F\u5361\u7247\u6807\u9898"},footer_data_success:{code:"",text:"\u8FD9\u6B21\u53EA\u4E0A\u4F20\u4E86\u6570\u636E\u5305\uFF0C\u6CA1\u6709\u53D1\u5E03\u65B0\u6A21\u677F\u7248\u672C\uFF0C\u4E5F\u6CA1\u6709\u4FEE\u6539\u5DF2\u6709\u6A21\u677F\u7248\u672C\u7684\u7ED1\u5B9A\u3002\u5F00\u5DE5\u7A0B\u4E0D\u5E26\u65D7\u6807\u65F6\u4E0B\u8F7D\u7684\u662F\u7248\u672C\u4E0A\u5DF2\u7ECF\u7ED1\u5B9A\u7684\u6570\u636E\u5305\uFF1B\u8981\u4E0B\u8FD9\u4E00\u4EFD\u5C1A\u672A\u7ED1\u5B9A\u7684\u5305\uFF0C\u8BF7\u52A0\u4E0A --with-assets \u548C\u6570\u636E\u5305 ID\u3002\u82E5\u8981\u8BA9\u65B0\u7684\u6A21\u677F\u7248\u672C\u7ED1\u5B9A\u8FD9\u4EFD\u5305\uFF0C\u8BF7\u5148\u4FEE\u6539 package.json.version\uFF0C\u518D\u53D1\u5E03\u6A21\u677F\u3002",comment:"\u53EA\u53D1\u6570\u636E\u5305\u6210\u529F\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"}},publish_project:{title_success:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u7248\u6210\u529F",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u7248\u6210\u529F\u5361\u7247\u6807\u9898"},label_project_id:{code:"",text:"\u5DE5\u7A0B ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_project_name:{code:"",text:"\u5DE5\u7A0B\u540D\u79F0",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_release_version:{code:"",text:"\u53D1\u5E03\u7248\u672C",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_version_id:{code:"",text:"\u7248\u672C ID",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u7248\u6210\u529F\u5361\u7247"},label_post_id:{code:"",text:"\u5173\u8054\u5E16",comment:"versions/create \u56DE\u5305\u7684\u5E16\u5B50 id"},label_package_size:{code:"",text:"\u6E90\u7801\u5305\u5927\u5C0F",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_page:{code:"",text:"\u5E16\u5B50",comment:"\u5DF2\u516C\u5F00\u5E16"},label_page_draft:{code:"",text:"\u5E16\u5B50\u8349\u7A3F\uFF08\u786E\u8BA4\u540E\u624D\u4F1A\u516C\u5F00\uFF09",comment:"post_status \u975E 4"},footer_success:{code:"",text:"\u6E90\u7801\u5305\u5DF2\u4E0A\u4F20\uFF0C\u7248\u672C\u5DF2\u81EA\u52A8\u63D0\u4EA4\u5BA1\u6838\uFF1B\u5DF2\u540C\u6B65\u66F4\u65B0 .lumimaker/project.json\u3002",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u7248\u6210\u529F\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},title_passed:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u7248\u6210\u529F",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u6807\u9898"},title_reviewing:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u5DF2\u63D0\u4EA4\u5BA1\u6838",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u6807\u9898"},title_rejected:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u5BA1\u6838\u88AB\u62D2\u7EDD",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u6807\u9898"},footer_passed:{code:"",text:"\u7248\u672C\u5DF2\u901A\u8FC7\u5BA1\u6838\u3002\u5E16\u5B50\u662F\u5426\u516C\u5F00\u3001\u5DE5\u7A0B\u662F\u5426\u4E0A\u67B6\uFF0C\u8BF7\u4EE5\u7F51\u9875\u72B6\u6001\u4E3A\u51C6\u3002",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_reviewing:{code:"",text:"\u5BA1\u6838\u4E2D\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u5BA1\u6838\u7ED3\u679C\u3002",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_rejected:{code:"",text:"\u5BA1\u6838\u88AB\u62D2\u7EDD\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u8BE6\u60C5\u3002",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"}},templates:{table_title:{code:"",text:"\u6211\u7684\u6A21\u677F\u5E16\u5B50\u5217\u8868\uFF1A",comment:"\u6A21\u677F\u5217\u8868\u8868\u683C\u4E3B\u6807\u9898"},empty_list:{code:"",text:"\u6682\u65E0\u6A21\u677F\u6570\u636E",comment:"\u5217\u8868\u4E3A\u7A7A\u65F6\u7684\u5360\u4F4D\u8BF4\u660E"},col_template_id:{code:"",text:"\u6A21\u677F ID",comment:"\u8868\u683C\u5217\u540D"},col_template_name:{code:"",text:"\u6A21\u677F\u540D\u79F0",comment:"\u8868\u683C\u5217\u540D"},col_latest_version:{code:"",text:"\u6700\u65B0\u7248\u672C",comment:"\u8868\u683C\u5217\u540D"},query_card_title:{code:"",text:"\u6A21\u677F\u8BE6\u60C5",comment:"\u67E5\u8BE2\u6A21\u677F\u8BE6\u60C5\u5361\u7247\u6807\u9898"},versions_title:{code:"",text:"\u6A21\u677F\u53D1\u5E03\u7248\u672C\u5386\u53F2",comment:"\u6A21\u677F\u7248\u672C\u5217\u8868\u6807\u9898"},data_packages_title:{code:"",text:"\u6A21\u677F\u7ED1\u5B9A\u7684\u6570\u636E\u5305\u5217\u8868",comment:"\u6A21\u677F\u6570\u636E\u5305\u5217\u8868\u6807\u9898"},col_data_id:{code:"",text:"\u6570\u636E\u5305 ID",comment:"\u6A21\u677F\u6570\u636E\u5305\u8868\u683C\u5217\u540D"},col_data_ver:{code:"",text:"\u6570\u636E\u5305\u7248\u672C",comment:"\u6A21\u677F\u6570\u636E\u5305\u8868\u683C\u5217\u540D"},col_data_summary:{code:"",text:"\u8BF4\u660E",comment:"\u6A21\u677F\u6570\u636E\u5305 summary \u5217\u540D"},empty_data:{code:"",text:"\u6682\u65E0\u6570\u636E\u5305",comment:"\u6A21\u677F\u6570\u636E\u5305\u5217\u8868\u4E3A\u7A7A\u65F6\u7684\u5360\u4F4D\u8BF4\u660E"}},games:{table_title:{code:"",text:"\u6211\u7684\u4F5C\u54C1\u5E16\u5B50\u5217\u8868\uFF1A",comment:"\u4F5C\u54C1\u5217\u8868\u8868\u683C\u4E3B\u6807\u9898"},empty_list:{code:"",text:"\u6682\u65E0\u4F5C\u54C1\u6570\u636E",comment:"\u5217\u8868\u4E3A\u7A7A\u65F6\u7684\u5360\u4F4D\u8BF4\u660E"},col_game_id:{code:"",text:"\u4F5C\u54C1ID",comment:"\u8868\u683C\u5217\u540D"},col_game_name:{code:"",text:"\u4F5C\u54C1\u540D\u79F0",comment:"\u8868\u683C\u5217\u540D"},col_variant:{code:"",text:"\u7C7B\u578B",comment:"\u8868\u683C\u5217\u540D"},col_latest_version:{code:"",text:"\u6700\u65B0\u7248\u672C",comment:"\u8868\u683C\u5217\u540D"},val_demo:{code:"",text:"demo",comment:"\u8868\u683C\u5217\u5355\u5143\u683C\u5185\u6587\u672C"},val_official:{code:"",text:"\u4F5C\u54C1",comment:"\u8868\u683C\u5217\u5355\u5143\u683C\u5185\u6587\u672C"},val_derived:{code:"",text:"\u884D\u751F",comment:"\u8868\u683C\u5217\u5355\u5143\u683C\u5185\u6587\u672C"},query_card_title:{code:"",text:"\u4F5C\u54C1\u8BE6\u60C5",comment:"\u67E5\u8BE2\u4F5C\u54C1\u8BE6\u60C5\u5361\u7247\u6807\u9898"},versions_title:{code:"",text:"\u4F5C\u54C1\u53D1\u5E03\u7248\u672C\u5386\u53F2",comment:"\u4F5C\u54C1\u7248\u672C\u5217\u8868\u6807\u9898"}},projects:{table_title:{code:"",text:"\u6211\u7684\u5F00\u6E90\u5DE5\u7A0B\u5217\u8868\uFF1A",comment:"\u5F00\u6E90\u5DE5\u7A0B\u5217\u8868\u8868\u683C\u4E3B\u6807\u9898"},empty_list:{code:"",text:"\u6682\u65E0\u5F00\u6E90\u5DE5\u7A0B\u6570\u636E",comment:"\u5217\u8868\u4E3A\u7A7A\u65F6\u7684\u5360\u4F4D\u8BF4\u660E"},col_project_id:{code:"",text:"\u5DE5\u7A0B ID",comment:"\u8868\u683C\u5217\u540D"},col_project_name:{code:"",text:"\u5DE5\u7A0B\u540D\u79F0",comment:"\u8868\u683C\u5217\u540D"},col_latest_version:{code:"",text:"\u6700\u65B0\u7248\u672C",comment:"\u8868\u683C\u5217\u540D"},query_card_title:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u8BE6\u60C5",comment:"\u67E5\u8BE2\u5F00\u6E90\u5DE5\u7A0B\u8BE6\u60C5\u5361\u7247\u6807\u9898"},versions_title:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u7248\u672C\u5386\u53F2",comment:"\u5F00\u6E90\u5DE5\u7A0B\u7248\u672C\u5217\u8868\u6807\u9898"}},versions:{col_version_id:{code:"",text:"\u7248\u672C ID",comment:"\u7248\u672C\u5386\u53F2\u8868\u683C\u5217\u540D"},col_version:{code:"",text:"\u7248\u672C\u53F7",comment:"\u7248\u672C\u5386\u53F2\u8868\u683C\u5217\u540D"},col_status:{code:"",text:"\u5BA1\u6838",comment:"\u7248\u672C\u5386\u53F2\u8868\u683C\u5217\u540D"},col_published_at:{code:"",text:"\u901A\u8FC7\u65F6\u95F4",comment:"\u7248\u672C\u901A\u8FC7\u65F6\u95F4\uFF08published_at\uFF0C\u672A\u901A\u8FC7\u663E\u793A -\uFF09"},col_changelog:{code:"",text:"\u66F4\u65B0\u8BF4\u660E",comment:"\u7248\u672C\u5386\u53F2\u8868\u683C\u5217\u540D"},col_post:{code:"",text:"\u5173\u8054\u5E16",comment:"\u7248\u672C\u5386\u53F2\u8868\u683C\uFF1Apost_id \u4E0E\u516C\u5F00\u72B6\u6001"},post_public:{code:"",text:"\u5DF2\u516C\u5F00",comment:"post_status === 4"},post_draft:{code:"",text:"\u672A\u516C\u5F00",comment:"post_status \u975E 4"},status_draft:{code:"",text:"\u8349\u7A3F",comment:"\u7248\u672C status=1"},status_machine:{code:"",text:"\u673A\u5BA1\u4E2D",comment:"\u7248\u672C status=2"},status_human:{code:"",text:"\u4EBA\u5BA1\u4E2D",comment:"\u7248\u672C status=3"},status_passed:{code:"",text:"\u5DF2\u901A\u8FC7",comment:"\u7248\u672C status=4"},status_rejected:{code:"",text:"\u5DF2\u62D2\u7EDD",comment:"\u7248\u672C status=5"},status_unknown:{code:"",text:"\u672A\u77E5",comment:"\u7248\u672C status \u975E 1\u20135"},empty_versions:{code:"",text:"\u6682\u65E0\u7248\u672C\u8BB0\u5F55",comment:"\u7248\u672C\u5386\u53F2\u4E3A\u7A7A\u65F6\u7684\u5360\u4F4D\u8BF4\u660E"}},shelf:{action_update:{code:"",text:"\u66F4\u65B0",comment:"\u5E16\u5B50\u64CD\u4F5C\u884C\u4E3A\u63CF\u8FF0"},type_template:{code:"",text:"\u6A21\u677F",comment:"\u5E16\u5B50\u5B9E\u4F53\u7C7B\u578B"},type_game:{code:"",text:"\u4F5C\u54C1",comment:"\u5E16\u5B50\u5B9E\u4F53\u7C7B\u578B"},type_project:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B",comment:"\u5E16\u5B50\u5B9E\u4F53\u7C7B\u578B"},label_community_post:{code:"",text:"\u5173\u8054\u5E16",comment:"\u5E16\u5B50\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},card_title_shelf_updated:{code:"",text:"\u5E16\u5B50\u66F4\u65B0\u6210\u529F",comment:"\u5E16\u5B50\u66F4\u65B0\u6210\u529F\u5361\u7247\u6807\u9898\u540E\u7F00"},label_shelf:{code:"",text:"\u4E0A\u4E0B\u67B6",comment:"shelf_status \u4E0A\u67B6/\u4E0B\u67B6\uFF0C\u4E0D\u8981\u548C\u793E\u533A\u5E16 post_url \u6DF7\u6807\u6210\u5E16\u5B50"},val_shelf_on:{code:"",text:"\u4E0A\u67B6",comment:"shelf_status=1"},val_shelf_off:{code:"",text:"\u4E0B\u67B6",comment:"shelf_status=2"},label_changelog:{code:"",text:"\u66F4\u65B0\u8BF4\u660E",comment:"\u5E16\u5B50\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_version_id:{code:"",text:"\u7248\u672C ID",comment:"\u5E16\u5B50\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"}},error:{title:{code:"",text:"\u64CD\u4F5C\u672A\u5B8C\u6210",comment:"\u9519\u8BEF\u5361\u7247\u901A\u7528\u4E3B\u6807\u9898"},label_code:{code:"",text:"\u9519\u8BEF\u4EE3\u7801",comment:"\u9519\u8BEF\u5361\u7247\u5B57\u6BB5\u6807\u7B7E"},label_detail:{code:"",text:"\u9519\u8BEF\u8BE6\u60C5",comment:"\u9519\u8BEF\u5361\u7247\u5B57\u6BB5\u6807\u7B7E"},label_server_code:{code:"",text:"\u5E73\u53F0\u72B6\u6001\u7801",comment:"\u63A5\u53E3\u56DE\u5305 status / code\uFF0C\u539F\u6837\u5C55\u793A"},label_server_msg:{code:"",text:"\u5E73\u53F0\u9519\u8BEF\u4FE1\u606F",comment:"\u63A5\u53E3\u56DE\u5305 msg\uFF0C\u539F\u6837\u5C55\u793A"},label_hint:{code:"",text:"\u89E3\u51B3\u5EFA\u8BAE",comment:"\u9519\u8BEF\u5361\u7247\u5B57\u6BB5\u6807\u7B7E"},label_log_path:{code:"",text:"\u8BE6\u7EC6\u65E5\u5FD7",comment:"\u9519\u8BEF\u5361\u7247\u5B57\u6BB5\u6807\u7B7E"},footer:{code:"",text:"\u5982\u9700\u8FDB\u4E00\u6B65\u5E2E\u52A9\uFF0C\u8BF7\u8054\u7CFB\u5BA2\u670D{contact}\u3002",comment:"\u9519\u8BEF\u5361\u7247\u5E95\u90E8\u6CE8\u91CA\uFF1B{contact} \u4E3A\u90AE\u7BB1/QQ \u6216\u7A7A"},default_message:{code:"",text:"\u672A\u77E5\u9519\u8BEF",comment:"\u7F3A\u7701\u9519\u8BEF\u6587\u6848"}},error_codes:{"1001":{code:"1001",text:"\u8F93\u5165\u53C2\u6570\u65E0\u6548\uFF0C\u8BF7\u68C0\u67E5\u547D\u4EE4\u53C2\u6570\u3002",comment:"\u547D\u4EE4\u884C\u53C2\u6570\u4E0D\u7B26\u5408\u89C4\u8303"},"1001_missing_dist":{code:"1001",text:"\u8BF7\u5148\u5728\u5DE5\u7A0B\u76EE\u5F55\u8FD0\u884C npm run build \u751F\u6210 dist/index.html\u3002",comment:"\u53D1\u5E03\u4F5C\u54C1\u7F3A\u5C11 dist/ \u4EA7\u7269\u65F6\u7684\u89E3\u51B3\u5EFA\u8BAE"},"1001_missing_script":{code:"1001",text:"\u5F53\u524D\u5DE5\u7A0B\u7684 package.json \u7F3A\u5C11\u5FC5\u8981\u811A\u672C\uFF08\u5982 scripts.validate\u3001scripts.dev:demo\u3001scripts.build:demo\uFF09\u3002\u8BF7\u8865\u4E0A\u540E\u518D\u53D1\u5E03\u3002",comment:"\u53D1\u5E03\u6A21\u677F\u7F3A\u5C11\u89C4\u8303\u811A\u672C\u65F6\u7684\u89E3\u51B3\u5EFA\u8BAE"},"1001_no_approved":{code:"1001",text:"\u8FD9\u4E2A\u6A21\u677F\u8FD8\u6CA1\u6709\u5BA1\u6838\u901A\u8FC7\u7684\u7248\u672C\uFF0C\u4E0D\u80FD\u5F00\u5DE5\u7A0B\u3002\u8BF7\u6362\u5DF2\u8FC7\u5BA1\u7684\u6A21\u677F\uFF0C\u6216\u7B49\u5BA1\u6838\u901A\u8FC7\u540E\u518D\u8BD5\u3002\u672C\u5730\u76EE\u5F55\u53EF\u7528 --from-dir\u3002",comment:"\u5B89\u88C5\u6A21\u677F\u65F6\u6CA1\u6709\u5DF2\u901A\u8FC7\u5BA1\u6838\u7684\u7248\u672C"},"1003_checksum":{code:"1003",text:"\u6A21\u677F\u5305\u6821\u9A8C\u4E0D\u5339\u914D\uFF0C\u53EF\u80FD\u662F\u4E91\u7AEF\u6587\u4EF6\u5F02\u5E38\u6216\u7F51\u7EDC\u4E0B\u8F7D\u53D7\u635F\uFF0C\u8BF7\u91CD\u8BD5\u6216\u8054\u7CFB\u5BA2\u670D{contact}\u91CD\u65B0\u53D1\u7248\u3002",comment:"\u6A21\u677F\u5B89\u88C5\u5305\u54C8\u5E0C\u6821\u9A8C\u5931\u8D25\u65F6\u7684\u89E3\u51B3\u5EFA\u8BAE"},"1002":{code:"1002",text:"\u6587\u4EF6\u8BFB\u53D6\u6216\u5199\u5165\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u6587\u4EF6\u6216\u76EE\u5F55\u6743\u9650\u3002",comment:"\u672C\u5730\u78C1\u76D8\u8BFB\u5199\u5F02\u5E38"},"2001":{code:"2001",text:"\u8BF7\u5148\u8FD0\u884C npx lumimaker login \u5B8C\u6210\u8D26\u53F7\u6388\u6743\u3002",comment:"\u5C1A\u672A\u767B\u5F55\u6216\u767B\u5F55\u6001\u5DF2\u88AB\u670D\u52A1\u7AEF\u540A\u9500"},"2002":{code:"2002",text:"\u767B\u5F55\u6388\u6743\u6D41\u7A0B\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5\u3002",comment:"OAuth \u767B\u5F55\u672A\u6210\u529F\u5B8C\u6210"},"2003":{code:"2003",text:"\u767B\u5F55\u51ED\u8BC1\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55\u3002",comment:"\u7528\u6237 refresh_token \u8D85\u8FC7\u6709\u6548\u671F"},"2004":{code:"2004",text:"\u6388\u6743\u8F6E\u8BE2\u8D85\u65F6\uFF0C\u8BF7\u91CD\u65B0\u53D1\u8D77\u767B\u5F55\u3002",comment:"\u6253\u5F00\u6D4F\u89C8\u5668\u8D85\u8FC7 5 \u5206\u949F\u672A\u5B8C\u6210\u767B\u5F55"},"8000":{code:"8000",text:"\u5E73\u53F0\u670D\u52A1\u7EF4\u62A4\u4E2D\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",comment:"\u670D\u52A1\u7AEF\u7EF4\u62A4\u505C\u673A"},"8001":{code:"8001",text:"\u8BF7\u6C42\u7F3A\u5C11\u5FC5\u8981\u53C2\u6570\uFF0C\u8BF7\u68C0\u67E5\u8F93\u5165\u3002",comment:"\u670D\u52A1\u7AEF\u7F3A\u5C11\u5FC5\u4F20\u5B57\u6BB5"},"8002":{code:"8002",text:"\u8BF7\u6C42\u53C2\u6570\u4E0D\u5408\u6CD5\uFF0C\u8BF7\u68C0\u67E5\u4F20\u5165\u7684\u503C\u3002",comment:"\u670D\u52A1\u7AEF\u53C2\u6570\u6821\u9A8C\u672A\u901A\u8FC7"},"8004":{code:"8004",text:"\u5F53\u524D\u64CD\u4F5C\u9700\u8981\u5BF9\u5E94\u4F5C\u8005\u6216\u7B7E\u7EA6\u89D2\u8272\u6743\u9650\uFF0C\u8BF7\u786E\u8BA4\u8D26\u53F7\u6743\u9650\u540E\u91CD\u8BD5\u3002",comment:"\u8D26\u53F7\u89D2\u8272\u6743\u9650\u4E0D\u8DB3\uFF08\u5982\u672A\u7B7E\u7EA6\uFF09"},"8005":{code:"8005",text:"\u5E73\u53F0\u670D\u52A1\u51FA\u73B0\u5185\u90E8\u9519\u8BEF\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",comment:"\u670D\u52A1\u7AEF\u7CFB\u7EDF\u5185\u90E8\u5F02\u5E38"},"8006":{code:"8006",text:"\u4F1A\u8BDD\u521B\u5EFA\u5931\u8D25\uFF0C\u8BF7\u5C1D\u8BD5\u91CD\u65B0\u767B\u5F55\u3002",comment:"\u6362\u53D6 session \u5931\u8D25"},"8007":{code:"8007",text:"\u767B\u5F55\u4F1A\u8BDD\u5DF2\u5931\u6548\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55\u3002",comment:"\u5F53\u524D session \u65E0\u6548"},"8400":{code:"8400",text:"\u670D\u52A1\u5668\u6846\u67B6\u9519\u8BEF\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",comment:"\u7F51\u5173\u6216\u5E95\u5C42\u6846\u67B6\u9519\u8BEF"},"8999":{code:"8999",text:"\u670D\u52A1\u5668\u8FD4\u56DE\u672A\u77E5\u4E1A\u52A1\u9519\u8BEF\u3002",comment:"\u672A\u5F52\u7C7B\u7684\u4E1A\u52A1\u9519\u8BEF"},"9000":{code:"9000",text:"\u7F51\u7EDC\u65E0\u6CD5\u8FDE\u63A5\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u8BBE\u7F6E\u6216\u4EE3\u7406\u3002",comment:"\u672C\u5730\u65E0\u6CD5\u8FDE\u901A\u670D\u52A1\u5668"},"9001":{code:"9001",text:"\u7F51\u7EDC\u8BF7\u6C42\u8D85\u65F6\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u72B6\u51B5\u540E\u91CD\u8BD5\u3002",comment:"\u7F51\u7EDC\u8FDE\u63A5\u6216\u8BFB\u53D6\u8D85\u65F6"},"9002":{code:"9002",text:"\u670D\u52A1\u5668\u8FD4\u56DE\u5F02\u5E38\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",comment:"HTTP 4xx/5xx \u72B6\u6001\u54CD\u5E94"},"9003":{code:"9003",text:"\u8FD9\u6B21\u64CD\u4F5C\u6CA1\u80FD\u5B8C\u6210\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\uFF1B\u82E5\u63D0\u793A\u7248\u672C\u540D\u5DF2\u5B58\u5728\uFF0C\u8BF7\u6539 package.json \u7684 version \u540E\u518D\u53D1\u3002\u6301\u7EED\u51FA\u73B0\u8BF7\u8054\u7CFB\u5BA2\u670D\u3002",comment:"Lumi \u4E1A\u52A1\u5931\u8D25\u3001\u9650\u9891\u6216\u54CD\u5E94\u65E0\u6CD5\u89E3\u6790\u65F6\u7684\u515C\u5E95 hint\uFF1B\u7248\u672C\u540D\u51B2\u7A81\u65F6\u670D\u52A1\u7AEF\u539F\u6587\u4F1A\u6620\u5C04\u4E3A\u66F4\u660E\u786E\u7684\u6587\u6848"},"9999":{code:"9999",text:"\u670D\u52A1\u5668\u8FD4\u56DE\u5185\u5BB9\u4E3A\u7A7A\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",comment:"\u4E0A\u6E38\u672A\u8FD4\u56DE\u6709\u6548\u6570\u636E"}},skill:{card_title:{code:"",text:"\u5DF2\u628A AI \u8BF4\u660E\u540C\u6B65\u5230\u7F16\u8F91\u5668",comment:"lumimaker skill \u6210\u529F\u5361\u7247\u6807\u9898"},label_kit:{code:"",text:"\u6E90",comment:"kit \u8DEF\u5F84"},label_copied:{code:"",text:"\u62F7\u8D1D",comment:"\u5DF2\u62F7\u8D1D\u7684 skill \u540D"},label_targets:{code:"",text:"\u76EE\u5F55",comment:"\u5B89\u88C5\u76EE\u6807\u76F8\u5BF9\u8DEF\u5F84"}},common:{success_default:{code:"",text:"\u64CD\u4F5C\u6267\u884C\u6210\u529F\u3002",comment:"\u547D\u4EE4\u6267\u884C\u6210\u529F\u9ED8\u8BA4\u8BF4\u660E"},page_info_pattern:{code:"",text:"\u7B2C {page} \u9875\uFF0C\u672C\u9875 {count} \u6761\uFF0C\u5171 {total} \u6761",comment:"\u5217\u8868\u5E95\u90E8\u5206\u9875\u8BF4\u660E\u6A21\u677F"},login_required_confirm:{code:"2001",text:"\u5F53\u524D\u672A\u767B\u5F55\u5E73\u53F0\uFF0C\u662F\u5426\u73B0\u5728\u6253\u5F00\u6D4F\u89C8\u5668\u5B8C\u6210\u6388\u6743\uFF1F",comment:"\u4EFB\u610F\u547D\u4EE4\u9047\u5230\u672A\u767B\u5F55\u65F6\u7684\u786E\u8BA4\u63D0\u95EE"},login_cancelled:{code:"2001",text:"\u5DF2\u53D6\u6D88\u767B\u5F55\uFF0C\u65E0\u6CD5\u7EE7\u7EED\u5F53\u524D\u64CD\u4F5C\u3002",comment:"\u7528\u6237\u62D2\u7EDD\u767B\u5F55\u5F15\u5BFC\u540E\u7684\u63D0\u793A"},login_retrying:{code:"",text:"\u767B\u5F55\u6210\u529F\uFF0C\u6B63\u5728\u7EE7\u7EED\u521A\u624D\u7684\u64CD\u4F5C\u2026",comment:"\u767B\u5F55\u5B8C\u6210\u540E\u81EA\u52A8\u91CD\u8BD5\u539F\u547D\u4EE4"},login_failed:{code:"2002",text:"\u767B\u5F55\u672A\u5B8C\u6210\uFF0C\u65E0\u6CD5\u7EE7\u7EED\u5F53\u524D\u64CD\u4F5C\u3002",comment:"\u5F15\u5BFC\u767B\u5F55\u5931\u8D25\u540E\u7684\u63D0\u793A"}}};var $t={_comment:"kit \u7528\u6237\u53EF\u89C1\u6587\u6848\uFF08\u5E2E\u52A9\u3001\u4EA4\u4E92\u3001\u6821\u9A8C\u3001\u901A\u7528\u6807\u7B7E\uFF09\u3002\u5360\u4F4D\u7B26 {name}\u3002\u4E0E cli-messages.json \u4E00\u5E76\u52A0\u8F7D\u3002",help:{tagline:{code:"",text:"\u5E7B\u5149\u6587\u6E38\u5236\u4F5C\u5668",comment:"lumimaker --help \u6807\u9898\uFF1B\u53F3\u4FA7\u62FC\u63A5\u539F\u751F\u7248\u672C Vxxxx"},usage_heading:{code:"",text:"\u7528\u6CD5:",comment:"\u5E2E\u52A9\u5206\u6BB5"},usage_line:{code:"",text:"lumimaker <command> [options]",comment:"\u7528\u6CD5\u793A\u4F8B"},section_publish:{code:"",text:"\u53D1\u5E03\u4E0E\u9274\u6743:",comment:"\u5E2E\u52A9\u5206\u6BB5"},section_shelf:{code:"",text:"\u5E16\u5B50\u7BA1\u7406:",comment:"\u5E2E\u52A9\u5206\u6BB5"},section_check:{code:"",text:"\u89C4\u8303\u6821\u9A8C:",comment:"\u5E2E\u52A9\u5206\u6BB5"},section_global:{code:"",text:"\u5168\u5C40\u9009\u9879:",comment:"\u5E2E\u52A9\u5206\u6BB5"},cmd_publish:{code:"",text:"\u53D1\u5E03\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF1A\u4E0A\u4F20 dist/",comment:"publish"},cmd_publish_demo:{code:"",text:"\u53D1\u5E03 demo \u7248\u4F5C\u54C1\uFF08demo\uFF09\uFF1B\u53EF\u4EE5\u8FD8\u6CA1\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF1B\u4E4B\u540E\u53D1\u6B63\u5F0F\u7248\u4F1A\u81EA\u52A8\u8FDE\u4E0A",comment:"publish --demo"},cmd_publish_template:{code:"",text:"\u53D1\u5E03\u6A21\u677F\u3002\u9996\u53D1\u987B\u6709 assets/ \u5E76\u81EA\u52A8\u4E0A\u4F20\u6570\u636E\u5305\uFF1B\u7EED\u53D1\u8BE5\u6570\u636E\u5305\u7248\u672C\u8FD8\u6CA1\u6709\u5305\u65F6\u4E5F\u4F1A\u81EA\u52A8\u4F20\uFF1B\u518D\u4F20\u4E00\u5305\u7528 --with-assets",comment:"publish-template"},cmd_publish_template_data:{code:"",text:"\u53EA\u53D1\u6570\u636E\u5305\uFF0C\u4E0D\u53D1\u65B0\u6A21\u677F\u7248\u672C\u3002\u7248\u672C\u548C\u8BF4\u660E\u8BFB package.json\uFF0C\u6587\u4EF6\u653E\u5728 assets/",comment:"publish-template-data"},cmd_publish_project:{code:"",text:"\u53D1\u5E03\u5F00\u6E90\u5DE5\u7A0B\uFF1B\u65E0 project.json \u65F6\u540C\u65F6\u5EFA\u5DE5\u7A0B",comment:"publish-project"},cmd_login:{code:"",text:"\u767B\u5F55\uFF08\u5DF2\u6709\u6709\u6548\u767B\u5F55\u5219\u8DF3\u8FC7\uFF1B--force \u5F3A\u5236\u91CD\u65B0\u6388\u6743\uFF09",comment:"login"},cmd_logout:{code:"",text:"\u9000\u51FA\u767B\u5F55\uFF0C\u6E05\u9664\u672C\u5730\u51ED\u8BC1",comment:"logout"},cmd_whoami:{code:"",text:"\u67E5\u770B\u5F53\u524D\u767B\u5F55\u72B6\u6001\u4E0E\u8D26\u53F7\u4FE1\u606F",comment:"whoami"},cmd_games_update:{code:"",text:"\u4FEE\u6539\u4F5C\u54C1\u5E16\u5B50",comment:"games update"},cmd_templates_update:{code:"",text:"\u4FEE\u6539\u6A21\u677F\u5E16\u5B50\u540D\u79F0",comment:"templates update"},cmd_projects_update:{code:"",text:"\u4FEE\u6539\u5F00\u6E90\u5DE5\u7A0B\u5E16\u5B50",comment:"projects update"},cmd_validate_template:{code:"",text:"\u9A8C\u8BC1\u5F53\u524D\u5DE5\u7A0B\u662F\u5426\u7B26\u5408\u6A21\u677F\u89C4\u8303",comment:"validate-template"},cmd_validate:{code:"",text:"\u8F6C\u8C03 npm run validate\uFF08\u6A21\u677F\u5FC5\u987B\u63D0\u4F9B\uFF1B\u6709\u8BD5\u73A9\u6570\u636E\u65F6\u540C\u4E00\u6761\u68C0\u67E5\u4E24\u4EFD\uFF09",comment:"validate"},cmd_skill:{code:"",text:"\u5B89\u88C5 AI \u8BF4\u660E\u5230\u7F16\u8F91\u5668\uFF1A--platform cursor \u6216 --all",comment:"skill"},opt_json:{code:"",text:"\u811A\u672C\u8981\u673A\u5668\u53EF\u8BFB JSON \u65F6\u4F7F\u7528\uFF1B\u4EBA\u5728\u7EC8\u7AEF\u548C\u7F16\u8F91\u5668\u91CC\u4E0D\u5FC5\u52A0\uFF0C\u6210\u529F\u7ED3\u679C\u5DF2\u662F\u4E2D\u6587",comment:"--json"},opt_verbose:{code:"",text:"\u8F93\u51FA\u8C03\u8BD5\u65E5\u5FD7",comment:"--verbose"},opt_no_interactive:{code:"",text:"\u7981\u7528\u4EA4\u4E92\u5F0F\u5F15\u5BFC\uFF0C\u7F3A\u53C2\u65F6\u76F4\u63A5\u62A5\u9519",comment:"--no-interactive"},opt_yes:{code:"",text:"\u53D1\u5E03\u4F5C\u54C1\u65F6\u8DF3\u8FC7\u53D1\u5E03\u524D\u786E\u8BA4\uFF08\u811A\u672C / \u5DF2\u4EBA\u5DE5\u786E\u8BA4\uFF09",comment:"--yes"},opt_agent:{code:"",text:"\u5F3A\u5236\u6309 AI \u52A9\u624B\u534F\u8BAE\uFF08\u7F3A\u53C2\u5148\u95EE\u4EBA\uFF09\u3002\u9ED8\u8BA4\u53EF\u7701\u7565\uFF1A\u4EBA\u5728\u7EC8\u7AEF\u8D70\u4EA4\u4E92\uFF0C\u7F16\u8F91\u5668\u91CC\u975E TTY \u4F1A\u81EA\u52A8\u5F00\u542F",comment:"--agent"},opt_apply_update:{code:"",text:"\u628A\u5F53\u524D\u5DE5\u7A0B\u7684 lumimaker \u76F8\u5173\u5305\u5347\u5230\u5DF2\u68C0\u6D4B\u5230\u7684\u6700\u65B0\u7248",comment:"--apply-update"},opt_skip_update:{code:"",text:"\u672C\u6B21\u8DF3\u8FC7 npm \u66F4\u65B0\u63D0\u793A\uFF08\u540C\u4E00 latest 24 \u5C0F\u65F6\u5185\u4E0D\u518D\u6253\u65AD\uFF09",comment:"--skip-update"},opt_help:{code:"",text:"\u67E5\u770B\u5E2E\u52A9",comment:"--help"},contact:{code:"",text:"\u9700\u8981\u8054\u7CFB\u5BA2\u670D{contact}",comment:"\u5E2E\u52A9\u9875\u5E95\u90E8\uFF1A\u65E0\u72EC\u7ACB\u8054\u7CFB\u6E20\u9053\u9875\uFF0C\u5F15\u5BFC\u8054\u7CFB\u5BA2\u670D"}},prompt:{cancel:{code:"",text:"\u5DF2\u53D6\u6D88\u64CD\u4F5C\u3002",comment:"Ctrl+C \u53D6\u6D88\u4EA4\u4E92"},intro:{code:"",text:"lumimaker",comment:"\u4E3B\u83DC\u5355\u6807\u9898"},main_message:{code:"",text:"\u8BF7\u9009\u62E9\u8981\u6267\u884C\u7684\u64CD\u4F5C\uFF1A",comment:"\u4E3B\u83DC\u5355\u63D0\u95EE"},main_publish_label:{code:"",text:"\u53D1\u5E03\u4F5C\u54C1 (publish)",comment:"\u4E3B\u83DC\u5355"},main_publish_hint:{code:"",text:"\u4E0A\u4F20 dist/ \u5230\u5E73\u53F0\uFF08\u6B63\u5F0F\u7248\u4F5C\u54C1\u6216 demo\uFF09",comment:"\u4E3B\u83DC\u5355"},main_publish_template_label:{code:"",text:"\u53D1\u5E03\u6A21\u677F (publish-template)",comment:"\u4E3B\u83DC\u5355"},main_publish_template_hint:{code:"",text:"\u4E0A\u4F20\u6A21\u677F\u7248\u672C",comment:"\u4E3B\u83DC\u5355"},main_publish_template_data_label:{code:"",text:"\u53EA\u53D1\u6570\u636E\u5305 (publish-template-data)",comment:"\u4E3B\u83DC\u5355"},main_publish_template_data_hint:{code:"",text:"\u4E0D\u53D1\u65B0\u6A21\u677F\u7248\u672C\uFF1B\u5F00\u5DE5\u7A0B\u9ED8\u8BA4\u4E0B\u7248\u672C\u7ED1\u5B9A\u5305\uFF0C\u6307\u5B9A\u8FD9\u4EFD\u7528 --with-assets",comment:"\u4E3B\u83DC\u5355"},main_publish_project_label:{code:"",text:"\u53D1\u5E03\u5F00\u6E90\u5DE5\u7A0B (publish-project)",comment:"\u4E3B\u83DC\u5355"},main_publish_project_hint:{code:"",text:"\u6253\u5305\u4E0A\u4F20\u6E90\u7801\u5DE5\u7A0B",comment:"\u4E3B\u83DC\u5355"},main_games_label:{code:"",text:"\u4F5C\u54C1\u5E16\u5B50\u7BA1\u7406 (games)",comment:"\u4E3B\u83DC\u5355"},main_games_hint:{code:"",text:"\u6539\u4F5C\u54C1\u5E16\u5B50\u540D\u79F0\u6216\u4E0A\u4E0B\u67B6",comment:"\u4E3B\u83DC\u5355"},main_templates_label:{code:"",text:"\u6A21\u677F\u5E16\u5B50\u7BA1\u7406 (templates)",comment:"\u4E3B\u83DC\u5355"},main_templates_hint:{code:"",text:"\u6539\u6A21\u677F\u5E16\u5B50\u540D\u79F0\u6216\u4E0A\u4E0B\u67B6",comment:"\u4E3B\u83DC\u5355"},main_projects_label:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u5E16\u5B50\u7BA1\u7406 (projects)",comment:"\u4E3B\u83DC\u5355"},main_projects_hint:{code:"",text:"\u6539\u5F00\u6E90\u5DE5\u7A0B\u5E16\u5B50\u540D\u79F0\u6216\u4E0A\u4E0B\u67B6",comment:"\u4E3B\u83DC\u5355"},main_login_label:{code:"",text:"\u8D26\u53F7\u767B\u5F55 (login)",comment:"\u4E3B\u83DC\u5355"},main_login_hint:{code:"",text:"\u5DF2\u767B\u5F55\u5219\u8DF3\u8FC7\uFF1B--force \u5F3A\u5236\u91CD\u767B",comment:"\u4E3B\u83DC\u5355"},main_whoami_label:{code:"",text:"\u67E5\u770B\u5F53\u524D\u8D26\u53F7 (whoami)",comment:"\u4E3B\u83DC\u5355"},main_whoami_hint:{code:"",text:"\u68C0\u67E5\u5F53\u524D\u767B\u5F55\u72B6\u6001",comment:"\u4E3B\u83DC\u5355"},main_validate_template_label:{code:"",text:"\u6821\u9A8C\u6A21\u677F\u89C4\u8303 (validate-template)",comment:"\u4E3B\u83DC\u5355"},main_validate_template_hint:{code:"",text:"\u68C0\u67E5\u672C\u5730\u76EE\u5F55\u4E0E\u6587\u4EF6",comment:"\u4E3B\u83DC\u5355"},main_skill_label:{code:"",text:"\u5B89\u88C5 AI \u8BF4\u660E\u5230\u7F16\u8F91\u5668 (skill)",comment:"\u4E3B\u83DC\u5355"},main_skill_hint:{code:"",text:"--platform cursor \u6216 --all",comment:"\u4E3B\u83DC\u5355"},main_logout_label:{code:"",text:"\u9000\u51FA\u767B\u5F55 (logout)",comment:"\u4E3B\u83DC\u5355"},main_logout_hint:{code:"",text:"\u6E05\u9664\u672C\u5730\u51ED\u636E",comment:"\u4E3B\u83DC\u5355"},version_empty:{code:"",text:"\u7248\u672C\u53F7\u4E0D\u80FD\u4E3A\u7A7A",comment:"\u6821\u9A8C"},version_invalid:{code:"",text:"\u987B 1\u201316 \u4F4D\uFF0C\u4EC5\u5C0F\u5199\u5B57\u6BCD\u3001\u6570\u5B57\u3001`.` \u548C `-`\uFF1B\u5FC5\u987B\u4EE5\u5B57\u6BCD\u6216\u6570\u5B57\u5F00\u5934\u548C\u7ED3\u5C3E\uFF0C\u4E14\u4E0D\u80FD\u8FDE\u7EED\u4F7F\u7528\u7B26\u53F7\u3002\u793A\u4F8B\uFF1A1.0.0",comment:"publish-template \u6821\u9A8C"},version_invalid_log:{code:"",text:"\u6A21\u677F\u7248\u672C\u53F7\u683C\u5F0F\u65E0\u6548\uFF08{version}\uFF09",comment:"publish-template \u6821\u9A8C"},version_invalid_hint:{code:"",text:"\u987B 1\u201316 \u4F4D\uFF0C\u4EC5\u5C0F\u5199\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u82F1\u6587\u70B9 . \u548C\u77ED\u6A2A\u7EBF -\uFF1B\u5FC5\u987B\u4EE5\u5B57\u6BCD\u6216\u6570\u5B57\u5F00\u5934\u548C\u7ED3\u5C3E\uFF1B\u4E0D\u80FD\u51FA\u73B0\u8FDE\u7EED\u7684 . \u6216 -\u3002\u793A\u4F8B\uFF1A1.0.0\u30010.1.0\u30011.0.0-a",comment:"publish-template \u6821\u9A8C"},publish_version:{code:"",text:"\u8BF7\u8F93\u5165\u8FD9\u6B21\u53D1\u5E03\u7684\u7248\u672C\u53F7\uFF1A",comment:"publish"},publish_name:{code:"",text:"\u8BF7\u8F93\u5165\u4F5C\u54C1\u5C55\u793A\u540D\u79F0\uFF1A",comment:"publish"},publish_variant:{code:"",text:"\u8FD9\u6B21\u53D1\u6B63\u5F0F\u7248\u4F5C\u54C1\u8FD8\u662F demo \u7248\u4F5C\u54C1\uFF08demo\uFF09\uFF1F",comment:"publish"},publish_have_none:{code:"",text:"\u8FD8\u6CA1\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF0C\u4E5F\u8FD8\u6CA1\u6709 demo\u3002",comment:"publish \u53D8\u4F53\u8BE2\u95EE"},publish_have_official:{code:"",text:"\u5DF2\u7ECF\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF08\u6B63\u5F0F\u7248\u4F5C\u54C1ID {id}\uFF09\u3002",comment:"publish \u53D8\u4F53\u8BE2\u95EE"},publish_have_demo:{code:"",text:"\u5DF2\u7ECF\u6709 demo \u7248\u4F5C\u54C1\uFF08\u8BD5\u73A9ID {id}\uFF09\u3002",comment:"publish \u53D8\u4F53\u8BE2\u95EE"},publish_have_both:{code:"",text:"\u5DF2\u7ECF\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF08\u6B63\u5F0F\u7248\u4F5C\u54C1ID {official}\uFF09\u548C demo \u7248\u4F5C\u54C1\uFF08\u8BD5\u73A9ID {demo}\uFF09\u3002",comment:"publish \u53D8\u4F53\u8BE2\u95EE"},publish_official_label:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"publish"},publish_official_hint:{code:"",text:"\u9762\u5411\u73A9\u5BB6\u7684\u4E3B\u7248\u672C",comment:"publish"},publish_demo_label:{code:"",text:"demo\u7248\u4F5C\u54C1\uFF08demo\uFF09",comment:"publish"},publish_demo_hint:{code:"",text:"\u5355\u72EC\u7684 demo\uFF0C\u53EF\u4EE5\u8FD8\u6CA1\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"publish"},publish_parent:{code:"",text:"\u5982\u679C\u5DF2\u7ECF\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF0C\u586B\u6B63\u5F0F\u7248\u4F5C\u54C1ID\uFF08\u6CA1\u6709\u5C31\u56DE\u8F66\uFF0C\u5148\u53D1 demo\uFF09\uFF1A",comment:"publish"},publish_parent_placeholder:{code:"",text:"\u7559\u7A7A\u5219\u5148\u53D1 demo",comment:"publish"},publish_changelog:{code:"",text:"\u8BF7\u8F93\u5165\u7248\u672C\u66F4\u65B0\u8BF4\u660E\uFF08changelog\uFF0C\u53EF\u9009\u76F4\u63A5\u56DE\u8F66\uFF09\uFF1A",comment:"publish"},publish_changelog_placeholder:{code:"",text:"\u4FEE\u590D\u4E86\u4E00\u4E9B\u5DF2\u77E5\u95EE\u9898",comment:"publish"},publish_demo_scope:{code:"",text:"\u8BD5\u73A9\u8303\u56F4\u8BF4\u660E\uFF08\u4EC5\u65B0\u5EFA\u4F5C\u54C1\u65F6\u6709\u6548\uFF0C\u53EF\u9009\u76F4\u63A5\u56DE\u8F66\uFF09\uFF1A",comment:"publish"},publish_play_duration:{code:"",text:"\u9884\u8BA1\u6E38\u73A9\u65F6\u957F\uFF08\u4EC5\u65B0\u5EFA\u4F5C\u54C1\u65F6\u6709\u6548\uFF0C\u53EF\u9009\u76F4\u63A5\u56DE\u8F66\uFF09\uFF1A",comment:"publish"},publish_confirm:{code:"",text:"\u5373\u5C06\u53D1\u5E03\u4F5C\u54C1\uFF0C\u8BF7\u786E\u8BA4\u4EE5\u4E0B\u4FE1\u606F\uFF1A",comment:"publish"},publish_confirm_name:{code:"",text:"\u540D\u79F0\uFF1A{name}",comment:"publish"},publish_confirm_version:{code:"",text:"\u7248\u672C\uFF1A{version}",comment:"publish"},publish_confirm_variant:{code:"",text:"\u7C7B\u578B\uFF1A{variant}",comment:"publish"},publish_confirm_official:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"publish"},publish_confirm_demo:{code:"",text:"demo\u7248\u4F5C\u54C1\uFF08demo\uFF09",comment:"publish"},publish_confirm_parent:{code:"",text:"\u6302\u63A5\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF1A{id}",comment:"publish"},publish_confirm_changelog:{code:"",text:"\u66F4\u65B0\u8BF4\u660E\uFF1A{text}",comment:"publish"},publish_confirm_none:{code:"",text:"\u65E0",comment:"publish"},publish_confirm_unnamed:{code:"",text:"\u672A\u586B\u5199",comment:"publish"},tpl_version:{code:"",text:"\u8BF7\u8F93\u5165\u6A21\u677F\u7248\u672C\u53F7\uFF081\u201316 \u4F4D\uFF0C\u5C0F\u5199\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u70B9\u3001\u77ED\u6A2A\u7EBF\uFF09\uFF1A",comment:"publish-template"},tpl_slug:{code:"",text:"package.json \u8FD8\u6CA1\u6709\u82F1\u6587\u77ED\u540D\u3002\u8BF7\u586B\u5199 slug\uFF08\u53D1\u5E03\u540E\u4E0D\u80FD\u518D\u6539\uFF09\uFF1A",comment:"publish-template\uFF1B\u7F3A slug \u65F6\u5148\u95EE\uFF0C\u5199\u56DE\u540E\u518D\u8BF7\u6C42\u521B\u5EFA\u63A5\u53E3"},tpl_slug_placeholder:{code:"",text:"\u4F8B\u5982 forest-adventure",comment:"publish-template"},tpl_slug_empty:{code:"",text:"\u82F1\u6587\u77ED\u540D\u4E0D\u80FD\u4E3A\u7A7A",comment:"publish-template"},tpl_slug_invalid:{code:"",text:"\u53EA\u80FD\u7528\u5C0F\u5199\u5B57\u6BCD\u3001\u6570\u5B57\u548C\u4E2D\u5212\u7EBF\uFF0C\u4EE5\u5B57\u6BCD\u6216\u6570\u5B57\u5F00\u5934\uFF0C\u6700\u957F 63 \u4F4D",comment:"publish-template"},tpl_slug_write_failed:{code:"",text:'\u5199\u4E0D\u56DE package.json\u3002\u8BF7\u624B\u52A8\u52A0\u4E0A "slug" \u540E\u518D\u53D1\u5E03',comment:"publish-template"},tpl_name:{code:"",text:"\u8BF7\u8F93\u5165\u6A21\u677F\u5728\u5E73\u53F0\u4E0A\u663E\u793A\u7684\u540D\u79F0\uFF08\u4E0D\u80FD\u542B / \u6216 @\uFF09\uFF1A",comment:"publish-template"},tpl_name_placeholder:{code:"",text:"\u4F8B\u5982 \u95EE\u7B54",comment:"publish-template"},tpl_name_empty:{code:"",text:"\u6A21\u677F\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A",comment:"publish-template"},tpl_name_invalid:{code:"",text:"\u6A21\u677F\u540D\u79F0\u4E0D\u80FD\u5305\u542B / \u6216 @",comment:"publish-template"},tpl_name_invalid_log:{code:"",text:"\u6A21\u677F\u540D\u79F0\u4E0D\u5408\u6CD5\uFF1A{name}\uFF08\u4E0D\u80FD\u542B / \u6216 @\uFF09",comment:"publish-template"},tpl_changelog:{code:"",text:"\u8BF7\u8F93\u5165\u7248\u672C\u66F4\u65B0\u8BF4\u660E\uFF08changelog\uFF0C\u53EF\u9009\u76F4\u63A5\u56DE\u8F66\uFF09\uFF1A",comment:"publish-template"},tpl_mode:{code:"",text:"\u672C\u5730\u5C1A\u65E0 origin.json \u8EAB\u4EFD\uFF0C\u8BF7\u9009\u62E9\u53D1\u5E03\u65B9\u5F0F\uFF1A",comment:"publish-template"},tpl_publish_label:{code:"",text:"\u53D1\u5E03\u9996\u7248\uFF08\u81EA\u52A8\u5E26\u6570\u636E\u5305\uFF09",comment:"publish-template"},tpl_publish_hint:{code:"",text:"\u65B0\u5EFA\u6A21\u677F\uFF1A\u4E0A\u4F20\u6A21\u677F\uFF0C\u5E76\u628A\u5DE5\u7A0B assets/ \u505A\u6210\u6570\u636E\u5305",comment:"publish-template"},tpl_fork_label:{code:"",text:"Fork \u73B0\u6709\u6A21\u677F (--fork)",comment:"publish-template"},tpl_fork_hint:{code:"",text:"\u57FA\u4E8E\u6E90\u6A21\u677F\u7248\u672C\u884D\u751F",comment:"publish-template"},tpl_fork_id:{code:"",text:"\u8BF7\u8F93\u5165 Fork \u6E90\u6A21\u677F\u7248\u672C ID\uFF1A",comment:"publish-template"},tpl_fork_placeholder:{code:"",text:"\u4F8B\u5982 4p7dlg00utc0",comment:"publish-template"},tpl_fork_empty:{code:"",text:"Fork \u5FC5\u987B\u63D0\u4F9B\u6E90\u6A21\u677F\u7248\u672C ID",comment:"publish-template"},tpl_data_id:{code:"",text:"\u8981\u6362\u7ED1\u5DF2\u6709\u6570\u636E\u5305\u7684\u8BDD\uFF0C\u8F93\u5165\u6570\u636E\u5305 ID\uFF08\u56DE\u8F66\u8DF3\u8FC7\uFF09\uFF1A",comment:"publish-template --fork \u53EF\u9009 --data-id"},data_ver_reuse:{code:"",text:"\u6570\u636E\u5305\u7248\u672C\u6CBF\u7528\u4E0A\u6B21\u7684 {ver}\uFF1F",comment:"data-ver"},data_ver_new:{code:"",text:"\u8BF7\u8F93\u5165\u65B0\u7684\u6570\u636E\u5305\u7248\u672C\u53F7\uFF1A",comment:"data-ver"},data_ver_ask:{code:"",text:"\u8BF7\u8F93\u5165\u6570\u636E\u5305\u7248\u672C\u53F7\uFF08\u4E0D\u4F1A\u81EA\u52A8\u52A0 1\uFF09\uFF1A",comment:"data-ver"},data_ver_placeholder_last:{code:"",text:"\u4E0A\u6B21 {ver}",comment:"data-ver"},data_ver_placeholder:{code:"",text:"\u4F8B\u5982 1",comment:"data-ver"},data_ver_empty:{code:"",text:"\u6570\u636E\u5305\u7248\u672C\u4E0D\u80FD\u4E3A\u7A7A\uFF0C\u7A0B\u5E8F\u4E0D\u4F1A\u81EA\u52A8\u9012\u589E",comment:"data-ver"},data_summary:{code:"",text:"\u8BF7\u8F93\u5165\u8FD9\u4EFD\u6570\u636E\u5305\u7684\u8BF4\u660E\uFF08\u56DE\u8F66\u8DF3\u8FC7\uFF09\uFF1A",comment:"data-summary"},data_summary_placeholder:{code:"",text:"\u540C\u4E00\u6570\u636E\u5305\u7248\u672C\u4E0B\u7528\u6765\u533A\u5206\u672C\u5305",comment:"data-summary"},data_assets:{code:"",text:"\u8BF7\u628A\u6570\u636E\u5305\u6587\u4EF6\u653E\u5230\u5DE5\u7A0B\u7684 assets \u6587\u4EF6\u5939\u3002\u5DF2\u7ECF\u653E\u597D\u4E86\u5417\uFF1F",comment:"publish-template / publish-template-data"},data_assets_placeholder:{code:"",text:"\u7EDD\u5BF9\u8DEF\u5F84\uFF0C\u4F8B\u5982 C:\\path\\to\\assets",comment:"publish-template / publish-template-data --assets"},data_assets_not_absolute:{code:"",text:"--assets \u5FC5\u987B\u662F\u7EDD\u5BF9\u8DEF\u5F84",comment:"publish-template / publish-template-data --assets"},data_assets_not_dir:{code:"",text:"\u8BE5\u8DEF\u5F84\u4E0D\u662F\u6709\u6548\u76EE\u5F55",comment:"publish-template / publish-template-data --assets"},proj_version:{code:"",text:"\u8BF7\u8F93\u5165\u8FD9\u6B21\u53D1\u5E03\u7684\u7248\u672C\u53F7\uFF1A",comment:"publish-project"},proj_name:{code:"",text:"\u8BF7\u8F93\u5165\u5DE5\u7A0B\u5C55\u793A\u540D\u79F0\uFF1A",comment:"publish-project"},proj_summary:{code:"",text:"\u8BF7\u8F93\u5165\u5DE5\u7A0B\u7B80\u4ECB (\u53EF\u9009)\uFF1A",comment:"publish-project"},proj_summary_placeholder:{code:"",text:"\u57FA\u4E8E\u5E7B\u5149\u5F00\u53D1\u7684\u4F5C\u54C1/\u6A21\u677F\u5DE5\u7A0B",comment:"publish-project"},proj_cover:{code:"",text:"\u8BF7\u8F93\u5165\u5C01\u9762\u56FE\u8DEF\u5F84 (\u53EF\u9009\uFF0C\u76F4\u63A5\u56DE\u8F66\u8DF3\u8FC7)\uFF1A",comment:"publish-project"},proj_changelog:{code:"",text:"\u8BF7\u8F93\u5165\u7248\u672C\u66F4\u65B0\u8BF4\u660E (\u53EF\u9009)\uFF1A",comment:"publish-project"},id_empty:{code:"",text:"ID \u4E0D\u80FD\u4E3A\u7A7A",comment:"\u6821\u9A8C"},name_empty:{code:"",text:"\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A",comment:"\u6821\u9A8C"},games_action:{code:"",text:"\u8BF7\u9009\u62E9\u4F5C\u54C1\u5E16\u5B50\u64CD\u4F5C\uFF1A",comment:"games"},games_list_label:{code:"",text:"\u5217\u51FA\u6211\u7684\u4F5C\u54C1\u5217\u8868",comment:"games"},games_list_hint:{code:"",text:"\u6309\u9875\u62C9\u53D6\u5E73\u53F0\u4F5C\u54C1",comment:"games"},games_query_label:{code:"",text:"\u67E5\u8BE2\u6307\u5B9A\u4F5C\u54C1\u8BE6\u60C5 (--query)",comment:"games"},games_query_hint:{code:"",text:"\u6309\u6B63\u5F0F\u7248\u4F5C\u54C1ID\u6216\u8BD5\u73A9ID\u67E5\u770B",comment:"games"},games_versions_label:{code:"",text:"\u67E5\u770B\u4F5C\u54C1\u5168\u90E8\u53D1\u5E03\u7248\u672C (--versions)",comment:"games"},games_versions_hint:{code:"",text:"\u67E5\u770B\u5DF2\u53D1\u5E03\u7684\u5404\u7248\u672C",comment:"games"},games_update_label:{code:"",text:"\u4FEE\u6539\u4F5C\u54C1\u5E16\u5B50 (update)",comment:"games"},games_update_hint:{code:"",text:"\u6539\u540D\u79F0/\u7B80\u4ECB/\u4E0A\u4E0B\u67B6/\u7248\u672C\u8BF4\u660E",comment:"games"},games_id:{code:"",text:"\u8BF7\u8F93\u5165\u4F5C\u54C1ID\uFF08\u6B63\u5F0F\u7248\u4F5C\u54C1ID\u6216\u8BD5\u73A9ID\uFF09\uFF1A",comment:"games"},games_name:{code:"",text:"\u8BF7\u8F93\u5165\u4F5C\u54C1\u540D\u79F0\uFF1A",comment:"games"},games_name_placeholder:{code:"",text:"\u6211\u7684\u4F5C\u54C1",comment:"games"},games_summary:{code:"",text:"\u8BF7\u8F93\u5165\u4F5C\u54C1\u7B80\u4ECB (\u53EF\u9009)\uFF1A",comment:"games"},games_update_id:{code:"",text:"\u8BF7\u8F93\u5165\u9700\u8981\u4FEE\u6539\u7684\u4F5C\u54C1ID\uFF08\u6B63\u5F0F\u7248\u4F5C\u54C1ID\u6216\u8BD5\u73A9ID\uFF0C--game-id\uFF09\uFF1A",comment:"games"},games_update_name:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u66F4\u65B0\u7684\u4F5C\u54C1\u540D\u79F0 (\u56DE\u8F66\u8DF3\u8FC7)\uFF1A",comment:"games"},games_update_summary:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u66F4\u65B0\u7684\u4F5C\u54C1\u7B80\u4ECB (\u56DE\u8F66\u8DF3\u8FC7)\uFF1A",comment:"games"},games_update_variant:{code:"",text:"\u8981\u6539\u6B63\u5F0F\u7248\u4F5C\u54C1\u8FD8\u662F demo\uFF1F",comment:"games update\uFF0C\u672C\u5730\u540C\u65F6\u6709\u6B63\u5F0F\u4E0E demo"},games_update_official:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"games update"},games_update_demo:{code:"",text:"demo\u7248\u4F5C\u54C1\uFF08demo\uFF09",comment:"games update"},update_status:{code:"",text:"\u4E0A\u4E0B\u67B6\uFF08\u53EF\u9009\uFF0C\u4E0D\u6539\u8BF7\u56DE\u8F66\uFF09\uFF1A",comment:"update"},update_status_skip:{code:"",text:"\u4E0D\u6539\u4E0A\u4E0B\u67B6",comment:"update"},update_status_on:{code:"",text:"\u4E0A\u67B6",comment:"update"},update_status_off:{code:"",text:"\u4E0B\u67B6",comment:"update"},update_changelog:{code:"",text:"\u6539\u5DF2\u6709\u7248\u672C\u7684\u66F4\u65B0\u8BF4\u660E\uFF08\u53EF\u9009\u76F4\u63A5\u56DE\u8F66\uFF09\uFF1A",comment:"update"},update_version_id:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u6539\u8BF4\u660E\u7684\u7248\u672C ID\uFF08--version-id\uFF09\uFF1A",comment:"update"},tpls_action:{code:"",text:"\u8BF7\u9009\u62E9\u6A21\u677F\u5E16\u5B50\u64CD\u4F5C\uFF1A",comment:"templates"},tpls_list_label:{code:"",text:"\u5217\u51FA\u6211\u7684\u6A21\u677F\u5217\u8868",comment:"templates"},tpls_list_hint:{code:"",text:"\u6309\u9875\u67E5\u770B\u5E73\u53F0\u6A21\u677F",comment:"templates"},tpls_query_label:{code:"",text:"\u67E5\u8BE2\u6A21\u677F\u8BE6\u60C5 (--query)",comment:"templates"},tpls_query_hint:{code:"",text:"\u6309\u6A21\u677F ID \u67E5\u770B",comment:"templates"},tpls_versions_label:{code:"",text:"\u67E5\u770B\u6A21\u677F\u7248\u672C\u5217\u8868 (--versions)",comment:"templates"},tpls_versions_hint:{code:"",text:"\u67E5\u770B\u5DF2\u53D1\u7248\u672C",comment:"templates"},tpls_data_label:{code:"",text:"\u67E5\u770B\u6A21\u677F\u6570\u636E\u5305 (--data)",comment:"templates"},tpls_data_hint:{code:"",text:"\u67E5\u770B\u7ED1\u5B9A\u7684 assets \u5305",comment:"templates"},tpls_update_label:{code:"",text:"\u4FEE\u6539\u6A21\u677F\u540D\u79F0 (update)",comment:"templates"},tpls_update_hint:{code:"",text:"\u6539\u540D\u79F0/\u4E0A\u4E0B\u67B6/\u7248\u672C\u8BF4\u660E",comment:"templates"},tpls_id:{code:"",text:"\u8BF7\u8F93\u5165\u6A21\u677F ID\uFF1A",comment:"templates"},tpls_name:{code:"",text:"\u8BF7\u8F93\u5165\u6A21\u677F\u540D\u79F0\uFF1A",comment:"templates"},tpls_name_placeholder:{code:"",text:"\u6211\u7684\u6A21\u677F",comment:"templates"},tpls_update_id:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u4FEE\u6539\u7684\u6A21\u677F ID (--template-id)\uFF1A",comment:"templates"},tpls_update_name:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u66F4\u65B0\u7684\u6A21\u677F\u540D\u79F0 (\u56DE\u8F66\u8DF3\u8FC7)\uFF1A",comment:"templates"},projs_action:{code:"",text:"\u8BF7\u9009\u62E9\u5F00\u6E90\u5DE5\u7A0B\u5E16\u5B50\u64CD\u4F5C\uFF1A",comment:"projects"},projs_list_label:{code:"",text:"\u5217\u51FA\u5F00\u6E90\u5DE5\u7A0B\u5217\u8868",comment:"projects"},projs_list_hint:{code:"",text:"\u6309\u9875\u67E5\u770B",comment:"projects"},projs_query_label:{code:"",text:"\u67E5\u8BE2\u5F00\u6E90\u5DE5\u7A0B\u8BE6\u60C5 (--query)",comment:"projects"},projs_query_hint:{code:"",text:"\u6309\u5DE5\u7A0B ID \u67E5\u770B",comment:"projects"},projs_versions_label:{code:"",text:"\u67E5\u770B\u5DE5\u7A0B\u53D1\u5E03\u7248\u672C (--versions)",comment:"projects"},projs_versions_hint:{code:"",text:"\u67E5\u770B\u7248\u672C\u8BB0\u5F55",comment:"projects"},projs_update_label:{code:"",text:"\u4FEE\u6539\u5DE5\u7A0B\u5E16\u5B50 (update)",comment:"projects"},projs_update_hint:{code:"",text:"\u6539\u540D\u79F0/\u7B80\u4ECB/\u5C01\u9762/\u4E0A\u4E0B\u67B6/\u7248\u672C\u8BF4\u660E",comment:"projects"},projs_id:{code:"",text:"\u8BF7\u8F93\u5165\u5F00\u6E90\u5DE5\u7A0B ID\uFF1A",comment:"projects"},projs_name:{code:"",text:"\u8BF7\u8F93\u5165\u5F00\u6E90\u5DE5\u7A0B\u540D\u79F0\uFF1A",comment:"projects"},projs_update_id:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u4FEE\u6539\u7684\u5F00\u6E90\u5DE5\u7A0B ID (--project-id)\uFF1A",comment:"projects"},projs_update_name:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u66F4\u65B0\u7684\u5DE5\u7A0B\u540D\u79F0 (\u56DE\u8F66\u8DF3\u8FC7)\uFF1A",comment:"projects"},login_mode:{code:"",text:"\u8BF7\u9009\u62E9\u767B\u5F55\u65B9\u5F0F\uFF1A",comment:"login"},login_skip_label:{code:"",text:"\u5DF2\u6709\u6709\u6548\u767B\u5F55\u5219\u8DF3\u8FC7",comment:"login"},login_skip_hint:{code:"",text:"\u63A8\u8350",comment:"login"},login_force_label:{code:"",text:"\u5F3A\u5236\u91CD\u65B0\u767B\u5F55\u5E76\u6253\u5F00\u6D4F\u89C8\u5668\u6388\u6743 (--force)",comment:"login"},login_force_hint:{code:"",text:"\u6362\u53F7\u6216\u5237\u65B0\u51ED\u8BC1",comment:"login"},skill_platform:{code:"",text:"\u8BF7\u9009\u62E9\u8981\u628A AI \u8BF4\u660E\u5B89\u88C5\u5230\u54EA\u4E2A\u7F16\u8F91\u5668\uFF1A",comment:"skill"},skill_platform_detected:{code:"",text:"\u68C0\u6D4B\u5230\u5F53\u524D\u4F7F\u7528\u7684\u7F16\u8F91\u5668\u662F {id}\u3002\u8BF7\u9009\u62E9\u8981\u628A AI \u8BF4\u660E\u5B89\u88C5\u5230\u54EA\u4E2A\u7F16\u8F91\u5668\uFF1A",comment:"skill\uFF0C\u5DF2\u63A2\u6D4B\u5230\u5BBF\u4E3B"},skill_current_suffix:{code:"",text:"\uFF08\u5F53\u524D\uFF09",comment:"skill \u9009\u9879\uFF1A\u63A2\u6D4B\u5230\u7684\u7F16\u8F91\u5668"},skill_all_label:{code:"",text:"\u5168\u90E8\u7F16\u8F91\u5668",comment:"skill"},skill_all_hint:{code:"",text:"--all",comment:"skill"}},kit:{validate_template_ok:{code:"",text:"\u6A21\u677F\u76EE\u5F55\u89C4\u8303\u6821\u9A8C\u901A\u8FC7\uFF01",comment:"validate-template \u6210\u529F"},validate_ok:{code:"",text:"\u5DE5\u7A0B\u6821\u9A8C\u901A\u8FC7\uFF01",comment:"validate \u6210\u529F"},validate_need_script:{code:"",text:"\u5F53\u524D\u5DE5\u7A0B\u6CA1\u6709 scripts.validate\u3002\u6A21\u677F\u89C4\u8303\u8981\u6C42\u5FC5\u987B\u63D0\u4F9B\u8FD9\u6761\u6570\u636E\u68C0\u67E5\u811A\u672C\u3002",comment:"validate \u7F3A\u811A\u672C"},validate_script_loops:{code:"",text:"scripts.validate \u4E0D\u80FD\u518D\u8C03\u7528 lumimaker validate\u3002\u8BF7\u5199\u6210\u6A21\u677F\u81EA\u5DF1\u7684\u68C0\u67E5\uFF08\u4F8B\u5982 node schema/check.mjs\uFF09\u3002npx lumimaker validate \u4F1A\u8F6C\u8C03 npm run validate\u3002",comment:"validate \u5FAA\u73AF\u8C03\u7528"},bin_missing:{code:"",text:"\u627E\u4E0D\u5230\u9002\u7528\u4E8E\u5F53\u524D\u7CFB\u7EDF\u7684 lumimaker \u539F\u751F\u547D\u4EE4\u3002\u8BF7\u5728\u5DE5\u7A0B\u76EE\u5F55\u6267\u884C npm install {pkg}\uFF08\u4E0D\u8981\u52A0 --omit=optional\uFF09\u3002",comment:"\u672A\u627E\u5230\u539F\u751F CLI"},unexpected_positional:{code:"",text:"{command} \u4E0D\u63A5\u53D7\u4F4D\u7F6E\u53C2\u6570\u300C{args}\u300D\u3002\u6307\u5B9A\u6570\u636E\u5305\u76EE\u5F55\u8BF7\u7528 --assets <\u7EDD\u5BF9\u8DEF\u5F84>\uFF1B\u663E\u5F0F\u5E26\u5305\u8BF7\u7528\u5F00\u5173 --with-assets\u3002",comment:"publish-template \u8BEF\u628A\u8DEF\u5F84\u5199\u5728 --with-assets \u540E\u9762"},run_failed:{code:"",text:"\u6267\u884C\u5931\u8D25: {e}",comment:"spawn inherit \u5931\u8D25"},cli_failed:{code:"",text:"\u8C03\u7528 CLI \u5931\u8D25: {e}",comment:"spawn json \u5931\u8D25"},internal_command:{code:"",text:"\u8FD9\u4E2A\u547D\u4EE4\u4E0D\u80FD\u4ECE\u8FD9\u91CC\u4F7F\u7528\u3002\u53D1\u7248\u8BF7\u7528 publish / publish-template / publish-project\uFF1B\u521D\u59CB\u5316\u5DE5\u7A0B\u8BF7\u7528 lumimaker-create\uFF1B\u6539\u5E16\u8BF7\u5230\u7F51\u9875\u3002",comment:"\u7528\u6237\u4FA7\u8C03\u7528 games/templates/projects/init"},sys_denied:{code:"",text:"\u6CA1\u6709\u6743\u9650\uFF0C\u6216\u6587\u4EF6\u88AB\u5360\u7528",comment:"EPERM / EACCES\uFF0C\u4E0D\u6253\u5370\u7CFB\u7EDF\u8DEF\u5F84"},sys_missing:{code:"",text:"\u8DEF\u5F84\u4E0D\u5B58\u5728",comment:"ENOENT"},sys_busy:{code:"",text:"\u76EE\u5F55\u975E\u7A7A\u6216\u6587\u4EF6\u6B63\u5728\u4F7F\u7528",comment:"EBUSY / ENOTEMPTY"},sys_type:{code:"",text:"\u8DEF\u5F84\u7C7B\u578B\u4E0D\u6B63\u786E",comment:"ENOTDIR / EISDIR"},sys_invalid:{code:"",text:"\u8DEF\u5F84\u65E0\u6548",comment:"EINVAL"},sys_too_many:{code:"",text:"\u6253\u5F00\u7684\u6587\u4EF6\u8FC7\u591A",comment:"EMFILE / ENFILE"},sys_unknown:{code:"",text:"\u7CFB\u7EDF\u62D2\u7EDD\u4E86\u8FD9\u6B21\u64CD\u4F5C",comment:"\u5176\u5B83\u7CFB\u7EDF\u9519\u8BEF\uFF0C\u4E0D\u6253\u5370 Error.message \u4EE5\u514D\u4E71\u7801"},op_failed:{code:"",text:"\u64CD\u4F5C\u5931\u8D25",comment:"\u4FE1\u5C01\u65E0 error \u65F6\u7684\u515C\u5E95"},need_input:{code:"11",text:"\u8FD8\u7F3A\u9700\u8981\u5411\u7528\u6237\u786E\u8BA4\u7684\u5185\u5BB9\u3002\u8BF7\u7528\u53E3\u8BED\u95EE\u7528\u6237\uFF0C\u628A\u7B54\u6848\u5199\u6210\u547D\u4EE4\u65D7\u6807\uFF08\u6216\u5199\u5165\u4FE1\u5C01\u6807\u660E\u7684\u6587\u4EF6\u5B57\u6BB5\uFF09\u540E\u518D\u91CD\u8DD1\u3002",comment:"Agent \u9000\u51FA\u7801 11"},login_required_agent:{code:"12",text:"\u5F53\u524D\u672A\u767B\u5F55\u5E73\u53F0\u3002\u8BF7\u8BE2\u95EE\u7528\u6237\u662F\u5426\u73B0\u5728\u6253\u5F00\u6D4F\u89C8\u5668\u767B\u5F55\uFF1B\u540C\u610F\u540E\u6267\u884C npx lumimaker login\uFF0C\u5B8C\u6210\u540E\u518D\u91CD\u8DD1\u539F\u547D\u4EE4\u3002",comment:"Agent \u9000\u51FA\u7801 12"},update_available:{code:"10",text:"\u68C0\u6D4B\u5230 lumimaker \u65B0\u7248\u672C\uFF0C\u63A8\u8350\u66F4\u65B0\u3002\u8BF7\u8BE2\u95EE\u7528\u6237\u662F\u5426\u73B0\u5728\u66F4\u65B0\u3002",comment:"Agent \u9000\u51FA\u7801 10"},update_ask:{code:"",text:"\u68C0\u6D4B\u5230\u65B0\u7248\u672C\uFF0C\u63A8\u8350\u66F4\u65B0\uFF0C\u662F\u5426\u73B0\u5728\u66F4\u65B0\uFF1F",comment:"TTY \u66F4\u65B0\u786E\u8BA4"},update_not_project:{code:"",text:"\u5F53\u524D\u76EE\u5F55\u4E0D\u662F npm \u5DE5\u7A0B\uFF0C\u5DF2\u8DF3\u8FC7\u66F4\u65B0\u3002",comment:"cwd \u65E0 package.json"},update_installing:{code:"",text:"\u6B63\u5728\u628A lumimaker \u76F8\u5173\u5305\u66F4\u65B0\u5230\u6700\u65B0\u2026",comment:"npm install \u524D"},update_failed:{code:"",text:"\u66F4\u65B0\u5931\u8D25\uFF0C\u5DF2\u8DF3\u8FC7\uFF0C\u7EE7\u7EED\u6267\u884C\u539F\u547D\u4EE4\u3002",comment:"npm install \u5931\u8D25"},update_done:{code:"",text:"\u5DF2\u66F4\u65B0\u3002\u5F53\u524D\u8FDB\u7A0B\u4ECD\u662F\u65E7\u4EE3\u7801\uFF0C\u8BF7\u91CD\u65B0\u6267\u884C\u521A\u624D\u7684\u547D\u4EE4\u3002",comment:"\u66F4\u65B0\u6210\u529F\u540E\u9000\u51FA"},table_empty:{code:"",text:" (\u65E0\u6570\u636E)",comment:"\u7A7A\u8868\u9ED8\u8BA4\u6587\u6848"},validate_ok_line:{code:"",text:"\u6A21\u677F\u76EE\u5F55\u89C4\u8303\u6821\u9A8C\u901A\u8FC7",comment:"validate-template \u539F\u59CB\u6210\u529F\u884C\uFF08\u5DF2\u4E0D\u518D\u5355\u72EC\u6253\u5370\uFF09"},validate_data_ok_line:{code:"",text:"\u5DE5\u7A0B\u6821\u9A8C\u901A\u8FC7",comment:"validate \u539F\u59CB\u6210\u529F\u884C"},issue_line:{code:"",text:"{path}: {message}",comment:"\u6821\u9A8C\u5931\u8D25\u4E00\u884C\uFF1B\u82F1\u6587\u9519\u8BEF\u7801\u53EA\u7559\u5728\u5185\u90E8\u5BF9\u8C61\uFF0C\u4E0D\u4E0A\u5C4F"}},fmt:{label_status:{code:"",text:"\u72B6\u6001",comment:"whoami \u5361\u7247"},label_hint:{code:"",text:"\u5EFA\u8BAE",comment:"whoami \u5361\u7247"},label_action:{code:"",text:"\u64CD\u4F5C",comment:"whoami \u5361\u7247"},version_no:{code:"",text:"\u7B2C {n} \u7248",comment:"\u7248\u672C\u5E8F\u53F7"},data_ver:{code:"",text:"\u7B2C {ver} \u7248\uFF08\u6570\u636E\u5305 ID {id}\uFF09",comment:"\u6570\u636E\u5305\u7248\u672C"},post_id:{code:"",text:"{id}",comment:"\u793E\u533A\u5E16"},vip:{code:"",text:"VIP {n}",comment:"\u4F1A\u5458\u7B49\u7EA7"},type_template:{code:"",text:"\u6A21\u677F",comment:"\u5E16\u5B50\u7C7B\u578B"},type_game:{code:"",text:"\u4F5C\u54C1",comment:"\u5E16\u5B50\u7C7B\u578B"},type_project:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B",comment:"\u5E16\u5B50\u7C7B\u578B"},shelf_id:{code:"",text:"{type} ID",comment:"\u5E16\u5B50\u5361\u7247"},shelf_name:{code:"",text:"{type}\u540D\u79F0",comment:"\u5E16\u5B50\u5361\u7247"},label_shelf:{code:"",text:"\u4E0A\u4E0B\u67B6",comment:"shelf_status \u4E0A\u67B6/\u4E0B\u67B6\uFF0C\u4E0D\u8981\u548C\u793E\u533A\u5E16 post_url \u6DF7\u6807\u6210\u5E16\u5B50"},val_shelf_on:{code:"",text:"\u4E0A\u67B6",comment:"shelf_status=1"},val_shelf_off:{code:"",text:"\u4E0B\u67B6",comment:"shelf_status=2"},label_changelog:{code:"",text:"\u66F4\u65B0\u8BF4\u660E",comment:"\u5E16\u5B50\u5361\u7247"},label_demo_scope:{code:"",text:"\u8BD5\u73A9\u8303\u56F4",comment:"\u4F5C\u54C1\u8BE6\u60C5"},label_play_duration:{code:"",text:"\u9884\u8BA1\u65F6\u957F",comment:"\u4F5C\u54C1\u8BE6\u60C5"},label_post_id:{code:"",text:"\u5173\u8054\u5E16",comment:"\u8BE6\u60C5 query \u7684 post_id\uFF08\u6A21\u677F / \u5F00\u6E90\u5DE5\u7A0B\uFF09"},label_work_post_id:{code:"",text:"\u4F5C\u54C1\u5E16\u5B50ID",comment:"\u4F5C\u54C1\u8BE6\u60C5 / \u53D1\u4F5C\u54C1\u6210\u529F\u7684\u5E16\u5B50 id"},label_template_id:{code:"",text:"\u6A21\u677F ID",comment:"\u6A21\u677F\u8BE6\u60C5 id"},label_project_id:{code:"",text:"\u5DE5\u7A0B ID",comment:"\u5F00\u6E90\u5DE5\u7A0B\u8BE6\u60C5 id"},label_game_official_id:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1ID",comment:"\u4F5C\u54C1\u8BE6\u60C5 id"},label_game_demo_id:{code:"",text:"\u8BD5\u73A9ID",comment:"demo \u4F5C\u54C1\u8BE6\u60C5 id"},label_post_status:{code:"",text:"\u5173\u8054\u5E16\u72B6\u6001",comment:"\u8BE6\u60C5 query \u7684 post_status"},label_name:{code:"",text:"\u540D\u79F0",comment:"query \u5361\u7247"},label_type:{code:"",text:"\u7C7B\u578B",comment:"query \u5361\u7247\uFF1A\u6B63\u5F0F\u7248\u4F5C\u54C1/demo"},label_parent:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1ID",comment:"query \u5361\u7247"},label_summary:{code:"",text:"\u7B80\u4ECB",comment:"query \u5361\u7247"},label_version:{code:"",text:"\u7248\u672C",comment:"query \u5361\u7247"},val_official:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"query \u7C7B\u578B"},val_demo:{code:"",text:"demo\u7248\u4F5C\u54C1\uFF08demo\uFF09",comment:"query \u7C7B\u578B"},val_unknown:{code:"",text:"\u672A\u77E5",comment:"\u672A\u77E5\u679A\u4E3E\u7ED9\u4EBA\u770B\u7684\u5360\u4F4D"},logout_done:{code:"",text:"\u5DF2\u9000\u51FA\u767B\u5F55",comment:"logout \u6210\u529F\u77ED\u53E5"},post_url_line:{code:"",text:"\u5E16\u5B50\uFF1A{url}",comment:"\u53D1\u7248\u6210\u529F\u540E\u72EC\u7ACB\u6253\u5370\u7684\u5DF2\u516C\u5F00\u5E16\u94FE\u63A5\uFF0C\u907F\u514D\u5361\u7247\u6298\u884C"},post_url_draft_line:{code:"",text:"\u5E16\u5B50\uFF08\u8349\u7A3F\uFF0C\u786E\u8BA4\u540E\u624D\u4F1A\u516C\u5F00\uFF09\uFF1A{url}",comment:"\u53D1\u7248\u6210\u529F\u540E\u72EC\u7ACB\u6253\u5370\u7684\u8349\u7A3F\u5E16\u94FE\u63A5"},create_pull_line:{code:"",text:"\u4ED6\u4EBA\u62C9\u53D6\uFF1A{cmd}",comment:"\u53D1\u7248\u6210\u529F\u540E\u72EC\u7ACB\u6253\u5370\u7684 create \u547D\u4EE4\uFF0C\u987B\u7528 \u7528\u6237\u540D/slug"},list_sep:{code:"",text:"\u3001",comment:"\u5217\u8868\u9879\u5206\u9694"}},validate:{forbidden_scripts_dir:{code:"FORBIDDEN_SCRIPTS_DIR",text:"\u6A21\u677F\u6839\u76EE\u5F55\u4E0D\u8981\u653E scripts/ \u6587\u4EF6\u5939\uFF08\u548C npm scripts\u3001skill/scripts \u649E\u8F66\uFF09",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_out_dir:{code:"FORBIDDEN_OUT_DIR",text:"\u4EA7\u7269\u76EE\u5F55\u53EA\u80FD\u53EB dist/\uFF0C\u4E0D\u8981\u7528 {dir}/",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_content_root:{code:"FORBIDDEN_CONTENT_ROOT",text:"\u5185\u5BB9\u653E assets/{dir}/\uFF0C\u4E0D\u8981\u5728\u6839\u76EE\u5F55\u653E {dir}/",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_template_yaml:{code:"FORBIDDEN_TEMPLATE_YAML",text:"\u4E0D\u8981 template.yaml\uFF1Bslug \u5199\u5728 package.json",comment:"\u89C4\u8303\u95E8\u7981"},missing_dir:{code:"MISSING_DIR",text:"\u7F3A\u5C11\u5FC5\u6709\u76EE\u5F55 {dir}/",comment:"\u89C4\u8303\u95E8\u7981"},empty_assets:{code:"EMPTY_ASSETS",text:"assets/ \u91CC\u81F3\u5C11\u8981\u6709\u4E00\u4E2A\u6587\u4EF6\uFF08\u53EF\u4EE5\u653E\u5728\u5B50\u76EE\u5F55\u4E2D\uFF09",comment:"\u89C4\u8303\u95E8\u7981"},assets_not_dir:{code:"ASSETS_NOT_DIR",text:"assets \u5982\u679C\u5B58\u5728\uFF0C\u5FC5\u987B\u662F\u76EE\u5F55\u3002\u53EF\u4EE5\u4E0D\u521B\u5EFA\uFF0C\u4E5F\u53EF\u4EE5\u662F\u7A7A\u76EE\u5F55",comment:"\u89C4\u8303\u95E8\u7981"},missing_file:{code:"MISSING_FILE",text:"\u7F3A\u5C11\u5FC5\u6709\u6587\u4EF6 {file}",comment:"\u89C4\u8303\u95E8\u7981"},logic_export:{code:"LOGIC_EXPORT",text:"schema/logic.mjs \u5FC5\u987B default export async function validate(data, rootDir)",comment:"\u89C4\u8303\u95E8\u7981"},invalid_json:{code:"INVALID_JSON",text:"package.json \u4E0D\u662F\u5408\u6CD5 JSON",comment:"\u89C4\u8303\u95E8\u7981"},package_not_object:{code:"PACKAGE_NOT_OBJECT",text:"package.json \u5FC5\u987B\u662F JSON \u5BF9\u8C61",comment:"\u89C4\u8303\u95E8\u7981"},missing_name:{code:"MISSING_NAME",text:"package.json \u5FC5\u987B\u6709\u5E73\u53F0\u5C55\u793A\u540D name\uFF0C\u53BB\u6389\u9996\u5C3E\u7A7A\u767D\u540E\u4E0D\u80FD\u4E3A\u7A7A",comment:"\u89C4\u8303\u95E8\u7981"},invalid_name:{code:"INVALID_NAME",text:"name \u4E0D\u80FD\u5305\u542B / \u6216 @",comment:"\u89C4\u8303\u95E8\u7981"},missing_version:{code:"MISSING_VERSION",text:"package.json \u5FC5\u987B\u6709\u6A21\u677F\u7248\u672C\u53F7 version\uFF08\u5982 0.1.0\u30011.0.0-a\uFF09",comment:"\u89C4\u8303\u95E8\u7981"},invalid_description:{code:"INVALID_DESCRIPTION",text:"description \u53EF\u4EE5\u4E0D\u5199\uFF1B\u5982\u679C\u5199\u4E86\uFF0C\u5FC5\u987B\u662F\u5B57\u7B26\u4E32\uFF0C\u53EF\u4EE5\u4E3A\u7A7A\u5B57\u7B26\u4E32",comment:"\u89C4\u8303\u95E8\u7981"},scripts_type:{code:"SCRIPTS_TYPE",text:"package.json \u7684 scripts \u5FC5\u987B\u662F\u5BF9\u8C61\uFF0C\u5E76\u5305\u542B dev\u3001dev:demo\u3001build\u3001build:demo\u3001validate",comment:"\u89C4\u8303\u95E8\u7981"},build_failed:{code:"BUILD_FAILED",text:"npm run {name} \u6CA1\u6709\u6210\u529F\u3002\u8FD9\u4E2A\u811A\u672C\u5FC5\u987B\u5728\u5DE5\u7A0B\u6839\u76EE\u5F55\u751F\u6210 dist/index.html",comment:"\u89C4\u8303\u95E8\u7981"},missing_build_index:{code:"MISSING_BUILD_INDEX",text:"npm run {name} \u7ED3\u675F\u540E\u6CA1\u6709 dist/index.html\u3002\u6784\u5EFA\u7ED3\u679C\u5FC5\u987B\u5199\u5230 dist/\uFF0C\u5E76\u4E14\u5305\u542B\u5165\u53E3 index.html",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_template_id:{code:"FORBIDDEN_TEMPLATE_ID",text:"package.json \u4E0D\u8981\u624B\u5199\u6A21\u677F ID\uFF0C\u8EAB\u4EFD\u7531\u5E73\u53F0\u7B7E\u53D1\u7684 origin.json \u4FDD\u5B58",comment:"\u89C4\u8303\u95E8\u7981"},missing_slug:{code:"MISSING_SLUG",text:"package.json \u5FC5\u987B\u6709\u82F1\u6587\u77ED\u540D slug\uFF08\u5B89\u88C5\u8DEF\u5F84\u540E\u534A\u6BB5\uFF0C\u4E0D\u662F name\uFF09",comment:"\u89C4\u8303\u95E8\u7981"},invalid_slug:{code:"INVALID_SLUG",text:"\u82F1\u6587\u77ED\u540D slug \u987B\u5339\u914D ^[a-z0-9][a-z0-9-]{0,62}$",comment:"\u89C4\u8303\u95E8\u7981"},invalid_version:{code:"INVALID_VERSION",text:"\u6A21\u677F package.json \u7684 version \u683C\u5F0F\u65E0\u6548\uFF1A\u987B 1\u201316 \u4F4D\uFF0C\u4EC5\u5C0F\u5199\u5B57\u6BCD\u3001\u6570\u5B57\u3001`.`\u3001`-`\uFF1B\u5FC5\u987B\u4EE5\u5B57\u6BCD\u6216\u6570\u5B57\u5F00\u5934\u548C\u7ED3\u5C3E\uFF0C\u4E14\u4E0D\u80FD\u6709\u8FDE\u7EED\u7B26\u53F7\u3002\u793A\u4F8B\uFF1A0.1.0\u30011.0.0-a",comment:"\u89C4\u8303\u95E8\u7981"},missing_data_ver:{code:"MISSING_DATA_VER",text:'package.json \u5FC5\u987B\u6709\u6570\u636E\u5305\u7248\u672C\u53F7\uFF08\u5982 "1"\uFF09',comment:"\u89C4\u8303\u95E8\u7981"},invalid_data_ver:{code:"INVALID_DATA_VER",text:"data_ver \u5FC5\u987B\u662F\u53BB\u6389\u9996\u5C3E\u7A7A\u767D\u540E\u4E0D\u4E3A\u7A7A\u7684\u5B57\u7B26\u4E32\uFF0C\u6216\u4E00\u4E2A\u6709\u9650\u6570\u5B57",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_bin:{code:"FORBIDDEN_BIN",text:"\u6A21\u677F\u5DE5\u7A0B\u4E0D\u8981\u8BBE\u7F6E bin\uFF0C\u907F\u514D\u4F5C\u8005\u8BEF npx \u5230\u6A21\u677F",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_package_manager:{code:"FORBIDDEN_PACKAGE_MANAGER",text:"\u4E0D\u8981\u5199 packageManager\uFF08\u4F5C\u8005\u73AF\u5883\u53EA\u7528 Node \u81EA\u5E26\u7684 npm\uFF09",comment:"\u89C4\u8303\u95E8\u7981"},missing_script:{code:"MISSING_SCRIPT",text:"package.json \u7F3A\u5C11 scripts.{name}",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_script:{code:"FORBIDDEN_SCRIPT",text:"\u4E0D\u8981\u628A\u811A\u672C\u547D\u540D\u4E3A {name}\uFF08\u4F1A\u548C npm {name} \u649E\u8F66\uFF09\u3002\u8BF7\u7528 npx lumimaker {name}",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_validate_demo:{code:"FORBIDDEN_SCRIPT",text:"\u4E0D\u8981 scripts.validate:demo\u3002\u5F00\u53D1\u670D\u52A1\u548C\u6253\u5305\u624D\u5206\u6B63\u5F0F/\u8BD5\u73A9\uFF1B\u6570\u636E\u6821\u9A8C\u53EA\u6709 scripts.validate\uFF0C\u6709\u72EC\u7ACB\u8BD5\u73A9\u6570\u636E\u65F6\u540C\u4E00\u6761\u547D\u4EE4\u68C0\u67E5\u4E24\u4EFD",comment:"\u89C4\u8303\u95E8\u7981"},missing_gitignore:{code:"MISSING_GITIGNORE",text:"\u7F3A\u5C11 .gitignore\uFF0C\u4E14\u5FC5\u987B\u5FFD\u7565 dist/ \u4E0E node_modules/",comment:"\u89C4\u8303\u95E8\u7981"},gitignore_dist:{code:"GITIGNORE_DIST",text:".gitignore \u5FC5\u987B\u5FFD\u7565 dist/",comment:"\u89C4\u8303\u95E8\u7981"},gitignore_node_modules:{code:"GITIGNORE_NODE_MODULES",text:".gitignore \u5FC5\u987B\u5FFD\u7565 node_modules/",comment:"\u89C4\u8303\u95E8\u7981"},absolute_asset_path:{code:"ABSOLUTE_ASSET_PATH",text:"{rel} \u5FC5\u987B\u7528\u76F8\u5BF9\u8DEF\u5F84\uFF08Vite \u8BBE base: './'\uFF09\uFF0C\u624D\u80FD\u653E\u5230\u4EFB\u610F\u9759\u6001\u6258\u7BA1\u5B50\u76EE\u5F55",comment:"dist \u68C0\u67E5"},missing_dist:{code:"MISSING_DIST",text:"\u7F3A\u5C11 {entry}\u3002\u8BF7\u5148 npm run build\uFF0C\u4E14 outDir \u5FC5\u987B\u662F dist",comment:"dist \u68C0\u67E5"},missing_game_html:{code:"MISSING_GAME_HTML",text:"dist/ \u81F3\u5C11\u8981\u6709 1 \u4E2A\u5165\u53E3\u9875 index.{lang}.{h|v}.html\uFF08\u5982 index.zh.h.html\uFF09\u3002\u5355\u9875\u6A21\u677F\u53EF\u5728 build \u540E\u628A index.html \u62F7\u4E00\u4EFD\u4F5C fallback",comment:"dist \u68C0\u67E5"},dist_html_name:{code:"DIST_HTML_NAME",text:"\u4EA7\u7269 HTML \u547D\u540D\u4E0D\u7B26\u5408\u7EA6\u5B9A\u3002\u5165\u53E3\u9875\u7528 index.{lang}.{h|v}.html\uFF0C\u65B9\u5411\u9996\u9875\u7528 index.h.html / index.v.html\uFF0C\u53E6\u5141\u8BB8 start.html\u3001404.html\u3001privacy.html\u3001offline.html",comment:"dist \u68C0\u67E5"},invalid_asset:{code:"INVALID_ASSET",text:"\u6570\u636E\u5305\u8DEF\u5F84\u4E0D\u5408\u6CD5: {rel}",comment:"\u6570\u636E\u6821\u9A8C"},missing_asset:{code:"MISSING_ASSET",text:"\u6570\u636E\u5305\u6587\u4EF6\u4E0D\u5B58\u5728: assets/{posix}",comment:"\u6570\u636E\u6821\u9A8C"},asset_case:{code:"ASSET_CASE",text:"\u6570\u636E\u5305\u8DEF\u5F84\u5927\u5C0F\u5199\u4E0D\u4E00\u81F4: JSON \u5199 assets/{posix}\uFF0C\u78C1\u76D8\u4E0A\u662F assets/{actual}\uFF08Linux \u6258\u7BA1\u4F1A\u627E\u4E0D\u5230\uFF09",comment:"\u6570\u636E\u6821\u9A8C"},schema_failed:{code:"SCHEMA",text:"schema \u6821\u9A8C\u5931\u8D25",comment:"\u6570\u636E\u6821\u9A8C\u515C\u5E95"},schema_detail:{code:"SCHEMA",text:"{path} {message}",comment:"Ajv \u9519\u8BEF"},theme_schema_failed:{code:"THEME_SCHEMA",text:"theme schema \u6821\u9A8C\u5931\u8D25",comment:"\u6570\u636E\u6821\u9A8C\u515C\u5E95"}}};function To(){let e={...Ot,...$t};return delete e._comment,e}var f=To();function we(e,t){if(!t)return e;let n=e;for(let[o,r]of Object.entries(t))n=n.split(`{${o}}`).join(String(r));return n}function s(e,t,n){let o=f[e]?.[t];if(!o?.text)throw new Error(`missing cli message ${String(e)}.${t}`);return we(o.text,n)}function y(e,t,n){let o=f.validate[t];if(!o)throw new Error(`missing validate message ${t}`);return{path:e,code:o.code,message:we(o.text,n)}}var Do=/^[a-z0-9][a-z0-9-]{0,62}$/;function se(e){return Do.test(e.trim())}function N(e){return ae(e)===void 0}function ae(e){let t=e.trim();if(!t)return"empty";if(t.includes("/")||t.includes("@"))return"invalid"}function Y(e){let t=e?.trim()??"";return!t||N(t)}var Ft="^(?=.{1,16}$)[a-z0-9]+(?:[.-][a-z0-9]+)*$",Vt=new RegExp(Ft);function L(e){return Vt.test(e)}var Oo=["src"],$o=["package.json","README.md","AGENTS.md"],Fo=["dev","dev:demo","build","build:demo","validate"],Vo=["build","build:demo"],Uo=/^[a-z0-9][a-z0-9-]{0,62}$/;function Ut(e,t){let n=V.join(e,t);return j.existsSync(n)&&j.statSync(n).isFile()}function qo(e,t){let n=V.join(e,t);return j.existsSync(n)&&j.statSync(n).isDirectory()}function qt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Bo(e){let t=[];for(let m of Oo)qo(e,m)||t.push(y(`/${m}/`,"missing_dir",{dir:m}));let n=V.join(e,"assets");j.existsSync(n)&&!j.statSync(n).isDirectory()&&t.push(y("/assets","assets_not_dir"));for(let m of $o)Ut(e,m)||t.push(y(`/${m}`,"missing_file",{file:m}));if(!Ut(e,"package.json"))return{ok:!1,errors:t};let o;try{o=JSON.parse(j.readFileSync(V.join(e,"package.json"),"utf8"))}catch{return t.push(y("/package.json","invalid_json")),{ok:!1,errors:t}}if(!qt(o))return t.push(y("/package.json","package_not_object")),{ok:!1,errors:t};let r=o.name;if(typeof r!="string")t.push(y("/package.json","missing_name"));else{let m=ae(r);m==="empty"?t.push(y("/package.json","missing_name")):m==="invalid"&&t.push(y("/package.json","invalid_name"))}let i=o.slug;typeof i!="string"||i.trim()===""?t.push(y("/package.json","missing_slug")):Uo.test(i)||t.push(y("/package.json","invalid_slug"));let a=o.version;typeof a!="string"||a.trim()===""?t.push(y("/package.json","missing_version")):L(a)||t.push(y("/package.json","invalid_version"));let c=o.data_ver;if(c==null?t.push(y("/package.json","missing_data_ver")):typeof c=="string"?c.trim()===""&&t.push(y("/package.json","invalid_data_ver")):(typeof c!="number"||!Number.isFinite(c))&&t.push(y("/package.json","invalid_data_ver")),"description"in o&&typeof o.description!="string"&&t.push(y("/package.json","invalid_description")),!qt(o.scripts))t.push(y("/package.json","scripts_type"));else for(let m of Fo){let l=o.scripts[m];(typeof l!="string"||l.trim()==="")&&t.push(y("/package.json","missing_script",{name:m}))}return{ok:t.length===0,errors:t}}function Jo(e,t){return new Promise((n,o)=>{let r=Lo("npm",["run",t],{cwd:e,stdio:"inherit",shell:process.platform==="win32"});r.on("error",o),r.on("close",i=>n(i??1))})}function Go(e){let t=V.join(e,"dist","index.html");return j.existsSync(t)&&j.statSync(t).isFile()}async function Wo(e){let t=V.join(e,"dist"),n=j.mkdtempSync(V.join(Mo.tmpdir(),"lumimaker-dist-")),o=V.join(n,"dist"),r=j.existsSync(t);r&&j.cpSync(t,o,{recursive:!0});let i=[];try{for(let a of Vo){j.rmSync(V.join(t,"index.html"),{force:!0});try{await Jo(e,a)}catch{i.push(y("/dist/index.html","missing_build_index",{name:a}));continue}Go(e)||i.push(y("/dist/index.html","missing_build_index",{name:a}))}i.length&&r&&(j.rmSync(t,{recursive:!0,force:!0}),j.cpSync(o,t,{recursive:!0}))}finally{j.rmSync(n,{recursive:!0,force:!0})}return i}async function Qo(e){let t=Bo(e);if(!t.ok)return t;let n=await Wo(e);return{ok:n.length===0,errors:n}}async function Se(e){let{ok:t,errors:n}=await Qo(e);if(!t){for(let o of n)console.error(s("kit","issue_line",{path:o.path,message:o.message}));process.exit(1)}}import Bt from"node:fs";import Ko from"node:path";import{spawn as Ho}from"node:child_process";import{createRequire as Yo}from"node:module";var zo=Yo(import.meta.url),Jt=zo("ajv"),$s=Jt.default??Jt;var Gt="LUMIMAKER_VALIDATE_DISPATCH",ce=class extends Error{exitCode;constructor(t){super("validate_script_failed"),this.name="ValidateScriptFailed",this.exitCode=t}};function Xo(e){let t=e.trim().replace(/\s+/g," ");return/^(npx\s+)?(@66rpg\/lumimaker|lumimaker)\s+validate(\s|$)/i.test(t)}function Zo(e){let t=Ko.join(e,"package.json");if(Bt.existsSync(t))try{let o=JSON.parse(Bt.readFileSync(t,"utf8")).scripts?.validate;return typeof o!="string"||!o.trim()?void 0:o}catch{return}}function er(e){if(process.env[Gt]==="1")throw new Error(s("kit","validate_script_loops"));let t=Zo(e);if(!t)throw new Error(s("kit","validate_need_script"));if(Xo(t))throw new Error(s("kit","validate_script_loops"))}function tr(){return process.platform==="win32"?"npm.cmd":"npm"}function nr(e){let t=process.platform==="win32";return new Promise((n,o)=>{let r=Ho(tr(),["run","validate"],{cwd:e,stdio:"inherit",env:{...process.env,[Gt]:"1"},shell:t,windowsHide:t});r.on("error",o),r.on("close",i=>n(i??1))})}async function Je(e){er(e);let t=await nr(e);if(t!==0)throw new ce(t)}import R from"node:fs";import W from"node:path";import Ge from"node:fs";import Wt from"node:path";var or=".lumimaker",rr=".cgmaker";function E(e){let t=Wt.join(e,or),n=Wt.join(e,rr);if(Ge.existsSync(t)||!Ge.existsSync(n))return t;try{return Ge.renameSync(n,t),t}catch{return n}}var Qe=new Set(["json","verbose","help","demo","init","if-needed","force","no-interactive","no-data","all","agent","apply-update","skip-update","skip-skill","skill-skip","with-assets","as-new","yes"]),ir=new Set(["publish-template","publish-template-data"]);function Qt(e){return!e.command||!ir.has(e.command)?[]:e.positionals.slice(1)}var Kt=new Set(["no-interactive","agent","json","apply-update","skip-update","yes"]);function Ht(e){let t=e.slice(2),n={},o=[];for(let w=0;w<t.length;w++){let d=t[w];if(d==="--"){o.push(...t.slice(w+1));break}if(d.startsWith("--")){let P=d.indexOf("=");if(P!==-1){let v=d.slice(2,P),T=d.slice(P+1);n[v]=T}else{let v=d.slice(2);if(Qe.has(v))n[v]=!0;else if(v==="version"){let T=t[w+1];T&&!T.startsWith("-")?(n[v]=T,w++):n[v]=!0}else{let T=t[w+1];T&&!T.startsWith("-")?(n[v]=T,w++):n[v]=!0}}continue}if(d.startsWith("-")&&d.length>1){let P=d.slice(1);P==="v"?n.verbose=!0:P==="h"?n.help=!0:P==="V"?n.V=!0:n[P]=!0;continue}o.push(d)}let r=process.env.LUMIMAKER_OUTPUT==="json",i=!!n.verbose||!!n.v,a=!!n["no-interactive"]||process.env.CI==="true"||process.env.LUMIMAKER_NO_INTERACTIVE==="1",c=!r&&!a&&!!(process.stdin.isTTY&&process.stdout.isTTY),m=o[0],l=o[1],u=typeof n.config=="string"?n.config:void 0,g=!m&&(n.version===!0||n.V===!0);return{raw:t,command:m,subcommand:l,flags:n,positionals:o,isJson:r,isVerbose:i,isInteractive:c,wantsVersion:g,configPath:u}}function O(e=process.cwd()){try{let t=W.join(e,"package.json");if(R.existsSync(t)){let n=JSON.parse(R.readFileSync(t,"utf8")),o=n.data_ver,r=n.data_summary;return{name:typeof n.name=="string"?n.name:void 0,slug:typeof n.slug=="string"?n.slug:void 0,version:typeof n.version=="string"?n.version:void 0,data_ver:o!=null&&String(o).trim()!==""?String(o).trim():void 0,data_summary:typeof r=="string"&&r.trim()?r.trim():void 0}}}catch{}return null}function U(e,t=process.cwd()){let n=W.join(t,"package.json");try{if(!R.existsSync(n))return!1;let o=JSON.parse(R.readFileSync(n,"utf8"));for(let[r,i]of Object.entries(e)){if(i===void 0)continue;let a=i.trim();if(!a){delete o[r];continue}o[r]=a}return R.writeFileSync(n,`${JSON.stringify(o,null,2)}
2
- `),!0}catch{return!1}}var sr=new Set(["publish","publish-template","publish-template-data","publish-project"]);function We(e,t){let n=e[t];return typeof n!="string"?void 0:n.trim()||void 0}function Yt(e,t,n=process.cwd()){if(!e||!sr.has(e))return!1;delete t.changelog;let o={},r=We(t,"name"),i=We(t,"version"),a=We(t,"data-ver");return r&&(N(r)&&Y(O(n)?.name)?o.name=r:N(r)||delete t.name),i&&(o.version=i),a&&(o.data_ver=a),!o.name&&!o.version&&!o.data_ver||!U(o,n)?!1:(o.name&&delete t.name,o.version&&delete t.version,o.data_ver&&delete t["data-ver"],!0)}function Ie(e=process.cwd()){try{let t=W.join(E(e),"game.json");if(R.existsSync(t))return JSON.parse(R.readFileSync(t,"utf8"))}catch{}return null}function Ae(e=process.cwd()){try{let t=W.join(E(e),"origin.json");if(R.existsSync(t))return JSON.parse(R.readFileSync(t,"utf8"))}catch{}return null}function le(e=process.cwd()){return ar(W.join(e,"assets"))}function ar(e){try{if(!R.existsSync(e)||!R.statSync(e).isDirectory())return!1;let t=[e];for(;t.length;){let n=t.pop();for(let o of R.readdirSync(n)){let r=W.join(n,o),i=R.statSync(r);if(i.isFile())return!0;i.isDirectory()&&t.push(r)}}}catch{}return!1}function je(e=process.cwd()){try{let t=W.join(E(e),"project.json");if(R.existsSync(t))return JSON.parse(R.readFileSync(t,"utf8"))}catch{}return null}import pr from"node:fs";import fr from"node:path";import cr from"node:fs";import Ke from"node:path";import{fileURLToPath as lr}from"node:url";function q(){let e=Ke.dirname(lr(import.meta.url));for(;;){if(cr.existsSync(Ke.join(e,"package.json")))return e;let t=Ke.dirname(e);if(t===e)throw new Error("lumimaker kit package root not found");e=t}}var mr=[{id:"workbuddy",tokens:["workbuddy"]},{id:"codebuddy",tokens:["codebuddy"]},{id:"cursor",tokens:["cursor"]},{id:"opencode",tokens:["opencode"]},{id:"claude",tokens:["claudecode","claude"]},{id:"codex",tokens:["codex"]},{id:"trae",tokens:["trae"]},{id:"kimi",tokens:["kimi"]},{id:"qwen",tokens:["qwen"]}];function ur(e){let t=[" "];for(let n of e){let o="";for(let r of n.toLowerCase())r>="a"&&r<="z"||r>="0"&&r<="9"?o+=r:o?(t.push(o," "),o=""):t[t.length-1]!==" "&&t.push(" ");o&&t.push(o," ")}return t.join("")}function dr(e){let t=[];for(let[n,o]of Object.entries(e))n&&t.push(n),typeof o=="string"&&o&&t.push(o);return t}function z(e=process.env){let t=ur(dr(e));for(let{id:n,tokens:o}of mr)if(o.some(r=>t.includes(` ${r} `)))return n}function Ee(e,t){return!t||!e.includes(t)?[...e]:[t,...e.filter(n=>n!==t)]}function b(e,t){let n=e[t];if(typeof n!="string")return;let o=n.trim();return o||void 0}function Zt(e,t){return t.some(n=>n.optional!==!0)}function en(e,t){let n=b(e,"name"),o=t?.name?.trim()||void 0;return n&&N(n)?n:o&&N(o)?o:n||o}function He(e,t,n){let o=en(e,t);return o?!N(o):me(n?.template_id)?!1:!ue(n)}function zt(e){let t=(e??"").trim();return t&&t!=="0"?t:void 0}function Ye(e){return e.demo===!0||String(e.variant??"")==="2"}function ze(e){let t=zt(e?.game_id),n=zt(e?.demo_game_id),o;return t&&n?o=s("prompt","publish_have_both",{official:t,demo:n}):t?o=s("prompt","publish_have_official",{id:t}):n?o=s("prompt","publish_have_demo",{id:n}):o=s("prompt","publish_have_none"),`${o}
3
- ${s("prompt","publish_variant")}`}function Xe(e,t,n){let o=b(e,"name")||t?.name?.trim()||s("prompt","publish_confirm_unnamed"),r=b(e,"version")||t?.version?.trim()||"-",i=Ye(e),a=i?s("prompt","publish_confirm_demo"):s("prompt","publish_confirm_official"),c=[s("prompt","publish_confirm"),s("prompt","publish_confirm_name",{name:o}),s("prompt","publish_confirm_version",{version:r}),s("prompt","publish_confirm_variant",{variant:a})],m=b(e,"parent")||i&&n?.game_id?.trim()||void 0;return i&&m&&c.push(s("prompt","publish_confirm_parent",{id:m})),c.join(`
4
- `)}function me(e){if(e==null)return!1;let t=e.trim();return!t||t==="local"||t==="0"}function ue(e){let t=(e?.template_id??"").trim();return!!t&&t!=="local"&&t!=="0"}function Ze(e,t){return e["no-data"]===!0||e.init===!0?!1:e.fork?e["with-assets"]===!0||!!b(e,"assets"):me(t?.template_id)?!1:ue(t)?e["with-assets"]===!0||!!b(e,"assets"):!0}function et(e,t,n){if(b(e,"data-ver"))return!1;let o=(t??"").trim();return o&&o!=="0"?!1:Ze(e,n)}function tt(e,t,n){return b(e,"data-summary")||(t??"").trim()?!1:Ze(e,n)}function nt(e,t,n=!0){return Ze(e,t)?!n:!1}function ot(){try{let e=fr.join(q(),"skill-targets.json"),t=JSON.parse(pr.readFileSync(e,"utf8")),n=[];for(let o of t.projectSkillDirs??[]){let i=(o.replace(/\\/g,"/").split("/").find(Boolean)??"").replace(/^\./,"").toLowerCase();i&&!n.includes(i)&&n.push(i)}return n}catch{return["cursor"]}}function tn(e,t={}){let n=t.cwd??process.cwd(),o=e.flags,r=e.command,i=t.pkg!==void 0?t.pkg:O(n),a=t.game!==void 0?t.game:Ie(n),c=t.origin!==void 0?t.origin:Ae(n),m=t.project!==void 0?t.project:je(n),l=t.skillIds??ot(),u=t.hasAssets??le(n);return r?r==="publish"?gr(o,i,a):r==="publish-template"?hr(o,i,c,u):r==="publish-template-data"?xr(o,i,c,u):r==="publish-project"?br(o,i,m):r==="login"?[]:r==="skill"?vr(o,l,t.detectedEditor):[]:_r()}function _r(){return[{id:"main.command",kind:"select",question:s("prompt","main_message"),recommended:!0,options:[{value:"publish",label:s("prompt","main_publish_label")},{value:"publish-template",label:s("prompt","main_publish_template_label")},{value:"publish-template-data",label:s("prompt","main_publish_template_data_label")},{value:"publish-project",label:s("prompt","main_publish_project_label")},{value:"login",label:s("prompt","main_login_label")},{value:"whoami",label:s("prompt","main_whoami_label")},{value:"validate-template",label:s("prompt","main_validate_template_label")},{value:"skill",label:s("prompt","main_skill_label")},{value:"logout",label:s("prompt","main_logout_label")}]}]}function gr(e,t,n){let o=[];return!e.version&&!(t?.version??"").trim()&&o.push({id:"publish.version",kind:"text",question:s("prompt","publish_version"),field:"package.json.version",recommended:!0,default:"1.0.0"}),!b(e,"name")&&!(t?.name??"").trim()&&!n?.game_id&&o.push({id:"publish.name",kind:"text",question:s("prompt","publish_name"),field:"package.json.name",optional:!0,default:t?.name||"game"}),e.demo===void 0&&e.variant===void 0?(o.push({id:"publish.variant",kind:"select",question:ze(n),recommended:!0,options:[{value:"official",label:s("prompt","publish_official_label"),flag:"--variant 1"},{value:"demo",label:s("prompt","publish_demo_label"),flag:"--demo"}]}),o):(Ye(e)&&!e.parent&&o.push({id:"publish.parent",kind:"text",question:s("prompt","publish_parent"),flag:"--parent",optional:!0,default:n?.game_id||void 0}),Xt(e,n)&&!b(e,"demo-scope")&&o.push({id:"publish.demo-scope",kind:"text",question:s("prompt","publish_demo_scope"),flag:"--demo-scope",optional:!0}),Xt(e,n)&&!b(e,"play-duration")&&o.push({id:"publish.play-duration",kind:"text",question:s("prompt","publish_play_duration"),flag:"--play-duration",optional:!0}),o.filter(i=>i.optional!==!0).length===0&&e.yes!==!0&&o.push({id:"publish.confirm",kind:"confirm",question:Xe(e,t,n),flag:"--yes",recommended:!0}),o)}function Xt(e,t){return b(e,"game-id")?!1:Ye(e)?!(t?.demo_game_id??"").trim():!(t?.game_id??"").trim()}function hr(e,t,n,o){let r=[],i=typeof e.version=="string"?e.version.trim():"",a=(t?.version??"").trim(),c=i||a;i&&!L(i)?r.push({id:"publish-template.version",kind:"text",question:s("prompt","tpl_version"),field:"package.json.version",recommended:!0,default:a||"0.1.0"}):c?!i&&a&&!L(a)&&r.push({id:"publish-template.version",kind:"text",question:s("prompt","tpl_version"),field:"package.json.version",recommended:!0,default:"0.1.0"}):r.push({id:"publish-template.version",kind:"text",question:s("prompt","tpl_version"),field:"package.json.version",recommended:!0,default:"0.1.0"});let m=(t?.slug??"").trim();if(se(m)||r.push({id:"publish-template.slug",kind:"text",question:s("prompt","tpl_slug"),field:"package.json.slug",recommended:!0}),He(e,t,n)){let l=en(e,t),u=(l&&N(l)?l:void 0)||t?.slug?.trim()||void 0,g=Y(t?.name);r.push({id:"publish-template.name",kind:"text",question:s("prompt","tpl_name"),field:g?"package.json.name":void 0,flag:g?void 0:"--name",recommended:!0,default:u&&N(u)?u:void 0})}return!e.init&&!e.fork&&!ue(n)&&!me(n?.template_id)&&(r.push({id:"publish-template.mode",kind:"select",question:s("prompt","tpl_mode"),optional:!0,recommended:!0,default:"publish",options:[{value:"publish",label:s("prompt","tpl_publish_label"),flag:""},{value:"fork",label:s("prompt","tpl_fork_label"),flag:"--fork"}]}),r.push({id:"publish-template.fork",kind:"text",question:s("prompt","tpl_fork_id"),flag:"--fork",optional:!0})),et(e,t?.data_ver,n)&&r.push({id:"publish-template.data-ver",kind:"text",question:s("prompt","data_ver_ask"),field:"package.json.data_ver",recommended:!0}),tt(e,t?.data_summary,n)&&r.push({id:"publish-template.data-summary",kind:"text",question:s("prompt","data_summary"),flag:"--data-summary",optional:!0}),nt(e,n,o)&&r.push({id:"publish-template.assets",kind:"confirm",question:s("prompt","data_assets"),recommended:!0}),e.fork&&!b(e,"data-id")&&!b(e,"data-ver-id")&&r.push({id:"publish-template.data-id",kind:"text",question:s("prompt","tpl_data_id"),flag:"--data-id",optional:!0}),r}function xr(e,t,n,o){let r=[];if(!b(e,"data-ver")){let i=(t?.data_ver??"").trim();i&&i!=="0"&&i||r.push({id:"publish-template-data.data-ver",kind:"text",question:s("prompt","data_ver_ask"),field:"package.json.data_ver",recommended:!0})}return!b(e,"data-summary")&&!(t?.data_summary??"").trim()&&r.push({id:"publish-template-data.data-summary",kind:"text",question:s("prompt","data_summary"),flag:"--data-summary",optional:!0}),o||r.push({id:"publish-template-data.assets",kind:"confirm",question:s("prompt","data_assets"),recommended:!0}),r}function br(e,t,n){let o=[];return!e.version&&!(t?.version??"").trim()&&o.push({id:"publish-project.version",kind:"text",question:s("prompt","proj_version"),field:"package.json.version",recommended:!0,default:"1.0.0"}),!b(e,"name")&&!(t?.name??"").trim()&&!n?.project_id&&o.push({id:"publish-project.name",kind:"text",question:s("prompt","proj_name"),field:"package.json.name",recommended:!0,default:t?.name||"open-source-project"}),!e.summary&&!n?.project_id&&o.push({id:"publish-project.summary",kind:"text",question:s("prompt","proj_summary"),flag:"--summary",optional:!0}),!e.cover&&!n?.project_id&&o.push({id:"publish-project.cover",kind:"text",question:s("prompt","proj_cover"),flag:"--cover",optional:!0}),o}function vr(e,t,n){if(typeof e.platform=="string"&&e.platform!==""||e.all===!0)return[];let r=n!==void 0?n??void 0:z(),i=r&&t.includes(r)?r:void 0,a=s("prompt","skill_current_suffix"),c=i?s("prompt","skill_platform_detected",{id:i}):s("prompt","skill_platform");return[{id:"skill.platform",kind:"select",question:c,recommended:!0,default:i,options:[...Ee(t,i).map(m=>({value:m,label:m===i?`${m}${a}`:m,flag:`--platform ${m}`,recommended:m===i})),{value:"__all__",label:s("prompt","skill_all_label"),flag:"--all"}]}]}function nn(e,t=process.env){return t.CI==="true"||t.LUMIMAKER_NO_INTERACTIVE==="1"||e?.["no-interactive"]===!0}function rt(e=process.stdin,t=process.stdout){return!!(e.isTTY&&t.isTTY)}function Re(e,t){let n=t?.env??process.env,o=e?.flags;return nn(o,n)||(t?.tty??rt())?!1:!!z(n)}function on(){process.env.LUMIMAKER_AGENT="1"}function rn(e){return nn(e)?!0:process.env.LUMIMAKER_SKIP_UPDATE==="1"}function it(e){process.stdout.write(`${JSON.stringify(e,null,2)}
5
- `)}function sn(e,t){it({success:!1,code:11,command:"need-input",message:e,data:{questions:t}})}function an(e){it({success:!1,code:12,command:"login-required",message:e,data:{apply:"npx lumimaker login",hint:"\u8BF7\u8BE2\u95EE\u7528\u6237\u662F\u5426\u73B0\u5728\u767B\u5F55\u3002\u540C\u610F\u540E\u6267\u884C login\uFF08\u4F1A\u6253\u5F00\u6D4F\u89C8\u5668\uFF09\uFF0C\u5B8C\u6210\u540E\u518D\u539F\u6837\u91CD\u8DD1\u521A\u624D\u7684\u547D\u4EE4\u3002"}})}function cn(e,t){it({success:!1,code:10,command:"update-available",message:e,data:{packages:t,apply:"npx lumimaker --apply-update",skip:"npx lumimaker --skip-update <\u539F\u547D\u4EE4\u4E0E\u53C2\u6570>"}})}import Z from"node:fs";import Cr from"node:os";import _e from"node:path";import{spawnSync as Tr}from"node:child_process";import*as Ne from"@clack/prompts";import st from"node:fs";import I from"node:path";import{spawnSync as yr}from"node:child_process";import{createRequire as kr}from"node:module";import{fileURLToPath as wr}from"node:url";var ln=kr(import.meta.url),Sr=["com.apple.quarantine","com.apple.provenance","com.apple.macl"];function at(){return process.platform==="win32"?"lumimaker.exe":"lumimaker"}function Ir(){let e=process.platform,t=process.arch;return e==="darwin"&&t==="arm64"?["aarch64-apple-darwin"]:e==="darwin"&&t==="x64"?["x86_64-apple-darwin"]:e==="win32"?["x86_64-pc-windows-gnu","x86_64-pc-windows-msvc"]:e==="linux"&&t==="x64"?["x86_64-unknown-linux-gnu","x86_64-unknown-linux-musl"]:e==="linux"&&t==="arm64"?["aarch64-unknown-linux-gnu","aarch64-unknown-linux-musl"]:[]}function Ar(e){let t=at(),n=[];for(let o of["release","debug"]){for(let r of Ir())n.push(I.join(e,r,o,t));n.push(I.join(e,o,t))}return n}function de(e){try{return st.statSync(e).isFile()}catch{return!1}}function jr(e){for(let t of e)if(t){for(let n of Ar(t))if(de(n))return n}return null}function X(){let e=process.platform,t=process.arch;return e==="darwin"&&t==="arm64"?"@66rpg/lumimaker-darwin-arm64":e==="darwin"&&t==="x64"?"@66rpg/lumimaker-darwin-x64":e==="win32"?"@66rpg/lumimaker-win32-x64":null}function Er(e,t,n=process.cwd()){let o=[],r=i=>{let a=I.resolve(i);o.includes(a)||o.push(a)};r(I.join(t,"node_modules",e)),r(I.join(I.dirname(t),I.basename(e))),r(I.join(n,"node_modules",e));for(let i of[t,n]){let a=I.resolve(i);for(let c=0;c<12;c++){r(I.join(a,"node_modules",e));let m=I.dirname(a);if(m===a)break;a=m}}return o}function mn(e){let t=I.join(e,at());return de(t)?t:null}function Rr(e,t,n=process.cwd()){for(let o of Er(e,t,n)){let r=mn(o);if(r)return r}return null}function Pr(e,t,n=process.cwd()){let o=`${e}/package.json`,r=[()=>ln.resolve(o),()=>ln.resolve(o,{paths:[t,n]})];for(let i of r)try{let a=mn(I.dirname(i()));if(a)return a}catch{}return Rr(e,t,n)}function Nr(e,t=process.cwd()){let n=X();return n?Pr(n,e,t):null}function un(e){if(process.platform!=="win32")try{st.chmodSync(e,493)}catch{}if(process.platform==="darwin")for(let t of Sr)yr("xattr",["-d",t,e],{stdio:"ignore",timeout:3e3});return e}function pe(){if(process.env.CG_MAKER_CLI_BIN&&de(process.env.CG_MAKER_CLI_BIN))return process.env.CG_MAKER_CLI_BIN;if(process.env.LUMIMAKER_BIN&&de(process.env.LUMIMAKER_BIN))return process.env.LUMIMAKER_BIN;let e;try{e=q()}catch{e=I.resolve(I.dirname(wr(import.meta.url)),"..")}try{e=st.realpathSync(e)}catch{}let t=[];process.env.CARGO_TARGET_DIR&&t.push(process.env.CARGO_TARGET_DIR);let n=e;for(let a=0;a<10;a++){t.push(I.join(n,"target"));let c=I.dirname(n);if(c===n)break;n=c}let o=jr(t);if(o)return o;let r=I.join(e,at());if(de(r))return r;if(X()){let a=Nr(e);if(a)return a}return null}import fe from"picocolors";import _ from"picocolors";var k={brand:e=>_.bold(_.cyan(`[lumimaker] ${e}`)),brandTag:_.bold(_.cyan("[lumimaker]")),dim:e=>_.dim(String(e)),highlight:e=>_.bold(_.cyan(String(e))),accent:e=>_.bold(_.yellow(String(e))),path:e=>_.underline(_.gray(e)),url:e=>_.underline(_.blue(e)),badgeInfo:_.bgCyan(_.black(" INFO ")),badgeSuccess:_.bgGreen(_.black(" SUCCESS ")),badgeWarn:_.bgYellow(_.black(" WARN ")),badgeError:_.bgRed(_.white(" ERROR ")),badgeDebug:_.bgBlack(_.gray(" DEBUG ")),iconInfo:_.cyan("\u2139"),iconSuccess:_.green("\u2714"),iconWarn:_.yellow("\u26A0"),iconError:_.red("\u2716"),iconStep:_.cyan("\u279C"),iconArrow:_.gray("\u203A"),successText:e=>_.green(e),errorText:e=>_.red(e),warnText:e=>_.yellow(e),infoText:e=>_.cyan(e),border:e=>_.gray(e),borderSuccess:e=>_.green(e),borderError:e=>_.red(e)};var ct=class{_verbose=!1;setVerbose(t){this._verbose=t}isVerbose(){return this._verbose}info(t,...n){console.log(`${k.brandTag} ${k.badgeInfo} ${t}`,...n)}success(t,...n){console.log(`${k.brandTag} ${k.badgeSuccess} ${t}`,...n)}warn(t,...n){console.warn(`${k.brandTag} ${k.badgeWarn} ${fe.yellow(t)}`,...n)}error(t,...n){console.error(`${k.brandTag} ${k.badgeError} ${fe.red(t)}`,...n)}debug(t,...n){this._verbose&&console.error(`${k.brandTag} ${k.badgeDebug} ${fe.gray(t)}`,...n)}step(t){console.log(`${k.brandTag} ${fe.cyan("\u279C")} ${fe.bold(t)}`)}plain(t){console.log(t)}},h=new ct;var fn=["@66rpg/lumimaker","@66rpg/lumimaker-create","@66rpg/lumimaker-win32-x64","@66rpg/lumimaker-darwin-arm64","@66rpg/lumimaker-darwin-x64"],Dr=1440*60*1e3;function Lr(e,t){let n=e.split(".").map(i=>Number.parseInt(i,10)||0),o=t.split(".").map(i=>Number.parseInt(i,10)||0),r=Math.max(n.length,o.length);for(let i=0;i<r;i++){let a=n[i]??0,c=o[i]??0;if(a>c)return!0;if(a<c)return!1}return!1}function lt(e=Cr.homedir()){return _e.join(E(e),"update-check.json")}function Mr(e=lt()){try{let t=JSON.parse(Z.readFileSync(e,"utf8"));return!t||typeof t.checkedAt!="number"||typeof t.latest!="object"?null:t}catch{return null}}function Pe(e,t=lt()){Z.mkdirSync(_e.dirname(t),{recursive:!0}),Z.writeFileSync(t,`${JSON.stringify(e,null,2)}
6
- `)}function Or(e,t=process.cwd()){if(e==="@66rpg/lumimaker")try{let n=JSON.parse(Z.readFileSync(_e.join(q(),"package.json"),"utf8"));if(n.version)return n.version}catch{}try{return JSON.parse(Z.readFileSync(_e.join(t,"node_modules",e,"package.json"),"utf8")).version||null}catch{return null}}function dn(e,t=process.cwd(),n={}){let o=[];for(let r of fn){let i=e[r];if(!i||n[r]===i)continue;let a=Or(r,t);a&&Lr(i,a)&&o.push({name:r,current:a,latest:i})}return o}function $r(){return process.platform==="win32"?"npm.cmd":"npm"}function _n(e,t,n){let o=process.platform==="win32",r=Tr($r(),e,{cwd:t,encoding:"utf8",timeout:n,windowsHide:o,shell:o});return{status:r.status??1,stdout:r.stdout?.toString()??""}}function Fr(e=fn,t=process.cwd()){let n={};for(let o of e){let r=_n(["view",o,"version"],t,2e3),i=r.stdout.trim();r.status===0&&i&&(n[o]=i.split(`
7
- `)[0].trim())}return n}function Vr(){let e=X();return e?[e]:[]}async function gn(e){if(rn(e.flags))return"continue";let t=e.cwd??process.cwd(),n=e.now??Date.now(),o=e.ppid??process.ppid,r=lt(),i=Mr(r)??{checkedAt:0,latest:{}};if(n-i.checkedAt>=Dr){let l=(e.fetch??Fr)();i={...i,checkedAt:n,latest:{...i.latest,...l}},Pe(i,r)}if(e.flags["apply-update"]===!0)return pn(i.latest,t);if(e.flags["skip-update"]===!0){let l={...i.declined};for(let u of dn(i.latest,t))l[u.name]=u.latest;return Pe({...i,declined:l,promptedPpid:o},r),"continue"}let a=dn(i.latest,t,i.declined??{});if(a.length===0)return"continue";if(Re({flags:e.flags}))return cn(s("kit","update_available"),a),"agent-block";if(!e.isInteractive||i.promptedPpid===o)return"continue";let c=a.map(l=>`${l.name} ${l.current} \u2192 ${l.latest}`).join(`
1
+ import G from"picocolors";import{spawn as Oo}from"node:child_process";import A from"node:fs";import $o from"node:os";import V from"node:path";var $t={$schema:"http://json-schema.org/draft-07/schema#",description:"lumimaker CLI \u8FD4\u56DE\u6587\u6848\u5B57\u5178\uFF08\u5305\u542B code \u7801\u4E0E\u6CE8\u91CA\u6587\u6848\uFF09",whoami:{title_logged_in:{code:"",text:"\u8D26\u53F7\u767B\u5F55\u4FE1\u606F",comment:"whoami \u67E5\u770B\u5DF2\u767B\u5F55\u8D26\u53F7\u4FE1\u606F\u65F6\u7684\u5361\u7247\u4E3B\u6807\u9898"},title_expired:{code:"2003",text:"\u767B\u5F55\u5DF2\u5931\u6548",comment:"whoami \u672C\u5730\u51ED\u636E\u8FC7\u671F\u65F6\u7684\u8B66\u544A\u5361\u7247\u6807\u9898"},title_offline:{code:"9000",text:"\u79BB\u7EBF\u6A21\u5F0F",comment:"whoami \u672C\u5730\u6709\u51ED\u636E\u4F46\u7F51\u7EDC\u4E0D\u53EF\u8FBE\u65F6\u7684\u5361\u7247\u6807\u9898"},title_not_logged_in:{code:"2001",text:"\u672A\u767B\u5F55",comment:"whoami \u5C1A\u672A\u767B\u5F55\u65F6\u7684\u63D0\u793A\u5361\u7247\u6807\u9898"},status_expired:{code:"2003",text:"\u51ED\u8BC1\u5DF2\u8FC7\u671F",comment:"\u51ED\u8BC1\u8FC7\u671F\u72B6\u6001\u63CF\u8FF0"},hint_relogin:{code:"2001",text:"\u8BF7\u6267\u884C npx lumimaker login \u91CD\u65B0\u767B\u5F55",comment:"\u91CD\u65B0\u767B\u5F55\u5F15\u5BFC\u5EFA\u8BAE"},status_offline:{code:"9000",text:"\u672C\u5730\u6709\u767B\u5F55\u51ED\u8BC1\uFF0C\u4F46\u5F53\u524D\u8FDE\u4E0D\u4E0A\u5E73\u53F0",comment:"\u79BB\u7EBF\u72B6\u6001\u539F\u56E0\u63CF\u8FF0"},hint_check_network:{code:"9000",text:"\u8BF7\u68C0\u67E5\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5",comment:"\u79BB\u7EBF\u72B6\u6001\u89E3\u51B3\u5EFA\u8BAE"},status_not_logged_in:{code:"2001",text:"\u5C1A\u672A\u767B\u5F55\u6258\u7BA1\u5E73\u53F0",comment:"\u672A\u767B\u5F55\u72B6\u6001\u63CF\u8FF0"},hint_login_now:{code:"2001",text:"\u8BF7\u6267\u884C npx lumimaker login \u5F00\u59CB\u767B\u5F55\u6388\u6743",comment:"\u672A\u767B\u5F55\u65F6\u7684\u767B\u5F55\u5F15\u5BFC\u5EFA\u8BAE"},label_nickname:{code:"",text:"\u7528\u6237\u6635\u79F0",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_uid:{code:"",text:"\u7528\u6237 ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_verified:{code:"",text:"\u5B9E\u540D\u8BA4\u8BC1",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},val_verified_yes:{code:"",text:"\u5DF2\u5B9E\u540D\u8BA4\u8BC1",comment:"\u5DF2\u5B8C\u6210\u5B9E\u540D\u8BA4\u8BC1\u72B6\u6001"},val_verified_no:{code:"",text:"\u672A\u8BA4\u8BC1 (\u90E8\u5206\u6743\u9650\u53D7\u9650)",comment:"\u672A\u5B8C\u6210\u5B9E\u540D\u8BA4\u8BC1\u72B6\u6001"},label_vip:{code:"",text:"\u4F1A\u5458\u7B49\u7EA7",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_admin:{code:"",text:"\u7BA1\u7406\u5458",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_sauthor:{code:"",text:"\u7B7E\u7EA6\u4F5C\u8005",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},val_yes:{code:"",text:"\u662F",comment:"\u5E03\u5C14\u771F\u503C\u6587\u6848"},label_lumi_username:{code:"",text:"\u7528\u6237\u540D",comment:"\u5E7B\u5149 profile.username"},label_display_role:{code:"",text:"\u8EAB\u4EFD",comment:"\u5E7B\u5149 profile.display_role_name"},label_lumi_roles:{code:"",text:"\u89D2\u8272",comment:"\u5E7B\u5149 profile.roles \u7684\u5C55\u793A\u540D"},role_user:{code:"",text:"\u666E\u901A\u7528\u6237",comment:"lumi \u89D2\u8272 user \u7684\u4E2D\u6587\u540D"},role_unknown:{code:"",text:"\u672A\u77E5",comment:"\u672A\u8BC6\u522B\u7684 lumi \u89D2\u8272"},role_author:{code:"",text:"\u4F5C\u8005",comment:"lumi \u89D2\u8272 author \u7684\u4E2D\u6587\u540D"},role_signed_author:{code:"",text:"\u7B7E\u7EA6\u4F5C\u8005",comment:"lumi \u89D2\u8272 signed_author \u7684\u4E2D\u6587\u540D"},role_signed_template_author:{code:"",text:"\u7B7E\u7EA6\u6A21\u677F\u4F5C\u8005",comment:"lumi \u89D2\u8272 signed_template_author \u7684\u4E2D\u6587\u540D"},role_moderator:{code:"",text:"\u7248\u4E3B",comment:"lumi \u89D2\u8272 moderator \u7684\u4E2D\u6587\u540D"},lumi_not_ready:{code:"",text:"\u53D1\u5E03\u5E73\u53F0\u672A\u5C31\u7EEA\uFF1A\u8BF7\u8FD0\u884C npx lumimaker login \u540E\u518D\u53D1\u5E03",comment:"SSO \u5DF2\u767B\u5F55\u4F46 Lumi profile \u5931\u8D25"},label_expires_at:{code:"",text:"\u51ED\u8BC1\u6709\u6548\u671F\u81F3",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},footer_logged_in:{code:"",text:"\u63D0\u793A\uFF1A\u767B\u5F55\u51ED\u636E\u5DF2\u5B89\u5168\u5B58\u50A8\u4E8E\u7CFB\u7EDF\u672C\u5730\u5BC6\u94A5\u73AF\u4E2D\u3002",comment:"\u767B\u5F55\u5361\u7247\u5E95\u90E8\u5B89\u5168\u63D0\u793A"}},publish:{title_success:{code:"",text:"\u4F5C\u54C1\u53D1\u7248\u6210\u529F",comment:"\u4F5C\u54C1\u53D1\u5E03\u6210\u529F\u5361\u7247\u6807\u9898"},label_game_id:{code:"",text:"\u4F5C\u54C1ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E\uFF08\u5217\u8868\u6DF7\u6392\u65F6\u7528\uFF09"},label_game_id_official:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1ID",comment:"\u6B63\u5F0F\u7248\u4F5C\u54C1\u6210\u529F\u5361\u7247"},label_game_id_demo:{code:"",text:"\u8BD5\u73A9ID",comment:"demo \u7248\u4F5C\u54C1\u6210\u529F\u5361\u7247"},label_release_version:{code:"",text:"\u53D1\u5E03\u7248\u672C",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_version_id:{code:"",text:"\u7248\u672C ID",comment:"\u4F5C\u54C1\u53D1\u7248\u6210\u529F\u5361\u7247"},label_version_no:{code:"",text:"\u7248\u672C\u5E8F\u53F7",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_variant_type:{code:"",text:"\u7C7B\u578B",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},val_demo:{code:"",text:"demo\u7248\u4F5C\u54C1\uFF08demo\uFF09",comment:"demo \u7C7B\u578B"},val_official:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"\u6B63\u5F0F\u7248\u7C7B\u578B"},val_derived:{code:"",text:"\u884D\u751F",comment:"\u884D\u751F\u53D8\u4F53\u7C7B\u578B"},label_parent_game_id:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1ID",comment:"demo \u6302\u63A5\u7684\u6B63\u5F0F\u7248"},label_package_size:{code:"",text:"\u4F5C\u54C1\u5305\u5927\u5C0F",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_post_id:{code:"",text:"\u4F5C\u54C1\u5E16\u5B50ID",comment:"versions/create \u56DE\u5305\u7684\u5E16\u5B50 id"},label_page:{code:"",text:"\u5E16\u5B50",comment:"post_status === 4 \u5DF2\u516C\u5F00\u5E16"},label_page_draft:{code:"",text:"\u5E16\u5B50\u8349\u7A3F\uFF08\u786E\u8BA4\u540E\u624D\u4F1A\u516C\u5F00\uFF09",comment:"post_status \u975E 4"},footer_success:{code:"",text:"dist/ \u9759\u6001\u5305\u5DF2\u6210\u529F\u6253\u5305\u8F6C\u7801\u5E76\u4E0A\u4F20\u81F3\u6258\u7BA1\u5E73\u53F0\u3002",comment:"\u4F5C\u54C1\u53D1\u5E03\u6210\u529F\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},title_passed:{code:"",text:"\u4F5C\u54C1\u53D1\u7248\u6210\u529F",comment:"\u4F5C\u54C1\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u6807\u9898"},title_reviewing:{code:"",text:"\u4F5C\u54C1\u5DF2\u63D0\u4EA4\u5BA1\u6838",comment:"\u4F5C\u54C1\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u6807\u9898"},title_rejected:{code:"",text:"\u4F5C\u54C1\u5BA1\u6838\u88AB\u62D2\u7EDD",comment:"\u4F5C\u54C1\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u6807\u9898"},footer_passed:{code:"",text:"\u7248\u672C\u5DF2\u901A\u8FC7\u5BA1\u6838\u3002\u5E16\u5B50\u662F\u5426\u516C\u5F00\u3001\u4F5C\u54C1\u662F\u5426\u4E0A\u67B6\uFF0C\u8BF7\u4EE5\u7F51\u9875\u72B6\u6001\u4E3A\u51C6\u3002",comment:"\u4F5C\u54C1\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_reviewing:{code:"",text:"\u5BA1\u6838\u4E2D\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u5BA1\u6838\u7ED3\u679C\u3002",comment:"\u4F5C\u54C1\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_rejected:{code:"",text:"\u5BA1\u6838\u88AB\u62D2\u7EDD\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u8BE6\u60C5\u3002",comment:"\u4F5C\u54C1\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"}},publish_template:{title_success:{code:"",text:"\u6A21\u677F\u53D1\u7248\u6210\u529F",comment:"\u6A21\u677F\u53D1\u5E03\u6210\u529F\u5361\u7247\u6807\u9898"},label_template_id:{code:"",text:"\u6A21\u677F ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_template_name:{code:"",text:"\u6A21\u677F\u540D\u79F0",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_slug:{code:"",text:"\u82F1\u6587\u77ED\u540D",comment:"\u5F00\u5DE5\u7A0B\u5F15\u7528\u540E\u534A\u6BB5\uFF0C\u4E0D\u662F\u5E73\u53F0\u6A21\u677F\u540D name"},label_create_pull:{code:"",text:"\u4ED6\u4EBA\u62C9\u53D6",comment:"\u53D1\u7248\u540E\u7ED9\u51FA lumimaker-create \u547D\u4EE4\uFF0C\u987B\u7528 \u7528\u6237\u540D/slug"},label_version:{code:"",text:"\u7248\u672C\u53F7",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_revision_id:{code:"",text:"\u6A21\u677F\u7248\u672C ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_data_ver:{code:"",text:"\u6570\u636E\u5305\u7248\u672C",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_data_id:{code:"",text:"\u6570\u636E\u5305 ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_data_summary:{code:"",text:"\u8D44\u6E90\u8BF4\u660E",comment:"\u6570\u636E\u5305 summary \u5361\u7247\u6807\u7B7E"},label_post_id:{code:"",text:"\u5173\u8054\u5E16",comment:"versions/create \u56DE\u5305\u7684\u5E16\u5B50 id"},label_page:{code:"",text:"\u5E16\u5B50",comment:"post_status === 4 \u5DF2\u516C\u5F00\u5E16"},label_page_draft:{code:"",text:"\u5E16\u5B50\u8349\u7A3F\uFF08\u786E\u8BA4\u540E\u624D\u4F1A\u516C\u5F00\uFF09",comment:"post_status \u975E 4"},footer_success:{code:"",text:"\u6A21\u677F\u5DF2\u4E0A\u4F20\u5230\u5E73\u53F0\u3002\u8BF7\u628A .lumimaker/ \u4E00\u5E76\u63D0\u4EA4\u5230 git\u3002",comment:"\u6A21\u677F\u53D1\u7248\u6210\u529F\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},title_passed:{code:"",text:"\u6A21\u677F\u53D1\u7248\u6210\u529F",comment:"\u6A21\u677F\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u6807\u9898"},title_reviewing:{code:"",text:"\u6A21\u677F\u5DF2\u63D0\u4EA4\u5BA1\u6838",comment:"\u6A21\u677F\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u6807\u9898"},title_rejected:{code:"",text:"\u6A21\u677F\u5BA1\u6838\u88AB\u62D2\u7EDD",comment:"\u6A21\u677F\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u6807\u9898"},footer_passed:{code:"",text:"\u7248\u672C\u5DF2\u901A\u8FC7\u5BA1\u6838\u3002\u5E16\u5B50\u662F\u5426\u516C\u5F00\u3001\u6A21\u677F\u662F\u5426\u4E0A\u67B6\uFF0C\u8BF7\u4EE5\u7F51\u9875\u72B6\u6001\u4E3A\u51C6\u3002",comment:"\u6A21\u677F\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_reviewing:{code:"",text:"\u5BA1\u6838\u4E2D\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u5BA1\u6838\u7ED3\u679C\u3002",comment:"\u6A21\u677F\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_rejected:{code:"",text:"\u5BA1\u6838\u88AB\u62D2\u7EDD\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u8BE6\u60C5\u3002",comment:"\u6A21\u677F\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},title_data_success:{code:"",text:"\u6570\u636E\u5305\u5DF2\u4E0A\u4F20",comment:"\u53EA\u53D1\u6570\u636E\u5305\u6210\u529F\u5361\u7247\u6807\u9898"},footer_data_success:{code:"",text:"\u8FD9\u6B21\u53EA\u4E0A\u4F20\u4E86\u6570\u636E\u5305\uFF0C\u6CA1\u6709\u53D1\u5E03\u65B0\u6A21\u677F\u7248\u672C\uFF0C\u4E5F\u6CA1\u6709\u4FEE\u6539\u5DF2\u6709\u6A21\u677F\u7248\u672C\u7684\u7ED1\u5B9A\u3002\u5F00\u5DE5\u7A0B\u4E0D\u5E26\u65D7\u6807\u65F6\u4E0B\u8F7D\u7684\u662F\u7248\u672C\u4E0A\u5DF2\u7ECF\u7ED1\u5B9A\u7684\u6570\u636E\u5305\uFF1B\u8981\u4E0B\u8FD9\u4E00\u4EFD\u5C1A\u672A\u7ED1\u5B9A\u7684\u5305\uFF0C\u8BF7\u52A0\u4E0A --with-assets \u548C\u6570\u636E\u5305 ID\u3002\u82E5\u8981\u8BA9\u65B0\u7684\u6A21\u677F\u7248\u672C\u7ED1\u5B9A\u8FD9\u4EFD\u5305\uFF0C\u8BF7\u5148\u4FEE\u6539 package.json.version\uFF0C\u518D\u53D1\u5E03\u6A21\u677F\u3002",comment:"\u53EA\u53D1\u6570\u636E\u5305\u6210\u529F\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"}},publish_project:{title_success:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u7248\u6210\u529F",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u7248\u6210\u529F\u5361\u7247\u6807\u9898"},label_project_id:{code:"",text:"\u5DE5\u7A0B ID",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_project_name:{code:"",text:"\u5DE5\u7A0B\u540D\u79F0",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_release_version:{code:"",text:"\u53D1\u5E03\u7248\u672C",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_version_id:{code:"",text:"\u7248\u672C ID",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u7248\u6210\u529F\u5361\u7247"},label_post_id:{code:"",text:"\u5173\u8054\u5E16",comment:"versions/create \u56DE\u5305\u7684\u5E16\u5B50 id"},label_package_size:{code:"",text:"\u6E90\u7801\u5305\u5927\u5C0F",comment:"\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_page:{code:"",text:"\u5E16\u5B50",comment:"\u5DF2\u516C\u5F00\u5E16"},label_page_draft:{code:"",text:"\u5E16\u5B50\u8349\u7A3F\uFF08\u786E\u8BA4\u540E\u624D\u4F1A\u516C\u5F00\uFF09",comment:"post_status \u975E 4"},footer_success:{code:"",text:"\u6E90\u7801\u5305\u5DF2\u4E0A\u4F20\uFF0C\u7248\u672C\u5DF2\u81EA\u52A8\u63D0\u4EA4\u5BA1\u6838\uFF1B\u5DF2\u540C\u6B65\u66F4\u65B0 .lumimaker/project.json\u3002",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u7248\u6210\u529F\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},title_passed:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u7248\u6210\u529F",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u6807\u9898"},title_reviewing:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u5DF2\u63D0\u4EA4\u5BA1\u6838",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u6807\u9898"},title_rejected:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u5BA1\u6838\u88AB\u62D2\u7EDD",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u6807\u9898"},footer_passed:{code:"",text:"\u7248\u672C\u5DF2\u901A\u8FC7\u5BA1\u6838\u3002\u5E16\u5B50\u662F\u5426\u516C\u5F00\u3001\u5DE5\u7A0B\u662F\u5426\u4E0A\u67B6\uFF0C\u8BF7\u4EE5\u7F51\u9875\u72B6\u6001\u4E3A\u51C6\u3002",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4E14\u5BA1\u6838\u5DF2\u901A\u8FC7\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_reviewing:{code:"",text:"\u5BA1\u6838\u4E2D\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u5BA1\u6838\u7ED3\u679C\u3002",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4F46\u5BA1\u6838\u4E2D\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"},footer_rejected:{code:"",text:"\u5BA1\u6838\u88AB\u62D2\u7EDD\uFF0C\u8BF7\u5230\u7F51\u9875\u67E5\u770B\u8BE6\u60C5\u3002",comment:"\u5F00\u6E90\u5DE5\u7A0B\u53D1\u5E03\u4F46\u5BA1\u6838\u88AB\u62D2\u7EDD\u5361\u7247\u5E95\u90E8\u6CE8\u91CA"}},templates:{table_title:{code:"",text:"\u6211\u7684\u6A21\u677F\u5E16\u5B50\u5217\u8868\uFF1A",comment:"\u6A21\u677F\u5217\u8868\u8868\u683C\u4E3B\u6807\u9898"},empty_list:{code:"",text:"\u6682\u65E0\u6A21\u677F\u6570\u636E",comment:"\u5217\u8868\u4E3A\u7A7A\u65F6\u7684\u5360\u4F4D\u8BF4\u660E"},col_template_id:{code:"",text:"\u6A21\u677F ID",comment:"\u8868\u683C\u5217\u540D"},col_template_name:{code:"",text:"\u6A21\u677F\u540D\u79F0",comment:"\u8868\u683C\u5217\u540D"},col_latest_version:{code:"",text:"\u6700\u65B0\u7248\u672C",comment:"\u8868\u683C\u5217\u540D"},query_card_title:{code:"",text:"\u6A21\u677F\u8BE6\u60C5",comment:"\u67E5\u8BE2\u6A21\u677F\u8BE6\u60C5\u5361\u7247\u6807\u9898"},versions_title:{code:"",text:"\u6A21\u677F\u53D1\u5E03\u7248\u672C\u5386\u53F2",comment:"\u6A21\u677F\u7248\u672C\u5217\u8868\u6807\u9898"},data_packages_title:{code:"",text:"\u6A21\u677F\u7ED1\u5B9A\u7684\u6570\u636E\u5305\u5217\u8868",comment:"\u6A21\u677F\u6570\u636E\u5305\u5217\u8868\u6807\u9898"},col_data_id:{code:"",text:"\u6570\u636E\u5305 ID",comment:"\u6A21\u677F\u6570\u636E\u5305\u8868\u683C\u5217\u540D"},col_data_ver:{code:"",text:"\u6570\u636E\u5305\u7248\u672C",comment:"\u6A21\u677F\u6570\u636E\u5305\u8868\u683C\u5217\u540D"},col_data_summary:{code:"",text:"\u8BF4\u660E",comment:"\u6A21\u677F\u6570\u636E\u5305 summary \u5217\u540D"},empty_data:{code:"",text:"\u6682\u65E0\u6570\u636E\u5305",comment:"\u6A21\u677F\u6570\u636E\u5305\u5217\u8868\u4E3A\u7A7A\u65F6\u7684\u5360\u4F4D\u8BF4\u660E"}},games:{table_title:{code:"",text:"\u6211\u7684\u4F5C\u54C1\u5E16\u5B50\u5217\u8868\uFF1A",comment:"\u4F5C\u54C1\u5217\u8868\u8868\u683C\u4E3B\u6807\u9898"},empty_list:{code:"",text:"\u6682\u65E0\u4F5C\u54C1\u6570\u636E",comment:"\u5217\u8868\u4E3A\u7A7A\u65F6\u7684\u5360\u4F4D\u8BF4\u660E"},col_game_id:{code:"",text:"\u4F5C\u54C1ID",comment:"\u8868\u683C\u5217\u540D"},col_game_name:{code:"",text:"\u4F5C\u54C1\u540D\u79F0",comment:"\u8868\u683C\u5217\u540D"},col_variant:{code:"",text:"\u7C7B\u578B",comment:"\u8868\u683C\u5217\u540D"},col_latest_version:{code:"",text:"\u6700\u65B0\u7248\u672C",comment:"\u8868\u683C\u5217\u540D"},val_demo:{code:"",text:"demo",comment:"\u8868\u683C\u5217\u5355\u5143\u683C\u5185\u6587\u672C"},val_official:{code:"",text:"\u4F5C\u54C1",comment:"\u8868\u683C\u5217\u5355\u5143\u683C\u5185\u6587\u672C"},val_derived:{code:"",text:"\u884D\u751F",comment:"\u8868\u683C\u5217\u5355\u5143\u683C\u5185\u6587\u672C"},query_card_title:{code:"",text:"\u4F5C\u54C1\u8BE6\u60C5",comment:"\u67E5\u8BE2\u4F5C\u54C1\u8BE6\u60C5\u5361\u7247\u6807\u9898"},versions_title:{code:"",text:"\u4F5C\u54C1\u53D1\u5E03\u7248\u672C\u5386\u53F2",comment:"\u4F5C\u54C1\u7248\u672C\u5217\u8868\u6807\u9898"}},projects:{table_title:{code:"",text:"\u6211\u7684\u5F00\u6E90\u5DE5\u7A0B\u5217\u8868\uFF1A",comment:"\u5F00\u6E90\u5DE5\u7A0B\u5217\u8868\u8868\u683C\u4E3B\u6807\u9898"},empty_list:{code:"",text:"\u6682\u65E0\u5F00\u6E90\u5DE5\u7A0B\u6570\u636E",comment:"\u5217\u8868\u4E3A\u7A7A\u65F6\u7684\u5360\u4F4D\u8BF4\u660E"},col_project_id:{code:"",text:"\u5DE5\u7A0B ID",comment:"\u8868\u683C\u5217\u540D"},col_project_name:{code:"",text:"\u5DE5\u7A0B\u540D\u79F0",comment:"\u8868\u683C\u5217\u540D"},col_latest_version:{code:"",text:"\u6700\u65B0\u7248\u672C",comment:"\u8868\u683C\u5217\u540D"},query_card_title:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u8BE6\u60C5",comment:"\u67E5\u8BE2\u5F00\u6E90\u5DE5\u7A0B\u8BE6\u60C5\u5361\u7247\u6807\u9898"},versions_title:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u7248\u672C\u5386\u53F2",comment:"\u5F00\u6E90\u5DE5\u7A0B\u7248\u672C\u5217\u8868\u6807\u9898"}},versions:{col_version_id:{code:"",text:"\u7248\u672C ID",comment:"\u7248\u672C\u5386\u53F2\u8868\u683C\u5217\u540D"},col_version:{code:"",text:"\u7248\u672C\u53F7",comment:"\u7248\u672C\u5386\u53F2\u8868\u683C\u5217\u540D"},col_status:{code:"",text:"\u5BA1\u6838",comment:"\u7248\u672C\u5386\u53F2\u8868\u683C\u5217\u540D"},col_published_at:{code:"",text:"\u901A\u8FC7\u65F6\u95F4",comment:"\u7248\u672C\u901A\u8FC7\u65F6\u95F4\uFF08published_at\uFF0C\u672A\u901A\u8FC7\u663E\u793A -\uFF09"},col_changelog:{code:"",text:"\u66F4\u65B0\u8BF4\u660E",comment:"\u7248\u672C\u5386\u53F2\u8868\u683C\u5217\u540D"},col_post:{code:"",text:"\u5173\u8054\u5E16",comment:"\u7248\u672C\u5386\u53F2\u8868\u683C\uFF1Apost_id \u4E0E\u516C\u5F00\u72B6\u6001"},post_public:{code:"",text:"\u5DF2\u516C\u5F00",comment:"post_status === 4"},post_draft:{code:"",text:"\u672A\u516C\u5F00",comment:"post_status \u975E 4"},status_draft:{code:"",text:"\u8349\u7A3F",comment:"\u7248\u672C status=1"},status_machine:{code:"",text:"\u673A\u5BA1\u4E2D",comment:"\u7248\u672C status=2"},status_human:{code:"",text:"\u4EBA\u5BA1\u4E2D",comment:"\u7248\u672C status=3"},status_passed:{code:"",text:"\u5DF2\u901A\u8FC7",comment:"\u7248\u672C status=4"},status_rejected:{code:"",text:"\u5DF2\u62D2\u7EDD",comment:"\u7248\u672C status=5"},status_unknown:{code:"",text:"\u672A\u77E5",comment:"\u7248\u672C status \u975E 1\u20135"},empty_versions:{code:"",text:"\u6682\u65E0\u7248\u672C\u8BB0\u5F55",comment:"\u7248\u672C\u5386\u53F2\u4E3A\u7A7A\u65F6\u7684\u5360\u4F4D\u8BF4\u660E"}},shelf:{action_update:{code:"",text:"\u66F4\u65B0",comment:"\u5E16\u5B50\u64CD\u4F5C\u884C\u4E3A\u63CF\u8FF0"},type_template:{code:"",text:"\u6A21\u677F",comment:"\u5E16\u5B50\u5B9E\u4F53\u7C7B\u578B"},type_game:{code:"",text:"\u4F5C\u54C1",comment:"\u5E16\u5B50\u5B9E\u4F53\u7C7B\u578B"},type_project:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B",comment:"\u5E16\u5B50\u5B9E\u4F53\u7C7B\u578B"},label_community_post:{code:"",text:"\u5173\u8054\u5E16",comment:"\u5E16\u5B50\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},card_title_shelf_updated:{code:"",text:"\u5E16\u5B50\u66F4\u65B0\u6210\u529F",comment:"\u5E16\u5B50\u66F4\u65B0\u6210\u529F\u5361\u7247\u6807\u9898\u540E\u7F00"},label_shelf:{code:"",text:"\u4E0A\u4E0B\u67B6",comment:"shelf_status \u4E0A\u67B6/\u4E0B\u67B6\uFF0C\u4E0D\u8981\u548C\u793E\u533A\u5E16 post_url \u6DF7\u6807\u6210\u5E16\u5B50"},val_shelf_on:{code:"",text:"\u4E0A\u67B6",comment:"shelf_status=1"},val_shelf_off:{code:"",text:"\u4E0B\u67B6",comment:"shelf_status=2"},label_changelog:{code:"",text:"\u66F4\u65B0\u8BF4\u660E",comment:"\u5E16\u5B50\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"},label_version_id:{code:"",text:"\u7248\u672C ID",comment:"\u5E16\u5B50\u5361\u7247\u5C55\u793A\u5B57\u6BB5\u6807\u7B7E"}},error:{title:{code:"",text:"\u64CD\u4F5C\u672A\u5B8C\u6210",comment:"\u9519\u8BEF\u5361\u7247\u901A\u7528\u4E3B\u6807\u9898"},label_code:{code:"",text:"\u9519\u8BEF\u4EE3\u7801",comment:"\u9519\u8BEF\u5361\u7247\u5B57\u6BB5\u6807\u7B7E"},label_detail:{code:"",text:"\u9519\u8BEF\u8BE6\u60C5",comment:"\u9519\u8BEF\u5361\u7247\u5B57\u6BB5\u6807\u7B7E"},label_server_code:{code:"",text:"\u5E73\u53F0\u72B6\u6001\u7801",comment:"\u63A5\u53E3\u56DE\u5305 status / code\uFF0C\u539F\u6837\u5C55\u793A"},label_server_msg:{code:"",text:"\u5E73\u53F0\u9519\u8BEF\u4FE1\u606F",comment:"\u63A5\u53E3\u56DE\u5305 msg\uFF0C\u539F\u6837\u5C55\u793A"},label_hint:{code:"",text:"\u89E3\u51B3\u5EFA\u8BAE",comment:"\u9519\u8BEF\u5361\u7247\u5B57\u6BB5\u6807\u7B7E"},label_log_path:{code:"",text:"\u8BE6\u7EC6\u65E5\u5FD7",comment:"\u9519\u8BEF\u5361\u7247\u5B57\u6BB5\u6807\u7B7E"},footer:{code:"",text:"\u5982\u9700\u8FDB\u4E00\u6B65\u5E2E\u52A9\uFF0C\u8BF7\u8054\u7CFB\u5BA2\u670D{contact}\u3002",comment:"\u9519\u8BEF\u5361\u7247\u5E95\u90E8\u6CE8\u91CA\uFF1B{contact} \u4E3A\u90AE\u7BB1/QQ \u6216\u7A7A"},default_message:{code:"",text:"\u672A\u77E5\u9519\u8BEF",comment:"\u7F3A\u7701\u9519\u8BEF\u6587\u6848"}},error_codes:{"1001":{code:"1001",text:"\u8F93\u5165\u53C2\u6570\u65E0\u6548\uFF0C\u8BF7\u68C0\u67E5\u547D\u4EE4\u53C2\u6570\u3002",comment:"\u547D\u4EE4\u884C\u53C2\u6570\u4E0D\u7B26\u5408\u89C4\u8303"},"1001_missing_dist":{code:"1001",text:"\u8BF7\u5148\u5728\u5DE5\u7A0B\u76EE\u5F55\u8FD0\u884C npm run build \u751F\u6210 dist/index.html\u3002",comment:"\u53D1\u5E03\u4F5C\u54C1\u7F3A\u5C11 dist/ \u4EA7\u7269\u65F6\u7684\u89E3\u51B3\u5EFA\u8BAE"},"1001_missing_script":{code:"1001",text:"\u5F53\u524D\u5DE5\u7A0B\u7684 package.json \u7F3A\u5C11\u5FC5\u8981\u811A\u672C\uFF08\u5982 scripts.validate\u3001scripts.dev:demo\u3001scripts.build:demo\uFF09\u3002\u8BF7\u8865\u4E0A\u540E\u518D\u53D1\u5E03\u3002",comment:"\u53D1\u5E03\u6A21\u677F\u7F3A\u5C11\u89C4\u8303\u811A\u672C\u65F6\u7684\u89E3\u51B3\u5EFA\u8BAE"},"1001_no_approved":{code:"1001",text:"\u8FD9\u4E2A\u6A21\u677F\u8FD8\u6CA1\u6709\u5BA1\u6838\u901A\u8FC7\u7684\u7248\u672C\uFF0C\u4E0D\u80FD\u5F00\u5DE5\u7A0B\u3002\u8BF7\u6362\u5DF2\u8FC7\u5BA1\u7684\u6A21\u677F\uFF0C\u6216\u7B49\u5BA1\u6838\u901A\u8FC7\u540E\u518D\u8BD5\u3002\u672C\u5730\u76EE\u5F55\u53EF\u7528 --from-dir\u3002",comment:"\u5B89\u88C5\u6A21\u677F\u65F6\u6CA1\u6709\u5DF2\u901A\u8FC7\u5BA1\u6838\u7684\u7248\u672C"},"1003_checksum":{code:"1003",text:"\u6A21\u677F\u5305\u6821\u9A8C\u4E0D\u5339\u914D\uFF0C\u53EF\u80FD\u662F\u4E91\u7AEF\u6587\u4EF6\u5F02\u5E38\u6216\u7F51\u7EDC\u4E0B\u8F7D\u53D7\u635F\uFF0C\u8BF7\u91CD\u8BD5\u6216\u8054\u7CFB\u5BA2\u670D{contact}\u91CD\u65B0\u53D1\u7248\u3002",comment:"\u6A21\u677F\u5B89\u88C5\u5305\u54C8\u5E0C\u6821\u9A8C\u5931\u8D25\u65F6\u7684\u89E3\u51B3\u5EFA\u8BAE"},"1002":{code:"1002",text:"\u6587\u4EF6\u8BFB\u53D6\u6216\u5199\u5165\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u6587\u4EF6\u6216\u76EE\u5F55\u6743\u9650\u3002",comment:"\u672C\u5730\u78C1\u76D8\u8BFB\u5199\u5F02\u5E38"},"2001":{code:"2001",text:"\u8BF7\u5148\u8FD0\u884C npx lumimaker login \u5B8C\u6210\u8D26\u53F7\u6388\u6743\u3002",comment:"\u5C1A\u672A\u767B\u5F55\u6216\u767B\u5F55\u6001\u5DF2\u88AB\u670D\u52A1\u7AEF\u540A\u9500"},"2002":{code:"2002",text:"\u767B\u5F55\u6388\u6743\u6D41\u7A0B\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5\u3002",comment:"OAuth \u767B\u5F55\u672A\u6210\u529F\u5B8C\u6210"},"2003":{code:"2003",text:"\u767B\u5F55\u51ED\u8BC1\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55\u3002",comment:"\u7528\u6237 refresh_token \u8D85\u8FC7\u6709\u6548\u671F"},"2004":{code:"2004",text:"\u6388\u6743\u8F6E\u8BE2\u8D85\u65F6\uFF0C\u8BF7\u91CD\u65B0\u53D1\u8D77\u767B\u5F55\u3002",comment:"\u6253\u5F00\u6D4F\u89C8\u5668\u8D85\u8FC7 5 \u5206\u949F\u672A\u5B8C\u6210\u767B\u5F55"},"8000":{code:"8000",text:"\u5E73\u53F0\u670D\u52A1\u7EF4\u62A4\u4E2D\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",comment:"\u670D\u52A1\u7AEF\u7EF4\u62A4\u505C\u673A"},"8001":{code:"8001",text:"\u8BF7\u6C42\u7F3A\u5C11\u5FC5\u8981\u53C2\u6570\uFF0C\u8BF7\u68C0\u67E5\u8F93\u5165\u3002",comment:"\u670D\u52A1\u7AEF\u7F3A\u5C11\u5FC5\u4F20\u5B57\u6BB5"},"8002":{code:"8002",text:"\u8BF7\u6C42\u53C2\u6570\u4E0D\u5408\u6CD5\uFF0C\u8BF7\u68C0\u67E5\u4F20\u5165\u7684\u503C\u3002",comment:"\u670D\u52A1\u7AEF\u53C2\u6570\u6821\u9A8C\u672A\u901A\u8FC7"},"8004":{code:"8004",text:"\u5F53\u524D\u64CD\u4F5C\u9700\u8981\u5BF9\u5E94\u4F5C\u8005\u6216\u7B7E\u7EA6\u89D2\u8272\u6743\u9650\uFF0C\u8BF7\u786E\u8BA4\u8D26\u53F7\u6743\u9650\u540E\u91CD\u8BD5\u3002",comment:"\u8D26\u53F7\u89D2\u8272\u6743\u9650\u4E0D\u8DB3\uFF08\u5982\u672A\u7B7E\u7EA6\uFF09"},"8005":{code:"8005",text:"\u5E73\u53F0\u670D\u52A1\u51FA\u73B0\u5185\u90E8\u9519\u8BEF\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",comment:"\u670D\u52A1\u7AEF\u7CFB\u7EDF\u5185\u90E8\u5F02\u5E38"},"8006":{code:"8006",text:"\u4F1A\u8BDD\u521B\u5EFA\u5931\u8D25\uFF0C\u8BF7\u5C1D\u8BD5\u91CD\u65B0\u767B\u5F55\u3002",comment:"\u6362\u53D6 session \u5931\u8D25"},"8007":{code:"8007",text:"\u767B\u5F55\u4F1A\u8BDD\u5DF2\u5931\u6548\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55\u3002",comment:"\u5F53\u524D session \u65E0\u6548"},"8400":{code:"8400",text:"\u670D\u52A1\u5668\u6846\u67B6\u9519\u8BEF\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",comment:"\u7F51\u5173\u6216\u5E95\u5C42\u6846\u67B6\u9519\u8BEF"},"8999":{code:"8999",text:"\u670D\u52A1\u5668\u8FD4\u56DE\u672A\u77E5\u4E1A\u52A1\u9519\u8BEF\u3002",comment:"\u672A\u5F52\u7C7B\u7684\u4E1A\u52A1\u9519\u8BEF"},"9000":{code:"9000",text:"\u7F51\u7EDC\u65E0\u6CD5\u8FDE\u63A5\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u8BBE\u7F6E\u6216\u4EE3\u7406\u3002",comment:"\u672C\u5730\u65E0\u6CD5\u8FDE\u901A\u670D\u52A1\u5668"},"9001":{code:"9001",text:"\u7F51\u7EDC\u8BF7\u6C42\u8D85\u65F6\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u72B6\u51B5\u540E\u91CD\u8BD5\u3002",comment:"\u7F51\u7EDC\u8FDE\u63A5\u6216\u8BFB\u53D6\u8D85\u65F6"},"9002":{code:"9002",text:"\u670D\u52A1\u5668\u8FD4\u56DE\u5F02\u5E38\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",comment:"HTTP 4xx/5xx \u72B6\u6001\u54CD\u5E94"},"9003":{code:"9003",text:"\u8FD9\u6B21\u64CD\u4F5C\u6CA1\u80FD\u5B8C\u6210\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\uFF1B\u82E5\u63D0\u793A\u7248\u672C\u540D\u5DF2\u5B58\u5728\uFF0C\u8BF7\u6539 package.json \u7684 version \u540E\u518D\u53D1\u3002\u6301\u7EED\u51FA\u73B0\u8BF7\u8054\u7CFB\u5BA2\u670D\u3002",comment:"Lumi \u4E1A\u52A1\u5931\u8D25\u3001\u9650\u9891\u6216\u54CD\u5E94\u65E0\u6CD5\u89E3\u6790\u65F6\u7684\u515C\u5E95 hint\uFF1B\u7248\u672C\u540D\u51B2\u7A81\u65F6\u670D\u52A1\u7AEF\u539F\u6587\u4F1A\u6620\u5C04\u4E3A\u66F4\u660E\u786E\u7684\u6587\u6848"},"9999":{code:"9999",text:"\u670D\u52A1\u5668\u8FD4\u56DE\u5185\u5BB9\u4E3A\u7A7A\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",comment:"\u4E0A\u6E38\u672A\u8FD4\u56DE\u6709\u6548\u6570\u636E"}},skill:{card_title:{code:"",text:"\u5DF2\u628A AI \u8BF4\u660E\u540C\u6B65\u5230\u7F16\u8F91\u5668",comment:"lumimaker skill \u6210\u529F\u5361\u7247\u6807\u9898"},label_kit:{code:"",text:"\u6E90",comment:"kit \u8DEF\u5F84"},label_copied:{code:"",text:"\u62F7\u8D1D",comment:"\u5DF2\u62F7\u8D1D\u7684 skill \u540D"},label_targets:{code:"",text:"\u76EE\u5F55",comment:"\u5B89\u88C5\u76EE\u6807\u76F8\u5BF9\u8DEF\u5F84"}},common:{success_default:{code:"",text:"\u64CD\u4F5C\u6267\u884C\u6210\u529F\u3002",comment:"\u547D\u4EE4\u6267\u884C\u6210\u529F\u9ED8\u8BA4\u8BF4\u660E"},page_info_pattern:{code:"",text:"\u7B2C {page} \u9875\uFF0C\u672C\u9875 {count} \u6761\uFF0C\u5171 {total} \u6761",comment:"\u5217\u8868\u5E95\u90E8\u5206\u9875\u8BF4\u660E\u6A21\u677F"},login_required_confirm:{code:"2001",text:"\u5F53\u524D\u672A\u767B\u5F55\u5E73\u53F0\uFF0C\u662F\u5426\u73B0\u5728\u6253\u5F00\u6D4F\u89C8\u5668\u5B8C\u6210\u6388\u6743\uFF1F",comment:"\u4EFB\u610F\u547D\u4EE4\u9047\u5230\u672A\u767B\u5F55\u65F6\u7684\u786E\u8BA4\u63D0\u95EE"},login_cancelled:{code:"2001",text:"\u5DF2\u53D6\u6D88\u767B\u5F55\uFF0C\u65E0\u6CD5\u7EE7\u7EED\u5F53\u524D\u64CD\u4F5C\u3002",comment:"\u7528\u6237\u62D2\u7EDD\u767B\u5F55\u5F15\u5BFC\u540E\u7684\u63D0\u793A"},login_retrying:{code:"",text:"\u767B\u5F55\u6210\u529F\uFF0C\u6B63\u5728\u7EE7\u7EED\u521A\u624D\u7684\u64CD\u4F5C\u2026",comment:"\u767B\u5F55\u5B8C\u6210\u540E\u81EA\u52A8\u91CD\u8BD5\u539F\u547D\u4EE4"},login_failed:{code:"2002",text:"\u767B\u5F55\u672A\u5B8C\u6210\uFF0C\u65E0\u6CD5\u7EE7\u7EED\u5F53\u524D\u64CD\u4F5C\u3002",comment:"\u5F15\u5BFC\u767B\u5F55\u5931\u8D25\u540E\u7684\u63D0\u793A"}}};var Ft={_comment:"kit \u7528\u6237\u53EF\u89C1\u6587\u6848\uFF08\u5E2E\u52A9\u3001\u4EA4\u4E92\u3001\u6821\u9A8C\u3001\u901A\u7528\u6807\u7B7E\uFF09\u3002\u5360\u4F4D\u7B26 {name}\u3002\u4E0E cli-messages.json \u4E00\u5E76\u52A0\u8F7D\u3002",help:{tagline:{code:"",text:"\u5E7B\u5149\u6587\u6E38\u5236\u4F5C\u5668",comment:"lumimaker --help \u6807\u9898\uFF1B\u53F3\u4FA7\u62FC\u63A5 npm \u5305\u7248\u672C Vxxxx"},usage_heading:{code:"",text:"\u7528\u6CD5:",comment:"\u5E2E\u52A9\u5206\u6BB5"},usage_line:{code:"",text:"lumimaker <command> [options]",comment:"\u7528\u6CD5\u793A\u4F8B"},section_publish:{code:"",text:"\u53D1\u5E03\u4E0E\u9274\u6743:",comment:"\u5E2E\u52A9\u5206\u6BB5"},section_shelf:{code:"",text:"\u5E16\u5B50\u7BA1\u7406:",comment:"\u5E2E\u52A9\u5206\u6BB5"},section_check:{code:"",text:"\u89C4\u8303\u6821\u9A8C:",comment:"\u5E2E\u52A9\u5206\u6BB5"},section_global:{code:"",text:"\u5168\u5C40\u9009\u9879:",comment:"\u5E2E\u52A9\u5206\u6BB5"},cmd_publish:{code:"",text:"\u53D1\u5E03\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF1A\u4E0A\u4F20 dist/",comment:"publish"},cmd_publish_demo:{code:"",text:"\u53D1\u5E03 demo \u7248\u4F5C\u54C1\uFF08demo\uFF09\uFF1B\u53EF\u4EE5\u8FD8\u6CA1\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF1B\u4E4B\u540E\u53D1\u6B63\u5F0F\u7248\u4F1A\u81EA\u52A8\u8FDE\u4E0A",comment:"publish --demo"},cmd_publish_template:{code:"",text:"\u53D1\u5E03\u6A21\u677F\u3002\u9996\u53D1\u987B\u6709 assets/ \u5E76\u81EA\u52A8\u4E0A\u4F20\u6570\u636E\u5305\uFF1B\u7EED\u53D1\u8BE5\u6570\u636E\u5305\u7248\u672C\u8FD8\u6CA1\u6709\u5305\u65F6\u4E5F\u4F1A\u81EA\u52A8\u4F20\uFF1B\u518D\u4F20\u4E00\u5305\u7528 --with-assets",comment:"publish-template"},cmd_publish_template_data:{code:"",text:"\u53EA\u53D1\u6570\u636E\u5305\uFF0C\u4E0D\u53D1\u65B0\u6A21\u677F\u7248\u672C\u3002\u7248\u672C\u548C\u8BF4\u660E\u8BFB package.json\uFF0C\u6587\u4EF6\u653E\u5728 assets/",comment:"publish-template-data"},cmd_publish_project:{code:"",text:"\u53D1\u5E03\u5F00\u6E90\u5DE5\u7A0B\uFF1B\u65E0 project.json \u65F6\u540C\u65F6\u5EFA\u5DE5\u7A0B",comment:"publish-project"},cmd_login:{code:"",text:"\u767B\u5F55\uFF08\u5DF2\u6709\u6709\u6548\u767B\u5F55\u5219\u8DF3\u8FC7\uFF1B--force \u5F3A\u5236\u91CD\u65B0\u6388\u6743\uFF09",comment:"login"},cmd_logout:{code:"",text:"\u9000\u51FA\u767B\u5F55\uFF0C\u6E05\u9664\u672C\u5730\u51ED\u8BC1",comment:"logout"},cmd_whoami:{code:"",text:"\u67E5\u770B\u5F53\u524D\u767B\u5F55\u72B6\u6001\u4E0E\u8D26\u53F7\u4FE1\u606F",comment:"whoami"},cmd_games_update:{code:"",text:"\u4FEE\u6539\u4F5C\u54C1\u5E16\u5B50",comment:"games update"},cmd_templates_update:{code:"",text:"\u4FEE\u6539\u6A21\u677F\u5E16\u5B50\u540D\u79F0",comment:"templates update"},cmd_projects_update:{code:"",text:"\u4FEE\u6539\u5F00\u6E90\u5DE5\u7A0B\u5E16\u5B50",comment:"projects update"},cmd_validate_template:{code:"",text:"\u9A8C\u8BC1\u5F53\u524D\u5DE5\u7A0B\u662F\u5426\u7B26\u5408\u6A21\u677F\u89C4\u8303",comment:"validate-template"},cmd_validate:{code:"",text:"\u8F6C\u8C03 npm run validate\uFF08\u6A21\u677F\u5FC5\u987B\u63D0\u4F9B\uFF1B\u6709\u8BD5\u73A9\u6570\u636E\u65F6\u540C\u4E00\u6761\u68C0\u67E5\u4E24\u4EFD\uFF09",comment:"validate"},cmd_skill:{code:"",text:"\u5B89\u88C5 AI \u8BF4\u660E\u5230\u7F16\u8F91\u5668\uFF1A--platform cursor \u6216 --all",comment:"skill"},opt_json:{code:"",text:"\u811A\u672C\u8981\u673A\u5668\u53EF\u8BFB JSON \u65F6\u4F7F\u7528\uFF1B\u4EBA\u5728\u7EC8\u7AEF\u548C\u7F16\u8F91\u5668\u91CC\u4E0D\u5FC5\u52A0\uFF0C\u6210\u529F\u7ED3\u679C\u5DF2\u662F\u4E2D\u6587",comment:"--json"},opt_verbose:{code:"",text:"\u8F93\u51FA\u8C03\u8BD5\u65E5\u5FD7",comment:"--verbose"},opt_no_interactive:{code:"",text:"\u7981\u7528\u4EA4\u4E92\u5F0F\u5F15\u5BFC\uFF0C\u7F3A\u53C2\u65F6\u76F4\u63A5\u62A5\u9519",comment:"--no-interactive"},opt_yes:{code:"",text:"\u53D1\u5E03\u4F5C\u54C1\u65F6\u8DF3\u8FC7\u53D1\u5E03\u524D\u786E\u8BA4\uFF08\u811A\u672C / \u5DF2\u4EBA\u5DE5\u786E\u8BA4\uFF09",comment:"--yes"},opt_agent:{code:"",text:"\u5F3A\u5236\u6309 AI \u52A9\u624B\u534F\u8BAE\uFF08\u7F3A\u53C2\u5148\u95EE\u4EBA\uFF09\u3002\u9ED8\u8BA4\u53EF\u7701\u7565\uFF1A\u4EBA\u5728\u7EC8\u7AEF\u8D70\u4EA4\u4E92\uFF0C\u7F16\u8F91\u5668\u91CC\u975E TTY \u4F1A\u81EA\u52A8\u5F00\u542F",comment:"--agent"},opt_apply_update:{code:"",text:"\u628A\u5F53\u524D\u5DE5\u7A0B\u7684 lumimaker \u76F8\u5173\u5305\u5347\u5230\u5DF2\u68C0\u6D4B\u5230\u7684\u6700\u65B0\u7248",comment:"--apply-update"},opt_skip_update:{code:"",text:"\u672C\u6B21\u8DF3\u8FC7 npm \u66F4\u65B0\u63D0\u793A\uFF08\u540C\u4E00 latest 24 \u5C0F\u65F6\u5185\u4E0D\u518D\u6253\u65AD\uFF09",comment:"--skip-update"},opt_help:{code:"",text:"\u67E5\u770B\u5E2E\u52A9",comment:"--help"},contact:{code:"",text:"\u9700\u8981\u8054\u7CFB\u5BA2\u670D{contact}",comment:"\u5E2E\u52A9\u9875\u5E95\u90E8\uFF1A\u65E0\u72EC\u7ACB\u8054\u7CFB\u6E20\u9053\u9875\uFF0C\u5F15\u5BFC\u8054\u7CFB\u5BA2\u670D"}},prompt:{cancel:{code:"",text:"\u5DF2\u53D6\u6D88\u64CD\u4F5C\u3002",comment:"Ctrl+C \u53D6\u6D88\u4EA4\u4E92"},intro:{code:"",text:"lumimaker",comment:"\u4E3B\u83DC\u5355\u6807\u9898"},main_message:{code:"",text:"\u8BF7\u9009\u62E9\u8981\u6267\u884C\u7684\u64CD\u4F5C\uFF1A",comment:"\u4E3B\u83DC\u5355\u63D0\u95EE"},main_publish_label:{code:"",text:"\u53D1\u5E03\u4F5C\u54C1 (publish)",comment:"\u4E3B\u83DC\u5355"},main_publish_hint:{code:"",text:"\u4E0A\u4F20 dist/ \u5230\u5E73\u53F0\uFF08\u6B63\u5F0F\u7248\u4F5C\u54C1\u6216 demo\uFF09",comment:"\u4E3B\u83DC\u5355"},main_publish_template_label:{code:"",text:"\u53D1\u5E03\u6A21\u677F (publish-template)",comment:"\u4E3B\u83DC\u5355"},main_publish_template_hint:{code:"",text:"\u4E0A\u4F20\u6A21\u677F\u7248\u672C",comment:"\u4E3B\u83DC\u5355"},main_publish_template_data_label:{code:"",text:"\u53EA\u53D1\u6570\u636E\u5305 (publish-template-data)",comment:"\u4E3B\u83DC\u5355"},main_publish_template_data_hint:{code:"",text:"\u4E0D\u53D1\u65B0\u6A21\u677F\u7248\u672C\uFF1B\u5F00\u5DE5\u7A0B\u9ED8\u8BA4\u4E0B\u7248\u672C\u7ED1\u5B9A\u5305\uFF0C\u6307\u5B9A\u8FD9\u4EFD\u7528 --with-assets",comment:"\u4E3B\u83DC\u5355"},main_publish_project_label:{code:"",text:"\u53D1\u5E03\u5F00\u6E90\u5DE5\u7A0B (publish-project)",comment:"\u4E3B\u83DC\u5355"},main_publish_project_hint:{code:"",text:"\u6253\u5305\u4E0A\u4F20\u6E90\u7801\u5DE5\u7A0B",comment:"\u4E3B\u83DC\u5355"},main_games_label:{code:"",text:"\u4F5C\u54C1\u5E16\u5B50\u7BA1\u7406 (games)",comment:"\u4E3B\u83DC\u5355"},main_games_hint:{code:"",text:"\u6539\u4F5C\u54C1\u5E16\u5B50\u540D\u79F0\u6216\u4E0A\u4E0B\u67B6",comment:"\u4E3B\u83DC\u5355"},main_templates_label:{code:"",text:"\u6A21\u677F\u5E16\u5B50\u7BA1\u7406 (templates)",comment:"\u4E3B\u83DC\u5355"},main_templates_hint:{code:"",text:"\u6539\u6A21\u677F\u5E16\u5B50\u540D\u79F0\u6216\u4E0A\u4E0B\u67B6",comment:"\u4E3B\u83DC\u5355"},main_projects_label:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B\u5E16\u5B50\u7BA1\u7406 (projects)",comment:"\u4E3B\u83DC\u5355"},main_projects_hint:{code:"",text:"\u6539\u5F00\u6E90\u5DE5\u7A0B\u5E16\u5B50\u540D\u79F0\u6216\u4E0A\u4E0B\u67B6",comment:"\u4E3B\u83DC\u5355"},main_login_label:{code:"",text:"\u8D26\u53F7\u767B\u5F55 (login)",comment:"\u4E3B\u83DC\u5355"},main_login_hint:{code:"",text:"\u5DF2\u767B\u5F55\u5219\u8DF3\u8FC7\uFF1B--force \u5F3A\u5236\u91CD\u767B",comment:"\u4E3B\u83DC\u5355"},main_whoami_label:{code:"",text:"\u67E5\u770B\u5F53\u524D\u8D26\u53F7 (whoami)",comment:"\u4E3B\u83DC\u5355"},main_whoami_hint:{code:"",text:"\u68C0\u67E5\u5F53\u524D\u767B\u5F55\u72B6\u6001",comment:"\u4E3B\u83DC\u5355"},main_validate_template_label:{code:"",text:"\u6821\u9A8C\u6A21\u677F\u89C4\u8303 (validate-template)",comment:"\u4E3B\u83DC\u5355"},main_validate_template_hint:{code:"",text:"\u68C0\u67E5\u672C\u5730\u76EE\u5F55\u4E0E\u6587\u4EF6",comment:"\u4E3B\u83DC\u5355"},main_skill_label:{code:"",text:"\u5B89\u88C5 AI \u8BF4\u660E\u5230\u7F16\u8F91\u5668 (skill)",comment:"\u4E3B\u83DC\u5355"},main_skill_hint:{code:"",text:"--platform cursor \u6216 --all",comment:"\u4E3B\u83DC\u5355"},main_logout_label:{code:"",text:"\u9000\u51FA\u767B\u5F55 (logout)",comment:"\u4E3B\u83DC\u5355"},main_logout_hint:{code:"",text:"\u6E05\u9664\u672C\u5730\u51ED\u636E",comment:"\u4E3B\u83DC\u5355"},version_empty:{code:"",text:"\u7248\u672C\u53F7\u4E0D\u80FD\u4E3A\u7A7A",comment:"\u6821\u9A8C"},version_invalid:{code:"",text:"\u987B 1\u201316 \u4F4D\uFF0C\u4EC5\u5C0F\u5199\u5B57\u6BCD\u3001\u6570\u5B57\u3001`.` \u548C `-`\uFF1B\u5FC5\u987B\u4EE5\u5B57\u6BCD\u6216\u6570\u5B57\u5F00\u5934\u548C\u7ED3\u5C3E\uFF0C\u4E14\u4E0D\u80FD\u8FDE\u7EED\u4F7F\u7528\u7B26\u53F7\u3002\u793A\u4F8B\uFF1A1.0.0",comment:"publish-template \u6821\u9A8C"},version_invalid_log:{code:"",text:"\u6A21\u677F\u7248\u672C\u53F7\u683C\u5F0F\u65E0\u6548\uFF08{version}\uFF09",comment:"publish-template \u6821\u9A8C"},version_invalid_hint:{code:"",text:"\u987B 1\u201316 \u4F4D\uFF0C\u4EC5\u5C0F\u5199\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u82F1\u6587\u70B9 . \u548C\u77ED\u6A2A\u7EBF -\uFF1B\u5FC5\u987B\u4EE5\u5B57\u6BCD\u6216\u6570\u5B57\u5F00\u5934\u548C\u7ED3\u5C3E\uFF1B\u4E0D\u80FD\u51FA\u73B0\u8FDE\u7EED\u7684 . \u6216 -\u3002\u793A\u4F8B\uFF1A1.0.0\u30010.1.0\u30011.0.0-a",comment:"publish-template \u6821\u9A8C"},publish_version:{code:"",text:"\u8BF7\u8F93\u5165\u8FD9\u6B21\u53D1\u5E03\u7684\u7248\u672C\u53F7\uFF1A",comment:"publish"},publish_name:{code:"",text:"\u8BF7\u8F93\u5165\u4F5C\u54C1\u5C55\u793A\u540D\u79F0\uFF1A",comment:"publish"},publish_variant:{code:"",text:"\u8FD9\u6B21\u53D1\u6B63\u5F0F\u7248\u4F5C\u54C1\u8FD8\u662F demo \u7248\u4F5C\u54C1\uFF08demo\uFF09\uFF1F",comment:"publish"},publish_have_none:{code:"",text:"\u8FD8\u6CA1\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF0C\u4E5F\u8FD8\u6CA1\u6709 demo\u3002",comment:"publish \u53D8\u4F53\u8BE2\u95EE"},publish_have_official:{code:"",text:"\u5DF2\u7ECF\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF08\u6B63\u5F0F\u7248\u4F5C\u54C1ID {id}\uFF09\u3002",comment:"publish \u53D8\u4F53\u8BE2\u95EE"},publish_have_demo:{code:"",text:"\u5DF2\u7ECF\u6709 demo \u7248\u4F5C\u54C1\uFF08\u8BD5\u73A9ID {id}\uFF09\u3002",comment:"publish \u53D8\u4F53\u8BE2\u95EE"},publish_have_both:{code:"",text:"\u5DF2\u7ECF\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF08\u6B63\u5F0F\u7248\u4F5C\u54C1ID {official}\uFF09\u548C demo \u7248\u4F5C\u54C1\uFF08\u8BD5\u73A9ID {demo}\uFF09\u3002",comment:"publish \u53D8\u4F53\u8BE2\u95EE"},publish_official_label:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"publish"},publish_official_hint:{code:"",text:"\u9762\u5411\u73A9\u5BB6\u7684\u4E3B\u7248\u672C",comment:"publish"},publish_demo_label:{code:"",text:"demo\u7248\u4F5C\u54C1\uFF08demo\uFF09",comment:"publish"},publish_demo_hint:{code:"",text:"\u5355\u72EC\u7684 demo\uFF0C\u53EF\u4EE5\u8FD8\u6CA1\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"publish"},publish_parent:{code:"",text:"\u5982\u679C\u5DF2\u7ECF\u6709\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF0C\u586B\u6B63\u5F0F\u7248\u4F5C\u54C1ID\uFF08\u6CA1\u6709\u5C31\u56DE\u8F66\uFF0C\u5148\u53D1 demo\uFF09\uFF1A",comment:"publish"},publish_parent_placeholder:{code:"",text:"\u7559\u7A7A\u5219\u5148\u53D1 demo",comment:"publish"},publish_changelog:{code:"",text:"\u8BF7\u8F93\u5165\u7248\u672C\u66F4\u65B0\u8BF4\u660E\uFF08changelog\uFF0C\u53EF\u9009\u76F4\u63A5\u56DE\u8F66\uFF09\uFF1A",comment:"publish"},publish_changelog_placeholder:{code:"",text:"\u4FEE\u590D\u4E86\u4E00\u4E9B\u5DF2\u77E5\u95EE\u9898",comment:"publish"},publish_demo_scope:{code:"",text:"\u8BD5\u73A9\u8303\u56F4\u8BF4\u660E\uFF08\u4EC5\u65B0\u5EFA\u4F5C\u54C1\u65F6\u6709\u6548\uFF0C\u53EF\u9009\u76F4\u63A5\u56DE\u8F66\uFF09\uFF1A",comment:"publish"},publish_play_duration:{code:"",text:"\u9884\u8BA1\u6E38\u73A9\u65F6\u957F\uFF08\u4EC5\u65B0\u5EFA\u4F5C\u54C1\u65F6\u6709\u6548\uFF0C\u53EF\u9009\u76F4\u63A5\u56DE\u8F66\uFF09\uFF1A",comment:"publish"},publish_confirm:{code:"",text:"\u5373\u5C06\u53D1\u5E03\u4F5C\u54C1\uFF0C\u8BF7\u786E\u8BA4\u4EE5\u4E0B\u4FE1\u606F\uFF1A",comment:"publish"},publish_confirm_name:{code:"",text:"\u540D\u79F0\uFF1A{name}",comment:"publish"},publish_confirm_version:{code:"",text:"\u7248\u672C\uFF1A{version}",comment:"publish"},publish_confirm_variant:{code:"",text:"\u7C7B\u578B\uFF1A{variant}",comment:"publish"},publish_confirm_official:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"publish"},publish_confirm_demo:{code:"",text:"demo\u7248\u4F5C\u54C1\uFF08demo\uFF09",comment:"publish"},publish_confirm_parent:{code:"",text:"\u6302\u63A5\u6B63\u5F0F\u7248\u4F5C\u54C1\uFF1A{id}",comment:"publish"},publish_confirm_changelog:{code:"",text:"\u66F4\u65B0\u8BF4\u660E\uFF1A{text}",comment:"publish"},publish_confirm_none:{code:"",text:"\u65E0",comment:"publish"},publish_confirm_unnamed:{code:"",text:"\u672A\u586B\u5199",comment:"publish"},tpl_version:{code:"",text:"\u8BF7\u8F93\u5165\u6A21\u677F\u7248\u672C\u53F7\uFF081\u201316 \u4F4D\uFF0C\u5C0F\u5199\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u70B9\u3001\u77ED\u6A2A\u7EBF\uFF09\uFF1A",comment:"publish-template"},tpl_slug:{code:"",text:"package.json \u8FD8\u6CA1\u6709\u82F1\u6587\u77ED\u540D\u3002\u8BF7\u586B\u5199 slug\uFF08\u53D1\u5E03\u540E\u4E0D\u80FD\u518D\u6539\uFF09\uFF1A",comment:"publish-template\uFF1B\u7F3A slug \u65F6\u5148\u95EE\uFF0C\u5199\u56DE\u540E\u518D\u8BF7\u6C42\u521B\u5EFA\u63A5\u53E3"},tpl_slug_placeholder:{code:"",text:"\u4F8B\u5982 forest-adventure",comment:"publish-template"},tpl_slug_empty:{code:"",text:"\u82F1\u6587\u77ED\u540D\u4E0D\u80FD\u4E3A\u7A7A",comment:"publish-template"},tpl_slug_invalid:{code:"",text:"\u53EA\u80FD\u7528\u5C0F\u5199\u5B57\u6BCD\u3001\u6570\u5B57\u548C\u4E2D\u5212\u7EBF\uFF0C\u4EE5\u5B57\u6BCD\u6216\u6570\u5B57\u5F00\u5934\uFF0C\u6700\u957F 63 \u4F4D",comment:"publish-template"},tpl_slug_write_failed:{code:"",text:'\u5199\u4E0D\u56DE package.json\u3002\u8BF7\u624B\u52A8\u52A0\u4E0A "slug" \u540E\u518D\u53D1\u5E03',comment:"publish-template"},tpl_name:{code:"",text:"\u8BF7\u8F93\u5165\u6A21\u677F\u5728\u5E73\u53F0\u4E0A\u663E\u793A\u7684\u540D\u79F0\uFF08\u4E0D\u80FD\u542B / \u6216 @\uFF09\uFF1A",comment:"publish-template"},tpl_name_placeholder:{code:"",text:"\u4F8B\u5982 \u95EE\u7B54",comment:"publish-template"},tpl_name_empty:{code:"",text:"\u6A21\u677F\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A",comment:"publish-template"},tpl_name_invalid:{code:"",text:"\u6A21\u677F\u540D\u79F0\u4E0D\u80FD\u5305\u542B / \u6216 @",comment:"publish-template"},tpl_name_invalid_log:{code:"",text:"\u6A21\u677F\u540D\u79F0\u4E0D\u5408\u6CD5\uFF1A{name}\uFF08\u4E0D\u80FD\u542B / \u6216 @\uFF09",comment:"publish-template"},tpl_changelog:{code:"",text:"\u8BF7\u8F93\u5165\u7248\u672C\u66F4\u65B0\u8BF4\u660E\uFF08changelog\uFF0C\u53EF\u9009\u76F4\u63A5\u56DE\u8F66\uFF09\uFF1A",comment:"publish-template"},tpl_mode:{code:"",text:"\u672C\u5730\u5C1A\u65E0 origin.json \u8EAB\u4EFD\uFF0C\u8BF7\u9009\u62E9\u53D1\u5E03\u65B9\u5F0F\uFF1A",comment:"publish-template"},tpl_publish_label:{code:"",text:"\u53D1\u5E03\u9996\u7248\uFF08\u81EA\u52A8\u5E26\u6570\u636E\u5305\uFF09",comment:"publish-template"},tpl_publish_hint:{code:"",text:"\u65B0\u5EFA\u6A21\u677F\uFF1A\u4E0A\u4F20\u6A21\u677F\uFF0C\u5E76\u628A\u5DE5\u7A0B assets/ \u505A\u6210\u6570\u636E\u5305",comment:"publish-template"},tpl_fork_label:{code:"",text:"Fork \u73B0\u6709\u6A21\u677F (--fork)",comment:"publish-template"},tpl_fork_hint:{code:"",text:"\u57FA\u4E8E\u6E90\u6A21\u677F\u7248\u672C\u884D\u751F",comment:"publish-template"},tpl_fork_id:{code:"",text:"\u8BF7\u8F93\u5165 Fork \u6E90\u6A21\u677F\u7248\u672C ID\uFF1A",comment:"publish-template"},tpl_fork_placeholder:{code:"",text:"\u4F8B\u5982 4p7dlg00utc0",comment:"publish-template"},tpl_fork_empty:{code:"",text:"Fork \u5FC5\u987B\u63D0\u4F9B\u6E90\u6A21\u677F\u7248\u672C ID",comment:"publish-template"},tpl_data_id:{code:"",text:"\u8981\u6362\u7ED1\u5DF2\u6709\u6570\u636E\u5305\u7684\u8BDD\uFF0C\u8F93\u5165\u6570\u636E\u5305 ID\uFF08\u56DE\u8F66\u8DF3\u8FC7\uFF09\uFF1A",comment:"publish-template --fork \u53EF\u9009 --data-id"},data_ver_reuse:{code:"",text:"\u6570\u636E\u5305\u7248\u672C\u6CBF\u7528\u4E0A\u6B21\u7684 {ver}\uFF1F",comment:"data-ver"},data_ver_new:{code:"",text:"\u8BF7\u8F93\u5165\u65B0\u7684\u6570\u636E\u5305\u7248\u672C\u53F7\uFF1A",comment:"data-ver"},data_ver_ask:{code:"",text:"\u8BF7\u8F93\u5165\u6570\u636E\u5305\u7248\u672C\u53F7\uFF08\u4E0D\u4F1A\u81EA\u52A8\u52A0 1\uFF09\uFF1A",comment:"data-ver"},data_ver_placeholder_last:{code:"",text:"\u4E0A\u6B21 {ver}",comment:"data-ver"},data_ver_placeholder:{code:"",text:"\u4F8B\u5982 1",comment:"data-ver"},data_ver_empty:{code:"",text:"\u6570\u636E\u5305\u7248\u672C\u4E0D\u80FD\u4E3A\u7A7A\uFF0C\u7A0B\u5E8F\u4E0D\u4F1A\u81EA\u52A8\u9012\u589E",comment:"data-ver"},data_summary:{code:"",text:"\u8BF7\u8F93\u5165\u8FD9\u4EFD\u6570\u636E\u5305\u7684\u8BF4\u660E\uFF08\u56DE\u8F66\u8DF3\u8FC7\uFF09\uFF1A",comment:"data-summary"},data_summary_placeholder:{code:"",text:"\u540C\u4E00\u6570\u636E\u5305\u7248\u672C\u4E0B\u7528\u6765\u533A\u5206\u672C\u5305",comment:"data-summary"},data_assets:{code:"",text:"\u8BF7\u628A\u6570\u636E\u5305\u6587\u4EF6\u653E\u5230\u5DE5\u7A0B\u7684 assets \u6587\u4EF6\u5939\u3002\u5DF2\u7ECF\u653E\u597D\u4E86\u5417\uFF1F",comment:"publish-template / publish-template-data"},data_assets_placeholder:{code:"",text:"\u7EDD\u5BF9\u8DEF\u5F84\uFF0C\u4F8B\u5982 C:\\path\\to\\assets",comment:"publish-template / publish-template-data --assets"},data_assets_not_absolute:{code:"",text:"--assets \u5FC5\u987B\u662F\u7EDD\u5BF9\u8DEF\u5F84",comment:"publish-template / publish-template-data --assets"},data_assets_not_dir:{code:"",text:"\u8BE5\u8DEF\u5F84\u4E0D\u662F\u6709\u6548\u76EE\u5F55",comment:"publish-template / publish-template-data --assets"},proj_version:{code:"",text:"\u8BF7\u8F93\u5165\u8FD9\u6B21\u53D1\u5E03\u7684\u7248\u672C\u53F7\uFF1A",comment:"publish-project"},proj_name:{code:"",text:"\u8BF7\u8F93\u5165\u5DE5\u7A0B\u5C55\u793A\u540D\u79F0\uFF1A",comment:"publish-project"},proj_summary:{code:"",text:"\u8BF7\u8F93\u5165\u5DE5\u7A0B\u7B80\u4ECB (\u53EF\u9009)\uFF1A",comment:"publish-project"},proj_summary_placeholder:{code:"",text:"\u57FA\u4E8E\u5E7B\u5149\u5F00\u53D1\u7684\u4F5C\u54C1/\u6A21\u677F\u5DE5\u7A0B",comment:"publish-project"},proj_cover:{code:"",text:"\u8BF7\u8F93\u5165\u5C01\u9762\u56FE\u8DEF\u5F84 (\u53EF\u9009\uFF0C\u76F4\u63A5\u56DE\u8F66\u8DF3\u8FC7)\uFF1A",comment:"publish-project"},proj_changelog:{code:"",text:"\u8BF7\u8F93\u5165\u7248\u672C\u66F4\u65B0\u8BF4\u660E (\u53EF\u9009)\uFF1A",comment:"publish-project"},id_empty:{code:"",text:"ID \u4E0D\u80FD\u4E3A\u7A7A",comment:"\u6821\u9A8C"},name_empty:{code:"",text:"\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A",comment:"\u6821\u9A8C"},games_action:{code:"",text:"\u8BF7\u9009\u62E9\u4F5C\u54C1\u5E16\u5B50\u64CD\u4F5C\uFF1A",comment:"games"},games_list_label:{code:"",text:"\u5217\u51FA\u6211\u7684\u4F5C\u54C1\u5217\u8868",comment:"games"},games_list_hint:{code:"",text:"\u6309\u9875\u62C9\u53D6\u5E73\u53F0\u4F5C\u54C1",comment:"games"},games_query_label:{code:"",text:"\u67E5\u8BE2\u6307\u5B9A\u4F5C\u54C1\u8BE6\u60C5 (--query)",comment:"games"},games_query_hint:{code:"",text:"\u6309\u6B63\u5F0F\u7248\u4F5C\u54C1ID\u6216\u8BD5\u73A9ID\u67E5\u770B",comment:"games"},games_versions_label:{code:"",text:"\u67E5\u770B\u4F5C\u54C1\u5168\u90E8\u53D1\u5E03\u7248\u672C (--versions)",comment:"games"},games_versions_hint:{code:"",text:"\u67E5\u770B\u5DF2\u53D1\u5E03\u7684\u5404\u7248\u672C",comment:"games"},games_update_label:{code:"",text:"\u4FEE\u6539\u4F5C\u54C1\u5E16\u5B50 (update)",comment:"games"},games_update_hint:{code:"",text:"\u6539\u540D\u79F0/\u7B80\u4ECB/\u4E0A\u4E0B\u67B6/\u7248\u672C\u8BF4\u660E",comment:"games"},games_id:{code:"",text:"\u8BF7\u8F93\u5165\u4F5C\u54C1ID\uFF08\u6B63\u5F0F\u7248\u4F5C\u54C1ID\u6216\u8BD5\u73A9ID\uFF09\uFF1A",comment:"games"},games_name:{code:"",text:"\u8BF7\u8F93\u5165\u4F5C\u54C1\u540D\u79F0\uFF1A",comment:"games"},games_name_placeholder:{code:"",text:"\u6211\u7684\u4F5C\u54C1",comment:"games"},games_summary:{code:"",text:"\u8BF7\u8F93\u5165\u4F5C\u54C1\u7B80\u4ECB (\u53EF\u9009)\uFF1A",comment:"games"},games_update_id:{code:"",text:"\u8BF7\u8F93\u5165\u9700\u8981\u4FEE\u6539\u7684\u4F5C\u54C1ID\uFF08\u6B63\u5F0F\u7248\u4F5C\u54C1ID\u6216\u8BD5\u73A9ID\uFF0C--game-id\uFF09\uFF1A",comment:"games"},games_update_name:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u66F4\u65B0\u7684\u4F5C\u54C1\u540D\u79F0 (\u56DE\u8F66\u8DF3\u8FC7)\uFF1A",comment:"games"},games_update_summary:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u66F4\u65B0\u7684\u4F5C\u54C1\u7B80\u4ECB (\u56DE\u8F66\u8DF3\u8FC7)\uFF1A",comment:"games"},games_update_variant:{code:"",text:"\u8981\u6539\u6B63\u5F0F\u7248\u4F5C\u54C1\u8FD8\u662F demo\uFF1F",comment:"games update\uFF0C\u672C\u5730\u540C\u65F6\u6709\u6B63\u5F0F\u4E0E demo"},games_update_official:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"games update"},games_update_demo:{code:"",text:"demo\u7248\u4F5C\u54C1\uFF08demo\uFF09",comment:"games update"},update_status:{code:"",text:"\u4E0A\u4E0B\u67B6\uFF08\u53EF\u9009\uFF0C\u4E0D\u6539\u8BF7\u56DE\u8F66\uFF09\uFF1A",comment:"update"},update_status_skip:{code:"",text:"\u4E0D\u6539\u4E0A\u4E0B\u67B6",comment:"update"},update_status_on:{code:"",text:"\u4E0A\u67B6",comment:"update"},update_status_off:{code:"",text:"\u4E0B\u67B6",comment:"update"},update_changelog:{code:"",text:"\u6539\u5DF2\u6709\u7248\u672C\u7684\u66F4\u65B0\u8BF4\u660E\uFF08\u53EF\u9009\u76F4\u63A5\u56DE\u8F66\uFF09\uFF1A",comment:"update"},update_version_id:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u6539\u8BF4\u660E\u7684\u7248\u672C ID\uFF08--version-id\uFF09\uFF1A",comment:"update"},tpls_action:{code:"",text:"\u8BF7\u9009\u62E9\u6A21\u677F\u5E16\u5B50\u64CD\u4F5C\uFF1A",comment:"templates"},tpls_list_label:{code:"",text:"\u5217\u51FA\u6211\u7684\u6A21\u677F\u5217\u8868",comment:"templates"},tpls_list_hint:{code:"",text:"\u6309\u9875\u67E5\u770B\u5E73\u53F0\u6A21\u677F",comment:"templates"},tpls_query_label:{code:"",text:"\u67E5\u8BE2\u6A21\u677F\u8BE6\u60C5 (--query)",comment:"templates"},tpls_query_hint:{code:"",text:"\u6309\u6A21\u677F ID \u67E5\u770B",comment:"templates"},tpls_versions_label:{code:"",text:"\u67E5\u770B\u6A21\u677F\u7248\u672C\u5217\u8868 (--versions)",comment:"templates"},tpls_versions_hint:{code:"",text:"\u67E5\u770B\u5DF2\u53D1\u7248\u672C",comment:"templates"},tpls_data_label:{code:"",text:"\u67E5\u770B\u6A21\u677F\u6570\u636E\u5305 (--data)",comment:"templates"},tpls_data_hint:{code:"",text:"\u67E5\u770B\u7ED1\u5B9A\u7684 assets \u5305",comment:"templates"},tpls_update_label:{code:"",text:"\u4FEE\u6539\u6A21\u677F\u540D\u79F0 (update)",comment:"templates"},tpls_update_hint:{code:"",text:"\u6539\u540D\u79F0/\u4E0A\u4E0B\u67B6/\u7248\u672C\u8BF4\u660E",comment:"templates"},tpls_id:{code:"",text:"\u8BF7\u8F93\u5165\u6A21\u677F ID\uFF1A",comment:"templates"},tpls_name:{code:"",text:"\u8BF7\u8F93\u5165\u6A21\u677F\u540D\u79F0\uFF1A",comment:"templates"},tpls_name_placeholder:{code:"",text:"\u6211\u7684\u6A21\u677F",comment:"templates"},tpls_update_id:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u4FEE\u6539\u7684\u6A21\u677F ID (--template-id)\uFF1A",comment:"templates"},tpls_update_name:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u66F4\u65B0\u7684\u6A21\u677F\u540D\u79F0 (\u56DE\u8F66\u8DF3\u8FC7)\uFF1A",comment:"templates"},projs_action:{code:"",text:"\u8BF7\u9009\u62E9\u5F00\u6E90\u5DE5\u7A0B\u5E16\u5B50\u64CD\u4F5C\uFF1A",comment:"projects"},projs_list_label:{code:"",text:"\u5217\u51FA\u5F00\u6E90\u5DE5\u7A0B\u5217\u8868",comment:"projects"},projs_list_hint:{code:"",text:"\u6309\u9875\u67E5\u770B",comment:"projects"},projs_query_label:{code:"",text:"\u67E5\u8BE2\u5F00\u6E90\u5DE5\u7A0B\u8BE6\u60C5 (--query)",comment:"projects"},projs_query_hint:{code:"",text:"\u6309\u5DE5\u7A0B ID \u67E5\u770B",comment:"projects"},projs_versions_label:{code:"",text:"\u67E5\u770B\u5DE5\u7A0B\u53D1\u5E03\u7248\u672C (--versions)",comment:"projects"},projs_versions_hint:{code:"",text:"\u67E5\u770B\u7248\u672C\u8BB0\u5F55",comment:"projects"},projs_update_label:{code:"",text:"\u4FEE\u6539\u5DE5\u7A0B\u5E16\u5B50 (update)",comment:"projects"},projs_update_hint:{code:"",text:"\u6539\u540D\u79F0/\u7B80\u4ECB/\u5C01\u9762/\u4E0A\u4E0B\u67B6/\u7248\u672C\u8BF4\u660E",comment:"projects"},projs_id:{code:"",text:"\u8BF7\u8F93\u5165\u5F00\u6E90\u5DE5\u7A0B ID\uFF1A",comment:"projects"},projs_name:{code:"",text:"\u8BF7\u8F93\u5165\u5F00\u6E90\u5DE5\u7A0B\u540D\u79F0\uFF1A",comment:"projects"},projs_update_id:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u4FEE\u6539\u7684\u5F00\u6E90\u5DE5\u7A0B ID (--project-id)\uFF1A",comment:"projects"},projs_update_name:{code:"",text:"\u8BF7\u8F93\u5165\u8981\u66F4\u65B0\u7684\u5DE5\u7A0B\u540D\u79F0 (\u56DE\u8F66\u8DF3\u8FC7)\uFF1A",comment:"projects"},login_mode:{code:"",text:"\u8BF7\u9009\u62E9\u767B\u5F55\u65B9\u5F0F\uFF1A",comment:"login"},login_skip_label:{code:"",text:"\u5DF2\u6709\u6709\u6548\u767B\u5F55\u5219\u8DF3\u8FC7",comment:"login"},login_skip_hint:{code:"",text:"\u63A8\u8350",comment:"login"},login_force_label:{code:"",text:"\u5F3A\u5236\u91CD\u65B0\u767B\u5F55\u5E76\u6253\u5F00\u6D4F\u89C8\u5668\u6388\u6743 (--force)",comment:"login"},login_force_hint:{code:"",text:"\u6362\u53F7\u6216\u5237\u65B0\u51ED\u8BC1",comment:"login"},skill_platform:{code:"",text:"\u8BF7\u9009\u62E9\u8981\u628A AI \u8BF4\u660E\u5B89\u88C5\u5230\u54EA\u4E2A\u7F16\u8F91\u5668\uFF1A",comment:"skill"},skill_platform_detected:{code:"",text:"\u68C0\u6D4B\u5230\u5F53\u524D\u4F7F\u7528\u7684\u7F16\u8F91\u5668\u662F {id}\u3002\u8BF7\u9009\u62E9\u8981\u628A AI \u8BF4\u660E\u5B89\u88C5\u5230\u54EA\u4E2A\u7F16\u8F91\u5668\uFF1A",comment:"skill\uFF0C\u5DF2\u63A2\u6D4B\u5230\u5BBF\u4E3B"},skill_current_suffix:{code:"",text:"\uFF08\u5F53\u524D\uFF09",comment:"skill \u9009\u9879\uFF1A\u63A2\u6D4B\u5230\u7684\u7F16\u8F91\u5668"},skill_all_label:{code:"",text:"\u5168\u90E8\u7F16\u8F91\u5668",comment:"skill"},skill_all_hint:{code:"",text:"--all",comment:"skill"}},kit:{validate_template_ok:{code:"",text:"\u6A21\u677F\u76EE\u5F55\u89C4\u8303\u6821\u9A8C\u901A\u8FC7\uFF01",comment:"validate-template \u6210\u529F"},validate_ok:{code:"",text:"\u5DE5\u7A0B\u6821\u9A8C\u901A\u8FC7\uFF01",comment:"validate \u6210\u529F"},validate_need_script:{code:"",text:"\u5F53\u524D\u5DE5\u7A0B\u6CA1\u6709 scripts.validate\u3002\u6A21\u677F\u89C4\u8303\u8981\u6C42\u5FC5\u987B\u63D0\u4F9B\u8FD9\u6761\u6570\u636E\u68C0\u67E5\u811A\u672C\u3002",comment:"validate \u7F3A\u811A\u672C"},validate_script_loops:{code:"",text:"scripts.validate \u4E0D\u80FD\u518D\u8C03\u7528 lumimaker validate\u3002\u8BF7\u5199\u6210\u6A21\u677F\u81EA\u5DF1\u7684\u68C0\u67E5\uFF08\u4F8B\u5982 node schema/check.mjs\uFF09\u3002npx lumimaker validate \u4F1A\u8F6C\u8C03 npm run validate\u3002",comment:"validate \u5FAA\u73AF\u8C03\u7528"},bin_missing:{code:"",text:"\u627E\u4E0D\u5230\u9002\u7528\u4E8E\u5F53\u524D\u7CFB\u7EDF\u7684 lumimaker \u539F\u751F\u547D\u4EE4\u3002\u8BF7\u5728\u5DE5\u7A0B\u76EE\u5F55\u6267\u884C npm install {pkg}\uFF08\u4E0D\u8981\u52A0 --omit=optional\uFF09\u3002",comment:"\u672A\u627E\u5230\u539F\u751F CLI"},unexpected_positional:{code:"",text:"{command} \u4E0D\u63A5\u53D7\u4F4D\u7F6E\u53C2\u6570\u300C{args}\u300D\u3002\u6307\u5B9A\u6570\u636E\u5305\u76EE\u5F55\u8BF7\u7528 --assets <\u7EDD\u5BF9\u8DEF\u5F84>\uFF1B\u663E\u5F0F\u5E26\u5305\u8BF7\u7528\u5F00\u5173 --with-assets\u3002",comment:"publish-template \u8BEF\u628A\u8DEF\u5F84\u5199\u5728 --with-assets \u540E\u9762"},run_failed:{code:"",text:"\u6267\u884C\u5931\u8D25: {e}",comment:"spawn inherit \u5931\u8D25"},cli_failed:{code:"",text:"\u8C03\u7528 CLI \u5931\u8D25: {e}",comment:"spawn json \u5931\u8D25"},internal_command:{code:"",text:"\u8FD9\u4E2A\u547D\u4EE4\u4E0D\u80FD\u4ECE\u8FD9\u91CC\u4F7F\u7528\u3002\u53D1\u7248\u8BF7\u7528 publish / publish-template / publish-project\uFF1B\u521D\u59CB\u5316\u5DE5\u7A0B\u8BF7\u7528 lumimaker-create\uFF1B\u6539\u5E16\u8BF7\u5230\u7F51\u9875\u3002",comment:"\u7528\u6237\u4FA7\u8C03\u7528 games/templates/projects/init"},sys_denied:{code:"",text:"\u6CA1\u6709\u6743\u9650\uFF0C\u6216\u6587\u4EF6\u88AB\u5360\u7528",comment:"EPERM / EACCES\uFF0C\u4E0D\u6253\u5370\u7CFB\u7EDF\u8DEF\u5F84"},sys_missing:{code:"",text:"\u8DEF\u5F84\u4E0D\u5B58\u5728",comment:"ENOENT"},sys_busy:{code:"",text:"\u76EE\u5F55\u975E\u7A7A\u6216\u6587\u4EF6\u6B63\u5728\u4F7F\u7528",comment:"EBUSY / ENOTEMPTY"},sys_type:{code:"",text:"\u8DEF\u5F84\u7C7B\u578B\u4E0D\u6B63\u786E",comment:"ENOTDIR / EISDIR"},sys_invalid:{code:"",text:"\u8DEF\u5F84\u65E0\u6548",comment:"EINVAL"},sys_too_many:{code:"",text:"\u6253\u5F00\u7684\u6587\u4EF6\u8FC7\u591A",comment:"EMFILE / ENFILE"},sys_unknown:{code:"",text:"\u7CFB\u7EDF\u62D2\u7EDD\u4E86\u8FD9\u6B21\u64CD\u4F5C",comment:"\u5176\u5B83\u7CFB\u7EDF\u9519\u8BEF\uFF0C\u4E0D\u6253\u5370 Error.message \u4EE5\u514D\u4E71\u7801"},op_failed:{code:"",text:"\u64CD\u4F5C\u5931\u8D25",comment:"\u4FE1\u5C01\u65E0 error \u65F6\u7684\u515C\u5E95"},need_input:{code:"11",text:"\u8FD8\u7F3A\u9700\u8981\u5411\u7528\u6237\u786E\u8BA4\u7684\u5185\u5BB9\u3002\u8BF7\u7528\u53E3\u8BED\u95EE\u7528\u6237\uFF0C\u628A\u7B54\u6848\u5199\u6210\u547D\u4EE4\u65D7\u6807\uFF08\u6216\u5199\u5165\u4FE1\u5C01\u6807\u660E\u7684\u6587\u4EF6\u5B57\u6BB5\uFF09\u540E\u518D\u91CD\u8DD1\u3002",comment:"Agent \u9000\u51FA\u7801 11"},login_required_agent:{code:"12",text:"\u5F53\u524D\u672A\u767B\u5F55\u5E73\u53F0\u3002\u8BF7\u8BE2\u95EE\u7528\u6237\u662F\u5426\u73B0\u5728\u6253\u5F00\u6D4F\u89C8\u5668\u767B\u5F55\uFF1B\u540C\u610F\u540E\u6267\u884C npx lumimaker login\uFF0C\u5B8C\u6210\u540E\u518D\u91CD\u8DD1\u539F\u547D\u4EE4\u3002",comment:"Agent \u9000\u51FA\u7801 12"},update_available:{code:"10",text:"\u68C0\u6D4B\u5230 lumimaker \u65B0\u7248\u672C\uFF0C\u63A8\u8350\u66F4\u65B0\u3002\u8BF7\u8BE2\u95EE\u7528\u6237\u662F\u5426\u73B0\u5728\u66F4\u65B0\u3002",comment:"Agent \u9000\u51FA\u7801 10"},update_ask:{code:"",text:"\u68C0\u6D4B\u5230\u65B0\u7248\u672C\uFF0C\u63A8\u8350\u66F4\u65B0\uFF0C\u662F\u5426\u73B0\u5728\u66F4\u65B0\uFF1F",comment:"TTY \u66F4\u65B0\u786E\u8BA4"},update_not_project:{code:"",text:"\u5F53\u524D\u76EE\u5F55\u4E0D\u662F npm \u5DE5\u7A0B\uFF0C\u5DF2\u8DF3\u8FC7\u66F4\u65B0\u3002",comment:"cwd \u65E0 package.json"},update_installing:{code:"",text:"\u6B63\u5728\u628A lumimaker \u76F8\u5173\u5305\u66F4\u65B0\u5230\u6700\u65B0\u2026",comment:"npm install \u524D"},update_failed:{code:"",text:"\u66F4\u65B0\u5931\u8D25\uFF0C\u5DF2\u8DF3\u8FC7\uFF0C\u7EE7\u7EED\u6267\u884C\u539F\u547D\u4EE4\u3002",comment:"npm install \u5931\u8D25"},update_done:{code:"",text:"\u5DF2\u66F4\u65B0\u3002\u5F53\u524D\u8FDB\u7A0B\u4ECD\u662F\u65E7\u4EE3\u7801\uFF0C\u8BF7\u91CD\u65B0\u6267\u884C\u521A\u624D\u7684\u547D\u4EE4\u3002",comment:"\u66F4\u65B0\u6210\u529F\u540E\u9000\u51FA"},table_empty:{code:"",text:" (\u65E0\u6570\u636E)",comment:"\u7A7A\u8868\u9ED8\u8BA4\u6587\u6848"},validate_ok_line:{code:"",text:"\u6A21\u677F\u76EE\u5F55\u89C4\u8303\u6821\u9A8C\u901A\u8FC7",comment:"validate-template \u539F\u59CB\u6210\u529F\u884C\uFF08\u5DF2\u4E0D\u518D\u5355\u72EC\u6253\u5370\uFF09"},validate_data_ok_line:{code:"",text:"\u5DE5\u7A0B\u6821\u9A8C\u901A\u8FC7",comment:"validate \u539F\u59CB\u6210\u529F\u884C"},issue_line:{code:"",text:"{path}: {message}",comment:"\u6821\u9A8C\u5931\u8D25\u4E00\u884C\uFF1B\u82F1\u6587\u9519\u8BEF\u7801\u53EA\u7559\u5728\u5185\u90E8\u5BF9\u8C61\uFF0C\u4E0D\u4E0A\u5C4F"}},fmt:{label_status:{code:"",text:"\u72B6\u6001",comment:"whoami \u5361\u7247"},label_hint:{code:"",text:"\u5EFA\u8BAE",comment:"whoami \u5361\u7247"},label_action:{code:"",text:"\u64CD\u4F5C",comment:"whoami \u5361\u7247"},version_no:{code:"",text:"\u7B2C {n} \u7248",comment:"\u7248\u672C\u5E8F\u53F7"},data_ver:{code:"",text:"\u7B2C {ver} \u7248\uFF08\u6570\u636E\u5305 ID {id}\uFF09",comment:"\u6570\u636E\u5305\u7248\u672C"},post_id:{code:"",text:"{id}",comment:"\u793E\u533A\u5E16"},vip:{code:"",text:"VIP {n}",comment:"\u4F1A\u5458\u7B49\u7EA7"},type_template:{code:"",text:"\u6A21\u677F",comment:"\u5E16\u5B50\u7C7B\u578B"},type_game:{code:"",text:"\u4F5C\u54C1",comment:"\u5E16\u5B50\u7C7B\u578B"},type_project:{code:"",text:"\u5F00\u6E90\u5DE5\u7A0B",comment:"\u5E16\u5B50\u7C7B\u578B"},shelf_id:{code:"",text:"{type} ID",comment:"\u5E16\u5B50\u5361\u7247"},shelf_name:{code:"",text:"{type}\u540D\u79F0",comment:"\u5E16\u5B50\u5361\u7247"},label_shelf:{code:"",text:"\u4E0A\u4E0B\u67B6",comment:"shelf_status \u4E0A\u67B6/\u4E0B\u67B6\uFF0C\u4E0D\u8981\u548C\u793E\u533A\u5E16 post_url \u6DF7\u6807\u6210\u5E16\u5B50"},val_shelf_on:{code:"",text:"\u4E0A\u67B6",comment:"shelf_status=1"},val_shelf_off:{code:"",text:"\u4E0B\u67B6",comment:"shelf_status=2"},label_changelog:{code:"",text:"\u66F4\u65B0\u8BF4\u660E",comment:"\u5E16\u5B50\u5361\u7247"},label_demo_scope:{code:"",text:"\u8BD5\u73A9\u8303\u56F4",comment:"\u4F5C\u54C1\u8BE6\u60C5"},label_play_duration:{code:"",text:"\u9884\u8BA1\u65F6\u957F",comment:"\u4F5C\u54C1\u8BE6\u60C5"},label_post_id:{code:"",text:"\u5173\u8054\u5E16",comment:"\u8BE6\u60C5 query \u7684 post_id\uFF08\u6A21\u677F / \u5F00\u6E90\u5DE5\u7A0B\uFF09"},label_work_post_id:{code:"",text:"\u4F5C\u54C1\u5E16\u5B50ID",comment:"\u4F5C\u54C1\u8BE6\u60C5 / \u53D1\u4F5C\u54C1\u6210\u529F\u7684\u5E16\u5B50 id"},label_template_id:{code:"",text:"\u6A21\u677F ID",comment:"\u6A21\u677F\u8BE6\u60C5 id"},label_project_id:{code:"",text:"\u5DE5\u7A0B ID",comment:"\u5F00\u6E90\u5DE5\u7A0B\u8BE6\u60C5 id"},label_game_official_id:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1ID",comment:"\u4F5C\u54C1\u8BE6\u60C5 id"},label_game_demo_id:{code:"",text:"\u8BD5\u73A9ID",comment:"demo \u4F5C\u54C1\u8BE6\u60C5 id"},label_post_status:{code:"",text:"\u5173\u8054\u5E16\u72B6\u6001",comment:"\u8BE6\u60C5 query \u7684 post_status"},label_name:{code:"",text:"\u540D\u79F0",comment:"query \u5361\u7247"},label_type:{code:"",text:"\u7C7B\u578B",comment:"query \u5361\u7247\uFF1A\u6B63\u5F0F\u7248\u4F5C\u54C1/demo"},label_parent:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1ID",comment:"query \u5361\u7247"},label_summary:{code:"",text:"\u7B80\u4ECB",comment:"query \u5361\u7247"},label_version:{code:"",text:"\u7248\u672C",comment:"query \u5361\u7247"},val_official:{code:"",text:"\u6B63\u5F0F\u7248\u4F5C\u54C1",comment:"query \u7C7B\u578B"},val_demo:{code:"",text:"demo\u7248\u4F5C\u54C1\uFF08demo\uFF09",comment:"query \u7C7B\u578B"},val_unknown:{code:"",text:"\u672A\u77E5",comment:"\u672A\u77E5\u679A\u4E3E\u7ED9\u4EBA\u770B\u7684\u5360\u4F4D"},logout_done:{code:"",text:"\u5DF2\u9000\u51FA\u767B\u5F55",comment:"logout \u6210\u529F\u77ED\u53E5"},post_url_line:{code:"",text:"\u5E16\u5B50\uFF1A{url}",comment:"\u53D1\u7248\u6210\u529F\u540E\u72EC\u7ACB\u6253\u5370\u7684\u5DF2\u516C\u5F00\u5E16\u94FE\u63A5\uFF0C\u907F\u514D\u5361\u7247\u6298\u884C"},post_url_draft_line:{code:"",text:"\u5E16\u5B50\uFF08\u8349\u7A3F\uFF0C\u786E\u8BA4\u540E\u624D\u4F1A\u516C\u5F00\uFF09\uFF1A{url}",comment:"\u53D1\u7248\u6210\u529F\u540E\u72EC\u7ACB\u6253\u5370\u7684\u8349\u7A3F\u5E16\u94FE\u63A5"},create_pull_line:{code:"",text:"\u4ED6\u4EBA\u62C9\u53D6\uFF1A{cmd}",comment:"\u53D1\u7248\u6210\u529F\u540E\u72EC\u7ACB\u6253\u5370\u7684 create \u547D\u4EE4\uFF0C\u987B\u7528 \u7528\u6237\u540D/slug"},list_sep:{code:"",text:"\u3001",comment:"\u5217\u8868\u9879\u5206\u9694"}},validate:{forbidden_scripts_dir:{code:"FORBIDDEN_SCRIPTS_DIR",text:"\u6A21\u677F\u6839\u76EE\u5F55\u4E0D\u8981\u653E scripts/ \u6587\u4EF6\u5939\uFF08\u548C npm scripts\u3001skill/scripts \u649E\u8F66\uFF09",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_out_dir:{code:"FORBIDDEN_OUT_DIR",text:"\u4EA7\u7269\u76EE\u5F55\u53EA\u80FD\u53EB dist/\uFF0C\u4E0D\u8981\u7528 {dir}/",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_content_root:{code:"FORBIDDEN_CONTENT_ROOT",text:"\u5185\u5BB9\u653E assets/{dir}/\uFF0C\u4E0D\u8981\u5728\u6839\u76EE\u5F55\u653E {dir}/",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_template_yaml:{code:"FORBIDDEN_TEMPLATE_YAML",text:"\u4E0D\u8981 template.yaml\uFF1Bslug \u5199\u5728 package.json",comment:"\u89C4\u8303\u95E8\u7981"},missing_dir:{code:"MISSING_DIR",text:"\u7F3A\u5C11\u5FC5\u6709\u76EE\u5F55 {dir}/",comment:"\u89C4\u8303\u95E8\u7981"},empty_assets:{code:"EMPTY_ASSETS",text:"assets/ \u91CC\u81F3\u5C11\u8981\u6709\u4E00\u4E2A\u6587\u4EF6\uFF08\u53EF\u4EE5\u653E\u5728\u5B50\u76EE\u5F55\u4E2D\uFF09",comment:"\u89C4\u8303\u95E8\u7981"},assets_not_dir:{code:"ASSETS_NOT_DIR",text:"assets \u5982\u679C\u5B58\u5728\uFF0C\u5FC5\u987B\u662F\u76EE\u5F55\u3002\u53EF\u4EE5\u4E0D\u521B\u5EFA\uFF0C\u4E5F\u53EF\u4EE5\u662F\u7A7A\u76EE\u5F55",comment:"\u89C4\u8303\u95E8\u7981"},missing_file:{code:"MISSING_FILE",text:"\u7F3A\u5C11\u5FC5\u6709\u6587\u4EF6 {file}",comment:"\u89C4\u8303\u95E8\u7981"},logic_export:{code:"LOGIC_EXPORT",text:"schema/logic.mjs \u5FC5\u987B default export async function validate(data, rootDir)",comment:"\u89C4\u8303\u95E8\u7981"},invalid_json:{code:"INVALID_JSON",text:"package.json \u4E0D\u662F\u5408\u6CD5 JSON",comment:"\u89C4\u8303\u95E8\u7981"},package_not_object:{code:"PACKAGE_NOT_OBJECT",text:"package.json \u5FC5\u987B\u662F JSON \u5BF9\u8C61",comment:"\u89C4\u8303\u95E8\u7981"},missing_name:{code:"MISSING_NAME",text:"package.json \u5FC5\u987B\u6709\u5E73\u53F0\u5C55\u793A\u540D name\uFF0C\u53BB\u6389\u9996\u5C3E\u7A7A\u767D\u540E\u4E0D\u80FD\u4E3A\u7A7A",comment:"\u89C4\u8303\u95E8\u7981"},invalid_name:{code:"INVALID_NAME",text:"name \u4E0D\u80FD\u5305\u542B / \u6216 @",comment:"\u89C4\u8303\u95E8\u7981"},missing_version:{code:"MISSING_VERSION",text:"package.json \u5FC5\u987B\u6709\u6A21\u677F\u7248\u672C\u53F7 version\uFF08\u5982 0.1.0\u30011.0.0-a\uFF09",comment:"\u89C4\u8303\u95E8\u7981"},invalid_description:{code:"INVALID_DESCRIPTION",text:"description \u53EF\u4EE5\u4E0D\u5199\uFF1B\u5982\u679C\u5199\u4E86\uFF0C\u5FC5\u987B\u662F\u5B57\u7B26\u4E32\uFF0C\u53EF\u4EE5\u4E3A\u7A7A\u5B57\u7B26\u4E32",comment:"\u89C4\u8303\u95E8\u7981"},scripts_type:{code:"SCRIPTS_TYPE",text:"package.json \u7684 scripts \u5FC5\u987B\u662F\u5BF9\u8C61\uFF0C\u5E76\u5305\u542B dev\u3001dev:demo\u3001build\u3001build:demo\u3001validate",comment:"\u89C4\u8303\u95E8\u7981"},build_failed:{code:"BUILD_FAILED",text:"npm run {name} \u6CA1\u6709\u6210\u529F\u3002\u8FD9\u4E2A\u811A\u672C\u5FC5\u987B\u5728\u5DE5\u7A0B\u6839\u76EE\u5F55\u751F\u6210 dist/index.html",comment:"\u89C4\u8303\u95E8\u7981"},missing_build_index:{code:"MISSING_BUILD_INDEX",text:"npm run {name} \u7ED3\u675F\u540E\u6CA1\u6709 dist/index.html\u3002\u6784\u5EFA\u7ED3\u679C\u5FC5\u987B\u5199\u5230 dist/\uFF0C\u5E76\u4E14\u5305\u542B\u5165\u53E3 index.html",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_template_id:{code:"FORBIDDEN_TEMPLATE_ID",text:"package.json \u4E0D\u8981\u624B\u5199\u6A21\u677F ID\uFF0C\u8EAB\u4EFD\u7531\u5E73\u53F0\u7B7E\u53D1\u7684 origin.json \u4FDD\u5B58",comment:"\u89C4\u8303\u95E8\u7981"},missing_slug:{code:"MISSING_SLUG",text:"package.json \u5FC5\u987B\u6709\u82F1\u6587\u77ED\u540D slug\uFF08\u5B89\u88C5\u8DEF\u5F84\u540E\u534A\u6BB5\uFF0C\u4E0D\u662F name\uFF09",comment:"\u89C4\u8303\u95E8\u7981"},invalid_slug:{code:"INVALID_SLUG",text:"\u82F1\u6587\u77ED\u540D slug \u987B\u5339\u914D ^[a-z0-9][a-z0-9-]{0,62}$",comment:"\u89C4\u8303\u95E8\u7981"},invalid_version:{code:"INVALID_VERSION",text:"\u6A21\u677F package.json \u7684 version \u683C\u5F0F\u65E0\u6548\uFF1A\u987B 1\u201316 \u4F4D\uFF0C\u4EC5\u5C0F\u5199\u5B57\u6BCD\u3001\u6570\u5B57\u3001`.`\u3001`-`\uFF1B\u5FC5\u987B\u4EE5\u5B57\u6BCD\u6216\u6570\u5B57\u5F00\u5934\u548C\u7ED3\u5C3E\uFF0C\u4E14\u4E0D\u80FD\u6709\u8FDE\u7EED\u7B26\u53F7\u3002\u793A\u4F8B\uFF1A0.1.0\u30011.0.0-a",comment:"\u89C4\u8303\u95E8\u7981"},missing_data_ver:{code:"MISSING_DATA_VER",text:'package.json \u5FC5\u987B\u6709\u6570\u636E\u5305\u7248\u672C\u53F7\uFF08\u5982 "1"\uFF09',comment:"\u89C4\u8303\u95E8\u7981"},invalid_data_ver:{code:"INVALID_DATA_VER",text:"data_ver \u5FC5\u987B\u662F\u53BB\u6389\u9996\u5C3E\u7A7A\u767D\u540E\u4E0D\u4E3A\u7A7A\u7684\u5B57\u7B26\u4E32\uFF0C\u6216\u4E00\u4E2A\u6709\u9650\u6570\u5B57",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_bin:{code:"FORBIDDEN_BIN",text:"\u6A21\u677F\u5DE5\u7A0B\u4E0D\u8981\u8BBE\u7F6E bin\uFF0C\u907F\u514D\u4F5C\u8005\u8BEF npx \u5230\u6A21\u677F",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_package_manager:{code:"FORBIDDEN_PACKAGE_MANAGER",text:"\u4E0D\u8981\u5199 packageManager\uFF08\u4F5C\u8005\u73AF\u5883\u53EA\u7528 Node \u81EA\u5E26\u7684 npm\uFF09",comment:"\u89C4\u8303\u95E8\u7981"},missing_script:{code:"MISSING_SCRIPT",text:"package.json \u7F3A\u5C11 scripts.{name}",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_script:{code:"FORBIDDEN_SCRIPT",text:"\u4E0D\u8981\u628A\u811A\u672C\u547D\u540D\u4E3A {name}\uFF08\u4F1A\u548C npm {name} \u649E\u8F66\uFF09\u3002\u8BF7\u7528 npx lumimaker {name}",comment:"\u89C4\u8303\u95E8\u7981"},forbidden_validate_demo:{code:"FORBIDDEN_SCRIPT",text:"\u4E0D\u8981 scripts.validate:demo\u3002\u5F00\u53D1\u670D\u52A1\u548C\u6253\u5305\u624D\u5206\u6B63\u5F0F/\u8BD5\u73A9\uFF1B\u6570\u636E\u6821\u9A8C\u53EA\u6709 scripts.validate\uFF0C\u6709\u72EC\u7ACB\u8BD5\u73A9\u6570\u636E\u65F6\u540C\u4E00\u6761\u547D\u4EE4\u68C0\u67E5\u4E24\u4EFD",comment:"\u89C4\u8303\u95E8\u7981"},missing_gitignore:{code:"MISSING_GITIGNORE",text:"\u7F3A\u5C11 .gitignore\uFF0C\u4E14\u5FC5\u987B\u5FFD\u7565 dist/ \u4E0E node_modules/",comment:"\u89C4\u8303\u95E8\u7981"},gitignore_dist:{code:"GITIGNORE_DIST",text:".gitignore \u5FC5\u987B\u5FFD\u7565 dist/",comment:"\u89C4\u8303\u95E8\u7981"},gitignore_node_modules:{code:"GITIGNORE_NODE_MODULES",text:".gitignore \u5FC5\u987B\u5FFD\u7565 node_modules/",comment:"\u89C4\u8303\u95E8\u7981"},absolute_asset_path:{code:"ABSOLUTE_ASSET_PATH",text:"{rel} \u5FC5\u987B\u7528\u76F8\u5BF9\u8DEF\u5F84\uFF08Vite \u8BBE base: './'\uFF09\uFF0C\u624D\u80FD\u653E\u5230\u4EFB\u610F\u9759\u6001\u6258\u7BA1\u5B50\u76EE\u5F55",comment:"dist \u68C0\u67E5"},missing_dist:{code:"MISSING_DIST",text:"\u7F3A\u5C11 {entry}\u3002\u8BF7\u5148 npm run build\uFF0C\u4E14 outDir \u5FC5\u987B\u662F dist",comment:"dist \u68C0\u67E5"},missing_game_html:{code:"MISSING_GAME_HTML",text:"dist/ \u81F3\u5C11\u8981\u6709 1 \u4E2A\u5165\u53E3\u9875 index.{lang}.{h|v}.html\uFF08\u5982 index.zh.h.html\uFF09\u3002\u5355\u9875\u6A21\u677F\u53EF\u5728 build \u540E\u628A index.html \u62F7\u4E00\u4EFD\u4F5C fallback",comment:"dist \u68C0\u67E5"},dist_html_name:{code:"DIST_HTML_NAME",text:"\u4EA7\u7269 HTML \u547D\u540D\u4E0D\u7B26\u5408\u7EA6\u5B9A\u3002\u5165\u53E3\u9875\u7528 index.{lang}.{h|v}.html\uFF0C\u65B9\u5411\u9996\u9875\u7528 index.h.html / index.v.html\uFF0C\u53E6\u5141\u8BB8 start.html\u3001404.html\u3001privacy.html\u3001offline.html",comment:"dist \u68C0\u67E5"},invalid_asset:{code:"INVALID_ASSET",text:"\u6570\u636E\u5305\u8DEF\u5F84\u4E0D\u5408\u6CD5: {rel}",comment:"\u6570\u636E\u6821\u9A8C"},missing_asset:{code:"MISSING_ASSET",text:"\u6570\u636E\u5305\u6587\u4EF6\u4E0D\u5B58\u5728: assets/{posix}",comment:"\u6570\u636E\u6821\u9A8C"},asset_case:{code:"ASSET_CASE",text:"\u6570\u636E\u5305\u8DEF\u5F84\u5927\u5C0F\u5199\u4E0D\u4E00\u81F4: JSON \u5199 assets/{posix}\uFF0C\u78C1\u76D8\u4E0A\u662F assets/{actual}\uFF08Linux \u6258\u7BA1\u4F1A\u627E\u4E0D\u5230\uFF09",comment:"\u6570\u636E\u6821\u9A8C"},schema_failed:{code:"SCHEMA",text:"schema \u6821\u9A8C\u5931\u8D25",comment:"\u6570\u636E\u6821\u9A8C\u515C\u5E95"},schema_detail:{code:"SCHEMA",text:"{path} {message}",comment:"Ajv \u9519\u8BEF"},theme_schema_failed:{code:"THEME_SCHEMA",text:"theme schema \u6821\u9A8C\u5931\u8D25",comment:"\u6570\u636E\u6821\u9A8C\u515C\u5E95"}}};function Lo(){let e={...$t,...Ft};return delete e._comment,e}var f=Lo();function we(e,t){if(!t)return e;let n=e;for(let[o,r]of Object.entries(t))n=n.split(`{${o}}`).join(String(r));return n}function s(e,t,n){let o=f[e]?.[t];if(!o?.text)throw new Error(`missing cli message ${String(e)}.${t}`);return we(o.text,n)}function y(e,t,n){let o=f.validate[t];if(!o)throw new Error(`missing validate message ${t}`);return{path:e,code:o.code,message:we(o.text,n)}}var Mo=/^[a-z0-9][a-z0-9-]{0,62}$/;function se(e){return Mo.test(e.trim())}function N(e){return ae(e)===void 0}function ae(e){let t=e.trim();if(!t)return"empty";if(t.includes("/")||t.includes("@"))return"invalid"}function Y(e){let t=e?.trim()??"";return!t||N(t)}var Vt="^(?=.{1,16}$)[a-z0-9]+(?:[.-][a-z0-9]+)*$",Ut=new RegExp(Vt);function L(e){return Ut.test(e)}var Fo=["src"],Vo=["package.json","README.md","AGENTS.md"],Uo=["dev","dev:demo","build","build:demo","validate"],qo=["build","build:demo"],Bo=/^[a-z0-9][a-z0-9-]{0,62}$/;function qt(e,t){let n=V.join(e,t);return A.existsSync(n)&&A.statSync(n).isFile()}function Jo(e,t){let n=V.join(e,t);return A.existsSync(n)&&A.statSync(n).isDirectory()}function Bt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Go(e){let t=[];for(let m of Fo)Jo(e,m)||t.push(y(`/${m}/`,"missing_dir",{dir:m}));let n=V.join(e,"assets");A.existsSync(n)&&!A.statSync(n).isDirectory()&&t.push(y("/assets","assets_not_dir"));for(let m of Vo)qt(e,m)||t.push(y(`/${m}`,"missing_file",{file:m}));if(!qt(e,"package.json"))return{ok:!1,errors:t};let o;try{o=JSON.parse(A.readFileSync(V.join(e,"package.json"),"utf8"))}catch{return t.push(y("/package.json","invalid_json")),{ok:!1,errors:t}}if(!Bt(o))return t.push(y("/package.json","package_not_object")),{ok:!1,errors:t};let r=o.name;if(typeof r!="string")t.push(y("/package.json","missing_name"));else{let m=ae(r);m==="empty"?t.push(y("/package.json","missing_name")):m==="invalid"&&t.push(y("/package.json","invalid_name"))}let i=o.slug;typeof i!="string"||i.trim()===""?t.push(y("/package.json","missing_slug")):Bo.test(i)||t.push(y("/package.json","invalid_slug"));let a=o.version;typeof a!="string"||a.trim()===""?t.push(y("/package.json","missing_version")):L(a)||t.push(y("/package.json","invalid_version"));let c=o.data_ver;if(c==null?t.push(y("/package.json","missing_data_ver")):typeof c=="string"?c.trim()===""&&t.push(y("/package.json","invalid_data_ver")):(typeof c!="number"||!Number.isFinite(c))&&t.push(y("/package.json","invalid_data_ver")),"description"in o&&typeof o.description!="string"&&t.push(y("/package.json","invalid_description")),!Bt(o.scripts))t.push(y("/package.json","scripts_type"));else for(let m of Uo){let l=o.scripts[m];(typeof l!="string"||l.trim()==="")&&t.push(y("/package.json","missing_script",{name:m}))}return{ok:t.length===0,errors:t}}function Wo(e,t){return new Promise((n,o)=>{let r=Oo("npm",["run",t],{cwd:e,stdio:"inherit",shell:process.platform==="win32"});r.on("error",o),r.on("close",i=>n(i??1))})}function Qo(e){let t=V.join(e,"dist","index.html");return A.existsSync(t)&&A.statSync(t).isFile()}async function Ko(e){let t=V.join(e,"dist"),n=A.mkdtempSync(V.join($o.tmpdir(),"lumimaker-dist-")),o=V.join(n,"dist"),r=A.existsSync(t);r&&A.cpSync(t,o,{recursive:!0});let i=[];try{for(let a of qo){A.rmSync(V.join(t,"index.html"),{force:!0});try{await Wo(e,a)}catch{i.push(y("/dist/index.html","missing_build_index",{name:a}));continue}Qo(e)||i.push(y("/dist/index.html","missing_build_index",{name:a}))}i.length&&r&&(A.rmSync(t,{recursive:!0,force:!0}),A.cpSync(o,t,{recursive:!0}))}finally{A.rmSync(n,{recursive:!0,force:!0})}return i}async function Ho(e){let t=Go(e);if(!t.ok)return t;let n=await Ko(e);return{ok:n.length===0,errors:n}}async function Se(e){let{ok:t,errors:n}=await Ho(e);if(!t){for(let o of n)console.error(s("kit","issue_line",{path:o.path,message:o.message}));process.exit(1)}}import Jt from"node:fs";import Yo from"node:path";import{spawn as zo}from"node:child_process";import{createRequire as Xo}from"node:module";var Zo=Xo(import.meta.url),Gt=Zo("ajv"),Vs=Gt.default??Gt;var Wt="LUMIMAKER_VALIDATE_DISPATCH",ce=class extends Error{exitCode;constructor(t){super("validate_script_failed"),this.name="ValidateScriptFailed",this.exitCode=t}};function er(e){let t=e.trim().replace(/\s+/g," ");return/^(npx\s+)?(@66rpg\/lumimaker|lumimaker)\s+validate(\s|$)/i.test(t)}function tr(e){let t=Yo.join(e,"package.json");if(Jt.existsSync(t))try{let o=JSON.parse(Jt.readFileSync(t,"utf8")).scripts?.validate;return typeof o!="string"||!o.trim()?void 0:o}catch{return}}function nr(e){if(process.env[Wt]==="1")throw new Error(s("kit","validate_script_loops"));let t=tr(e);if(!t)throw new Error(s("kit","validate_need_script"));if(er(t))throw new Error(s("kit","validate_script_loops"))}function or(){return process.platform==="win32"?"npm.cmd":"npm"}function rr(e){let t=process.platform==="win32";return new Promise((n,o)=>{let r=zo(or(),["run","validate"],{cwd:e,stdio:"inherit",env:{...process.env,[Wt]:"1"},shell:t,windowsHide:t});r.on("error",o),r.on("close",i=>n(i??1))})}async function Je(e){nr(e);let t=await rr(e);if(t!==0)throw new ce(t)}import R from"node:fs";import W from"node:path";import Ge from"node:fs";import Qt from"node:path";var ir=".lumimaker",sr=".cgmaker";function E(e){let t=Qt.join(e,ir),n=Qt.join(e,sr);if(Ge.existsSync(t)||!Ge.existsSync(n))return t;try{return Ge.renameSync(n,t),t}catch{return n}}var Qe=new Set(["json","verbose","help","demo","init","if-needed","force","no-interactive","no-data","all","agent","apply-update","skip-update","skip-skill","skill-skip","with-assets","as-new","yes"]),ar=new Set(["publish-template","publish-template-data"]);function Kt(e){return!e.command||!ar.has(e.command)?[]:e.positionals.slice(1)}var Ht=new Set(["no-interactive","agent","json","apply-update","skip-update","yes"]);function Yt(e){let t=e.slice(2),n={},o=[];for(let w=0;w<t.length;w++){let d=t[w];if(d==="--"){o.push(...t.slice(w+1));break}if(d.startsWith("--")){let P=d.indexOf("=");if(P!==-1){let v=d.slice(2,P),C=d.slice(P+1);n[v]=C}else{let v=d.slice(2);if(Qe.has(v))n[v]=!0;else if(v==="version"){let C=t[w+1];C&&!C.startsWith("-")?(n[v]=C,w++):n[v]=!0}else{let C=t[w+1];C&&!C.startsWith("-")?(n[v]=C,w++):n[v]=!0}}continue}if(d.startsWith("-")&&d.length>1){let P=d.slice(1);P==="v"?n.verbose=!0:P==="h"?n.help=!0:P==="V"?n.V=!0:n[P]=!0;continue}o.push(d)}let r=process.env.LUMIMAKER_OUTPUT==="json",i=!!n.verbose||!!n.v,a=!!n["no-interactive"]||process.env.CI==="true"||process.env.LUMIMAKER_NO_INTERACTIVE==="1",c=!r&&!a&&!!(process.stdin.isTTY&&process.stdout.isTTY),m=o[0],l=o[1],u=typeof n.config=="string"?n.config:void 0,g=!m&&(n.version===!0||n.V===!0);return{raw:t,command:m,subcommand:l,flags:n,positionals:o,isJson:r,isVerbose:i,isInteractive:c,wantsVersion:g,configPath:u}}function O(e=process.cwd()){try{let t=W.join(e,"package.json");if(R.existsSync(t)){let n=JSON.parse(R.readFileSync(t,"utf8")),o=n.data_ver,r=n.data_summary;return{name:typeof n.name=="string"?n.name:void 0,slug:typeof n.slug=="string"?n.slug:void 0,version:typeof n.version=="string"?n.version:void 0,data_ver:o!=null&&String(o).trim()!==""?String(o).trim():void 0,data_summary:typeof r=="string"&&r.trim()?r.trim():void 0}}}catch{}return null}function U(e,t=process.cwd()){let n=W.join(t,"package.json");try{if(!R.existsSync(n))return!1;let o=JSON.parse(R.readFileSync(n,"utf8"));for(let[r,i]of Object.entries(e)){if(i===void 0)continue;let a=i.trim();if(!a){delete o[r];continue}o[r]=a}return R.writeFileSync(n,`${JSON.stringify(o,null,2)}
2
+ `),!0}catch{return!1}}var cr=new Set(["publish","publish-template","publish-template-data","publish-project"]);function We(e,t){let n=e[t];return typeof n!="string"?void 0:n.trim()||void 0}function zt(e,t,n=process.cwd()){if(!e||!cr.has(e))return!1;delete t.changelog;let o={},r=We(t,"name"),i=We(t,"version"),a=We(t,"data-ver");return r&&(N(r)&&Y(O(n)?.name)?o.name=r:N(r)||delete t.name),i&&(o.version=i),a&&(o.data_ver=a),!o.name&&!o.version&&!o.data_ver||!U(o,n)?!1:(o.name&&delete t.name,o.version&&delete t.version,o.data_ver&&delete t["data-ver"],!0)}function Ie(e=process.cwd()){try{let t=W.join(E(e),"game.json");if(R.existsSync(t))return JSON.parse(R.readFileSync(t,"utf8"))}catch{}return null}function je(e=process.cwd()){try{let t=W.join(E(e),"origin.json");if(R.existsSync(t))return JSON.parse(R.readFileSync(t,"utf8"))}catch{}return null}function le(e=process.cwd()){return lr(W.join(e,"assets"))}function lr(e){try{if(!R.existsSync(e)||!R.statSync(e).isDirectory())return!1;let t=[e];for(;t.length;){let n=t.pop();for(let o of R.readdirSync(n)){let r=W.join(n,o),i=R.statSync(r);if(i.isFile())return!0;i.isDirectory()&&t.push(r)}}}catch{}return!1}function Ae(e=process.cwd()){try{let t=W.join(E(e),"project.json");if(R.existsSync(t))return JSON.parse(R.readFileSync(t,"utf8"))}catch{}return null}import _r from"node:fs";import gr from"node:path";import mr from"node:fs";import Ke from"node:path";import{fileURLToPath as ur}from"node:url";function q(){let e=Ke.dirname(ur(import.meta.url));for(;;){if(mr.existsSync(Ke.join(e,"package.json")))return e;let t=Ke.dirname(e);if(t===e)throw new Error("lumimaker kit package root not found");e=t}}var dr=[{id:"workbuddy",tokens:["workbuddy"]},{id:"codebuddy",tokens:["codebuddy"]},{id:"cursor",tokens:["cursor"]},{id:"opencode",tokens:["opencode"]},{id:"claude",tokens:["claudecode","claude"]},{id:"codex",tokens:["codex"]},{id:"trae",tokens:["trae"]},{id:"kimi",tokens:["kimi"]},{id:"qwen",tokens:["qwen"]}];function pr(e){let t=[" "];for(let n of e){let o="";for(let r of n.toLowerCase())r>="a"&&r<="z"||r>="0"&&r<="9"?o+=r:o?(t.push(o," "),o=""):t[t.length-1]!==" "&&t.push(" ");o&&t.push(o," ")}return t.join("")}function fr(e){let t=[];for(let[n,o]of Object.entries(e))n&&t.push(n),typeof o=="string"&&o&&t.push(o);return t}function z(e=process.env){let t=pr(fr(e));for(let{id:n,tokens:o}of dr)if(o.some(r=>t.includes(` ${r} `)))return n}function Ee(e,t){return!t||!e.includes(t)?[...e]:[t,...e.filter(n=>n!==t)]}function x(e,t){let n=e[t];if(typeof n!="string")return;let o=n.trim();return o||void 0}function en(e,t){return t.some(n=>n.optional!==!0)}function tn(e,t){let n=x(e,"name"),o=t?.name?.trim()||void 0;return n&&N(n)?n:o&&N(o)?o:n||o}function He(e,t,n){let o=tn(e,t);return o?!N(o):me(n?.template_id)?!1:!ue(n)}function Xt(e){let t=(e??"").trim();return t&&t!=="0"?t:void 0}function Ye(e){return e.demo===!0||String(e.variant??"")==="2"}function ze(e){let t=Xt(e?.game_id),n=Xt(e?.demo_game_id),o;return t&&n?o=s("prompt","publish_have_both",{official:t,demo:n}):t?o=s("prompt","publish_have_official",{id:t}):n?o=s("prompt","publish_have_demo",{id:n}):o=s("prompt","publish_have_none"),`${o}
3
+ ${s("prompt","publish_variant")}`}function Xe(e,t,n){let o=x(e,"name")||t?.name?.trim()||s("prompt","publish_confirm_unnamed"),r=x(e,"version")||t?.version?.trim()||"-",i=Ye(e),a=i?s("prompt","publish_confirm_demo"):s("prompt","publish_confirm_official"),c=[s("prompt","publish_confirm"),s("prompt","publish_confirm_name",{name:o}),s("prompt","publish_confirm_version",{version:r}),s("prompt","publish_confirm_variant",{variant:a})],m=x(e,"parent")||i&&n?.game_id?.trim()||void 0;return i&&m&&c.push(s("prompt","publish_confirm_parent",{id:m})),c.join(`
4
+ `)}function me(e){if(e==null)return!1;let t=e.trim();return!t||t==="local"||t==="0"}function ue(e){let t=(e?.template_id??"").trim();return!!t&&t!=="local"&&t!=="0"}function Ze(e,t){return e["no-data"]===!0||e.init===!0?!1:e.fork?e["with-assets"]===!0||!!x(e,"assets"):me(t?.template_id)?!1:ue(t)?e["with-assets"]===!0||!!x(e,"assets"):!0}function et(e,t,n){if(x(e,"data-ver"))return!1;let o=(t??"").trim();return o&&o!=="0"?!1:Ze(e,n)}function tt(e,t,n){return x(e,"data-summary")||(t??"").trim()?!1:Ze(e,n)}function nt(e,t,n=!0){return Ze(e,t)?!n:!1}function ot(){try{let e=gr.join(q(),"skill-targets.json"),t=JSON.parse(_r.readFileSync(e,"utf8")),n=[];for(let o of t.projectSkillDirs??[]){let i=(o.replace(/\\/g,"/").split("/").find(Boolean)??"").replace(/^\./,"").toLowerCase();i&&!n.includes(i)&&n.push(i)}return n}catch{return["cursor"]}}function nn(e,t={}){let n=t.cwd??process.cwd(),o=e.flags,r=e.command,i=t.pkg!==void 0?t.pkg:O(n),a=t.game!==void 0?t.game:Ie(n),c=t.origin!==void 0?t.origin:je(n),m=t.project!==void 0?t.project:Ae(n),l=t.skillIds??ot(),u=t.hasAssets??le(n);return r?r==="publish"?br(o,i,a):r==="publish-template"?xr(o,i,c,u):r==="publish-template-data"?vr(o,i,c,u):r==="publish-project"?yr(o,i,m):r==="login"?[]:r==="skill"?kr(o,l,t.detectedEditor):[]:hr()}function hr(){return[{id:"main.command",kind:"select",question:s("prompt","main_message"),recommended:!0,options:[{value:"publish",label:s("prompt","main_publish_label")},{value:"publish-template",label:s("prompt","main_publish_template_label")},{value:"publish-template-data",label:s("prompt","main_publish_template_data_label")},{value:"publish-project",label:s("prompt","main_publish_project_label")},{value:"login",label:s("prompt","main_login_label")},{value:"whoami",label:s("prompt","main_whoami_label")},{value:"validate-template",label:s("prompt","main_validate_template_label")},{value:"skill",label:s("prompt","main_skill_label")},{value:"logout",label:s("prompt","main_logout_label")}]}]}function br(e,t,n){let o=[];return!e.version&&!(t?.version??"").trim()&&o.push({id:"publish.version",kind:"text",question:s("prompt","publish_version"),field:"package.json.version",recommended:!0,default:"1.0.0"}),!x(e,"name")&&!(t?.name??"").trim()&&!n?.game_id&&o.push({id:"publish.name",kind:"text",question:s("prompt","publish_name"),field:"package.json.name",optional:!0,default:t?.name||"game"}),e.demo===void 0&&e.variant===void 0?(o.push({id:"publish.variant",kind:"select",question:ze(n),recommended:!0,options:[{value:"official",label:s("prompt","publish_official_label"),flag:"--variant 1"},{value:"demo",label:s("prompt","publish_demo_label"),flag:"--demo"}]}),o):(Ye(e)&&!e.parent&&o.push({id:"publish.parent",kind:"text",question:s("prompt","publish_parent"),flag:"--parent",optional:!0,default:n?.game_id||void 0}),Zt(e,n)&&!x(e,"demo-scope")&&o.push({id:"publish.demo-scope",kind:"text",question:s("prompt","publish_demo_scope"),flag:"--demo-scope",optional:!0}),Zt(e,n)&&!x(e,"play-duration")&&o.push({id:"publish.play-duration",kind:"text",question:s("prompt","publish_play_duration"),flag:"--play-duration",optional:!0}),o.filter(i=>i.optional!==!0).length===0&&e.yes!==!0&&o.push({id:"publish.confirm",kind:"confirm",question:Xe(e,t,n),flag:"--yes",recommended:!0}),o)}function Zt(e,t){return x(e,"game-id")?!1:Ye(e)?!(t?.demo_game_id??"").trim():!(t?.game_id??"").trim()}function xr(e,t,n,o){let r=[],i=typeof e.version=="string"?e.version.trim():"",a=(t?.version??"").trim(),c=i||a;i&&!L(i)?r.push({id:"publish-template.version",kind:"text",question:s("prompt","tpl_version"),field:"package.json.version",recommended:!0,default:a||"0.1.0"}):c?!i&&a&&!L(a)&&r.push({id:"publish-template.version",kind:"text",question:s("prompt","tpl_version"),field:"package.json.version",recommended:!0,default:"0.1.0"}):r.push({id:"publish-template.version",kind:"text",question:s("prompt","tpl_version"),field:"package.json.version",recommended:!0,default:"0.1.0"});let m=(t?.slug??"").trim();if(se(m)||r.push({id:"publish-template.slug",kind:"text",question:s("prompt","tpl_slug"),field:"package.json.slug",recommended:!0}),He(e,t,n)){let l=tn(e,t),u=(l&&N(l)?l:void 0)||t?.slug?.trim()||void 0,g=Y(t?.name);r.push({id:"publish-template.name",kind:"text",question:s("prompt","tpl_name"),field:g?"package.json.name":void 0,flag:g?void 0:"--name",recommended:!0,default:u&&N(u)?u:void 0})}return!e.init&&!e.fork&&!ue(n)&&!me(n?.template_id)&&(r.push({id:"publish-template.mode",kind:"select",question:s("prompt","tpl_mode"),optional:!0,recommended:!0,default:"publish",options:[{value:"publish",label:s("prompt","tpl_publish_label"),flag:""},{value:"fork",label:s("prompt","tpl_fork_label"),flag:"--fork"}]}),r.push({id:"publish-template.fork",kind:"text",question:s("prompt","tpl_fork_id"),flag:"--fork",optional:!0})),et(e,t?.data_ver,n)&&r.push({id:"publish-template.data-ver",kind:"text",question:s("prompt","data_ver_ask"),field:"package.json.data_ver",recommended:!0}),tt(e,t?.data_summary,n)&&r.push({id:"publish-template.data-summary",kind:"text",question:s("prompt","data_summary"),flag:"--data-summary",optional:!0}),nt(e,n,o)&&r.push({id:"publish-template.assets",kind:"confirm",question:s("prompt","data_assets"),recommended:!0}),e.fork&&!x(e,"data-id")&&!x(e,"data-ver-id")&&r.push({id:"publish-template.data-id",kind:"text",question:s("prompt","tpl_data_id"),flag:"--data-id",optional:!0}),r}function vr(e,t,n,o){let r=[];if(!x(e,"data-ver")){let i=(t?.data_ver??"").trim();i&&i!=="0"&&i||r.push({id:"publish-template-data.data-ver",kind:"text",question:s("prompt","data_ver_ask"),field:"package.json.data_ver",recommended:!0})}return!x(e,"data-summary")&&!(t?.data_summary??"").trim()&&r.push({id:"publish-template-data.data-summary",kind:"text",question:s("prompt","data_summary"),flag:"--data-summary",optional:!0}),o||r.push({id:"publish-template-data.assets",kind:"confirm",question:s("prompt","data_assets"),recommended:!0}),r}function yr(e,t,n){let o=[];return!e.version&&!(t?.version??"").trim()&&o.push({id:"publish-project.version",kind:"text",question:s("prompt","proj_version"),field:"package.json.version",recommended:!0,default:"1.0.0"}),!x(e,"name")&&!(t?.name??"").trim()&&!n?.project_id&&o.push({id:"publish-project.name",kind:"text",question:s("prompt","proj_name"),field:"package.json.name",recommended:!0,default:t?.name||"open-source-project"}),!e.summary&&!n?.project_id&&o.push({id:"publish-project.summary",kind:"text",question:s("prompt","proj_summary"),flag:"--summary",optional:!0}),!e.cover&&!n?.project_id&&o.push({id:"publish-project.cover",kind:"text",question:s("prompt","proj_cover"),flag:"--cover",optional:!0}),o}function kr(e,t,n){if(typeof e.platform=="string"&&e.platform!==""||e.all===!0)return[];let r=n!==void 0?n??void 0:z(),i=r&&t.includes(r)?r:void 0,a=s("prompt","skill_current_suffix"),c=i?s("prompt","skill_platform_detected",{id:i}):s("prompt","skill_platform");return[{id:"skill.platform",kind:"select",question:c,recommended:!0,default:i,options:[...Ee(t,i).map(m=>({value:m,label:m===i?`${m}${a}`:m,flag:`--platform ${m}`,recommended:m===i})),{value:"__all__",label:s("prompt","skill_all_label"),flag:"--all"}]}]}function on(e,t=process.env){return t.CI==="true"||t.LUMIMAKER_NO_INTERACTIVE==="1"||e?.["no-interactive"]===!0}function rt(e=process.stdin,t=process.stdout){return!!(e.isTTY&&t.isTTY)}function Re(e,t){let n=t?.env??process.env,o=e?.flags;return on(o,n)||(t?.tty??rt())?!1:!!z(n)}function rn(){process.env.LUMIMAKER_AGENT="1"}function sn(e){return on(e)?!0:process.env.LUMIMAKER_SKIP_UPDATE==="1"}function it(e){process.stdout.write(`${JSON.stringify(e,null,2)}
5
+ `)}function an(e,t){it({success:!1,code:11,command:"need-input",message:e,data:{questions:t}})}function cn(e){it({success:!1,code:12,command:"login-required",message:e,data:{apply:"npx lumimaker login",hint:"\u8BF7\u8BE2\u95EE\u7528\u6237\u662F\u5426\u73B0\u5728\u767B\u5F55\u3002\u540C\u610F\u540E\u6267\u884C login\uFF08\u4F1A\u6253\u5F00\u6D4F\u89C8\u5668\uFF09\uFF0C\u5B8C\u6210\u540E\u518D\u539F\u6837\u91CD\u8DD1\u521A\u624D\u7684\u547D\u4EE4\u3002"}})}function ln(e,t){it({success:!1,code:10,command:"update-available",message:e,data:{packages:t,apply:"npx lumimaker --apply-update",skip:"npx lumimaker --skip-update <\u539F\u547D\u4EE4\u4E0E\u53C2\u6570>"}})}import Z from"node:fs";import Dr from"node:os";import _e from"node:path";import{spawnSync as Lr}from"node:child_process";import*as Ne from"@clack/prompts";import st from"node:fs";import I from"node:path";import{spawnSync as wr}from"node:child_process";import{createRequire as Sr}from"node:module";import{fileURLToPath as Ir}from"node:url";var mn=Sr(import.meta.url),jr=["com.apple.quarantine","com.apple.provenance","com.apple.macl"];function at(){return process.platform==="win32"?"lumimaker.exe":"lumimaker"}function Ar(){let e=process.platform,t=process.arch;return e==="darwin"&&t==="arm64"?["aarch64-apple-darwin"]:e==="darwin"&&t==="x64"?["x86_64-apple-darwin"]:e==="win32"?["x86_64-pc-windows-gnu","x86_64-pc-windows-msvc"]:e==="linux"&&t==="x64"?["x86_64-unknown-linux-gnu","x86_64-unknown-linux-musl"]:e==="linux"&&t==="arm64"?["aarch64-unknown-linux-gnu","aarch64-unknown-linux-musl"]:[]}function Er(e){let t=at(),n=[];for(let o of["release","debug"]){for(let r of Ar())n.push(I.join(e,r,o,t));n.push(I.join(e,o,t))}return n}function de(e){try{return st.statSync(e).isFile()}catch{return!1}}function Rr(e){for(let t of e)if(t){for(let n of Er(t))if(de(n))return n}return null}function X(){let e=process.platform,t=process.arch;return e==="darwin"&&t==="arm64"?"@66rpg/lumimaker-darwin-arm64":e==="darwin"&&t==="x64"?"@66rpg/lumimaker-darwin-x64":e==="win32"?"@66rpg/lumimaker-win32-x64":null}function Pr(e,t,n=process.cwd()){let o=[],r=i=>{let a=I.resolve(i);o.includes(a)||o.push(a)};r(I.join(t,"node_modules",e)),r(I.join(I.dirname(t),I.basename(e))),r(I.join(n,"node_modules",e));for(let i of[t,n]){let a=I.resolve(i);for(let c=0;c<12;c++){r(I.join(a,"node_modules",e));let m=I.dirname(a);if(m===a)break;a=m}}return o}function un(e){let t=I.join(e,at());return de(t)?t:null}function Nr(e,t,n=process.cwd()){for(let o of Pr(e,t,n)){let r=un(o);if(r)return r}return null}function Tr(e,t,n=process.cwd()){let o=`${e}/package.json`,r=[()=>mn.resolve(o),()=>mn.resolve(o,{paths:[t,n]})];for(let i of r)try{let a=un(I.dirname(i()));if(a)return a}catch{}return Nr(e,t,n)}function Cr(e,t=process.cwd()){let n=X();return n?Tr(n,e,t):null}function dn(e){if(process.platform!=="win32")try{st.chmodSync(e,493)}catch{}if(process.platform==="darwin")for(let t of jr)wr("xattr",["-d",t,e],{stdio:"ignore",timeout:3e3});return e}function pe(){if(process.env.CG_MAKER_CLI_BIN&&de(process.env.CG_MAKER_CLI_BIN))return process.env.CG_MAKER_CLI_BIN;if(process.env.LUMIMAKER_BIN&&de(process.env.LUMIMAKER_BIN))return process.env.LUMIMAKER_BIN;let e;try{e=q()}catch{e=I.resolve(I.dirname(Ir(import.meta.url)),"..")}try{e=st.realpathSync(e)}catch{}let t=[];process.env.CARGO_TARGET_DIR&&t.push(process.env.CARGO_TARGET_DIR);let n=e;for(let a=0;a<10;a++){t.push(I.join(n,"target"));let c=I.dirname(n);if(c===n)break;n=c}let o=Rr(t);if(o)return o;let r=I.join(e,at());if(de(r))return r;if(X()){let a=Cr(e);if(a)return a}return null}import fe from"picocolors";import _ from"picocolors";var k={brand:e=>_.bold(_.cyan(`[lumimaker] ${e}`)),brandTag:_.bold(_.cyan("[lumimaker]")),dim:e=>_.dim(String(e)),highlight:e=>_.bold(_.cyan(String(e))),accent:e=>_.bold(_.yellow(String(e))),path:e=>_.underline(_.gray(e)),url:e=>_.underline(_.blue(e)),badgeInfo:_.bgCyan(_.black(" INFO ")),badgeSuccess:_.bgGreen(_.black(" SUCCESS ")),badgeWarn:_.bgYellow(_.black(" WARN ")),badgeError:_.bgRed(_.white(" ERROR ")),badgeDebug:_.bgBlack(_.gray(" DEBUG ")),iconInfo:_.cyan("\u2139"),iconSuccess:_.green("\u2714"),iconWarn:_.yellow("\u26A0"),iconError:_.red("\u2716"),iconStep:_.cyan("\u279C"),iconArrow:_.gray("\u203A"),successText:e=>_.green(e),errorText:e=>_.red(e),warnText:e=>_.yellow(e),infoText:e=>_.cyan(e),border:e=>_.gray(e),borderSuccess:e=>_.green(e),borderError:e=>_.red(e)};var ct=class{_verbose=!1;setVerbose(t){this._verbose=t}isVerbose(){return this._verbose}info(t,...n){console.log(`${k.brandTag} ${k.badgeInfo} ${t}`,...n)}success(t,...n){console.log(`${k.brandTag} ${k.badgeSuccess} ${t}`,...n)}warn(t,...n){console.warn(`${k.brandTag} ${k.badgeWarn} ${fe.yellow(t)}`,...n)}error(t,...n){console.error(`${k.brandTag} ${k.badgeError} ${fe.red(t)}`,...n)}debug(t,...n){this._verbose&&console.error(`${k.brandTag} ${k.badgeDebug} ${fe.gray(t)}`,...n)}step(t){console.log(`${k.brandTag} ${fe.cyan("\u279C")} ${fe.bold(t)}`)}plain(t){console.log(t)}},h=new ct;var _n=["@66rpg/lumimaker","@66rpg/lumimaker-create","@66rpg/lumimaker-win32-x64","@66rpg/lumimaker-darwin-arm64","@66rpg/lumimaker-darwin-x64"],Mr=1440*60*1e3;function Or(e,t){let n=e.split(".").map(i=>Number.parseInt(i,10)||0),o=t.split(".").map(i=>Number.parseInt(i,10)||0),r=Math.max(n.length,o.length);for(let i=0;i<r;i++){let a=n[i]??0,c=o[i]??0;if(a>c)return!0;if(a<c)return!1}return!1}function lt(e=Dr.homedir()){return _e.join(E(e),"update-check.json")}function $r(e=lt()){try{let t=JSON.parse(Z.readFileSync(e,"utf8"));return!t||typeof t.checkedAt!="number"||typeof t.latest!="object"?null:t}catch{return null}}function Pe(e,t=lt()){Z.mkdirSync(_e.dirname(t),{recursive:!0}),Z.writeFileSync(t,`${JSON.stringify(e,null,2)}
6
+ `)}function Fr(e,t=process.cwd()){if(e==="@66rpg/lumimaker")try{let n=JSON.parse(Z.readFileSync(_e.join(q(),"package.json"),"utf8"));if(n.version)return n.version}catch{}try{return JSON.parse(Z.readFileSync(_e.join(t,"node_modules",e,"package.json"),"utf8")).version||null}catch{return null}}function pn(e,t=process.cwd(),n={}){let o=[];for(let r of _n){let i=e[r];if(!i||n[r]===i)continue;let a=Fr(r,t);a&&Or(i,a)&&o.push({name:r,current:a,latest:i})}return o}function Vr(){return process.platform==="win32"?"npm.cmd":"npm"}function gn(e,t,n){let o=process.platform==="win32",r=Lr(Vr(),e,{cwd:t,encoding:"utf8",timeout:n,windowsHide:o,shell:o});return{status:r.status??1,stdout:r.stdout?.toString()??""}}function Ur(e=_n,t=process.cwd()){let n={};for(let o of e){let r=gn(["view",o,"version"],t,2e3),i=r.stdout.trim();r.status===0&&i&&(n[o]=i.split(`
7
+ `)[0].trim())}return n}function qr(){let e=X();return e?[e]:[]}async function hn(e){if(sn(e.flags))return"continue";let t=e.cwd??process.cwd(),n=e.now??Date.now(),o=e.ppid??process.ppid,r=lt(),i=$r(r)??{checkedAt:0,latest:{}};if(n-i.checkedAt>=Mr){let l=(e.fetch??Ur)();i={...i,checkedAt:n,latest:{...i.latest,...l}},Pe(i,r)}if(e.flags["apply-update"]===!0)return fn(i.latest,t);if(e.flags["skip-update"]===!0){let l={...i.declined};for(let u of pn(i.latest,t))l[u.name]=u.latest;return Pe({...i,declined:l,promptedPpid:o},r),"continue"}let a=pn(i.latest,t,i.declined??{});if(a.length===0)return"continue";if(Re({flags:e.flags}))return ln(s("kit","update_available"),a),"agent-block";if(!e.isInteractive||i.promptedPpid===o)return"continue";let c=a.map(l=>`${l.name} ${l.current} \u2192 ${l.latest}`).join(`
8
8
  `),m=await Ne.confirm({message:`${s("kit","update_ask")}
9
- ${c}`,initialValue:!0});if(Pe({...i,promptedPpid:o},r),Ne.isCancel(m)||!m){let l={...i.declined};for(let u of a)l[u.name]=u.latest;return Pe({...i,declined:l,promptedPpid:o},r),"continue"}return pn(i.latest,t)}function pn(e,t){let n=_e.join(t,"package.json");if(!Z.existsSync(n))return h.warn(s("kit","update_not_project")),"continue";let o=[];for(let i of["@66rpg/lumimaker","@66rpg/lumimaker-create",...Vr()]){let a=e[i];a?o.push(`${i}@${a}`):o.push(`${i}@latest`)}return h.step(s("kit","update_installing")),_n(["install","-D",...o],t,12e4).status!==0?(h.warn(s("kit","update_failed")),"continue"):(h.success(s("kit","update_done")),"updated-exit")}var Ur=new Set(["games","templates","projects","init"]);function hn(e){return!!(e&&Ur.has(e))}function xn(e=process.env){return e.LUMIMAKER_INTERNAL==="1"}import*as p from"@clack/prompts";import bn from"picocolors";function x(e){p.isCancel(e)&&(p.cancel(s("prompt","cancel")),process.exit(0))}function qr(e){if(!e||!e.trim())return s("prompt","version_empty");if(!L(e.trim()))return s("prompt","version_invalid")}function ut(e,t,n){let o=t.trim();if(o){if(Y(n)&&U({name:o})){delete e.name;return}e.name=o}}function Br(e){let t=ae(e??"");if(t==="empty")return s("prompt","tpl_name_empty");if(t==="invalid")return s("prompt","tpl_name_invalid")}function mt(e,t){if(!t?.trim())return;let n=t.trim().split(/\s+/),o=n[0]??"";if(!o.startsWith("--"))return;let r=o.slice(2);r&&(n.length===1?e[r]=!0:e[r]=n.slice(1).join(" "))}function vn(e,t){let n=[...e];for(let[o,r]of Object.entries(t))r===!0?n.push(`--${o}`):typeof r=="string"&&r!==""&&n.push(`--${o}`,r);return n}async function yn(e){let t={},n=!1;for(let o of e)if(o.kind==="select"){let r=(o.options??[]).map(c=>({value:c.value,label:c.label||c.value})),i=await p.select({message:o.question,options:r});x(i);let a=(o.options??[]).find(c=>c.value===i);a?.value==="fork"&&(n=!0),mt(t,a?.flag)}else if(o.kind==="text"){if(o.id.endsWith(".fork")&&!n)continue;let r=await p.text({message:o.question,validate(a){if(!a||!a.trim())return s("prompt","tpl_fork_empty")}});x(r);let i=String(r??"").trim();if(!i||!o.flag)continue;mt(t,`${o.flag} ${i}`)}else if(o.kind==="confirm"){let r=await p.confirm({message:o.question,initialValue:o.recommended!==!1});x(r),r&&mt(t,o.flag)}return t}function kn(e,t,n){let o=[e];t&&o.push(t);for(let[r,i]of Object.entries(n))Kt.has(r)||(i===!0?Qe.has(r)&&o.push(`--${r}`):typeof i=="string"&&i!==""&&o.push(`--${r}`,i));return o}async function wn(){p.intro(bn.bold(bn.cyan(s("prompt","intro"))));let e=await p.select({message:s("prompt","main_message"),options:[{value:"publish",label:s("prompt","main_publish_label"),hint:s("prompt","main_publish_hint")},{value:"publish-template",label:s("prompt","main_publish_template_label"),hint:s("prompt","main_publish_template_hint")},{value:"publish-template-data",label:s("prompt","main_publish_template_data_label"),hint:s("prompt","main_publish_template_data_hint")},{value:"publish-project",label:s("prompt","main_publish_project_label"),hint:s("prompt","main_publish_project_hint")},{value:"login",label:s("prompt","main_login_label"),hint:s("prompt","main_login_hint")},{value:"whoami",label:s("prompt","main_whoami_label"),hint:s("prompt","main_whoami_hint")},{value:"validate-template",label:s("prompt","main_validate_template_label"),hint:s("prompt","main_validate_template_hint")},{value:"skill",label:s("prompt","main_skill_label"),hint:s("prompt","main_skill_hint")},{value:"logout",label:s("prompt","main_logout_label"),hint:s("prompt","main_logout_hint")}]});return x(e),{command:e}}async function Sn(e){let t={...e.flags},n=O(),o=Ie();if(!t.version&&!(n?.version??"").trim()){let i="1.0.0",a=await p.text({message:s("prompt","publish_version"),placeholder:i,defaultValue:i,validate(c){if(!c||!c.trim())return s("prompt","version_empty")}});x(a),U({version:a.trim()}),delete t.version}if(!b(t,"name")&&!(n?.name??"").trim()&&!o?.game_id){let i=n?.name||"game",a=await p.text({message:s("prompt","publish_name"),placeholder:i,defaultValue:i});x(a),ut(t,a,n?.name)}if(t.demo===void 0&&t.variant===void 0){let i=await p.select({message:ze(o),options:[{value:"official",label:s("prompt","publish_official_label"),hint:s("prompt","publish_official_hint")},{value:"demo",label:s("prompt","publish_demo_label"),hint:s("prompt","publish_demo_hint")}]});if(x(i),i==="demo"){if(t.demo=!0,!t.parent){let a=o?.game_id||"",c=await p.text({message:s("prompt","publish_parent"),placeholder:a||s("prompt","publish_parent_placeholder"),defaultValue:a});x(c);let m=c.trim();m&&(t.parent=m)}}else t.variant="1"}let r=!t["game-id"]&&(t.demo===!0||String(t.variant??"")==="2"?!(o?.demo_game_id??"").trim():!(o?.game_id??"").trim());if(r&&!t["demo-scope"]){let i=await p.text({message:s("prompt","publish_demo_scope")});x(i),i.trim()&&(t["demo-scope"]=i.trim())}if(r&&!t["play-duration"]){let i=await p.text({message:s("prompt","publish_play_duration")});x(i),i.trim()&&(t["play-duration"]=i.trim())}if(t.yes!==!0){let i=await p.confirm({message:Xe(t,n,o),initialValue:!1});x(i),i||(p.cancel(s("prompt","cancel")),process.exit(0))}return t}async function In(e){let t={...e.flags},n=O(),o=Ae();if(typeof t.version=="string"&&t.version.trim()&&!L(t.version.trim())&&(h.error(s("prompt","version_invalid_log",{version:t.version.trim()})),h.warn(s("prompt","version_invalid_hint")),delete t.version),!t.version){let i=(n?.version??"").trim();if(!(i&&L(i))){let a=i||"0.1.0",c=await p.text({message:s("prompt","tpl_version"),placeholder:a,defaultValue:a,validate:qr});x(c),U({version:c.trim()}),delete t.version}}let r=(n?.slug??"").trim();if(!se(r)){let i=await p.text({message:s("prompt","tpl_slug"),placeholder:s("prompt","tpl_slug_placeholder"),validate(c){let m=c?.trim()??"";if(!m)return s("prompt","tpl_slug_empty");if(!se(m))return s("prompt","tpl_slug_invalid")}});x(i);let a=i.trim();U({slug:a})||(h.error(s("prompt","tpl_slug_write_failed")),process.exit(1)),n&&(n.slug=a)}if(typeof t.name=="string"&&t.name.trim()&&!N(t.name)&&(h.error(s("prompt","tpl_name_invalid_log",{name:t.name.trim()})),delete t.name),He(t,n,o)){let i=typeof t.name=="string"?t.name.trim():n?.name?.trim(),a=(i&&N(i)?i:void 0)||n?.slug?.trim()||void 0,c=await p.text({message:s("prompt","tpl_name"),placeholder:a||s("prompt","tpl_name_placeholder"),defaultValue:a&&N(a)?a:void 0,validate:Br});x(c),ut(t,c,n?.name)}if(!t.init&&!t.fork&&!ue(o)&&!me(o?.template_id)){let i=await p.select({message:s("prompt","tpl_mode"),options:[{value:"publish",label:s("prompt","tpl_publish_label"),hint:s("prompt","tpl_publish_hint")},{value:"fork",label:s("prompt","tpl_fork_label"),hint:s("prompt","tpl_fork_hint")}],initialValue:"publish"});if(x(i),i==="fork"){let a=await p.text({message:s("prompt","tpl_fork_id"),placeholder:s("prompt","tpl_fork_placeholder"),validate(c){if(!c||!c.trim())return s("prompt","tpl_fork_empty")}});x(a),t.fork=a.trim()}}if(nt(t,o,le())&&await En(),et(t,n?.data_ver,o)){let i=await An(n?.data_ver??o?.data_ver);U({data_ver:i}),delete t["data-ver"]}if(tt(t,n?.data_summary,o)&&await jn(t),t.fork&&!b(t,"data-id")&&!b(t,"data-ver-id")){let i=await p.text({message:s("prompt","tpl_data_id"),placeholder:s("prompt","tpl_fork_placeholder")});x(i),i.trim()&&(t["data-id"]=i.trim())}return t}async function An(e){let t=typeof e=="string"?e.trim():"",n=t&&t!=="0"?t:"";if(n){let r=await p.confirm({message:s("prompt","data_ver_reuse",{ver:n}),initialValue:!0});if(x(r),r)return n}let o=await p.text({message:n?s("prompt","data_ver_new"):s("prompt","data_ver_ask"),placeholder:n?s("prompt","data_ver_placeholder_last",{ver:n}):s("prompt","data_ver_placeholder"),validate(r){if(!r||!r.trim())return s("prompt","data_ver_empty")}});return x(o),o.trim()}async function jn(e){let t=await p.text({message:s("prompt","data_summary"),placeholder:s("prompt","data_summary_placeholder")});x(t);let n=t.trim();n&&(e["data-summary"]=n)}async function En(){let e=await p.confirm({message:s("prompt","data_assets"),initialValue:!1});x(e),e||(p.cancel(s("prompt","cancel")),process.exit(0))}async function Rn(e){let t={...e.flags},n=O();if(!b(t,"data-ver")){let o=(n?.data_ver??"").trim();if(!o||o==="0"){let r=await An(n?.data_ver);U({data_ver:r}),delete t["data-ver"]}}return!b(t,"data-summary")&&!(n?.data_summary??"").trim()&&await jn(t),le()||await En(),t}async function Pn(e){let t={...e.flags},n=O(),o=je();if(!t.version&&!(n?.version??"").trim()){let r="1.0.0",i=await p.text({message:s("prompt","proj_version"),placeholder:r,defaultValue:r,validate(a){if(!a||!a.trim())return s("prompt","version_empty")}});x(i),U({version:i.trim()}),delete t.version}if(!b(t,"name")&&!(n?.name??"").trim()&&!o?.project_id){let r=n?.name||"open-source-project",i=await p.text({message:s("prompt","proj_name"),placeholder:r,defaultValue:r});x(i),ut(t,i,n?.name)}if(!t.summary&&!o?.project_id){let r=await p.text({message:s("prompt","proj_summary"),placeholder:s("prompt","proj_summary_placeholder")});x(r),r.trim()&&(t.summary=r.trim())}if(!t.cover&&!o?.project_id){let r=await p.text({message:s("prompt","proj_cover"),placeholder:"./cover.png"});x(r),r.trim()&&(t.cover=r.trim())}return t}async function Nn(){let e=await p.confirm({message:f.common.login_required_confirm.text,initialValue:!0});return!(p.isCancel(e)||!e)}async function Cn(e){let t={...e.flags};if(!t.force&&!t["if-needed"]){let n=await p.select({message:s("prompt","login_mode"),options:[{value:"skip",label:s("prompt","login_skip_label"),hint:s("prompt","login_skip_hint")},{value:"force",label:s("prompt","login_force_label"),hint:s("prompt","login_force_hint")}],initialValue:"skip"});x(n),n==="force"&&(t.force=!0)}return t}async function Tn(e){let t={...e.flags};if(typeof t.platform=="string"&&t.platform!==""||t.all===!0)return t;let o=ot(),r=z(),i=r&&o.includes(r)?r:void 0,a=s("prompt","skill_current_suffix"),c=await p.select({message:i?s("prompt","skill_platform_detected",{id:i}):s("prompt","skill_platform"),initialValue:i,options:[...Ee(o,i).map(m=>({value:m,label:m===i?`${m}${a}`:m})),{value:"__all__",label:s("prompt","skill_all_label"),hint:s("prompt","skill_all_hint")}]});return x(c),c==="__all__"?t.all=!0:t.platform=c,t}import{spawn as po}from"node:child_process";import oe from"picocolors";var Jr=/[\u001B\u009B][[\]()#;?]*(?:(?:(?:[a-zA-Z\d]*(?:;[-a-zA-Z\d\/#&.:=?%@~_]*)*)?\u0007)|(?:(?:\d{1,4}(?:;\d{0,4})*)?[\dA-PR-TZcf-ntqry=><~]))/g;function ge(e){return e.replace(Jr,"")}function $(e){let t=ge(e),n=0,o=Array.from(t);for(let r of o){let i=r.codePointAt(0)??0;if("\u2714\u2716\u26A0\u2139".includes(r)){n+=2;continue}if(i>65535){n+=2;continue}i>=4352&&i<=4447||i>=11904&&i<=42191&&i!==12351||i>=44032&&i<=55203||i>=63744&&i<=64255||i>=65040&&i<=65049||i>=65072&&i<=65135||i>=65280&&i<=65376||i>=65504&&i<=65510?n+=2:n+=1}return n}function he(e,t){let n=$(e);return n>=t?e:e+" ".repeat(t-n)}function Ce(e,t){if(t<=4)return[e];let n=[],o=e.split(/\r?\n/);for(let r of o){if(!r){n.push("");continue}let i="",a=0,c=Array.from(r);for(let m=0;m<c.length;m++){let l=c[m],u=$(l);a+u>t&&i.length>0&&(n.push(i),i="",a=0),i+=l,a+=u}i.length>0&&n.push(i)}return n.length>0?n:[""]}import B from"picocolors";function ee(e,t,n){if(!t||t.length===0)return B.gray(n?.emptyText??s("kit","table_empty"));let o={};for(let l of e){let u=$(l.header);for(let g of t){let w=g[l.key]!=null?String(g[l.key]):"-",d=$(w);d>u&&(u=d)}l.minWidth&&u<l.minWidth&&(u=l.minWidth),l.maxWidth&&u>l.maxWidth&&(u=l.maxWidth),o[l.key]=u}let r=[];n?.title&&r.push(B.bold(n.title));let i="\u250C\u2500"+e.map(l=>"\u2500".repeat(o[l.key])).join("\u2500\u252C\u2500")+"\u2500\u2510";r.push(B.gray(i));let a="\u2502 "+e.map(l=>B.bold(he(l.header,o[l.key]))).join(B.gray(" \u2502 "))+" \u2502";r.push(a);let c="\u251C\u2500"+e.map(l=>"\u2500".repeat(o[l.key])).join("\u2500\u253C\u2500")+"\u2500\u2524";r.push(B.gray(c));for(let l of t){let u="\u2502 "+e.map(g=>{let w=l[g.key]!=null?String(l[g.key]):"-";return he(w,o[g.key])}).join(B.gray(" \u2502 "))+" \u2502";r.push(u)}let m="\u2514\u2500"+e.map(l=>"\u2500".repeat(o[l.key])).join("\u2500\u2534\u2500")+"\u2500\u2518";return r.push(B.gray(m)),r.join(`
10
- `)}import C from"picocolors";import _t from"node:fs";import Gr from"node:os";import dt from"node:path";var Wr="https://test-lumimaker.66rpg.com/common/public-info/test.json",Qr="https://lumimaker.66rpg.com/common/public-info/debug.json",Kr="https://lumimaker.66rpg.com/common/public-info/release.json",Hr="https://test-lumi.66rpg.com",Yr="https://debug-lumi.66rpg.com",zr="https://lumi.66rpg.com",Xr=5e3,xe,pt;function Zr(e="",t=""){let n=`${e} ${t}`.toLowerCase();return n.includes("debug")?"debug":n.includes("test")?"test":"release"}function ei(e){return e==="debug"?Qr:e==="test"?Wr:Kr}function ti(e){return`${e==="debug"?Yr:e==="test"?Hr:zr}/`}function ni(e,t){let n=ri(e??"");return oi(n,t)?`${n}/`:ti(t)}function oi(e,t){if(!e)return!1;let n=e.toLowerCase();return t==="debug"?n.includes("debug"):t==="test"?n.includes("test"):!n.includes("debug")&&!n.includes("test")}function ri(e){let t=e.trim().replace(/\/+$/,"");return t?t.endsWith("/api")?t.slice(0,-4):t:""}var Ln=new WeakMap,ii=new Set(["template","templates","works","edit-works","edit-template","edit-game","projects","edit-projects","edit-project"]),si=new Set(["version","environment","updatedat","updated_at","status","id","description","effectiveat","expireat"]);function Mn(e){let t=e.trim().toLowerCase();return t==="email"||t==="mail"||t==="e-mail"||t==="\u90AE\u7BB1"||t==="\u516C\u5F00\u90AE\u7BB1"?"email":t==="qq"||t==="qq\u53F7"||t==="qq_number"||t==="qqnumber"?"qq":t}function ht(e,t){return e==="email"?"\u90AE\u7BB1":e==="qq"?"QQ":t.trim()||e}function ai(e){return!!e&&!ii.has(e)&&!si.has(e)}function xt(e,t){!t.value||!ai(t.key)||e.some(n=>n.key===t.key)||e.push(t)}function ci(e){let t=[];for(let[n,o]of Object.entries(e))xt(t,{key:n,label:ht(n,n),value:o.trim()});return t}function li(e){let t=n=>n==="email"?0:n==="qq"?1:2;return[...e].sort((n,o)=>t(n.key)-t(o.key))}function mi(e){let t=li(e).map(n=>`${n.label.trim()} ${n.value.trim()}`.trim()).filter(Boolean);return t.length?`\uFF08${t.join("\uFF0C")}\uFF09`:""}function ui(e){let t=e.trim().replace(/^\uFEFF/,"").trim();if(!t||t.startsWith("<"))return ft({},[]);let n=t;for(let i=0;i<3&&typeof n=="string";i+=1)try{n=JSON.parse(n.trim())}catch{return ft({},[])}let o=[],r={};return On(n,r,o),ft(r,o)}function ft(e,t){return Ln.set(e,t),e}function On(e,t,n){if(!e||typeof e!="object")return;if(Array.isArray(e)){for(let r of e)Dn(t,n,r);return}let o=e;if(Array.isArray(o.items))for(let r of o.items)Dn(t,n,r);for(let r of["data","list","result","content","payload"]){let i=o[r];i&&typeof i=="object"&&On(i,t,n)}for(let[r,i]of Object.entries(o)){if(r==="items"||r==="data"||r==="list"||r==="result"||r==="content"||r==="payload")continue;let a=gt(i);if(!a)continue;let c=Mn(r);t[c]||=a,xt(n,{key:c,label:ht(c,r),value:a})}}function Dn(e,t,n){if(!n||typeof n!="object"||Array.isArray(n))return;let o=n,r=String(o.keyName??o.key_name??""),i=Mn(r);if(!i)return;let a=gt(o.keyValue??o.key_value??o[i]);if(!a)return;e[i]||=a;let c=gt(o.name)||ht(i,r);xt(t,{key:i,label:c,value:a})}function gt(e){return typeof e=="string"?e.trim():typeof e=="number"&&Number.isFinite(e)?String(e):""}function di(e=xe??{}){return mi(Ln.get(e)??ci(e))}function Q(e,t){return we(e,{contact:di(t??xe??{})})}async function te(){if(xe===void 0){if(process.env.NODE_TEST_CONTEXT){xe={};return}pt||(pt=gi()),xe=await pt}}function pi(){let e=fi();if(!e)return{lumi:"",cg:""};try{let n=JSON.parse(_t.readFileSync(e,"utf8")).web_config??{};return{lumi:typeof n.base_lumi_api=="string"?n.base_lumi_api:"",cg:typeof n.base_cg=="string"?n.base_cg:""}}catch{return{lumi:"",cg:""}}}function fi(){let e=_i();if(e)return e;let t=pe();if(t){let o=dt.join(dt.dirname(t),"config.json");if(_t.existsSync(o))return o}let n=dt.join(E(Gr.homedir()),"config.json");if(_t.existsSync(n))return n}function _i(){let e=process.argv.slice(2);for(let t=0;t<e.length;t+=1){let n=e[t];if(n==="--config"&&e[t+1])return e[t+1];if(n.startsWith("--config="))return n.slice(9)}}async function gi(){let e=pi(),t=Zr(e.lumi,e.cg),n=new AbortController,o=setTimeout(()=>n.abort(),Xr);try{let r=await fetch(ei(t),{signal:n.signal,headers:{Accept:"application/json,text/plain,*/*","User-Agent":"lumimaker",Referer:ni(e.lumi,t)}});return r.ok?ui(await r.text()):{}}catch{return{}}finally{clearTimeout(o)}}function $n(e,t,n){let o="\u2500".repeat(e+4);return t(n?`\u250C${o}\u2510`:`\u2514${o}\u2518`)}function Fn(e,t){return t("\u2502")+" ".repeat(e+4)+t("\u2502")}function hi(e,t,n){let o=Math.max(0,t-$(e));return n("\u2502")+" "+e+" ".repeat(o)+" "+n("\u2502")}function D(e,t,n){let o=n?.status??"info",r=o==="success"?C.green("\u2714"):o==="error"?C.red("\u2716"):o==="warn"?C.yellow("\u26A0"):C.cyan("\u2139"),i=o==="success"?C.green:o==="error"?C.red:o==="warn"?C.yellow:C.cyan,a=process.stdout.columns&&process.stdout.columns>30?process.stdout.columns:80,c=Math.min(Math.max(a-1,20),84),m=Math.max(16,c-6),l=t.filter(S=>S.value!=null&&S.value!==""),g=l.reduce((S,ie)=>Math.max(S,$(ie.label)),0)+2,w=Math.max(16,m-g-1),d=[],P=`${r} ${C.bold(e)}`;d.push(P);for(let S of l){let ie=String(S.value),Dt=Ce(ie,w);for(let ke=0;ke<Dt.length;ke++){let Lt=Dt[ke],Mt=S.highlight?C.bold(C.cyan(Lt)):Lt;if(ke===0){let Be=C.gray(he(S.label+":",g));d.push(`${Be} ${Mt}`)}else{let Be=" ".repeat(g+1);d.push(`${Be}${Mt}`)}}}let v=Math.max(...d.map(S=>$(S)),Math.min(40,m));n?.width&&(v=Math.max(v,n.width)),v=Math.min(v,m);let T=[];for(let S of d)$(S)<=v?T.push(S):T.push(...Ce(ge(S),v));if(d.length=0,d.push(...T),n?.footer){d.push(C.dim("\u2500".repeat(v)));let S=Ce(n.footer,v);for(let ie of S)d.push(C.dim(ie))}let H=[];H.push($n(v,i,!0)),H.push(Fn(v,i));for(let S of d)H.push(hi(S,v,i));return H.push(Fn(v,i)),H.push($n(v,i,!1)),H.join(`
11
- `)}function Vn(e,t){let n=f.error,o=[];return t?.code!=null&&o.push({label:n.label_code.text,value:t.code}),o.push({label:n.label_detail.text,value:e,highlight:!1}),t?.serverCode!=null&&t.serverCode!==""&&o.push({label:n.label_server_code.text,value:t.serverCode}),t?.serverMsg&&o.push({label:n.label_server_msg.text,value:t.serverMsg}),t?.hint&&o.push({label:n.label_hint.text,value:t.hint,highlight:!0}),t?.logPath&&o.push({label:n.label_log_path.text,value:t.logPath}),D(n.title.text,o,{status:"error",footer:Q(n.footer.text)})}function xi(e){return e&&typeof e=="object"&&"code"in e&&typeof e.code=="string"?e.code:(e instanceof Error?e.message:String(e)).match(/\b(EPERM|EACCES|ENOENT|EBUSY|ENOTEMPTY|ENOTDIR|EISDIR|EINVAL|EMFILE|ENFILE)\b/)?.[1]??""}function Un(e){return e?e.includes("\uFFFD")||e.includes("\\\\?\\"):!1}function qn(e){switch(xi(e)){case"EPERM":case"EACCES":return s("kit","sys_denied");case"ENOENT":return s("kit","sys_missing");case"EBUSY":case"ENOTEMPTY":return s("kit","sys_busy");case"ENOTDIR":case"EISDIR":return s("kit","sys_type");case"EINVAL":return s("kit","sys_invalid");case"EMFILE":case"ENFILE":return s("kit","sys_too_many");default:return s("kit","sys_unknown")}}function J(e){let t=e instanceof Error?e.message:String(e??"");return Un(t)?qn(e):t}function Te(e){return e&&(Un(e)?qn(new Error(e)):e)}import A from"picocolors";function bi(e){return String(e.post_url??"").trim()}function vi(e){return Number(e.post_status)===4}function yi(e){return/(?:cg-maker|lumimaker)\.66rpg\.com/i.test(e)}function ki(e){return e.replace(/https?:\/\/\S*(?:cg-maker|lumimaker)\.66rpg\.com\S*/gi,"").replace(/\b[\w.-]*(?:cg-maker|lumimaker)\.66rpg\.com\S*/gi,"").replace(/[ \t]{2,}/g," ").trim()}function be(e,t,n){let o=[],r=bi(t);if(r&&!yi(r)&&o.push(vi(t)?s("fmt","post_url_line",{url:r}):s("fmt","post_url_draft_line",{url:r})),n?.pull&&!t.skipped_upload){let i=Ai(t);i&&o.push(s("fmt","create_pull_line",{cmd:i}))}return o.length?`${e}
9
+ ${c}`,initialValue:!0});if(Pe({...i,promptedPpid:o},r),Ne.isCancel(m)||!m){let l={...i.declined};for(let u of a)l[u.name]=u.latest;return Pe({...i,declined:l,promptedPpid:o},r),"continue"}return fn(i.latest,t)}function fn(e,t){let n=_e.join(t,"package.json");if(!Z.existsSync(n))return h.warn(s("kit","update_not_project")),"continue";let o=[];for(let i of["@66rpg/lumimaker","@66rpg/lumimaker-create",...qr()]){let a=e[i];a?o.push(`${i}@${a}`):o.push(`${i}@latest`)}return h.step(s("kit","update_installing")),gn(["install","-D",...o],t,12e4).status!==0?(h.warn(s("kit","update_failed")),"continue"):(h.success(s("kit","update_done")),"updated-exit")}var Br=new Set(["games","templates","projects","init"]);function bn(e){return!!(e&&Br.has(e))}function xn(e=process.env){return e.LUMIMAKER_INTERNAL==="1"}import*as p from"@clack/prompts";import vn from"picocolors";function b(e){p.isCancel(e)&&(p.cancel(s("prompt","cancel")),process.exit(0))}function Jr(e){if(!e||!e.trim())return s("prompt","version_empty");if(!L(e.trim()))return s("prompt","version_invalid")}function ut(e,t,n){let o=t.trim();if(o){if(Y(n)&&U({name:o})){delete e.name;return}e.name=o}}function Gr(e){let t=ae(e??"");if(t==="empty")return s("prompt","tpl_name_empty");if(t==="invalid")return s("prompt","tpl_name_invalid")}function mt(e,t){if(!t?.trim())return;let n=t.trim().split(/\s+/),o=n[0]??"";if(!o.startsWith("--"))return;let r=o.slice(2);r&&(n.length===1?e[r]=!0:e[r]=n.slice(1).join(" "))}function yn(e,t){let n=[...e];for(let[o,r]of Object.entries(t))r===!0?n.push(`--${o}`):typeof r=="string"&&r!==""&&n.push(`--${o}`,r);return n}async function kn(e){let t={},n=!1;for(let o of e)if(o.kind==="select"){let r=(o.options??[]).map(c=>({value:c.value,label:c.label||c.value})),i=await p.select({message:o.question,options:r});b(i);let a=(o.options??[]).find(c=>c.value===i);a?.value==="fork"&&(n=!0),mt(t,a?.flag)}else if(o.kind==="text"){if(o.id.endsWith(".fork")&&!n)continue;let r=await p.text({message:o.question,validate(a){if(!a||!a.trim())return s("prompt","tpl_fork_empty")}});b(r);let i=String(r??"").trim();if(!i||!o.flag)continue;mt(t,`${o.flag} ${i}`)}else if(o.kind==="confirm"){let r=await p.confirm({message:o.question,initialValue:o.recommended!==!1});b(r),r&&mt(t,o.flag)}return t}function wn(e,t,n){let o=[e];t&&o.push(t);for(let[r,i]of Object.entries(n))Ht.has(r)||(i===!0?Qe.has(r)&&o.push(`--${r}`):typeof i=="string"&&i!==""&&o.push(`--${r}`,i));return o}async function Sn(){p.intro(vn.bold(vn.cyan(s("prompt","intro"))));let e=await p.select({message:s("prompt","main_message"),options:[{value:"publish",label:s("prompt","main_publish_label"),hint:s("prompt","main_publish_hint")},{value:"publish-template",label:s("prompt","main_publish_template_label"),hint:s("prompt","main_publish_template_hint")},{value:"publish-template-data",label:s("prompt","main_publish_template_data_label"),hint:s("prompt","main_publish_template_data_hint")},{value:"publish-project",label:s("prompt","main_publish_project_label"),hint:s("prompt","main_publish_project_hint")},{value:"login",label:s("prompt","main_login_label"),hint:s("prompt","main_login_hint")},{value:"whoami",label:s("prompt","main_whoami_label"),hint:s("prompt","main_whoami_hint")},{value:"validate-template",label:s("prompt","main_validate_template_label"),hint:s("prompt","main_validate_template_hint")},{value:"skill",label:s("prompt","main_skill_label"),hint:s("prompt","main_skill_hint")},{value:"logout",label:s("prompt","main_logout_label"),hint:s("prompt","main_logout_hint")}]});return b(e),{command:e}}async function In(e){let t={...e.flags},n=O(),o=Ie();if(!t.version&&!(n?.version??"").trim()){let i="1.0.0",a=await p.text({message:s("prompt","publish_version"),placeholder:i,defaultValue:i,validate(c){if(!c||!c.trim())return s("prompt","version_empty")}});b(a),U({version:a.trim()}),delete t.version}if(!x(t,"name")&&!(n?.name??"").trim()&&!o?.game_id){let i=n?.name||"game",a=await p.text({message:s("prompt","publish_name"),placeholder:i,defaultValue:i});b(a),ut(t,a,n?.name)}if(t.demo===void 0&&t.variant===void 0){let i=await p.select({message:ze(o),options:[{value:"official",label:s("prompt","publish_official_label"),hint:s("prompt","publish_official_hint")},{value:"demo",label:s("prompt","publish_demo_label"),hint:s("prompt","publish_demo_hint")}]});if(b(i),i==="demo"){if(t.demo=!0,!t.parent){let a=o?.game_id||"",c=await p.text({message:s("prompt","publish_parent"),placeholder:a||s("prompt","publish_parent_placeholder"),defaultValue:a});b(c);let m=c.trim();m&&(t.parent=m)}}else t.variant="1"}let r=!t["game-id"]&&(t.demo===!0||String(t.variant??"")==="2"?!(o?.demo_game_id??"").trim():!(o?.game_id??"").trim());if(r&&!t["demo-scope"]){let i=await p.text({message:s("prompt","publish_demo_scope")});b(i),i.trim()&&(t["demo-scope"]=i.trim())}if(r&&!t["play-duration"]){let i=await p.text({message:s("prompt","publish_play_duration")});b(i),i.trim()&&(t["play-duration"]=i.trim())}if(t.yes!==!0){let i=await p.confirm({message:Xe(t,n,o),initialValue:!1});b(i),i||(p.cancel(s("prompt","cancel")),process.exit(0))}return t}async function jn(e){let t={...e.flags},n=O(),o=je();if(typeof t.version=="string"&&t.version.trim()&&!L(t.version.trim())&&(h.error(s("prompt","version_invalid_log",{version:t.version.trim()})),h.warn(s("prompt","version_invalid_hint")),delete t.version),!t.version){let i=(n?.version??"").trim();if(!(i&&L(i))){let a=i||"0.1.0",c=await p.text({message:s("prompt","tpl_version"),placeholder:a,defaultValue:a,validate:Jr});b(c),U({version:c.trim()}),delete t.version}}let r=(n?.slug??"").trim();if(!se(r)){let i=await p.text({message:s("prompt","tpl_slug"),placeholder:s("prompt","tpl_slug_placeholder"),validate(c){let m=c?.trim()??"";if(!m)return s("prompt","tpl_slug_empty");if(!se(m))return s("prompt","tpl_slug_invalid")}});b(i);let a=i.trim();U({slug:a})||(h.error(s("prompt","tpl_slug_write_failed")),process.exit(1)),n&&(n.slug=a)}if(typeof t.name=="string"&&t.name.trim()&&!N(t.name)&&(h.error(s("prompt","tpl_name_invalid_log",{name:t.name.trim()})),delete t.name),He(t,n,o)){let i=typeof t.name=="string"?t.name.trim():n?.name?.trim(),a=(i&&N(i)?i:void 0)||n?.slug?.trim()||void 0,c=await p.text({message:s("prompt","tpl_name"),placeholder:a||s("prompt","tpl_name_placeholder"),defaultValue:a&&N(a)?a:void 0,validate:Gr});b(c),ut(t,c,n?.name)}if(!t.init&&!t.fork&&!ue(o)&&!me(o?.template_id)){let i=await p.select({message:s("prompt","tpl_mode"),options:[{value:"publish",label:s("prompt","tpl_publish_label"),hint:s("prompt","tpl_publish_hint")},{value:"fork",label:s("prompt","tpl_fork_label"),hint:s("prompt","tpl_fork_hint")}],initialValue:"publish"});if(b(i),i==="fork"){let a=await p.text({message:s("prompt","tpl_fork_id"),placeholder:s("prompt","tpl_fork_placeholder"),validate(c){if(!c||!c.trim())return s("prompt","tpl_fork_empty")}});b(a),t.fork=a.trim()}}if(nt(t,o,le())&&await Rn(),et(t,n?.data_ver,o)){let i=await An(n?.data_ver??o?.data_ver);U({data_ver:i}),delete t["data-ver"]}if(tt(t,n?.data_summary,o)&&await En(t),t.fork&&!x(t,"data-id")&&!x(t,"data-ver-id")){let i=await p.text({message:s("prompt","tpl_data_id"),placeholder:s("prompt","tpl_fork_placeholder")});b(i),i.trim()&&(t["data-id"]=i.trim())}return t}async function An(e){let t=typeof e=="string"?e.trim():"",n=t&&t!=="0"?t:"";if(n){let r=await p.confirm({message:s("prompt","data_ver_reuse",{ver:n}),initialValue:!0});if(b(r),r)return n}let o=await p.text({message:n?s("prompt","data_ver_new"):s("prompt","data_ver_ask"),placeholder:n?s("prompt","data_ver_placeholder_last",{ver:n}):s("prompt","data_ver_placeholder"),validate(r){if(!r||!r.trim())return s("prompt","data_ver_empty")}});return b(o),o.trim()}async function En(e){let t=await p.text({message:s("prompt","data_summary"),placeholder:s("prompt","data_summary_placeholder")});b(t);let n=t.trim();n&&(e["data-summary"]=n)}async function Rn(){let e=await p.confirm({message:s("prompt","data_assets"),initialValue:!1});b(e),e||(p.cancel(s("prompt","cancel")),process.exit(0))}async function Pn(e){let t={...e.flags},n=O();if(!x(t,"data-ver")){let o=(n?.data_ver??"").trim();if(!o||o==="0"){let r=await An(n?.data_ver);U({data_ver:r}),delete t["data-ver"]}}return!x(t,"data-summary")&&!(n?.data_summary??"").trim()&&await En(t),le()||await Rn(),t}async function Nn(e){let t={...e.flags},n=O(),o=Ae();if(!t.version&&!(n?.version??"").trim()){let r="1.0.0",i=await p.text({message:s("prompt","proj_version"),placeholder:r,defaultValue:r,validate(a){if(!a||!a.trim())return s("prompt","version_empty")}});b(i),U({version:i.trim()}),delete t.version}if(!x(t,"name")&&!(n?.name??"").trim()&&!o?.project_id){let r=n?.name||"open-source-project",i=await p.text({message:s("prompt","proj_name"),placeholder:r,defaultValue:r});b(i),ut(t,i,n?.name)}if(!t.summary&&!o?.project_id){let r=await p.text({message:s("prompt","proj_summary"),placeholder:s("prompt","proj_summary_placeholder")});b(r),r.trim()&&(t.summary=r.trim())}if(!t.cover&&!o?.project_id){let r=await p.text({message:s("prompt","proj_cover"),placeholder:"./cover.png"});b(r),r.trim()&&(t.cover=r.trim())}return t}async function Tn(){let e=await p.confirm({message:f.common.login_required_confirm.text,initialValue:!0});return!(p.isCancel(e)||!e)}async function Cn(e){let t={...e.flags};if(!t.force&&!t["if-needed"]){let n=await p.select({message:s("prompt","login_mode"),options:[{value:"skip",label:s("prompt","login_skip_label"),hint:s("prompt","login_skip_hint")},{value:"force",label:s("prompt","login_force_label"),hint:s("prompt","login_force_hint")}],initialValue:"skip"});b(n),n==="force"&&(t.force=!0)}return t}async function Dn(e){let t={...e.flags};if(typeof t.platform=="string"&&t.platform!==""||t.all===!0)return t;let o=ot(),r=z(),i=r&&o.includes(r)?r:void 0,a=s("prompt","skill_current_suffix"),c=await p.select({message:i?s("prompt","skill_platform_detected",{id:i}):s("prompt","skill_platform"),initialValue:i,options:[...Ee(o,i).map(m=>({value:m,label:m===i?`${m}${a}`:m})),{value:"__all__",label:s("prompt","skill_all_label"),hint:s("prompt","skill_all_hint")}]});return b(c),c==="__all__"?t.all=!0:t.platform=c,t}import{spawn as fo}from"node:child_process";import oe from"picocolors";var Wr=/[\u001B\u009B][[\]()#;?]*(?:(?:(?:[a-zA-Z\d]*(?:;[-a-zA-Z\d\/#&.:=?%@~_]*)*)?\u0007)|(?:(?:\d{1,4}(?:;\d{0,4})*)?[\dA-PR-TZcf-ntqry=><~]))/g;function ge(e){return e.replace(Wr,"")}function $(e){let t=ge(e),n=0,o=Array.from(t);for(let r of o){let i=r.codePointAt(0)??0;if("\u2714\u2716\u26A0\u2139".includes(r)){n+=2;continue}if(i>65535){n+=2;continue}i>=4352&&i<=4447||i>=11904&&i<=42191&&i!==12351||i>=44032&&i<=55203||i>=63744&&i<=64255||i>=65040&&i<=65049||i>=65072&&i<=65135||i>=65280&&i<=65376||i>=65504&&i<=65510?n+=2:n+=1}return n}function he(e,t){let n=$(e);return n>=t?e:e+" ".repeat(t-n)}function Te(e,t){if(t<=4)return[e];let n=[],o=e.split(/\r?\n/);for(let r of o){if(!r){n.push("");continue}let i="",a=0,c=Array.from(r);for(let m=0;m<c.length;m++){let l=c[m],u=$(l);a+u>t&&i.length>0&&(n.push(i),i="",a=0),i+=l,a+=u}i.length>0&&n.push(i)}return n.length>0?n:[""]}import B from"picocolors";function ee(e,t,n){if(!t||t.length===0)return B.gray(n?.emptyText??s("kit","table_empty"));let o={};for(let l of e){let u=$(l.header);for(let g of t){let w=g[l.key]!=null?String(g[l.key]):"-",d=$(w);d>u&&(u=d)}l.minWidth&&u<l.minWidth&&(u=l.minWidth),l.maxWidth&&u>l.maxWidth&&(u=l.maxWidth),o[l.key]=u}let r=[];n?.title&&r.push(B.bold(n.title));let i="\u250C\u2500"+e.map(l=>"\u2500".repeat(o[l.key])).join("\u2500\u252C\u2500")+"\u2500\u2510";r.push(B.gray(i));let a="\u2502 "+e.map(l=>B.bold(he(l.header,o[l.key]))).join(B.gray(" \u2502 "))+" \u2502";r.push(a);let c="\u251C\u2500"+e.map(l=>"\u2500".repeat(o[l.key])).join("\u2500\u253C\u2500")+"\u2500\u2524";r.push(B.gray(c));for(let l of t){let u="\u2502 "+e.map(g=>{let w=l[g.key]!=null?String(l[g.key]):"-";return he(w,o[g.key])}).join(B.gray(" \u2502 "))+" \u2502";r.push(u)}let m="\u2514\u2500"+e.map(l=>"\u2500".repeat(o[l.key])).join("\u2500\u2534\u2500")+"\u2500\u2518";return r.push(B.gray(m)),r.join(`
10
+ `)}import T from"picocolors";import _t from"node:fs";import Qr from"node:os";import dt from"node:path";var Kr="https://test-lumimaker.66rpg.com/common/public-info/test.json",Hr="https://lumimaker.66rpg.com/common/public-info/debug.json",Yr="https://lumimaker.66rpg.com/common/public-info/release.json",zr="https://test-lumi.66rpg.com",Xr="https://debug-lumi.66rpg.com",Zr="https://lumi.66rpg.com",ei=5e3,be,pt;function ti(e="",t=""){let n=`${e} ${t}`.toLowerCase();return n.includes("debug")?"debug":n.includes("test")?"test":"release"}function ni(e){return e==="debug"?Hr:e==="test"?Kr:Yr}function oi(e){return`${e==="debug"?Xr:e==="test"?zr:Zr}/`}function ri(e,t){let n=si(e??"");return ii(n,t)?`${n}/`:oi(t)}function ii(e,t){if(!e)return!1;let n=e.toLowerCase();return t==="debug"?n.includes("debug"):t==="test"?n.includes("test"):!n.includes("debug")&&!n.includes("test")}function si(e){let t=e.trim().replace(/\/+$/,"");return t?t.endsWith("/api")?t.slice(0,-4):t:""}var Mn=new WeakMap,ai=new Set(["template","templates","works","edit-works","edit-template","edit-game","projects","edit-projects","edit-project"]),ci=new Set(["version","environment","updatedat","updated_at","status","id","description","effectiveat","expireat"]);function On(e){let t=e.trim().toLowerCase();return t==="email"||t==="mail"||t==="e-mail"||t==="\u90AE\u7BB1"||t==="\u516C\u5F00\u90AE\u7BB1"?"email":t==="qq"||t==="qq\u53F7"||t==="qq_number"||t==="qqnumber"?"qq":t}function ht(e,t){return e==="email"?"\u90AE\u7BB1":e==="qq"?"QQ":t.trim()||e}function li(e){return!!e&&!ai.has(e)&&!ci.has(e)}function bt(e,t){!t.value||!li(t.key)||e.some(n=>n.key===t.key)||e.push(t)}function mi(e){let t=[];for(let[n,o]of Object.entries(e))bt(t,{key:n,label:ht(n,n),value:o.trim()});return t}function ui(e){let t=n=>n==="email"?0:n==="qq"?1:2;return[...e].sort((n,o)=>t(n.key)-t(o.key))}function di(e){let t=ui(e).map(n=>`${n.label.trim()} ${n.value.trim()}`.trim()).filter(Boolean);return t.length?`\uFF08${t.join("\uFF0C")}\uFF09`:""}function pi(e){let t=e.trim().replace(/^\uFEFF/,"").trim();if(!t||t.startsWith("<"))return ft({},[]);let n=t;for(let i=0;i<3&&typeof n=="string";i+=1)try{n=JSON.parse(n.trim())}catch{return ft({},[])}let o=[],r={};return $n(n,r,o),ft(r,o)}function ft(e,t){return Mn.set(e,t),e}function $n(e,t,n){if(!e||typeof e!="object")return;if(Array.isArray(e)){for(let r of e)Ln(t,n,r);return}let o=e;if(Array.isArray(o.items))for(let r of o.items)Ln(t,n,r);for(let r of["data","list","result","content","payload"]){let i=o[r];i&&typeof i=="object"&&$n(i,t,n)}for(let[r,i]of Object.entries(o)){if(r==="items"||r==="data"||r==="list"||r==="result"||r==="content"||r==="payload")continue;let a=gt(i);if(!a)continue;let c=On(r);t[c]||=a,bt(n,{key:c,label:ht(c,r),value:a})}}function Ln(e,t,n){if(!n||typeof n!="object"||Array.isArray(n))return;let o=n,r=String(o.keyName??o.key_name??""),i=On(r);if(!i)return;let a=gt(o.keyValue??o.key_value??o[i]);if(!a)return;e[i]||=a;let c=gt(o.name)||ht(i,r);bt(t,{key:i,label:c,value:a})}function gt(e){return typeof e=="string"?e.trim():typeof e=="number"&&Number.isFinite(e)?String(e):""}function fi(e=be??{}){return di(Mn.get(e)??mi(e))}function Q(e,t){return we(e,{contact:fi(t??be??{})})}async function te(){if(be===void 0){if(process.env.NODE_TEST_CONTEXT){be={};return}pt||(pt=bi()),be=await pt}}function _i(){let e=gi();if(!e)return{lumi:"",cg:""};try{let n=JSON.parse(_t.readFileSync(e,"utf8")).web_config??{};return{lumi:typeof n.base_lumi_api=="string"?n.base_lumi_api:"",cg:typeof n.base_cg=="string"?n.base_cg:""}}catch{return{lumi:"",cg:""}}}function gi(){let e=hi();if(e)return e;let t=pe();if(t){let o=dt.join(dt.dirname(t),"config.json");if(_t.existsSync(o))return o}let n=dt.join(E(Qr.homedir()),"config.json");if(_t.existsSync(n))return n}function hi(){let e=process.argv.slice(2);for(let t=0;t<e.length;t+=1){let n=e[t];if(n==="--config"&&e[t+1])return e[t+1];if(n.startsWith("--config="))return n.slice(9)}}async function bi(){let e=_i(),t=ti(e.lumi,e.cg),n=new AbortController,o=setTimeout(()=>n.abort(),ei);try{let r=await fetch(ni(t),{signal:n.signal,headers:{Accept:"application/json,text/plain,*/*","User-Agent":"lumimaker",Referer:ri(e.lumi,t)}});return r.ok?pi(await r.text()):{}}catch{return{}}finally{clearTimeout(o)}}function Fn(e,t,n){let o="\u2500".repeat(e+4);return t(n?`\u250C${o}\u2510`:`\u2514${o}\u2518`)}function Vn(e,t){return t("\u2502")+" ".repeat(e+4)+t("\u2502")}function xi(e,t,n){let o=Math.max(0,t-$(e));return n("\u2502")+" "+e+" ".repeat(o)+" "+n("\u2502")}function D(e,t,n){let o=n?.status??"info",r=o==="success"?T.green("\u2714"):o==="error"?T.red("\u2716"):o==="warn"?T.yellow("\u26A0"):T.cyan("\u2139"),i=o==="success"?T.green:o==="error"?T.red:o==="warn"?T.yellow:T.cyan,a=process.stdout.columns&&process.stdout.columns>30?process.stdout.columns:80,c=Math.min(Math.max(a-1,20),84),m=Math.max(16,c-6),l=t.filter(S=>S.value!=null&&S.value!==""),g=l.reduce((S,ie)=>Math.max(S,$(ie.label)),0)+2,w=Math.max(16,m-g-1),d=[],P=`${r} ${T.bold(e)}`;d.push(P);for(let S of l){let ie=String(S.value),Lt=Te(ie,w);for(let ke=0;ke<Lt.length;ke++){let Mt=Lt[ke],Ot=S.highlight?T.bold(T.cyan(Mt)):Mt;if(ke===0){let Be=T.gray(he(S.label+":",g));d.push(`${Be} ${Ot}`)}else{let Be=" ".repeat(g+1);d.push(`${Be}${Ot}`)}}}let v=Math.max(...d.map(S=>$(S)),Math.min(40,m));n?.width&&(v=Math.max(v,n.width)),v=Math.min(v,m);let C=[];for(let S of d)$(S)<=v?C.push(S):C.push(...Te(ge(S),v));if(d.length=0,d.push(...C),n?.footer){d.push(T.dim("\u2500".repeat(v)));let S=Te(n.footer,v);for(let ie of S)d.push(T.dim(ie))}let H=[];H.push(Fn(v,i,!0)),H.push(Vn(v,i));for(let S of d)H.push(xi(S,v,i));return H.push(Vn(v,i)),H.push(Fn(v,i,!1)),H.join(`
11
+ `)}function Un(e,t){let n=f.error,o=[];return t?.code!=null&&o.push({label:n.label_code.text,value:t.code}),o.push({label:n.label_detail.text,value:e,highlight:!1}),t?.serverCode!=null&&t.serverCode!==""&&o.push({label:n.label_server_code.text,value:t.serverCode}),t?.serverMsg&&o.push({label:n.label_server_msg.text,value:t.serverMsg}),t?.hint&&o.push({label:n.label_hint.text,value:t.hint,highlight:!0}),t?.logPath&&o.push({label:n.label_log_path.text,value:t.logPath}),D(n.title.text,o,{status:"error",footer:Q(n.footer.text)})}function vi(e){return e&&typeof e=="object"&&"code"in e&&typeof e.code=="string"?e.code:(e instanceof Error?e.message:String(e)).match(/\b(EPERM|EACCES|ENOENT|EBUSY|ENOTEMPTY|ENOTDIR|EISDIR|EINVAL|EMFILE|ENFILE)\b/)?.[1]??""}function qn(e){return e?e.includes("\uFFFD")||e.includes("\\\\?\\"):!1}function Bn(e){switch(vi(e)){case"EPERM":case"EACCES":return s("kit","sys_denied");case"ENOENT":return s("kit","sys_missing");case"EBUSY":case"ENOTEMPTY":return s("kit","sys_busy");case"ENOTDIR":case"EISDIR":return s("kit","sys_type");case"EINVAL":return s("kit","sys_invalid");case"EMFILE":case"ENFILE":return s("kit","sys_too_many");default:return s("kit","sys_unknown")}}function J(e){let t=e instanceof Error?e.message:String(e??"");return qn(t)?Bn(e):t}function Ce(e){return e&&(qn(e)?Bn(new Error(e)):e)}import j from"picocolors";function yi(e){return String(e.post_url??"").trim()}function ki(e){return Number(e.post_status)===4}function wi(e){return/(?:cg-maker|lumimaker)\.66rpg\.com/i.test(e)}function Si(e){return e.replace(/https?:\/\/\S*(?:cg-maker|lumimaker)\.66rpg\.com\S*/gi,"").replace(/\b[\w.-]*(?:cg-maker|lumimaker)\.66rpg\.com\S*/gi,"").replace(/[ \t]{2,}/g," ").trim()}function xe(e,t,n){let o=[],r=yi(t);if(r&&!wi(r)&&o.push(ki(t)?s("fmt","post_url_line",{url:r}):s("fmt","post_url_draft_line",{url:r})),n?.pull&&!t.skipped_upload){let i=Ei(t);i&&o.push(s("fmt","create_pull_line",{cmd:i}))}return o.length?`${e}
12
12
  ${o.join(`
13
- `)}`:e}function Bn(e){return!e||e<=0?"-":e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(2)} MB`}function wi(e){let t=typeof e=="number"?e:Number(e);if(!Number.isFinite(t)||t<=0)return"-";let n=new Date(t*1e3);if(Number.isNaN(n.getTime()))return"-";let o=r=>String(r).padStart(2,"0");return`${n.getFullYear()}-${o(n.getMonth()+1)}-${o(n.getDate())} ${o(n.getHours())}:${o(n.getMinutes())}:${o(n.getSeconds())}`}function Jn(e){let t=typeof e=="number"?e:Number(e),n=f.shelf;return t===1?A.green(n.val_shelf_on.text):t===2?n.val_shelf_off.text:s("fmt","val_unknown")}function Si(e){let t=typeof e=="number"?e:Number(e),n=f.versions;switch(t){case 1:return n.status_draft.text;case 2:return n.status_machine.text;case 3:return n.status_human.text;case 4:return A.green(n.status_passed.text);case 5:return A.red(n.status_rejected.text);default:return n.status_unknown.text}}function Gn(e,t,n,o){return e===2?A.yellow(n):e===3?o:t}function vt(e,t){switch(typeof t=="number"?t:Number(t)){case 4:return{title:e.title_passed.text,status:"success",footer:e.footer_passed.text};case 2:case 3:return{title:e.title_reviewing.text,status:"info",footer:e.footer_reviewing.text};case 5:return{title:e.title_rejected.text,status:"error",footer:e.footer_rejected.text};default:return{title:e.title_success.text,status:"success",footer:e.footer_success.text}}}function Ii(e){let t=f.whoami;switch(e){case"signed_template_author":return t.role_signed_template_author.text;case"signed_author":return t.role_signed_author.text;case"author":return t.role_author.text;case"user":return t.role_user.text;case"moderator":return t.role_moderator.text;default:return}}function Wn(e){let t=f.whoami;if(!e.logged_in)return e.expired?D(t.title_expired.text,[{label:s("fmt","label_status"),value:t.status_expired.text},{label:s("fmt","label_hint"),value:t.hint_relogin.text,highlight:!0}],{status:"warn"}):e.offline?D(t.title_offline.text,[{label:s("fmt","label_status"),value:t.status_offline.text},{label:s("fmt","label_hint"),value:t.hint_check_network.text}],{status:"warn"}):D(t.title_not_logged_in.text,[{label:s("fmt","label_status"),value:t.status_not_logged_in.text},{label:s("fmt","label_action"),value:t.hint_login_now.text,highlight:!0}],{status:"info"});let n=[],o=e.nickname,r=e.username||e.lumi_username;o&&n.push({label:t.label_nickname.text,value:o,highlight:!0}),r&&n.push({label:t.label_lumi_username.text,value:r}),e.display_role_name&&n.push({label:t.label_display_role.text,value:e.display_role_name}),e.lumi_ok===!1&&n.push({label:s("fmt","label_hint"),value:t.lumi_not_ready.text,highlight:!0});let i=Array.isArray(e.role_names)?e.role_names.filter(c=>typeof c=="string"&&c):[],a=i.length?i:Array.isArray(e.lumi_roles)?e.lumi_roles.map(c=>Ii(String(c))).filter(c=>!!c):[];return a.length&&n.push({label:t.label_lumi_roles.text,value:a.join(s("fmt","list_sep"))}),D(t.title_logged_in.text,n,{status:"success",footer:t.footer_logged_in.text})}function Qn(e){let t=f.publish,n=e.variant===2,o=[{label:n?t.label_game_id_demo.text:t.label_game_id_official.text,value:e.game_id,highlight:!0},{label:t.label_release_version.text,value:e.version_name},{label:t.label_version_no.text,value:e.version_no?s("fmt","version_no",{n:e.version_no}):void 0},{label:t.label_variant_type.text,value:Gn(e.variant,t.val_official.text,t.val_demo.text,t.val_derived.text)}];n&&e.parent_game_id&&o.push({label:t.label_parent_game_id.text,value:e.parent_game_id}),e.bytes&&o.push({label:t.label_package_size.text,value:Bn(e.bytes)});let r=vt(t,e.status);return be(D(r.title,o,{status:r.status,footer:r.footer}),e)}function Ai(e){let t=String(e.slug||"").trim(),n=String(e.owner||"").trim();if(!t||!n)return;let o=String(e.version||"").trim(),r=o?`${n}/${t}@${o}`:`${n}/${t}`,i=String(e.data_ver_id||"").trim();return i&&i!=="0"?`npx @66rpg/lumimaker-create@latest ${r} --with-assets ${i}`:`npx @66rpg/lumimaker-create@latest ${r}`}function Kn(e,t){let n=f.publish_template,o=t==="publish-template-data"||e.pack_only===!0,r=[{label:n.label_template_id.text,value:e.template_id,highlight:!0},{label:n.label_template_name.text,value:e.template_name},{label:n.label_slug.text,value:e.slug},{label:n.label_version.text,value:e.version}];e.data_ver&&e.data_ver!=="0"&&r.push({label:n.label_data_ver.text,value:e.data_ver}),e.data_ver_id&&e.data_ver_id!=="0"&&r.push({label:n.label_data_id.text,value:e.data_ver_id,highlight:o&&!(e.data_ver&&e.data_ver!=="0")}),e.data_summary&&r.push({label:n.label_data_summary.text,value:e.data_summary});let i;if(o)i=D(n.title_data_success.text,r,{status:"success",footer:n.footer_data_success.text});else{let a=vt(n,e.status);i=D(a.title,r,{status:a.status,footer:a.footer})}return be(i,e,{pull:!0})}function Hn(e){let t=f.publish_project,n=[{label:t.label_project_id.text,value:e.project_id,highlight:!0},{label:t.label_project_name.text,value:e.version_name},{label:t.label_release_version.text,value:e.version_name}];e.bytes&&n.push({label:t.label_package_size.text,value:Bn(e.bytes)});let o=vt(t,e.status);return be(D(o.title,n,{status:o.status,footer:o.footer}),e)}function Yn(e){let t=f.templates,n=e.templates||e.items||[],o=[{key:"template_id",header:t.col_template_id.text,minWidth:14},{key:"name",header:t.col_template_name.text,minWidth:16},{key:"latest_version_no",header:t.col_latest_version.text,minWidth:10}],r=n.map(c=>({template_id:A.cyan(c.template_id||c.id||"-"),name:c.name||c.template_name||"-",latest_version_no:c.latest_version_no?s("fmt","version_no",{n:c.latest_version_no}):"-"})),i=ee(o,r,{emptyText:t.empty_list.text,title:A.bold(t.table_title.text)}),a=e.total!=null?A.dim(`
14
- `+s("common","page_info_pattern",{page:String(e.page||1),count:String(e.count||r.length),total:String(e.total)})):"";return i+a}function zn(e){let t=f.games,n=e.games||[],o=[{key:"game_id",header:t.col_game_id.text,minWidth:14},{key:"name",header:t.col_game_name.text,minWidth:16},{key:"variant",header:t.col_variant.text,minWidth:10},{key:"latest_version_no",header:t.col_latest_version.text,minWidth:10}],r=n.map(c=>({game_id:A.cyan(c.game_id||c.id||"-"),name:c.name||"-",variant:Gn(c.variant,t.val_official.text,t.val_demo.text,t.val_derived.text),latest_version_no:c.latest_version_no?s("fmt","version_no",{n:c.latest_version_no}):"-"})),i=ee(o,r,{emptyText:t.empty_list.text,title:A.bold(t.table_title.text)}),a=e.total!=null?A.dim(`
15
- `+s("common","page_info_pattern",{page:String(e.page||1),count:String(e.count||r.length),total:String(e.total)})):"";return i+a}function Xn(e){let t=f.projects,n=e.projects||[],o=[{key:"project_id",header:t.col_project_id.text,minWidth:14},{key:"name",header:t.col_project_name.text,minWidth:16},{key:"latest_version_no",header:t.col_latest_version.text,minWidth:10}],r=n.map(c=>({project_id:A.cyan(c.project_id||c.id||"-"),name:c.name||c.project_name||"-",latest_version_no:c.latest_version_no?s("fmt","version_no",{n:c.latest_version_no}):"-"})),i=ee(o,r,{emptyText:t.empty_list.text,title:A.bold(t.table_title.text)}),a=e.total!=null?A.dim(`
16
- `+s("common","page_info_pattern",{page:String(e.page||1),count:String(e.count||r.length),total:String(e.total)})):"";return i+a}function De(e,t){let n=f.versions,o=[{key:"version",header:n.col_version.text,minWidth:10},{key:"status",header:n.col_status.text,minWidth:8},{key:"changelog",header:n.col_changelog.text,minWidth:12},{key:"published_at",header:n.col_published_at.text,minWidth:18},{key:"post",header:n.col_post.text,minWidth:14}],r=t.map(i=>{let c=!!i.post_id||i.post_status!=null?Number(i.post_status)===4?n.post_public.text:n.post_draft.text:"-";return{version:i.version_name||i.version||i.version_no||"-",status:Si(i.status??i.audit_status),changelog:i.changelog||"-",published_at:wi(i.published_at),post:c}});return ee(o,r,{emptyText:n.empty_versions.text,title:A.bold(e)})}function Zn(e,t){let n=f.templates,o=[{key:"data_id",header:n.col_data_id.text,minWidth:14},{key:"data_ver",header:n.col_data_ver.text,minWidth:10},{key:"summary",header:n.col_data_summary.text,minWidth:12}],r=t.map(i=>({data_id:A.cyan(i.data_id||"-"),data_ver:i.data_ver||"-",summary:i.summary||"-"}));return ee(o,r,{emptyText:n.empty_data.text,title:A.bold(e)})}function F(e){if(e==null||typeof e=="object")return;let t=String(e).trim();return t||void 0}function ji(e){let t=F(e);if(!(!t||t==="0"))return t}function Ei(e){if(e==null||e==="")return;let t=typeof e=="number"?e:Number(e);if(!(!Number.isFinite(t)||t===0))return t===2?s("fmt","val_demo"):t===3?f.games.val_derived.text:t===1?s("fmt","val_official"):s("fmt","val_unknown")}function Ri(e,t){let n=t==="template"?["template_id","id"]:t==="project"?["project_id","id"]:["game_id","id"];for(let o of n){let r=ji(e[o]);if(r)return t==="game"?{label:(typeof e.variant=="number"?e.variant:Number(e.variant))===2?s("fmt","label_game_demo_id"):s("fmt","label_game_official_id"),id:r}:t==="template"?{label:s("fmt","label_template_id"),id:r}:{label:s("fmt","label_project_id"),id:r}}}function Le(e,t,n="game"){let o=[],r=F(t.name)??F(t.template_name)??F(t.project_name);r&&o.push({label:s("fmt","label_name"),value:r,highlight:!0});let i=Ri(t,n);i&&o.push({label:i.label,value:i.id});let a=Ei(t.variant);a&&o.push({label:s("fmt","label_type"),value:a});let c=F(t.parent_game_id);c&&o.push({label:s("fmt","label_parent"),value:c});let m=F(t.summary);m&&o.push({label:s("fmt","label_summary"),value:m});let l=F(t.latest_version_name)??(t.latest_version_no!=null&&t.latest_version_no!==""?s("fmt","version_no",{n:t.latest_version_no}):void 0);l&&o.push({label:s("fmt","label_version"),value:l}),t.status!=null&&t.status!==""&&o.push({label:s("fmt","label_shelf"),value:Jn(t.status)});let u=F(t.demo_scope);u&&o.push({label:s("fmt","label_demo_scope"),value:u});let g=F(t.play_duration);if(g&&o.push({label:s("fmt","label_play_duration"),value:g}),t.post_status!=null&&t.post_status!==""){let w=Number(t.post_status)===4;o.push({label:s("fmt","label_post_status"),value:w?f.versions.post_public.text:f.versions.post_draft.text})}return be(D(e,o,{status:"info"}),t)}function eo(e={}){let t=F(e.message)??s("fmt","logout_done");return A.green(`\u2714 ${t}`)}function Me(e,t){let n=f.shelf,o=s("fmt",`type_${e}`),r=e==="template"?"template_id":e==="game"?"game_id":"project_id",i=e==="template"?"template_name":e==="game"?"name":"project_name",a=[{label:s("fmt","shelf_id",{type:o}),value:t[r]||"-",highlight:!0}];return t[i]&&a.push({label:s("fmt","shelf_name",{type:o}),value:t[i]}),t.shelf_status&&a.push({label:n.label_shelf.text,value:Jn(t.shelf_status)}),t.changelog&&a.push({label:n.label_changelog.text,value:t.changelog}),be(D(`${o}${n.card_title_shelf_updated.text}`,a,{status:"success"}),t)}function to(e){let t=f.skill,n=s("fmt","list_sep"),o=Array.isArray(e.copied)?e.copied.join(n):"-",r=Array.isArray(e.targets)?e.targets.join(n):"-";return D(t.card_title.text,[{label:t.label_kit.text,value:e.kit||"-"},{label:t.label_copied.text,value:o},{label:t.label_targets.text,value:r,highlight:!0}],{status:"success"})}function bt(e){return ki(e.replace(/https?:\/\/\S*test-lumi\.66rpg\.com\S*/gi,"").replace(/https?:\/\/\S*lumi\.66rpg\.com\/api\S*/gi,"").replace(/\b(?:test-lumi\.66rpg\.com|lumi\.66rpg\.com\/api|base_lumi_api)\b/gi,""))}function no(e){let t=f.error,n=f.error_codes,o=bt(Te(e.message||t.default_message.text)),r=e.hint?bt(Te(e.hint)):e.hint,i=e.server_msg?bt(Te(e.server_msg)):"";if(!r){let a=e.code!=null?String(e.code):"";a==="2001"||o.includes("\u672A\u767B\u5F55")?r=n[2001].text:a==="2003"||o.includes("\u51ED\u8BC1\u5DF2\u8FC7\u671F")?r=n[2003].text:o.includes("\u6821\u9A8C\u5931\u8D25")||o.includes("\u54C8\u5E0C")||o.includes("MD5")||o.includes("SHA-256")||o.includes("checksum")?r=Q(n["1003_checksum"].text):o.includes("dist")||o.includes("index.html")?r=n["1001_missing_dist"].text:o.includes("scripts.")||/scripts\s/.test(o)?r=n["1001_missing_script"].text:o.includes("\u6682\u65E0\u5DF2\u901A\u8FC7\u5BA1\u6838")||o.includes("\u5C1A\u672A\u901A\u8FC7\u5BA1\u6838")||o.includes("\u8FD8\u5728\u5BA1\u6838\u4E2D")?r=n["1001_no_approved"].text:a==="2002"||a==="8004"||o.includes("\u6743\u9650")||o.includes("\u7B7E\u7EA6")?r=n[8004].text:n[a]&&(r=n[a].text)}return r&&(r=Q(r)),Vn(o,{code:e.code,hint:r,serverCode:e.server_code,serverMsg:i||void 0})}var oo=new Set(["login","logout","skill"]);function ro(e){let t=e.code!=null?String(e.code):"";if(t==="2001"||t==="2003")return!0;let n=e.message||"";return n.includes("\u672A\u767B\u5F55")||n.includes("\u51ED\u8BC1\u5DF2\u8FC7\u671F")||n.includes("\u767B\u5F55\u51ED\u8BC1\u5DF2\u8FC7\u671F")||n.includes("\u767B\u5F55\u5DF2\u5931\u6548")||n.includes("refresh_token \u5DF2\u5931\u6548")}function io(e,t){if(e!=="whoami"||!t||typeof t!="object")return!1;let n=t;return n.offline?!1:n.logged_in===!1||n.expired===!0}function so(e,t={stdinTty:!!process.stdin.isTTY,stdoutTty:!!process.stdout.isTTY}){return e.skipLoginPrompt||e.command&&oo.has(e.command)||e.isAgent||e.isJson||e.isInteractive===!1?!1:!!(t.stdinTty&&t.stdoutTty)}function ao(e){return!(!e.isAgent||e.skipLoginPrompt||e.command&&oo.has(e.command))}import ne from"node:fs";import Oe from"node:os";import Pi from"node:path";var Ni="analytics-identity.json";function yt(e){return Pi.join(E(e),Ni)}function co(e){if(typeof e=="number"&&Number.isFinite(e)&&e>0)return String(Math.trunc(e));if(typeof e=="string"){let t=e.trim();if(/^[1-9][0-9]{0,18}$/.test(t))return t}}function kt(e,t=Oe.homedir()){let n=co(e);if(n){try{let o=E(t);ne.mkdirSync(o,{recursive:!0}),ne.writeFileSync(yt(t),`${JSON.stringify({uid:n})}
17
- `)}catch{}return n}}function $e(e=Oe.homedir()){try{let t=yt(e);ne.existsSync(t)&&ne.unlinkSync(t)}catch{}}function wt(e=Oe.homedir()){try{let t=yt(e);if(!ne.existsSync(t))return;let n=JSON.parse(ne.readFileSync(t,"utf8"));return co(n?.uid)}catch{return}}function lo(e=Oe.homedir()){let t=wt(e);return t?{uid:t,logged_in:!0}:{logged_in:!1}}function St(e){return!!(e.isJson&&!e.isAgent)}function mo(e){let t=ge(e).trim();if(!t)return"";let n=t.match(/^(?:\d{4}-\d{2}-\d{2}T[\d:.]+Z\s+)?(INFO|DEBUG|WARN|ERROR)\s+(.*)$/);if(n){let o=n[1],r=n[2];if(o==="INFO")return`${k.brandTag} ${k.badgeInfo} ${r}`;if(o==="DEBUG")return`${k.brandTag} ${k.badgeDebug} ${oe.gray(r)}`;if(o==="WARN")return`${k.brandTag} ${k.badgeWarn} ${oe.yellow(r)}`;if(o==="ERROR")return`${k.brandTag} ${k.badgeError} ${oe.red(r)}`}return t.startsWith("[lumimaker]")?e:`${k.brandTag} ${e}`}function It(e,t){return new Promise(n=>{let o=po(e,t,{stdio:"inherit"});o.on("exit",r=>n(r??0)),o.on("error",r=>{console.error(oe.red(s("kit","run_failed",{e:J(r)}))),n(1)})})}function Ti(e,t,n){let o=t.includes("--json")?[...t]:[...t,"--json"];return new Promise(r=>{let i="",a="",c=po(e,o,{stdio:["inherit","pipe","pipe"],env:{...process.env,...n?{LUMIMAKER_TTY:"1"}:{}}});c.stdout.on("data",m=>{i+=m.toString("utf8")}),c.stderr.on("data",m=>{let u=(a+m.toString("utf8")).split(/\r?\n/);a=u.pop()??"";for(let g of u)g.trim()&&process.stderr.write(mo(g)+`
18
- `)}),c.on("exit",m=>{a.trim()&&process.stderr.write(mo(a)+`
19
- `);let l=i.trim();try{let u=JSON.parse(l);r({code:m??0,envelope:u,rawStdout:i})}catch{r({code:m??0,envelope:null,rawStdout:i})}}),c.on("error",m=>{console.error(oe.red(s("kit","cli_failed",{e:J(m)}))),r({code:1,envelope:null,rawStdout:""})})})}async function uo(e){return ao(e)?(an(s("kit","login_required_agent")),12):Di(e)}async function Di(e){if(!so(e))return null;if(!await Nn())return h.warn(f.common.login_cancelled.text),null;let n=await It(e.binPath,["login"]);return n!==0?(h.error(f.common.login_failed.text),n||1):(h.success(f.common.login_retrying.text),ve({...e,skipLoginPrompt:!0}))}function Li(e,t){if(!e)return null;let n=e,o=n.command;return o!=="need-input"&&o!=="update-available"&&o!=="login-required"?null:typeof n.code=="number"&&n.code>0?n.code:t>0?t:11}function Mi(e,t,n){try{if(e==="logout"&&(n===0||t?.success===!0)){$e();return}let o=t?.data;o&&typeof o=="object"&&o!==null&&"uid"in o&&kt(o.uid)}catch{}}function Oi(e){if(!e)return null;let t=e;if(t.command!=="need-input")return null;let n=t.data?.questions;return Array.isArray(n)&&n.length?n:null}async function $i(e,t){if(!e.isInteractive||e.isAgent||e.skipNeedInputPrompt)return null;let n=Oi(t);if(!n)return null;let o=await yn(n);return Object.keys(o).length?ve({...e,args:vn(e.args,o),skipNeedInputPrompt:!0}):null}async function ve(e){un(e.binPath);let t=te(),{binPath:n,args:o,isJson:r,command:i,subcommand:a,isAgent:c}=e,m=o.includes("--help")||o.includes("-h")||o.includes("--version")||o.includes("-V");if(i==="login"||m)return It(n,o);if(St(e)){let u=o.includes("--json")?o:[...o,"--json"],g=await It(n,u);if(i==="logout"&&g===0)try{$e()}catch{}return g}let l=await Ti(n,o,e.isInteractive);if(Mi(i,l.envelope,l.code),await t,!l.envelope)return l.rawStdout&&process.stdout.write(l.rawStdout),l.code;if(l.envelope.success===!0){let u=l.envelope.data??{};if(io(i,u)){let g=await uo(e);if(g!=null)return g}return St(e)?(l.rawStdout&&process.stdout.write(l.rawStdout),0):(Fi(i,a,o,u),0)}if(l.envelope.success===!1){let u=Li(l.envelope,l.code);if(c&&u!=null)return l.rawStdout&&process.stdout.write(l.rawStdout),u;let g=await $i(e,l.envelope);if(g!=null)return g;let w=l.envelope.error??{message:s("kit","op_failed")};if(ro(w)){let d=await uo(e);if(d!=null)return d}return St(e)?(l.rawStdout&&process.stdout.write(l.rawStdout),l.code||2):(console.error(no(w)),l.code||2)}return l.rawStdout&&process.stdout.write(l.rawStdout),l.code}function Fi(e,t,n,o){if(e==="whoami"){console.log(Wn(o));return}if(e==="publish"){console.log(Qn(o));return}if(e==="publish-template"||e==="publish-template-data"){console.log(Kn(o,e));return}if(e==="publish-project"){console.log(Hn(o));return}if(e==="games"){if(t==="update"){console.log(Me("game",o));return}if(n.includes("--query")){console.log(Le(f.games.query_card_title.text,o,"game"));return}if(n.includes("--versions")){console.log(De(f.games.versions_title.text,Array.isArray(o)?o:[]));return}console.log(zn(o));return}if(e==="templates"){if(t==="update"){console.log(Me("template",o));return}if(n.includes("--query")){console.log(Le(f.templates.query_card_title.text,o,"template"));return}if(n.includes("--versions")){console.log(De(f.templates.versions_title.text,Array.isArray(o)?o:[]));return}if(n.includes("--data")){console.log(Zn(f.templates.data_packages_title.text,o.items||[]));return}console.log(Yn(o));return}if(e==="projects"){if(t==="update"){console.log(Me("project",o));return}if(n.includes("--query")){console.log(Le(f.projects.query_card_title.text,o,"project"));return}if(n.includes("--versions")){console.log(De(f.projects.versions_title.text,Array.isArray(o)?o:[]));return}console.log(Xn(o));return}if(e==="skill"){console.log(to(o));return}if(e==="logout"){console.log(eo(o));return}console.log(oe.green(`\u2714 ${f.common.success_default.text}`))}import Vi from"node:fs";import At from"node:path";import{fileURLToPath as Ui}from"node:url";function qi(e){return`V${e.replaceAll("+",".")}`}function Bi(){let e=At.dirname(Ui(import.meta.url)),t=[At.resolve(e,"../../../crates/lumimaker/Cargo.toml"),At.resolve(process.cwd(),"crates/lumimaker/Cargo.toml")];for(let n of t)try{let r=Vi.readFileSync(n,"utf8").match(/^version\s*=\s*"([^"]+)"/m);if(r?.[1])return qi(r[1])}catch{}}function fo(){return"V1.0.1.0922001"}var jt={CliCommandResult:"CliCommandResult"},Ji=new Set(["publish","publish-template","publish-template-data","publish-project","login","logout","whoami","games","templates","projects","validate-template","validate","skill","init"]),Gi=new Set(["update","list","versions","query"]),Wi=new Set(["bin_missing","usage","version_invalid","unexpected_positional","validate_fail","need_input","update","login_required","fail"]);function _o(e){if(e)return Ji.has(e)?e:"other"}function go(e){if(e)return Gi.has(e)?e:void 0}function ho(e){if(e)return Wi.has(e)?e:void 0}function Et(e){return e===0?"ok":e===10?"update":e===11?"need_input":e===12?"login_required":e===2?"usage":"fail"}import re from"node:fs";import os from"node:os";import rs from"node:path";import Nt from"node:fs";import Qi from"node:os";import xo from"node:path";var Ve="huanguang",bo="lumimaker_npm",vo="lumimaker_cli",Ki=`https://fx-it.66rpg.com:8206/sa?project=${Ve}`;function Rt(e,t=Ve){try{let n=new URL(e);return n.protocol==="https:"&&n.hostname==="fx-it.66rpg.com"&&n.port==="8206"&&n.pathname==="/sa"&&n.searchParams.get("project")===t&&!n.username&&!n.password}catch{return!1}}function Fe(e,t){return String(e[t]??"").trim().toLowerCase()}function Hi(e){let t=Fe(e,"LUMIMAKER_NO_ANALYTICS");if(t==="1"||t==="true")return!0;let n=Fe(e,"LUMIMAKER_ANALYTICS");if(n==="0"||n==="false")return!0;let o=Fe(e,"CI");return!!(o==="true"||o==="1"||e.NODE_TEST_CONTEXT)}function Yi(){try{let e=JSON.parse(Nt.readFileSync(xo.join(q(),"package.json"),"utf8"));return typeof e.version=="string"?e.version:""}catch{return""}}function zi(e){try{let t=xo.join(E(e),"config.json");if(!Nt.existsSync(t))return;let n=JSON.parse(Nt.readFileSync(t,"utf8"));return n&&typeof n=="object"?n:void 0}catch{return}}function Xi(e){let t=e?.web_config,n=typeof t?.type=="string"?t.type:"",o=typeof t?.base_cg=="string"?t.base_cg:"";return n&&n!=="1"||o.toLowerCase().includes("test")?"test":"release"}function Zi(e){let t=e?.env??process.env,n=e?.homeDir??Qi.homedir(),o=e?.fileConfig??(e?.skipFile?void 0:zi(n)),r=Xi(o),i=o?.sensorsAnalytics,a=!0;typeof i?.enabled=="boolean"&&(a=i.enabled),Hi(t)&&(a=!1);let c=Ki,m=typeof i?.serverUrl=="string"?i.serverUrl.trim():"";m&&Rt(m)&&(c=m);let l=typeof t.LUMIMAKER_SENSORS_URL=="string"?t.LUMIMAKER_SENSORS_URL.trim():"";l&&Rt(l)&&(c=l),Rt(c)||(a=!1);let u=Fe(t,"LUMIMAKER_ANALYTICS_LOG"),g=r!=="release"&&(i?.showLog===!0||u==="1"||u==="true");return{enabled:a,serverUrl:c,showLog:g,deployEnv:r,releaseId:e?.releaseId??Yi()}}var Pt;function ye(){return Pt||(Pt=Zi()),Pt}var es=/^\$?[A-Za-z][A-Za-z0-9_]{0,99}$/,ts=new Set(["access_token","token","cookie","authorization","phone","mobile","wechat","qq","content","body","draft_title","search","query","error","message","stack","order_no","password","refresh_token","nick_name","nickname","username","lumi_username","dest","dest_dir","cwd","argv","from_dir","path","filepath"]);function ns(e){if(e!=null){if(typeof e=="string")return e.slice(0,256);if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(typeof e=="boolean"||e instanceof Date)return e;if(Array.isArray(e))return e.slice(0,20).map(t=>t.slice(0,256))}}function yo(e){let t={};for(let[n,o]of Object.entries(e)){if(!es.test(n)||ts.has(n.toLowerCase()))continue;let r=ns(o);r!==void 0&&(t[n]=r)}return t}var is=100,ss=600,as=700,cs="analytics-device-id",Ue=[],qe=new Set,K,Ct=!1;function ko(e){try{return`${e}-${crypto.randomUUID()}`}catch{return`${e}-${Date.now()}-${Math.random().toString(36).slice(2,12)}`}}function wo(e=os.homedir()){if(K)return K;let t=E(e),n=rs.join(t,cs);try{if(re.existsSync(n)){let r=re.readFileSync(n,"utf8").trim();if(r)return K=r,r}let o=ko("cli");return re.mkdirSync(t,{recursive:!0}),re.writeFileSync(n,`${o}
20
- `,{encoding:"utf8",flag:"wx"}),K=o,o}catch{try{if(re.existsSync(n)){let o=re.readFileSync(n,"utf8").trim();if(o)return K=o,o}}catch{}return K=ko("session"),K}}function ls(){let e=Number.parseInt(process.versions.node,10);return Number.isFinite(e)?e:void 0}function ms(){return wt()??wo()}function us(){let e=ye(),t=lo();return{product:bo,app_id:vo,deploy_env:e.deployEnv,env:e.deployEnv==="release"?"production":"development",release_id:e.releaseId,surface:"cli",device_type:"desktop",device_code:wo(),event_schema_version:2,os_platform:process.platform,os_arch:process.arch,node_major:ls(),logged_in:t.logged_in,uid:t.uid,$is_login_id:!!t.uid}}function ds(e){qe.add(e),e.finally(()=>qe.delete(e))}async function ps(e,t){let n=ye();if(!n.enabled)return;let o={distinct_id:ms(),time:Date.now(),type:"track",event:e,project:Ve,properties:{$lib:"Node",$lib_version:n.releaseId||"0",$lib_method:"code",...yo({...us(),...t})}};n.showLog&&console.error(`[lumimaker analytics] ${e}`);let r=Buffer.from(JSON.stringify(o),"utf8").toString("base64"),i=`data=${encodeURIComponent(r)}&gzip=0`,a=await fetch(n.serverUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:i,redirect:"error",signal:AbortSignal.timeout(ss)});n.showLog&&console.error(`[lumimaker analytics] ${e} ${a.status}`)}function So(){if(Ct)return;Ct=!0;let e=Ue.splice(0);for(let t of e)ds(ps(t.name,t.properties).catch(()=>{}));Ct=!1}function Io(e,t={}){try{if(!ye().enabled)return;Ue.length>=is&&Ue.shift(),Ue.push({name:e,properties:t}),So()}catch{}}async function Ao(e=as){try{if(So(),qe.size===0)return;await Promise.race([Promise.allSettled([...qe]),new Promise(t=>{setTimeout(t,e).unref?.()})])}catch{}}function jo(e,t){let n=_o(t.command);if(!n)return;let o=e===0&&(t.outcome==null||t.outcome==="ok"),r=t.outcome??Et(e);Io(jt.CliCommandResult,{command:n,subcommand:go(t.subcommand),success:o,outcome:r,agent:!!t.agent,interactive:!!t.interactive,json:!!t.json,package:"lumimaker",reason:ho(t.reason)??(r==="ok"?void 0:r)})}async function Tt(e,t={}){try{t.skip||jo(e,t),await Ao()}catch{}process.exit(e)}function M(e,t,n=22){return` ${G.cyan(e.padEnd(n))}${s("help",t)}`}function Eo(e,t,n=22){return` ${G.gray(e.padEnd(n))}${s("help",t)}`}function gs(e){return typeof e.version=="string"&&e.version.trim()?e.version.trim():(O()?.version??"").trim()}function hs(e){let t=gs(e);return!t||L(t)?!0:(h.error(s("prompt","version_invalid_log",{version:t})),h.warn(s("prompt","version_invalid_hint")),!1)}function Ro(){h.error(s("kit","bin_missing",{pkg:X()??"@66rpg/lumimaker"}))}function Po(){let e=s("help","tagline").trim()||"lumimaker",t=fo(),n=t?`${e} ${t}`:e;return`${G.bold(G.cyan(n))}
13
+ `)}`:e}function Jn(e){return!e||e<=0?"-":e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(2)} MB`}function Ii(e){let t=typeof e=="number"?e:Number(e);if(!Number.isFinite(t)||t<=0)return"-";let n=new Date(t*1e3);if(Number.isNaN(n.getTime()))return"-";let o=r=>String(r).padStart(2,"0");return`${n.getFullYear()}-${o(n.getMonth()+1)}-${o(n.getDate())} ${o(n.getHours())}:${o(n.getMinutes())}:${o(n.getSeconds())}`}function Gn(e){let t=typeof e=="number"?e:Number(e),n=f.shelf;return t===1?j.green(n.val_shelf_on.text):t===2?n.val_shelf_off.text:s("fmt","val_unknown")}function ji(e){let t=typeof e=="number"?e:Number(e),n=f.versions;switch(t){case 1:return n.status_draft.text;case 2:return n.status_machine.text;case 3:return n.status_human.text;case 4:return j.green(n.status_passed.text);case 5:return j.red(n.status_rejected.text);default:return n.status_unknown.text}}function Wn(e,t,n,o){return e===2?j.yellow(n):e===3?o:t}function vt(e,t){switch(typeof t=="number"?t:Number(t)){case 4:return{title:e.title_passed.text,status:"success",footer:e.footer_passed.text};case 2:case 3:return{title:e.title_reviewing.text,status:"info",footer:e.footer_reviewing.text};case 5:return{title:e.title_rejected.text,status:"error",footer:e.footer_rejected.text};default:return{title:e.title_success.text,status:"success",footer:e.footer_success.text}}}function Ai(e){let t=f.whoami;switch(e){case"signed_template_author":return t.role_signed_template_author.text;case"signed_author":return t.role_signed_author.text;case"author":return t.role_author.text;case"user":return t.role_user.text;case"moderator":return t.role_moderator.text;default:return}}function Qn(e){let t=f.whoami;if(!e.logged_in)return e.expired?D(t.title_expired.text,[{label:s("fmt","label_status"),value:t.status_expired.text},{label:s("fmt","label_hint"),value:t.hint_relogin.text,highlight:!0}],{status:"warn"}):e.offline?D(t.title_offline.text,[{label:s("fmt","label_status"),value:t.status_offline.text},{label:s("fmt","label_hint"),value:t.hint_check_network.text}],{status:"warn"}):D(t.title_not_logged_in.text,[{label:s("fmt","label_status"),value:t.status_not_logged_in.text},{label:s("fmt","label_action"),value:t.hint_login_now.text,highlight:!0}],{status:"info"});let n=[],o=e.nickname,r=e.username||e.lumi_username;o&&n.push({label:t.label_nickname.text,value:o,highlight:!0}),r&&n.push({label:t.label_lumi_username.text,value:r}),e.display_role_name&&n.push({label:t.label_display_role.text,value:e.display_role_name}),e.lumi_ok===!1&&n.push({label:s("fmt","label_hint"),value:t.lumi_not_ready.text,highlight:!0});let i=Array.isArray(e.role_names)?e.role_names.filter(c=>typeof c=="string"&&c):[],a=i.length?i:Array.isArray(e.lumi_roles)?e.lumi_roles.map(c=>Ai(String(c))).filter(c=>!!c):[];return a.length&&n.push({label:t.label_lumi_roles.text,value:a.join(s("fmt","list_sep"))}),D(t.title_logged_in.text,n,{status:"success",footer:t.footer_logged_in.text})}function Kn(e){let t=f.publish,n=e.variant===2,o=[{label:n?t.label_game_id_demo.text:t.label_game_id_official.text,value:e.game_id,highlight:!0},{label:t.label_release_version.text,value:e.version_name},{label:t.label_version_no.text,value:e.version_no?s("fmt","version_no",{n:e.version_no}):void 0},{label:t.label_variant_type.text,value:Wn(e.variant,t.val_official.text,t.val_demo.text,t.val_derived.text)}];n&&e.parent_game_id&&o.push({label:t.label_parent_game_id.text,value:e.parent_game_id}),e.bytes&&o.push({label:t.label_package_size.text,value:Jn(e.bytes)});let r=vt(t,e.status);return xe(D(r.title,o,{status:r.status,footer:r.footer}),e)}function Ei(e){let t=String(e.slug||"").trim(),n=String(e.owner||"").trim();if(!t||!n)return;let o=String(e.version||"").trim(),r=o?`${n}/${t}@${o}`:`${n}/${t}`,i=String(e.data_ver_id||"").trim();return i&&i!=="0"?`npx @66rpg/lumimaker-create@latest ${r} --with-assets ${i}`:`npx @66rpg/lumimaker-create@latest ${r}`}function Hn(e,t){let n=f.publish_template,o=t==="publish-template-data"||e.pack_only===!0,r=[{label:n.label_template_id.text,value:e.template_id,highlight:!0},{label:n.label_template_name.text,value:e.template_name},{label:n.label_slug.text,value:e.slug},{label:n.label_version.text,value:e.version}];e.data_ver&&e.data_ver!=="0"&&r.push({label:n.label_data_ver.text,value:e.data_ver}),e.data_ver_id&&e.data_ver_id!=="0"&&r.push({label:n.label_data_id.text,value:e.data_ver_id,highlight:o&&!(e.data_ver&&e.data_ver!=="0")}),e.data_summary&&r.push({label:n.label_data_summary.text,value:e.data_summary});let i;if(o)i=D(n.title_data_success.text,r,{status:"success",footer:n.footer_data_success.text});else{let a=vt(n,e.status);i=D(a.title,r,{status:a.status,footer:a.footer})}return xe(i,e,{pull:!0})}function Yn(e){let t=f.publish_project,n=[{label:t.label_project_id.text,value:e.project_id,highlight:!0},{label:t.label_project_name.text,value:e.version_name},{label:t.label_release_version.text,value:e.version_name}];e.bytes&&n.push({label:t.label_package_size.text,value:Jn(e.bytes)});let o=vt(t,e.status);return xe(D(o.title,n,{status:o.status,footer:o.footer}),e)}function zn(e){let t=f.templates,n=e.templates||e.items||[],o=[{key:"template_id",header:t.col_template_id.text,minWidth:14},{key:"name",header:t.col_template_name.text,minWidth:16},{key:"latest_version_no",header:t.col_latest_version.text,minWidth:10}],r=n.map(c=>({template_id:j.cyan(c.template_id||c.id||"-"),name:c.name||c.template_name||"-",latest_version_no:c.latest_version_no?s("fmt","version_no",{n:c.latest_version_no}):"-"})),i=ee(o,r,{emptyText:t.empty_list.text,title:j.bold(t.table_title.text)}),a=e.total!=null?j.dim(`
14
+ `+s("common","page_info_pattern",{page:String(e.page||1),count:String(e.count||r.length),total:String(e.total)})):"";return i+a}function Xn(e){let t=f.games,n=e.games||[],o=[{key:"game_id",header:t.col_game_id.text,minWidth:14},{key:"name",header:t.col_game_name.text,minWidth:16},{key:"variant",header:t.col_variant.text,minWidth:10},{key:"latest_version_no",header:t.col_latest_version.text,minWidth:10}],r=n.map(c=>({game_id:j.cyan(c.game_id||c.id||"-"),name:c.name||"-",variant:Wn(c.variant,t.val_official.text,t.val_demo.text,t.val_derived.text),latest_version_no:c.latest_version_no?s("fmt","version_no",{n:c.latest_version_no}):"-"})),i=ee(o,r,{emptyText:t.empty_list.text,title:j.bold(t.table_title.text)}),a=e.total!=null?j.dim(`
15
+ `+s("common","page_info_pattern",{page:String(e.page||1),count:String(e.count||r.length),total:String(e.total)})):"";return i+a}function Zn(e){let t=f.projects,n=e.projects||[],o=[{key:"project_id",header:t.col_project_id.text,minWidth:14},{key:"name",header:t.col_project_name.text,minWidth:16},{key:"latest_version_no",header:t.col_latest_version.text,minWidth:10}],r=n.map(c=>({project_id:j.cyan(c.project_id||c.id||"-"),name:c.name||c.project_name||"-",latest_version_no:c.latest_version_no?s("fmt","version_no",{n:c.latest_version_no}):"-"})),i=ee(o,r,{emptyText:t.empty_list.text,title:j.bold(t.table_title.text)}),a=e.total!=null?j.dim(`
16
+ `+s("common","page_info_pattern",{page:String(e.page||1),count:String(e.count||r.length),total:String(e.total)})):"";return i+a}function De(e,t){let n=f.versions,o=[{key:"version",header:n.col_version.text,minWidth:10},{key:"status",header:n.col_status.text,minWidth:8},{key:"changelog",header:n.col_changelog.text,minWidth:12},{key:"published_at",header:n.col_published_at.text,minWidth:18},{key:"post",header:n.col_post.text,minWidth:14}],r=t.map(i=>{let c=!!i.post_id||i.post_status!=null?Number(i.post_status)===4?n.post_public.text:n.post_draft.text:"-";return{version:i.version_name||i.version||i.version_no||"-",status:ji(i.status??i.audit_status),changelog:i.changelog||"-",published_at:Ii(i.published_at),post:c}});return ee(o,r,{emptyText:n.empty_versions.text,title:j.bold(e)})}function eo(e,t){let n=f.templates,o=[{key:"data_id",header:n.col_data_id.text,minWidth:14},{key:"data_ver",header:n.col_data_ver.text,minWidth:10},{key:"summary",header:n.col_data_summary.text,minWidth:12}],r=t.map(i=>({data_id:j.cyan(i.data_id||"-"),data_ver:i.data_ver||"-",summary:i.summary||"-"}));return ee(o,r,{emptyText:n.empty_data.text,title:j.bold(e)})}function F(e){if(e==null||typeof e=="object")return;let t=String(e).trim();return t||void 0}function Ri(e){let t=F(e);if(!(!t||t==="0"))return t}function Pi(e){if(e==null||e==="")return;let t=typeof e=="number"?e:Number(e);if(!(!Number.isFinite(t)||t===0))return t===2?s("fmt","val_demo"):t===3?f.games.val_derived.text:t===1?s("fmt","val_official"):s("fmt","val_unknown")}function Ni(e,t){let n=t==="template"?["template_id","id"]:t==="project"?["project_id","id"]:["game_id","id"];for(let o of n){let r=Ri(e[o]);if(r)return t==="game"?{label:(typeof e.variant=="number"?e.variant:Number(e.variant))===2?s("fmt","label_game_demo_id"):s("fmt","label_game_official_id"),id:r}:t==="template"?{label:s("fmt","label_template_id"),id:r}:{label:s("fmt","label_project_id"),id:r}}}function Le(e,t,n="game"){let o=[],r=F(t.name)??F(t.template_name)??F(t.project_name);r&&o.push({label:s("fmt","label_name"),value:r,highlight:!0});let i=Ni(t,n);i&&o.push({label:i.label,value:i.id});let a=Pi(t.variant);a&&o.push({label:s("fmt","label_type"),value:a});let c=F(t.parent_game_id);c&&o.push({label:s("fmt","label_parent"),value:c});let m=F(t.summary);m&&o.push({label:s("fmt","label_summary"),value:m});let l=F(t.latest_version_name)??(t.latest_version_no!=null&&t.latest_version_no!==""?s("fmt","version_no",{n:t.latest_version_no}):void 0);l&&o.push({label:s("fmt","label_version"),value:l}),t.status!=null&&t.status!==""&&o.push({label:s("fmt","label_shelf"),value:Gn(t.status)});let u=F(t.demo_scope);u&&o.push({label:s("fmt","label_demo_scope"),value:u});let g=F(t.play_duration);if(g&&o.push({label:s("fmt","label_play_duration"),value:g}),t.post_status!=null&&t.post_status!==""){let w=Number(t.post_status)===4;o.push({label:s("fmt","label_post_status"),value:w?f.versions.post_public.text:f.versions.post_draft.text})}return xe(D(e,o,{status:"info"}),t)}function to(e={}){let t=F(e.message)??s("fmt","logout_done");return j.green(`\u2714 ${t}`)}function Me(e,t){let n=f.shelf,o=s("fmt",`type_${e}`),r=e==="template"?"template_id":e==="game"?"game_id":"project_id",i=e==="template"?"template_name":e==="game"?"name":"project_name",a=[{label:s("fmt","shelf_id",{type:o}),value:t[r]||"-",highlight:!0}];return t[i]&&a.push({label:s("fmt","shelf_name",{type:o}),value:t[i]}),t.shelf_status&&a.push({label:n.label_shelf.text,value:Gn(t.shelf_status)}),t.changelog&&a.push({label:n.label_changelog.text,value:t.changelog}),xe(D(`${o}${n.card_title_shelf_updated.text}`,a,{status:"success"}),t)}function no(e){let t=f.skill,n=s("fmt","list_sep"),o=Array.isArray(e.copied)?e.copied.join(n):"-",r=Array.isArray(e.targets)?e.targets.join(n):"-";return D(t.card_title.text,[{label:t.label_kit.text,value:e.kit||"-"},{label:t.label_copied.text,value:o},{label:t.label_targets.text,value:r,highlight:!0}],{status:"success"})}function xt(e){return Si(e.replace(/https?:\/\/\S*test-lumi\.66rpg\.com\S*/gi,"").replace(/https?:\/\/\S*lumi\.66rpg\.com\/api\S*/gi,"").replace(/\b(?:test-lumi\.66rpg\.com|lumi\.66rpg\.com\/api|base_lumi_api)\b/gi,""))}function oo(e){let t=f.error,n=f.error_codes,o=xt(Ce(e.message||t.default_message.text)),r=e.hint?xt(Ce(e.hint)):e.hint,i=e.server_msg?xt(Ce(e.server_msg)):"";if(!r){let a=e.code!=null?String(e.code):"";a==="2001"||o.includes("\u672A\u767B\u5F55")?r=n[2001].text:a==="2003"||o.includes("\u51ED\u8BC1\u5DF2\u8FC7\u671F")?r=n[2003].text:o.includes("\u6821\u9A8C\u5931\u8D25")||o.includes("\u54C8\u5E0C")||o.includes("MD5")||o.includes("SHA-256")||o.includes("checksum")?r=Q(n["1003_checksum"].text):o.includes("dist")||o.includes("index.html")?r=n["1001_missing_dist"].text:o.includes("scripts.")||/scripts\s/.test(o)?r=n["1001_missing_script"].text:o.includes("\u6682\u65E0\u5DF2\u901A\u8FC7\u5BA1\u6838")||o.includes("\u5C1A\u672A\u901A\u8FC7\u5BA1\u6838")||o.includes("\u8FD8\u5728\u5BA1\u6838\u4E2D")?r=n["1001_no_approved"].text:a==="2002"||a==="8004"||o.includes("\u6743\u9650")||o.includes("\u7B7E\u7EA6")?r=n[8004].text:n[a]&&(r=n[a].text)}return r&&(r=Q(r)),Un(o,{code:e.code,hint:r,serverCode:e.server_code,serverMsg:i||void 0})}var ro=new Set(["login","logout","skill"]);function io(e){let t=e.code!=null?String(e.code):"";if(t==="2001"||t==="2003")return!0;let n=e.message||"";return n.includes("\u672A\u767B\u5F55")||n.includes("\u51ED\u8BC1\u5DF2\u8FC7\u671F")||n.includes("\u767B\u5F55\u51ED\u8BC1\u5DF2\u8FC7\u671F")||n.includes("\u767B\u5F55\u5DF2\u5931\u6548")||n.includes("refresh_token \u5DF2\u5931\u6548")}function so(e,t){if(e!=="whoami"||!t||typeof t!="object")return!1;let n=t;return n.offline?!1:n.logged_in===!1||n.expired===!0}function ao(e,t={stdinTty:!!process.stdin.isTTY,stdoutTty:!!process.stdout.isTTY}){return e.skipLoginPrompt||e.command&&ro.has(e.command)||e.isAgent||e.isJson||e.isInteractive===!1?!1:!!(t.stdinTty&&t.stdoutTty)}function co(e){return!(!e.isAgent||e.skipLoginPrompt||e.command&&ro.has(e.command))}import ne from"node:fs";import Oe from"node:os";import Ti from"node:path";var Ci="analytics-identity.json";function yt(e){return Ti.join(E(e),Ci)}function lo(e){if(typeof e=="number"&&Number.isFinite(e)&&e>0)return String(Math.trunc(e));if(typeof e=="string"){let t=e.trim();if(/^[1-9][0-9]{0,18}$/.test(t))return t}}function kt(e,t=Oe.homedir()){let n=lo(e);if(n){try{let o=E(t);ne.mkdirSync(o,{recursive:!0}),ne.writeFileSync(yt(t),`${JSON.stringify({uid:n})}
17
+ `)}catch{}return n}}function $e(e=Oe.homedir()){try{let t=yt(e);ne.existsSync(t)&&ne.unlinkSync(t)}catch{}}function wt(e=Oe.homedir()){try{let t=yt(e);if(!ne.existsSync(t))return;let n=JSON.parse(ne.readFileSync(t,"utf8"));return lo(n?.uid)}catch{return}}function mo(e=Oe.homedir()){let t=wt(e);return t?{uid:t,logged_in:!0}:{logged_in:!1}}function St(e){return!!(e.isJson&&!e.isAgent)}function uo(e){let t=ge(e).trim();if(!t)return"";let n=t.match(/^(?:\d{4}-\d{2}-\d{2}T[\d:.]+Z\s+)?(INFO|DEBUG|WARN|ERROR)\s+(.*)$/);if(n){let o=n[1],r=n[2];if(o==="INFO")return`${k.brandTag} ${k.badgeInfo} ${r}`;if(o==="DEBUG")return`${k.brandTag} ${k.badgeDebug} ${oe.gray(r)}`;if(o==="WARN")return`${k.brandTag} ${k.badgeWarn} ${oe.yellow(r)}`;if(o==="ERROR")return`${k.brandTag} ${k.badgeError} ${oe.red(r)}`}return t.startsWith("[lumimaker]")?e:`${k.brandTag} ${e}`}function It(e,t){return new Promise(n=>{let o=fo(e,t,{stdio:"inherit"});o.on("exit",r=>n(r??0)),o.on("error",r=>{console.error(oe.red(s("kit","run_failed",{e:J(r)}))),n(1)})})}function Li(e,t,n){let o=t.includes("--json")?[...t]:[...t,"--json"];return new Promise(r=>{let i="",a="",c=fo(e,o,{stdio:["inherit","pipe","pipe"],env:{...process.env,...n?{LUMIMAKER_TTY:"1"}:{}}});c.stdout.on("data",m=>{i+=m.toString("utf8")}),c.stderr.on("data",m=>{let u=(a+m.toString("utf8")).split(/\r?\n/);a=u.pop()??"";for(let g of u)g.trim()&&process.stderr.write(uo(g)+`
18
+ `)}),c.on("exit",m=>{a.trim()&&process.stderr.write(uo(a)+`
19
+ `);let l=i.trim();try{let u=JSON.parse(l);r({code:m??0,envelope:u,rawStdout:i})}catch{r({code:m??0,envelope:null,rawStdout:i})}}),c.on("error",m=>{console.error(oe.red(s("kit","cli_failed",{e:J(m)}))),r({code:1,envelope:null,rawStdout:""})})})}async function po(e){return co(e)?(cn(s("kit","login_required_agent")),12):Mi(e)}async function Mi(e){if(!ao(e))return null;if(!await Tn())return h.warn(f.common.login_cancelled.text),null;let n=await It(e.binPath,["login"]);return n!==0?(h.error(f.common.login_failed.text),n||1):(h.success(f.common.login_retrying.text),ve({...e,skipLoginPrompt:!0}))}function Oi(e,t){if(!e)return null;let n=e,o=n.command;return o!=="need-input"&&o!=="update-available"&&o!=="login-required"?null:typeof n.code=="number"&&n.code>0?n.code:t>0?t:11}function $i(e,t,n){try{if(e==="logout"&&(n===0||t?.success===!0)){$e();return}let o=t?.data;o&&typeof o=="object"&&o!==null&&"uid"in o&&kt(o.uid)}catch{}}function Fi(e){if(!e)return null;let t=e;if(t.command!=="need-input")return null;let n=t.data?.questions;return Array.isArray(n)&&n.length?n:null}async function Vi(e,t){if(!e.isInteractive||e.isAgent||e.skipNeedInputPrompt)return null;let n=Fi(t);if(!n)return null;let o=await kn(n);return Object.keys(o).length?ve({...e,args:yn(e.args,o),skipNeedInputPrompt:!0}):null}async function ve(e){dn(e.binPath);let t=te(),{binPath:n,args:o,isJson:r,command:i,subcommand:a,isAgent:c}=e,m=o.includes("--help")||o.includes("-h")||o.includes("--version")||o.includes("-V");if(i==="login"||m)return It(n,o);if(St(e)){let u=o.includes("--json")?o:[...o,"--json"],g=await It(n,u);if(i==="logout"&&g===0)try{$e()}catch{}return g}let l=await Li(n,o,e.isInteractive);if($i(i,l.envelope,l.code),await t,!l.envelope)return l.rawStdout&&process.stdout.write(l.rawStdout),l.code;if(l.envelope.success===!0){let u=l.envelope.data??{};if(so(i,u)){let g=await po(e);if(g!=null)return g}return St(e)?(l.rawStdout&&process.stdout.write(l.rawStdout),0):(Ui(i,a,o,u),0)}if(l.envelope.success===!1){let u=Oi(l.envelope,l.code);if(c&&u!=null)return l.rawStdout&&process.stdout.write(l.rawStdout),u;let g=await Vi(e,l.envelope);if(g!=null)return g;let w=l.envelope.error??{message:s("kit","op_failed")};if(io(w)){let d=await po(e);if(d!=null)return d}return St(e)?(l.rawStdout&&process.stdout.write(l.rawStdout),l.code||2):(console.error(oo(w)),l.code||2)}return l.rawStdout&&process.stdout.write(l.rawStdout),l.code}function Ui(e,t,n,o){if(e==="whoami"){console.log(Qn(o));return}if(e==="publish"){console.log(Kn(o));return}if(e==="publish-template"||e==="publish-template-data"){console.log(Hn(o,e));return}if(e==="publish-project"){console.log(Yn(o));return}if(e==="games"){if(t==="update"){console.log(Me("game",o));return}if(n.includes("--query")){console.log(Le(f.games.query_card_title.text,o,"game"));return}if(n.includes("--versions")){console.log(De(f.games.versions_title.text,Array.isArray(o)?o:[]));return}console.log(Xn(o));return}if(e==="templates"){if(t==="update"){console.log(Me("template",o));return}if(n.includes("--query")){console.log(Le(f.templates.query_card_title.text,o,"template"));return}if(n.includes("--versions")){console.log(De(f.templates.versions_title.text,Array.isArray(o)?o:[]));return}if(n.includes("--data")){console.log(eo(f.templates.data_packages_title.text,o.items||[]));return}console.log(zn(o));return}if(e==="projects"){if(t==="update"){console.log(Me("project",o));return}if(n.includes("--query")){console.log(Le(f.projects.query_card_title.text,o,"project"));return}if(n.includes("--versions")){console.log(De(f.projects.versions_title.text,Array.isArray(o)?o:[]));return}console.log(Zn(o));return}if(e==="skill"){console.log(no(o));return}if(e==="logout"){console.log(to(o));return}console.log(oe.green(`\u2714 ${f.common.success_default.text}`))}import Bi from"node:fs";import At from"node:path";import{fileURLToPath as Ji}from"node:url";var jt={name:"@66rpg/lumimaker",version:"0.1.44",description:"\u5E7B\u5149\u6587\u6E38\u5236\u4F5C\u5668\uFF1A\u767B\u5F55\u3001\u6821\u9A8C\u5E76\u53D1\u5E03\u5230\u5E7B\u5149\u6587\u6E38\u793E\u533A\uFF1Bvalidate-template\uFF08TS\uFF09\uFF1Blogin / publish \u7B49\u8F6C\u53D1 lumimaker",type:"module",bin:{lumimaker:"./bin/lumimaker.js"},files:["dist","bin","skill","skill-targets.json","share/*.mjs","share/internal-registry.md"],scripts:{build:"tsc --noEmit -p tsconfig.json && node ../../scripts/bundle.mjs",test:'node --import tsx --test "src/**/*.test.ts"',prepack:"node ../../scripts/minify-share.mjs inject",postpack:"node ../../scripts/minify-share.mjs restore",prepublishOnly:"npm run build && node ../../scripts/check-versions.mjs"},publishConfig:{access:"public"},engines:{node:">=20"},dependencies:{"@clack/prompts":"^1.8.0",ajv:"^8.17.1",picocolors:"^1.1.1"},optionalDependencies:{"@66rpg/lumimaker-win32-x64":"0.1.44","@66rpg/lumimaker-darwin-arm64":"0.1.44","@66rpg/lumimaker-darwin-x64":"0.1.44"},devDependencies:{"@types/node":"^22.15.0",typescript:"^5.8.3"}};function _o(e){let t=e.trim();return t?t.startsWith("V")||t.startsWith("v")?`V${t.slice(1)}`:`V${t}`:""}function Gi(){let e=typeof jt.version=="string"?jt.version.trim():"";if(e)return _o(e);let t=At.dirname(Ji(import.meta.url)),n=[At.resolve(t,"../package.json"),At.resolve(t,"../../package.json")];for(let o of n)try{let i=JSON.parse(Bi.readFileSync(o,"utf8")).version?.trim();if(i)return _o(i)}catch{}}function go(){return"V0.1.44"}var Et={CliCommandResult:"CliCommandResult"},Wi=new Set(["publish","publish-template","publish-template-data","publish-project","login","logout","whoami","games","templates","projects","validate-template","validate","skill","init"]),Qi=new Set(["update","list","versions","query"]),Ki=new Set(["bin_missing","usage","version_invalid","unexpected_positional","validate_fail","need_input","update","login_required","fail"]);function ho(e){if(e)return Wi.has(e)?e:"other"}function bo(e){if(e)return Qi.has(e)?e:void 0}function xo(e){if(e)return Ki.has(e)?e:void 0}function Rt(e){return e===0?"ok":e===10?"update":e===11?"need_input":e===12?"login_required":e===2?"usage":"fail"}import re from"node:fs";import is from"node:os";import ss from"node:path";import Tt from"node:fs";import Hi from"node:os";import vo from"node:path";var Ve="huanguang",yo="lumimaker_npm",ko="lumimaker_cli",Yi=`https://fx-it.66rpg.com:8206/sa?project=${Ve}`;function Pt(e,t=Ve){try{let n=new URL(e);return n.protocol==="https:"&&n.hostname==="fx-it.66rpg.com"&&n.port==="8206"&&n.pathname==="/sa"&&n.searchParams.get("project")===t&&!n.username&&!n.password}catch{return!1}}function Fe(e,t){return String(e[t]??"").trim().toLowerCase()}function zi(e){let t=Fe(e,"LUMIMAKER_NO_ANALYTICS");if(t==="1"||t==="true")return!0;let n=Fe(e,"LUMIMAKER_ANALYTICS");if(n==="0"||n==="false")return!0;let o=Fe(e,"CI");return!!(o==="true"||o==="1"||e.NODE_TEST_CONTEXT)}function Xi(){try{let e=JSON.parse(Tt.readFileSync(vo.join(q(),"package.json"),"utf8"));return typeof e.version=="string"?e.version:""}catch{return""}}function Zi(e){try{let t=vo.join(E(e),"config.json");if(!Tt.existsSync(t))return;let n=JSON.parse(Tt.readFileSync(t,"utf8"));return n&&typeof n=="object"?n:void 0}catch{return}}function es(e){let t=e?.web_config,n=typeof t?.type=="string"?t.type:"",o=typeof t?.base_cg=="string"?t.base_cg:"";return n&&n!=="1"||o.toLowerCase().includes("test")?"test":"release"}function ts(e){let t=e?.env??process.env,n=e?.homeDir??Hi.homedir(),o=e?.fileConfig??(e?.skipFile?void 0:Zi(n)),r=es(o),i=o?.sensorsAnalytics,a=!0;typeof i?.enabled=="boolean"&&(a=i.enabled),zi(t)&&(a=!1);let c=Yi,m=typeof i?.serverUrl=="string"?i.serverUrl.trim():"";m&&Pt(m)&&(c=m);let l=typeof t.LUMIMAKER_SENSORS_URL=="string"?t.LUMIMAKER_SENSORS_URL.trim():"";l&&Pt(l)&&(c=l),Pt(c)||(a=!1);let u=Fe(t,"LUMIMAKER_ANALYTICS_LOG"),g=r!=="release"&&(i?.showLog===!0||u==="1"||u==="true");return{enabled:a,serverUrl:c,showLog:g,deployEnv:r,releaseId:e?.releaseId??Xi()}}var Nt;function ye(){return Nt||(Nt=ts()),Nt}var ns=/^\$?[A-Za-z][A-Za-z0-9_]{0,99}$/,os=new Set(["access_token","token","cookie","authorization","phone","mobile","wechat","qq","content","body","draft_title","search","query","error","message","stack","order_no","password","refresh_token","nick_name","nickname","username","lumi_username","dest","dest_dir","cwd","argv","from_dir","path","filepath"]);function rs(e){if(e!=null){if(typeof e=="string")return e.slice(0,256);if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(typeof e=="boolean"||e instanceof Date)return e;if(Array.isArray(e))return e.slice(0,20).map(t=>t.slice(0,256))}}function wo(e){let t={};for(let[n,o]of Object.entries(e)){if(!ns.test(n)||os.has(n.toLowerCase()))continue;let r=rs(o);r!==void 0&&(t[n]=r)}return t}var as=100,cs=600,ls=700,ms="analytics-device-id",Ue=[],qe=new Set,K,Ct=!1;function So(e){try{return`${e}-${crypto.randomUUID()}`}catch{return`${e}-${Date.now()}-${Math.random().toString(36).slice(2,12)}`}}function Io(e=is.homedir()){if(K)return K;let t=E(e),n=ss.join(t,ms);try{if(re.existsSync(n)){let r=re.readFileSync(n,"utf8").trim();if(r)return K=r,r}let o=So("cli");return re.mkdirSync(t,{recursive:!0}),re.writeFileSync(n,`${o}
20
+ `,{encoding:"utf8",flag:"wx"}),K=o,o}catch{try{if(re.existsSync(n)){let o=re.readFileSync(n,"utf8").trim();if(o)return K=o,o}}catch{}return K=So("session"),K}}function us(){let e=Number.parseInt(process.versions.node,10);return Number.isFinite(e)?e:void 0}function ds(){return wt()??Io()}function ps(){let e=ye(),t=mo();return{product:yo,app_id:ko,deploy_env:e.deployEnv,env:e.deployEnv==="release"?"production":"development",release_id:e.releaseId,surface:"cli",device_type:"desktop",device_code:Io(),event_schema_version:2,os_platform:process.platform,os_arch:process.arch,node_major:us(),logged_in:t.logged_in,uid:t.uid,$is_login_id:!!t.uid}}function fs(e){qe.add(e),e.finally(()=>qe.delete(e))}async function _s(e,t){let n=ye();if(!n.enabled)return;let o={distinct_id:ds(),time:Date.now(),type:"track",event:e,project:Ve,properties:{$lib:"Node",$lib_version:n.releaseId||"0",$lib_method:"code",...wo({...ps(),...t})}};n.showLog&&console.error(`[lumimaker analytics] ${e}`);let r=Buffer.from(JSON.stringify(o),"utf8").toString("base64"),i=`data=${encodeURIComponent(r)}&gzip=0`,a=await fetch(n.serverUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:i,redirect:"error",signal:AbortSignal.timeout(cs)});n.showLog&&console.error(`[lumimaker analytics] ${e} ${a.status}`)}function jo(){if(Ct)return;Ct=!0;let e=Ue.splice(0);for(let t of e)fs(_s(t.name,t.properties).catch(()=>{}));Ct=!1}function Ao(e,t={}){try{if(!ye().enabled)return;Ue.length>=as&&Ue.shift(),Ue.push({name:e,properties:t}),jo()}catch{}}async function Eo(e=ls){try{if(jo(),qe.size===0)return;await Promise.race([Promise.allSettled([...qe]),new Promise(t=>{setTimeout(t,e).unref?.()})])}catch{}}function Ro(e,t){let n=ho(t.command);if(!n)return;let o=e===0&&(t.outcome==null||t.outcome==="ok"),r=t.outcome??Rt(e);Ao(Et.CliCommandResult,{command:n,subcommand:bo(t.subcommand),success:o,outcome:r,agent:!!t.agent,interactive:!!t.interactive,json:!!t.json,package:"lumimaker",reason:xo(t.reason)??(r==="ok"?void 0:r)})}async function Dt(e,t={}){try{t.skip||Ro(e,t),await Eo()}catch{}process.exit(e)}function M(e,t,n=22){return` ${G.cyan(e.padEnd(n))}${s("help",t)}`}function Po(e,t,n=22){return` ${G.gray(e.padEnd(n))}${s("help",t)}`}function bs(e){return typeof e.version=="string"&&e.version.trim()?e.version.trim():(O()?.version??"").trim()}function xs(e){let t=bs(e);return!t||L(t)?!0:(h.error(s("prompt","version_invalid_log",{version:t})),h.warn(s("prompt","version_invalid_hint")),!1)}function No(){h.error(s("kit","bin_missing",{pkg:X()??"@66rpg/lumimaker"}))}function To(){let e=s("help","tagline").trim()||"lumimaker",t=go(),n=t?`${e} ${t}`:e;return`${G.bold(G.cyan(n))}
21
21
 
22
22
  ${G.bold(s("help","usage_heading"))}
23
23
  ${s("help","usage_line")}
@@ -38,8 +38,8 @@ ${M("validate","cmd_validate")}
38
38
  ${M("skill","cmd_skill")}
39
39
 
40
40
  ${G.bold(s("help","section_global"))}
41
- ${Eo("--no-interactive","opt_no_interactive")}
42
- ${Eo("-h, --help","opt_help")}
41
+ ${Po("--no-interactive","opt_no_interactive")}
42
+ ${Po("-h, --help","opt_help")}
43
43
 
44
44
  ${Q(s("help","contact"))}
45
- `}async function $l(){let e=Ht(process.argv);te(),e.isVerbose&&h.setVerbose(!0);let t=Re(e);t&&on();let n=e.isJson||t||!rt(),o={command:e.command,subcommand:e.subcommand,agent:t,interactive:e.isInteractive,json:n},r=(d,P)=>Tt(d,{...o,...P});if(hn(e.command)&&!xn())return h.error(s("kit","internal_command")),r(2,{reason:"internal_command"});if(e.flags.help||e.command==="help")return await te(),process.stdout.write(Po()),r(0,{skip:!0});if(e.wantsVersion){let d=pe();if(!d)return Ro(),r(1,{skip:!0});let P=await ve({binPath:d,args:["--version"],isJson:!1});return r(P,{skip:!0})}let i=await gn({flags:e.flags,isInteractive:e.isInteractive});if(i==="updated-exit")return r(0,{reason:"update",outcome:"update"});if(i==="agent-block")return r(10,{reason:"update"});if(t&&!e.isInteractive){let d=tn(e);if(Zt(e,d))return sn(s("kit","need_input"),d),r(11,{reason:"need_input"})}if(e.command==="validate-template")try{return await Se(process.cwd()),h.success(s("kit","validate_template_ok")),r(0)}catch(d){return h.error(J(d)),r(1,{reason:"validate_fail"})}if(e.command==="validate")try{return await Je(process.cwd()),h.success(s("kit","validate_ok")),r(0)}catch(d){return d instanceof ce?r(d.exitCode,{reason:"validate_fail"}):(h.error(J(d)),r(1,{reason:"validate_fail"}))}let a=pe();if(!a)return Ro(),r(1,{reason:"bin_missing"});let c=e.command,m=e.subcommand,l={...e.flags};if(e.isInteractive){if(!c){let d=await wn();c=d.command,m=d.subcommand}if(c==="validate-template"){o.command=c;try{return await Se(process.cwd()),h.success(s("kit","validate_template_ok")),r(0)}catch(d){return h.error(J(d)),r(1,{reason:"validate_fail"})}}c==="publish"?l=await Sn({...e,flags:l}):c==="publish-template"?l=await In({...e,flags:l}):c==="publish-template-data"?l=await Rn({...e,flags:l}):c==="publish-project"?l=await Pn({...e,flags:l}):c==="login"?l=await Cn({...e,flags:l}):c==="skill"&&(l=await Tn({...e,flags:l}))}if(o.command=c,o.subcommand=m,!c)return await te(),process.stdout.write(Po()),r(0,{skip:!0});let u=Qt({...e,command:c,subcommand:m});if(u.length)return h.error(s("kit","unexpected_positional",{command:c,args:u.join(" ")})),r(2,{reason:"unexpected_positional"});if(c==="publish-template"&&!n&&!hs(l))return r(2,{reason:"version_invalid"});Yt(c,l);let g=kn(c,m,l),w=await ve({binPath:a,args:g,isJson:n,command:c,subcommand:m,isInteractive:e.isInteractive,isAgent:t});return r(w)}export{Ft as VERSION_NAME_PATTERN,Vt as VERSION_NAME_RE,L as isValidVersionName,$l as run,J as userFacingError,Je as validate,Se as validateTemplate};
45
+ `}async function ql(){let e=Yt(process.argv);te(),e.isVerbose&&h.setVerbose(!0);let t=Re(e);t&&rn();let n=e.isJson||t||!rt(),o={command:e.command,subcommand:e.subcommand,agent:t,interactive:e.isInteractive,json:n},r=(d,P)=>Dt(d,{...o,...P});if(bn(e.command)&&!xn())return h.error(s("kit","internal_command")),r(2,{reason:"internal_command"});if(e.flags.help||e.command==="help")return await te(),process.stdout.write(To()),r(0,{skip:!0});if(e.wantsVersion){let d=pe();if(!d)return No(),r(1,{skip:!0});let P=await ve({binPath:d,args:["--version"],isJson:!1});return r(P,{skip:!0})}let i=await hn({flags:e.flags,isInteractive:e.isInteractive});if(i==="updated-exit")return r(0,{reason:"update",outcome:"update"});if(i==="agent-block")return r(10,{reason:"update"});if(t&&!e.isInteractive){let d=nn(e);if(en(e,d))return an(s("kit","need_input"),d),r(11,{reason:"need_input"})}if(e.command==="validate-template")try{return await Se(process.cwd()),h.success(s("kit","validate_template_ok")),r(0)}catch(d){return h.error(J(d)),r(1,{reason:"validate_fail"})}if(e.command==="validate")try{return await Je(process.cwd()),h.success(s("kit","validate_ok")),r(0)}catch(d){return d instanceof ce?r(d.exitCode,{reason:"validate_fail"}):(h.error(J(d)),r(1,{reason:"validate_fail"}))}let a=pe();if(!a)return No(),r(1,{reason:"bin_missing"});let c=e.command,m=e.subcommand,l={...e.flags};if(e.isInteractive){if(!c){let d=await Sn();c=d.command,m=d.subcommand}if(c==="validate-template"){o.command=c;try{return await Se(process.cwd()),h.success(s("kit","validate_template_ok")),r(0)}catch(d){return h.error(J(d)),r(1,{reason:"validate_fail"})}}c==="publish"?l=await In({...e,flags:l}):c==="publish-template"?l=await jn({...e,flags:l}):c==="publish-template-data"?l=await Pn({...e,flags:l}):c==="publish-project"?l=await Nn({...e,flags:l}):c==="login"?l=await Cn({...e,flags:l}):c==="skill"&&(l=await Dn({...e,flags:l}))}if(o.command=c,o.subcommand=m,!c)return await te(),process.stdout.write(To()),r(0,{skip:!0});let u=Kt({...e,command:c,subcommand:m});if(u.length)return h.error(s("kit","unexpected_positional",{command:c,args:u.join(" ")})),r(2,{reason:"unexpected_positional"});if(c==="publish-template"&&!n&&!xs(l))return r(2,{reason:"version_invalid"});zt(c,l);let g=wn(c,m,l),w=await ve({binPath:a,args:g,isJson:n,command:c,subcommand:m,isInteractive:e.isInteractive,isAgent:t});return r(w)}export{Vt as VERSION_NAME_PATTERN,Ut as VERSION_NAME_RE,L as isValidVersionName,ql as run,J as userFacingError,Je as validate,Se as validateTemplate};