@lovrabet/rabetbase-cli 2.2.4-beta.2 → 2.2.4-beta.4

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.
Files changed (207) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/add.js +1 -1
  20. package/lib/commands/app/discover.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app/use.js +1 -1
  26. package/lib/commands/auth/index.js +1 -1
  27. package/lib/commands/bff/create.js +1 -1
  28. package/lib/commands/bff/delete.js +1 -1
  29. package/lib/commands/bff/detail.js +1 -1
  30. package/lib/commands/bff/index.js +1 -1
  31. package/lib/commands/bff/list.js +1 -1
  32. package/lib/commands/bff/pull.js +1 -1
  33. package/lib/commands/bff/push.js +1 -1
  34. package/lib/commands/bff/status.js +1 -1
  35. package/lib/commands/cli-update.js +1 -1
  36. package/lib/commands/codegen/index.js +1 -1
  37. package/lib/commands/codegen/sdk.js +1 -1
  38. package/lib/commands/codegen/sql.js +1 -1
  39. package/lib/commands/common/app-selector.js +1 -1
  40. package/lib/commands/common/flags.js +1 -1
  41. package/lib/commands/common/validate.js +1 -1
  42. package/lib/commands/config/get.js +1 -1
  43. package/lib/commands/config/index.js +1 -1
  44. package/lib/commands/config/list.js +1 -1
  45. package/lib/commands/config/set.js +1 -1
  46. package/lib/commands/config/shared.js +1 -1
  47. package/lib/commands/data/filter.js +1 -1
  48. package/lib/commands/data/getOne.js +1 -1
  49. package/lib/commands/data/index.js +1 -1
  50. package/lib/commands/data/shared.js +1 -1
  51. package/lib/commands/dataset/capability.js +1 -1
  52. package/lib/commands/dataset/delete.js +1 -1
  53. package/lib/commands/dataset/detail.js +1 -1
  54. package/lib/commands/dataset/extend-update.js +1 -1
  55. package/lib/commands/dataset/field-update.js +1 -1
  56. package/lib/commands/dataset/index.js +1 -1
  57. package/lib/commands/dataset/list.js +1 -1
  58. package/lib/commands/dataset/operations.js +1 -1
  59. package/lib/commands/dataset/relation-create.js +1 -1
  60. package/lib/commands/dataset/relation-delete.js +1 -1
  61. package/lib/commands/dataset/relation-shared.js +1 -1
  62. package/lib/commands/dataset/relation-update.js +1 -1
  63. package/lib/commands/dataset/relations.js +1 -1
  64. package/lib/commands/dataset/rename.js +1 -1
  65. package/lib/commands/db/analyze-cancel.js +1 -1
  66. package/lib/commands/db/analyze-start.js +1 -1
  67. package/lib/commands/db/analyze-status.js +1 -1
  68. package/lib/commands/db/create.js +1 -1
  69. package/lib/commands/db/delete.js +1 -1
  70. package/lib/commands/db/detail.js +1 -1
  71. package/lib/commands/db/diff.js +1 -1
  72. package/lib/commands/db/index.js +1 -1
  73. package/lib/commands/db/list.js +1 -1
  74. package/lib/commands/db/shared.js +1 -1
  75. package/lib/commands/db/tables.js +1 -1
  76. package/lib/commands/db/test.js +1 -1
  77. package/lib/commands/db/update.js +1 -1
  78. package/lib/commands/doctor.js +1 -1
  79. package/lib/commands/init/index.js +1 -1
  80. package/lib/commands/issue/index.js +1 -1
  81. package/lib/commands/issue/nudge.js +1 -1
  82. package/lib/commands/issue/report.js +1 -1
  83. package/lib/commands/issue/shared.js +1 -1
  84. package/lib/commands/logs/index.js +1 -1
  85. package/lib/commands/menu/index.js +1 -1
  86. package/lib/commands/menu/list.js +1 -1
  87. package/lib/commands/menu/shared/compare-table.js +1 -1
  88. package/lib/commands/menu/shared/index.js +1 -1
  89. package/lib/commands/menu/shared/inquirer.js +1 -1
  90. package/lib/commands/menu/shared/local-pages.js +1 -1
  91. package/lib/commands/menu/shared/logic.js +1 -1
  92. package/lib/commands/menu/shared/service.js +1 -1
  93. package/lib/commands/menu/shared/sync-core.js +1 -1
  94. package/lib/commands/menu/shared/update-core.js +1 -1
  95. package/lib/commands/menu/shared/valid-url.js +1 -1
  96. package/lib/commands/menu/sync.js +1 -1
  97. package/lib/commands/menu/update.js +1 -1
  98. package/lib/commands/page/generate-start.js +1 -1
  99. package/lib/commands/page/generate-status.js +1 -1
  100. package/lib/commands/page/index.js +1 -1
  101. package/lib/commands/page/pull.js +1 -1
  102. package/lib/commands/page/push.js +1 -1
  103. package/lib/commands/page/relation-audit.js +1 -1
  104. package/lib/commands/page/shared.js +1 -1
  105. package/lib/commands/page/standard-page-status.js +1 -1
  106. package/lib/commands/page/sync.js +1 -1
  107. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  108. package/lib/commands/project/create/format-elapsed.js +1 -1
  109. package/lib/commands/project/create/main.js +1 -1
  110. package/lib/commands/project/create/non-interactive.js +1 -1
  111. package/lib/commands/project/create/project-template-path.js +1 -1
  112. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  113. package/lib/commands/project/create/use-format-code.js +1 -1
  114. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  115. package/lib/commands/project/index.js +1 -1
  116. package/lib/commands/project/init.js +1 -1
  117. package/lib/commands/project/upgrade.js +1 -1
  118. package/lib/commands/registry.js +1 -1
  119. package/lib/commands/run/index.js +1 -1
  120. package/lib/commands/schema.js +1 -1
  121. package/lib/commands/skill/index.js +1 -1
  122. package/lib/commands/sql/create.js +1 -1
  123. package/lib/commands/sql/delete.js +1 -1
  124. package/lib/commands/sql/detail.js +1 -1
  125. package/lib/commands/sql/exec.js +1 -1
  126. package/lib/commands/sql/index.js +1 -1
  127. package/lib/commands/sql/list.js +1 -1
  128. package/lib/commands/sql/pull.js +1 -1
  129. package/lib/commands/sql/push.js +1 -1
  130. package/lib/commands/sql/save.js +1 -1
  131. package/lib/commands/sql/shared.js +1 -1
  132. package/lib/commands/sql/status.js +1 -1
  133. package/lib/commands/sql/validate.js +1 -1
  134. package/lib/config/schema.js +1 -1
  135. package/lib/constant/cdn.js +1 -1
  136. package/lib/constant/cli.js +1 -1
  137. package/lib/constant/defaults.js +1 -1
  138. package/lib/constant/domain.js +1 -1
  139. package/lib/constant/env.js +1 -1
  140. package/lib/constant/output.js +1 -1
  141. package/lib/constant/paths.js +1 -1
  142. package/lib/constant/risk.js +1 -1
  143. package/lib/context.js +1 -1
  144. package/lib/core/alias-resolver.js +1 -1
  145. package/lib/core/api-client.js +1 -1
  146. package/lib/core/bff/config.js +1 -1
  147. package/lib/core/bff/file-system.js +1 -1
  148. package/lib/core/bff/hash.js +1 -1
  149. package/lib/core/bff/lock.js +1 -1
  150. package/lib/core/bff/utils.js +1 -1
  151. package/lib/core/db-resolver.js +1 -1
  152. package/lib/core/page/file-system.js +1 -1
  153. package/lib/core/page/hash.js +1 -1
  154. package/lib/core/page/lock.js +1 -1
  155. package/lib/core/sql-sync/config.js +1 -1
  156. package/lib/core/sql-sync/file-system.js +1 -1
  157. package/lib/core/sql-sync/hash.js +1 -1
  158. package/lib/core/sql-sync/lock.js +1 -1
  159. package/lib/core/sql-sync/utils.js +1 -1
  160. package/lib/core/sql-validator.js +1 -1
  161. package/lib/errors.js +1 -1
  162. package/lib/framework/build-all-flags.js +1 -1
  163. package/lib/framework/flags.js +1 -1
  164. package/lib/framework/help.js +1 -1
  165. package/lib/framework/index.js +1 -1
  166. package/lib/framework/output.js +1 -1
  167. package/lib/framework/response.js +1 -1
  168. package/lib/framework/runner-alias.js +1 -1
  169. package/lib/framework/runner.js +1 -1
  170. package/lib/framework/schema-export.js +1 -1
  171. package/lib/framework/types.js +1 -1
  172. package/lib/generated/build-info.js +1 -1
  173. package/lib/help.js +1 -1
  174. package/lib/skills/main.js +1 -1
  175. package/lib/skills/npx-skills-add.js +1 -1
  176. package/lib/telemetry/cli-command-trace.js +1 -1
  177. package/lib/telemetry/cli-help-trace.js +1 -1
  178. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  179. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  180. package/lib/telemetry/send-cli-trace-log.js +1 -1
  181. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  182. package/lib/utils/ai_config.js +1 -1
  183. package/lib/utils/apply-jq-filter.js +1 -1
  184. package/lib/utils/cdn-config.js +1 -1
  185. package/lib/utils/check-sdk-version.js +1 -1
  186. package/lib/utils/cli-version-check.js +1 -1
  187. package/lib/utils/cli-version-policy.js +1 -1
  188. package/lib/utils/config.js +1 -1
  189. package/lib/utils/copy-directory.js +1 -1
  190. package/lib/utils/entity-with-id.js +1 -1
  191. package/lib/utils/file-utils.js +1 -1
  192. package/lib/utils/guides-cdn.js +1 -1
  193. package/lib/utils/http-client.js +1 -1
  194. package/lib/utils/is-non-interactive.js +1 -1
  195. package/lib/utils/logger.js +1 -1
  196. package/lib/utils/params.js +1 -1
  197. package/lib/utils/platform.js +1 -1
  198. package/lib/utils/rules-cdn.js +1 -1
  199. package/lib/utils/sleep.js +1 -1
  200. package/lib/utils/template-replacer.js +1 -1
  201. package/lib/utils/update-notice.js +1 -1
  202. package/lib/utils/version.js +1 -1
  203. package/lib/utils/with-active-cookie.js +1 -1
  204. package/lib/utils/write-cli-side-channel.js +1 -1
  205. package/package.json +2 -2
  206. package/templates/projects/sub-app-react-demo/src/vite-env.d.ts +1 -1
  207. package/templates/rules/lovrabet_rules.mdc.tpl +3 -1
@@ -1 +1 @@
1
- (function(_0x43ef97,_0xf281e8){const _0x8cd319=a110_0x2bc3,_0x350b7b=_0x43ef97();while(!![]){try{const _0x4ffa30=parseInt(_0x8cd319(0xef))/0x1*(-parseInt(_0x8cd319(0x111))/0x2)+parseInt(_0x8cd319(0x10e))/0x3*(parseInt(_0x8cd319(0xf1))/0x4)+parseInt(_0x8cd319(0x114))/0x5*(-parseInt(_0x8cd319(0x103))/0x6)+-parseInt(_0x8cd319(0xf7))/0x7*(parseInt(_0x8cd319(0xeb))/0x8)+-parseInt(_0x8cd319(0x10b))/0x9*(-parseInt(_0x8cd319(0x11b))/0xa)+parseInt(_0x8cd319(0xf0))/0xb+parseInt(_0x8cd319(0xe9))/0xc;if(_0x4ffa30===_0xf281e8)break;else _0x350b7b['push'](_0x350b7b['shift']());}catch(_0x5d53cd){_0x350b7b['push'](_0x350b7b['shift']());}}}(a110_0x4fff,0x46104));import a110_0x3af065 from'path';import a110_0x28fc5f from'fs/promises';function a110_0x4fff(){const _0x2d0b7f=['6JlSNbK','validation','trim','\x20\x20√\x20Configuration\x20file\x20created','length','Project\x20name\x20contains\x20invalid\x20characters.','\x20\x20√\x20Pulled\x20','\x0a√\x20Project\x20','330399fyeXVj','modelCount','\x20dataset(s),\x20generated\x20','6gZlmxN','join','\x20model(s)','6nEVlTg','writeFile','\x20\x20√\x20package.json\x20updated','2728275hkPGFy','log','description','belowMinimum','*\x20Creating\x20project\x20','npm','\x20\x20Installing\x20dependencies...','30JgqcbT','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','\x20created\x20successfully!','string','W_OK','Project\x20name\x20cannot\x20be\x20empty.','3334476YnbEzC','\x20\x20√\x20Code\x20formatted','8tcNlfZ','\x22\x20already\x20exists.','env','cwd','63290PuKLCC','4664385orZVgd','808652OAUBVU','\x20api\x20pull`\x20manually\x20later.','production','bun','Cannot\x20create\x20project\x20in\x20current\x20directory.','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','1357034wgyDjX','\x20\x20√\x20Project\x20template\x20created','Use\x20a\x20different\x20project\x20name.','test','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','Project\x20directory\x20\x22','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','constants','Check\x20directory\x20permissions.','...','dirname','resolve'];a110_0x4fff=function(){return _0x2d0b7f;};return a110_0x4fff();}import{existsSync}from'fs';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{exec,execSync}from'child_process';import{copyDirectory}from'../../../utils/copy-directory.js';import{promisify}from'util';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{readConfig}from'../../../utils/config.js';import{getCliVersion}from'../../../utils/version.js';import{CliErrors}from'../../../errors.js';import{fetchModelList}from'../../../api/fetch-model-list.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';const execAsync=promisify(exec);export async function createProjectNonInteractive(_0x5708b3,_0x239515,_0x39a371,_0x2ba61f){const _0x5de7aa=a110_0x2bc3,_0x4000a5=await checkCliVersion();(_0x4000a5['needsUpgrade']||_0x4000a5[_0x5de7aa(0x117)])&&(printCliUpgradeWarning(_0x4000a5),assertCliVersionSupported(_0x4000a5));if(!_0x5708b3||_0x5708b3[_0x5de7aa(0x105)]()==='')throw CliErrors[_0x5de7aa(0x104)](_0x5de7aa(0xe8));const _0x269236=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x269236[_0x5de7aa(0xfa)](_0x5708b3))throw CliErrors[_0x5de7aa(0x104)](_0x5de7aa(0x108),_0x5de7aa(0x11c));if(_0x5708b3[_0x5de7aa(0x107)]>0x64)throw CliErrors[_0x5de7aa(0x104)](_0x5de7aa(0xfb));const _0x20722b=a110_0x3af065[_0x5de7aa(0x102)](process[_0x5de7aa(0xee)](),_0x5708b3);if(existsSync(_0x20722b))throw CliErrors[_0x5de7aa(0x104)](_0x5de7aa(0xfc)+_0x5708b3+_0x5de7aa(0xec),_0x5de7aa(0xf9));try{const _0x68f6d0=a110_0x3af065[_0x5de7aa(0x101)](_0x20722b);await a110_0x28fc5f['access'](_0x68f6d0,a110_0x28fc5f[_0x5de7aa(0xfe)][_0x5de7aa(0xe7)]);}catch{throw CliErrors[_0x5de7aa(0x104)](_0x5de7aa(0xf5),_0x5de7aa(0xff));}try{console[_0x5de7aa(0x115)](_0x5de7aa(0x118)+_0x5708b3+_0x5de7aa(0x100));const _0x2eb3df=getSubAppReactDemoTemplateDir();await copyDirectory(_0x2eb3df,_0x20722b),console[_0x5de7aa(0x115)](_0x5de7aa(0xf8)),await updatePackageJsonName(_0x5708b3),console['log'](_0x5de7aa(0x113)),console[_0x5de7aa(0x115)](_0x5de7aa(0x11a)),console[_0x5de7aa(0x115)](_0x5de7aa(0xf6)),await formatCode(_0x20722b),console[_0x5de7aa(0x115)](_0x5de7aa(0xea)),await configureProject(_0x5708b3,_0x39a371,_0x239515),console[_0x5de7aa(0x115)](_0x5de7aa(0x106)),_0x39a371&&await pullApiConfig(_0x20722b,_0x39a371,_0x239515,_0x2ba61f),console[_0x5de7aa(0x115)](_0x5de7aa(0x10a)+_0x5708b3+_0x5de7aa(0x11d)),console[_0x5de7aa(0x115)]('\x0a\x20\x20cd\x20'+_0x5708b3),console['log']('\x20\x20rabetbase\x20run\x20start\x0a');}catch(_0x118e9d){try{existsSync(_0x20722b)&&await a110_0x28fc5f['rm'](_0x20722b,{'recursive':!![],'force':!![]});}catch{}throw _0x118e9d;}}function a110_0x2bc3(_0x33fa46,_0x331cf8){_0x33fa46=_0x33fa46-0xe6;const _0x4ffff9=a110_0x4fff();let _0x2bc3a4=_0x4ffff9[_0x33fa46];return _0x2bc3a4;}async function updatePackageJsonName(_0x5b4d34){const _0x1f2bb8=a110_0x2bc3,_0x570049=a110_0x3af065[_0x1f2bb8(0x102)](process[_0x1f2bb8(0xee)](),_0x5b4d34),_0x579e8c=a110_0x3af065[_0x1f2bb8(0x10f)](_0x570049,'package.json'),_0x3069dd=await a110_0x28fc5f['readFile'](_0x579e8c,'utf-8'),_0x10a93f=JSON['parse'](_0x3069dd);_0x10a93f['name']=_0x5b4d34,_0x10a93f[_0x1f2bb8(0x116)]=_0x1f2bb8(0xfd),await a110_0x28fc5f[_0x1f2bb8(0x112)](_0x579e8c,JSON['stringify'](_0x10a93f,null,0x2)+'\x0a');}function detectPackageManager(){const _0x2cccdb=a110_0x2bc3;try{return execSync('bun\x20--version',{'stdio':'ignore'}),_0x2cccdb(0xf4);}catch{return _0x2cccdb(0x119);}}async function formatCode(_0x1fcce9){try{await execAsync('bun\x20run\x20format',{'cwd':_0x1fcce9});}catch{}}async function configureProject(_0x11ae6e,_0x435b0b,_0xdb51ca){const _0x1a1bd8=a110_0x2bc3,_0xf1ba27=a110_0x3af065[_0x1a1bd8(0x102)](process[_0x1a1bd8(0xee)](),_0x11ae6e),_0x229540=a110_0x3af065['join'](_0xf1ba27,NEW_CONFIG_NAME),_0x120ed0=readConfig(),_0x14a2fc=typeof _0x120ed0[_0x1a1bd8(0xed)]===_0x1a1bd8(0xe6)?_0x120ed0['env']:undefined,_0x5670c0={};for(const _0x51ec04 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x120ed0[_0x51ec04]!=null)_0x5670c0[_0x51ec04]=_0x120ed0[_0x51ec04];}const _0xe51eb=buildCanonicalProjectConfig(_0x5670c0,{'appCodes':_0x435b0b?[_0x435b0b]:[],'env':_0xdb51ca||_0x14a2fc||'production','metadata':{'createdAt':new Date()['toLocaleString'](),'version':getCliVersion()}});writeConfigFile(_0x229540,_0xe51eb);}async function pullApiConfig(_0xffc8ee,_0x34fe2f,_0x26b638,_0x5eeecd){const _0x406270=a110_0x2bc3,_0x2ed442=process[_0x406270(0xee)]();try{process['chdir'](_0xffc8ee);const _0x313bb7=_0x26b638||_0x406270(0xf3);initEnv(_0x313bb7),console[_0x406270(0x115)]('\x20\x20Pulling\x20API\x20configuration...');const {configArray:_0x48e319}=await fetchModelList(_0x34fe2f,_0x5eeecd||''),_0x1b1c51=await generateApiFile(_0x48e319,'',_0x34fe2f,!![],_0x313bb7,DEFAULT_API_DIR);console[_0x406270(0x115)](_0x406270(0x109)+_0x48e319[_0x406270(0x107)]+_0x406270(0x10d)+_0x1b1c51[_0x406270(0x10c)]+_0x406270(0x110));}catch(_0x157575){console[_0x406270(0x115)]('\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`'+CLI_BIN_NAME+_0x406270(0xf2));}finally{process['chdir'](_0x2ed442);}}
1
+ (function(_0x546e3d,_0x4fb388){const _0x217ce3=a110_0x4028,_0x19851e=_0x546e3d();while(!![]){try{const _0xcf6ec=-parseInt(_0x217ce3(0x15e))/0x1*(parseInt(_0x217ce3(0x163))/0x2)+-parseInt(_0x217ce3(0x15d))/0x3+-parseInt(_0x217ce3(0x15c))/0x4+-parseInt(_0x217ce3(0x170))/0x5*(parseInt(_0x217ce3(0x16b))/0x6)+parseInt(_0x217ce3(0x162))/0x7+parseInt(_0x217ce3(0x184))/0x8+parseInt(_0x217ce3(0x161))/0x9*(parseInt(_0x217ce3(0x171))/0xa);if(_0xcf6ec===_0x4fb388)break;else _0x19851e['push'](_0x19851e['shift']());}catch(_0x31ab7e){_0x19851e['push'](_0x19851e['shift']());}}}(a110_0x5b80,0x796cb));import a110_0x567535 from'path';import a110_0x391ad9 from'fs/promises';import{existsSync}from'fs';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{exec,execSync}from'child_process';import{copyDirectory}from'../../../utils/copy-directory.js';import{promisify}from'util';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{readConfig}from'../../../utils/config.js';import{getCliVersion}from'../../../utils/version.js';import{CliErrors}from'../../../errors.js';import{fetchModelList}from'../../../api/fetch-model-list.js';function a110_0x5b80(){const _0x116dc4=['Project\x20name\x20cannot\x20be\x20empty.','33095uMXklq','70yyrVFa','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','cwd','parse','writeFile','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','validation','chdir','log','utf-8','toLocaleString','\x20\x20Pulling\x20API\x20configuration...','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','belowMinimum','package.json','\x20\x20√\x20Pulled\x20','bun','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','Use\x20a\x20different\x20project\x20name.','2126648VSWuSa','\x20dataset(s),\x20generated\x20','ignore','resolve','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','\x22\x20already\x20exists.','access','length','bun\x20--version','\x20api\x20pull`\x20manually\x20later.','readFile','2789252WrWXbl','1991643qDWZeP','1CasgDt','\x20model(s)','\x20\x20√\x20Project\x20template\x20created','2983977UWiijX','4249mrffhQ','1047142UEHqkz','*\x20Creating\x20project\x20','Check\x20directory\x20permissions.','join','\x20\x20√\x20Code\x20formatted','\x20\x20√\x20package.json\x20updated','\x20\x20rabetbase\x20run\x20start\x0a','Cannot\x20create\x20project\x20in\x20current\x20directory.','186xEswyY','env','dirname','\x20\x20Installing\x20dependencies...'];a110_0x5b80=function(){return _0x116dc4;};return a110_0x5b80();}import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';function a110_0x4028(_0x469700,_0x1fbed7){_0x469700=_0x469700-0x152;const _0x5b80af=a110_0x5b80();let _0x4028c3=_0x5b80af[_0x469700];return _0x4028c3;}import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';const execAsync=promisify(exec);export async function createProjectNonInteractive(_0x404a9e,_0x1f99de,_0x46548e,_0x1066c9){const _0x4eabc1=a110_0x4028,_0x12978d=await checkCliVersion();(_0x12978d['needsUpgrade']||_0x12978d[_0x4eabc1(0x17e)])&&(printCliUpgradeWarning(_0x12978d),assertCliVersionSupported(_0x12978d));if(!_0x404a9e||_0x404a9e['trim']()==='')throw CliErrors[_0x4eabc1(0x177)](_0x4eabc1(0x16f));const _0x222834=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x222834['test'](_0x404a9e))throw CliErrors[_0x4eabc1(0x177)]('Project\x20name\x20contains\x20invalid\x20characters.',_0x4eabc1(0x155));if(_0x404a9e['length']>0x64)throw CliErrors[_0x4eabc1(0x177)](_0x4eabc1(0x182));const _0x29b3ec=a110_0x567535[_0x4eabc1(0x154)](process[_0x4eabc1(0x173)](),_0x404a9e);if(existsSync(_0x29b3ec))throw CliErrors[_0x4eabc1(0x177)]('Project\x20directory\x20\x22'+_0x404a9e+_0x4eabc1(0x156),_0x4eabc1(0x183));try{const _0x2669b5=a110_0x567535[_0x4eabc1(0x16d)](_0x29b3ec);await a110_0x391ad9[_0x4eabc1(0x157)](_0x2669b5,a110_0x391ad9['constants']['W_OK']);}catch{throw CliErrors[_0x4eabc1(0x177)](_0x4eabc1(0x16a),_0x4eabc1(0x165));}try{console[_0x4eabc1(0x179)](_0x4eabc1(0x164)+_0x404a9e+'...');const _0x4c0992=getSubAppReactDemoTemplateDir();await copyDirectory(_0x4c0992,_0x29b3ec),console[_0x4eabc1(0x179)](_0x4eabc1(0x160)),await updatePackageJsonName(_0x404a9e),console['log'](_0x4eabc1(0x168)),console[_0x4eabc1(0x179)](_0x4eabc1(0x16e)),console[_0x4eabc1(0x179)](_0x4eabc1(0x172)),await formatCode(_0x29b3ec),console[_0x4eabc1(0x179)](_0x4eabc1(0x167)),await configureProject(_0x404a9e,_0x46548e,_0x1f99de),console['log']('\x20\x20√\x20Configuration\x20file\x20created'),_0x46548e&&await pullApiConfig(_0x29b3ec,_0x46548e,_0x1f99de,_0x1066c9),console[_0x4eabc1(0x179)]('\x0a√\x20Project\x20'+_0x404a9e+'\x20created\x20successfully!'),console['log']('\x0a\x20\x20cd\x20'+_0x404a9e),console[_0x4eabc1(0x179)](_0x4eabc1(0x169));}catch(_0x59ec78){try{existsSync(_0x29b3ec)&&await a110_0x391ad9['rm'](_0x29b3ec,{'recursive':!![],'force':!![]});}catch{}throw _0x59ec78;}}async function updatePackageJsonName(_0x51967a){const _0xbb444=a110_0x4028,_0x3c5c03=a110_0x567535[_0xbb444(0x154)](process[_0xbb444(0x173)](),_0x51967a),_0x3962ef=a110_0x567535[_0xbb444(0x166)](_0x3c5c03,_0xbb444(0x17f)),_0x36266f=await a110_0x391ad9[_0xbb444(0x15b)](_0x3962ef,_0xbb444(0x17a)),_0x3c31ba=JSON[_0xbb444(0x174)](_0x36266f);_0x3c31ba['name']=_0x51967a,_0x3c31ba['description']=_0xbb444(0x17d),await a110_0x391ad9[_0xbb444(0x175)](_0x3962ef,JSON['stringify'](_0x3c31ba,null,0x2)+'\x0a');}function detectPackageManager(){const _0x31310f=a110_0x4028;try{return execSync(_0x31310f(0x159),{'stdio':_0x31310f(0x153)}),_0x31310f(0x181);}catch{return'npm';}}async function formatCode(_0x5b574e){try{await execAsync('bun\x20run\x20format',{'cwd':_0x5b574e});}catch{}}async function configureProject(_0xcfa2d3,_0x153a98,_0x5bfe38){const _0x402662=a110_0x4028,_0x40e239=a110_0x567535[_0x402662(0x154)](process[_0x402662(0x173)](),_0xcfa2d3),_0x357283=a110_0x567535[_0x402662(0x166)](_0x40e239,NEW_CONFIG_NAME),_0x8c289d=readConfig(),_0xde8ee3=typeof _0x8c289d[_0x402662(0x16c)]==='string'?_0x8c289d[_0x402662(0x16c)]:undefined,_0x3dadf6={};for(const _0x2958ca of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x8c289d[_0x2958ca]!=null)_0x3dadf6[_0x2958ca]=_0x8c289d[_0x2958ca];}const _0x3e49d1=buildCanonicalProjectConfig(_0x3dadf6,{'appCodes':_0x153a98?[_0x153a98]:[],'env':_0x5bfe38||_0xde8ee3||'production','metadata':{'createdAt':new Date()[_0x402662(0x17b)](),'version':getCliVersion()}});writeConfigFile(_0x357283,_0x3e49d1);}async function pullApiConfig(_0x818449,_0x2b0d50,_0x29bd37,_0x139ddd){const _0x26bfed=a110_0x4028,_0x480983=process[_0x26bfed(0x173)]();try{process[_0x26bfed(0x178)](_0x818449);const _0x1357e0=_0x29bd37||'production';initEnv(_0x1357e0),console[_0x26bfed(0x179)](_0x26bfed(0x17c));const {configArray:_0x1ba111}=await fetchModelList(_0x2b0d50,_0x139ddd||''),_0x262b34=await generateApiFile(_0x1ba111,'',_0x2b0d50,!![],_0x1357e0,DEFAULT_API_DIR);console[_0x26bfed(0x179)](_0x26bfed(0x180)+_0x1ba111[_0x26bfed(0x158)]+_0x26bfed(0x152)+_0x262b34['modelCount']+_0x26bfed(0x15f));}catch(_0x4cb91c){console['log'](_0x26bfed(0x176)+CLI_BIN_NAME+_0x26bfed(0x15a));}finally{process[_0x26bfed(0x178)](_0x480983);}}
@@ -1 +1 @@
1
- function a111_0x2fb6(){const _0x2c5bf8=['1739705NjApFX','2675944UlEbrV','projects','1215684aqzOnJ','sub-app-react-demo','635502cresOr','7iOJScV','join','388254xCFmnM','dirname','../../../../','templates','resolve','2RNXVJq','693703ojmsMj','3470679dSUhYt'];a111_0x2fb6=function(){return _0x2c5bf8;};return a111_0x2fb6();}function a111_0x4928(_0x35404d,_0x5edcad){_0x35404d=_0x35404d-0x79;const _0x2fb646=a111_0x2fb6();let _0x492811=_0x2fb646[_0x35404d];return _0x492811;}const a111_0xf511a=a111_0x4928;(function(_0x95973,_0x55677d){const _0x33112d=a111_0x4928,_0x10ba76=_0x95973();while(!![]){try{const _0x517e88=parseInt(_0x33112d(0x7b))/0x1+parseInt(_0x33112d(0x7a))/0x2*(parseInt(_0x33112d(0x82))/0x3)+-parseInt(_0x33112d(0x80))/0x4+-parseInt(_0x33112d(0x7d))/0x5+parseInt(_0x33112d(0x85))/0x6+-parseInt(_0x33112d(0x83))/0x7*(parseInt(_0x33112d(0x7e))/0x8)+parseInt(_0x33112d(0x7c))/0x9;if(_0x517e88===_0x55677d)break;else _0x10ba76['push'](_0x10ba76['shift']());}catch(_0x3ded7b){_0x10ba76['push'](_0x10ba76['shift']());}}}(a111_0x2fb6,0x5a372));import a111_0x11922d from'node:path';import{fileURLToPath}from'node:url';const __dirname=a111_0x11922d[a111_0xf511a(0x86)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x814fb3=a111_0xf511a;return a111_0x11922d[_0x814fb3(0x79)](__dirname,_0x814fb3(0x87));}export function getSubAppReactDemoTemplateDir(){const _0x4286a1=a111_0xf511a;return a111_0x11922d[_0x4286a1(0x84)](getRabetbaseCliPackageRoot(),_0x4286a1(0x88),_0x4286a1(0x7f),_0x4286a1(0x81));}
1
+ function a111_0x4eaf(){const _0x27b2da=['886804juMSuv','sub-app-react-demo','projects','../../../../','1260308SbDpku','1049304cDUeVc','2843985xwbxWi','21EnedEX','375762XgEpxQ','3024572EueBGG','templates','resolve','2451204hYuGMT'];a111_0x4eaf=function(){return _0x27b2da;};return a111_0x4eaf();}(function(_0x2dd01b,_0x3be521){const _0x5ba242=a111_0x138e,_0x593ca4=_0x2dd01b();while(!![]){try{const _0x3e9430=-parseInt(_0x5ba242(0x147))/0x1+parseInt(_0x5ba242(0x13e))/0x2+parseInt(_0x5ba242(0x142))/0x3+-parseInt(_0x5ba242(0x143))/0x4+parseInt(_0x5ba242(0x140))/0x5+parseInt(_0x5ba242(0x146))/0x6+-parseInt(_0x5ba242(0x141))/0x7*(-parseInt(_0x5ba242(0x13f))/0x8);if(_0x3e9430===_0x3be521)break;else _0x593ca4['push'](_0x593ca4['shift']());}catch(_0x52fd0b){_0x593ca4['push'](_0x593ca4['shift']());}}}(a111_0x4eaf,0x75fd1));import a111_0x5c791d from'node:path';import{fileURLToPath}from'node:url';const __dirname=a111_0x5c791d['dirname'](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x16bc81=a111_0x138e;return a111_0x5c791d[_0x16bc81(0x145)](__dirname,_0x16bc81(0x13d));}function a111_0x138e(_0x940f97,_0x1b046c){_0x940f97=_0x940f97-0x13d;const _0x4eaf8d=a111_0x4eaf();let _0x138e94=_0x4eaf8d[_0x940f97];return _0x138e94;}export function getSubAppReactDemoTemplateDir(){const _0x58f4f7=a111_0x138e;return a111_0x5c791d['join'](getRabetbaseCliPackageRoot(),_0x58f4f7(0x144),_0x58f4f7(0x149),_0x58f4f7(0x148));}
@@ -1 +1 @@
1
- (function(_0x4fd44e,_0x6cf843){const _0x2887a2=a112_0x5bff,_0x57e48a=_0x4fd44e();while(!![]){try{const _0x50bbfa=-parseInt(_0x2887a2(0x184))/0x1*(parseInt(_0x2887a2(0x173))/0x2)+parseInt(_0x2887a2(0x178))/0x3+-parseInt(_0x2887a2(0x179))/0x4*(-parseInt(_0x2887a2(0x174))/0x5)+parseInt(_0x2887a2(0x17b))/0x6+parseInt(_0x2887a2(0x185))/0x7*(parseInt(_0x2887a2(0x177))/0x8)+-parseInt(_0x2887a2(0x17c))/0x9+-parseInt(_0x2887a2(0x175))/0xa;if(_0x50bbfa===_0x6cf843)break;else _0x57e48a['push'](_0x57e48a['shift']());}catch(_0x5c126a){_0x57e48a['push'](_0x57e48a['shift']());}}}(a112_0x4067,0xe9aaf));import a112_0xc3f57d from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';function a112_0x5bff(_0x450432,_0x17a629){_0x450432=_0x450432-0x173;const _0x406730=a112_0x4067();let _0x5bffbf=_0x406730[_0x450432];return _0x5bffbf;}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a112_0x4067(){const _0x250376=['4900395NocxTB','2153972GjsfoA','message','2798328rzfRwa','1431171zHDYHS','success','项目模板复制完成','info','项目模板复制失败','copy','now','cwd','1KEHmXd','12860939lkscrn','1663954BeKyAp','15ZHamPv','36045100hrQlxZ','开始复制项目模板','8LRBuZk'];a112_0x4067=function(){return _0x250376;};return a112_0x4067();}import{logger}from'../../../utils/logger.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x24bd55){const _0x162e7b=a112_0x5bff,_0x545c77=Date[_0x162e7b(0x182)](),_0x132491=a112_0xc3f57d['resolve'](process[_0x162e7b(0x183)](),_0x24bd55);try{logger[_0x162e7b(0x17f)](_0x162e7b(0x181),_0x162e7b(0x176),{'projectCode':_0x24bd55,'templateDir':templateDir}),await copyDirectory(templateDir,_0x132491);const _0x380081=Date['now']()-_0x545c77;logger[_0x162e7b(0x17d)](_0x162e7b(0x181),_0x162e7b(0x17e),_0x380081,{'projectCode':_0x24bd55});}catch(_0x2f0ab6){const _0x5e6417=Date[_0x162e7b(0x182)]()-_0x545c77;logger['error'](_0x162e7b(0x181),_0x162e7b(0x180),{'projectCode':_0x24bd55,'error':_0x2f0ab6 instanceof Error?_0x2f0ab6[_0x162e7b(0x17a)]:String(_0x2f0ab6),'duration':_0x5e6417});throw _0x2f0ab6;}return formatElapsed(_0x545c77);}
1
+ (function(_0x5e250b,_0x29502d){const _0x44bf08=a112_0x11c0,_0x53d6fe=_0x5e250b();while(!![]){try{const _0x58a5a9=-parseInt(_0x44bf08(0x184))/0x1+parseInt(_0x44bf08(0x17c))/0x2*(parseInt(_0x44bf08(0x17f))/0x3)+-parseInt(_0x44bf08(0x188))/0x4+-parseInt(_0x44bf08(0x181))/0x5+-parseInt(_0x44bf08(0x180))/0x6*(-parseInt(_0x44bf08(0x17b))/0x7)+-parseInt(_0x44bf08(0x18b))/0x8+parseInt(_0x44bf08(0x18c))/0x9*(parseInt(_0x44bf08(0x183))/0xa);if(_0x58a5a9===_0x29502d)break;else _0x53d6fe['push'](_0x53d6fe['shift']());}catch(_0x1126f6){_0x53d6fe['push'](_0x53d6fe['shift']());}}}(a112_0x5347,0xa9748));function a112_0x5347(){const _0x38313e=['message','90UMmjkf','935186CPUiTQ','info','now','项目模板复制完成','5168596sVTbLP','success','cwd','10365152urtYVO','2989629vXjzfz','175RoBUpl','2yglNlH','error','copy','1820475HpWovP','324078NRuNtZ','3648560UYLKum'];a112_0x5347=function(){return _0x38313e;};return a112_0x5347();}function a112_0x11c0(_0x32bb36,_0x258dc){_0x32bb36=_0x32bb36-0x17b;const _0x5347a6=a112_0x5347();let _0x11c0f0=_0x5347a6[_0x32bb36];return _0x11c0f0;}import a112_0xb5e2b9 from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x10ea15){const _0x1ff948=a112_0x11c0,_0x576b5b=Date['now'](),_0x3b3d3a=a112_0xb5e2b9['resolve'](process[_0x1ff948(0x18a)](),_0x10ea15);try{logger[_0x1ff948(0x185)](_0x1ff948(0x17e),'开始复制项目模板',{'projectCode':_0x10ea15,'templateDir':templateDir}),await copyDirectory(templateDir,_0x3b3d3a);const _0x46a7d3=Date[_0x1ff948(0x186)]()-_0x576b5b;logger[_0x1ff948(0x189)](_0x1ff948(0x17e),_0x1ff948(0x187),_0x46a7d3,{'projectCode':_0x10ea15});}catch(_0x4cd22c){const _0x32e997=Date[_0x1ff948(0x186)]()-_0x576b5b;logger[_0x1ff948(0x17d)]('copy','项目模板复制失败',{'projectCode':_0x10ea15,'error':_0x4cd22c instanceof Error?_0x4cd22c[_0x1ff948(0x182)]:String(_0x4cd22c),'duration':_0x32e997});throw _0x4cd22c;}return formatElapsed(_0x576b5b);}
@@ -1 +1 @@
1
- (function(_0x47bc6b,_0x1012e6){const _0x461621=a113_0x37e7,_0x39f81f=_0x47bc6b();while(!![]){try{const _0x264cd8=parseInt(_0x461621(0x140))/0x1*(parseInt(_0x461621(0x14e))/0x2)+parseInt(_0x461621(0x14c))/0x3+parseInt(_0x461621(0x14d))/0x4+parseInt(_0x461621(0x14a))/0x5*(-parseInt(_0x461621(0x143))/0x6)+parseInt(_0x461621(0x148))/0x7+-parseInt(_0x461621(0x149))/0x8*(parseInt(_0x461621(0x13c))/0x9)+-parseInt(_0x461621(0x147))/0xa;if(_0x264cd8===_0x1012e6)break;else _0x39f81f['push'](_0x39f81f['shift']());}catch(_0x3b88e7){_0x39f81f['push'](_0x39f81f['shift']());}}}(a113_0x301f,0xcc94a));function a113_0x301f(){const _0xeb4aac=['11614620rCNnFN','7213185PXwPsu','5464THRSgI','6621595VBQZoZ','开始格式化代码','3550548HsIPjW','1703100DVsyMx','722fgjJIP','format','npx','success','代码格式化失败','9891fzCHIV','cwd','message','prettier','3974sCFMuD','info','--write','6hLMEiG','resolve','now','代码格式化完成'];a113_0x301f=function(){return _0xeb4aac;};return a113_0x301f();}import a113_0x500faf from'node:path';function a113_0x37e7(_0x3b2dff,_0x1cd3fc){_0x3b2dff=_0x3b2dff-0x13c;const _0x301f61=a113_0x301f();let _0x37e7f4=_0x301f61[_0x3b2dff];return _0x37e7f4;}import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x58c536){const _0x5a444b=a113_0x37e7,_0x3d9fd9=Date[_0x5a444b(0x145)](),_0x2bd117=a113_0x500faf[_0x5a444b(0x144)](process[_0x5a444b(0x13d)](),_0x58c536);try{logger[_0x5a444b(0x141)]('format',_0x5a444b(0x14b),{'projectCode':_0x58c536}),await execa(resolveNpmBin(_0x5a444b(0x150)),[_0x5a444b(0x13f),_0x5a444b(0x142),'.'],{'cwd':_0x2bd117});const _0x346f69=Date[_0x5a444b(0x145)]()-_0x3d9fd9;logger[_0x5a444b(0x151)](_0x5a444b(0x14f),_0x5a444b(0x146),_0x346f69,{'projectCode':_0x58c536});}catch(_0x1291fe){const _0xcc99d0=Date[_0x5a444b(0x145)]()-_0x3d9fd9;logger['error'](_0x5a444b(0x14f),_0x5a444b(0x152),{'projectCode':_0x58c536,'error':_0x1291fe instanceof Error?_0x1291fe[_0x5a444b(0x13e)]:String(_0x1291fe),'duration':_0xcc99d0});throw _0x1291fe;}return formatElapsed(_0x3d9fd9);}
1
+ (function(_0x27d59e,_0x5aa346){const _0x43b5fb=a113_0x1638,_0x14c31e=_0x27d59e();while(!![]){try{const _0x3fc630=parseInt(_0x43b5fb(0x125))/0x1*(-parseInt(_0x43b5fb(0x130))/0x2)+parseInt(_0x43b5fb(0x12d))/0x3*(parseInt(_0x43b5fb(0x133))/0x4)+parseInt(_0x43b5fb(0x126))/0x5+parseInt(_0x43b5fb(0x123))/0x6*(parseInt(_0x43b5fb(0x12f))/0x7)+-parseInt(_0x43b5fb(0x12e))/0x8*(-parseInt(_0x43b5fb(0x134))/0x9)+-parseInt(_0x43b5fb(0x121))/0xa+-parseInt(_0x43b5fb(0x12c))/0xb;if(_0x3fc630===_0x5aa346)break;else _0x14c31e['push'](_0x14c31e['shift']());}catch(_0x5b5ed5){_0x14c31e['push'](_0x14c31e['shift']());}}}(a113_0x59fd,0x76838));import a113_0xbc5683 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a113_0x1638(_0x5ac2ab,_0x1a3e97){_0x5ac2ab=_0x5ac2ab-0x121;const _0x59fd76=a113_0x59fd();let _0x16382e=_0x59fd76[_0x5ac2ab];return _0x16382e;}function a113_0x59fd(){const _0x5a6e2e=['883822CYzvLr','开始格式化代码','now','296OMuipd','9tbAiGm','--write','prettier','error','5241660RQSWsc','resolve','5764254uPgeCe','代码格式化失败','1UPzleC','1060970IoBGpE','npx','info','message','代码格式化完成','format','8587029JNBeqi','22686HWTKfz','3997256GMAvcU','7YUlGjR'];a113_0x59fd=function(){return _0x5a6e2e;};return a113_0x59fd();}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x4b74b8){const _0x6b4f9d=a113_0x1638,_0x301b9c=Date['now'](),_0x209fa8=a113_0xbc5683[_0x6b4f9d(0x122)](process['cwd'](),_0x4b74b8);try{logger[_0x6b4f9d(0x128)](_0x6b4f9d(0x12b),_0x6b4f9d(0x131),{'projectCode':_0x4b74b8}),await execa(resolveNpmBin(_0x6b4f9d(0x127)),[_0x6b4f9d(0x136),_0x6b4f9d(0x135),'.'],{'cwd':_0x209fa8});const _0x31bb46=Date[_0x6b4f9d(0x132)]()-_0x301b9c;logger['success'](_0x6b4f9d(0x12b),_0x6b4f9d(0x12a),_0x31bb46,{'projectCode':_0x4b74b8});}catch(_0x5d00f1){const _0x2cda23=Date['now']()-_0x301b9c;logger[_0x6b4f9d(0x137)](_0x6b4f9d(0x12b),_0x6b4f9d(0x124),{'projectCode':_0x4b74b8,'error':_0x5d00f1 instanceof Error?_0x5d00f1[_0x6b4f9d(0x129)]:String(_0x5d00f1),'duration':_0x2cda23});throw _0x5d00f1;}return formatElapsed(_0x301b9c);}
@@ -1 +1 @@
1
- (function(_0x7dd6f9,_0x4b5344){const _0x503630=a114_0x20be,_0x3d112e=_0x7dd6f9();while(!![]){try{const _0x339e32=parseInt(_0x503630(0x176))/0x1+-parseInt(_0x503630(0x17b))/0x2*(-parseInt(_0x503630(0x189))/0x3)+-parseInt(_0x503630(0x179))/0x4*(-parseInt(_0x503630(0x17d))/0x5)+parseInt(_0x503630(0x17a))/0x6*(parseInt(_0x503630(0x185))/0x7)+parseInt(_0x503630(0x188))/0x8+parseInt(_0x503630(0x182))/0x9*(-parseInt(_0x503630(0x175))/0xa)+parseInt(_0x503630(0x174))/0xb*(-parseInt(_0x503630(0x177))/0xc);if(_0x339e32===_0x4b5344)break;else _0x3d112e['push'](_0x3d112e['shift']());}catch(_0x3f07d1){_0x3d112e['push'](_0x3d112e['shift']());}}}(a114_0x238f,0x9d558));import a114_0x1ce248 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x19ebd6){const _0x27f1b2=a114_0x20be,_0x480cb3=Date['now'](),_0x52e5e0=a114_0x1ce248[_0x27f1b2(0x17f)](process[_0x27f1b2(0x184)](),_0x19ebd6);try{logger['info'](_0x27f1b2(0x180),_0x27f1b2(0x17e),{'projectCode':_0x19ebd6,'registry':_0x27f1b2(0x17c)}),await execa(resolveNpmBin('npm'),['install',_0x27f1b2(0x178),_0x27f1b2(0x17c)],{'cwd':_0x52e5e0});const _0x28cf43=Date[_0x27f1b2(0x181)]()-_0x480cb3;logger['success'](_0x27f1b2(0x180),_0x27f1b2(0x183),_0x28cf43,{'projectCode':_0x19ebd6});}catch(_0x196d35){const _0x841c2=Date[_0x27f1b2(0x181)]()-_0x480cb3;logger['error'](_0x27f1b2(0x180),_0x27f1b2(0x186),{'projectCode':_0x19ebd6,'error':_0x196d35 instanceof Error?_0x196d35[_0x27f1b2(0x187)]:String(_0x196d35),'duration':_0x841c2});throw _0x196d35;}return formatElapsed(_0x480cb3);}function a114_0x20be(_0x13b0b2,_0x1004cc){_0x13b0b2=_0x13b0b2-0x174;const _0x238fe1=a114_0x238f();let _0x20be99=_0x238fe1[_0x13b0b2];return _0x20be99;}function a114_0x238f(){const _0x2e7d82=['105560iygSbH','900363LrqyBj','181572HDpnfc','--registry','17312tCOaLp','66LMobhl','2zUzpAC','https://registry.npmmirror.com','230RboZzJ','开始安装依赖','resolve','install','now','45RYVnla','依赖安装完成','cwd','713419imLQUp','依赖安装失败','message','9146296JptunN','1578108kOseFV','2321LrGltq'];a114_0x238f=function(){return _0x2e7d82;};return a114_0x238f();}
1
+ (function(_0x4e35a4,_0x26b753){const _0xcaba37=a114_0x4bf7,_0x38bdbb=_0x4e35a4();while(!![]){try{const _0x58aca2=-parseInt(_0xcaba37(0x1d7))/0x1+parseInt(_0xcaba37(0x1ec))/0x2*(parseInt(_0xcaba37(0x1e5))/0x3)+-parseInt(_0xcaba37(0x1dd))/0x4+parseInt(_0xcaba37(0x1e0))/0x5*(-parseInt(_0xcaba37(0x1dc))/0x6)+parseInt(_0xcaba37(0x1ea))/0x7+-parseInt(_0xcaba37(0x1e8))/0x8+parseInt(_0xcaba37(0x1e6))/0x9;if(_0x58aca2===_0x26b753)break;else _0x38bdbb['push'](_0x38bdbb['shift']());}catch(_0x250d44){_0x38bdbb['push'](_0x38bdbb['shift']());}}}(a114_0x1e0e,0x3a61d));function a114_0x1e0e(){const _0x372d7c=['1048446XWQEJa','info','6VClUla','183943KTELwP','依赖安装失败','--registry','install','依赖安装完成','761892iJDrgl','819324HyTpWp','success','开始安装依赖','15FHStiU','message','error','now','resolve','166959UCNshj','10081188PGPBup','https://registry.npmmirror.com','3424128dcmVjH','cwd'];a114_0x1e0e=function(){return _0x372d7c;};return a114_0x1e0e();}import a114_0x2f2673 from'node:path';function a114_0x4bf7(_0x455531,_0x2d7c9a){_0x455531=_0x455531-0x1d7;const _0x1e0e87=a114_0x1e0e();let _0x4bf7d7=_0x1e0e87[_0x455531];return _0x4bf7d7;}import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x1c8676){const _0x1e6ed0=a114_0x4bf7,_0x46db56=Date['now'](),_0x276bd5=a114_0x2f2673[_0x1e6ed0(0x1e4)](process[_0x1e6ed0(0x1e9)](),_0x1c8676);try{logger[_0x1e6ed0(0x1eb)]('install',_0x1e6ed0(0x1df),{'projectCode':_0x1c8676,'registry':_0x1e6ed0(0x1e7)}),await execa(resolveNpmBin('npm'),[_0x1e6ed0(0x1da),_0x1e6ed0(0x1d9),'https://registry.npmmirror.com'],{'cwd':_0x276bd5});const _0x3a4e20=Date[_0x1e6ed0(0x1e3)]()-_0x46db56;logger[_0x1e6ed0(0x1de)](_0x1e6ed0(0x1da),_0x1e6ed0(0x1db),_0x3a4e20,{'projectCode':_0x1c8676});}catch(_0x4b763d){const _0x94fecb=Date[_0x1e6ed0(0x1e3)]()-_0x46db56;logger[_0x1e6ed0(0x1e2)](_0x1e6ed0(0x1da),_0x1e6ed0(0x1d8),{'projectCode':_0x1c8676,'error':_0x4b763d instanceof Error?_0x4b763d[_0x1e6ed0(0x1e1)]:String(_0x4b763d),'duration':_0x94fecb});throw _0x4b763d;}return formatElapsed(_0x46db56);}
@@ -1 +1 @@
1
- const a115_0x3fc3a3=a115_0x324d;function a115_0x52ba(){const _0x13c0b5=['Create\x20a\x20new\x20project','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]','trim','yes','../../commands/project/create/main.js','App\x20code\x20to\x20initialize','bool','args','env','project-name','str','../../commands/project/create/non-interactive.js','Usage:\x20','Initialize\x20.rabetbase.json\x20config\x20in\x20existing\x20project','create','Target\x20environment','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','Skip\x20confirmation\x20prompt','nonInteractive','name','2535204oFolgk','4524222lMcvRO','Auto-confirm\x20prompts','string','project','169165zpkAFu','3652432sggTuv','appcode','4wIzVTG','boolean','upgrade','1272FNTFIv','cookie','25209CnFeRY','write','430xFKeMw','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','138083wSkMDb','111421esvnfQ','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','12gScWQG'];a115_0x52ba=function(){return _0x13c0b5;};return a115_0x52ba();}(function(_0x55245e,_0x1b7fe1){const _0xe97bcf=a115_0x324d,_0x162ed9=_0x55245e();while(!![]){try{const _0x285e95=parseInt(_0xe97bcf(0x210))/0x1*(-parseInt(_0xe97bcf(0x212))/0x2)+parseInt(_0xe97bcf(0x1fe))/0x3+-parseInt(_0xe97bcf(0x206))/0x4*(-parseInt(_0xe97bcf(0x203))/0x5)+parseInt(_0xe97bcf(0x1ff))/0x6+-parseInt(_0xe97bcf(0x204))/0x7+-parseInt(_0xe97bcf(0x209))/0x8*(parseInt(_0xe97bcf(0x20b))/0x9)+-parseInt(_0xe97bcf(0x20d))/0xa*(-parseInt(_0xe97bcf(0x20f))/0xb);if(_0x285e95===_0x1b7fe1)break;else _0x162ed9['push'](_0x162ed9['shift']());}catch(_0x930f3c){_0x162ed9['push'](_0x162ed9['shift']());}}}(a115_0x52ba,0x831e0));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{initConfig}from'../../commands/project/init.js';function a115_0x324d(_0x30f789,_0x3c3028){_0x30f789=_0x30f789-0x1ed;const _0x52ba35=a115_0x52ba();let _0x324dad=_0x52ba35[_0x30f789];return _0x324dad;}import{upgradeApp}from'../../commands/project/upgrade.js';const initFlags=[{'name':'appcode','type':'string','description':a115_0x3fc3a3(0x1ef)},{'name':a115_0x3fc3a3(0x1f2),'type':a115_0x3fc3a3(0x201),'description':a115_0x3fc3a3(0x1f9)},{'name':a115_0x3fc3a3(0x1ed),'type':'boolean','description':a115_0x3fc3a3(0x200),'default':![]}],createFlags=[{'name':a115_0x3fc3a3(0x1fd),'type':'string','description':'Project\x20name'},{'name':a115_0x3fc3a3(0x1f2),'type':a115_0x3fc3a3(0x201),'description':a115_0x3fc3a3(0x1f9)},{'name':a115_0x3fc3a3(0x205),'type':a115_0x3fc3a3(0x201),'description':a115_0x3fc3a3(0x20e)}],upgradeFlags=[{'name':a115_0x3fc3a3(0x1ed),'type':a115_0x3fc3a3(0x207),'description':a115_0x3fc3a3(0x1fb),'default':![]}];export const projectDefinitions=[{'service':a115_0x3fc3a3(0x202),'command':'init','description':a115_0x3fc3a3(0x1f7),'risk':a115_0x3fc3a3(0x20c),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initFlags,async 'execute'(_0x26cbe4){const _0x42e6da=a115_0x3fc3a3;return await initConfig({'appcode':_0x26cbe4['str'](_0x42e6da(0x205))||undefined,'env':_0x26cbe4['str'](_0x42e6da(0x1f2))||undefined,'autoYes':_0x26cbe4['bool'](_0x42e6da(0x1ed))}),{'ok':!![]};}},{'service':a115_0x3fc3a3(0x202),'command':a115_0x3fc3a3(0x1f8),'description':a115_0x3fc3a3(0x213),'risk':'write','requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a115_0x3fc3a3(0x1f3),'description':'Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','required':![]}],'flags':createFlags,async 'execute'(_0x1f86a9){const _0x5a5891=a115_0x3fc3a3,{createApp:_0x315894}=await import(_0x5a5891(0x1ee)),{createProjectNonInteractive:_0x2fd2a7}=await import(_0x5a5891(0x1f5)),_0x202cb3=_0x1f86a9[_0x5a5891(0x1f4)](_0x5a5891(0x1fd))[_0x5a5891(0x215)]()||_0x1f86a9[_0x5a5891(0x1f1)][0x0]?.[_0x5a5891(0x215)](),_0x3a8532=_0x1f86a9['str'](_0x5a5891(0x1f2))||undefined,_0x31f913=_0x1f86a9['str'](_0x5a5891(0x205))||undefined;if(_0x1f86a9['nonInteractive']){if(!_0x202cb3)throw CliErrors['validation'](_0x5a5891(0x211),_0x5a5891(0x1f6)+CLI_BIN_NAME+_0x5a5891(0x214));await _0x2fd2a7(_0x202cb3,_0x3a8532,_0x31f913,_0x1f86a9['cookie']);}else await _0x315894({'projectCode':_0x202cb3,'appCode':_0x31f913,'env':_0x3a8532,'cookie':_0x1f86a9[_0x5a5891(0x20a)]});return{'ok':!![]};}},{'service':'project','command':a115_0x3fc3a3(0x208),'description':a115_0x3fc3a3(0x1fa),'risk':a115_0x3fc3a3(0x20c),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x30be3b){const _0x5d4f13=a115_0x3fc3a3;return await upgradeApp(_0x30be3b[_0x5d4f13(0x1fc)],{'yes':_0x30be3b[_0x5d4f13(0x1f0)](_0x5d4f13(0x1ed))}),{'ok':!![]};}}];
1
+ const a115_0x41a25e=a115_0x532c;function a115_0x532c(_0x4d8d52,_0x35a8d4){_0x4d8d52=_0x4d8d52-0x1df;const _0x48f82d=a115_0x48f8();let _0x532c79=_0x48f82d[_0x4d8d52];return _0x532c79;}function a115_0x48f8(){const _0x8b8025=['\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]','appcode','Auto-confirm\x20prompts','project','16360sKrYWI','string','43209tFBSoK','../../commands/project/create/non-interactive.js','upgrade','10bHFXKG','trim','nonInteractive','init','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','5901328MZeepf','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','30QsUTQA','280788DUGGRp','706636QlTQjq','2LfkCPd','../../commands/project/create/main.js','str','args','cookie','972538MewXfz','Project\x20name','Skip\x20confirmation\x20prompt','project-name','5QIItuE','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','793NkdPhs','11882629xTElMu','boolean','9bGqaui','bool','Target\x20environment','create','env','yes','Usage:\x20','App\x20code\x20to\x20initialize','write','Initialize\x20.rabetbase.json\x20config\x20in\x20existing\x20project'];a115_0x48f8=function(){return _0x8b8025;};return a115_0x48f8();}(function(_0x204d63,_0x5a0118){const _0x38b37f=a115_0x532c,_0x275856=_0x204d63();while(!![]){try{const _0x22ab29=-parseInt(_0x38b37f(0x1ed))/0x1+parseInt(_0x38b37f(0x1fd))/0x2*(parseInt(_0x38b37f(0x1ef))/0x3)+parseInt(_0x38b37f(0x1fc))/0x4*(-parseInt(_0x38b37f(0x206))/0x5)+parseInt(_0x38b37f(0x1fa))/0x6*(-parseInt(_0x38b37f(0x202))/0x7)+-parseInt(_0x38b37f(0x1f8))/0x8*(parseInt(_0x38b37f(0x1df))/0x9)+-parseInt(_0x38b37f(0x1f2))/0xa*(-parseInt(_0x38b37f(0x209))/0xb)+-parseInt(_0x38b37f(0x1fb))/0xc*(-parseInt(_0x38b37f(0x208))/0xd);if(_0x22ab29===_0x5a0118)break;else _0x275856['push'](_0x275856['shift']());}catch(_0x2aa0e7){_0x275856['push'](_0x275856['shift']());}}}(a115_0x48f8,0xdae72));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{initConfig}from'../../commands/project/init.js';import{upgradeApp}from'../../commands/project/upgrade.js';const initFlags=[{'name':'appcode','type':'string','description':a115_0x41a25e(0x1e6)},{'name':a115_0x41a25e(0x1e3),'type':a115_0x41a25e(0x1ee),'description':a115_0x41a25e(0x1e1)},{'name':a115_0x41a25e(0x1e4),'type':a115_0x41a25e(0x20a),'description':a115_0x41a25e(0x1eb),'default':![]}],createFlags=[{'name':'name','type':'string','description':a115_0x41a25e(0x203)},{'name':'env','type':a115_0x41a25e(0x1ee),'description':'Target\x20environment'},{'name':a115_0x41a25e(0x1ea),'type':'string','description':a115_0x41a25e(0x1f6)}],upgradeFlags=[{'name':a115_0x41a25e(0x1e4),'type':a115_0x41a25e(0x20a),'description':a115_0x41a25e(0x204),'default':![]}];export const projectDefinitions=[{'service':a115_0x41a25e(0x1ec),'command':a115_0x41a25e(0x1f5),'description':a115_0x41a25e(0x1e8),'risk':a115_0x41a25e(0x1e7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initFlags,async 'execute'(_0x4ae009){const _0x57e4c9=a115_0x41a25e;return await initConfig({'appcode':_0x4ae009[_0x57e4c9(0x1ff)](_0x57e4c9(0x1ea))||undefined,'env':_0x4ae009[_0x57e4c9(0x1ff)](_0x57e4c9(0x1e3))||undefined,'autoYes':_0x4ae009['bool'](_0x57e4c9(0x1e4))}),{'ok':!![]};}},{'service':a115_0x41a25e(0x1ec),'command':a115_0x41a25e(0x1e2),'description':'Create\x20a\x20new\x20project','risk':a115_0x41a25e(0x1e7),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a115_0x41a25e(0x205),'description':a115_0x41a25e(0x207),'required':![]}],'flags':createFlags,async 'execute'(_0x20b371){const _0x447d4f=a115_0x41a25e,{createApp:_0x21d20f}=await import(_0x447d4f(0x1fe)),{createProjectNonInteractive:_0x4a13ef}=await import(_0x447d4f(0x1f0)),_0x3c4343=_0x20b371[_0x447d4f(0x1ff)]('name')[_0x447d4f(0x1f3)]()||_0x20b371[_0x447d4f(0x200)][0x0]?.[_0x447d4f(0x1f3)](),_0x496384=_0x20b371['str']('env')||undefined,_0x3a66f7=_0x20b371[_0x447d4f(0x1ff)](_0x447d4f(0x1ea))||undefined;if(_0x20b371['nonInteractive']){if(!_0x3c4343)throw CliErrors['validation'](_0x447d4f(0x1f7),_0x447d4f(0x1e5)+CLI_BIN_NAME+_0x447d4f(0x1e9));await _0x4a13ef(_0x3c4343,_0x496384,_0x3a66f7,_0x20b371[_0x447d4f(0x201)]);}else await _0x21d20f({'projectCode':_0x3c4343,'appCode':_0x3a66f7,'env':_0x496384,'cookie':_0x20b371[_0x447d4f(0x201)]});return{'ok':!![]};}},{'service':a115_0x41a25e(0x1ec),'command':a115_0x41a25e(0x1f1),'description':a115_0x41a25e(0x1f9),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x229518){const _0x43afed=a115_0x41a25e;return await upgradeApp(_0x229518[_0x43afed(0x1f4)],{'yes':_0x229518[_0x43afed(0x1e0)]('yes')}),{'ok':!![]};}}];
@@ -1 +1 @@
1
- (function(_0x338340,_0x1d274d){const _0x2f453d=a116_0xaf14,_0x58ccc9=_0x338340();while(!![]){try{const _0x3167f1=-parseInt(_0x2f453d(0xbe))/0x1*(-parseInt(_0x2f453d(0xaa))/0x2)+-parseInt(_0x2f453d(0xcb))/0x3*(-parseInt(_0x2f453d(0xb8))/0x4)+parseInt(_0x2f453d(0xbb))/0x5+-parseInt(_0x2f453d(0xc4))/0x6+-parseInt(_0x2f453d(0xbc))/0x7+parseInt(_0x2f453d(0xc5))/0x8+-parseInt(_0x2f453d(0xc0))/0x9;if(_0x3167f1===_0x1d274d)break;else _0x58ccc9['push'](_0x58ccc9['shift']());}catch(_0x275913){_0x58ccc9['push'](_0x58ccc9['shift']());}}}(a116_0xa66f,0xd4e0e));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';function a116_0xaf14(_0x1b3379,_0x4c2904){_0x1b3379=_0x1b3379-0x9f;const _0xa66fa3=a116_0xa66f();let _0xaf1460=_0xa66fa3[_0x1b3379];return _0xaf1460;}import a116_0x464d19 from'chalk';function a116_0xa66f(){const _0x1f7888=['Please\x20enter\x20App\x20Code:','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','apps','toLocaleString','join','version','\x20\x20Default:\x20','.rabetbase.json','\x20\x20appcode:\x20','6350468mhWEXP','string','yellow','1240465ISRSkm','2336845MYkfBP','Migration\x20cancelled.\x20Run\x20`','5kGCacY','../..','12405186zWxjDE','green','1.0.0','?\x20(Old\x20file\x20→\x20*.bak)','9453936SRulkx','9603520mURIwA','defaultApp','env','log','\x20api\x20pull\x27','appcode','3gLnQSa','bold','package.json','\x20api\x20generate\x27\x20and\x20\x27','\x20project\x20init`\x20to\x20start\x20fresh.','parse','gray','utf8','keys','\x20\x20Apps:\x20','App\x20Code\x20cannot\x20be\x20empty','.bak','info','从旧配置文件升级成功','app','Invalid\x20App\x20Code','449458efWUMw','trim','production','cyan','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory'];a116_0xa66f=function(){return _0x1f7888;};return a116_0xa66f();}import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x13c4d0){const _0x66ca5e=a116_0xaf14,{appcode:_0x52eb66,env:_0x243702,autoYes:_0x10ca53}=_0x13c4d0,_0x23ca69=process['cwd']();if(getProjectConfigPath())throw new Error(_0x66ca5e(0xb0));let _0x38f1be;for(const _0x521cbf of LEGACY_CONFIG_NAMES){const _0x43eb9d=resolve(_0x23ca69,_0x521cbf);if(existsSync(_0x43eb9d)){_0x38f1be=_0x43eb9d;break;}}if(_0x38f1be){let _0x2577d6={};try{_0x2577d6=JSON['parse'](readFileSync(_0x38f1be,_0x66ca5e(0xa1)));}catch{}const _0x335ffa=basename(_0x38f1be),_0x23de76=_0x2577d6?.[_0x66ca5e(0xca)]||_0x2577d6?.['app'];let _0x1725d6=_0x10ca53;!_0x10ca53&&(console['log'](a116_0x464d19[_0x66ca5e(0xba)]('⚠\x20Found\x20legacy\x20configuration\x20file:\x20'+a116_0x464d19[_0x66ca5e(0xcc)](_0x335ffa))),_0x23de76&&console[_0x66ca5e(0xc8)](a116_0x464d19[_0x66ca5e(0xad)](_0x66ca5e(0xb7)+_0x23de76)),_0x1725d6=await confirm({'message':'Upgrade\x20it\x20to\x20'+a116_0x464d19[_0x66ca5e(0xcc)](_0x66ca5e(0xb6))+_0x66ca5e(0xc3),'default':!![]}));if(!_0x1725d6){console[_0x66ca5e(0xc8)](_0x66ca5e(0xbd)+CLI_BIN_NAME+_0x66ca5e(0xcf));return;}const _0x2b17a6=resolve(_0x23ca69,NEW_CONFIG_NAME),_0x3e0777=getCliVersionFromPkg(),_0x44a6ea=readRawConfig(),_0x6783af=_0x52eb66||(typeof _0x2577d6?.[_0x66ca5e(0xca)]===_0x66ca5e(0xb9)?_0x2577d6['appcode']:undefined)||(typeof _0x2577d6?.[_0x66ca5e(0xa8)]==='string'?_0x2577d6['app']:undefined)||await askAppcode(),_0xc878f7=typeof _0x2577d6?.[_0x66ca5e(0xc7)]===_0x66ca5e(0xb9)?_0x2577d6['env']:typeof _0x44a6ea[_0x66ca5e(0xc7)]===_0x66ca5e(0xb9)?_0x44a6ea[_0x66ca5e(0xc7)]:_0x66ca5e(0xac),_0x307954=buildCanonicalProjectConfig({..._0x44a6ea,..._0x2577d6},{'appCodes':[_0x6783af],'env':_0xc878f7,'metadata':{'version':_0x3e0777,'migratedAt':new Date()[_0x66ca5e(0xb2)](),'migratedFrom':_0x38f1be}});writeConfigFile(_0x2b17a6,_0x307954);const _0x15eabe=_0x38f1be+_0x66ca5e(0xa5);renameSync(_0x38f1be,_0x15eabe),logger['setLogPath'](_0x23ca69),logger[_0x66ca5e(0xa6)]('init',_0x66ca5e(0xa7),{'from':_0x38f1be,'to':_0x2b17a6,'appcode':_0x6783af,'env':_0x307954[_0x66ca5e(0xc7)]}),console[_0x66ca5e(0xc8)](a116_0x464d19[_0x66ca5e(0xc1)]('✓\x20Upgraded\x20'+_0x335ffa+'\x20→\x20.rabetbase.json')),console[_0x66ca5e(0xc8)](a116_0x464d19['cyan'](_0x66ca5e(0xa3)+Object[_0x66ca5e(0xa2)](_0x307954[_0x66ca5e(0xb1)]||{})[_0x66ca5e(0xb3)](',\x20'))),console[_0x66ca5e(0xc8)](a116_0x464d19[_0x66ca5e(0xad)](_0x66ca5e(0xb5)+_0x307954[_0x66ca5e(0xc6)])),console['log'](a116_0x464d19[_0x66ca5e(0xa0)]('\x20\x20Old\x20file\x20backed\x20up\x20as\x20'+_0x335ffa+'.bak'));return;}const _0x53e5a2=_0x52eb66||await askAppcode(),_0x106fa7=resolve(_0x23ca69,NEW_CONFIG_NAME),_0x54d09a=getCliVersionFromPkg(),_0x820523=readRawConfig(),_0x20b9d7=typeof _0x820523[_0x66ca5e(0xc7)]===_0x66ca5e(0xb9)?_0x820523[_0x66ca5e(0xc7)]:undefined,_0x5c04c2=buildCanonicalProjectConfig({},{'appCodes':[_0x53e5a2],'env':_0x243702||_0x20b9d7||'production','metadata':{'version':_0x54d09a,'createdAt':new Date()[_0x66ca5e(0xb2)]()}});writeConfigFile(_0x106fa7,_0x5c04c2),logger['setLogPath'](_0x23ca69),logger[_0x66ca5e(0xa6)]('init','初始化项目配置文件成功',{'appcode':_0x53e5a2,'env':_0x5c04c2['env'],'version':_0x5c04c2['version'],'configPath':_0x106fa7}),console[_0x66ca5e(0xc8)](a116_0x464d19['green'](_0x66ca5e(0xae))),console[_0x66ca5e(0xc8)](a116_0x464d19[_0x66ca5e(0xad)](_0x66ca5e(0xa3)+Object[_0x66ca5e(0xa2)](_0x5c04c2[_0x66ca5e(0xb1)]||{})[_0x66ca5e(0xb3)](',\x20'))),console['log'](a116_0x464d19['cyan'](_0x66ca5e(0xb5)+_0x5c04c2['defaultApp'])),console[_0x66ca5e(0xc8)]('\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27'+CLI_BIN_NAME+_0x66ca5e(0xce)+CLI_BIN_NAME+_0x66ca5e(0xc9));}function askAppcode(){const _0x4aa63c=a116_0xaf14;return input({'message':_0x4aa63c(0xaf),'validate':_0x12a46b=>{const _0x5d4f5f=_0x4aa63c;if(!_0x12a46b[_0x5d4f5f(0xab)]())return _0x5d4f5f(0xa4);const {valid:_0x606ce2,message:_0x3b1ffb}=validateAppcode(_0x12a46b[_0x5d4f5f(0xab)]());return _0x606ce2||_0x3b1ffb||_0x5d4f5f(0xa9);}});}function getCliVersionFromPkg(){const _0x41d1d7=a116_0xaf14;try{const _0x3f7b54=fileURLToPath(import.meta.url),_0x1bbb89=resolve(dirname(_0x3f7b54),_0x41d1d7(0xbf)),_0x421109=JSON[_0x41d1d7(0x9f)](readFileSync(resolve(_0x1bbb89,_0x41d1d7(0xcd)),_0x41d1d7(0xa1)));return _0x421109[_0x41d1d7(0xb4)]||_0x41d1d7(0xc2);}catch{return _0x41d1d7(0xc2);}}
1
+ (function(_0x46e578,_0x1ac099){const _0x4a30e2=a116_0x3c7c,_0x4aa638=_0x46e578();while(!![]){try{const _0x29f54e=parseInt(_0x4a30e2(0xa8))/0x1*(parseInt(_0x4a30e2(0x8d))/0x2)+-parseInt(_0x4a30e2(0x8f))/0x3+parseInt(_0x4a30e2(0x9f))/0x4+-parseInt(_0x4a30e2(0x83))/0x5+-parseInt(_0x4a30e2(0xa1))/0x6*(parseInt(_0x4a30e2(0xa0))/0x7)+parseInt(_0x4a30e2(0x9c))/0x8+-parseInt(_0x4a30e2(0x7f))/0x9;if(_0x29f54e===_0x1ac099)break;else _0x4aa638['push'](_0x4aa638['shift']());}catch(_0x1c7975){_0x4aa638['push'](_0x4aa638['shift']());}}}(a116_0x5544,0xaa2a2));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a116_0x4b1c4d from'chalk';function a116_0x3c7c(_0x3aefcd,_0xb4586e){_0x3aefcd=_0x3aefcd-0x7d;const _0x55442f=a116_0x5544();let _0x3c7c8e=_0x55442f[_0x3aefcd];return _0x3c7c8e;}import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x3b11b9){const _0x32d837=a116_0x3c7c,{appcode:_0x177359,env:_0x38ee7a,autoYes:_0x2d3fbd}=_0x3b11b9,_0xce2525=process['cwd']();if(getProjectConfigPath())throw new Error(_0x32d837(0x8b));let _0x36e33d;for(const _0x5454d4 of LEGACY_CONFIG_NAMES){const _0x214f83=resolve(_0xce2525,_0x5454d4);if(existsSync(_0x214f83)){_0x36e33d=_0x214f83;break;}}if(_0x36e33d){let _0x199d2a={};try{_0x199d2a=JSON[_0x32d837(0x8c)](readFileSync(_0x36e33d,_0x32d837(0x88)));}catch{}const _0xb74af7=basename(_0x36e33d),_0x2ce191=_0x199d2a?.[_0x32d837(0x89)]||_0x199d2a?.[_0x32d837(0x90)];let _0x4d8b92=_0x2d3fbd;!_0x2d3fbd&&(console[_0x32d837(0x87)](a116_0x4b1c4d['yellow'](_0x32d837(0x9d)+a116_0x4b1c4d[_0x32d837(0xa2)](_0xb74af7))),_0x2ce191&&console[_0x32d837(0x87)](a116_0x4b1c4d['cyan'](_0x32d837(0x81)+_0x2ce191)),_0x4d8b92=await confirm({'message':_0x32d837(0xaa)+a116_0x4b1c4d[_0x32d837(0xa2)](_0x32d837(0xa7))+_0x32d837(0x82),'default':!![]}));if(!_0x4d8b92){console[_0x32d837(0x87)](_0x32d837(0x91)+CLI_BIN_NAME+'\x20project\x20init`\x20to\x20start\x20fresh.');return;}const _0x327d4a=resolve(_0xce2525,NEW_CONFIG_NAME),_0x322029=getCliVersionFromPkg(),_0x1efc18=readRawConfig(),_0x4c87d8=_0x177359||(typeof _0x199d2a?.[_0x32d837(0x89)]===_0x32d837(0x9a)?_0x199d2a[_0x32d837(0x89)]:undefined)||(typeof _0x199d2a?.[_0x32d837(0x90)]===_0x32d837(0x9a)?_0x199d2a[_0x32d837(0x90)]:undefined)||await askAppcode(),_0xde1013=typeof _0x199d2a?.[_0x32d837(0x92)]==='string'?_0x199d2a['env']:typeof _0x1efc18['env']==='string'?_0x1efc18[_0x32d837(0x92)]:_0x32d837(0xad),_0x3047b0=buildCanonicalProjectConfig({..._0x1efc18,..._0x199d2a},{'appCodes':[_0x4c87d8],'env':_0xde1013,'metadata':{'version':_0x322029,'migratedAt':new Date()['toLocaleString'](),'migratedFrom':_0x36e33d}});writeConfigFile(_0x327d4a,_0x3047b0);const _0x4490d4=_0x36e33d+'.bak';renameSync(_0x36e33d,_0x4490d4),logger[_0x32d837(0x85)](_0xce2525),logger[_0x32d837(0x9b)]('init',_0x32d837(0xa3),{'from':_0x36e33d,'to':_0x327d4a,'appcode':_0x4c87d8,'env':_0x3047b0[_0x32d837(0x92)]}),console['log'](a116_0x4b1c4d[_0x32d837(0x84)](_0x32d837(0x95)+_0xb74af7+'\x20→\x20.rabetbase.json')),console[_0x32d837(0x87)](a116_0x4b1c4d[_0x32d837(0x96)]('\x20\x20Apps:\x20'+Object[_0x32d837(0xae)](_0x3047b0[_0x32d837(0x8a)]||{})[_0x32d837(0x80)](',\x20'))),console['log'](a116_0x4b1c4d[_0x32d837(0x96)](_0x32d837(0x94)+_0x3047b0[_0x32d837(0x99)])),console[_0x32d837(0x87)](a116_0x4b1c4d[_0x32d837(0xa4)]('\x20\x20Old\x20file\x20backed\x20up\x20as\x20'+_0xb74af7+_0x32d837(0x98)));return;}const _0x58f94c=_0x177359||await askAppcode(),_0x452efa=resolve(_0xce2525,NEW_CONFIG_NAME),_0x48626c=getCliVersionFromPkg(),_0x2d0b7=readRawConfig(),_0x1edd44=typeof _0x2d0b7[_0x32d837(0x92)]==='string'?_0x2d0b7['env']:undefined,_0x141873=buildCanonicalProjectConfig({},{'appCodes':[_0x58f94c],'env':_0x38ee7a||_0x1edd44||_0x32d837(0xad),'metadata':{'version':_0x48626c,'createdAt':new Date()[_0x32d837(0xa5)]()}});writeConfigFile(_0x452efa,_0x141873),logger['setLogPath'](_0xce2525),logger['info'](_0x32d837(0x93),_0x32d837(0xa6),{'appcode':_0x58f94c,'env':_0x141873['env'],'version':_0x141873[_0x32d837(0xac)],'configPath':_0x452efa}),console[_0x32d837(0x87)](a116_0x4b1c4d['green'](_0x32d837(0x8e))),console['log'](a116_0x4b1c4d['cyan']('\x20\x20Apps:\x20'+Object['keys'](_0x141873[_0x32d837(0x8a)]||{})[_0x32d837(0x80)](',\x20'))),console[_0x32d837(0x87)](a116_0x4b1c4d['cyan'](_0x32d837(0x94)+_0x141873[_0x32d837(0x99)])),console[_0x32d837(0x87)]('\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27'+CLI_BIN_NAME+'\x20api\x20generate\x27\x20and\x20\x27'+CLI_BIN_NAME+'\x20api\x20pull\x27');}function askAppcode(){const _0x9bdbdd=a116_0x3c7c;return input({'message':_0x9bdbdd(0x86),'validate':_0x4572f4=>{const _0x16fe56=_0x9bdbdd;if(!_0x4572f4[_0x16fe56(0x7e)]())return _0x16fe56(0xab);const {valid:_0xe60dc3,message:_0x49eddb}=validateAppcode(_0x4572f4['trim']());return _0xe60dc3||_0x49eddb||_0x16fe56(0x9e);}});}function a116_0x5544(){const _0x8d545f=['production','keys','../..','trim','1815354gtAwpD','join','\x20\x20appcode:\x20','?\x20(Old\x20file\x20→\x20*.bak)','2371455erbKwa','green','setLogPath','Please\x20enter\x20App\x20Code:','log','utf8','appcode','apps','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','parse','2XjtojQ','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','800796MfJsuj','app','Migration\x20cancelled.\x20Run\x20`','env','init','\x20\x20Default:\x20','✓\x20Upgraded\x20','cyan','1.0.0','.bak','defaultApp','string','info','8367672nVlgvP','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','Invalid\x20App\x20Code','1248976HECQlx','7xDdrtb','3790788EJJQvj','bold','从旧配置文件升级成功','gray','toLocaleString','初始化项目配置文件成功','.rabetbase.json','913518DSYXqI','package.json','Upgrade\x20it\x20to\x20','App\x20Code\x20cannot\x20be\x20empty','version'];a116_0x5544=function(){return _0x8d545f;};return a116_0x5544();}function getCliVersionFromPkg(){const _0x39c3f6=a116_0x3c7c;try{const _0x3878d8=fileURLToPath(import.meta.url),_0x2eb48d=resolve(dirname(_0x3878d8),_0x39c3f6(0x7d)),_0x1547d8=JSON[_0x39c3f6(0x8c)](readFileSync(resolve(_0x2eb48d,_0x39c3f6(0xa9)),'utf8'));return _0x1547d8[_0x39c3f6(0xac)]||_0x39c3f6(0x97);}catch{return _0x39c3f6(0x97);}}
@@ -1 +1 @@
1
- const a117_0x143f15=a117_0x1695;(function(_0x43402c,_0x27bf80){const _0x232c82=a117_0x1695,_0x41b6d4=_0x43402c();while(!![]){try{const _0x3a0866=parseInt(_0x232c82(0x1ea))/0x1+-parseInt(_0x232c82(0x223))/0x2+-parseInt(_0x232c82(0x227))/0x3+-parseInt(_0x232c82(0x212))/0x4+parseInt(_0x232c82(0x23c))/0x5*(parseInt(_0x232c82(0x21e))/0x6)+-parseInt(_0x232c82(0x21f))/0x7+-parseInt(_0x232c82(0x1da))/0x8*(-parseInt(_0x232c82(0x213))/0x9);if(_0x3a0866===_0x27bf80)break;else _0x41b6d4['push'](_0x41b6d4['shift']());}catch(_0x20689e){_0x41b6d4['push'](_0x41b6d4['shift']());}}}(a117_0x1480,0xcd0cb));import a117_0x245bc0 from'chalk';import a117_0x33dda3 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';function a117_0x1480(){const _0x52943e=['mcpServers','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','Step\x201/7:\x20Migrating\x20config...','step','.cursor/mcp.json','\x20(backup:\x20','status','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','[\x22@lovrabet/sdk\x22]:\x20','white','exit\x20','bold','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','.claude/skills/lovrabet','args','\x20removed\x20(','Install\x20new\x20skill','push','oldPath','sdkUpgrade','993505rgxDWR','entries','parse','none\x20found','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','no\x20matching\x20entry\x20found','values','===\x20Upgrade\x20Summary\x20===','\x20→\x20latest','\x20\x20\x20\x20\x20\x20\x20','red','succeed','.bak','.lovrabet','\x20removed','start','Config\x20migration','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','gray','string','join','Remove\x20legacy\x20artifacts','Remove\x20.lovrabet/','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','@lovrabet/dataset-mcp-server','fail','yes','lovrabet/lovrabet-skill\x20removed','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','stringify','Upgrade\x20@lovrabet/sdk','24365400cAfRCH','files','CANCEL','skipped','Skill\x20swap:','package.json','not\x20needed','Config\x20file:','object','label','removed\x20','lovrabet/rabetbase\x20installed\x20globally','.cursor/rules/lovrabet_rules.mdc','oldArtifacts','utf8','dependencies','611165xFZfxL','Step\x204/7:\x20MCP\x20config\x20—\x20','some','not\x20found\x20or\x20already\x20at\x20latest','devDependencies','Legacy\x20artifacts:','MCP\x20config:','@lovrabet/sdk:','FAIL','green','cyan','needed','Remove\x20old\x20skill','configMigration','done','oldMcpConfig','filter','not\x20found\x20(will\x20create)','Clean\x20MCP\x20config','keys','info','length','log','already\x20exists\x20(will\x20merge)','Step\x201/7:\x20Config\x20migration\x20—\x20','yellow','inherit','failed','\x20\x20New\x20config\x20(.rabetbase.json):\x20','message','latest','Upgrade\x20cancelled.','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','Upgrade\x20completed\x20successfully!','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','undefined','error','isDirectory','@lovrabet/sdk','cwd','5824568nONWIl','9JceBgS','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','isArray','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','detail','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','\x20\x20Step\x20','\x20\x20npm\x20install','no\x20legacy\x20entry','\x20→\x20','\x20\x20#\x20or','6qYVApY','1706208UwyRXp','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','hasNewConfig','path','1247410HCwYPX','no\x20legacy\x20config\x20found','\x20\x20Fields\x20to\x20migrate:\x20','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','2076201rBiYZC'];a117_0x1480=function(){return _0x52943e;};return a117_0x1480();}const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a117_0x143f15(0x1fa)](_0x167dac=>_0x167dac!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x5bda95){const _0x1573da=a117_0x143f15,_0x447ca0=[];for(const _0xfd6fcd of Object[_0x1573da(0x242)](CORE_IDE_CONFIGS)){if(_0xfd6fcd[_0x1573da(0x1db)])for(const _0x55afc5 of _0xfd6fcd[_0x1573da(0x1db)]){_0x447ca0[_0x1573da(0x239)](resolve(_0x5bda95,_0x55afc5[_0x1573da(0x222)]));}}return _0x447ca0;}function analyse(_0x4208ad){const _0x45f9ee=a117_0x143f15;let _0x4f3f10=null;const _0x57b35f=resolve(_0x4208ad,NEW_CONFIG_NAME),_0x265c55=existsSync(_0x57b35f);for(const _0x3a3b94 of LEGACY_CONFIG_NAMES){const _0x38ceb5=resolve(_0x4208ad,_0x3a3b94);if(existsSync(_0x38ceb5)){const _0x52e242=readConfigFile(_0x38ceb5),_0x756342=Object[_0x45f9ee(0x1fd)](_0x52e242)[_0x45f9ee(0x1fa)](_0x2d73db=>typeof _0x52e242[_0x2d73db]!==_0x45f9ee(0x20d));_0x4f3f10={'oldPath':_0x38ceb5,'hasNewConfig':_0x265c55,'fields':_0x756342};break;}}const _0x58884b=[],_0x16d22c=resolve(_0x4208ad,_0x45f9ee(0x249));if(existsSync(_0x16d22c))_0x58884b[_0x45f9ee(0x239)](_0x16d22c);const _0x53e308=resolve(_0x4208ad,_0x45f9ee(0x1e6));if(existsSync(_0x53e308))_0x58884b[_0x45f9ee(0x239)](_0x53e308);const _0xfaceaf=resolve(_0x4208ad,_0x45f9ee(0x235));if(existsSync(_0xfaceaf))_0x58884b[_0x45f9ee(0x239)](_0xfaceaf);for(const _0x40bdb4 of collectIdeSkillFiles(_0x4208ad)){if(existsSync(_0x40bdb4))_0x58884b[_0x45f9ee(0x239)](_0x40bdb4);}let _0x1ace58=null;const _0x16a943=resolve(_0x4208ad,_0x45f9ee(0x22c));if(existsSync(_0x16a943))try{const _0xf12f2f=JSON[_0x45f9ee(0x23e)](readFileSync(_0x16a943,_0x45f9ee(0x1e8)));if(_0xf12f2f?.['mcpServers']&&typeof _0xf12f2f[_0x45f9ee(0x228)]===_0x45f9ee(0x1e2)){const _0x20a1af=[];for(const [_0x39b8d0,_0x5e5e9c]of Object['entries'](_0xf12f2f[_0x45f9ee(0x228)])){const _0x54a3f1=_0x5e5e9c;_0x54a3f1?.[_0x45f9ee(0x236)]&&Array[_0x45f9ee(0x215)](_0x54a3f1[_0x45f9ee(0x236)])&&_0x54a3f1[_0x45f9ee(0x236)][_0x45f9ee(0x1ec)](_0x1b2fa7=>typeof _0x1b2fa7===_0x45f9ee(0x1ce)&&_0x1b2fa7['includes']('@lovrabet/dataset-mcp-server'))&&_0x20a1af[_0x45f9ee(0x239)](_0x39b8d0);}_0x20a1af[_0x45f9ee(0x1ff)]>0x0&&(_0x1ace58={'path':_0x16a943,'keys':_0x20a1af});}}catch{}const _0x2f727e=_0x58884b[_0x45f9ee(0x1ff)]>0x0||_0x4f3f10!==null;let _0x2ddf0a=null;const _0xe498b2=resolve(_0x4208ad,_0x45f9ee(0x1df));if(existsSync(_0xe498b2))try{const _0x2b5586=JSON['parse'](readFileSync(_0xe498b2,_0x45f9ee(0x1e8)));for(const _0x20e23e of[_0x45f9ee(0x1e9),_0x45f9ee(0x1ee)]){const _0x138431=_0x2b5586?.[_0x20e23e]?.[_0x45f9ee(0x210)];if(typeof _0x138431===_0x45f9ee(0x1ce)){_0x138431!==_0x45f9ee(0x208)&&(_0x2ddf0a={'pkgPath':_0xe498b2,'currentVersion':_0x138431,'field':_0x20e23e});break;}}}catch{}return{'configMigration':_0x4f3f10,'oldArtifacts':_0x58884b,'oldMcpConfig':_0x1ace58,'needsSkillSwap':_0x2f727e,'sdkUpgrade':_0x2ddf0a};}function a117_0x1695(_0x1cf228,_0x14c8b9){_0x1cf228=_0x1cf228-0x1cd;const _0x1480e3=a117_0x1480();let _0x1695f2=_0x1480e3[_0x1cf228];return _0x1695f2;}function printReport(_0x1904f0){const _0x556c86=a117_0x143f15,{configMigration:_0x1c1e8b,oldArtifacts:_0x22a381,oldMcpConfig:_0x5db8d6,needsSkillSwap:_0x2ea57b}=_0x1904f0;console[_0x556c86(0x200)](''),console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x233)]('===\x20Upgrade\x20Analysis\x20===')),console['log']('');_0x1c1e8b?(console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)](_0x556c86(0x1e1))+('\x20\x20'+a117_0x245bc0['yellow'](_0x1c1e8b['oldPath']))),console[_0x556c86(0x200)](_0x556c86(0x206)+(_0x1c1e8b[_0x556c86(0x221)]?a117_0x245bc0[_0x556c86(0x1f3)](_0x556c86(0x201)):a117_0x245bc0[_0x556c86(0x1cd)](_0x556c86(0x1fb)))),console[_0x556c86(0x200)](_0x556c86(0x225)+_0x1c1e8b['fields'][_0x556c86(0x1cf)](',\x20')),console[_0x556c86(0x200)](_0x556c86(0x218))):console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)](_0x556c86(0x1e1))+'\x20\x20'+a117_0x245bc0[_0x556c86(0x1cd)](_0x556c86(0x224)));console['log']('');if(_0x22a381[_0x556c86(0x1ff)]>0x0){console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)]('Legacy\x20artifacts:'));for(const _0x50fc40 of _0x22a381){console[_0x556c86(0x200)]('\x20\x20'+a117_0x245bc0[_0x556c86(0x246)]('FOUND')+'\x20\x20'+_0x50fc40);}console[_0x556c86(0x200)]('\x20\x20Action:\x20delete');}else console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)](_0x556c86(0x1ef))+'\x20\x20'+a117_0x245bc0[_0x556c86(0x1cd)](_0x556c86(0x23f)));console[_0x556c86(0x200)]('');_0x5db8d6?(console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)](_0x556c86(0x1f0))+('\x20\x20'+a117_0x245bc0[_0x556c86(0x203)](_0x5db8d6[_0x556c86(0x222)])+'\x20→\x20keys:\x20'+_0x5db8d6[_0x556c86(0x1fd)][_0x556c86(0x1cf)](',\x20'))),console['log'](_0x556c86(0x214))):console['log'](a117_0x245bc0[_0x556c86(0x1f4)]('MCP\x20config:')+'\x20\x20'+a117_0x245bc0[_0x556c86(0x1cd)](_0x556c86(0x21b)));console['log'](''),console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)](_0x556c86(0x1de))+('\x20\x20'+(_0x2ea57b?a117_0x245bc0['yellow'](_0x556c86(0x1f5)):a117_0x245bc0['green'](_0x556c86(0x1e0)))));_0x2ea57b&&console['log'](_0x556c86(0x1d7)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x556c86(0x200)]('');if(_0x1904f0[_0x556c86(0x23b)]){const {currentVersion:_0x4c921e,field:_0x10797c,pkgPath:_0xb72cfe}=_0x1904f0[_0x556c86(0x23b)];console[_0x556c86(0x200)](a117_0x245bc0['cyan'](_0x556c86(0x1f1))+('\x20\x20'+a117_0x245bc0['yellow'](_0xb72cfe))),console[_0x556c86(0x200)]('\x20\x20Current\x20version\x20in\x20'+_0x10797c+':\x20'+a117_0x245bc0['yellow'](_0x4c921e)+_0x556c86(0x21c)+a117_0x245bc0[_0x556c86(0x1f3)](_0x556c86(0x208))),console[_0x556c86(0x200)]('\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)');}else console[_0x556c86(0x200)](a117_0x245bc0['cyan'](_0x556c86(0x1f1))+'\x20\x20'+a117_0x245bc0['gray'](_0x556c86(0x1ed)));console['log']('');}function execConfigMigration(_0x2d9893,_0x2adc12){const _0x1937df=a117_0x143f15,{configMigration:_0x59e323}=_0x2d9893;if(!_0x59e323?.[_0x1937df(0x23a)])return{'step':0x1,'label':_0x1937df(0x24c),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x345cdc=readConfigFile(_0x59e323[_0x1937df(0x23a)]),_0xc9269c=resolve(_0x2adc12,NEW_CONFIG_NAME),_0x1b8e1a=_0x59e323[_0x1937df(0x221)]?readConfigFile(_0xc9269c):{};for(const [_0xe92445,_0x2ce919]of Object[_0x1937df(0x23d)](_0x345cdc)){!(_0xe92445 in _0x1b8e1a)&&(_0x1b8e1a[_0xe92445]=_0x2ce919);}writeConfigFile(_0xc9269c,_0x1b8e1a);const _0x42e48e=_0x59e323[_0x1937df(0x23a)]+_0x1937df(0x248);return renameSync(_0x59e323['oldPath'],_0x42e48e),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x59e323[_0x1937df(0x23a)]+'\x20→\x20'+_0xc9269c+_0x1937df(0x22d)+_0x42e48e+')'};}function execRemoveOldArtifacts(_0x489b32){const _0x4232fd=a117_0x143f15,_0x5426a9=[];for(const _0x2dd8e4 of _0x489b32){try{if(!existsSync(_0x2dd8e4))continue;const _0x43f706=tryStat(_0x2dd8e4);_0x43f706?.[_0x4232fd(0x20f)]()?rmSync(_0x2dd8e4,{'recursive':!![],'force':!![]}):unlinkSync(_0x2dd8e4);}catch(_0x4c3aee){_0x5426a9[_0x4232fd(0x239)](_0x2dd8e4+':\x20'+_0x4c3aee[_0x4232fd(0x207)]);}}return{'step':0x3,'label':_0x4232fd(0x1d0),'ok':_0x5426a9[_0x4232fd(0x1ff)]===0x0,'detail':_0x5426a9[_0x4232fd(0x1ff)]>0x0?_0x489b32[_0x4232fd(0x1ff)]-_0x5426a9[_0x4232fd(0x1ff)]+'/'+_0x489b32[_0x4232fd(0x1ff)]+_0x4232fd(0x237)+_0x5426a9['join'](';\x20')+')':_0x489b32[_0x4232fd(0x1ff)]+_0x4232fd(0x24a)};}function execCleanMcp(_0x4f7bfc){const _0x4ccff2=a117_0x143f15;if(!_0x4f7bfc[_0x4ccff2(0x1f9)])return{'step':0x4,'label':_0x4ccff2(0x1fc),'ok':!![],'detail':_0x4ccff2(0x1dd)};try{const _0x2cf854=readFileSync(_0x4f7bfc[_0x4ccff2(0x1f9)][_0x4ccff2(0x222)],_0x4ccff2(0x1e8)),_0x5d41d6=JSON['parse'](_0x2cf854);if(_0x5d41d6?.[_0x4ccff2(0x228)]&&typeof _0x5d41d6[_0x4ccff2(0x228)]===_0x4ccff2(0x1e2)){const _0x296235=[];for(const [_0x2cef77,_0x609dfa]of Object['entries'](_0x5d41d6['mcpServers'])){_0x609dfa?.['args']&&Array[_0x4ccff2(0x215)](_0x609dfa[_0x4ccff2(0x236)])&&_0x609dfa[_0x4ccff2(0x236)]['some'](_0x5560e2=>typeof _0x5560e2===_0x4ccff2(0x1ce)&&_0x5560e2['includes'](_0x4ccff2(0x1d3)))&&_0x296235[_0x4ccff2(0x239)](_0x2cef77);}for(const _0x540747 of _0x296235){delete _0x5d41d6['mcpServers'][_0x540747];}return _0x296235[_0x4ccff2(0x1ff)]>0x0&&writeFileSync(_0x4f7bfc[_0x4ccff2(0x1f9)][_0x4ccff2(0x222)],JSON[_0x4ccff2(0x1d8)](_0x5d41d6,null,0x2)+'\x0a',_0x4ccff2(0x1e8)),{'step':0x4,'label':_0x4ccff2(0x1fc),'ok':!![],'detail':_0x4ccff2(0x1e4)+_0x296235[_0x4ccff2(0x1cf)](',\x20')+'\x20from\x20'+_0x4f7bfc[_0x4ccff2(0x1f9)][_0x4ccff2(0x222)]};}return{'step':0x4,'label':_0x4ccff2(0x1fc),'ok':!![],'detail':_0x4ccff2(0x241)};}catch(_0x37ead8){return{'step':0x4,'label':_0x4ccff2(0x1fc),'ok':![],'detail':_0x37ead8[_0x4ccff2(0x207)]};}}function execSkillsRemove(_0x76b7ee,_0x353c06){const _0x1d65b7=a117_0x143f15,_0x3247cd=runNpxSkillsRemove(_0x76b7ee,{'stdio':_0x1d65b7(0x204),'yes':_0x353c06});return{'step':0x5,'label':_0x1d65b7(0x1f6),'ok':_0x3247cd['ok'],'detail':_0x3247cd['ok']?_0x1d65b7(0x1d6):_0x3247cd[_0x1d65b7(0x20e)]??_0x1d65b7(0x232)+_0x3247cd[_0x1d65b7(0x22e)]};}function execSkillsAdd(_0x29f310,_0x2a0ac6){const _0x13fc55=a117_0x143f15,_0x505c2e=runNpxSkillsAddGlobal(_0x29f310,'lovrabet/rabetbase',{'stdio':_0x13fc55(0x204),'yes':_0x2a0ac6});return{'step':0x6,'label':_0x13fc55(0x238),'ok':_0x505c2e['ok'],'detail':_0x505c2e['ok']?_0x13fc55(0x1e5):_0x505c2e[_0x13fc55(0x20e)]??_0x13fc55(0x232)+_0x505c2e[_0x13fc55(0x22e)]};}function execUpgradeSdk(_0x384677){const _0x34feef=a117_0x143f15;if(!_0x384677[_0x34feef(0x23b)])return{'step':0x7,'label':_0x34feef(0x1d9),'ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0x3f3558,currentVersion:_0x332cad,field:_0x31d0fc}=_0x384677[_0x34feef(0x23b)];try{const _0x4e48e6=readFileSync(_0x3f3558,_0x34feef(0x1e8)),_0x5b76e2=JSON['parse'](_0x4e48e6);return _0x5b76e2[_0x31d0fc][_0x34feef(0x210)]=_0x34feef(0x208),writeFileSync(_0x3f3558,JSON[_0x34feef(0x1d8)](_0x5b76e2,null,0x2)+'\x0a',_0x34feef(0x1e8)),{'step':0x7,'label':_0x34feef(0x1d9),'ok':!![],'detail':_0x31d0fc+_0x34feef(0x230)+_0x332cad+_0x34feef(0x244)};}catch(_0x5901a3){return{'step':0x7,'label':_0x34feef(0x1d9),'ok':![],'detail':_0x5901a3[_0x34feef(0x207)]};}}function tryStat(_0x272c47){try{return statSync(_0x272c47);}catch{return undefined;}}function printSummary(_0x53ba2c){const _0x43b9ab=a117_0x143f15;console[_0x43b9ab(0x200)](''),console[_0x43b9ab(0x200)](a117_0x245bc0[_0x43b9ab(0x233)](_0x43b9ab(0x243))),console[_0x43b9ab(0x200)]('');for(const _0xa8141b of _0x53ba2c){const _0x29617e=_0xa8141b['ok']?a117_0x245bc0[_0x43b9ab(0x1f3)]('OK'):a117_0x245bc0['red'](_0x43b9ab(0x1f2));console[_0x43b9ab(0x200)]('\x20\x20'+_0x29617e+_0x43b9ab(0x219)+_0xa8141b[_0x43b9ab(0x22b)]+':\x20'+_0xa8141b[_0x43b9ab(0x1e3)]);if(_0xa8141b['detail'])console[_0x43b9ab(0x200)](_0x43b9ab(0x245)+a117_0x245bc0[_0x43b9ab(0x1cd)](_0xa8141b[_0x43b9ab(0x217)]));}console['log']('');}export async function upgradeApp(_0x1799eb,_0x38a075){const _0x4cd161=a117_0x143f15,_0x4b9483=process[_0x4cd161(0x211)](),_0x36ef27=analyse(_0x4b9483),_0xbfb3ab=!_0x36ef27[_0x4cd161(0x1f7)]&&_0x36ef27[_0x4cd161(0x1e7)]['length']===0x0&&!_0x36ef27[_0x4cd161(0x1f9)]&&!_0x36ef27['needsSkillSwap']&&!_0x36ef27[_0x4cd161(0x23b)];if(_0xbfb3ab){console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x1f3)](_0x4cd161(0x234)));return;}printReport(_0x36ef27);const _0x1cdc41=!!(_0x38a075[_0x4cd161(0x1d5)]||_0x38a075['Y']||_0x1799eb);if(!_0x1cdc41)try{const _0x248263=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x248263){console['log'](a117_0x245bc0[_0x4cd161(0x1cd)](_0x4cd161(0x209)));return;}}catch(_0x5950da){if(_0x5950da?.[_0x4cd161(0x207)]===_0x4cd161(0x1dc)){console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x1cd)](_0x4cd161(0x209)));return;}throw _0x5950da;}const _0x32956a=[],_0x410b54=a117_0x33dda3({'text':_0x4cd161(0x22a),'color':_0x4cd161(0x1f4)})['start'](),_0x2dafb6=execConfigMigration(_0x36ef27,_0x4b9483);_0x32956a[_0x4cd161(0x239)](_0x2dafb6),_0x410b54[_0x2dafb6['ok']?'succeed':_0x4cd161(0x1d4)](_0x4cd161(0x202)+(_0x2dafb6[_0x4cd161(0x217)]??(_0x2dafb6['ok']?_0x4cd161(0x1f8):_0x4cd161(0x205))));const _0x5f2417=resolve(_0x4b9483,'.lovrabet'),_0x4cf0bc=a117_0x33dda3({'text':_0x4cd161(0x229),'color':'cyan'})['start']();if(existsSync(_0x5f2417))try{rmSync(_0x5f2417,{'recursive':!![],'force':!![]}),_0x4cf0bc[_0x4cd161(0x247)](_0x4cd161(0x220)),_0x32956a['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x3dbdce){_0x4cf0bc[_0x4cd161(0x1d4)](_0x4cd161(0x20c)+_0x3dbdce[_0x4cd161(0x207)]),_0x32956a[_0x4cd161(0x239)]({'step':0x2,'label':_0x4cd161(0x1d1),'ok':![],'detail':_0x3dbdce[_0x4cd161(0x207)]});}else _0x4cf0bc[_0x4cd161(0x1fe)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x32956a[_0x4cd161(0x239)]({'step':0x2,'label':_0x4cd161(0x1d1),'ok':!![],'detail':_0x4cd161(0x1dd)});const _0x41872b=a117_0x33dda3({'text':_0x4cd161(0x216),'color':_0x4cd161(0x1f4)})[_0x4cd161(0x24b)](),_0x9367d2=execRemoveOldArtifacts(_0x36ef27[_0x4cd161(0x1e7)]);_0x32956a['push'](_0x9367d2),_0x41872b[_0x9367d2['ok']?_0x4cd161(0x247):_0x4cd161(0x1d4)](_0x4cd161(0x20a)+(_0x9367d2[_0x4cd161(0x217)]??(_0x9367d2['ok']?_0x4cd161(0x1f8):_0x4cd161(0x205))));const _0x36dee7=a117_0x33dda3({'text':'Step\x204/7:\x20Cleaning\x20MCP\x20config...','color':_0x4cd161(0x1f4)})[_0x4cd161(0x24b)](),_0x5c8349=execCleanMcp(_0x36ef27);_0x32956a['push'](_0x5c8349),_0x36dee7[_0x5c8349['ok']?_0x4cd161(0x247):'fail'](_0x4cd161(0x1eb)+(_0x5c8349[_0x4cd161(0x217)]??(_0x5c8349['ok']?'done':_0x4cd161(0x205))));const _0x46add1=a117_0x33dda3({'text':'Step\x205/7:\x20Removing\x20old\x20skill...','color':'cyan'})[_0x4cd161(0x24b)](),_0x33867e=execSkillsRemove(_0x4b9483,_0x1cdc41);_0x32956a[_0x4cd161(0x239)](_0x33867e),_0x46add1[_0x33867e['ok']?_0x4cd161(0x247):'fail']('Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20'+(_0x33867e[_0x4cd161(0x217)]??(_0x33867e['ok']?_0x4cd161(0x1f8):_0x4cd161(0x205))));const _0x28b1db=a117_0x33dda3({'text':'Step\x206/7:\x20Installing\x20new\x20skill...','color':_0x4cd161(0x1f4)})[_0x4cd161(0x24b)](),_0x43c714=execSkillsAdd(_0x4b9483,_0x1cdc41);_0x32956a[_0x4cd161(0x239)](_0x43c714),_0x28b1db[_0x43c714['ok']?_0x4cd161(0x247):'fail'](_0x4cd161(0x22f)+(_0x43c714['detail']??(_0x43c714['ok']?_0x4cd161(0x1f8):_0x4cd161(0x205))));const _0x3dbc15=a117_0x33dda3({'text':_0x4cd161(0x240),'color':_0x4cd161(0x1f4)})[_0x4cd161(0x24b)](),_0x2a5094=execUpgradeSdk(_0x36ef27);_0x32956a[_0x4cd161(0x239)](_0x2a5094),_0x3dbc15[_0x2a5094['ok']?_0x4cd161(0x247):_0x4cd161(0x1d4)](_0x4cd161(0x1d2)+(_0x2a5094[_0x4cd161(0x217)]??(_0x2a5094['ok']?_0x4cd161(0x1f8):_0x4cd161(0x205)))),printSummary(_0x32956a);const _0x4146dc=_0x32956a[_0x4cd161(0x1ec)](_0x1bb185=>!_0x1bb185['ok']);_0x4146dc?console[_0x4cd161(0x200)](a117_0x245bc0['yellow'](_0x4cd161(0x226))):console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x1f3)](_0x4cd161(0x20b))),_0x2a5094['ok']&&_0x36ef27[_0x4cd161(0x23b)]&&(console[_0x4cd161(0x200)](''),console['log'](a117_0x245bc0[_0x4cd161(0x233)][_0x4cd161(0x1f4)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x1f4)](_0x4cd161(0x24d))),console[_0x4cd161(0x200)](''),console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x231)](_0x4cd161(0x21a))),console[_0x4cd161(0x200)](a117_0x245bc0['white'](_0x4cd161(0x21d))),console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x231)]('\x20\x20bun\x20install')),console[_0x4cd161(0x200)](''));}
1
+ (function(_0x10093b,_0x422c9f){const _0x230690=a117_0x22cd,_0x3c4aee=_0x10093b();while(!![]){try{const _0x1866af=-parseInt(_0x230690(0x212))/0x1+-parseInt(_0x230690(0x1fb))/0x2+parseInt(_0x230690(0x1fe))/0x3*(-parseInt(_0x230690(0x203))/0x4)+-parseInt(_0x230690(0x1a5))/0x5*(parseInt(_0x230690(0x1c7))/0x6)+-parseInt(_0x230690(0x202))/0x7*(-parseInt(_0x230690(0x1d9))/0x8)+-parseInt(_0x230690(0x1a4))/0x9*(parseInt(_0x230690(0x19f))/0xa)+parseInt(_0x230690(0x20e))/0xb;if(_0x1866af===_0x422c9f)break;else _0x3c4aee['push'](_0x3c4aee['shift']());}catch(_0x29f512){_0x3c4aee['push'](_0x3c4aee['shift']());}}}(a117_0x42f4,0x6d831));import a117_0x435e8d from'chalk';import a117_0x154fa2 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES['filter'](_0x48a68e=>_0x48a68e!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x918ce6){const _0x49c61c=a117_0x22cd,_0xcf416c=[];for(const _0x1ad336 of Object[_0x49c61c(0x205)](CORE_IDE_CONFIGS)){if(_0x1ad336[_0x49c61c(0x1c6)])for(const _0x352fff of _0x1ad336[_0x49c61c(0x1c6)]){_0xcf416c[_0x49c61c(0x1ff)](resolve(_0x918ce6,_0x352fff[_0x49c61c(0x1d4)]));}}return _0xcf416c;}function analyse(_0x459f1c){const _0x548987=a117_0x22cd;let _0xf9c92d=null;const _0x15ce11=resolve(_0x459f1c,NEW_CONFIG_NAME),_0x118b7b=existsSync(_0x15ce11);for(const _0x3b90bf of LEGACY_CONFIG_NAMES){const _0x1a548c=resolve(_0x459f1c,_0x3b90bf);if(existsSync(_0x1a548c)){const _0x54038d=readConfigFile(_0x1a548c),_0x1f33ea=Object['keys'](_0x54038d)['filter'](_0x2b1137=>typeof _0x54038d[_0x2b1137]!==_0x548987(0x1b4));_0xf9c92d={'oldPath':_0x1a548c,'hasNewConfig':_0x118b7b,'fields':_0x1f33ea};break;}}const _0x508a35=[],_0x139b70=resolve(_0x459f1c,_0x548987(0x1cb));if(existsSync(_0x139b70))_0x508a35[_0x548987(0x1ff)](_0x139b70);const _0x33a248=resolve(_0x459f1c,_0x548987(0x201));if(existsSync(_0x33a248))_0x508a35[_0x548987(0x1ff)](_0x33a248);const _0x4b6706=resolve(_0x459f1c,_0x548987(0x1df));if(existsSync(_0x4b6706))_0x508a35[_0x548987(0x1ff)](_0x4b6706);for(const _0x11cc7d of collectIdeSkillFiles(_0x459f1c)){if(existsSync(_0x11cc7d))_0x508a35['push'](_0x11cc7d);}let _0x2e503d=null;const _0x1df22e=resolve(_0x459f1c,'.cursor/mcp.json');if(existsSync(_0x1df22e))try{const _0x4ea31b=JSON[_0x548987(0x219)](readFileSync(_0x1df22e,'utf8'));if(_0x4ea31b?.['mcpServers']&&typeof _0x4ea31b[_0x548987(0x1f6)]===_0x548987(0x1c2)){const _0xe61f8f=[];for(const [_0x50765a,_0x1f85b5]of Object[_0x548987(0x1ec)](_0x4ea31b[_0x548987(0x1f6)])){const _0xa7784e=_0x1f85b5;_0xa7784e?.[_0x548987(0x1b9)]&&Array['isArray'](_0xa7784e[_0x548987(0x1b9)])&&_0xa7784e[_0x548987(0x1b9)]['some'](_0x46b8d4=>typeof _0x46b8d4===_0x548987(0x1c9)&&_0x46b8d4['includes']('@lovrabet/dataset-mcp-server'))&&_0xe61f8f[_0x548987(0x1ff)](_0x50765a);}_0xe61f8f['length']>0x0&&(_0x2e503d={'path':_0x1df22e,'keys':_0xe61f8f});}}catch{}const _0x586e2b=_0x508a35[_0x548987(0x1e0)]>0x0||_0xf9c92d!==null;let _0x305996=null;const _0x1c26ee=resolve(_0x459f1c,'package.json');if(existsSync(_0x1c26ee))try{const _0xec61c9=JSON[_0x548987(0x219)](readFileSync(_0x1c26ee,_0x548987(0x214)));for(const _0x3dd7aa of[_0x548987(0x1cd),_0x548987(0x1d8)]){const _0x5bcdba=_0xec61c9?.[_0x3dd7aa]?.[_0x548987(0x1b0)];if(typeof _0x5bcdba===_0x548987(0x1c9)){_0x5bcdba!==_0x548987(0x1c0)&&(_0x305996={'pkgPath':_0x1c26ee,'currentVersion':_0x5bcdba,'field':_0x3dd7aa});break;}}}catch{}return{'configMigration':_0xf9c92d,'oldArtifacts':_0x508a35,'oldMcpConfig':_0x2e503d,'needsSkillSwap':_0x586e2b,'sdkUpgrade':_0x305996};}function printReport(_0x8987ee){const _0x6cbfb7=a117_0x22cd,{configMigration:_0x4a5874,oldArtifacts:_0x569990,oldMcpConfig:_0x103dfa,needsSkillSwap:_0x37b215}=_0x8987ee;console[_0x6cbfb7(0x1b5)](''),console['log'](a117_0x435e8d[_0x6cbfb7(0x213)](_0x6cbfb7(0x19e))),console['log']('');_0x4a5874?(console[_0x6cbfb7(0x1b5)](a117_0x435e8d[_0x6cbfb7(0x1b8)](_0x6cbfb7(0x204))+('\x20\x20'+a117_0x435e8d[_0x6cbfb7(0x1f5)](_0x4a5874[_0x6cbfb7(0x1a2)]))),console['log'](_0x6cbfb7(0x20c)+(_0x4a5874[_0x6cbfb7(0x1fd)]?a117_0x435e8d['green']('already\x20exists\x20(will\x20merge)'):a117_0x435e8d[_0x6cbfb7(0x1bd)](_0x6cbfb7(0x210)))),console['log'](_0x6cbfb7(0x1ab)+_0x4a5874[_0x6cbfb7(0x1d1)]['join'](',\x20')),console[_0x6cbfb7(0x1b5)](_0x6cbfb7(0x1bb))):console[_0x6cbfb7(0x1b5)](a117_0x435e8d[_0x6cbfb7(0x1b8)](_0x6cbfb7(0x204))+'\x20\x20'+a117_0x435e8d[_0x6cbfb7(0x1bd)](_0x6cbfb7(0x1ed)));console[_0x6cbfb7(0x1b5)]('');if(_0x569990[_0x6cbfb7(0x1e0)]>0x0){console['log'](a117_0x435e8d['cyan'](_0x6cbfb7(0x1e6)));for(const _0x37ece1 of _0x569990){console['log']('\x20\x20'+a117_0x435e8d['red'](_0x6cbfb7(0x1ee))+'\x20\x20'+_0x37ece1);}console[_0x6cbfb7(0x1b5)](_0x6cbfb7(0x1bf));}else console[_0x6cbfb7(0x1b5)](a117_0x435e8d[_0x6cbfb7(0x1b8)](_0x6cbfb7(0x1e6))+'\x20\x20'+a117_0x435e8d[_0x6cbfb7(0x1bd)](_0x6cbfb7(0x1c4)));console[_0x6cbfb7(0x1b5)]('');_0x103dfa?(console[_0x6cbfb7(0x1b5)](a117_0x435e8d[_0x6cbfb7(0x1b8)](_0x6cbfb7(0x1d6))+('\x20\x20'+a117_0x435e8d['yellow'](_0x103dfa[_0x6cbfb7(0x1d4)])+_0x6cbfb7(0x1ae)+_0x103dfa['keys'][_0x6cbfb7(0x19c)](',\x20'))),console[_0x6cbfb7(0x1b5)]('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console[_0x6cbfb7(0x1b5)](a117_0x435e8d[_0x6cbfb7(0x1b8)](_0x6cbfb7(0x1d6))+'\x20\x20'+a117_0x435e8d[_0x6cbfb7(0x1bd)]('no\x20legacy\x20entry'));console[_0x6cbfb7(0x1b5)](''),console[_0x6cbfb7(0x1b5)](a117_0x435e8d['cyan'](_0x6cbfb7(0x1f1))+('\x20\x20'+(_0x37b215?a117_0x435e8d[_0x6cbfb7(0x1f5)]('needed'):a117_0x435e8d[_0x6cbfb7(0x1a8)](_0x6cbfb7(0x1da)))));_0x37b215&&console[_0x6cbfb7(0x1b5)](_0x6cbfb7(0x1b1)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x6cbfb7(0x1b5)]('');if(_0x8987ee[_0x6cbfb7(0x1f7)]){const {currentVersion:_0x80ae66,field:_0x18477d,pkgPath:_0x3266ea}=_0x8987ee['sdkUpgrade'];console[_0x6cbfb7(0x1b5)](a117_0x435e8d[_0x6cbfb7(0x1b8)](_0x6cbfb7(0x1ba))+('\x20\x20'+a117_0x435e8d[_0x6cbfb7(0x1f5)](_0x3266ea))),console[_0x6cbfb7(0x1b5)](_0x6cbfb7(0x217)+_0x18477d+':\x20'+a117_0x435e8d[_0x6cbfb7(0x1f5)](_0x80ae66)+_0x6cbfb7(0x1dc)+a117_0x435e8d[_0x6cbfb7(0x1a8)](_0x6cbfb7(0x1c0))),console[_0x6cbfb7(0x1b5)](_0x6cbfb7(0x218));}else console['log'](a117_0x435e8d[_0x6cbfb7(0x1b8)](_0x6cbfb7(0x1ba))+'\x20\x20'+a117_0x435e8d['gray'](_0x6cbfb7(0x1a3)));console[_0x6cbfb7(0x1b5)]('');}function execConfigMigration(_0x4e3f53,_0x31b715){const _0x24b308=a117_0x22cd,{configMigration:_0x51ae41}=_0x4e3f53;if(!_0x51ae41?.[_0x24b308(0x1a2)])return{'step':0x1,'label':_0x24b308(0x1b2),'ok':!![],'detail':_0x24b308(0x1d7)};const _0x54f1be=readConfigFile(_0x51ae41[_0x24b308(0x1a2)]),_0x1bb06c=resolve(_0x31b715,NEW_CONFIG_NAME),_0x560264=_0x51ae41[_0x24b308(0x1fd)]?readConfigFile(_0x1bb06c):{};for(const [_0x1443eb,_0x12810b]of Object[_0x24b308(0x1ec)](_0x54f1be)){!(_0x1443eb in _0x560264)&&(_0x560264[_0x1443eb]=_0x12810b);}writeConfigFile(_0x1bb06c,_0x560264);const _0x272e20=_0x51ae41[_0x24b308(0x1a2)]+'.bak';return renameSync(_0x51ae41['oldPath'],_0x272e20),{'step':0x1,'label':_0x24b308(0x1b2),'ok':!![],'detail':_0x51ae41['oldPath']+'\x20→\x20'+_0x1bb06c+_0x24b308(0x1d0)+_0x272e20+')'};}function execRemoveOldArtifacts(_0x3b47cd){const _0x167dbc=a117_0x22cd,_0x12714b=[];for(const _0x1b565a of _0x3b47cd){try{if(!existsSync(_0x1b565a))continue;const _0x2dbef6=tryStat(_0x1b565a);_0x2dbef6?.[_0x167dbc(0x1ac)]()?rmSync(_0x1b565a,{'recursive':!![],'force':!![]}):unlinkSync(_0x1b565a);}catch(_0x22b9ba){_0x12714b[_0x167dbc(0x1ff)](_0x1b565a+':\x20'+_0x22b9ba[_0x167dbc(0x1de)]);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x12714b[_0x167dbc(0x1e0)]===0x0,'detail':_0x12714b[_0x167dbc(0x1e0)]>0x0?_0x3b47cd[_0x167dbc(0x1e0)]-_0x12714b['length']+'/'+_0x3b47cd[_0x167dbc(0x1e0)]+'\x20removed\x20('+_0x12714b[_0x167dbc(0x19c)](';\x20')+')':_0x3b47cd[_0x167dbc(0x1e0)]+_0x167dbc(0x1eb)};}function execCleanMcp(_0x228778){const _0x5c26aa=a117_0x22cd;if(!_0x228778[_0x5c26aa(0x216)])return{'step':0x4,'label':_0x5c26aa(0x19d),'ok':!![],'detail':_0x5c26aa(0x1e1)};try{const _0x48444b=readFileSync(_0x228778['oldMcpConfig'][_0x5c26aa(0x1d4)],_0x5c26aa(0x214)),_0x1fe1a6=JSON[_0x5c26aa(0x219)](_0x48444b);if(_0x1fe1a6?.[_0x5c26aa(0x1f6)]&&typeof _0x1fe1a6[_0x5c26aa(0x1f6)]===_0x5c26aa(0x1c2)){const _0x72dbf=[];for(const [_0x2d1289,_0x1f2572]of Object['entries'](_0x1fe1a6[_0x5c26aa(0x1f6)])){_0x1f2572?.[_0x5c26aa(0x1b9)]&&Array[_0x5c26aa(0x20d)](_0x1f2572[_0x5c26aa(0x1b9)])&&_0x1f2572[_0x5c26aa(0x1b9)][_0x5c26aa(0x1b6)](_0x166156=>typeof _0x166156===_0x5c26aa(0x1c9)&&_0x166156[_0x5c26aa(0x1b3)]('@lovrabet/dataset-mcp-server'))&&_0x72dbf[_0x5c26aa(0x1ff)](_0x2d1289);}for(const _0x178001 of _0x72dbf){delete _0x1fe1a6[_0x5c26aa(0x1f6)][_0x178001];}return _0x72dbf[_0x5c26aa(0x1e0)]>0x0&&writeFileSync(_0x228778[_0x5c26aa(0x216)][_0x5c26aa(0x1d4)],JSON['stringify'](_0x1fe1a6,null,0x2)+'\x0a',_0x5c26aa(0x214)),{'step':0x4,'label':_0x5c26aa(0x19d),'ok':!![],'detail':'removed\x20'+_0x72dbf[_0x5c26aa(0x19c)](',\x20')+'\x20from\x20'+_0x228778[_0x5c26aa(0x216)][_0x5c26aa(0x1d4)]};}return{'step':0x4,'label':_0x5c26aa(0x19d),'ok':!![],'detail':_0x5c26aa(0x1b7)};}catch(_0x4d74c6){return{'step':0x4,'label':_0x5c26aa(0x19d),'ok':![],'detail':_0x4d74c6['message']};}}function a117_0x42f4(){const _0x16ea51=['Step\x201/7:\x20Migrating\x20config...','Upgrade\x20@lovrabet/sdk','\x20\x20\x20\x20\x20\x20\x20','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','step','Proceed\x20with\x20upgrade?','\x20\x20New\x20config\x20(.rabetbase.json):\x20','isArray','33480502kDneGl','red','not\x20found\x20(will\x20create)','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','852611GEjBBT','bold','utf8','lovrabet/lovrabet-skill\x20removed','oldMcpConfig','\x20\x20Current\x20version\x20in\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','parse','oldArtifacts','join','Clean\x20MCP\x20config','===\x20Upgrade\x20Analysis\x20===','10jSDYea','start','status','oldPath','not\x20found\x20or\x20already\x20at\x20latest','6354756yavEDJ','5FpTeML','Install\x20new\x20skill','cwd','green','info','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','\x20\x20Fields\x20to\x20migrate:\x20','isDirectory','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','\x20→\x20keys:\x20','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','@lovrabet/sdk','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','Config\x20migration','includes','undefined','log','some','no\x20matching\x20entry\x20found','cyan','args','@lovrabet/sdk:','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','gray','inherit','\x20\x20Action:\x20delete','latest','detail','object','fail','none\x20found','lovrabet/rabetbase\x20installed\x20globally','files','2081976PsfnhQ','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','string','configMigration','.lovrabet','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','dependencies','Step\x206/7:\x20Installing\x20new\x20skill...','===\x20Upgrade\x20Summary\x20===','\x20(backup:\x20','fields','succeed','\x20\x20npm\x20install','path','error','MCP\x20config:','skipped\x20(no\x20legacy\x20config)','devDependencies','8NtMhHW','not\x20needed','\x20\x20Step\x20','\x20→\x20','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','message','.claude/skills/lovrabet','length','skipped','Remove\x20.lovrabet/','done','Step\x204/7:\x20Cleaning\x20MCP\x20config...','label','Legacy\x20artifacts:','failed','\x20\x20#\x20or','needsSkillSwap','Step\x204/7:\x20MCP\x20config\x20—\x20','\x20removed','entries','no\x20legacy\x20config\x20found','FOUND','Remove\x20old\x20skill','FAIL','Skill\x20swap:','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Upgrade\x20cancelled.','yellow','mcpServers','sdkUpgrade','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','exit\x20','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','1326600WGRwpS','Upgrade\x20completed\x20successfully!','hasNewConfig','859458MvuMeg','push','white','.cursor/rules/lovrabet_rules.mdc','1822492MEwcre','4gYiEPD','Config\x20file:','values'];a117_0x42f4=function(){return _0x16ea51;};return a117_0x42f4();}function execSkillsRemove(_0x4a0e27,_0x13d833){const _0x280f7c=a117_0x22cd,_0x29d43d=runNpxSkillsRemove(_0x4a0e27,{'stdio':_0x280f7c(0x1be),'yes':_0x13d833});return{'step':0x5,'label':_0x280f7c(0x1ef),'ok':_0x29d43d['ok'],'detail':_0x29d43d['ok']?_0x280f7c(0x215):_0x29d43d[_0x280f7c(0x1d5)]??_0x280f7c(0x1f9)+_0x29d43d[_0x280f7c(0x1a1)]};}function execSkillsAdd(_0xfdd563,_0x48b3f5){const _0x4c7b44=a117_0x22cd,_0x33308a=runNpxSkillsAddGlobal(_0xfdd563,'lovrabet/rabetbase',{'stdio':_0x4c7b44(0x1be),'yes':_0x48b3f5});return{'step':0x6,'label':_0x4c7b44(0x1a6),'ok':_0x33308a['ok'],'detail':_0x33308a['ok']?_0x4c7b44(0x1c5):_0x33308a['error']??_0x4c7b44(0x1f9)+_0x33308a[_0x4c7b44(0x1a1)]};}function execUpgradeSdk(_0x323859){const _0xb9ae40=a117_0x22cd;if(!_0x323859['sdkUpgrade'])return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0xb9ae40(0x1fa)};const {pkgPath:_0x25d906,currentVersion:_0x110fee,field:_0x8b861e}=_0x323859[_0xb9ae40(0x1f7)];try{const _0x2b239f=readFileSync(_0x25d906,_0xb9ae40(0x214)),_0x2455ec=JSON[_0xb9ae40(0x219)](_0x2b239f);return _0x2455ec[_0x8b861e][_0xb9ae40(0x1b0)]=_0xb9ae40(0x1c0),writeFileSync(_0x25d906,JSON['stringify'](_0x2455ec,null,0x2)+'\x0a',_0xb9ae40(0x214)),{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x8b861e+'[\x22@lovrabet/sdk\x22]:\x20'+_0x110fee+'\x20→\x20latest'};}catch(_0x1cac18){return{'step':0x7,'label':_0xb9ae40(0x207),'ok':![],'detail':_0x1cac18[_0xb9ae40(0x1de)]};}}function tryStat(_0x268b5c){try{return statSync(_0x268b5c);}catch{return undefined;}}function a117_0x22cd(_0x26a425,_0xe560de){_0x26a425=_0x26a425-0x19c;const _0x42f444=a117_0x42f4();let _0x22cdc6=_0x42f444[_0x26a425];return _0x22cdc6;}function printSummary(_0x194593){const _0x59eb55=a117_0x22cd;console[_0x59eb55(0x1b5)](''),console[_0x59eb55(0x1b5)](a117_0x435e8d[_0x59eb55(0x213)](_0x59eb55(0x1cf))),console['log']('');for(const _0x3aa831 of _0x194593){const _0x395f38=_0x3aa831['ok']?a117_0x435e8d[_0x59eb55(0x1a8)]('OK'):a117_0x435e8d[_0x59eb55(0x20f)](_0x59eb55(0x1f0));console[_0x59eb55(0x1b5)]('\x20\x20'+_0x395f38+_0x59eb55(0x1db)+_0x3aa831[_0x59eb55(0x20a)]+':\x20'+_0x3aa831[_0x59eb55(0x1e5)]);if(_0x3aa831[_0x59eb55(0x1c1)])console['log'](_0x59eb55(0x208)+a117_0x435e8d[_0x59eb55(0x1bd)](_0x3aa831[_0x59eb55(0x1c1)]));}console[_0x59eb55(0x1b5)]('');}export async function upgradeApp(_0x4723f0,_0xc919aa){const _0x2f49c7=a117_0x22cd,_0x332191=process[_0x2f49c7(0x1a7)](),_0xaf091c=analyse(_0x332191),_0x1640e8=!_0xaf091c[_0x2f49c7(0x1ca)]&&_0xaf091c[_0x2f49c7(0x21a)][_0x2f49c7(0x1e0)]===0x0&&!_0xaf091c[_0x2f49c7(0x216)]&&!_0xaf091c[_0x2f49c7(0x1e9)]&&!_0xaf091c[_0x2f49c7(0x1f7)];if(_0x1640e8){console[_0x2f49c7(0x1b5)](a117_0x435e8d['green'](_0x2f49c7(0x1dd)));return;}printReport(_0xaf091c);const _0xb2a274=!!(_0xc919aa['yes']||_0xc919aa['Y']||_0x4723f0);if(!_0xb2a274)try{const _0xa36ce4=await askConfirm(_0x2f49c7(0x20b));if(!_0xa36ce4){console[_0x2f49c7(0x1b5)](a117_0x435e8d[_0x2f49c7(0x1bd)](_0x2f49c7(0x1f4)));return;}}catch(_0x2b7d84){if(_0x2b7d84?.[_0x2f49c7(0x1de)]==='CANCEL'){console['log'](a117_0x435e8d[_0x2f49c7(0x1bd)](_0x2f49c7(0x1f4)));return;}throw _0x2b7d84;}const _0x472e87=[],_0x6192af=a117_0x154fa2({'text':_0x2f49c7(0x206),'color':_0x2f49c7(0x1b8)})[_0x2f49c7(0x1a0)](),_0x17436b=execConfigMigration(_0xaf091c,_0x332191);_0x472e87[_0x2f49c7(0x1ff)](_0x17436b),_0x6192af[_0x17436b['ok']?_0x2f49c7(0x1d2):'fail']('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x17436b[_0x2f49c7(0x1c1)]??(_0x17436b['ok']?_0x2f49c7(0x1e3):_0x2f49c7(0x1e7))));const _0x33ffe3=resolve(_0x332191,_0x2f49c7(0x1cb)),_0x37aa46=a117_0x154fa2({'text':_0x2f49c7(0x1f2),'color':_0x2f49c7(0x1b8)})[_0x2f49c7(0x1a0)]();if(existsSync(_0x33ffe3))try{rmSync(_0x33ffe3,{'recursive':!![],'force':!![]}),_0x37aa46['succeed'](_0x2f49c7(0x1cc)),_0x472e87['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x3bec21){_0x37aa46['fail']('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x3bec21[_0x2f49c7(0x1de)]),_0x472e87[_0x2f49c7(0x1ff)]({'step':0x2,'label':_0x2f49c7(0x1e2),'ok':![],'detail':_0x3bec21[_0x2f49c7(0x1de)]});}else _0x37aa46[_0x2f49c7(0x1a9)](_0x2f49c7(0x1af)),_0x472e87['push']({'step':0x2,'label':_0x2f49c7(0x1e2),'ok':!![],'detail':_0x2f49c7(0x1e1)});const _0x5d5e75=a117_0x154fa2({'text':_0x2f49c7(0x1ad),'color':_0x2f49c7(0x1b8)})[_0x2f49c7(0x1a0)](),_0x4d34cf=execRemoveOldArtifacts(_0xaf091c[_0x2f49c7(0x21a)]);_0x472e87[_0x2f49c7(0x1ff)](_0x4d34cf),_0x5d5e75[_0x4d34cf['ok']?_0x2f49c7(0x1d2):_0x2f49c7(0x1c3)](_0x2f49c7(0x1aa)+(_0x4d34cf[_0x2f49c7(0x1c1)]??(_0x4d34cf['ok']?_0x2f49c7(0x1e3):'failed')));const _0x3bdbd6=a117_0x154fa2({'text':_0x2f49c7(0x1e4),'color':_0x2f49c7(0x1b8)})['start'](),_0x4fd5c7=execCleanMcp(_0xaf091c);_0x472e87[_0x2f49c7(0x1ff)](_0x4fd5c7),_0x3bdbd6[_0x4fd5c7['ok']?'succeed':_0x2f49c7(0x1c3)](_0x2f49c7(0x1ea)+(_0x4fd5c7['detail']??(_0x4fd5c7['ok']?_0x2f49c7(0x1e3):_0x2f49c7(0x1e7))));const _0x186808=a117_0x154fa2({'text':'Step\x205/7:\x20Removing\x20old\x20skill...','color':_0x2f49c7(0x1b8)})['start'](),_0x3f77cf=execSkillsRemove(_0x332191,_0xb2a274);_0x472e87['push'](_0x3f77cf),_0x186808[_0x3f77cf['ok']?_0x2f49c7(0x1d2):_0x2f49c7(0x1c3)](_0x2f49c7(0x211)+(_0x3f77cf[_0x2f49c7(0x1c1)]??(_0x3f77cf['ok']?'done':_0x2f49c7(0x1e7))));const _0x296093=a117_0x154fa2({'text':_0x2f49c7(0x1ce),'color':_0x2f49c7(0x1b8)})['start'](),_0xb3dc1e=execSkillsAdd(_0x332191,_0xb2a274);_0x472e87[_0x2f49c7(0x1ff)](_0xb3dc1e),_0x296093[_0xb3dc1e['ok']?'succeed':'fail']('Step\x206/7:\x20Install\x20new\x20skill\x20—\x20'+(_0xb3dc1e['detail']??(_0xb3dc1e['ok']?_0x2f49c7(0x1e3):'failed')));const _0x3bd710=a117_0x154fa2({'text':_0x2f49c7(0x1bc),'color':'cyan'})[_0x2f49c7(0x1a0)](),_0x168d3e=execUpgradeSdk(_0xaf091c);_0x472e87[_0x2f49c7(0x1ff)](_0x168d3e),_0x3bd710[_0x168d3e['ok']?_0x2f49c7(0x1d2):_0x2f49c7(0x1c3)](_0x2f49c7(0x1c8)+(_0x168d3e['detail']??(_0x168d3e['ok']?_0x2f49c7(0x1e3):_0x2f49c7(0x1e7)))),printSummary(_0x472e87);const _0x1a9781=_0x472e87[_0x2f49c7(0x1b6)](_0x2d4910=>!_0x2d4910['ok']);_0x1a9781?console[_0x2f49c7(0x1b5)](a117_0x435e8d[_0x2f49c7(0x1f5)](_0x2f49c7(0x209))):console[_0x2f49c7(0x1b5)](a117_0x435e8d[_0x2f49c7(0x1a8)](_0x2f49c7(0x1fc))),_0x168d3e['ok']&&_0xaf091c[_0x2f49c7(0x1f7)]&&(console['log'](''),console[_0x2f49c7(0x1b5)](a117_0x435e8d[_0x2f49c7(0x213)][_0x2f49c7(0x1b8)](_0x2f49c7(0x1f8))),console[_0x2f49c7(0x1b5)](a117_0x435e8d[_0x2f49c7(0x1b8)](_0x2f49c7(0x1f3))),console[_0x2f49c7(0x1b5)](''),console[_0x2f49c7(0x1b5)](a117_0x435e8d['white'](_0x2f49c7(0x1d3))),console[_0x2f49c7(0x1b5)](a117_0x435e8d[_0x2f49c7(0x200)](_0x2f49c7(0x1e8))),console[_0x2f49c7(0x1b5)](a117_0x435e8d[_0x2f49c7(0x200)]('\x20\x20bun\x20install')),console[_0x2f49c7(0x1b5)](''));}
@@ -1 +1 @@
1
- const a118_0x5e1e24=a118_0x2e66;(function(_0x5b37db,_0x142ab4){const _0x371459=a118_0x2e66,_0x1951c4=_0x5b37db();while(!![]){try{const _0x453f87=parseInt(_0x371459(0x7e))/0x1+parseInt(_0x371459(0x98))/0x2*(-parseInt(_0x371459(0x84))/0x3)+parseInt(_0x371459(0xa0))/0x4*(-parseInt(_0x371459(0x76))/0x5)+-parseInt(_0x371459(0x87))/0x6+-parseInt(_0x371459(0x9e))/0x7*(-parseInt(_0x371459(0x8d))/0x8)+parseInt(_0x371459(0x6f))/0x9*(-parseInt(_0x371459(0x9b))/0xa)+-parseInt(_0x371459(0x8b))/0xb*(-parseInt(_0x371459(0x78))/0xc);if(_0x453f87===_0x142ab4)break;else _0x1951c4['push'](_0x1951c4['shift']());}catch(_0x36959f){_0x1951c4['push'](_0x1951c4['shift']());}}}(a118_0x20a8,0x58a5d));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';function a118_0x2e66(_0x4157e6,_0x1a750b){_0x4157e6=_0x4157e6-0x6c;const _0x20a863=a118_0x20a8();let _0x2e66f9=_0x20a863[_0x4157e6];return _0x2e66f9;}import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{appDefinitions}from'../commands/app/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{skillDefinitions}from'../commands/skill/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x404955){const _0xc7bd35=a118_0x2e66;for(const _0x42f219 of _0x404955){definitions[_0xc7bd35(0x70)](_0x42f219['service']+':'+_0x42f219[_0xc7bd35(0x96)],_0x42f219);let _0x24d5cc=serviceGroups[_0xc7bd35(0xa2)](_0x42f219[_0xc7bd35(0x82)]);!_0x24d5cc&&(_0x24d5cc=[],serviceGroups[_0xc7bd35(0x70)](_0x42f219[_0xc7bd35(0x82)],_0x24d5cc)),_0x24d5cc[_0xc7bd35(0x75)](_0x42f219);}}function registerDeclarativeService(_0x136197,_0x4ae0bb,_0x7d4f06){const _0x2f551d=a118_0x2e66;registerDefinitions(_0x4ae0bb);_0x7d4f06?.[_0x2f551d(0x7a)]&&registerDefinitions([_0x7d4f06[_0x2f551d(0x7a)]]);const _0x13cc4f=_0x5bb70d=>_0x5bb70d===_0x2f551d(0x8f)?'':_0x5bb70d===_0x2f551d(0x93)?'\x20\x20[write]':_0x2f551d(0x71),_0x158ac7={'service':_0x4ae0bb[0x0][_0x2f551d(0x82)],'label':_0x136197,'commands':_0x4ae0bb[_0x2f551d(0x7b)](_0x5da28e=>({'command':_0x5da28e[_0x2f551d(0x96)],'description':_0x5da28e['description'],'tag':_0x13cc4f(_0x5da28e[_0x2f551d(0x89)])})),'declarative':!![],'defaultCommand':_0x7d4f06?.[_0x2f551d(0x91)]??(_0x7d4f06?.[_0x2f551d(0x90)]?_0x4ae0bb[0x0][_0x2f551d(0x96)]:undefined),'wildcardDef':_0x7d4f06?.[_0x2f551d(0x7a)],'isSingleCommand':_0x7d4f06?.[_0x2f551d(0x90)]};serviceRegistry[_0x2f551d(0x75)](_0x158ac7),serviceByName[_0x2f551d(0x70)](_0x158ac7[_0x2f551d(0x82)],_0x158ac7);}registerDeclarativeService('Quick\x20Start',initDefinitions,{'defaultCommand':a118_0x5e1e24(0x94),'isSingleCommand':!![]}),registerDeclarativeService(a118_0x5e1e24(0x8a),projectDefinitions),registerDeclarativeService(a118_0x5e1e24(0x85),appDefinitions),registerDeclarativeService(a118_0x5e1e24(0x7c),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a118_0x5e1e24(0x74)]-0x1];last[a118_0x5e1e24(0x6e)]=[{'command':a118_0x5e1e24(0x77),'description':a118_0x5e1e24(0x86),'tag':''}];}registerDeclarativeService(a118_0x5e1e24(0x9a),authDefinitions,{'defaultCommand':a118_0x5e1e24(0x92)}),registerDeclarativeService(a118_0x5e1e24(0x9d),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0x5e1e24(0x88),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0x5e1e24(0x95),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0x5e1e24(0x7f),configDefinitions),registerDeclarativeService(a118_0x5e1e24(0x79),issueDefinitions),registerDeclarativeService(a118_0x5e1e24(0x7d),apiDefinitions),registerDeclarativeService('Menu',menuDefinitions),registerDeclarativeService(a118_0x5e1e24(0x6d),dbDefinitions),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService(a118_0x5e1e24(0x9f),pageDefinitions),registerDeclarativeService(a118_0x5e1e24(0x99),dataDefinitions),registerDeclarativeService(a118_0x5e1e24(0x6c),bffDefinitions),registerDeclarativeService('SQL\x20Queries',sqlDefinitions),registerDeclarativeService('Code\x20Generation',codegenDefinitions),registerDeclarativeService(a118_0x5e1e24(0xa1),skillDefinitions),registerDeclarativeService('Logs',logsDefinitions,{'defaultCommand':a118_0x5e1e24(0x9c)});function a118_0x20a8(){const _0x2a9c52=['App\x20Management','Run\x20any\x20package.json\x20script','1541682cFaxgM','Diagnostics','risk','Project','3603292TRKqio','skill','263904gbIHAN','values','read','isSingleCommand','defaultCommand','login','write','run','Schema','command','logout','10DlZikq','Instant\x20API','Authentication','960230zXiqKG','show','Self\x20Update','133ZOIJLD','Smart\x20List\x20Pages','358700NIpTsz','Skills','get','BFF\x20Scripts','Database\x20Connections','commands','45VProaK','set','\x20\x20[high-risk-write]','project','from','length','push','5TedFUq','<script>','24QfEyjk','Platform\x20Issue','wildcardDef','map','Run\x20Scripts','API','493647mJTIxP','Configuration','create','start','service','has','351435XcjopO'];a118_0x20a8=function(){return _0x2a9c52;};return a118_0x20a8();}export const deprecatedAliases={'create':{'service':a118_0x5e1e24(0x72),'command':'create'},'start':{'service':a118_0x5e1e24(0x94),'command':a118_0x5e1e24(0x81)},'build':{'service':a118_0x5e1e24(0x94),'command':'build'},'preview':{'service':a118_0x5e1e24(0x94),'command':'preview'},'logout':{'service':'auth','command':a118_0x5e1e24(0x97)},'skills':{'service':a118_0x5e1e24(0x8c),'command':'install'}};export const deprecatedSubcommands={'bff':{'new':a118_0x5e1e24(0x80)},'sql':{'new':a118_0x5e1e24(0x80)}};export function resolveDeprecatedSubcommand(_0x299f7d,_0x159f04){return deprecatedSubcommands[_0x299f7d]?.[_0x159f04];}export function findDefinition(_0x231ee6,_0xb77459){const _0xc61e1a=a118_0x5e1e24;return definitions[_0xc61e1a(0xa2)](_0x231ee6+':'+_0xb77459);}export function isKnownService(_0x381fc5){const _0x59af85=a118_0x5e1e24;return serviceByName[_0x59af85(0x83)](_0x381fc5);}export function isDeclarativeService(_0x8b3b95){const _0x4374dc=a118_0x5e1e24;return serviceGroups['has'](_0x8b3b95)||serviceByName[_0x4374dc(0xa2)](_0x8b3b95)?.[_0x4374dc(0x7a)]!==undefined;}export function getServiceEntry(_0x3244cb){const _0x3e4f67=a118_0x5e1e24;return serviceByName[_0x3e4f67(0xa2)](_0x3244cb);}export function getLegacyHandler(_0x1c9e4d,_0x24b247){return undefined;}export function getAllDefinitions(){const _0x316ea2=a118_0x5e1e24;return Array[_0x316ea2(0x73)](definitions[_0x316ea2(0x8e)]());}
1
+ const a118_0x30fcb3=a118_0x1b99;(function(_0x9044e3,_0x1e9eef){const _0x2ebf5d=a118_0x1b99,_0x141bce=_0x9044e3();while(!![]){try{const _0x53b0f8=parseInt(_0x2ebf5d(0x13b))/0x1*(parseInt(_0x2ebf5d(0x14c))/0x2)+-parseInt(_0x2ebf5d(0x164))/0x3+parseInt(_0x2ebf5d(0x136))/0x4+parseInt(_0x2ebf5d(0x138))/0x5*(-parseInt(_0x2ebf5d(0x15f))/0x6)+parseInt(_0x2ebf5d(0x140))/0x7*(parseInt(_0x2ebf5d(0x141))/0x8)+-parseInt(_0x2ebf5d(0x160))/0x9*(parseInt(_0x2ebf5d(0x156))/0xa)+-parseInt(_0x2ebf5d(0x158))/0xb*(-parseInt(_0x2ebf5d(0x132))/0xc);if(_0x53b0f8===_0x1e9eef)break;else _0x141bce['push'](_0x141bce['shift']());}catch(_0x50cdc9){_0x141bce['push'](_0x141bce['shift']());}}}(a118_0x576d,0xbe161));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{appDefinitions}from'../commands/app/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{authDefinitions}from'../commands/auth/index.js';function a118_0x576d(){const _0x216933=['Smart\x20List\x20Pages','service','6luCnCe','738sLqNmI','write','wildcardDef','Menu','4012032DynqxX','skill','Project','logout','values','App\x20Management','Dataset\x20&\x20Operations','24zWrOsC','map','defaultCommand','BFF\x20Scripts','1152756qpMzDv','run','1175800qmgqCz','Instant\x20API','create','58171GRGbLY','start','install','from','set','21zhejxh','2917664GRqOKP','commands','Run\x20any\x20package.json\x20script','Database\x20Connections','risk','length','login','auth','Run\x20Scripts','Self\x20Update','Code\x20Generation','4gNcbls','\x20\x20[high-risk-write]','Schema','build','<script>','push','description','read','preview','Configuration','159070dmpHcZ','\x20\x20[write]','11862488pANgOq','has','Quick\x20Start','API','get'];a118_0x576d=function(){return _0x216933;};return a118_0x576d();}import{logsDefinitions}from'../commands/logs/index.js';import{skillDefinitions}from'../commands/skill/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();function a118_0x1b99(_0x1e83c0,_0x471565){_0x1e83c0=_0x1e83c0-0x131;const _0x576d0e=a118_0x576d();let _0x1b996b=_0x576d0e[_0x1e83c0];return _0x1b996b;}export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x29f8f9){const _0x1d95a1=a118_0x1b99;for(const _0x212469 of _0x29f8f9){definitions['set'](_0x212469[_0x1d95a1(0x15e)]+':'+_0x212469['command'],_0x212469);let _0x58825a=serviceGroups[_0x1d95a1(0x15c)](_0x212469[_0x1d95a1(0x15e)]);!_0x58825a&&(_0x58825a=[],serviceGroups[_0x1d95a1(0x13f)](_0x212469[_0x1d95a1(0x15e)],_0x58825a)),_0x58825a[_0x1d95a1(0x151)](_0x212469);}}function registerDeclarativeService(_0x522d9f,_0x17e8f4,_0x45172b){const _0x2b072b=a118_0x1b99;registerDefinitions(_0x17e8f4);_0x45172b?.[_0x2b072b(0x162)]&&registerDefinitions([_0x45172b[_0x2b072b(0x162)]]);const _0x541dc0=_0x65f97a=>_0x65f97a===_0x2b072b(0x153)?'':_0x65f97a===_0x2b072b(0x161)?_0x2b072b(0x157):_0x2b072b(0x14d),_0x22a46d={'service':_0x17e8f4[0x0][_0x2b072b(0x15e)],'label':_0x522d9f,'commands':_0x17e8f4[_0x2b072b(0x133)](_0x878ff6=>({'command':_0x878ff6['command'],'description':_0x878ff6[_0x2b072b(0x152)],'tag':_0x541dc0(_0x878ff6[_0x2b072b(0x145)])})),'declarative':!![],'defaultCommand':_0x45172b?.[_0x2b072b(0x134)]??(_0x45172b?.['isSingleCommand']?_0x17e8f4[0x0]['command']:undefined),'wildcardDef':_0x45172b?.[_0x2b072b(0x162)],'isSingleCommand':_0x45172b?.['isSingleCommand']};serviceRegistry[_0x2b072b(0x151)](_0x22a46d),serviceByName['set'](_0x22a46d[_0x2b072b(0x15e)],_0x22a46d);}registerDeclarativeService(a118_0x30fcb3(0x15a),initDefinitions,{'defaultCommand':a118_0x30fcb3(0x137),'isSingleCommand':!![]}),registerDeclarativeService(a118_0x30fcb3(0x166),projectDefinitions),registerDeclarativeService(a118_0x30fcb3(0x169),appDefinitions),registerDeclarativeService(a118_0x30fcb3(0x149),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a118_0x30fcb3(0x146)]-0x1];last[a118_0x30fcb3(0x142)]=[{'command':a118_0x30fcb3(0x150),'description':a118_0x30fcb3(0x143),'tag':''}];}registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':a118_0x30fcb3(0x147)}),registerDeclarativeService(a118_0x30fcb3(0x14a),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0x30fcb3(0x14e),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0x30fcb3(0x155),configDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a118_0x30fcb3(0x15b),apiDefinitions),registerDeclarativeService(a118_0x30fcb3(0x163),menuDefinitions),registerDeclarativeService(a118_0x30fcb3(0x144),dbDefinitions),registerDeclarativeService(a118_0x30fcb3(0x131),datasetDefinitions),registerDeclarativeService(a118_0x30fcb3(0x15d),pageDefinitions),registerDeclarativeService(a118_0x30fcb3(0x139),dataDefinitions),registerDeclarativeService(a118_0x30fcb3(0x135),bffDefinitions),registerDeclarativeService('SQL\x20Queries',sqlDefinitions),registerDeclarativeService(a118_0x30fcb3(0x14b),codegenDefinitions),registerDeclarativeService('Skills',skillDefinitions),registerDeclarativeService('Logs',logsDefinitions,{'defaultCommand':'show'});export const deprecatedAliases={'create':{'service':'project','command':a118_0x30fcb3(0x13a)},'start':{'service':a118_0x30fcb3(0x137),'command':a118_0x30fcb3(0x13c)},'build':{'service':a118_0x30fcb3(0x137),'command':a118_0x30fcb3(0x14f)},'preview':{'service':a118_0x30fcb3(0x137),'command':a118_0x30fcb3(0x154)},'logout':{'service':a118_0x30fcb3(0x148),'command':a118_0x30fcb3(0x167)},'skills':{'service':a118_0x30fcb3(0x165),'command':a118_0x30fcb3(0x13d)}};export const deprecatedSubcommands={'bff':{'new':a118_0x30fcb3(0x13a)},'sql':{'new':'create'}};export function resolveDeprecatedSubcommand(_0x468a19,_0x32c275){return deprecatedSubcommands[_0x468a19]?.[_0x32c275];}export function findDefinition(_0x201458,_0x1653cc){return definitions['get'](_0x201458+':'+_0x1653cc);}export function isKnownService(_0x4f2c63){const _0x4f8034=a118_0x30fcb3;return serviceByName[_0x4f8034(0x159)](_0x4f2c63);}export function isDeclarativeService(_0x141d76){const _0x492e26=a118_0x30fcb3;return serviceGroups[_0x492e26(0x159)](_0x141d76)||serviceByName[_0x492e26(0x15c)](_0x141d76)?.[_0x492e26(0x162)]!==undefined;}export function getServiceEntry(_0x31d0af){const _0x5d5604=a118_0x30fcb3;return serviceByName[_0x5d5604(0x15c)](_0x31d0af);}export function getLegacyHandler(_0x40fa37,_0x4cf01b){return undefined;}export function getAllDefinitions(){const _0x2f3556=a118_0x30fcb3;return Array[_0x2f3556(0x13e)](definitions[_0x2f3556(0x168)]());}
@@ -1 +1 @@
1
- const a119_0x30110c=a119_0x9dec;function a119_0x9dec(_0x1873c1,_0x513edb){_0x1873c1=_0x1873c1-0x6e;const _0x12eee8=a119_0x12ee();let _0x9dec78=_0x12eee8[_0x1873c1];return _0x9dec78;}(function(_0x171f83,_0x571fab){const _0xc11389=a119_0x9dec,_0x39784c=_0x171f83();while(!![]){try{const _0x245aee=parseInt(_0xc11389(0x8c))/0x1*(-parseInt(_0xc11389(0xb0))/0x2)+parseInt(_0xc11389(0x7c))/0x3+parseInt(_0xc11389(0x88))/0x4*(parseInt(_0xc11389(0x93))/0x5)+-parseInt(_0xc11389(0x8b))/0x6+-parseInt(_0xc11389(0x91))/0x7*(parseInt(_0xc11389(0x92))/0x8)+parseInt(_0xc11389(0x94))/0x9*(-parseInt(_0xc11389(0x7d))/0xa)+parseInt(_0xc11389(0x9a))/0xb;if(_0x245aee===_0x571fab)break;else _0x39784c['push'](_0x39784c['shift']());}catch(_0x274955){_0x39784c['push'](_0x39784c['shift']());}}}(a119_0x12ee,0x8a5c6));import{readFileSync,existsSync}from'node:fs';import{CLI_BIN_NAME}from'../../constant/cli.js';import{resolve,delimiter,join}from'node:path';import{spawn}from'node:child_process';import{CliErrors}from'../../errors.js';import{checkSdkVersion,printSdkUpgradeWarning}from'../../utils/check-sdk-version.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../utils/cli-version-check.js';const VERSION_CHECK_SCRIPTS=new Set([a119_0x30110c(0xa7),a119_0x30110c(0x90)]);function readPackageScripts(_0x47164e){const _0x215cb3=a119_0x30110c,_0x5dc7ae=resolve(_0x47164e,_0x215cb3(0xa3));if(!existsSync(_0x5dc7ae))return null;try{const _0x31d9c0=JSON['parse'](readFileSync(_0x5dc7ae,_0x215cb3(0x76)));return _0x31d9c0[_0x215cb3(0x81)]??{};}catch{return null;}}function detectPackageManager(_0x29dd29){const _0xbb38e9=a119_0x30110c;if(existsSync(resolve(_0x29dd29,_0xbb38e9(0x7f)))||existsSync(resolve(_0x29dd29,_0xbb38e9(0xa2))))return _0xbb38e9(0x8d);if(existsSync(resolve(_0x29dd29,_0xbb38e9(0xa8))))return _0xbb38e9(0x71);if(existsSync(resolve(_0x29dd29,'yarn.lock')))return'yarn';return _0xbb38e9(0xa6);}function a119_0x12ee(){const _0x271b07=['preview','\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)','Script\x20name\x20defined\x20in\x20package.json','validation','length','bun.lock','package.json','map','\x20run\x20','npm','start','pnpm-lock.yaml','Run\x20a\x20package.json\x20script','max','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','--watch','run','\x20run\x20preview','Script\x20\x22','1168wIYPoB','\x0a\x20\x20Usage:\x20','close','Available:\x20','push','pnpm','read','belowMinimum','padEnd','entries','utf-8','inherit','\x20exited\x20with\x20code\x20','script','args','vite','1471011nBUGHN','1198850kaMgJQ','watch','bun.lockb','No\x20package.json\x20found\x20in\x20current\x20directory.','scripts','\x0a\x20\x20Available\x20scripts:\x0a','vite\x20preview\x20exited\x20with\x20code\x20','\x20run\x20<script>\x0a','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','needsUpgrade','.bin','4NwoQvU','node_modules','boolean','4912824pedZlS','1258MeVBvH','bun','\x20\x20\x20\x20','cwd','dev','7gTVLHx','8446608oAuKbp','4449575OGaGeh','45YykwgO','Enable\x20watch\x20mode\x20for\x20preview','(none)','\x20run\x20build','log','error','26347211CcHkBP','build','keys'];a119_0x12ee=function(){return _0x271b07;};return a119_0x12ee();}async function versionCheck(_0x38d482){const _0x34ad67=a119_0x30110c,_0x5d2b79=await checkCliVersion();(_0x5d2b79[_0x34ad67(0x86)]||_0x5d2b79[_0x34ad67(0x73)])&&(printCliUpgradeWarning(_0x5d2b79),assertCliVersionSupported(_0x5d2b79));const _0x24ebab=await checkSdkVersion(_0x38d482);if(_0x24ebab[_0x34ad67(0x86)])printSdkUpgradeWarning(_0x24ebab);}function spawnScript(_0x552e6d,_0x1da540,_0x243428,_0x540f8a){return new Promise((_0x1ed899,_0x4aba6e)=>{const _0x532801=a119_0x9dec,_0x16e2d0=[_0x532801(0xad),_0x1da540,..._0x243428],_0x433690=spawn(_0x552e6d,_0x16e2d0,{'cwd':_0x540f8a,'stdio':_0x532801(0x77),'shell':!![],'env':{...process.env,'PATH':''+join(_0x540f8a,'node_modules','.bin')+delimiter+process.env.PATH}});_0x433690['on'](_0x532801(0x6e),_0x2a37b9=>{const _0x8c793c=_0x532801;if(_0x2a37b9===0x0||_0x2a37b9===null)_0x1ed899();else _0x4aba6e(new Error(_0x552e6d+_0x8c793c(0xa5)+_0x1da540+_0x8c793c(0x78)+_0x2a37b9));}),_0x433690['on'](_0x532801(0x99),_0x4aba6e);});}function spawnViteBuildWatch(_0x5ab524){return new Promise((_0x2376df,_0xe246e2)=>{const _0x10211c=a119_0x9dec,_0x39f1cb=spawn(_0x10211c(0x7b),[_0x10211c(0x9b),_0x10211c(0xac)],{'cwd':_0x5ab524,'stdio':_0x10211c(0x77),'shell':!![],'env':{...process.env,'PATH':''+join(_0x5ab524,_0x10211c(0x89),'.bin')+delimiter+process.env.PATH}});_0x39f1cb['on'](_0x10211c(0x6e),_0x12ad5f=>{const _0x16c3d2=_0x10211c;if(_0x12ad5f===0x0||_0x12ad5f===null)_0x2376df();else _0xe246e2(new Error(_0x16c3d2(0x85)+_0x12ad5f));}),_0x39f1cb['on'](_0x10211c(0x99),_0xe246e2);});}function spawnVitePreview(_0x17da54){return new Promise((_0x40f8e6,_0x1eddae)=>{const _0x3203be=a119_0x9dec,_0x4da850=spawn(_0x3203be(0x7b),['preview'],{'cwd':_0x17da54,'stdio':_0x3203be(0x77),'shell':!![],'env':{...process.env,'PATH':''+join(_0x17da54,_0x3203be(0x89),_0x3203be(0x87))+delimiter+process.env.PATH}});_0x4da850['on']('close',_0x43041d=>{const _0x3a907a=_0x3203be;if(_0x43041d===0x0||_0x43041d===null)_0x40f8e6();else _0x1eddae(new Error(_0x3a907a(0x83)+_0x43041d));}),_0x4da850['on'](_0x3203be(0x99),_0x1eddae);});}const runFlags=[{'name':a119_0x30110c(0x7e),'type':a119_0x30110c(0x8a),'description':a119_0x30110c(0x95),'default':![]}];export const runDefinition={'service':a119_0x30110c(0xad),'command':a119_0x30110c(0xad),'description':a119_0x30110c(0xa9),'risk':a119_0x30110c(0x72),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a119_0x30110c(0x79),'description':a119_0x30110c(0x9f),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x478bbd=a119_0x30110c,_0x2e48a5=readPackageScripts(process[_0x478bbd(0x8f)]()),_0x3bd035=[];if(_0x2e48a5&&Object[_0x478bbd(0x9c)](_0x2e48a5)[_0x478bbd(0xa1)]>0x0){const _0x1815aa=Object[_0x478bbd(0x9c)](_0x2e48a5),_0x88440f=Math[_0x478bbd(0xaa)](..._0x1815aa[_0x478bbd(0xa4)](_0x3f2173=>_0x3f2173['length']));_0x3bd035['push'](_0x478bbd(0x9e));for(const [_0x5db878,_0x56b2d1]of Object['entries'](_0x2e48a5)){_0x3bd035[_0x478bbd(0x70)](_0x478bbd(0x8e)+CLI_BIN_NAME+_0x478bbd(0xa5)+_0x5db878[_0x478bbd(0x74)](_0x88440f+0x2)+'#\x20'+_0x56b2d1);}}else _0x3bd035[_0x478bbd(0x70)]('\x20\x20EXAMPLES'),_0x3bd035[_0x478bbd(0x70)](_0x478bbd(0x8e)+CLI_BIN_NAME+'\x20run\x20start'),_0x3bd035['push']('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x478bbd(0x97)),_0x3bd035['push'](_0x478bbd(0x8e)+CLI_BIN_NAME+_0x478bbd(0xae)),_0x3bd035[_0x478bbd(0x70)](_0x478bbd(0x8e)+CLI_BIN_NAME+_0x478bbd(0xab));return _0x3bd035['join']('\x0a');},async 'execute'(_0xc83528){const _0x5a06d8=a119_0x30110c,_0x3db33f=process[_0x5a06d8(0x8f)](),_0x3b8815=_0xc83528[_0x5a06d8(0x7a)][0x0],_0x1256ec=_0xc83528[_0x5a06d8(0x7a)]['slice'](0x1),_0x224f1b=readPackageScripts(_0x3db33f);if(!_0x224f1b)throw CliErrors[_0x5a06d8(0xa0)](_0x5a06d8(0x80));if(!_0x3b8815){const _0x1fff57=Object[_0x5a06d8(0x9c)](_0x224f1b);if(_0x1fff57[_0x5a06d8(0xa1)]===0x0)console[_0x5a06d8(0x98)]('No\x20scripts\x20defined\x20in\x20package.json.');else{console[_0x5a06d8(0x98)](_0x5a06d8(0x82));const _0x5138b0=Math[_0x5a06d8(0xaa)](..._0x1fff57[_0x5a06d8(0xa4)](_0x1bcf27=>_0x1bcf27[_0x5a06d8(0xa1)]));for(const [_0x4b9650,_0x438252]of Object[_0x5a06d8(0x75)](_0x224f1b)){console[_0x5a06d8(0x98)]('\x20\x20\x20\x20'+_0x4b9650[_0x5a06d8(0x74)](_0x5138b0+0x2)+_0x438252);}console[_0x5a06d8(0x98)](_0x5a06d8(0xb1)+CLI_BIN_NAME+_0x5a06d8(0x84));}return{'ok':!![]};}if(!_0x224f1b[_0x3b8815])throw CliErrors[_0x5a06d8(0xa0)](_0x5a06d8(0xaf)+_0x3b8815+'\x22\x20not\x20found\x20in\x20package.json.',_0x5a06d8(0x6f)+(Object['keys'](_0x224f1b)['join'](',\x20')||_0x5a06d8(0x96)));const _0x2b5530=detectPackageManager(_0x3db33f);VERSION_CHECK_SCRIPTS['has'](_0x3b8815)&&await versionCheck(_0x3db33f);if(_0x3b8815===_0x5a06d8(0x9d)&&_0xc83528['bool'](_0x5a06d8(0x7e)))return await Promise['all']([spawnViteBuildWatch(_0x3db33f),spawnVitePreview(_0x3db33f)]),{'ok':!![]};return await spawnScript(_0x2b5530,_0x3b8815,_0x1256ec,_0x3db33f),{'ok':!![]};}};
1
+ function a119_0x2757(_0x4e94a8,_0x355c41){_0x4e94a8=_0x4e94a8-0xf5;const _0x25bde4=a119_0x25bd();let _0x27579b=_0x25bde4[_0x4e94a8];return _0x27579b;}function a119_0x25bd(){const _0x57b288=['map','padEnd','keys','boolean','184068qzYCLi','\x20run\x20build','yarn.lock','\x20run\x20start','No\x20package.json\x20found\x20in\x20current\x20directory.','preview','belowMinimum','has','push','watch','vite\x20preview\x20exited\x20with\x20code\x20','all','build','error','validation','15164tzTSCU','16163ztuGGX','entries','cwd','1888230BMKHTb','yarn','start','log','\x20exited\x20with\x20code\x20','close','\x20\x20\x20\x20','456xZqerQ','join','read','152pMbrJQ','1320360HAuWlD','186SwgmrG','needsUpgrade','node_modules','npm','bun.lockb','Enable\x20watch\x20mode\x20for\x20preview','bool','pnpm','13496hVjeCK','\x0a\x20\x20Available\x20scripts:\x0a','2FjLeAl','No\x20scripts\x20defined\x20in\x20package.json.','80267HQAFVU','slice','\x20run\x20','inherit','script','.bin','Script\x20name\x20defined\x20in\x20package.json','\x20\x20EXAMPLES','utf-8','189eiSolC','bun.lock','parse','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','length','(none)'];a119_0x25bd=function(){return _0x57b288;};return a119_0x25bd();}const a119_0x4aa18d=a119_0x2757;(function(_0x41fd83,_0x325ce7){const _0xfb213a=a119_0x2757,_0x241715=_0x41fd83();while(!![]){try{const _0x64f792=parseInt(_0xfb213a(0x129))/0x1*(-parseInt(_0xfb213a(0x127))/0x2)+-parseInt(_0xfb213a(0xf6))/0x3*(parseInt(_0xfb213a(0x10f))/0x4)+parseInt(_0xfb213a(0x113))/0x5+parseInt(_0xfb213a(0x11f))/0x6*(parseInt(_0xfb213a(0x110))/0x7)+-parseInt(_0xfb213a(0x11d))/0x8*(parseInt(_0xfb213a(0x100))/0x9)+parseInt(_0xfb213a(0x11e))/0xa+-parseInt(_0xfb213a(0x12b))/0xb*(-parseInt(_0xfb213a(0x11a))/0xc);if(_0x64f792===_0x325ce7)break;else _0x241715['push'](_0x241715['shift']());}catch(_0x5ad41e){_0x241715['push'](_0x241715['shift']());}}}(a119_0x25bd,0x3521e));import{readFileSync,existsSync}from'node:fs';import{CLI_BIN_NAME}from'../../constant/cli.js';import{resolve,delimiter,join}from'node:path';import{spawn}from'node:child_process';import{CliErrors}from'../../errors.js';import{checkSdkVersion,printSdkUpgradeWarning}from'../../utils/check-sdk-version.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../utils/cli-version-check.js';const VERSION_CHECK_SCRIPTS=new Set([a119_0x4aa18d(0x115),'dev']);function readPackageScripts(_0x4854d9){const _0x91fa9d=a119_0x4aa18d,_0x1f0e85=resolve(_0x4854d9,'package.json');if(!existsSync(_0x1f0e85))return null;try{const _0x1ba30b=JSON[_0x91fa9d(0xf8)](readFileSync(_0x1f0e85,_0x91fa9d(0xf5)));return _0x1ba30b['scripts']??{};}catch{return null;}}function detectPackageManager(_0x9c6bf3){const _0x40fd84=a119_0x4aa18d;if(existsSync(resolve(_0x9c6bf3,_0x40fd84(0x123)))||existsSync(resolve(_0x9c6bf3,_0x40fd84(0xf7))))return'bun';if(existsSync(resolve(_0x9c6bf3,'pnpm-lock.yaml')))return _0x40fd84(0x126);if(existsSync(resolve(_0x9c6bf3,_0x40fd84(0x102))))return _0x40fd84(0x114);return _0x40fd84(0x122);}async function versionCheck(_0x17db71){const _0x57ca42=a119_0x4aa18d,_0x370ea9=await checkCliVersion();(_0x370ea9[_0x57ca42(0x120)]||_0x370ea9[_0x57ca42(0x106)])&&(printCliUpgradeWarning(_0x370ea9),assertCliVersionSupported(_0x370ea9));const _0x1655bf=await checkSdkVersion(_0x17db71);if(_0x1655bf[_0x57ca42(0x120)])printSdkUpgradeWarning(_0x1655bf);}function spawnScript(_0x213841,_0x5a7cd1,_0x1bd7ae,_0x152c93){return new Promise((_0x436f92,_0x261a83)=>{const _0x3fe27e=a119_0x2757,_0x6785ec=['run',_0x5a7cd1,..._0x1bd7ae],_0x562d31=spawn(_0x213841,_0x6785ec,{'cwd':_0x152c93,'stdio':_0x3fe27e(0x12e),'shell':!![],'env':{...process.env,'PATH':''+join(_0x152c93,'node_modules',_0x3fe27e(0x130))+delimiter+process.env.PATH}});_0x562d31['on'](_0x3fe27e(0x118),_0x3bcc86=>{const _0x384305=_0x3fe27e;if(_0x3bcc86===0x0||_0x3bcc86===null)_0x436f92();else _0x261a83(new Error(_0x213841+'\x20run\x20'+_0x5a7cd1+_0x384305(0x117)+_0x3bcc86));}),_0x562d31['on'](_0x3fe27e(0x10d),_0x261a83);});}function spawnViteBuildWatch(_0x4ecf9b){return new Promise((_0x237f7f,_0x33bc4c)=>{const _0x2ecfff=a119_0x2757,_0x1f15c0=spawn('vite',[_0x2ecfff(0x10c),'--watch'],{'cwd':_0x4ecf9b,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0x4ecf9b,_0x2ecfff(0x121),_0x2ecfff(0x130))+delimiter+process.env.PATH}});_0x1f15c0['on'](_0x2ecfff(0x118),_0x2fd4fc=>{if(_0x2fd4fc===0x0||_0x2fd4fc===null)_0x237f7f();else _0x33bc4c(new Error('vite\x20build\x20--watch\x20exited\x20with\x20code\x20'+_0x2fd4fc));}),_0x1f15c0['on'](_0x2ecfff(0x10d),_0x33bc4c);});}function spawnVitePreview(_0x2ffaa9){return new Promise((_0x851294,_0x31fd75)=>{const _0x1adee9=a119_0x2757,_0x5370a6=spawn('vite',[_0x1adee9(0x105)],{'cwd':_0x2ffaa9,'stdio':_0x1adee9(0x12e),'shell':!![],'env':{...process.env,'PATH':''+join(_0x2ffaa9,_0x1adee9(0x121),_0x1adee9(0x130))+delimiter+process.env.PATH}});_0x5370a6['on'](_0x1adee9(0x118),_0x1a8775=>{const _0xada277=_0x1adee9;if(_0x1a8775===0x0||_0x1a8775===null)_0x851294();else _0x31fd75(new Error(_0xada277(0x10a)+_0x1a8775));}),_0x5370a6['on'](_0x1adee9(0x10d),_0x31fd75);});}const runFlags=[{'name':a119_0x4aa18d(0x109),'type':a119_0x4aa18d(0xff),'description':a119_0x4aa18d(0x124),'default':![]}];export const runDefinition={'service':'run','command':'run','description':'Run\x20a\x20package.json\x20script','risk':a119_0x4aa18d(0x11c),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a119_0x4aa18d(0x12f),'description':a119_0x4aa18d(0x131),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x5d50d9=a119_0x4aa18d,_0x1b7916=readPackageScripts(process[_0x5d50d9(0x112)]()),_0x257576=[];if(_0x1b7916&&Object[_0x5d50d9(0xfe)](_0x1b7916)[_0x5d50d9(0xfa)]>0x0){const _0xd5c592=Object[_0x5d50d9(0xfe)](_0x1b7916),_0x326451=Math['max'](..._0xd5c592[_0x5d50d9(0xfc)](_0x3e8393=>_0x3e8393[_0x5d50d9(0xfa)]));_0x257576[_0x5d50d9(0x108)]('\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)');for(const [_0x738aec,_0x203b66]of Object[_0x5d50d9(0x111)](_0x1b7916)){_0x257576[_0x5d50d9(0x108)](_0x5d50d9(0x119)+CLI_BIN_NAME+_0x5d50d9(0x12d)+_0x738aec[_0x5d50d9(0xfd)](_0x326451+0x2)+'#\x20'+_0x203b66);}}else _0x257576[_0x5d50d9(0x108)](_0x5d50d9(0x132)),_0x257576[_0x5d50d9(0x108)](_0x5d50d9(0x119)+CLI_BIN_NAME+_0x5d50d9(0x103)),_0x257576[_0x5d50d9(0x108)](_0x5d50d9(0x119)+CLI_BIN_NAME+_0x5d50d9(0x101)),_0x257576[_0x5d50d9(0x108)]('\x20\x20\x20\x20'+CLI_BIN_NAME+'\x20run\x20preview'),_0x257576[_0x5d50d9(0x108)](_0x5d50d9(0x119)+CLI_BIN_NAME+_0x5d50d9(0xf9));return _0x257576[_0x5d50d9(0x11b)]('\x0a');},async 'execute'(_0x52dcf9){const _0x374262=a119_0x4aa18d,_0x1f025=process[_0x374262(0x112)](),_0x40ac74=_0x52dcf9['args'][0x0],_0x5090f8=_0x52dcf9['args'][_0x374262(0x12c)](0x1),_0x1e6b3a=readPackageScripts(_0x1f025);if(!_0x1e6b3a)throw CliErrors[_0x374262(0x10e)](_0x374262(0x104));if(!_0x40ac74){const _0xb88b05=Object[_0x374262(0xfe)](_0x1e6b3a);if(_0xb88b05[_0x374262(0xfa)]===0x0)console[_0x374262(0x116)](_0x374262(0x12a));else{console[_0x374262(0x116)](_0x374262(0x128));const _0x18144f=Math['max'](..._0xb88b05[_0x374262(0xfc)](_0xc376e=>_0xc376e['length']));for(const [_0x10993a,_0x67a3b9]of Object[_0x374262(0x111)](_0x1e6b3a)){console[_0x374262(0x116)](_0x374262(0x119)+_0x10993a[_0x374262(0xfd)](_0x18144f+0x2)+_0x67a3b9);}console[_0x374262(0x116)]('\x0a\x20\x20Usage:\x20'+CLI_BIN_NAME+'\x20run\x20<script>\x0a');}return{'ok':!![]};}if(!_0x1e6b3a[_0x40ac74])throw CliErrors['validation']('Script\x20\x22'+_0x40ac74+'\x22\x20not\x20found\x20in\x20package.json.','Available:\x20'+(Object[_0x374262(0xfe)](_0x1e6b3a)[_0x374262(0x11b)](',\x20')||_0x374262(0xfb)));const _0x3aa3a8=detectPackageManager(_0x1f025);VERSION_CHECK_SCRIPTS[_0x374262(0x107)](_0x40ac74)&&await versionCheck(_0x1f025);if(_0x40ac74===_0x374262(0x105)&&_0x52dcf9[_0x374262(0x125)](_0x374262(0x109)))return await Promise[_0x374262(0x10b)]([spawnViteBuildWatch(_0x1f025),spawnVitePreview(_0x1f025)]),{'ok':!![]};return await spawnScript(_0x3aa3a8,_0x40ac74,_0x5090f8,_0x1f025),{'ok':!![]};}};
@@ -1 +1 @@
1
- const a120_0x2f08d0=a120_0x486c;function a120_0x486c(_0x29394e,_0x19a505){_0x29394e=_0x29394e-0x1a0;const _0x96ddb2=a120_0x96dd();let _0x486cdd=_0x96ddb2[_0x29394e];return _0x486cdd;}(function(_0x326eaf,_0x6bad9d){const _0x507502=a120_0x486c,_0x56a947=_0x326eaf();while(!![]){try{const _0x164962=parseInt(_0x507502(0x1a0))/0x1+parseInt(_0x507502(0x1a1))/0x2+-parseInt(_0x507502(0x1a4))/0x3*(parseInt(_0x507502(0x1aa))/0x4)+-parseInt(_0x507502(0x1a9))/0x5+parseInt(_0x507502(0x1a6))/0x6+parseInt(_0x507502(0x1ab))/0x7*(-parseInt(_0x507502(0x1a5))/0x8)+parseInt(_0x507502(0x1a2))/0x9*(-parseInt(_0x507502(0x1a7))/0xa);if(_0x164962===_0x6bad9d)break;else _0x56a947['push'](_0x56a947['shift']());}catch(_0x3b7dcd){_0x56a947['push'](_0x56a947['shift']());}}}(a120_0x96dd,0xedc03));function a120_0x96dd(){const _0x14d008=['1564008ahhPKJ','7258110KTgpQR','7292660udILGK','json','4051145Yrxbre','973876pfFuoc','21EOXSJP','schema','read','1475024kWSqpk','3264922mGDxId','9XyFUcN','export','15juwalX'];a120_0x96dd=function(){return _0x14d008;};return a120_0x96dd();}import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x4c234a){const _0x4a5b4b=await buildSchemaPayload();return{'ok':!![],'data':_0x4a5b4b};}export const schemaDefinition={'service':a120_0x2f08d0(0x1ac),'command':a120_0x2f08d0(0x1a3),'description':'Export\x20machine-readable\x20command\x20schema\x20(JSON)','risk':a120_0x2f08d0(0x1ad),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a120_0x2f08d0(0x1a8),'flags':[],'execute':execute};
1
+ const a120_0xbacafb=a120_0x1bdf;function a120_0x1bdf(_0x4b8d03,_0x5f03a6){_0x4b8d03=_0x4b8d03-0x6c;const _0x19d56b=a120_0x19d5();let _0x1bdf10=_0x19d56b[_0x4b8d03];return _0x1bdf10;}(function(_0x1b2e72,_0x4aa56e){const _0xaf5d37=a120_0x1bdf,_0x322618=_0x1b2e72();while(!![]){try{const _0x1c5607=-parseInt(_0xaf5d37(0x78))/0x1*(parseInt(_0xaf5d37(0x7a))/0x2)+-parseInt(_0xaf5d37(0x77))/0x3*(-parseInt(_0xaf5d37(0x76))/0x4)+-parseInt(_0xaf5d37(0x6f))/0x5*(-parseInt(_0xaf5d37(0x72))/0x6)+parseInt(_0xaf5d37(0x74))/0x7*(-parseInt(_0xaf5d37(0x6d))/0x8)+-parseInt(_0xaf5d37(0x6c))/0x9+parseInt(_0xaf5d37(0x7b))/0xa*(parseInt(_0xaf5d37(0x75))/0xb)+-parseInt(_0xaf5d37(0x6e))/0xc;if(_0x1c5607===_0x4aa56e)break;else _0x322618['push'](_0x322618['shift']());}catch(_0x1a18e0){_0x322618['push'](_0x322618['shift']());}}}(a120_0x19d5,0x2e0bb));import{buildSchemaPayload}from'../framework/schema-export.js';function a120_0x19d5(){const _0x54d423=['57msGoTX','7345usiouO','export','30KVbqIG','494930wGHJPG','2727243egTcHZ','507176kNhcht','733296gNwkWe','2095MaAFGy','json','Export\x20machine-readable\x20command\x20schema\x20(JSON)','978mnLwLU','read','7RosmLg','77qaHVdG','65592dXQyIg'];a120_0x19d5=function(){return _0x54d423;};return a120_0x19d5();}async function execute(_0x2b3a27){const _0x38ca29=await buildSchemaPayload();return{'ok':!![],'data':_0x38ca29};}export const schemaDefinition={'service':'schema','command':a120_0xbacafb(0x79),'description':a120_0xbacafb(0x71),'risk':a120_0xbacafb(0x73),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a120_0xbacafb(0x70),'flags':[],'execute':execute};
@@ -1 +1 @@
1
- const a121_0x4ba720=a121_0x5780;(function(_0x3dcbf1,_0x120fd0){const _0x122b5e=a121_0x5780,_0x5a2f1b=_0x3dcbf1();while(!![]){try{const _0xfe5c81=-parseInt(_0x122b5e(0x189))/0x1+parseInt(_0x122b5e(0x187))/0x2*(parseInt(_0x122b5e(0x188))/0x3)+-parseInt(_0x122b5e(0x19d))/0x4*(parseInt(_0x122b5e(0x193))/0x5)+parseInt(_0x122b5e(0x186))/0x6+parseInt(_0x122b5e(0x18d))/0x7+parseInt(_0x122b5e(0x19a))/0x8+-parseInt(_0x122b5e(0x184))/0x9*(parseInt(_0x122b5e(0x199))/0xa);if(_0xfe5c81===_0x120fd0)break;else _0x5a2f1b['push'](_0x5a2f1b['shift']());}catch(_0x3dfb94){_0x5a2f1b['push'](_0x5a2f1b['shift']());}}}(a121_0xdbcb,0x84685));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a121_0xdbcb(){const _0x3fafdb=['../../skills/npx-skills-add.js','cwd','Installing\x20official\x20skill\x20via\x20npx\x20(','1340BGlmxV','2468048RRZgFv','log','write','328FMITYL','Check\x20network\x20connectivity\x20and\x20try\x20again.','lovrabet/rabetbase','Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20skill\x20is\x20already\x20present.','unknown','64674SrDIGI','Install\x20developer\x20skill\x20package','2295456jJXpFA','94dxnFhG','45264plkGjn','208087gLLunY','\x20skill\x20installed','skill-install','skill','2962246ZSxDEJ','执行安装技能包命令(委托给\x20npx\x20skills\x20add\x20-g\x20-y)','apiError','skipped',')...','setLogPath','6710poarME','pipe','npx\x20skills\x20add\x20failed:\x20'];a121_0xdbcb=function(){return _0x3fafdb;};return a121_0xdbcb();}function a121_0x5780(_0x57cb73,_0x1c2d3a){_0x57cb73=_0x57cb73-0x181;const _0xdbcbbb=a121_0xdbcb();let _0x57804c=_0xdbcbbb[_0x57cb73];return _0x57804c;}import{logger}from'../../utils/logger.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE}from'../../skills/npx-skills-add.js';export const skillDefinitions=[{'service':a121_0x4ba720(0x18c),'command':'install','description':a121_0x4ba720(0x185),'risk':a121_0x4ba720(0x19c),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x255e6e){const _0x201a35=a121_0x4ba720;logger[_0x201a35(0x192)](process[_0x201a35(0x197)]()),logger['info'](_0x201a35(0x18b),_0x201a35(0x18e));const {runNpxSkillsAddGlobal:_0x2d1604}=await import(_0x201a35(0x196)),_0x51675b=_0x255e6e['nonInteractive']?_0x201a35(0x194):'inherit';console[_0x201a35(0x19b)](_0x201a35(0x198)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+_0x201a35(0x191));const _0x39bac9=_0x2d1604(process[_0x201a35(0x197)](),_0x201a35(0x181),{'stdio':_0x51675b});if(_0x39bac9[_0x201a35(0x190)])console[_0x201a35(0x19b)](_0x201a35(0x182));else{if(_0x39bac9['ok'])console[_0x201a35(0x19b)](CLI_BIN_NAME+_0x201a35(0x18a));else throw CliErrors[_0x201a35(0x18f)](_0x201a35(0x195)+(_0x39bac9['error']||_0x201a35(0x183)),_0x201a35(0x19e));}return{'ok':!![]};}}];
1
+ function a121_0x3685(){const _0x30ac7f=['skill','cwd','inherit','9buXRtU','npx\x20skills\x20add\x20failed:\x20','76TZhKxr',')...','lovrabet/rabetbase','write','Install\x20developer\x20skill\x20package','1385490rSQDWQ','Installing\x20official\x20skill\x20via\x20npx\x20(','Check\x20network\x20connectivity\x20and\x20try\x20again.','Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20skill\x20is\x20already\x20present.','error','apiError','unknown','11626pebdel','log','24651612WbecUw','8355128lEWlyh','6194482yimqOr','pipe','873129bODLTv','564NYovbZ','11rHJTCP','8Cmsbjx','35695qwCSvb'];a121_0x3685=function(){return _0x30ac7f;};return a121_0x3685();}const a121_0x410fb9=a121_0x507a;function a121_0x507a(_0x58c7cc,_0x2b58c7){_0x58c7cc=_0x58c7cc-0xd1;const _0x368579=a121_0x3685();let _0x507a18=_0x368579[_0x58c7cc];return _0x507a18;}(function(_0x427197,_0x5eb496){const _0x4acb6a=a121_0x507a,_0x4381f3=_0x427197();while(!![]){try{const _0x2c3e9=-parseInt(_0x4acb6a(0xe7))/0x1*(parseInt(_0x4acb6a(0xdb))/0x2)+-parseInt(_0x4acb6a(0xd1))/0x3*(-parseInt(_0x4acb6a(0xd4))/0x4)+-parseInt(_0x4acb6a(0xd5))/0x5*(-parseInt(_0x4acb6a(0xd2))/0x6)+parseInt(_0x4acb6a(0xeb))/0x7+parseInt(_0x4acb6a(0xea))/0x8*(parseInt(_0x4acb6a(0xd9))/0x9)+-parseInt(_0x4acb6a(0xe0))/0xa*(parseInt(_0x4acb6a(0xd3))/0xb)+-parseInt(_0x4acb6a(0xe9))/0xc;if(_0x2c3e9===_0x5eb496)break;else _0x4381f3['push'](_0x4381f3['shift']());}catch(_0x28b870){_0x4381f3['push'](_0x4381f3['shift']());}}}(a121_0x3685,0x85bf7));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE}from'../../skills/npx-skills-add.js';export const skillDefinitions=[{'service':a121_0x410fb9(0xd6),'command':'install','description':a121_0x410fb9(0xdf),'risk':a121_0x410fb9(0xde),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x41aa62){const _0x2069a3=a121_0x410fb9;logger['setLogPath'](process['cwd']()),logger['info']('skill-install','执行安装技能包命令(委托给\x20npx\x20skills\x20add\x20-g\x20-y)');const {runNpxSkillsAddGlobal:_0x36973e}=await import('../../skills/npx-skills-add.js'),_0x391865=_0x41aa62['nonInteractive']?_0x2069a3(0xec):_0x2069a3(0xd8);console[_0x2069a3(0xe8)](_0x2069a3(0xe1)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+_0x2069a3(0xdc));const _0x468c47=_0x36973e(process[_0x2069a3(0xd7)](),_0x2069a3(0xdd),{'stdio':_0x391865});if(_0x468c47['skipped'])console[_0x2069a3(0xe8)](_0x2069a3(0xe3));else{if(_0x468c47['ok'])console[_0x2069a3(0xe8)](CLI_BIN_NAME+'\x20skill\x20installed');else throw CliErrors[_0x2069a3(0xe5)](_0x2069a3(0xda)+(_0x468c47[_0x2069a3(0xe4)]||_0x2069a3(0xe6)),_0x2069a3(0xe2));}return{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a122_0x3b4c55=a122_0xe45f;(function(_0x50a0d5,_0xa1a335){const _0x1bd484=a122_0xe45f,_0x33f817=_0x50a0d5();while(!![]){try{const _0x23b0ff=parseInt(_0x1bd484(0x1da))/0x1+-parseInt(_0x1bd484(0x1e4))/0x2+-parseInt(_0x1bd484(0x1f5))/0x3+-parseInt(_0x1bd484(0x201))/0x4+-parseInt(_0x1bd484(0x1e6))/0x5+-parseInt(_0x1bd484(0x1f6))/0x6+parseInt(_0x1bd484(0x1ea))/0x7;if(_0x23b0ff===_0xa1a335)break;else _0x33f817['push'](_0x33f817['shift']());}catch(_0x1386ff){_0x33f817['push'](_0x33f817['shift']());}}}(a122_0x11d4,0xb0784));import{writeFile}from'node:fs/promises';function a122_0xe45f(_0x38b725,_0x90b8b4){_0x38b725=_0x38b725-0x1d9;const _0x11d491=a122_0x11d4();let _0xe45ff7=_0x11d491[_0x38b725];return _0xe45ff7;}import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';function a122_0x11d4(){const _0x57d510=['mybatisXml','dbName','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','dbId\x20必须为正整数','937432WBXRIR','catch','db-id','MyBatis\x20XML(mybatisXml)','</select>','__manual__','description','isFinite','appCode','str','sqlName','sql','number','/smartapi/custom/saveUserCustomSql','请输入目标数据库\x20dbId:','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','stringify','Created\x20SQL\x20query\x20','high-risk-write','flag','<server-generated-sqlCode>','toISOString','Local\x20SQL\x20file\x20mode','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','211282HCcRWB','isInteger','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','sqlRoot','new','validation','请选择目标数据库:','create','map','Invalid\x20database\x20selection\x20payload:\x20','196878pIkyfb','dbId','4580070dSzEhP','name','flagMissing','sqls','23833824vmpNui','File\x20already\x20exists:\x20','sqlRootDir','length','nonInteractive','SELECT\x201\x20AS\x20id;','trim','sqlCode','join','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','适合带动态标签的\x20MyBatis\x20XML\x20SQL','3363186hHsIkN','3140526gIAtxU','dbId\x20不能为空','lockFilePath','请输入\x20SQL\x20名称:','utf8','SQL\x20query\x20display\x20name','mode'];a122_0x11d4=function(){return _0x57d510;};return a122_0x11d4();}import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x5b7d1b){const _0x550c49=a122_0xe45f;if(_0x5b7d1b===_0x550c49(0x1fd))return['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','\x20\x20SELECT\x201\x20AS\x20id',_0x550c49(0x205),''][_0x550c49(0x1f2)]('\x0a');return[_0x550c49(0x1ef),''][_0x550c49(0x1f2)]('\x0a');}export const sqlCreate={'service':a122_0x3b4c55(0x20c),'command':a122_0x3b4c55(0x1e1),'description':a122_0x3b4c55(0x1f3),'risk':a122_0x3b4c55(0x213),'flags':[{'name':a122_0x3b4c55(0x1e7),'type':'string','description':a122_0x3b4c55(0x1fb)},{'name':'db-id','type':a122_0x3b4c55(0x20d),'description':'Target\x20database\x20ID'},{'name':a122_0x3b4c55(0x1fc),'type':'string','enum':[a122_0x3b4c55(0x20c),'mybatisXml'],'description':a122_0x3b4c55(0x217)}],async 'validate'(_0x3be497){const _0x3dde76=a122_0x3b4c55;if(!_0x3be497[_0x3dde76(0x1ee)])return;if(!_0x3be497[_0x3dde76(0x20a)](_0x3dde76(0x1e7))[_0x3dde76(0x1f0)]())throw CliErrors[_0x3dde76(0x1e8)](_0x3dde76(0x1e7),_0x3dde76(0x210));const _0x59bebf=resolveProvidedDbId(_0x3be497);if(typeof _0x59bebf!==_0x3dde76(0x20d)||!Number['isFinite'](_0x59bebf)||_0x59bebf<=0x0)throw CliErrors['flagMissing'](_0x3dde76(0x203),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');if(!_0x3be497['str'](_0x3dde76(0x1fc))[_0x3dde76(0x1f0)]())throw CliErrors['flagMissing'](_0x3dde76(0x1fc),_0x3dde76(0x1dc));},async 'dryRun'(_0x24a8fb){const _0x3b8c34=a122_0x3b4c55,_0x434aab=loadSqlProjectConfig(_0x24a8fb[_0x3b8c34(0x209)]),{sqlName:_0x508d18,dbId:_0x228f82,dbName:_0x17f529,mode:_0x1c73e2}=await resolveSqlNewInputs(_0x24a8fb),_0xbbce13=buildSqlRelativePath(_0x3b8c34(0x215),_0x508d18,_0x17f529,_0x1c73e2,_0x228f82),_0x5b3511=_0x434aab[_0x3b8c34(0x1ec)]+'/'+_0xbbce13;return{'method':'POST','url':_0x3b8c34(0x20e),'body':{'appCode':_0x24a8fb[_0x3b8c34(0x209)],'sqlName':_0x508d18,'dbId':_0x228f82,'mode':_0x1c73e2,'localPath':_0x5b3511},'description':_0x3b8c34(0x1d9)+_0x434aab[_0x3b8c34(0x1ec)]};},async 'execute'(_0x29214a){const _0x5e6bf7=a122_0x3b4c55,_0x14ba19=loadSqlProjectConfig(_0x29214a['appCode']),{sqlName:_0x386fc4,dbId:_0x1e66d2,dbName:_0x28bd13,mode:_0x57c33c}=await resolveSqlNewInputs(_0x29214a),_0x2a4694=generateSqlTemplate(_0x57c33c),_0x2cc0c2=await createSqlQuery({'appCode':_0x29214a['appCode'],'sqlName':_0x386fc4,'dbId':_0x1e66d2,'sqlContent':_0x2a4694}),_0x4148d7=ensureRemoteSqlContent(_0x2cc0c2),_0x276e89=_0x28bd13||await getDbName(_0x29214a[_0x5e6bf7(0x209)],_0x1e66d2)[_0x5e6bf7(0x202)](()=>undefined),_0x4adfd4=buildSqlRelativePath(_0x2cc0c2[_0x5e6bf7(0x1f1)],_0x2cc0c2[_0x5e6bf7(0x20b)],_0x276e89,_0x57c33c,_0x1e66d2),_0x498e50=_0x14ba19[_0x5e6bf7(0x1ec)]+'/'+_0x4adfd4,_0x29d561=buildLocalSqlFileContent({'sqlCode':_0x2cc0c2[_0x5e6bf7(0x1f1)],'sqlName':_0x2cc0c2[_0x5e6bf7(0x20b)],'dbId':_0x2cc0c2[_0x5e6bf7(0x1e5)]},_0x4148d7,{'dbName':_0x276e89,'mode':_0x57c33c,'syncedAt':new Date()[_0x5e6bf7(0x216)](),'description':_0x2cc0c2[_0x5e6bf7(0x207)]});if(await fileExists(_0x498e50))throw CliErrors[_0x5e6bf7(0x1df)](_0x5e6bf7(0x1eb)+_0x498e50);await ensureParentDirectory(_0x498e50),await writeFile(_0x498e50,_0x29d561,_0x5e6bf7(0x1fa));const _0x4f9b9f=await readSqlLockFile(_0x14ba19[_0x5e6bf7(0x1f8)]),{lockData:_0x4fb1e7,appLock:_0x18fb87}=ensureSqlLockScope(_0x4f9b9f??createEmptySqlLock(),_0x14ba19[_0x5e6bf7(0x209)],_0x14ba19[_0x5e6bf7(0x1dd)],_0x5e6bf7(0x1de));return _0x18fb87[_0x5e6bf7(0x1e9)][_0x2cc0c2[_0x5e6bf7(0x1f1)]]={...buildSqlLockEntry(_0x2cc0c2,_0x4148d7,computeSqlContentHash(_0x29d561),{'dbName':_0x276e89}),'path':_0x4adfd4,'mode':_0x57c33c},_0x18fb87['lastSync']=new Date()[_0x5e6bf7(0x216)](),await writeSqlLockFile(_0x14ba19[_0x5e6bf7(0x1f8)],_0x4fb1e7),{'ok':!![],'data':{'id':_0x2cc0c2['id'],'sqlCode':_0x2cc0c2[_0x5e6bf7(0x1f1)],'sqlName':_0x2cc0c2[_0x5e6bf7(0x20b)],'dbId':_0x2cc0c2[_0x5e6bf7(0x1e5)],'path':_0x498e50,'mode':_0x57c33c},'message':_0x5e6bf7(0x212)+_0x2cc0c2[_0x5e6bf7(0x1f1)]};}};async function resolveSqlNewInputs(_0x561a51){const _0x5b589e=await resolveSqlNameInput(_0x561a51),{dbId:_0xdb32cf,dbName:_0x2eeb5e}=await resolveDbSelection(_0x561a51),_0x1cf44a=await resolveSqlModeInput(_0x561a51);return{'sqlName':_0x5b589e,'dbId':_0xdb32cf,'dbName':_0x2eeb5e,'mode':_0x1cf44a};}async function resolveSqlNameInput(_0x50810c){const _0x46d29c=a122_0x3b4c55,_0x114067=_0x50810c[_0x46d29c(0x20a)]('name')[_0x46d29c(0x1f0)]();if(_0x114067)return _0x114067;if(_0x50810c['nonInteractive'])throw CliErrors[_0x46d29c(0x1e8)](_0x46d29c(0x1e7),_0x46d29c(0x210));return(await input({'message':_0x46d29c(0x1f9),'validate':_0x2865b1=>_0x2865b1['trim']()?!![]:'SQL\x20名称不能为空'}))['trim']();}async function resolveDbSelection(_0x3a386d){const _0x18574e=a122_0x3b4c55,_0x92f0e=resolveProvidedDbId(_0x3a386d);if(typeof _0x92f0e===_0x18574e(0x20d)&&Number[_0x18574e(0x208)](_0x92f0e)&&_0x92f0e>0x0)return{'dbId':_0x92f0e,'dbName':await getDbName(_0x3a386d[_0x18574e(0x209)],_0x92f0e)[_0x18574e(0x202)](()=>undefined)};if(_0x3a386d[_0x18574e(0x1ee)])throw CliErrors[_0x18574e(0x1e8)](_0x18574e(0x203),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x2a2763=await listDatabases(_0x3a386d['appCode'])['catch'](()=>[]);if(_0x2a2763[_0x18574e(0x1ed)]===0x1)return{'dbId':_0x2a2763[0x0][_0x18574e(0x1e5)],'dbName':_0x2a2763[0x0][_0x18574e(0x1fe)]};if(_0x2a2763['length']>0x1){const _0xd7a4da=await select({'message':_0x18574e(0x1e0),'choices':[..._0x2a2763[_0x18574e(0x1e2)](_0xdf7333=>({'name':_0xdf7333[_0x18574e(0x1fe)]+'\x20('+_0xdf7333['dbId']+')','value':serializeDbSelection(_0xdf7333)})),{'name':'✎\x20手动输入\x20dbId','value':_0x18574e(0x206)}]});if(_0xd7a4da!==_0x18574e(0x206))return deserializeDbSelection(_0xd7a4da);}const _0x5c9214=await input({'message':_0x18574e(0x20f),'validate':_0x3fd295=>{const _0x11ef2e=_0x18574e,_0x224abd=_0x3fd295[_0x11ef2e(0x1f0)]();if(!_0x224abd)return _0x11ef2e(0x1f7);const _0x50e8ef=Number(_0x224abd);if(!Number[_0x11ef2e(0x1db)](_0x50e8ef)||_0x50e8ef<=0x0)return _0x11ef2e(0x200);return!![];}});return{'dbId':Number(_0x5c9214[_0x18574e(0x1f0)]())};}async function resolveSqlModeInput(_0x28632a){const _0x10600e=a122_0x3b4c55,_0x16c043=_0x28632a[_0x10600e(0x20a)](_0x10600e(0x1fc))[_0x10600e(0x1f0)]();if(_0x16c043==='sql'||_0x16c043===_0x10600e(0x1fd))return _0x16c043;if(_0x28632a['nonInteractive'])throw CliErrors[_0x10600e(0x1e8)](_0x10600e(0x1fc),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');return await select({'message':'请选择本地\x20SQL\x20模式:','choices':[{'name':'普通\x20SQL(sql)','value':_0x10600e(0x20c),'description':_0x10600e(0x1ff)},{'name':_0x10600e(0x204),'value':_0x10600e(0x1fd),'description':_0x10600e(0x1f4)}]});}function serializeDbSelection(_0x48a947){const _0x3f973e=a122_0x3b4c55;return JSON[_0x3f973e(0x211)]({'dbId':_0x48a947[_0x3f973e(0x1e5)],'dbName':_0x48a947['dbName']});}function deserializeDbSelection(_0x28bcbe){const _0x3facc7=a122_0x3b4c55;try{const _0x25eec9=JSON['parse'](_0x28bcbe);if(typeof _0x25eec9[_0x3facc7(0x1e5)]===_0x3facc7(0x20d)&&Number[_0x3facc7(0x208)](_0x25eec9[_0x3facc7(0x1e5)]))return{'dbId':_0x25eec9[_0x3facc7(0x1e5)],'dbName':_0x25eec9['dbName']};}catch{}throw CliErrors['validation'](_0x3facc7(0x1e3)+_0x28bcbe);}function resolveProvidedDbId(_0x241004){const _0x2e1e9d=a122_0x3b4c55,_0x1f7c21=_0x241004[_0x2e1e9d(0x214)](_0x2e1e9d(0x203));if(typeof _0x1f7c21==='number'&&Number['isFinite'](_0x1f7c21))return _0x1f7c21;return undefined;}
1
+ function a122_0x1ae0(){const _0x26964b=['Invalid\x20database\x20selection\x20payload:\x20','isFinite','name','number','8765325zaHfdi','new','MyBatis\x20XML(mybatisXml)','SQL\x20名称不能为空','File\x20already\x20exists:\x20','请输入目标数据库\x20dbId:','适合带动态标签的\x20MyBatis\x20XML\x20SQL','2330461lwvqdk','nonInteractive','普通\x20SQL(sql)','sql','utf8','description','1jEqQBl','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','lockFilePath','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','create','stringify','mode','2257292zRVOsD','__manual__','str','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','sqlCode','toISOString','请输入\x20SQL\x20名称:','Local\x20SQL\x20file\x20mode','join','string','appCode','catch','/smartapi/custom/saveUserCustomSql','POST','sqlName','32otDoiT','db-id','4105515brgbMY','sqls','trim','请选择本地\x20SQL\x20模式:','parse','dbId','validation','6049045YhclQA','✎\x20手动输入\x20dbId','<server-generated-sqlCode>','请选择目标数据库:','3953178RfBaRv','length','mybatisXml','dbId\x20必须为正整数','\x20\x20SELECT\x201\x20AS\x20id','Created\x20SQL\x20query\x20','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','lastSync','dbName','sqlRootDir','814576glRPCv','flagMissing','flag','SQL\x20query\x20display\x20name'];a122_0x1ae0=function(){return _0x26964b;};return a122_0x1ae0();}const a122_0x3284b6=a122_0x1a2c;(function(_0x1cc30a,_0x1fdbfc){const _0x2a2204=a122_0x1a2c,_0x59390a=_0x1cc30a();while(!![]){try{const _0x3f7e23=parseInt(_0x2a2204(0x11f))/0x1*(parseInt(_0x2a2204(0x10a))/0x2)+-parseInt(_0x2a2204(0x138))/0x3+-parseInt(_0x2a2204(0x127))/0x4+parseInt(_0x2a2204(0x13f))/0x5+parseInt(_0x2a2204(0x143))/0x6+parseInt(_0x2a2204(0x119))/0x7*(parseInt(_0x2a2204(0x136))/0x8)+-parseInt(_0x2a2204(0x112))/0x9;if(_0x3f7e23===_0x1fdbfc)break;else _0x59390a['push'](_0x59390a['shift']());}catch(_0x1c196e){_0x59390a['push'](_0x59390a['shift']());}}}(a122_0x1ae0,0xab1e3));function a122_0x1a2c(_0x5b088b,_0x2b6743){_0x5b088b=_0x5b088b-0x109;const _0x1ae0d3=a122_0x1ae0();let _0x1a2c20=_0x1ae0d3[_0x5b088b];return _0x1a2c20;}import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x1cf1e9){const _0x3d4837=a122_0x1a2c;if(_0x1cf1e9==='mybatisXml')return[_0x3d4837(0x123),_0x3d4837(0x147),'</select>',''][_0x3d4837(0x12f)]('\x0a');return['SELECT\x201\x20AS\x20id;',''][_0x3d4837(0x12f)]('\x0a');}export const sqlCreate={'service':a122_0x3284b6(0x11c),'command':a122_0x3284b6(0x124),'description':a122_0x3284b6(0x12a),'risk':'high-risk-write','flags':[{'name':a122_0x3284b6(0x110),'type':a122_0x3284b6(0x130),'description':a122_0x3284b6(0x10d)},{'name':'db-id','type':a122_0x3284b6(0x111),'description':'Target\x20database\x20ID'},{'name':a122_0x3284b6(0x126),'type':a122_0x3284b6(0x130),'enum':[a122_0x3284b6(0x11c),a122_0x3284b6(0x145)],'description':a122_0x3284b6(0x12e)}],async 'validate'(_0x3036b4){const _0xe91c69=a122_0x3284b6;if(!_0x3036b4['nonInteractive'])return;if(!_0x3036b4[_0xe91c69(0x129)](_0xe91c69(0x110))['trim']())throw CliErrors[_0xe91c69(0x10b)](_0xe91c69(0x110),_0xe91c69(0x121));const _0x3a5760=resolveProvidedDbId(_0x3036b4);if(typeof _0x3a5760!==_0xe91c69(0x111)||!Number[_0xe91c69(0x10f)](_0x3a5760)||_0x3a5760<=0x0)throw CliErrors[_0xe91c69(0x10b)](_0xe91c69(0x137),_0xe91c69(0x120));if(!_0x3036b4[_0xe91c69(0x129)](_0xe91c69(0x126))['trim']())throw CliErrors[_0xe91c69(0x10b)](_0xe91c69(0x126),_0xe91c69(0x149));},async 'dryRun'(_0x53b117){const _0x54e284=a122_0x3284b6,_0x5745bc=loadSqlProjectConfig(_0x53b117['appCode']),{sqlName:_0x34256e,dbId:_0x50f882,dbName:_0x26d502,mode:_0x72d576}=await resolveSqlNewInputs(_0x53b117),_0x3fb92e=buildSqlRelativePath(_0x54e284(0x141),_0x34256e,_0x26d502,_0x72d576,_0x50f882),_0x34519b=_0x5745bc['sqlRootDir']+'/'+_0x3fb92e;return{'method':_0x54e284(0x134),'url':_0x54e284(0x133),'body':{'appCode':_0x53b117[_0x54e284(0x131)],'sqlName':_0x34256e,'dbId':_0x50f882,'mode':_0x72d576,'localPath':_0x34519b},'description':'Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20'+_0x5745bc[_0x54e284(0x109)]};},async 'execute'(_0x26fc57){const _0x480271=a122_0x3284b6,_0x28399c=loadSqlProjectConfig(_0x26fc57['appCode']),{sqlName:_0x74b930,dbId:_0x26eb86,dbName:_0xf80ccd,mode:_0x1fc43a}=await resolveSqlNewInputs(_0x26fc57),_0x4842cd=generateSqlTemplate(_0x1fc43a),_0x4fdd05=await createSqlQuery({'appCode':_0x26fc57[_0x480271(0x131)],'sqlName':_0x74b930,'dbId':_0x26eb86,'sqlContent':_0x4842cd}),_0x26b29a=ensureRemoteSqlContent(_0x4fdd05),_0x32c797=_0xf80ccd||await getDbName(_0x26fc57['appCode'],_0x26eb86)[_0x480271(0x132)](()=>undefined),_0x55e167=buildSqlRelativePath(_0x4fdd05['sqlCode'],_0x4fdd05[_0x480271(0x135)],_0x32c797,_0x1fc43a,_0x26eb86),_0x25451d=_0x28399c[_0x480271(0x109)]+'/'+_0x55e167,_0x1b5e51=buildLocalSqlFileContent({'sqlCode':_0x4fdd05[_0x480271(0x12b)],'sqlName':_0x4fdd05[_0x480271(0x135)],'dbId':_0x4fdd05[_0x480271(0x13d)]},_0x26b29a,{'dbName':_0x32c797,'mode':_0x1fc43a,'syncedAt':new Date()[_0x480271(0x12c)](),'description':_0x4fdd05[_0x480271(0x11e)]});if(await fileExists(_0x25451d))throw CliErrors[_0x480271(0x13e)](_0x480271(0x116)+_0x25451d);await ensureParentDirectory(_0x25451d),await writeFile(_0x25451d,_0x1b5e51,_0x480271(0x11d));const _0xbd1031=await readSqlLockFile(_0x28399c[_0x480271(0x122)]),{lockData:_0x57a6ce,appLock:_0x49bffe}=ensureSqlLockScope(_0xbd1031??createEmptySqlLock(),_0x28399c[_0x480271(0x131)],_0x28399c['sqlRoot'],_0x480271(0x113));return _0x49bffe[_0x480271(0x139)][_0x4fdd05[_0x480271(0x12b)]]={...buildSqlLockEntry(_0x4fdd05,_0x26b29a,computeSqlContentHash(_0x1b5e51),{'dbName':_0x32c797}),'path':_0x55e167,'mode':_0x1fc43a},_0x49bffe[_0x480271(0x14a)]=new Date()[_0x480271(0x12c)](),await writeSqlLockFile(_0x28399c[_0x480271(0x122)],_0x57a6ce),{'ok':!![],'data':{'id':_0x4fdd05['id'],'sqlCode':_0x4fdd05[_0x480271(0x12b)],'sqlName':_0x4fdd05[_0x480271(0x135)],'dbId':_0x4fdd05[_0x480271(0x13d)],'path':_0x25451d,'mode':_0x1fc43a},'message':_0x480271(0x148)+_0x4fdd05[_0x480271(0x12b)]};}};async function resolveSqlNewInputs(_0x34341b){const _0x217933=await resolveSqlNameInput(_0x34341b),{dbId:_0x56a4c9,dbName:_0x3ae6b2}=await resolveDbSelection(_0x34341b),_0x4a9665=await resolveSqlModeInput(_0x34341b);return{'sqlName':_0x217933,'dbId':_0x56a4c9,'dbName':_0x3ae6b2,'mode':_0x4a9665};}async function resolveSqlNameInput(_0x2d8c50){const _0x49632a=a122_0x3284b6,_0x55fe9c=_0x2d8c50[_0x49632a(0x129)](_0x49632a(0x110))[_0x49632a(0x13a)]();if(_0x55fe9c)return _0x55fe9c;if(_0x2d8c50[_0x49632a(0x11a)])throw CliErrors[_0x49632a(0x10b)](_0x49632a(0x110),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');return(await input({'message':_0x49632a(0x12d),'validate':_0x5cb21d=>_0x5cb21d[_0x49632a(0x13a)]()?!![]:_0x49632a(0x115)}))[_0x49632a(0x13a)]();}async function resolveDbSelection(_0x17c4cd){const _0x4b832d=a122_0x3284b6,_0x504bb5=resolveProvidedDbId(_0x17c4cd);if(typeof _0x504bb5===_0x4b832d(0x111)&&Number['isFinite'](_0x504bb5)&&_0x504bb5>0x0)return{'dbId':_0x504bb5,'dbName':await getDbName(_0x17c4cd['appCode'],_0x504bb5)[_0x4b832d(0x132)](()=>undefined)};if(_0x17c4cd[_0x4b832d(0x11a)])throw CliErrors[_0x4b832d(0x10b)](_0x4b832d(0x137),_0x4b832d(0x120));const _0xc457af=await listDatabases(_0x17c4cd[_0x4b832d(0x131)])[_0x4b832d(0x132)](()=>[]);if(_0xc457af[_0x4b832d(0x144)]===0x1)return{'dbId':_0xc457af[0x0][_0x4b832d(0x13d)],'dbName':_0xc457af[0x0][_0x4b832d(0x14b)]};if(_0xc457af[_0x4b832d(0x144)]>0x1){const _0x29b172=await select({'message':_0x4b832d(0x142),'choices':[..._0xc457af['map'](_0x48208d=>({'name':_0x48208d[_0x4b832d(0x14b)]+'\x20('+_0x48208d[_0x4b832d(0x13d)]+')','value':serializeDbSelection(_0x48208d)})),{'name':_0x4b832d(0x140),'value':'__manual__'}]});if(_0x29b172!==_0x4b832d(0x128))return deserializeDbSelection(_0x29b172);}const _0x2a8caa=await input({'message':_0x4b832d(0x117),'validate':_0x59a21b=>{const _0x509b0d=_0x4b832d,_0x199eee=_0x59a21b['trim']();if(!_0x199eee)return'dbId\x20不能为空';const _0x561277=Number(_0x199eee);if(!Number['isInteger'](_0x561277)||_0x561277<=0x0)return _0x509b0d(0x146);return!![];}});return{'dbId':Number(_0x2a8caa[_0x4b832d(0x13a)]())};}async function resolveSqlModeInput(_0x4a814f){const _0xceee3b=a122_0x3284b6,_0xb67cb7=_0x4a814f[_0xceee3b(0x129)](_0xceee3b(0x126))[_0xceee3b(0x13a)]();if(_0xb67cb7===_0xceee3b(0x11c)||_0xb67cb7===_0xceee3b(0x145))return _0xb67cb7;if(_0x4a814f['nonInteractive'])throw CliErrors[_0xceee3b(0x10b)]('mode',_0xceee3b(0x149));return await select({'message':_0xceee3b(0x13b),'choices':[{'name':_0xceee3b(0x11b),'value':_0xceee3b(0x11c),'description':'适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句'},{'name':_0xceee3b(0x114),'value':_0xceee3b(0x145),'description':_0xceee3b(0x118)}]});}function serializeDbSelection(_0x36eac3){const _0x17b846=a122_0x3284b6;return JSON[_0x17b846(0x125)]({'dbId':_0x36eac3[_0x17b846(0x13d)],'dbName':_0x36eac3[_0x17b846(0x14b)]});}function deserializeDbSelection(_0x1ca68b){const _0x42a25a=a122_0x3284b6;try{const _0x253d57=JSON[_0x42a25a(0x13c)](_0x1ca68b);if(typeof _0x253d57[_0x42a25a(0x13d)]===_0x42a25a(0x111)&&Number[_0x42a25a(0x10f)](_0x253d57['dbId']))return{'dbId':_0x253d57[_0x42a25a(0x13d)],'dbName':_0x253d57['dbName']};}catch{}throw CliErrors[_0x42a25a(0x13e)](_0x42a25a(0x10e)+_0x1ca68b);}function resolveProvidedDbId(_0x386595){const _0x4f6653=a122_0x3284b6,_0x540ed7=_0x386595[_0x4f6653(0x10c)](_0x4f6653(0x137));if(typeof _0x540ed7===_0x4f6653(0x111)&&Number[_0x4f6653(0x10f)](_0x540ed7))return _0x540ed7;return undefined;}