@lovrabet/rabetbase-cli 2.3.3-beta.1 → 2.3.3-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 (219) 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/app-config/delete.js +1 -1
  27. package/lib/commands/app-config/get.js +1 -1
  28. package/lib/commands/app-config/index.js +1 -1
  29. package/lib/commands/app-config/list.js +1 -1
  30. package/lib/commands/app-config/set.js +1 -1
  31. package/lib/commands/app-config/shared.js +1 -1
  32. package/lib/commands/auth/index.js +1 -1
  33. package/lib/commands/bff/create.js +1 -1
  34. package/lib/commands/bff/delete.js +1 -1
  35. package/lib/commands/bff/detail.js +1 -1
  36. package/lib/commands/bff/index.js +1 -1
  37. package/lib/commands/bff/list.js +1 -1
  38. package/lib/commands/bff/pull.js +1 -1
  39. package/lib/commands/bff/push.js +1 -1
  40. package/lib/commands/bff/status.js +1 -1
  41. package/lib/commands/cli-skill/index.js +1 -1
  42. package/lib/commands/cli-update.js +1 -1
  43. package/lib/commands/codegen/index.js +1 -1
  44. package/lib/commands/codegen/sdk.js +1 -1
  45. package/lib/commands/codegen/sql.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/flags.js +1 -1
  48. package/lib/commands/common/validate.js +1 -1
  49. package/lib/commands/config/get.js +1 -1
  50. package/lib/commands/config/index.js +1 -1
  51. package/lib/commands/config/list.js +1 -1
  52. package/lib/commands/config/set.js +1 -1
  53. package/lib/commands/config/shared.js +1 -1
  54. package/lib/commands/data/filter.js +1 -1
  55. package/lib/commands/data/getOne.js +1 -1
  56. package/lib/commands/data/index.js +1 -1
  57. package/lib/commands/data/shared.js +1 -1
  58. package/lib/commands/dataset/business-group-update.js +1 -1
  59. package/lib/commands/dataset/capability.js +1 -1
  60. package/lib/commands/dataset/delete.js +1 -1
  61. package/lib/commands/dataset/detail.js +1 -1
  62. package/lib/commands/dataset/extend-update.js +1 -1
  63. package/lib/commands/dataset/field-update.js +1 -1
  64. package/lib/commands/dataset/generate.js +1 -1
  65. package/lib/commands/dataset/index.js +1 -1
  66. package/lib/commands/dataset/list.js +1 -1
  67. package/lib/commands/dataset/operations.js +1 -1
  68. package/lib/commands/dataset/relation-audit.js +1 -1
  69. package/lib/commands/dataset/relation-create.js +1 -1
  70. package/lib/commands/dataset/relation-delete.js +1 -1
  71. package/lib/commands/dataset/relation-shared.js +1 -1
  72. package/lib/commands/dataset/relation-update.js +1 -1
  73. package/lib/commands/dataset/relations.js +1 -1
  74. package/lib/commands/dataset/rename.js +1 -1
  75. package/lib/commands/dataset/restore.js +1 -1
  76. package/lib/commands/db/analyze-cancel.js +1 -1
  77. package/lib/commands/db/analyze-start.js +1 -1
  78. package/lib/commands/db/analyze-status.js +1 -1
  79. package/lib/commands/db/create.js +1 -1
  80. package/lib/commands/db/delete.js +1 -1
  81. package/lib/commands/db/detail.js +1 -1
  82. package/lib/commands/db/diff.js +1 -1
  83. package/lib/commands/db/index.js +1 -1
  84. package/lib/commands/db/list.js +1 -1
  85. package/lib/commands/db/shared.js +1 -1
  86. package/lib/commands/db/tables.js +1 -1
  87. package/lib/commands/db/test.js +1 -1
  88. package/lib/commands/db/update.js +1 -1
  89. package/lib/commands/doctor.js +1 -1
  90. package/lib/commands/init/index.js +1 -1
  91. package/lib/commands/issue/index.js +1 -1
  92. package/lib/commands/issue/nudge.js +1 -1
  93. package/lib/commands/issue/report.js +1 -1
  94. package/lib/commands/issue/shared.js +1 -1
  95. package/lib/commands/logs/index.js +1 -1
  96. package/lib/commands/menu/index.js +1 -1
  97. package/lib/commands/menu/list.js +1 -1
  98. package/lib/commands/menu/shared/compare-table.js +1 -1
  99. package/lib/commands/menu/shared/index.js +1 -1
  100. package/lib/commands/menu/shared/inquirer.js +1 -1
  101. package/lib/commands/menu/shared/local-pages.js +1 -1
  102. package/lib/commands/menu/shared/logic.js +1 -1
  103. package/lib/commands/menu/shared/service.js +1 -1
  104. package/lib/commands/menu/shared/sync-core.js +1 -1
  105. package/lib/commands/menu/shared/update-core.js +1 -1
  106. package/lib/commands/menu/shared/valid-url.js +1 -1
  107. package/lib/commands/menu/sync.js +1 -1
  108. package/lib/commands/menu/update.js +1 -1
  109. package/lib/commands/page/generate-start.js +1 -1
  110. package/lib/commands/page/generate-status.js +1 -1
  111. package/lib/commands/page/index.js +1 -1
  112. package/lib/commands/page/pull.js +1 -1
  113. package/lib/commands/page/push.js +1 -1
  114. package/lib/commands/page/relation-audit.js +1 -1
  115. package/lib/commands/page/shared.js +1 -1
  116. package/lib/commands/page/standard-page-status.js +1 -1
  117. package/lib/commands/page/sync.js +1 -1
  118. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  119. package/lib/commands/project/create/format-elapsed.js +1 -1
  120. package/lib/commands/project/create/main.js +1 -1
  121. package/lib/commands/project/create/non-interactive.js +1 -1
  122. package/lib/commands/project/create/project-template-path.js +1 -1
  123. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  124. package/lib/commands/project/create/use-format-code.js +1 -1
  125. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  126. package/lib/commands/project/index.js +1 -1
  127. package/lib/commands/project/init.js +1 -1
  128. package/lib/commands/project/upgrade.js +1 -1
  129. package/lib/commands/registry.js +1 -1
  130. package/lib/commands/run/index.js +1 -1
  131. package/lib/commands/schema.js +1 -1
  132. package/lib/commands/sql/create.js +1 -1
  133. package/lib/commands/sql/delete.js +1 -1
  134. package/lib/commands/sql/detail.js +1 -1
  135. package/lib/commands/sql/exec.js +1 -1
  136. package/lib/commands/sql/index.js +1 -1
  137. package/lib/commands/sql/list.js +1 -1
  138. package/lib/commands/sql/pull.js +1 -1
  139. package/lib/commands/sql/push.js +1 -1
  140. package/lib/commands/sql/save.js +1 -1
  141. package/lib/commands/sql/shared.js +1 -1
  142. package/lib/commands/sql/status.js +1 -1
  143. package/lib/commands/sql/validate.js +1 -1
  144. package/lib/commands/workspace/index.js +1 -1
  145. package/lib/config/schema.js +1 -1
  146. package/lib/constant/cdn.js +1 -1
  147. package/lib/constant/cli.js +1 -1
  148. package/lib/constant/defaults.js +1 -1
  149. package/lib/constant/domain.js +1 -1
  150. package/lib/constant/env.js +1 -1
  151. package/lib/constant/output.js +1 -1
  152. package/lib/constant/paths.js +1 -1
  153. package/lib/constant/risk.js +1 -1
  154. package/lib/context/app-resolver.js +1 -1
  155. package/lib/context/auth-resolver.js +1 -1
  156. package/lib/context/config-loader.js +1 -1
  157. package/lib/context.js +1 -1
  158. package/lib/core/alias-resolver.js +1 -1
  159. package/lib/core/api-client.js +1 -1
  160. package/lib/core/bff/config.js +1 -1
  161. package/lib/core/bff/file-system.js +1 -1
  162. package/lib/core/bff/hash.js +1 -1
  163. package/lib/core/bff/lock.js +1 -1
  164. package/lib/core/bff/utils.js +1 -1
  165. package/lib/core/db-resolver.js +1 -1
  166. package/lib/core/page/file-system.js +1 -1
  167. package/lib/core/page/hash.js +1 -1
  168. package/lib/core/page/lock.js +1 -1
  169. package/lib/core/sql-sync/config.js +1 -1
  170. package/lib/core/sql-sync/file-system.js +1 -1
  171. package/lib/core/sql-sync/hash.js +1 -1
  172. package/lib/core/sql-sync/lock.js +1 -1
  173. package/lib/core/sql-sync/utils.js +1 -1
  174. package/lib/core/sql-validator.js +1 -1
  175. package/lib/errors.js +1 -1
  176. package/lib/framework/build-all-flags.js +1 -1
  177. package/lib/framework/flags.js +1 -1
  178. package/lib/framework/help.js +1 -1
  179. package/lib/framework/index.js +1 -1
  180. package/lib/framework/output.js +1 -1
  181. package/lib/framework/response.js +1 -1
  182. package/lib/framework/runner-alias.js +1 -1
  183. package/lib/framework/runner.js +1 -1
  184. package/lib/framework/schema-export.js +1 -1
  185. package/lib/framework/types.js +1 -1
  186. package/lib/generated/build-info.js +1 -1
  187. package/lib/help.js +1 -1
  188. package/lib/skills/main.js +1 -1
  189. package/lib/skills/npx-skills-add.js +1 -1
  190. package/lib/telemetry/cli-command-trace.js +1 -1
  191. package/lib/telemetry/cli-help-trace.js +1 -1
  192. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  193. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  194. package/lib/telemetry/send-cli-trace-log.js +1 -1
  195. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  196. package/lib/utils/ai_config.js +1 -1
  197. package/lib/utils/apply-jq-filter.js +1 -1
  198. package/lib/utils/cdn-config.js +1 -1
  199. package/lib/utils/check-sdk-version.js +1 -1
  200. package/lib/utils/cli-version-check.js +1 -1
  201. package/lib/utils/cli-version-policy.js +1 -1
  202. package/lib/utils/config.js +1 -1
  203. package/lib/utils/copy-directory.js +1 -1
  204. package/lib/utils/entity-with-id.js +1 -1
  205. package/lib/utils/file-utils.js +1 -1
  206. package/lib/utils/guides-cdn.js +1 -1
  207. package/lib/utils/http-client.js +1 -1
  208. package/lib/utils/is-non-interactive.js +1 -1
  209. package/lib/utils/logger.js +1 -1
  210. package/lib/utils/params.js +1 -1
  211. package/lib/utils/platform.js +1 -1
  212. package/lib/utils/rules-cdn.js +1 -1
  213. package/lib/utils/sleep.js +1 -1
  214. package/lib/utils/template-replacer.js +1 -1
  215. package/lib/utils/update-notice.js +1 -1
  216. package/lib/utils/version.js +1 -1
  217. package/lib/utils/with-active-cookie.js +1 -1
  218. package/lib/utils/write-cli-side-channel.js +1 -1
  219. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x288e9c,_0x12523e){const _0x2b048e=a127_0xc1c7,_0x58479c=_0x288e9c();while(!![]){try{const _0x2c218c=parseInt(_0x2b048e(0x128))/0x1+-parseInt(_0x2b048e(0x130))/0x2*(parseInt(_0x2b048e(0x125))/0x3)+parseInt(_0x2b048e(0x122))/0x4+-parseInt(_0x2b048e(0x107))/0x5*(parseInt(_0x2b048e(0x103))/0x6)+parseInt(_0x2b048e(0x11d))/0x7+-parseInt(_0x2b048e(0x136))/0x8*(parseInt(_0x2b048e(0x131))/0x9)+-parseInt(_0x2b048e(0x10d))/0xa;if(_0x2c218c===_0x12523e)break;else _0x58479c['push'](_0x58479c['shift']());}catch(_0x118189){_0x58479c['push'](_0x58479c['shift']());}}}(a127_0x303e,0x4d92f));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a127_0x16b5a9 from'chalk';function a127_0xc1c7(_0x338fef,_0x5a0bbd){_0x338fef=_0x338fef-0x102;const _0x303e8a=a127_0x303e();let _0xc1c776=_0x303e8a[_0x338fef];return _0xc1c776;}import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';function a127_0x303e(){const _0x374ced=['package.json','app','setLogPath','init','appcode','string','join','parse','env','production','version','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','cwd','toLocaleString','3513944aLcMXe','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','apps','info','1.0.0','392620TdCysi','\x20project\x20init`\x20to\x20start\x20fresh.','\x20api\x20pull\x27','37014QJSVgQ','../..','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','537534JDrvWs','\x20\x20Apps:\x20','Upgrade\x20it\x20to\x20','green','trim','cyan','yellow','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','4klkKAL','171HHyOmN','utf8','defaultApp','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','\x20api\x20generate\x27\x20and\x20\x27','163976TLZPVj','Invalid\x20App\x20Code','1985226ySIJzY','?\x20(Old\x20file\x20→\x20*.bak)','Please\x20enter\x20App\x20Code:','初始化项目配置文件成功','5BrPHAc','log','keys','bold','\x20\x20Default:\x20','\x20\x20appcode:\x20','749480EaiQST','.bak'];a127_0x303e=function(){return _0x374ced;};return a127_0x303e();}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(_0x17c898){const _0x2966eb=a127_0xc1c7,{appcode:_0x5e12b5,env:_0x1037ec,autoYes:_0x195884}=_0x17c898,_0x34d97c=process[_0x2966eb(0x11b)]();if(getProjectConfigPath())throw new Error(_0x2966eb(0x11a));let _0x32e5dc;for(const _0xb9c6c5 of LEGACY_CONFIG_NAMES){const _0x3cc706=resolve(_0x34d97c,_0xb9c6c5);if(existsSync(_0x3cc706)){_0x32e5dc=_0x3cc706;break;}}if(_0x32e5dc){let _0x50e884={};try{_0x50e884=JSON[_0x2966eb(0x116)](readFileSync(_0x32e5dc,_0x2966eb(0x132)));}catch{}const _0x3339ef=basename(_0x32e5dc),_0x1b42c2=_0x50e884?.[_0x2966eb(0x113)]||_0x50e884?.['app'];let _0x1ca222=_0x195884;!_0x195884&&(console[_0x2966eb(0x108)](a127_0x16b5a9[_0x2966eb(0x12e)](_0x2966eb(0x12f)+a127_0x16b5a9[_0x2966eb(0x10a)](_0x3339ef))),_0x1b42c2&&console['log'](a127_0x16b5a9[_0x2966eb(0x12d)](_0x2966eb(0x10c)+_0x1b42c2)),_0x1ca222=await confirm({'message':_0x2966eb(0x12a)+a127_0x16b5a9['bold']('.rabetbase.json')+_0x2966eb(0x104),'default':!![]}));if(!_0x1ca222){console[_0x2966eb(0x108)]('Migration\x20cancelled.\x20Run\x20`'+CLI_BIN_NAME+_0x2966eb(0x123));return;}const _0x566146=resolve(_0x34d97c,NEW_CONFIG_NAME),_0x191479=getCliVersionFromPkg(),_0x31c1f4=readRawConfig(),_0xaf6ced=_0x5e12b5||(typeof _0x50e884?.[_0x2966eb(0x113)]===_0x2966eb(0x114)?_0x50e884[_0x2966eb(0x113)]:undefined)||(typeof _0x50e884?.[_0x2966eb(0x110)]===_0x2966eb(0x114)?_0x50e884[_0x2966eb(0x110)]:undefined)||await askAppcode(),_0x2a280e=typeof _0x50e884?.[_0x2966eb(0x117)]===_0x2966eb(0x114)?_0x50e884[_0x2966eb(0x117)]:typeof _0x31c1f4[_0x2966eb(0x117)]===_0x2966eb(0x114)?_0x31c1f4[_0x2966eb(0x117)]:'production',_0x2550ab=buildCanonicalProjectConfig({..._0x31c1f4,..._0x50e884},{'appCodes':[_0xaf6ced],'env':_0x2a280e,'metadata':{'version':_0x191479,'migratedAt':new Date()[_0x2966eb(0x11c)](),'migratedFrom':_0x32e5dc}});writeConfigFile(_0x566146,_0x2550ab);const _0x356995=_0x32e5dc+_0x2966eb(0x10e);renameSync(_0x32e5dc,_0x356995),logger[_0x2966eb(0x111)](_0x34d97c),logger[_0x2966eb(0x120)](_0x2966eb(0x112),'从旧配置文件升级成功',{'from':_0x32e5dc,'to':_0x566146,'appcode':_0xaf6ced,'env':_0x2550ab[_0x2966eb(0x117)]}),console[_0x2966eb(0x108)](a127_0x16b5a9['green']('✓\x20Upgraded\x20'+_0x3339ef+'\x20→\x20.rabetbase.json')),console[_0x2966eb(0x108)](a127_0x16b5a9[_0x2966eb(0x12d)](_0x2966eb(0x129)+Object[_0x2966eb(0x109)](_0x2550ab[_0x2966eb(0x11f)]||{})[_0x2966eb(0x115)](',\x20'))),console[_0x2966eb(0x108)](a127_0x16b5a9[_0x2966eb(0x12d)](_0x2966eb(0x10b)+_0x2550ab[_0x2966eb(0x133)])),console[_0x2966eb(0x108)](a127_0x16b5a9['gray'](_0x2966eb(0x134)+_0x3339ef+_0x2966eb(0x10e)));return;}const _0x2da487=_0x5e12b5||await askAppcode(),_0x554762=resolve(_0x34d97c,NEW_CONFIG_NAME),_0x12f21d=getCliVersionFromPkg(),_0x3af137=readRawConfig(),_0x2d2932=typeof _0x3af137[_0x2966eb(0x117)]===_0x2966eb(0x114)?_0x3af137[_0x2966eb(0x117)]:undefined,_0x5a544c=buildCanonicalProjectConfig({},{'appCodes':[_0x2da487],'env':_0x1037ec||_0x2d2932||_0x2966eb(0x118),'metadata':{'version':_0x12f21d,'createdAt':new Date()['toLocaleString']()}});writeConfigFile(_0x554762,_0x5a544c),logger[_0x2966eb(0x111)](_0x34d97c),logger[_0x2966eb(0x120)](_0x2966eb(0x112),_0x2966eb(0x106),{'appcode':_0x2da487,'env':_0x5a544c[_0x2966eb(0x117)],'version':_0x5a544c[_0x2966eb(0x119)],'configPath':_0x554762}),console[_0x2966eb(0x108)](a127_0x16b5a9[_0x2966eb(0x12b)](_0x2966eb(0x127))),console[_0x2966eb(0x108)](a127_0x16b5a9['cyan'](_0x2966eb(0x129)+Object['keys'](_0x5a544c['apps']||{})['join'](',\x20'))),console[_0x2966eb(0x108)](a127_0x16b5a9[_0x2966eb(0x12d)](_0x2966eb(0x10b)+_0x5a544c['defaultApp'])),console[_0x2966eb(0x108)](_0x2966eb(0x11e)+CLI_BIN_NAME+_0x2966eb(0x135)+CLI_BIN_NAME+_0x2966eb(0x124));}function askAppcode(){const _0x59c0dd=a127_0xc1c7;return input({'message':_0x59c0dd(0x105),'validate':_0x224e75=>{const _0x49bf00=_0x59c0dd;if(!_0x224e75[_0x49bf00(0x12c)]())return'App\x20Code\x20cannot\x20be\x20empty';const {valid:_0x4628f9,message:_0x5a1c26}=validateAppcode(_0x224e75['trim']());return _0x4628f9||_0x5a1c26||_0x49bf00(0x102);}});}function getCliVersionFromPkg(){const _0x420d52=a127_0xc1c7;try{const _0x5cd316=fileURLToPath(import.meta.url),_0x10522a=resolve(dirname(_0x5cd316),_0x420d52(0x126)),_0x5c8aef=JSON['parse'](readFileSync(resolve(_0x10522a,_0x420d52(0x10f)),_0x420d52(0x132)));return _0x5c8aef[_0x420d52(0x119)]||_0x420d52(0x121);}catch{return _0x420d52(0x121);}}
1
+ (function(_0x545491,_0x4d587a){const _0xabf14c=a127_0x5de4,_0x10e43d=_0x545491();while(!![]){try{const _0x8d82df=parseInt(_0xabf14c(0x1f2))/0x1*(parseInt(_0xabf14c(0x200))/0x2)+parseInt(_0xabf14c(0x1fd))/0x3*(parseInt(_0xabf14c(0x210))/0x4)+parseInt(_0xabf14c(0x1fa))/0x5+-parseInt(_0xabf14c(0x1f8))/0x6*(parseInt(_0xabf14c(0x20a))/0x7)+-parseInt(_0xabf14c(0x1e4))/0x8+-parseInt(_0xabf14c(0x1e8))/0x9*(parseInt(_0xabf14c(0x20b))/0xa)+parseInt(_0xabf14c(0x205))/0xb;if(_0x8d82df===_0x4d587a)break;else _0x10e43d['push'](_0x10e43d['shift']());}catch(_0x210572){_0x10e43d['push'](_0x10e43d['shift']());}}}(a127_0x5064,0xc9e57));function a127_0x5064(){const _0x4632cb=['\x20→\x20.rabetbase.json','setLogPath','package.json','.rabetbase.json','.bak','yellow','4610240NiyBig','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','\x20api\x20pull\x27','info','3321KNljFB','parse','version','Please\x20enter\x20App\x20Code:','env','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','\x20\x20Default:\x20','\x20\x20Apps:\x20','keys','从旧配置文件升级成功','119414GJDnRy','green','defaultApp','?\x20(Old\x20file\x20→\x20*.bak)','init','\x20project\x20init`\x20to\x20start\x20fresh.','960XPCffJ','Migration\x20cancelled.\x20Run\x20`','3332475BEZQcm','1.0.0','../..','824853MnsuqV','\x20\x20appcode:\x20','bold','26SwRBmp','\x20api\x20generate\x27\x20and\x20\x27','app','string','production','8395090lvbvzE','join','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','trim','toLocaleString','33656DHhWPC','29390RfdhzH','apps','utf8','appcode','cyan','4eBbjfL','Invalid\x20App\x20Code','log'];a127_0x5064=function(){return _0x4632cb;};return a127_0x5064();}import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a127_0x42a4b0 from'chalk';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';function a127_0x5de4(_0x1f3507,_0x4bb28e){_0x1f3507=_0x1f3507-0x1e0;const _0x506488=a127_0x5064();let _0x5de446=_0x506488[_0x1f3507];return _0x5de446;}import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x5824b9){const _0x115eb2=a127_0x5de4,{appcode:_0x57b426,env:_0xb0b92,autoYes:_0xefc360}=_0x5824b9,_0x5c3586=process['cwd']();if(getProjectConfigPath())throw new Error('.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.');let _0x5c9142;for(const _0x7aa029 of LEGACY_CONFIG_NAMES){const _0x2683f7=resolve(_0x5c3586,_0x7aa029);if(existsSync(_0x2683f7)){_0x5c9142=_0x2683f7;break;}}if(_0x5c9142){let _0x3d58a1={};try{_0x3d58a1=JSON[_0x115eb2(0x1e9)](readFileSync(_0x5c9142,_0x115eb2(0x20d)));}catch{}const _0x52a447=basename(_0x5c9142),_0x257487=_0x3d58a1?.[_0x115eb2(0x20e)]||_0x3d58a1?.[_0x115eb2(0x202)];let _0x111c68=_0xefc360;!_0xefc360&&(console[_0x115eb2(0x212)](a127_0x42a4b0[_0x115eb2(0x1e3)]('⚠\x20Found\x20legacy\x20configuration\x20file:\x20'+a127_0x42a4b0[_0x115eb2(0x1ff)](_0x52a447))),_0x257487&&console[_0x115eb2(0x212)](a127_0x42a4b0[_0x115eb2(0x20f)](_0x115eb2(0x1fe)+_0x257487)),_0x111c68=await confirm({'message':'Upgrade\x20it\x20to\x20'+a127_0x42a4b0[_0x115eb2(0x1ff)](_0x115eb2(0x1e1))+_0x115eb2(0x1f5),'default':!![]}));if(!_0x111c68){console[_0x115eb2(0x212)](_0x115eb2(0x1f9)+CLI_BIN_NAME+_0x115eb2(0x1f7));return;}const _0x2f2429=resolve(_0x5c3586,NEW_CONFIG_NAME),_0x3ba49e=getCliVersionFromPkg(),_0x41a9f8=readRawConfig(),_0x119b4f=_0x57b426||(typeof _0x3d58a1?.['appcode']===_0x115eb2(0x203)?_0x3d58a1['appcode']:undefined)||(typeof _0x3d58a1?.[_0x115eb2(0x202)]==='string'?_0x3d58a1[_0x115eb2(0x202)]:undefined)||await askAppcode(),_0x3f39cd=typeof _0x3d58a1?.[_0x115eb2(0x1ec)]==='string'?_0x3d58a1[_0x115eb2(0x1ec)]:typeof _0x41a9f8[_0x115eb2(0x1ec)]==='string'?_0x41a9f8[_0x115eb2(0x1ec)]:'production',_0x58e1d8=buildCanonicalProjectConfig({..._0x41a9f8,..._0x3d58a1},{'appCodes':[_0x119b4f],'env':_0x3f39cd,'metadata':{'version':_0x3ba49e,'migratedAt':new Date()[_0x115eb2(0x209)](),'migratedFrom':_0x5c9142}});writeConfigFile(_0x2f2429,_0x58e1d8);const _0x1eb25b=_0x5c9142+_0x115eb2(0x1e2);renameSync(_0x5c9142,_0x1eb25b),logger[_0x115eb2(0x214)](_0x5c3586),logger[_0x115eb2(0x1e7)]('init',_0x115eb2(0x1f1),{'from':_0x5c9142,'to':_0x2f2429,'appcode':_0x119b4f,'env':_0x58e1d8[_0x115eb2(0x1ec)]}),console['log'](a127_0x42a4b0['green']('✓\x20Upgraded\x20'+_0x52a447+_0x115eb2(0x213))),console['log'](a127_0x42a4b0[_0x115eb2(0x20f)](_0x115eb2(0x1ef)+Object['keys'](_0x58e1d8[_0x115eb2(0x20c)]||{})[_0x115eb2(0x206)](',\x20'))),console['log'](a127_0x42a4b0[_0x115eb2(0x20f)](_0x115eb2(0x1ee)+_0x58e1d8[_0x115eb2(0x1f4)])),console[_0x115eb2(0x212)](a127_0x42a4b0['gray'](_0x115eb2(0x207)+_0x52a447+'.bak'));return;}const _0x40ece5=_0x57b426||await askAppcode(),_0x507fee=resolve(_0x5c3586,NEW_CONFIG_NAME),_0x5d9452=getCliVersionFromPkg(),_0x107b45=readRawConfig(),_0x250cfc=typeof _0x107b45['env']==='string'?_0x107b45[_0x115eb2(0x1ec)]:undefined,_0x2d46d5=buildCanonicalProjectConfig({},{'appCodes':[_0x40ece5],'env':_0xb0b92||_0x250cfc||_0x115eb2(0x204),'metadata':{'version':_0x5d9452,'createdAt':new Date()[_0x115eb2(0x209)]()}});writeConfigFile(_0x507fee,_0x2d46d5),logger[_0x115eb2(0x214)](_0x5c3586),logger[_0x115eb2(0x1e7)](_0x115eb2(0x1f6),'初始化项目配置文件成功',{'appcode':_0x40ece5,'env':_0x2d46d5[_0x115eb2(0x1ec)],'version':_0x2d46d5[_0x115eb2(0x1ea)],'configPath':_0x507fee}),console[_0x115eb2(0x212)](a127_0x42a4b0[_0x115eb2(0x1f3)](_0x115eb2(0x1e5))),console[_0x115eb2(0x212)](a127_0x42a4b0[_0x115eb2(0x20f)](_0x115eb2(0x1ef)+Object[_0x115eb2(0x1f0)](_0x2d46d5['apps']||{})[_0x115eb2(0x206)](',\x20'))),console[_0x115eb2(0x212)](a127_0x42a4b0[_0x115eb2(0x20f)](_0x115eb2(0x1ee)+_0x2d46d5['defaultApp'])),console['log'](_0x115eb2(0x1ed)+CLI_BIN_NAME+_0x115eb2(0x201)+CLI_BIN_NAME+_0x115eb2(0x1e6));}function askAppcode(){const _0x33177a=a127_0x5de4;return input({'message':_0x33177a(0x1eb),'validate':_0x4184b2=>{const _0x58c94a=_0x33177a;if(!_0x4184b2['trim']())return'App\x20Code\x20cannot\x20be\x20empty';const {valid:_0xf00348,message:_0x1ffa21}=validateAppcode(_0x4184b2[_0x58c94a(0x208)]());return _0xf00348||_0x1ffa21||_0x58c94a(0x211);}});}function getCliVersionFromPkg(){const _0x55b494=a127_0x5de4;try{const _0xa95300=fileURLToPath(import.meta.url),_0x36ad3c=resolve(dirname(_0xa95300),_0x55b494(0x1fc)),_0x5c4b2f=JSON['parse'](readFileSync(resolve(_0x36ad3c,_0x55b494(0x1e0)),_0x55b494(0x20d)));return _0x5c4b2f[_0x55b494(0x1ea)]||_0x55b494(0x1fb);}catch{return _0x55b494(0x1fb);}}
@@ -1 +1 @@
1
- (function(_0xdeffbd,_0x582de6){const _0x1f11c9=a128_0x6e84,_0x531e9d=_0xdeffbd();while(!![]){try{const _0x63ea96=-parseInt(_0x1f11c9(0x7e))/0x1*(-parseInt(_0x1f11c9(0x7f))/0x2)+-parseInt(_0x1f11c9(0xd4))/0x3+-parseInt(_0x1f11c9(0x95))/0x4*(-parseInt(_0x1f11c9(0xcb))/0x5)+parseInt(_0x1f11c9(0x91))/0x6+-parseInt(_0x1f11c9(0xdb))/0x7*(parseInt(_0x1f11c9(0x74))/0x8)+parseInt(_0x1f11c9(0xaf))/0x9+-parseInt(_0x1f11c9(0xb5))/0xa;if(_0x63ea96===_0x582de6)break;else _0x531e9d['push'](_0x531e9d['shift']());}catch(_0x2c7b54){_0x531e9d['push'](_0x531e9d['shift']());}}}(a128_0xb82f,0xea41f));import a128_0x4a6bd1 from'chalk';import a128_0x4d3759 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'](_0x29285c=>_0x29285c!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x479272){const _0x535e13=a128_0x6e84,_0x3fbe4b=[];for(const _0x41d4c5 of Object[_0x535e13(0xc8)](CORE_IDE_CONFIGS)){if(_0x41d4c5[_0x535e13(0x9c)])for(const _0x485544 of _0x41d4c5[_0x535e13(0x9c)]){_0x3fbe4b[_0x535e13(0xde)](resolve(_0x479272,_0x485544[_0x535e13(0xcc)]));}}return _0x3fbe4b;}function analyse(_0x49319b){const _0x2f150e=a128_0x6e84;let _0xd0537a=null;const _0x3af7ba=resolve(_0x49319b,NEW_CONFIG_NAME),_0x3fa989=existsSync(_0x3af7ba);for(const _0x48189d of LEGACY_CONFIG_NAMES){const _0x276837=resolve(_0x49319b,_0x48189d);if(existsSync(_0x276837)){const _0x4c3a74=readConfigFile(_0x276837),_0x1d82d6=Object['keys'](_0x4c3a74)[_0x2f150e(0x9b)](_0x3b9bdd=>typeof _0x4c3a74[_0x3b9bdd]!==_0x2f150e(0x82));_0xd0537a={'oldPath':_0x276837,'hasNewConfig':_0x3fa989,'fields':_0x1d82d6};break;}}const _0x38dccc=[],_0x1d9db3=resolve(_0x49319b,_0x2f150e(0x97));if(existsSync(_0x1d9db3))_0x38dccc[_0x2f150e(0xde)](_0x1d9db3);const _0x13d05f=resolve(_0x49319b,_0x2f150e(0x78));if(existsSync(_0x13d05f))_0x38dccc[_0x2f150e(0xde)](_0x13d05f);const _0x3cea0f=resolve(_0x49319b,_0x2f150e(0x70));if(existsSync(_0x3cea0f))_0x38dccc[_0x2f150e(0xde)](_0x3cea0f);for(const _0xf9ae16 of collectIdeSkillFiles(_0x49319b)){if(existsSync(_0xf9ae16))_0x38dccc[_0x2f150e(0xde)](_0xf9ae16);}let _0xfc02f0=null;const _0x155746=resolve(_0x49319b,_0x2f150e(0x9e));if(existsSync(_0x155746))try{const _0x1ec5bb=JSON[_0x2f150e(0x8d)](readFileSync(_0x155746,_0x2f150e(0x86)));if(_0x1ec5bb?.[_0x2f150e(0xa0)]&&typeof _0x1ec5bb[_0x2f150e(0xa0)]==='object'){const _0x2fc1aa=[];for(const [_0xd01ad4,_0xbd053c]of Object[_0x2f150e(0x94)](_0x1ec5bb[_0x2f150e(0xa0)])){const _0x2a18ab=_0xbd053c;_0x2a18ab?.['args']&&Array[_0x2f150e(0x88)](_0x2a18ab['args'])&&_0x2a18ab['args']['some'](_0x3100a4=>typeof _0x3100a4===_0x2f150e(0x8a)&&_0x3100a4[_0x2f150e(0x75)](_0x2f150e(0x93)))&&_0x2fc1aa[_0x2f150e(0xde)](_0xd01ad4);}_0x2fc1aa['length']>0x0&&(_0xfc02f0={'path':_0x155746,'keys':_0x2fc1aa});}}catch{}const _0x474248=_0x38dccc[_0x2f150e(0xb3)]>0x0||_0xd0537a!==null;let _0x17c02d=null;const _0xf41fff=resolve(_0x49319b,_0x2f150e(0x7d));if(existsSync(_0xf41fff))try{const _0x567ec2=JSON['parse'](readFileSync(_0xf41fff,_0x2f150e(0x86)));for(const _0x2393fa of[_0x2f150e(0xae),_0x2f150e(0x72)]){const _0x2c931e=_0x567ec2?.[_0x2393fa]?.[_0x2f150e(0xc6)];if(typeof _0x2c931e===_0x2f150e(0x8a)){_0x2c931e!=='latest'&&(_0x17c02d={'pkgPath':_0xf41fff,'currentVersion':_0x2c931e,'field':_0x2393fa});break;}}}catch{}return{'configMigration':_0xd0537a,'oldArtifacts':_0x38dccc,'oldMcpConfig':_0xfc02f0,'needsSkillSwap':_0x474248,'sdkUpgrade':_0x17c02d};}function printReport(_0x321ae7){const _0x518d58=a128_0x6e84,{configMigration:_0x4baa3b,oldArtifacts:_0x525ff9,oldMcpConfig:_0x185895,needsSkillSwap:_0x43471e}=_0x321ae7;console[_0x518d58(0xc9)](''),console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xa6)](_0x518d58(0xba))),console['log']('');_0x4baa3b?(console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xbe)]('Config\x20file:')+('\x20\x20'+a128_0x4a6bd1['yellow'](_0x4baa3b[_0x518d58(0x98)]))),console['log'](_0x518d58(0xe9)+(_0x4baa3b[_0x518d58(0xda)]?a128_0x4a6bd1[_0x518d58(0x92)]('already\x20exists\x20(will\x20merge)'):a128_0x4a6bd1[_0x518d58(0x96)](_0x518d58(0xb6)))),console['log'](_0x518d58(0x8f)+_0x4baa3b['fields']['join'](',\x20')),console['log'](_0x518d58(0x9d))):console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xbe)](_0x518d58(0x81))+'\x20\x20'+a128_0x4a6bd1[_0x518d58(0x96)](_0x518d58(0xa4)));console[_0x518d58(0xc9)]('');if(_0x525ff9[_0x518d58(0xb3)]>0x0){console[_0x518d58(0xc9)](a128_0x4a6bd1['cyan'](_0x518d58(0x87)));for(const _0x468967 of _0x525ff9){console[_0x518d58(0xc9)]('\x20\x20'+a128_0x4a6bd1[_0x518d58(0xd9)]('FOUND')+'\x20\x20'+_0x468967);}console[_0x518d58(0xc9)]('\x20\x20Action:\x20delete');}else console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xbe)](_0x518d58(0x87))+'\x20\x20'+a128_0x4a6bd1[_0x518d58(0x96)]('none\x20found'));console[_0x518d58(0xc9)]('');_0x185895?(console['log'](a128_0x4a6bd1[_0x518d58(0xbe)](_0x518d58(0x6e))+('\x20\x20'+a128_0x4a6bd1[_0x518d58(0x9a)](_0x185895['path'])+_0x518d58(0xe7)+_0x185895[_0x518d58(0x7c)][_0x518d58(0xd5)](',\x20'))),console[_0x518d58(0xc9)](_0x518d58(0x7b))):console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xbe)](_0x518d58(0x6e))+'\x20\x20'+a128_0x4a6bd1['gray']('no\x20legacy\x20entry'));console[_0x518d58(0xc9)](''),console['log'](a128_0x4a6bd1[_0x518d58(0xbe)]('Skill\x20swap:')+('\x20\x20'+(_0x43471e?a128_0x4a6bd1[_0x518d58(0x9a)](_0x518d58(0xe6)):a128_0x4a6bd1[_0x518d58(0x92)]('not\x20needed'))));_0x43471e&&console['log'](_0x518d58(0xdf)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x518d58(0xc9)]('');if(_0x321ae7[_0x518d58(0xc5)]){const {currentVersion:_0x942da1,field:_0x3cc65e,pkgPath:_0x28f507}=_0x321ae7['sdkUpgrade'];console[_0x518d58(0xc9)](a128_0x4a6bd1['cyan']('@lovrabet/sdk:')+('\x20\x20'+a128_0x4a6bd1['yellow'](_0x28f507))),console['log'](_0x518d58(0xc0)+_0x3cc65e+':\x20'+a128_0x4a6bd1['yellow'](_0x942da1)+'\x20→\x20'+a128_0x4a6bd1[_0x518d58(0x92)]('latest')),console[_0x518d58(0xc9)](_0x518d58(0x6c));}else console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xbe)](_0x518d58(0xa2))+'\x20\x20'+a128_0x4a6bd1['gray'](_0x518d58(0xe5)));console[_0x518d58(0xc9)]('');}function execConfigMigration(_0x449c1b,_0x168f15){const _0x31513c=a128_0x6e84,{configMigration:_0x58d1ed}=_0x449c1b;if(!_0x58d1ed?.[_0x31513c(0x98)])return{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x31513c(0xd8)};const _0x37e5e2=readConfigFile(_0x58d1ed['oldPath']),_0x4fd209=resolve(_0x168f15,NEW_CONFIG_NAME),_0x4dcf3e=_0x58d1ed[_0x31513c(0xda)]?readConfigFile(_0x4fd209):{};for(const [_0x4314e4,_0x359441]of Object[_0x31513c(0x94)](_0x37e5e2)){!(_0x4314e4 in _0x4dcf3e)&&(_0x4dcf3e[_0x4314e4]=_0x359441);}writeConfigFile(_0x4fd209,_0x4dcf3e);const _0x7091a4=_0x58d1ed[_0x31513c(0x98)]+_0x31513c(0xce);return renameSync(_0x58d1ed[_0x31513c(0x98)],_0x7091a4),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x58d1ed[_0x31513c(0x98)]+_0x31513c(0xa8)+_0x4fd209+'\x20(backup:\x20'+_0x7091a4+')'};}function execRemoveOldArtifacts(_0x324d4c){const _0x5a6a34=a128_0x6e84,_0x4b7ac7=[];for(const _0x2ed421 of _0x324d4c){try{if(!existsSync(_0x2ed421))continue;const _0x81e98c=tryStat(_0x2ed421);_0x81e98c?.['isDirectory']()?rmSync(_0x2ed421,{'recursive':!![],'force':!![]}):unlinkSync(_0x2ed421);}catch(_0x559c42){_0x4b7ac7[_0x5a6a34(0xde)](_0x2ed421+':\x20'+_0x559c42[_0x5a6a34(0x6f)]);}}return{'step':0x3,'label':_0x5a6a34(0x84),'ok':_0x4b7ac7[_0x5a6a34(0xb3)]===0x0,'detail':_0x4b7ac7[_0x5a6a34(0xb3)]>0x0?_0x324d4c['length']-_0x4b7ac7[_0x5a6a34(0xb3)]+'/'+_0x324d4c[_0x5a6a34(0xb3)]+_0x5a6a34(0x76)+_0x4b7ac7['join'](';\x20')+')':_0x324d4c[_0x5a6a34(0xb3)]+_0x5a6a34(0xe4)};}function execCleanMcp(_0x112a5f){const _0x5d1b2b=a128_0x6e84;if(!_0x112a5f[_0x5d1b2b(0xc1)])return{'step':0x4,'label':_0x5d1b2b(0xd1),'ok':!![],'detail':_0x5d1b2b(0x89)};try{const _0x333630=readFileSync(_0x112a5f['oldMcpConfig'][_0x5d1b2b(0xcc)],_0x5d1b2b(0x86)),_0x203b00=JSON['parse'](_0x333630);if(_0x203b00?.['mcpServers']&&typeof _0x203b00[_0x5d1b2b(0xa0)]==='object'){const _0x374457=[];for(const [_0x2cabf2,_0x315aaf]of Object[_0x5d1b2b(0x94)](_0x203b00[_0x5d1b2b(0xa0)])){_0x315aaf?.['args']&&Array[_0x5d1b2b(0x88)](_0x315aaf['args'])&&_0x315aaf[_0x5d1b2b(0x8e)][_0x5d1b2b(0x6d)](_0x468920=>typeof _0x468920===_0x5d1b2b(0x8a)&&_0x468920[_0x5d1b2b(0x75)](_0x5d1b2b(0x93)))&&_0x374457['push'](_0x2cabf2);}for(const _0x3b3c02 of _0x374457){delete _0x203b00[_0x5d1b2b(0xa0)][_0x3b3c02];}return _0x374457[_0x5d1b2b(0xb3)]>0x0&&writeFileSync(_0x112a5f[_0x5d1b2b(0xc1)][_0x5d1b2b(0xcc)],JSON[_0x5d1b2b(0xc7)](_0x203b00,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x5d1b2b(0xd1),'ok':!![],'detail':'removed\x20'+_0x374457[_0x5d1b2b(0xd5)](',\x20')+_0x5d1b2b(0xdd)+_0x112a5f[_0x5d1b2b(0xc1)]['path']};}return{'step':0x4,'label':_0x5d1b2b(0xd1),'ok':!![],'detail':_0x5d1b2b(0x71)};}catch(_0x627a43){return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':![],'detail':_0x627a43[_0x5d1b2b(0x6f)]};}}function execSkillsRemove(_0x47a0fa,_0x565f80){const _0x1efc59=a128_0x6e84,_0x2267b7=runNpxSkillsRemove(_0x47a0fa,{'stdio':'inherit','yes':_0x565f80});return{'step':0x5,'label':_0x1efc59(0xaa),'ok':_0x2267b7['ok'],'detail':_0x2267b7['ok']?_0x1efc59(0x99):_0x2267b7[_0x1efc59(0x7a)]??'exit\x20'+_0x2267b7[_0x1efc59(0xab)]};}function execSkillsAdd(_0x35fcfa,_0x4cfb6e){const _0x46f387=a128_0x6e84,_0x3ad7e7=runNpxSkillsAddGlobal(_0x35fcfa,_0x46f387(0xd6),{'stdio':_0x46f387(0xd3),'yes':_0x4cfb6e});return{'step':0x6,'label':_0x46f387(0xa1),'ok':_0x3ad7e7['ok'],'detail':_0x3ad7e7['ok']?_0x46f387(0x8c):_0x3ad7e7[_0x46f387(0x7a)]??_0x46f387(0x80)+_0x3ad7e7[_0x46f387(0xab)]};}function execUpgradeSdk(_0x4b0384){const _0x18073a=a128_0x6e84;if(!_0x4b0384[_0x18073a(0xc5)])return{'step':0x7,'label':_0x18073a(0x79),'ok':!![],'detail':_0x18073a(0xcf)};const {pkgPath:_0x480132,currentVersion:_0x23d2df,field:_0x2f04e0}=_0x4b0384['sdkUpgrade'];try{const _0x29fddf=readFileSync(_0x480132,_0x18073a(0x86)),_0x569fff=JSON[_0x18073a(0x8d)](_0x29fddf);return _0x569fff[_0x2f04e0][_0x18073a(0xc6)]=_0x18073a(0xc3),writeFileSync(_0x480132,JSON['stringify'](_0x569fff,null,0x2)+'\x0a',_0x18073a(0x86)),{'step':0x7,'label':_0x18073a(0x79),'ok':!![],'detail':_0x2f04e0+_0x18073a(0xb7)+_0x23d2df+_0x18073a(0xb8)};}catch(_0x3532d6){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x3532d6[_0x18073a(0x6f)]};}}function a128_0xb82f(){const _0x447e30=['oldArtifacts','sdkUpgrade','@lovrabet/sdk','stringify','values','log','\x20\x20bun\x20install','490fssVkB','path','cwd','.bak','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','done','Clean\x20MCP\x20config','Upgrade\x20cancelled.','inherit','1981329rQGDMP','join','lovrabet/rabetbase','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','skipped\x20(no\x20legacy\x20config)','red','hasNewConfig','21vFqUTe','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','\x20from\x20','push','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','configMigration','\x20\x20#\x20or','\x20\x20Step\x20','white','\x20removed','not\x20found\x20or\x20already\x20at\x20latest','needed','\x20→\x20keys:\x20','Proceed\x20with\x20upgrade?','\x20\x20New\x20config\x20(.rabetbase.json):\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','some','MCP\x20config:','message','.claude/skills/lovrabet','no\x20matching\x20entry\x20found','devDependencies','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','1778888hyoMXK','includes','\x20removed\x20(','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','.cursor/rules/lovrabet_rules.mdc','Upgrade\x20@lovrabet/sdk','error','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','keys','package.json','679192cOTZlh','2lnDRNs','exit\x20','Config\x20file:','undefined','FAIL','Remove\x20legacy\x20artifacts','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','utf8','Legacy\x20artifacts:','isArray','skipped','string','info','lovrabet/rabetbase\x20installed\x20globally','parse','args','\x20\x20Fields\x20to\x20migrate:\x20','Step\x205/7:\x20Removing\x20old\x20skill...','6958434jePMpq','green','@lovrabet/dataset-mcp-server','entries','45560AYDhpy','gray','.lovrabet','oldPath','lovrabet/lovrabet-skill\x20removed','yellow','filter','files','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','.cursor/mcp.json','start','mcpServers','Install\x20new\x20skill','@lovrabet/sdk:','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','no\x20legacy\x20config\x20found','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','bold','CANCEL','\x20→\x20','yes','Remove\x20old\x20skill','status','needsSkillSwap','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','dependencies','1202850XOsWcC','label','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','succeed','length','fail','8017560OABRvA','not\x20found\x20(will\x20create)','[\x22@lovrabet/sdk\x22]:\x20','\x20→\x20latest','failed','===\x20Upgrade\x20Analysis\x20===','Step\x204/7:\x20Cleaning\x20MCP\x20config...','step','detail','cyan','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','\x20\x20Current\x20version\x20in\x20','oldMcpConfig','Remove\x20.lovrabet/','latest'];a128_0xb82f=function(){return _0x447e30;};return a128_0xb82f();}function tryStat(_0x4d74b4){try{return statSync(_0x4d74b4);}catch{return undefined;}}function a128_0x6e84(_0x1c6de8,_0xd0c18f){_0x1c6de8=_0x1c6de8-0x6c;const _0xb82f41=a128_0xb82f();let _0x6e844b=_0xb82f41[_0x1c6de8];return _0x6e844b;}function printSummary(_0x2bcdda){const _0x215184=a128_0x6e84;console[_0x215184(0xc9)](''),console['log'](a128_0x4a6bd1[_0x215184(0xa6)]('===\x20Upgrade\x20Summary\x20===')),console['log']('');for(const _0x4a700b of _0x2bcdda){const _0x3d99d1=_0x4a700b['ok']?a128_0x4a6bd1['green']('OK'):a128_0x4a6bd1['red'](_0x215184(0x83));console['log']('\x20\x20'+_0x3d99d1+_0x215184(0xe2)+_0x4a700b[_0x215184(0xbc)]+':\x20'+_0x4a700b[_0x215184(0xb0)]);if(_0x4a700b['detail'])console[_0x215184(0xc9)]('\x20\x20\x20\x20\x20\x20\x20'+a128_0x4a6bd1['gray'](_0x4a700b[_0x215184(0xbd)]));}console[_0x215184(0xc9)]('');}export async function upgradeApp(_0x452789,_0x2afff5){const _0x4347c8=a128_0x6e84,_0xf86ee7=process[_0x4347c8(0xcd)](),_0x1b8448=analyse(_0xf86ee7),_0x331c47=!_0x1b8448[_0x4347c8(0xe0)]&&_0x1b8448['oldArtifacts']['length']===0x0&&!_0x1b8448[_0x4347c8(0xc1)]&&!_0x1b8448[_0x4347c8(0xac)]&&!_0x1b8448[_0x4347c8(0xc5)];if(_0x331c47){console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0x92)](_0x4347c8(0x73)));return;}printReport(_0x1b8448);const _0xa2b7d1=!!(_0x2afff5[_0x4347c8(0xa9)]||_0x2afff5['Y']||_0x452789);if(!_0xa2b7d1)try{const _0x4a691c=await askConfirm(_0x4347c8(0xe8));if(!_0x4a691c){console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0x96)](_0x4347c8(0xd2)));return;}}catch(_0x1812d2){if(_0x1812d2?.[_0x4347c8(0x6f)]===_0x4347c8(0xa7)){console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0x96)]('Upgrade\x20cancelled.'));return;}throw _0x1812d2;}const _0x4b923d=[],_0x1a21b4=a128_0x4d3759({'text':'Step\x201/7:\x20Migrating\x20config...','color':'cyan'})[_0x4347c8(0x9f)](),_0x5acb7f=execConfigMigration(_0x1b8448,_0xf86ee7);_0x4b923d[_0x4347c8(0xde)](_0x5acb7f),_0x1a21b4[_0x5acb7f['ok']?_0x4347c8(0xb2):'fail']('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x5acb7f[_0x4347c8(0xbd)]??(_0x5acb7f['ok']?_0x4347c8(0xd0):_0x4347c8(0xb9))));const _0x1b57ef=resolve(_0xf86ee7,'.lovrabet'),_0x6c7542=a128_0x4d3759({'text':_0x4347c8(0x85),'color':_0x4347c8(0xbe)})[_0x4347c8(0x9f)]();if(existsSync(_0x1b57ef))try{rmSync(_0x1b57ef,{'recursive':!![],'force':!![]}),_0x6c7542[_0x4347c8(0xb2)](_0x4347c8(0xdc)),_0x4b923d[_0x4347c8(0xde)]({'step':0x2,'label':_0x4347c8(0xc2),'ok':!![]});}catch(_0x40aff4){_0x6c7542['fail']('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x40aff4[_0x4347c8(0x6f)]),_0x4b923d['push']({'step':0x2,'label':_0x4347c8(0xc2),'ok':![],'detail':_0x40aff4[_0x4347c8(0x6f)]});}else _0x6c7542[_0x4347c8(0x8b)](_0x4347c8(0xad)),_0x4b923d[_0x4347c8(0xde)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![],'detail':_0x4347c8(0x89)});const _0x5998eb=a128_0x4d3759({'text':_0x4347c8(0xd7),'color':'cyan'})[_0x4347c8(0x9f)](),_0x4fb36a=execRemoveOldArtifacts(_0x1b8448[_0x4347c8(0xc4)]);_0x4b923d[_0x4347c8(0xde)](_0x4fb36a),_0x5998eb[_0x4fb36a['ok']?_0x4347c8(0xb2):'fail'](_0x4347c8(0xbf)+(_0x4fb36a[_0x4347c8(0xbd)]??(_0x4fb36a['ok']?'done':_0x4347c8(0xb9))));const _0x278a52=a128_0x4d3759({'text':_0x4347c8(0xbb),'color':'cyan'})[_0x4347c8(0x9f)](),_0x407468=execCleanMcp(_0x1b8448);_0x4b923d[_0x4347c8(0xde)](_0x407468),_0x278a52[_0x407468['ok']?_0x4347c8(0xb2):_0x4347c8(0xb4)]('Step\x204/7:\x20MCP\x20config\x20—\x20'+(_0x407468['detail']??(_0x407468['ok']?'done':_0x4347c8(0xb9))));const _0x5d446f=a128_0x4d3759({'text':_0x4347c8(0x90),'color':'cyan'})[_0x4347c8(0x9f)](),_0x1ba871=execSkillsRemove(_0xf86ee7,_0xa2b7d1);_0x4b923d['push'](_0x1ba871),_0x5d446f[_0x1ba871['ok']?_0x4347c8(0xb2):_0x4347c8(0xb4)](_0x4347c8(0xa3)+(_0x1ba871[_0x4347c8(0xbd)]??(_0x1ba871['ok']?_0x4347c8(0xd0):'failed')));const _0x52df4a=a128_0x4d3759({'text':'Step\x206/7:\x20Installing\x20new\x20skill...','color':_0x4347c8(0xbe)})[_0x4347c8(0x9f)](),_0xd96693=execSkillsAdd(_0xf86ee7,_0xa2b7d1);_0x4b923d[_0x4347c8(0xde)](_0xd96693),_0x52df4a[_0xd96693['ok']?_0x4347c8(0xb2):_0x4347c8(0xb4)](_0x4347c8(0xb1)+(_0xd96693['detail']??(_0xd96693['ok']?_0x4347c8(0xd0):_0x4347c8(0xb9))));const _0x5e88d3=a128_0x4d3759({'text':_0x4347c8(0xa5),'color':_0x4347c8(0xbe)})[_0x4347c8(0x9f)](),_0x5da895=execUpgradeSdk(_0x1b8448);_0x4b923d['push'](_0x5da895),_0x5e88d3[_0x5da895['ok']?_0x4347c8(0xb2):_0x4347c8(0xb4)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0x5da895[_0x4347c8(0xbd)]??(_0x5da895['ok']?_0x4347c8(0xd0):_0x4347c8(0xb9)))),printSummary(_0x4b923d);const _0x3f397a=_0x4b923d[_0x4347c8(0x6d)](_0x374682=>!_0x374682['ok']);_0x3f397a?console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0x9a)]('Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.')):console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0x92)]('Upgrade\x20completed\x20successfully!')),_0x5da895['ok']&&_0x1b8448['sdkUpgrade']&&(console['log'](''),console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0xa6)][_0x4347c8(0xbe)](_0x4347c8(0x77))),console['log'](a128_0x4a6bd1[_0x4347c8(0xbe)]('Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:')),console[_0x4347c8(0xc9)](''),console[_0x4347c8(0xc9)](a128_0x4a6bd1['white']('\x20\x20npm\x20install')),console[_0x4347c8(0xc9)](a128_0x4a6bd1['white'](_0x4347c8(0xe1))),console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0xe3)](_0x4347c8(0xca))),console[_0x4347c8(0xc9)](''));}
1
+ (function(_0x5db748,_0x49ec11){const _0xbfcd08=a128_0x4077,_0x385c0f=_0x5db748();while(!![]){try{const _0x10a8de=-parseInt(_0xbfcd08(0xef))/0x1*(-parseInt(_0xbfcd08(0x11e))/0x2)+-parseInt(_0xbfcd08(0x156))/0x3+-parseInt(_0xbfcd08(0x110))/0x4+-parseInt(_0xbfcd08(0x109))/0x5*(parseInt(_0xbfcd08(0x12c))/0x6)+parseInt(_0xbfcd08(0x12d))/0x7*(-parseInt(_0xbfcd08(0xfd))/0x8)+parseInt(_0xbfcd08(0x16f))/0x9+parseInt(_0xbfcd08(0x13b))/0xa;if(_0x10a8de===_0x49ec11)break;else _0x385c0f['push'](_0x385c0f['shift']());}catch(_0x2528cb){_0x385c0f['push'](_0x385c0f['shift']());}}}(a128_0x4a86,0xd7916));import a128_0x17cdc9 from'chalk';import a128_0x2e335d 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';function a128_0x4a86(){const _0x1a032e=['bold','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','undefined','.cursor/mcp.json','\x20removed\x20(','\x20from\x20','Remove\x20legacy\x20artifacts','label','\x20(backup:\x20','info','not\x20needed','\x20\x20#\x20or','\x20\x20bun\x20install','.lovrabet','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','fields','Config\x20file:','latest','devDependencies','skipped','@lovrabet/sdk','Config\x20migration','1673748QtfmWO','some','\x20\x20\x20\x20\x20\x20\x20','sdkUpgrade','1vQntzJ','succeed','===\x20Upgrade\x20Summary\x20===','message','\x20→\x20keys:\x20','===\x20Upgrade\x20Analysis\x20===','skipped\x20(no\x20legacy\x20config)','Remove\x20.lovrabet/','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','oldMcpConfig','\x20\x20npm\x20install','hasNewConfig','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','FAIL','72RIxbGr','Skill\x20swap:','object','cyan','done','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','log','@lovrabet/sdk:','green','start','no\x20matching\x20entry\x20found','Proceed\x20with\x20upgrade?','143960IRZQDX','failed','Clean\x20MCP\x20config','configMigration','\x20\x20Step\x20','@lovrabet/dataset-mcp-server','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','3899504XspSSR','parse','utf8','oldArtifacts','detail','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','.bak','.claude/skills/lovrabet','package.json','Upgrade\x20@lovrabet/sdk','isArray','\x20\x20Current\x20version\x20in\x20','Step\x206/7:\x20Installing\x20new\x20skill...','exit\x20','2609338qwHvro','push','Install\x20new\x20skill','oldPath','.cursor/rules/lovrabet_rules.mdc','isDirectory','fail','args','Legacy\x20artifacts:','string','lovrabet/rabetbase\x20installed\x20globally','Remove\x20old\x20skill','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','366UHoxPT','317569KCtpEN','yellow','\x20removed','keys','length','removed\x20','\x20→\x20','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','step','yes','MCP\x20config:','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','white','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','38730010DSeLWB','values','gray','files','entries','status','needsSkillSwap','Upgrade\x20completed\x20successfully!','Step\x204/7:\x20Cleaning\x20MCP\x20config...','Upgrade\x20cancelled.','CANCEL','join','stringify','\x20\x20Fields\x20to\x20migrate:\x20','no\x20legacy\x20config\x20found','Step\x201/7:\x20Migrating\x20config...','\x20\x20New\x20config\x20(.rabetbase.json):\x20','inherit','dependencies','needed','mcpServers','Step\x205/7:\x20Removing\x20old\x20skill...','lovrabet/rabetbase','path','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','red','\x20→\x20latest','4023555qBfgjl','filter','none\x20found'];a128_0x4a86=function(){return _0x1a032e;};return a128_0x4a86();}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'](_0x540ad1=>_0x540ad1!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x345747){const _0x5cd079=a128_0x4077,_0x557a14=[];for(const _0x53cd19 of Object[_0x5cd079(0x13c)](CORE_IDE_CONFIGS)){if(_0x53cd19['files'])for(const _0x3db7cc of _0x53cd19[_0x5cd079(0x13e)]){_0x557a14[_0x5cd079(0x11f)](resolve(_0x345747,_0x3db7cc[_0x5cd079(0x152)]));}}return _0x557a14;}function analyse(_0x5f27e1){const _0x21dd64=a128_0x4077;let _0x210911=null;const _0xe4e3ef=resolve(_0x5f27e1,NEW_CONFIG_NAME),_0xf06c52=existsSync(_0xe4e3ef);for(const _0x4577e7 of LEGACY_CONFIG_NAMES){const _0x37a7a9=resolve(_0x5f27e1,_0x4577e7);if(existsSync(_0x37a7a9)){const _0x393855=readConfigFile(_0x37a7a9),_0x16d91e=Object[_0x21dd64(0x130)](_0x393855)[_0x21dd64(0x157)](_0x40bc22=>typeof _0x393855[_0x40bc22]!==_0x21dd64(0x15b));_0x210911={'oldPath':_0x37a7a9,'hasNewConfig':_0xf06c52,'fields':_0x16d91e};break;}}const _0x5a74aa=[],_0x34756d=resolve(_0x5f27e1,_0x21dd64(0x166));if(existsSync(_0x34756d))_0x5a74aa['push'](_0x34756d);const _0x2825fd=resolve(_0x5f27e1,_0x21dd64(0x122));if(existsSync(_0x2825fd))_0x5a74aa[_0x21dd64(0x11f)](_0x2825fd);const _0x4705c1=resolve(_0x5f27e1,_0x21dd64(0x117));if(existsSync(_0x4705c1))_0x5a74aa[_0x21dd64(0x11f)](_0x4705c1);for(const _0x3404f0 of collectIdeSkillFiles(_0x5f27e1)){if(existsSync(_0x3404f0))_0x5a74aa[_0x21dd64(0x11f)](_0x3404f0);}let _0x555cca=null;const _0x237af8=resolve(_0x5f27e1,_0x21dd64(0x15c));if(existsSync(_0x237af8))try{const _0x165731=JSON[_0x21dd64(0x111)](readFileSync(_0x237af8,'utf8'));if(_0x165731?.[_0x21dd64(0x14f)]&&typeof _0x165731[_0x21dd64(0x14f)]==='object'){const _0x5a1878=[];for(const [_0x5dca6f,_0x1f6774]of Object[_0x21dd64(0x13f)](_0x165731[_0x21dd64(0x14f)])){const _0x29ff56=_0x1f6774;_0x29ff56?.[_0x21dd64(0x125)]&&Array[_0x21dd64(0x11a)](_0x29ff56['args'])&&_0x29ff56[_0x21dd64(0x125)]['some'](_0x19904b=>typeof _0x19904b===_0x21dd64(0x127)&&_0x19904b['includes'](_0x21dd64(0x10e)))&&_0x5a1878[_0x21dd64(0x11f)](_0x5dca6f);}_0x5a1878[_0x21dd64(0x131)]>0x0&&(_0x555cca={'path':_0x237af8,'keys':_0x5a1878});}}catch{}const _0x42f8eb=_0x5a74aa[_0x21dd64(0x131)]>0x0||_0x210911!==null;let _0x4559a0=null;const _0x28e165=resolve(_0x5f27e1,_0x21dd64(0x118));if(existsSync(_0x28e165))try{const _0x23cdc3=JSON[_0x21dd64(0x111)](readFileSync(_0x28e165,'utf8'));for(const _0x229cbb of[_0x21dd64(0x14d),_0x21dd64(0x16b)]){const _0x21b3f4=_0x23cdc3?.[_0x229cbb]?.[_0x21dd64(0x16d)];if(typeof _0x21b3f4===_0x21dd64(0x127)){_0x21b3f4!==_0x21dd64(0x16a)&&(_0x4559a0={'pkgPath':_0x28e165,'currentVersion':_0x21b3f4,'field':_0x229cbb});break;}}}catch{}return{'configMigration':_0x210911,'oldArtifacts':_0x5a74aa,'oldMcpConfig':_0x555cca,'needsSkillSwap':_0x42f8eb,'sdkUpgrade':_0x4559a0};}function printReport(_0x13da5d){const _0x5eab4b=a128_0x4077,{configMigration:_0x2a0837,oldArtifacts:_0x7b311d,oldMcpConfig:_0x55e79a,needsSkillSwap:_0xf22999}=_0x13da5d;console[_0x5eab4b(0x103)](''),console[_0x5eab4b(0x103)](a128_0x17cdc9[_0x5eab4b(0x159)](_0x5eab4b(0xf4))),console[_0x5eab4b(0x103)]('');_0x2a0837?(console[_0x5eab4b(0x103)](a128_0x17cdc9['cyan']('Config\x20file:')+('\x20\x20'+a128_0x17cdc9[_0x5eab4b(0x12e)](_0x2a0837['oldPath']))),console[_0x5eab4b(0x103)](_0x5eab4b(0x14b)+(_0x2a0837[_0x5eab4b(0xfa)]?a128_0x17cdc9['green']('already\x20exists\x20(will\x20merge)'):a128_0x17cdc9[_0x5eab4b(0x13d)]('not\x20found\x20(will\x20create)'))),console[_0x5eab4b(0x103)](_0x5eab4b(0x148)+_0x2a0837[_0x5eab4b(0x168)][_0x5eab4b(0x146)](',\x20')),console['log'](_0x5eab4b(0x13a))):console[_0x5eab4b(0x103)](a128_0x17cdc9[_0x5eab4b(0x100)](_0x5eab4b(0x169))+'\x20\x20'+a128_0x17cdc9[_0x5eab4b(0x13d)](_0x5eab4b(0x149)));console[_0x5eab4b(0x103)]('');if(_0x7b311d[_0x5eab4b(0x131)]>0x0){console[_0x5eab4b(0x103)](a128_0x17cdc9[_0x5eab4b(0x100)](_0x5eab4b(0x126)));for(const _0x14a511 of _0x7b311d){console['log']('\x20\x20'+a128_0x17cdc9['red']('FOUND')+'\x20\x20'+_0x14a511);}console[_0x5eab4b(0x103)]('\x20\x20Action:\x20delete');}else console[_0x5eab4b(0x103)](a128_0x17cdc9[_0x5eab4b(0x100)](_0x5eab4b(0x126))+'\x20\x20'+a128_0x17cdc9['gray'](_0x5eab4b(0x158)));console[_0x5eab4b(0x103)]('');_0x55e79a?(console['log'](a128_0x17cdc9[_0x5eab4b(0x100)](_0x5eab4b(0x137))+('\x20\x20'+a128_0x17cdc9[_0x5eab4b(0x12e)](_0x55e79a[_0x5eab4b(0x152)])+_0x5eab4b(0xf3)+_0x55e79a[_0x5eab4b(0x130)][_0x5eab4b(0x146)](',\x20'))),console['log'](_0x5eab4b(0x167))):console[_0x5eab4b(0x103)](a128_0x17cdc9[_0x5eab4b(0x100)]('MCP\x20config:')+'\x20\x20'+a128_0x17cdc9['gray']('no\x20legacy\x20entry'));console[_0x5eab4b(0x103)](''),console[_0x5eab4b(0x103)](a128_0x17cdc9[_0x5eab4b(0x100)](_0x5eab4b(0xfe))+('\x20\x20'+(_0xf22999?a128_0x17cdc9['yellow'](_0x5eab4b(0x14e)):a128_0x17cdc9[_0x5eab4b(0x105)](_0x5eab4b(0x163)))));_0xf22999&&console['log'](_0x5eab4b(0x10f)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console['log']('');if(_0x13da5d[_0x5eab4b(0xee)]){const {currentVersion:_0x1511d4,field:_0x5f39d5,pkgPath:_0xd1eda6}=_0x13da5d['sdkUpgrade'];console[_0x5eab4b(0x103)](a128_0x17cdc9['cyan'](_0x5eab4b(0x104))+('\x20\x20'+a128_0x17cdc9[_0x5eab4b(0x12e)](_0xd1eda6))),console[_0x5eab4b(0x103)](_0x5eab4b(0x11b)+_0x5f39d5+':\x20'+a128_0x17cdc9[_0x5eab4b(0x12e)](_0x1511d4)+_0x5eab4b(0x133)+a128_0x17cdc9[_0x5eab4b(0x105)](_0x5eab4b(0x16a))),console[_0x5eab4b(0x103)](_0x5eab4b(0x12a));}else console[_0x5eab4b(0x103)](a128_0x17cdc9['cyan'](_0x5eab4b(0x104))+'\x20\x20'+a128_0x17cdc9[_0x5eab4b(0x13d)]('not\x20found\x20or\x20already\x20at\x20latest'));console[_0x5eab4b(0x103)]('');}function execConfigMigration(_0xdfb386,_0x3cdbd0){const _0x1cd0b6=a128_0x4077,{configMigration:_0x6ccbff}=_0xdfb386;if(!_0x6ccbff?.[_0x1cd0b6(0x121)])return{'step':0x1,'label':_0x1cd0b6(0x16e),'ok':!![],'detail':_0x1cd0b6(0xf5)};const _0x37af73=readConfigFile(_0x6ccbff[_0x1cd0b6(0x121)]),_0x2ffbc6=resolve(_0x3cdbd0,NEW_CONFIG_NAME),_0x21da96=_0x6ccbff[_0x1cd0b6(0xfa)]?readConfigFile(_0x2ffbc6):{};for(const [_0x355435,_0x19ec38]of Object[_0x1cd0b6(0x13f)](_0x37af73)){!(_0x355435 in _0x21da96)&&(_0x21da96[_0x355435]=_0x19ec38);}writeConfigFile(_0x2ffbc6,_0x21da96);const _0x3bf252=_0x6ccbff[_0x1cd0b6(0x121)]+_0x1cd0b6(0x116);return renameSync(_0x6ccbff[_0x1cd0b6(0x121)],_0x3bf252),{'step':0x1,'label':_0x1cd0b6(0x16e),'ok':!![],'detail':_0x6ccbff['oldPath']+_0x1cd0b6(0x133)+_0x2ffbc6+_0x1cd0b6(0x161)+_0x3bf252+')'};}function execRemoveOldArtifacts(_0x35fabe){const _0x346e43=a128_0x4077,_0x16e2a5=[];for(const _0x3caec1 of _0x35fabe){try{if(!existsSync(_0x3caec1))continue;const _0xb0a581=tryStat(_0x3caec1);_0xb0a581?.[_0x346e43(0x123)]()?rmSync(_0x3caec1,{'recursive':!![],'force':!![]}):unlinkSync(_0x3caec1);}catch(_0x2607d1){_0x16e2a5[_0x346e43(0x11f)](_0x3caec1+':\x20'+_0x2607d1[_0x346e43(0xf2)]);}}return{'step':0x3,'label':_0x346e43(0x15f),'ok':_0x16e2a5[_0x346e43(0x131)]===0x0,'detail':_0x16e2a5[_0x346e43(0x131)]>0x0?_0x35fabe['length']-_0x16e2a5[_0x346e43(0x131)]+'/'+_0x35fabe[_0x346e43(0x131)]+_0x346e43(0x15d)+_0x16e2a5[_0x346e43(0x146)](';\x20')+')':_0x35fabe[_0x346e43(0x131)]+_0x346e43(0x12f)};}function execCleanMcp(_0x395189){const _0x14a216=a128_0x4077;if(!_0x395189['oldMcpConfig'])return{'step':0x4,'label':_0x14a216(0x10b),'ok':!![],'detail':_0x14a216(0x16c)};try{const _0x2bd660=readFileSync(_0x395189['oldMcpConfig'][_0x14a216(0x152)],'utf8'),_0x470eb9=JSON['parse'](_0x2bd660);if(_0x470eb9?.[_0x14a216(0x14f)]&&typeof _0x470eb9[_0x14a216(0x14f)]===_0x14a216(0xff)){const _0x3076de=[];for(const [_0x4bb6f1,_0x50c14c]of Object['entries'](_0x470eb9['mcpServers'])){_0x50c14c?.['args']&&Array[_0x14a216(0x11a)](_0x50c14c[_0x14a216(0x125)])&&_0x50c14c[_0x14a216(0x125)][_0x14a216(0xec)](_0x1b1830=>typeof _0x1b1830===_0x14a216(0x127)&&_0x1b1830['includes'](_0x14a216(0x10e)))&&_0x3076de[_0x14a216(0x11f)](_0x4bb6f1);}for(const _0x38bc13 of _0x3076de){delete _0x470eb9[_0x14a216(0x14f)][_0x38bc13];}return _0x3076de[_0x14a216(0x131)]>0x0&&writeFileSync(_0x395189[_0x14a216(0xf8)][_0x14a216(0x152)],JSON[_0x14a216(0x147)](_0x470eb9,null,0x2)+'\x0a',_0x14a216(0x112)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x14a216(0x132)+_0x3076de['join'](',\x20')+_0x14a216(0x15e)+_0x395189[_0x14a216(0xf8)][_0x14a216(0x152)]};}return{'step':0x4,'label':_0x14a216(0x10b),'ok':!![],'detail':_0x14a216(0x107)};}catch(_0x1d9712){return{'step':0x4,'label':_0x14a216(0x10b),'ok':![],'detail':_0x1d9712['message']};}}function a128_0x4077(_0x31afd8,_0x28f7cc){_0x31afd8=_0x31afd8-0xec;const _0x4a86f1=a128_0x4a86();let _0x4077d0=_0x4a86f1[_0x31afd8];return _0x4077d0;}function execSkillsRemove(_0x24a1d6,_0x1dbbc9){const _0x5cfef2=a128_0x4077,_0x23405e=runNpxSkillsRemove(_0x24a1d6,{'stdio':_0x5cfef2(0x14c),'yes':_0x1dbbc9});return{'step':0x5,'label':_0x5cfef2(0x129),'ok':_0x23405e['ok'],'detail':_0x23405e['ok']?'lovrabet/lovrabet-skill\x20removed':_0x23405e['error']??_0x5cfef2(0x11d)+_0x23405e[_0x5cfef2(0x140)]};}function execSkillsAdd(_0x395fd4,_0x425501){const _0x572b53=a128_0x4077,_0x3c8d0e=runNpxSkillsAddGlobal(_0x395fd4,_0x572b53(0x151),{'stdio':'inherit','yes':_0x425501});return{'step':0x6,'label':_0x572b53(0x120),'ok':_0x3c8d0e['ok'],'detail':_0x3c8d0e['ok']?_0x572b53(0x128):_0x3c8d0e['error']??_0x572b53(0x11d)+_0x3c8d0e['status']};}function execUpgradeSdk(_0x53c57c){const _0x3449b2=a128_0x4077;if(!_0x53c57c[_0x3449b2(0xee)])return{'step':0x7,'label':_0x3449b2(0x119),'ok':!![],'detail':_0x3449b2(0x134)};const {pkgPath:_0x24f6bb,currentVersion:_0x46e69e,field:_0x2e22ca}=_0x53c57c['sdkUpgrade'];try{const _0x27d04e=readFileSync(_0x24f6bb,_0x3449b2(0x112)),_0x2387af=JSON[_0x3449b2(0x111)](_0x27d04e);return _0x2387af[_0x2e22ca]['@lovrabet/sdk']=_0x3449b2(0x16a),writeFileSync(_0x24f6bb,JSON[_0x3449b2(0x147)](_0x2387af,null,0x2)+'\x0a',_0x3449b2(0x112)),{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x2e22ca+'[\x22@lovrabet/sdk\x22]:\x20'+_0x46e69e+_0x3449b2(0x155)};}catch(_0x241ee3){return{'step':0x7,'label':_0x3449b2(0x119),'ok':![],'detail':_0x241ee3['message']};}}function tryStat(_0x4e150a){try{return statSync(_0x4e150a);}catch{return undefined;}}function printSummary(_0x59f585){const _0x4b5a52=a128_0x4077;console[_0x4b5a52(0x103)](''),console[_0x4b5a52(0x103)](a128_0x17cdc9['bold'](_0x4b5a52(0xf1))),console['log']('');for(const _0x38cb98 of _0x59f585){const _0x7286a4=_0x38cb98['ok']?a128_0x17cdc9[_0x4b5a52(0x105)]('OK'):a128_0x17cdc9[_0x4b5a52(0x154)](_0x4b5a52(0xfc));console[_0x4b5a52(0x103)]('\x20\x20'+_0x7286a4+_0x4b5a52(0x10d)+_0x38cb98[_0x4b5a52(0x135)]+':\x20'+_0x38cb98[_0x4b5a52(0x160)]);if(_0x38cb98[_0x4b5a52(0x114)])console[_0x4b5a52(0x103)](_0x4b5a52(0xed)+a128_0x17cdc9[_0x4b5a52(0x13d)](_0x38cb98[_0x4b5a52(0x114)]));}console[_0x4b5a52(0x103)]('');}export async function upgradeApp(_0x53edf8,_0x4e84fd){const _0x384379=a128_0x4077,_0x1900c8=process['cwd'](),_0x7c5c5f=analyse(_0x1900c8),_0x1f0e01=!_0x7c5c5f[_0x384379(0x10c)]&&_0x7c5c5f[_0x384379(0x113)][_0x384379(0x131)]===0x0&&!_0x7c5c5f['oldMcpConfig']&&!_0x7c5c5f[_0x384379(0x141)]&&!_0x7c5c5f['sdkUpgrade'];if(_0x1f0e01){console['log'](a128_0x17cdc9[_0x384379(0x105)]('No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.'));return;}printReport(_0x7c5c5f);const _0x2e3be7=!!(_0x4e84fd[_0x384379(0x136)]||_0x4e84fd['Y']||_0x53edf8);if(!_0x2e3be7)try{const _0x149b32=await askConfirm(_0x384379(0x108));if(!_0x149b32){console[_0x384379(0x103)](a128_0x17cdc9[_0x384379(0x13d)](_0x384379(0x144)));return;}}catch(_0x4c7049){if(_0x4c7049?.['message']===_0x384379(0x145)){console[_0x384379(0x103)](a128_0x17cdc9[_0x384379(0x13d)]('Upgrade\x20cancelled.'));return;}throw _0x4c7049;}const _0x41f2b4=[],_0x3f8c6f=a128_0x2e335d({'text':_0x384379(0x14a),'color':_0x384379(0x100)})[_0x384379(0x106)](),_0xe72da4=execConfigMigration(_0x7c5c5f,_0x1900c8);_0x41f2b4[_0x384379(0x11f)](_0xe72da4),_0x3f8c6f[_0xe72da4['ok']?_0x384379(0xf0):_0x384379(0x124)]('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0xe72da4[_0x384379(0x114)]??(_0xe72da4['ok']?'done':_0x384379(0x10a))));const _0x351327=resolve(_0x1900c8,_0x384379(0x166)),_0x1376c4=a128_0x2e335d({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':'cyan'})[_0x384379(0x106)]();if(existsSync(_0x351327))try{rmSync(_0x351327,{'recursive':!![],'force':!![]}),_0x1376c4[_0x384379(0xf0)](_0x384379(0x15a)),_0x41f2b4['push']({'step':0x2,'label':_0x384379(0xf6),'ok':!![]});}catch(_0x1dc534){_0x1376c4[_0x384379(0x124)](_0x384379(0xf7)+_0x1dc534[_0x384379(0xf2)]),_0x41f2b4['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x1dc534[_0x384379(0xf2)]});}else _0x1376c4[_0x384379(0x162)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x41f2b4[_0x384379(0x11f)]({'step':0x2,'label':_0x384379(0xf6),'ok':!![],'detail':_0x384379(0x16c)});const _0x55795e=a128_0x2e335d({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':_0x384379(0x100)})['start'](),_0x1221ce=execRemoveOldArtifacts(_0x7c5c5f[_0x384379(0x113)]);_0x41f2b4[_0x384379(0x11f)](_0x1221ce),_0x55795e[_0x1221ce['ok']?'succeed':_0x384379(0x124)](_0x384379(0x138)+(_0x1221ce[_0x384379(0x114)]??(_0x1221ce['ok']?_0x384379(0x101):_0x384379(0x10a))));const _0xc8b80e=a128_0x2e335d({'text':_0x384379(0x143),'color':_0x384379(0x100)})[_0x384379(0x106)](),_0x150c61=execCleanMcp(_0x7c5c5f);_0x41f2b4[_0x384379(0x11f)](_0x150c61),_0xc8b80e[_0x150c61['ok']?_0x384379(0xf0):_0x384379(0x124)]('Step\x204/7:\x20MCP\x20config\x20—\x20'+(_0x150c61[_0x384379(0x114)]??(_0x150c61['ok']?_0x384379(0x101):_0x384379(0x10a))));const _0x51bb07=a128_0x2e335d({'text':_0x384379(0x150),'color':_0x384379(0x100)})[_0x384379(0x106)](),_0x35b125=execSkillsRemove(_0x1900c8,_0x2e3be7);_0x41f2b4[_0x384379(0x11f)](_0x35b125),_0x51bb07[_0x35b125['ok']?_0x384379(0xf0):_0x384379(0x124)]('Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20'+(_0x35b125[_0x384379(0x114)]??(_0x35b125['ok']?_0x384379(0x101):_0x384379(0x10a))));const _0x4136fb=a128_0x2e335d({'text':_0x384379(0x11c),'color':_0x384379(0x100)})[_0x384379(0x106)](),_0xaef0f6=execSkillsAdd(_0x1900c8,_0x2e3be7);_0x41f2b4['push'](_0xaef0f6),_0x4136fb[_0xaef0f6['ok']?_0x384379(0xf0):_0x384379(0x124)](_0x384379(0xfb)+(_0xaef0f6['detail']??(_0xaef0f6['ok']?'done':_0x384379(0x10a))));const _0xb9b5a7=a128_0x2e335d({'text':_0x384379(0x115),'color':_0x384379(0x100)})['start'](),_0x3714b5=execUpgradeSdk(_0x7c5c5f);_0x41f2b4[_0x384379(0x11f)](_0x3714b5),_0xb9b5a7[_0x3714b5['ok']?_0x384379(0xf0):_0x384379(0x124)](_0x384379(0x102)+(_0x3714b5[_0x384379(0x114)]??(_0x3714b5['ok']?_0x384379(0x101):_0x384379(0x10a)))),printSummary(_0x41f2b4);const _0x406ac7=_0x41f2b4['some'](_0x7512b=>!_0x7512b['ok']);_0x406ac7?console[_0x384379(0x103)](a128_0x17cdc9['yellow'](_0x384379(0x12b))):console[_0x384379(0x103)](a128_0x17cdc9[_0x384379(0x105)](_0x384379(0x142))),_0x3714b5['ok']&&_0x7c5c5f['sdkUpgrade']&&(console[_0x384379(0x103)](''),console[_0x384379(0x103)](a128_0x17cdc9[_0x384379(0x159)]['cyan']('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x384379(0x103)](a128_0x17cdc9['cyan'](_0x384379(0x153))),console[_0x384379(0x103)](''),console[_0x384379(0x103)](a128_0x17cdc9[_0x384379(0x139)](_0x384379(0xf9))),console['log'](a128_0x17cdc9[_0x384379(0x139)](_0x384379(0x164))),console[_0x384379(0x103)](a128_0x17cdc9[_0x384379(0x139)](_0x384379(0x165))),console['log'](''));}
@@ -1 +1 @@
1
- const a129_0x3217f5=a129_0x25eb;(function(_0x1ace3c,_0x315d60){const _0x315af1=a129_0x25eb,_0x1d8b90=_0x1ace3c();while(!![]){try{const _0x4a1647=-parseInt(_0x315af1(0xae))/0x1*(-parseInt(_0x315af1(0xa4))/0x2)+-parseInt(_0x315af1(0xa6))/0x3+-parseInt(_0x315af1(0x92))/0x4*(-parseInt(_0x315af1(0xb2))/0x5)+-parseInt(_0x315af1(0xa0))/0x6+-parseInt(_0x315af1(0xac))/0x7+-parseInt(_0x315af1(0x9f))/0x8+parseInt(_0x315af1(0xaa))/0x9;if(_0x4a1647===_0x315d60)break;else _0x1d8b90['push'](_0x1d8b90['shift']());}catch(_0x4f59d3){_0x1d8b90['push'](_0x1d8b90['shift']());}}}(a129_0x1d87,0xe2bfe));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{appConfigDefinitions}from'../commands/app-config/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';function a129_0x1d87(){const _0x26c2de=['set','Run\x20Scripts','commands','228gkOFvF','project','skill','Self\x20Update','show','command','Diagnostics','skills','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','skill\x20','install','Database\x20Connections','has','1407088haEHUH','8030892vUHIui','`rabetbase\x20skills`\x20has\x20been\x20removed.','logout','Remote\x20App\x20Config','1746634VzvrXm','run','4519263MLCNMf','SQL\x20Queries','preview','`rabetbase\x20','26885340xrePxj','`\x20has\x20been\x20removed.','780437RdBway','App\x20Management','1jgGYru','Instant\x20API','map','write','17585vBnSfE','get','values','Logs','create','Authentication','length','service','Code\x20Generation','login','defaultCommand','Menu','\x20\x20[high-risk-write]','Workspace','wildcardDef','Quick\x20Start','CLI\x20Built-in\x20Skill','push','isSingleCommand','Run\x20any\x20package.json\x20script','<script>'];a129_0x1d87=function(){return _0x26c2de;};return a129_0x1d87();}import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/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(_0x468e95){const _0x5ea418=a129_0x25eb;for(const _0x38657f of _0x468e95){definitions[_0x5ea418(0x8f)](_0x38657f['service']+':'+_0x38657f[_0x5ea418(0x97)],_0x38657f);let _0x33c800=serviceGroups[_0x5ea418(0xb3)](_0x38657f[_0x5ea418(0xb9)]);!_0x33c800&&(_0x33c800=[],serviceGroups[_0x5ea418(0x8f)](_0x38657f[_0x5ea418(0xb9)],_0x33c800)),_0x33c800[_0x5ea418(0x8b)](_0x38657f);}}function registerDeclarativeService(_0x318faa,_0x2ca787,_0x15fe3d){const _0x499da1=a129_0x25eb;registerDefinitions(_0x2ca787);_0x15fe3d?.[_0x499da1(0x88)]&&registerDefinitions([_0x15fe3d['wildcardDef']]);const _0x13c5e1=_0x2dbe58=>_0x2dbe58==='read'?'':_0x2dbe58===_0x499da1(0xb1)?'\x20\x20[write]':_0x499da1(0x86),_0xc520a5={'service':_0x2ca787[0x0][_0x499da1(0xb9)],'label':_0x318faa,'commands':_0x2ca787[_0x499da1(0xb0)](_0x24da0f=>({'command':_0x24da0f[_0x499da1(0x97)],'description':_0x24da0f['description'],'tag':_0x13c5e1(_0x24da0f['risk'])})),'declarative':!![],'defaultCommand':_0x15fe3d?.[_0x499da1(0x84)]??(_0x15fe3d?.[_0x499da1(0x8c)]?_0x2ca787[0x0]['command']:undefined),'wildcardDef':_0x15fe3d?.[_0x499da1(0x88)],'isSingleCommand':_0x15fe3d?.[_0x499da1(0x8c)]};serviceRegistry[_0x499da1(0x8b)](_0xc520a5),serviceByName[_0x499da1(0x8f)](_0xc520a5[_0x499da1(0xb9)],_0xc520a5);}registerDeclarativeService(a129_0x3217f5(0x89),initDefinitions,{'defaultCommand':a129_0x3217f5(0xa5),'isSingleCommand':!![]}),registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService(a129_0x3217f5(0x87),workspaceDefinitions),registerDeclarativeService(a129_0x3217f5(0xad),appDefinitions),registerDeclarativeService(a129_0x3217f5(0x90),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a129_0x3217f5(0xb8)]-0x1];last[a129_0x3217f5(0x91)]=[{'command':a129_0x3217f5(0x8e),'description':a129_0x3217f5(0x8d),'tag':''}];}function a129_0x25eb(_0x512a61,_0x46affb){_0x512a61=_0x512a61-0x84;const _0x1d87df=a129_0x1d87();let _0x25eb31=_0x1d87df[_0x512a61];return _0x25eb31;}registerDeclarativeService(a129_0x3217f5(0xb7),authDefinitions,{'defaultCommand':a129_0x3217f5(0xbb)}),registerDeclarativeService(a129_0x3217f5(0x95),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a129_0x3217f5(0x98),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Schema',[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService(a129_0x3217f5(0xa3),appConfigDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService('API',apiDefinitions),registerDeclarativeService(a129_0x3217f5(0x85),menuDefinitions),registerDeclarativeService(a129_0x3217f5(0x9d),dbDefinitions),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService('Smart\x20List\x20Pages',pageDefinitions),registerDeclarativeService(a129_0x3217f5(0xaf),dataDefinitions),registerDeclarativeService('BFF\x20Scripts',bffDefinitions),registerDeclarativeService(a129_0x3217f5(0xa7),sqlDefinitions),registerDeclarativeService(a129_0x3217f5(0xba),codegenDefinitions),registerDeclarativeService(a129_0x3217f5(0x8a),cliSkillDefinitions,{'defaultCommand':a129_0x3217f5(0x9c)}),registerDeclarativeService(a129_0x3217f5(0xb5),logsDefinitions,{'defaultCommand':a129_0x3217f5(0x96)});export const deprecatedAliases={'create':{'service':a129_0x3217f5(0x93),'command':'create'},'start':{'service':a129_0x3217f5(0xa5),'command':'start'},'build':{'service':a129_0x3217f5(0xa5),'command':'build'},'preview':{'service':'run','command':a129_0x3217f5(0xa8)},'logout':{'service':'auth','command':a129_0x3217f5(0xa2)}};const CLI_SKILL_INSTALL_REMOVED_HINT=a129_0x3217f5(0x9a);export function resolveRemovedCommand(_0x913b06,_0x1fbccc){const _0x2861fc=a129_0x3217f5;if(_0x913b06==='skill'){const _0x3d585c=_0x1fbccc?_0x2861fc(0x9b)+_0x1fbccc:_0x2861fc(0x94);return{'command':_0x3d585c,'message':_0x2861fc(0xa9)+_0x3d585c+_0x2861fc(0xab),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x913b06===_0x2861fc(0x99))return{'command':_0x2861fc(0x99),'message':_0x2861fc(0xa1),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a129_0x3217f5(0xb6)},'sql':{'new':a129_0x3217f5(0xb6)}};export function resolveDeprecatedSubcommand(_0x17c33a,_0x1463cd){return deprecatedSubcommands[_0x17c33a]?.[_0x1463cd];}export function findDefinition(_0x4ee9a6,_0x5ec3d7){const _0x5600ab=a129_0x3217f5;return definitions[_0x5600ab(0xb3)](_0x4ee9a6+':'+_0x5ec3d7);}export function isKnownService(_0x4115dc){return serviceByName['has'](_0x4115dc);}export function isDeclarativeService(_0x1fcf1a){const _0xeea899=a129_0x3217f5;return serviceGroups[_0xeea899(0x9e)](_0x1fcf1a)||serviceByName[_0xeea899(0xb3)](_0x1fcf1a)?.[_0xeea899(0x88)]!==undefined;}export function getServiceEntry(_0x3f221d){const _0x1e4c28=a129_0x3217f5;return serviceByName[_0x1e4c28(0xb3)](_0x3f221d);}export function getLegacyHandler(_0x15092b,_0x4c5ca8){return undefined;}export function getAllDefinitions(){const _0x1b9b04=a129_0x3217f5;return Array['from'](definitions[_0x1b9b04(0xb4)]());}
1
+ const a129_0x17d681=a129_0x2f48;(function(_0x59e649,_0x2f40cd){const _0x383555=a129_0x2f48,_0x2c6b49=_0x59e649();while(!![]){try{const _0x5b7d5d=-parseInt(_0x383555(0x1c2))/0x1*(-parseInt(_0x383555(0x1ef))/0x2)+parseInt(_0x383555(0x1ee))/0x3+parseInt(_0x383555(0x1ca))/0x4*(parseInt(_0x383555(0x1ea))/0x5)+-parseInt(_0x383555(0x1e2))/0x6+parseInt(_0x383555(0x1eb))/0x7*(-parseInt(_0x383555(0x1d4))/0x8)+parseInt(_0x383555(0x1e0))/0x9*(parseInt(_0x383555(0x1d1))/0xa)+parseInt(_0x383555(0x1d8))/0xb*(-parseInt(_0x383555(0x1c7))/0xc);if(_0x5b7d5d===_0x2f40cd)break;else _0x2c6b49['push'](_0x2c6b49['shift']());}catch(_0x50b805){_0x2c6b49['push'](_0x2c6b49['shift']());}}}(a129_0x1cb9,0x53ea9));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{appConfigDefinitions}from'../commands/app-config/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';function a129_0x1cb9(){const _0x182044=['create','Code\x20Generation','install','276tIHKco','Dataset\x20&\x20Operations','API','9696uLWDmV','service','Database\x20Connections','get','SQL\x20Queries','Smart\x20List\x20Pages','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','1286630aKMeHH','commands','Project','48VbAIjB','Run\x20Scripts','command','Run\x20any\x20package.json\x20script','90409YroJQB','Schema','map','run','Instant\x20API','auth','Logs','logout','18mgtgHc','Runtime\x20App\x20Config\x20Management','3211758iYMzGZ','risk','show','has','preview','skills','<script>','isSingleCommand','1270eWklrJ','344127hMInrO','push','from','744867ugqrVM','483412IUzwvx','Workspace','write','skill\x20','\x20\x20[high-risk-write]','defaultCommand','wildcardDef','App\x20Management','skill','description','CLI\x20Built-in\x20Skill','BFF\x20Scripts','1daLxXD','set'];a129_0x1cb9=function(){return _0x182044;};return a129_0x1cb9();}import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/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(_0x41048c){const _0x27847d=a129_0x2f48;for(const _0x4b1bc0 of _0x41048c){definitions[_0x27847d(0x1c3)](_0x4b1bc0[_0x27847d(0x1cb)]+':'+_0x4b1bc0['command'],_0x4b1bc0);let _0xd85341=serviceGroups[_0x27847d(0x1cd)](_0x4b1bc0['service']);!_0xd85341&&(_0xd85341=[],serviceGroups[_0x27847d(0x1c3)](_0x4b1bc0['service'],_0xd85341)),_0xd85341[_0x27847d(0x1ec)](_0x4b1bc0);}}function registerDeclarativeService(_0xc1ffe8,_0x785ecf,_0x151961){const _0x385ce8=a129_0x2f48;registerDefinitions(_0x785ecf);_0x151961?.[_0x385ce8(0x1f5)]&&registerDefinitions([_0x151961[_0x385ce8(0x1f5)]]);const _0x4aa1a3=_0x217e7d=>_0x217e7d==='read'?'':_0x217e7d===_0x385ce8(0x1f1)?'\x20\x20[write]':_0x385ce8(0x1f3),_0x4c438d={'service':_0x785ecf[0x0][_0x385ce8(0x1cb)],'label':_0xc1ffe8,'commands':_0x785ecf[_0x385ce8(0x1da)](_0x50b52d=>({'command':_0x50b52d[_0x385ce8(0x1d6)],'description':_0x50b52d[_0x385ce8(0x1bf)],'tag':_0x4aa1a3(_0x50b52d[_0x385ce8(0x1e3)])})),'declarative':!![],'defaultCommand':_0x151961?.[_0x385ce8(0x1f4)]??(_0x151961?.['isSingleCommand']?_0x785ecf[0x0]['command']:undefined),'wildcardDef':_0x151961?.[_0x385ce8(0x1f5)],'isSingleCommand':_0x151961?.[_0x385ce8(0x1e9)]};serviceRegistry['push'](_0x4c438d),serviceByName['set'](_0x4c438d[_0x385ce8(0x1cb)],_0x4c438d);}function a129_0x2f48(_0x1d3d63,_0x48b2cc){_0x1d3d63=_0x1d3d63-0x1bf;const _0x1cb96a=a129_0x1cb9();let _0x2f48b0=_0x1cb96a[_0x1d3d63];return _0x2f48b0;}registerDeclarativeService('Quick\x20Start',initDefinitions,{'defaultCommand':a129_0x17d681(0x1db),'isSingleCommand':!![]}),registerDeclarativeService(a129_0x17d681(0x1d3),projectDefinitions),registerDeclarativeService(a129_0x17d681(0x1f0),workspaceDefinitions),registerDeclarativeService(a129_0x17d681(0x1f6),appDefinitions),registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':'login'}),registerDeclarativeService(a129_0x17d681(0x1c8),datasetDefinitions),registerDeclarativeService(a129_0x17d681(0x1cf),pageDefinitions),registerDeclarativeService(a129_0x17d681(0x1c9),apiDefinitions),registerDeclarativeService(a129_0x17d681(0x1dc),dataDefinitions),registerDeclarativeService(a129_0x17d681(0x1c1),bffDefinitions),registerDeclarativeService(a129_0x17d681(0x1ce),sqlDefinitions),registerDeclarativeService(a129_0x17d681(0x1cc),dbDefinitions),registerDeclarativeService('Menu',menuDefinitions),registerDeclarativeService(a129_0x17d681(0x1e1),appConfigDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a129_0x17d681(0x1c5),codegenDefinitions),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a129_0x17d681(0x1d9),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a129_0x17d681(0x1c0),cliSkillDefinitions,{'defaultCommand':a129_0x17d681(0x1c6)}),registerDeclarativeService(a129_0x17d681(0x1de),logsDefinitions,{'defaultCommand':a129_0x17d681(0x1e4)}),registerDeclarativeService(a129_0x17d681(0x1d5),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry['length']-0x1];last[a129_0x17d681(0x1d2)]=[{'command':a129_0x17d681(0x1e8),'description':a129_0x17d681(0x1d7),'tag':''}];}export const deprecatedAliases={'create':{'service':'project','command':'create'},'start':{'service':a129_0x17d681(0x1db),'command':'start'},'build':{'service':'run','command':'build'},'preview':{'service':a129_0x17d681(0x1db),'command':a129_0x17d681(0x1e6)},'logout':{'service':a129_0x17d681(0x1dd),'command':a129_0x17d681(0x1df)}};const CLI_SKILL_INSTALL_REMOVED_HINT=a129_0x17d681(0x1d0);export function resolveRemovedCommand(_0x274187,_0x1db44e){const _0x46cc92=a129_0x17d681;if(_0x274187==='skill'){const _0x79da57=_0x1db44e?_0x46cc92(0x1f2)+_0x1db44e:_0x46cc92(0x1f7);return{'command':_0x79da57,'message':'`rabetbase\x20'+_0x79da57+'`\x20has\x20been\x20removed.','hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x274187==='skills')return{'command':_0x46cc92(0x1e7),'message':'`rabetbase\x20skills`\x20has\x20been\x20removed.','hint':CLI_SKILL_INSTALL_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a129_0x17d681(0x1c4)},'sql':{'new':a129_0x17d681(0x1c4)}};export function resolveDeprecatedSubcommand(_0x165a7d,_0x33eb08){return deprecatedSubcommands[_0x165a7d]?.[_0x33eb08];}export function findDefinition(_0x5dfd6e,_0x15e45f){const _0x183bf7=a129_0x17d681;return definitions[_0x183bf7(0x1cd)](_0x5dfd6e+':'+_0x15e45f);}export function isKnownService(_0x7f38e5){return serviceByName['has'](_0x7f38e5);}export function isDeclarativeService(_0x25d2c8){const _0x4c570f=a129_0x17d681;return serviceGroups[_0x4c570f(0x1e5)](_0x25d2c8)||serviceByName[_0x4c570f(0x1cd)](_0x25d2c8)?.[_0x4c570f(0x1f5)]!==undefined;}export function getServiceEntry(_0x4e6776){const _0x4745ef=a129_0x17d681;return serviceByName[_0x4745ef(0x1cd)](_0x4e6776);}export function getLegacyHandler(_0x181c23,_0x1d96e0){return undefined;}export function getAllDefinitions(){const _0x52cce2=a129_0x17d681;return Array[_0x52cce2(0x1ed)](definitions['values']());}
@@ -1 +1 @@
1
- function a130_0x2835(){const _0x3596ae=['8VkRlkA','220330FypoGj','154siHpns','args','\x0a\x20\x20Usage:\x20','package.json','entries','bun.lockb','292388HzLuJw','error','.bin','Script\x20name\x20defined\x20in\x20package.json','\x22\x20not\x20found\x20in\x20package.json.','run','bun','preview','padEnd','Run\x20a\x20package.json\x20script','\x20exited\x20with\x20code\x20','400404YxaMvK','close','Available:\x20','needsUpgrade','(none)','boolean','\x20run\x20<script>\x0a','1497396dBgyak','script','\x20\x20\x20\x20','validation','3977380RJOiMt','--watch','\x20run\x20build','pnpm-lock.yaml','join','5916789XMCdjg','inherit','Enable\x20watch\x20mode\x20for\x20preview','1693895tZBzGz','No\x20scripts\x20defined\x20in\x20package.json.','\x20run\x20start','\x20\x20EXAMPLES','max','slice','read','yarn.lock','keys','vite','length','push','6AypbQU','cwd','vite\x20preview\x20exited\x20with\x20code\x20','npm','utf-8','build','map','log','\x20run\x20','18jaWHZK','parse','\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)','start','node_modules','yarn','\x0a\x20\x20Available\x20scripts:\x0a','has','vite\x20build\x20--watch\x20exited\x20with\x20code\x20'];a130_0x2835=function(){return _0x3596ae;};return a130_0x2835();}const a130_0xf0e570=a130_0xa792;(function(_0x5ce961,_0x435a31){const _0xbd257c=a130_0xa792,_0x3d618e=_0x5ce961();while(!![]){try{const _0x53e117=parseInt(_0xbd257c(0xec))/0x1+-parseInt(_0xbd257c(0xd2))/0x2*(parseInt(_0xbd257c(0xf7))/0x3)+-parseInt(_0xbd257c(0xfe))/0x4+parseInt(_0xbd257c(0x102))/0x5+parseInt(_0xbd257c(0xdb))/0x6*(-parseInt(_0xbd257c(0x10a))/0x7)+-parseInt(_0xbd257c(0xe4))/0x8*(-parseInt(_0xbd257c(0x107))/0x9)+-parseInt(_0xbd257c(0xe5))/0xa*(-parseInt(_0xbd257c(0xe6))/0xb);if(_0x53e117===_0x435a31)break;else _0x3d618e['push'](_0x3d618e['shift']());}catch(_0x529306){_0x3d618e['push'](_0x3d618e['shift']());}}}(a130_0x2835,0x8704f));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([a130_0xf0e570(0xde),'dev']);function readPackageScripts(_0x107e89){const _0x4d04f4=a130_0xf0e570,_0xdec965=resolve(_0x107e89,_0x4d04f4(0xe9));if(!existsSync(_0xdec965))return null;try{const _0x399808=JSON[_0x4d04f4(0xdc)](readFileSync(_0xdec965,_0x4d04f4(0xd6)));return _0x399808['scripts']??{};}catch{return null;}}function detectPackageManager(_0x1e0bc4){const _0x4a9b4c=a130_0xf0e570;if(existsSync(resolve(_0x1e0bc4,_0x4a9b4c(0xeb)))||existsSync(resolve(_0x1e0bc4,'bun.lock')))return _0x4a9b4c(0xf2);if(existsSync(resolve(_0x1e0bc4,_0x4a9b4c(0x105))))return'pnpm';if(existsSync(resolve(_0x1e0bc4,_0x4a9b4c(0x111))))return _0x4a9b4c(0xe0);return _0x4a9b4c(0xd5);}async function versionCheck(_0x4fea00){const _0x46c3b4=a130_0xf0e570,_0x50636d=await checkCliVersion();(_0x50636d['needsUpgrade']||_0x50636d['belowMinimum'])&&(printCliUpgradeWarning(_0x50636d),assertCliVersionSupported(_0x50636d));const _0x11c2f2=await checkSdkVersion(_0x4fea00);if(_0x11c2f2[_0x46c3b4(0xfa)])printSdkUpgradeWarning(_0x11c2f2);}function spawnScript(_0x5dd42d,_0x3ab4f8,_0x1116da,_0x583a07){return new Promise((_0x1b671f,_0x37acd3)=>{const _0x20db21=a130_0xa792,_0x40868b=[_0x20db21(0xf1),_0x3ab4f8,..._0x1116da],_0x85d4ed=spawn(_0x5dd42d,_0x40868b,{'cwd':_0x583a07,'stdio':_0x20db21(0x108),'shell':!![],'env':{...process.env,'PATH':''+join(_0x583a07,_0x20db21(0xdf),_0x20db21(0xee))+delimiter+process.env.PATH}});_0x85d4ed['on'](_0x20db21(0xf8),_0x277834=>{const _0x53db41=_0x20db21;if(_0x277834===0x0||_0x277834===null)_0x1b671f();else _0x37acd3(new Error(_0x5dd42d+_0x53db41(0xda)+_0x3ab4f8+_0x53db41(0xf6)+_0x277834));}),_0x85d4ed['on'](_0x20db21(0xed),_0x37acd3);});}function spawnViteBuildWatch(_0x5bc2ff){return new Promise((_0x339d7f,_0x193adc)=>{const _0x1a41bb=a130_0xa792,_0x90c0fa=spawn(_0x1a41bb(0x113),[_0x1a41bb(0xd7),_0x1a41bb(0x103)],{'cwd':_0x5bc2ff,'stdio':_0x1a41bb(0x108),'shell':!![],'env':{...process.env,'PATH':''+join(_0x5bc2ff,'node_modules','.bin')+delimiter+process.env.PATH}});_0x90c0fa['on'](_0x1a41bb(0xf8),_0x4873fd=>{const _0x98fe16=_0x1a41bb;if(_0x4873fd===0x0||_0x4873fd===null)_0x339d7f();else _0x193adc(new Error(_0x98fe16(0xe3)+_0x4873fd));}),_0x90c0fa['on'](_0x1a41bb(0xed),_0x193adc);});}function spawnVitePreview(_0x280b5d){return new Promise((_0x2ebaf4,_0x239871)=>{const _0x5c46a2=a130_0xa792,_0x947c5f=spawn('vite',[_0x5c46a2(0xf3)],{'cwd':_0x280b5d,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0x280b5d,'node_modules',_0x5c46a2(0xee))+delimiter+process.env.PATH}});_0x947c5f['on']('close',_0x332f8e=>{const _0x1d17f1=_0x5c46a2;if(_0x332f8e===0x0||_0x332f8e===null)_0x2ebaf4();else _0x239871(new Error(_0x1d17f1(0xd4)+_0x332f8e));}),_0x947c5f['on'](_0x5c46a2(0xed),_0x239871);});}const runFlags=[{'name':'watch','type':a130_0xf0e570(0xfc),'description':a130_0xf0e570(0x109),'default':![]}];function a130_0xa792(_0x4c761f,_0xb84fdf){_0x4c761f=_0x4c761f-0xd2;const _0x283575=a130_0x2835();let _0xa7922c=_0x283575[_0x4c761f];return _0xa7922c;}export const runDefinition={'service':a130_0xf0e570(0xf1),'command':a130_0xf0e570(0xf1),'description':a130_0xf0e570(0xf5),'risk':a130_0xf0e570(0x110),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a130_0xf0e570(0xff),'description':a130_0xf0e570(0xef),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x24b9c1=a130_0xf0e570,_0x4c3322=readPackageScripts(process[_0x24b9c1(0xd3)]()),_0x2da4ec=[];if(_0x4c3322&&Object['keys'](_0x4c3322)[_0x24b9c1(0x114)]>0x0){const _0x4fd2f6=Object['keys'](_0x4c3322),_0x556083=Math[_0x24b9c1(0x10e)](..._0x4fd2f6[_0x24b9c1(0xd8)](_0x12702e=>_0x12702e[_0x24b9c1(0x114)]));_0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0xdd));for(const [_0x114cc3,_0x2a5af8]of Object[_0x24b9c1(0xea)](_0x4c3322)){_0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0x100)+CLI_BIN_NAME+_0x24b9c1(0xda)+_0x114cc3['padEnd'](_0x556083+0x2)+'#\x20'+_0x2a5af8);}}else _0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0x10d)),_0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0x100)+CLI_BIN_NAME+_0x24b9c1(0x10c)),_0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0x100)+CLI_BIN_NAME+_0x24b9c1(0x104)),_0x2da4ec['push'](_0x24b9c1(0x100)+CLI_BIN_NAME+'\x20run\x20preview'),_0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0x100)+CLI_BIN_NAME+'\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview');return _0x2da4ec['join']('\x0a');},async 'execute'(_0xcd8d6a){const _0x3a858c=a130_0xf0e570,_0x29bb38=process[_0x3a858c(0xd3)](),_0xe0100e=_0xcd8d6a['args'][0x0],_0x400f9c=_0xcd8d6a[_0x3a858c(0xe7)][_0x3a858c(0x10f)](0x1),_0x275b2d=readPackageScripts(_0x29bb38);if(!_0x275b2d)throw CliErrors[_0x3a858c(0x101)]('No\x20package.json\x20found\x20in\x20current\x20directory.');if(!_0xe0100e){const _0x5f932a=Object[_0x3a858c(0x112)](_0x275b2d);if(_0x5f932a[_0x3a858c(0x114)]===0x0)console['log'](_0x3a858c(0x10b));else{console[_0x3a858c(0xd9)](_0x3a858c(0xe1));const _0x24b327=Math[_0x3a858c(0x10e)](..._0x5f932a['map'](_0x61af3b=>_0x61af3b['length']));for(const [_0x22155c,_0x20f2c9]of Object[_0x3a858c(0xea)](_0x275b2d)){console[_0x3a858c(0xd9)]('\x20\x20\x20\x20'+_0x22155c[_0x3a858c(0xf4)](_0x24b327+0x2)+_0x20f2c9);}console[_0x3a858c(0xd9)](_0x3a858c(0xe8)+CLI_BIN_NAME+_0x3a858c(0xfd));}return{'ok':!![]};}if(!_0x275b2d[_0xe0100e])throw CliErrors[_0x3a858c(0x101)]('Script\x20\x22'+_0xe0100e+_0x3a858c(0xf0),_0x3a858c(0xf9)+(Object['keys'](_0x275b2d)[_0x3a858c(0x106)](',\x20')||_0x3a858c(0xfb)));const _0x30415b=detectPackageManager(_0x29bb38);VERSION_CHECK_SCRIPTS[_0x3a858c(0xe2)](_0xe0100e)&&await versionCheck(_0x29bb38);if(_0xe0100e===_0x3a858c(0xf3)&&_0xcd8d6a['bool']('watch'))return await Promise['all']([spawnViteBuildWatch(_0x29bb38),spawnVitePreview(_0x29bb38)]),{'ok':!![]};return await spawnScript(_0x30415b,_0xe0100e,_0x400f9c,_0x29bb38),{'ok':!![]};}};
1
+ const a130_0x15e65a=a130_0x4769;function a130_0x35bc(){const _0x2c906b=['Script\x20name\x20defined\x20in\x20package.json','bun.lockb','\x20\x20EXAMPLES','join','close','watch','script','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','run','\x20run\x20preview\x20--watch','slice','start','yarn','\x20\x20\x20\x20','vite\x20preview\x20exited\x20with\x20code\x20','all','.bin','\x20run\x20start','No\x20package.json\x20found\x20in\x20current\x20directory.','log','2068420xLrzyk','inherit','Available:\x20','77mlLLul','dev','20GbojWy','7757469PvDxwb','package.json','cwd','length','7839426RJYSfo','\x20run\x20','\x20run\x20<script>\x0a','boolean','bun.lock','args','1313968msRpEN','keys','1090Ezmugk','8001szPgbg','bun','(none)','bool','yarn.lock','read','pnpm-lock.yaml','\x20run\x20build','\x0a\x20\x20Usage:\x20','node_modules','preview','--watch','npm','parse','validation','utf-8','pnpm','push','needsUpgrade','289617SRBqdT','error','8VyIyub','Script\x20\x22','96204jZdYru'];a130_0x35bc=function(){return _0x2c906b;};return a130_0x35bc();}function a130_0x4769(_0x3f970e,_0xaa4744){_0x3f970e=_0x3f970e-0x1b9;const _0x35bc93=a130_0x35bc();let _0x476979=_0x35bc93[_0x3f970e];return _0x476979;}(function(_0xaf64e8,_0x41785f){const _0x555f48=a130_0x4769,_0x34ccb3=_0xaf64e8();while(!![]){try{const _0x473feb=parseInt(_0x555f48(0x1c6))/0x1+parseInt(_0x555f48(0x1f1))/0x2*(parseInt(_0x555f48(0x1f2))/0x3)+-parseInt(_0x555f48(0x1ef))/0x4+parseInt(_0x555f48(0x1e4))/0x5*(-parseInt(_0x555f48(0x1ca))/0x6)+-parseInt(_0x555f48(0x1e9))/0x7+-parseInt(_0x555f48(0x1c8))/0x8*(parseInt(_0x555f48(0x1e5))/0x9)+parseInt(_0x555f48(0x1df))/0xa*(parseInt(_0x555f48(0x1e2))/0xb);if(_0x473feb===_0x41785f)break;else _0x34ccb3['push'](_0x34ccb3['shift']());}catch(_0x53a6a4){_0x34ccb3['push'](_0x34ccb3['shift']());}}}(a130_0x35bc,0xc759b));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([a130_0x15e65a(0x1d6),a130_0x15e65a(0x1e3)]);function readPackageScripts(_0x584d58){const _0x31b302=a130_0x15e65a,_0x38824c=resolve(_0x584d58,_0x31b302(0x1e6));if(!existsSync(_0x38824c))return null;try{const _0x3671c6=JSON[_0x31b302(0x1c0)](readFileSync(_0x38824c,_0x31b302(0x1c2)));return _0x3671c6['scripts']??{};}catch{return null;}}function detectPackageManager(_0x20fd5d){const _0x42b0c6=a130_0x15e65a;if(existsSync(resolve(_0x20fd5d,_0x42b0c6(0x1cc)))||existsSync(resolve(_0x20fd5d,_0x42b0c6(0x1ed))))return _0x42b0c6(0x1f3);if(existsSync(resolve(_0x20fd5d,_0x42b0c6(0x1b9))))return _0x42b0c6(0x1c3);if(existsSync(resolve(_0x20fd5d,_0x42b0c6(0x1f6))))return _0x42b0c6(0x1d7);return _0x42b0c6(0x1bf);}async function versionCheck(_0x344b0c){const _0x3d8b76=a130_0x15e65a,_0xed69ca=await checkCliVersion();(_0xed69ca[_0x3d8b76(0x1c5)]||_0xed69ca['belowMinimum'])&&(printCliUpgradeWarning(_0xed69ca),assertCliVersionSupported(_0xed69ca));const _0x4a7233=await checkSdkVersion(_0x344b0c);if(_0x4a7233[_0x3d8b76(0x1c5)])printSdkUpgradeWarning(_0x4a7233);}function spawnScript(_0x2f38c2,_0x3a8e1c,_0x25faf1,_0x5adecd){return new Promise((_0x54478c,_0x1efb2f)=>{const _0x9ab0bf=a130_0x4769,_0xa7699c=[_0x9ab0bf(0x1d3),_0x3a8e1c,..._0x25faf1],_0x22b4b7=spawn(_0x2f38c2,_0xa7699c,{'cwd':_0x5adecd,'stdio':_0x9ab0bf(0x1e0),'shell':!![],'env':{...process.env,'PATH':''+join(_0x5adecd,'node_modules','.bin')+delimiter+process.env.PATH}});_0x22b4b7['on'](_0x9ab0bf(0x1cf),_0x497b15=>{const _0x336bbb=_0x9ab0bf;if(_0x497b15===0x0||_0x497b15===null)_0x54478c();else _0x1efb2f(new Error(_0x2f38c2+_0x336bbb(0x1ea)+_0x3a8e1c+'\x20exited\x20with\x20code\x20'+_0x497b15));}),_0x22b4b7['on'](_0x9ab0bf(0x1c7),_0x1efb2f);});}function spawnViteBuildWatch(_0x82d2dd){return new Promise((_0x539a63,_0x2b117a)=>{const _0xb7026c=a130_0x4769,_0x226c75=spawn('vite',['build',_0xb7026c(0x1be)],{'cwd':_0x82d2dd,'stdio':_0xb7026c(0x1e0),'shell':!![],'env':{...process.env,'PATH':''+join(_0x82d2dd,_0xb7026c(0x1bc),_0xb7026c(0x1db))+delimiter+process.env.PATH}});_0x226c75['on'](_0xb7026c(0x1cf),_0x281f92=>{const _0x257cd=_0xb7026c;if(_0x281f92===0x0||_0x281f92===null)_0x539a63();else _0x2b117a(new Error(_0x257cd(0x1d2)+_0x281f92));}),_0x226c75['on'](_0xb7026c(0x1c7),_0x2b117a);});}function spawnVitePreview(_0x2f0032){return new Promise((_0x8a34c3,_0x59ed62)=>{const _0x26be7b=a130_0x4769,_0x5c4a19=spawn('vite',['preview'],{'cwd':_0x2f0032,'stdio':_0x26be7b(0x1e0),'shell':!![],'env':{...process.env,'PATH':''+join(_0x2f0032,_0x26be7b(0x1bc),_0x26be7b(0x1db))+delimiter+process.env.PATH}});_0x5c4a19['on'](_0x26be7b(0x1cf),_0x2e402e=>{const _0x5a876a=_0x26be7b;if(_0x2e402e===0x0||_0x2e402e===null)_0x8a34c3();else _0x59ed62(new Error(_0x5a876a(0x1d9)+_0x2e402e));}),_0x5c4a19['on']('error',_0x59ed62);});}const runFlags=[{'name':a130_0x15e65a(0x1d0),'type':a130_0x15e65a(0x1ec),'description':'Enable\x20watch\x20mode\x20for\x20preview','default':![]}];export const runDefinition={'service':a130_0x15e65a(0x1d3),'command':'run','description':'Run\x20a\x20package.json\x20script','risk':a130_0x15e65a(0x1f7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a130_0x15e65a(0x1d1),'description':a130_0x15e65a(0x1cb),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x1472da=a130_0x15e65a,_0x9fa2a5=[];return _0x9fa2a5[_0x1472da(0x1c4)](_0x1472da(0x1cd)),_0x9fa2a5['push']('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x1472da(0x1dc)),_0x9fa2a5[_0x1472da(0x1c4)](_0x1472da(0x1d8)+CLI_BIN_NAME+_0x1472da(0x1ba)),_0x9fa2a5[_0x1472da(0x1c4)](_0x1472da(0x1d8)+CLI_BIN_NAME+'\x20run\x20preview'),_0x9fa2a5[_0x1472da(0x1c4)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x1472da(0x1d4)),_0x9fa2a5[_0x1472da(0x1ce)]('\x0a');},async 'execute'(_0x95219c){const _0x2d7a62=a130_0x15e65a,_0x1284db=process[_0x2d7a62(0x1e7)](),_0x72a0fe=_0x95219c['args'][0x0],_0x117c2a=_0x95219c[_0x2d7a62(0x1ee)][_0x2d7a62(0x1d5)](0x1),_0x5eae0d=readPackageScripts(_0x1284db);if(!_0x5eae0d)throw CliErrors[_0x2d7a62(0x1c1)](_0x2d7a62(0x1dd));if(!_0x72a0fe){const _0x522e69=Object[_0x2d7a62(0x1f0)](_0x5eae0d);if(_0x522e69[_0x2d7a62(0x1e8)]===0x0)console['log']('No\x20scripts\x20defined\x20in\x20package.json.');else{console['log']('\x0a\x20\x20Available\x20scripts:\x0a');for(const _0x4b017d of _0x522e69){console[_0x2d7a62(0x1de)](_0x2d7a62(0x1d8)+_0x4b017d);}console[_0x2d7a62(0x1de)](_0x2d7a62(0x1bb)+CLI_BIN_NAME+_0x2d7a62(0x1eb));}return{'ok':!![]};}if(!_0x5eae0d[_0x72a0fe])throw CliErrors[_0x2d7a62(0x1c1)](_0x2d7a62(0x1c9)+_0x72a0fe+'\x22\x20not\x20found\x20in\x20package.json.',_0x2d7a62(0x1e1)+(Object[_0x2d7a62(0x1f0)](_0x5eae0d)[_0x2d7a62(0x1ce)](',\x20')||_0x2d7a62(0x1f4)));const _0x41934c=detectPackageManager(_0x1284db);VERSION_CHECK_SCRIPTS['has'](_0x72a0fe)&&await versionCheck(_0x1284db);if(_0x72a0fe===_0x2d7a62(0x1bd)&&_0x95219c[_0x2d7a62(0x1f5)](_0x2d7a62(0x1d0)))return await Promise[_0x2d7a62(0x1da)]([spawnViteBuildWatch(_0x1284db),spawnVitePreview(_0x1284db)]),{'ok':!![]};return await spawnScript(_0x41934c,_0x72a0fe,_0x117c2a,_0x1284db),{'ok':!![]};}};
@@ -1 +1 @@
1
- function a131_0x3ad0(_0x4532da,_0x5d20ef){_0x4532da=_0x4532da-0x1de;const _0x875745=a131_0x8757();let _0x3ad0e5=_0x875745[_0x4532da];return _0x3ad0e5;}function a131_0x8757(){const _0x3530be=['20WcxpeL','export','read','9518562xaBtXm','296032sMPoax','12661240GfuWXW','2048711tyABZh','2355ltfFHO','schema','850KQqWZB','9910332ZoJcYT','3732TwWxmw','5GiIYKH','3687bgdXwp'];a131_0x8757=function(){return _0x3530be;};return a131_0x8757();}const a131_0x3cf577=a131_0x3ad0;(function(_0x386057,_0x523ea8){const _0x3fa732=a131_0x3ad0,_0x51d185=_0x386057();while(!![]){try{const _0x4d31f1=parseInt(_0x3fa732(0x1e9))/0x1*(parseInt(_0x3fa732(0x1e5))/0x2)+-parseInt(_0x3fa732(0x1e3))/0x3*(-parseInt(_0x3fa732(0x1e7))/0x4)+parseInt(_0x3fa732(0x1e8))/0x5*(-parseInt(_0x3fa732(0x1df))/0x6)+-parseInt(_0x3fa732(0x1e2))/0x7+parseInt(_0x3fa732(0x1e1))/0x8+-parseInt(_0x3fa732(0x1e6))/0x9+-parseInt(_0x3fa732(0x1ea))/0xa*(-parseInt(_0x3fa732(0x1e0))/0xb);if(_0x4d31f1===_0x523ea8)break;else _0x51d185['push'](_0x51d185['shift']());}catch(_0x114348){_0x51d185['push'](_0x51d185['shift']());}}}(a131_0x8757,0xe94db));import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x5771d6){const _0xf3b36f=await buildSchemaPayload();return{'ok':!![],'data':_0xf3b36f};}export const schemaDefinition={'service':a131_0x3cf577(0x1e4),'command':a131_0x3cf577(0x1eb),'description':'Export\x20machine-readable\x20command\x20schema\x20(JSON)','risk':a131_0x3cf577(0x1de),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':'json','flags':[],'execute':execute};
1
+ const a131_0x405426=a131_0x1a7a;(function(_0x4f5afa,_0x41baea){const _0x465a59=a131_0x1a7a,_0x147798=_0x4f5afa();while(!![]){try{const _0x54a563=-parseInt(_0x465a59(0x78))/0x1+parseInt(_0x465a59(0x79))/0x2*(-parseInt(_0x465a59(0x7a))/0x3)+parseInt(_0x465a59(0x76))/0x4+parseInt(_0x465a59(0x6f))/0x5*(-parseInt(_0x465a59(0x75))/0x6)+parseInt(_0x465a59(0x77))/0x7+parseInt(_0x465a59(0x73))/0x8+-parseInt(_0x465a59(0x72))/0x9;if(_0x54a563===_0x41baea)break;else _0x147798['push'](_0x147798['shift']());}catch(_0x275d3e){_0x147798['push'](_0x147798['shift']());}}}(a131_0xd51b,0x49bf9));function a131_0x1a7a(_0x15e87a,_0x15ceb){_0x15e87a=_0x15e87a-0x6f;const _0xd51b9b=a131_0xd51b();let _0x1a7a46=_0xd51b9b[_0x15e87a];return _0x1a7a46;}import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x5ccf29){const _0x24eaa5=await buildSchemaPayload();return{'ok':!![],'data':_0x24eaa5};}function a131_0xd51b(){const _0x2cf630=['4247325IMoGOi','4634288sYsRhv','export','528gqRAGp','2059152PGCkKo','3650619vBVxYw','71365DAImkH','1096GYJChp','2397zKbsbQ','schema','18885VrSFqB','Export\x20machine-readable\x20command\x20schema\x20(JSON)','json'];a131_0xd51b=function(){return _0x2cf630;};return a131_0xd51b();}export const schemaDefinition={'service':a131_0x405426(0x7b),'command':a131_0x405426(0x74),'description':a131_0x405426(0x70),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a131_0x405426(0x71),'flags':[],'execute':execute};
@@ -1 +1 @@
1
- const a132_0x3a0033=a132_0x31a0;(function(_0x17ac42,_0x38acb5){const _0x58e8db=a132_0x31a0,_0x4d7455=_0x17ac42();while(!![]){try{const _0x2cb2dc=parseInt(_0x58e8db(0x142))/0x1*(-parseInt(_0x58e8db(0x150))/0x2)+parseInt(_0x58e8db(0x166))/0x3+parseInt(_0x58e8db(0x15a))/0x4*(-parseInt(_0x58e8db(0x175))/0x5)+-parseInt(_0x58e8db(0x140))/0x6*(-parseInt(_0x58e8db(0x160))/0x7)+-parseInt(_0x58e8db(0x16a))/0x8*(parseInt(_0x58e8db(0x153))/0x9)+parseInt(_0x58e8db(0x172))/0xa+parseInt(_0x58e8db(0x147))/0xb*(parseInt(_0x58e8db(0x151))/0xc);if(_0x2cb2dc===_0x38acb5)break;else _0x4d7455['push'](_0x4d7455['shift']());}catch(_0x46f8c6){_0x4d7455['push'](_0x4d7455['shift']());}}}(a132_0x3e51,0x4231c));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';function a132_0x3e51(){const _0x2f3d36=['--name\x20is\x20required\x20in\x20non-interactive\x20mode.','请选择目标数据库:','sql','__manual__','833296JjdNrB','dbId','MyBatis\x20XML(mybatisXml)','stringify','请输入目标数据库\x20dbId:','map','310051CAJhgv','db-id','high-risk-write','string','toISOString','dbId\x20不能为空','695025MhMzYF','sqls','appCode','length','16712tGOElI','mybatisXml','flag','name','dbId\x20必须为正整数','Created\x20SQL\x20query\x20','SQL\x20名称不能为空','sqlName','2829660gvsHck','Target\x20database\x20ID','trim','5dNinTb','mode','lastSync','join','sqlCode','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','number','str','sqlRootDir','dbName','</select>','\x20\x20SELECT\x201\x20AS\x20id','SQL\x20query\x20display\x20name','isInteger','validation','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','18LYLhsC','SELECT\x201\x20AS\x20id;','311PdURIS','flagMissing','catch','utf8','parse','108768awLPFG','create','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','请输入\x20SQL\x20名称:','适合带动态标签的\x20MyBatis\x20XML\x20SQL','description','普通\x20SQL(sql)','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','nonInteractive','204NgaEwd','12hqsewz','File\x20already\x20exists:\x20','630EQVfaY','isFinite','sqlRoot'];a132_0x3e51=function(){return _0x2f3d36;};return a132_0x3e51();}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(_0x7fd673){const _0x3eab7a=a132_0x31a0;if(_0x7fd673===_0x3eab7a(0x16b))return[_0x3eab7a(0x13f),_0x3eab7a(0x180),_0x3eab7a(0x17f),''][_0x3eab7a(0x178)]('\x0a');return[_0x3eab7a(0x141),''][_0x3eab7a(0x178)]('\x0a');}export const sqlCreate={'service':'sql','command':a132_0x3a0033(0x148),'description':'Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','risk':a132_0x3a0033(0x162),'flags':[{'name':a132_0x3a0033(0x16d),'type':a132_0x3a0033(0x163),'description':a132_0x3a0033(0x13c)},{'name':a132_0x3a0033(0x161),'type':a132_0x3a0033(0x17b),'description':a132_0x3a0033(0x173)},{'name':'mode','type':'string','enum':[a132_0x3a0033(0x158),a132_0x3a0033(0x16b)],'description':'Local\x20SQL\x20file\x20mode'}],async 'validate'(_0x4df3cf){const _0x37b7e8=a132_0x3a0033;if(!_0x4df3cf[_0x37b7e8(0x14f)])return;if(!_0x4df3cf['str'](_0x37b7e8(0x16d))[_0x37b7e8(0x174)]())throw CliErrors[_0x37b7e8(0x143)](_0x37b7e8(0x16d),_0x37b7e8(0x156));const _0x149d79=resolveProvidedDbId(_0x4df3cf);if(typeof _0x149d79!==_0x37b7e8(0x17b)||!Number['isFinite'](_0x149d79)||_0x149d79<=0x0)throw CliErrors[_0x37b7e8(0x143)]('db-id',_0x37b7e8(0x17a));if(!_0x4df3cf['str']('mode')[_0x37b7e8(0x174)]())throw CliErrors['flagMissing']('mode',_0x37b7e8(0x14e));},async 'dryRun'(_0x1fbdb0){const _0x531069=a132_0x3a0033,_0x4bbabb=loadSqlProjectConfig(_0x1fbdb0[_0x531069(0x168)]),{sqlName:_0x2784be,dbId:_0x4032f7,dbName:_0x3e6f40,mode:_0x115290}=await resolveSqlNewInputs(_0x1fbdb0),_0x5c264d=buildSqlRelativePath('<server-generated-sqlCode>',_0x2784be,_0x3e6f40,_0x115290,_0x4032f7),_0x2ca9f0=_0x4bbabb[_0x531069(0x17d)]+'/'+_0x5c264d;return{'method':'POST','url':'/smartapi/custom/saveUserCustomSql','body':{'appCode':_0x1fbdb0['appCode'],'sqlName':_0x2784be,'dbId':_0x4032f7,'mode':_0x115290,'localPath':_0x2ca9f0},'description':_0x531069(0x149)+_0x4bbabb[_0x531069(0x17d)]};},async 'execute'(_0x161935){const _0x14372f=a132_0x3a0033,_0x1674fb=loadSqlProjectConfig(_0x161935[_0x14372f(0x168)]),{sqlName:_0x4cdb49,dbId:_0x2cc9de,dbName:_0x454934,mode:_0x1d1066}=await resolveSqlNewInputs(_0x161935),_0x5e8587=generateSqlTemplate(_0x1d1066),_0x4371c4=await createSqlQuery({'appCode':_0x161935[_0x14372f(0x168)],'sqlName':_0x4cdb49,'dbId':_0x2cc9de,'sqlContent':_0x5e8587}),_0x56b825=ensureRemoteSqlContent(_0x4371c4),_0x47945b=_0x454934||await getDbName(_0x161935['appCode'],_0x2cc9de)[_0x14372f(0x144)](()=>undefined),_0x45a72a=buildSqlRelativePath(_0x4371c4['sqlCode'],_0x4371c4[_0x14372f(0x171)],_0x47945b,_0x1d1066,_0x2cc9de),_0x441177=_0x1674fb[_0x14372f(0x17d)]+'/'+_0x45a72a,_0x5bf496=buildLocalSqlFileContent({'sqlCode':_0x4371c4[_0x14372f(0x179)],'sqlName':_0x4371c4['sqlName'],'dbId':_0x4371c4[_0x14372f(0x15b)]},_0x56b825,{'dbName':_0x47945b,'mode':_0x1d1066,'syncedAt':new Date()[_0x14372f(0x164)](),'description':_0x4371c4[_0x14372f(0x14c)]});if(await fileExists(_0x441177))throw CliErrors[_0x14372f(0x13e)](_0x14372f(0x152)+_0x441177);await ensureParentDirectory(_0x441177),await writeFile(_0x441177,_0x5bf496,_0x14372f(0x145));const _0x9367da=await readSqlLockFile(_0x1674fb['lockFilePath']),{lockData:_0x52b3cc,appLock:_0x46a7ce}=ensureSqlLockScope(_0x9367da??createEmptySqlLock(),_0x1674fb[_0x14372f(0x168)],_0x1674fb[_0x14372f(0x155)],'new');return _0x46a7ce[_0x14372f(0x167)][_0x4371c4[_0x14372f(0x179)]]={...buildSqlLockEntry(_0x4371c4,_0x56b825,computeSqlContentHash(_0x5bf496),{'dbName':_0x47945b}),'path':_0x45a72a,'mode':_0x1d1066},_0x46a7ce[_0x14372f(0x177)]=new Date()['toISOString'](),await writeSqlLockFile(_0x1674fb['lockFilePath'],_0x52b3cc),{'ok':!![],'data':{'id':_0x4371c4['id'],'sqlCode':_0x4371c4[_0x14372f(0x179)],'sqlName':_0x4371c4['sqlName'],'dbId':_0x4371c4[_0x14372f(0x15b)],'path':_0x441177,'mode':_0x1d1066},'message':_0x14372f(0x16f)+_0x4371c4[_0x14372f(0x179)]};}};async function resolveSqlNewInputs(_0x3b2a39){const _0x4cb9fa=await resolveSqlNameInput(_0x3b2a39),{dbId:_0x4a058d,dbName:_0x1360c3}=await resolveDbSelection(_0x3b2a39),_0x2998b7=await resolveSqlModeInput(_0x3b2a39);return{'sqlName':_0x4cb9fa,'dbId':_0x4a058d,'dbName':_0x1360c3,'mode':_0x2998b7};}async function resolveSqlNameInput(_0x21d4a6){const _0x51c822=a132_0x3a0033,_0x3f2bdb=_0x21d4a6[_0x51c822(0x17c)](_0x51c822(0x16d))[_0x51c822(0x174)]();if(_0x3f2bdb)return _0x3f2bdb;if(_0x21d4a6[_0x51c822(0x14f)])throw CliErrors[_0x51c822(0x143)](_0x51c822(0x16d),_0x51c822(0x156));return(await input({'message':_0x51c822(0x14a),'validate':_0x10347b=>_0x10347b[_0x51c822(0x174)]()?!![]:_0x51c822(0x170)}))[_0x51c822(0x174)]();}async function resolveDbSelection(_0x1fc99c){const _0x13b43b=a132_0x3a0033,_0x1d3976=resolveProvidedDbId(_0x1fc99c);if(typeof _0x1d3976===_0x13b43b(0x17b)&&Number[_0x13b43b(0x154)](_0x1d3976)&&_0x1d3976>0x0)return{'dbId':_0x1d3976,'dbName':await getDbName(_0x1fc99c[_0x13b43b(0x168)],_0x1d3976)[_0x13b43b(0x144)](()=>undefined)};if(_0x1fc99c[_0x13b43b(0x14f)])throw CliErrors[_0x13b43b(0x143)](_0x13b43b(0x161),_0x13b43b(0x17a));const _0x2ca411=await listDatabases(_0x1fc99c['appCode'])[_0x13b43b(0x144)](()=>[]);if(_0x2ca411[_0x13b43b(0x169)]===0x1)return{'dbId':_0x2ca411[0x0]['dbId'],'dbName':_0x2ca411[0x0][_0x13b43b(0x17e)]};if(_0x2ca411[_0x13b43b(0x169)]>0x1){const _0x349db2=await select({'message':_0x13b43b(0x157),'choices':[..._0x2ca411[_0x13b43b(0x15f)](_0x21c4b6=>({'name':_0x21c4b6[_0x13b43b(0x17e)]+'\x20('+_0x21c4b6['dbId']+')','value':serializeDbSelection(_0x21c4b6)})),{'name':'✎\x20手动输入\x20dbId','value':_0x13b43b(0x159)}]});if(_0x349db2!==_0x13b43b(0x159))return deserializeDbSelection(_0x349db2);}const _0x4d5ffe=await input({'message':_0x13b43b(0x15e),'validate':_0x4bcfe3=>{const _0x146ff6=_0x13b43b,_0x349072=_0x4bcfe3[_0x146ff6(0x174)]();if(!_0x349072)return _0x146ff6(0x165);const _0x12bb18=Number(_0x349072);if(!Number[_0x146ff6(0x13d)](_0x12bb18)||_0x12bb18<=0x0)return _0x146ff6(0x16e);return!![];}});return{'dbId':Number(_0x4d5ffe[_0x13b43b(0x174)]())};}async function resolveSqlModeInput(_0x927e5d){const _0x462657=a132_0x3a0033,_0x24f751=_0x927e5d[_0x462657(0x17c)]('mode')[_0x462657(0x174)]();if(_0x24f751===_0x462657(0x158)||_0x24f751==='mybatisXml')return _0x24f751;if(_0x927e5d[_0x462657(0x14f)])throw CliErrors['flagMissing'](_0x462657(0x176),_0x462657(0x14e));return await select({'message':'请选择本地\x20SQL\x20模式:','choices':[{'name':_0x462657(0x14d),'value':_0x462657(0x158),'description':'适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句'},{'name':_0x462657(0x15c),'value':'mybatisXml','description':_0x462657(0x14b)}]});}function serializeDbSelection(_0x4ddd3d){const _0x4f7ecf=a132_0x3a0033;return JSON[_0x4f7ecf(0x15d)]({'dbId':_0x4ddd3d[_0x4f7ecf(0x15b)],'dbName':_0x4ddd3d[_0x4f7ecf(0x17e)]});}function a132_0x31a0(_0x28914c,_0x45e959){_0x28914c=_0x28914c-0x13c;const _0x3e5161=a132_0x3e51();let _0x31a062=_0x3e5161[_0x28914c];return _0x31a062;}function deserializeDbSelection(_0x145683){const _0x4ab50e=a132_0x3a0033;try{const _0x1575a5=JSON[_0x4ab50e(0x146)](_0x145683);if(typeof _0x1575a5[_0x4ab50e(0x15b)]===_0x4ab50e(0x17b)&&Number[_0x4ab50e(0x154)](_0x1575a5[_0x4ab50e(0x15b)]))return{'dbId':_0x1575a5[_0x4ab50e(0x15b)],'dbName':_0x1575a5[_0x4ab50e(0x17e)]};}catch{}throw CliErrors[_0x4ab50e(0x13e)]('Invalid\x20database\x20selection\x20payload:\x20'+_0x145683);}function resolveProvidedDbId(_0x42893b){const _0x100bf6=a132_0x3a0033,_0x39504f=_0x42893b[_0x100bf6(0x16c)]('db-id');if(typeof _0x39504f===_0x100bf6(0x17b)&&Number[_0x100bf6(0x154)](_0x39504f))return _0x39504f;return undefined;}
1
+ const a132_0x2bce6c=a132_0x2995;(function(_0x3086eb,_0x33ce17){const _0x49d2f9=a132_0x2995,_0x2e7f58=_0x3086eb();while(!![]){try{const _0x393177=parseInt(_0x49d2f9(0x86))/0x1+parseInt(_0x49d2f9(0x99))/0x2+-parseInt(_0x49d2f9(0x98))/0x3+-parseInt(_0x49d2f9(0x91))/0x4*(parseInt(_0x49d2f9(0x9a))/0x5)+parseInt(_0x49d2f9(0xa4))/0x6*(-parseInt(_0x49d2f9(0x8f))/0x7)+parseInt(_0x49d2f9(0x84))/0x8*(-parseInt(_0x49d2f9(0xa2))/0x9)+parseInt(_0x49d2f9(0x7e))/0xa*(parseInt(_0x49d2f9(0x81))/0xb);if(_0x393177===_0x33ce17)break;else _0x2e7f58['push'](_0x2e7f58['shift']());}catch(_0x526df2){_0x2e7f58['push'](_0x2e7f58['shift']());}}}(a132_0x2681,0xc4e4f));import{writeFile}from'node:fs/promises';function a132_0x2995(_0x57efc6,_0x53b458){_0x57efc6=_0x57efc6-0x7b;const _0x2681b1=a132_0x2681();let _0x2995ea=_0x2681b1[_0x57efc6];return _0x2995ea;}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';function a132_0x2681(){const _0x5d6876=['84uLDmdG','trim','parse','lockFilePath','lastSync','POST','create','Target\x20database\x20ID','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','sqlRootDir','<server-generated-sqlCode>','new','Created\x20SQL\x20query\x20','name','mybatisXml','nonInteractive','sql','File\x20already\x20exists:\x20','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','SQL\x20名称不能为空','str','请选择本地\x20SQL\x20模式:','mode','__manual__','number','请输入目标数据库\x20dbId:','join','isInteger','5504470NMmPjK','toISOString','db-id','66arRUfN','description','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','526696JrGKVO','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','20409YeigqY','/smartapi/custom/saveUserCustomSql','普通\x20SQL(sql)','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','length','isFinite','sqlCode','dbName','flag','325073TolMnZ','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','1699856YdIXPz','✎\x20手动输入\x20dbId','SQL\x20query\x20display\x20name','</select>','dbId','sqlName','请选择目标数据库:','3972258zccXHy','2985228camKVK','10slEpzH','appCode','validation','sqlRoot','flagMissing','dbId\x20不能为空','stringify','sqls','162BXpSvL','catch'];a132_0x2681=function(){return _0x5d6876;};return a132_0x2681();}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(_0x3fc95d){const _0x2c8e51=a132_0x2995;if(_0x3fc95d===_0x2c8e51(0xb2))return['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','\x20\x20SELECT\x201\x20AS\x20id',_0x2c8e51(0x94),''][_0x2c8e51(0x7c)]('\x0a');return['SELECT\x201\x20AS\x20id;',''][_0x2c8e51(0x7c)]('\x0a');}export const sqlCreate={'service':a132_0x2bce6c(0xb4),'command':a132_0x2bce6c(0xaa),'description':a132_0x2bce6c(0xac),'risk':'high-risk-write','flags':[{'name':a132_0x2bce6c(0xb1),'type':'string','description':a132_0x2bce6c(0x93)},{'name':'db-id','type':'number','description':a132_0x2bce6c(0xab)},{'name':'mode','type':'string','enum':[a132_0x2bce6c(0xb4),a132_0x2bce6c(0xb2)],'description':'Local\x20SQL\x20file\x20mode'}],async 'validate'(_0x48024d){const _0x420860=a132_0x2bce6c;if(!_0x48024d[_0x420860(0xb3)])return;if(!_0x48024d[_0x420860(0xb8)]('name')[_0x420860(0xa5)]())throw CliErrors['flagMissing'](_0x420860(0xb1),_0x420860(0x83));const _0x2874f6=resolveProvidedDbId(_0x48024d);if(typeof _0x2874f6!==_0x420860(0xbc)||!Number[_0x420860(0x8b)](_0x2874f6)||_0x2874f6<=0x0)throw CliErrors['flagMissing'](_0x420860(0x80),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');if(!_0x48024d[_0x420860(0xb8)]('mode')['trim']())throw CliErrors['flagMissing'](_0x420860(0xba),_0x420860(0x89));},async 'dryRun'(_0x32ff1f){const _0x31b292=a132_0x2bce6c,_0x454746=loadSqlProjectConfig(_0x32ff1f[_0x31b292(0x9b)]),{sqlName:_0x237222,dbId:_0x19fad2,dbName:_0x2018e6,mode:_0x562b9a}=await resolveSqlNewInputs(_0x32ff1f),_0x54e562=buildSqlRelativePath(_0x31b292(0xae),_0x237222,_0x2018e6,_0x562b9a,_0x19fad2),_0x58e1d7=_0x454746[_0x31b292(0xad)]+'/'+_0x54e562;return{'method':_0x31b292(0xa9),'url':_0x31b292(0x87),'body':{'appCode':_0x32ff1f['appCode'],'sqlName':_0x237222,'dbId':_0x19fad2,'mode':_0x562b9a,'localPath':_0x58e1d7},'description':_0x31b292(0xb6)+_0x454746['sqlRootDir']};},async 'execute'(_0x360d25){const _0x3a6ec3=a132_0x2bce6c,_0x1ce8a6=loadSqlProjectConfig(_0x360d25['appCode']),{sqlName:_0x11c354,dbId:_0x54d02a,dbName:_0x549354,mode:_0x143eba}=await resolveSqlNewInputs(_0x360d25),_0xc6c16f=generateSqlTemplate(_0x143eba),_0x3ad07e=await createSqlQuery({'appCode':_0x360d25[_0x3a6ec3(0x9b)],'sqlName':_0x11c354,'dbId':_0x54d02a,'sqlContent':_0xc6c16f}),_0x74ca90=ensureRemoteSqlContent(_0x3ad07e),_0x44c88d=_0x549354||await getDbName(_0x360d25[_0x3a6ec3(0x9b)],_0x54d02a)[_0x3a6ec3(0xa3)](()=>undefined),_0x1d8a3c=buildSqlRelativePath(_0x3ad07e[_0x3a6ec3(0x8c)],_0x3ad07e[_0x3a6ec3(0x96)],_0x44c88d,_0x143eba,_0x54d02a),_0x4ca0cc=_0x1ce8a6[_0x3a6ec3(0xad)]+'/'+_0x1d8a3c,_0x2e192e=buildLocalSqlFileContent({'sqlCode':_0x3ad07e[_0x3a6ec3(0x8c)],'sqlName':_0x3ad07e[_0x3a6ec3(0x96)],'dbId':_0x3ad07e[_0x3a6ec3(0x95)]},_0x74ca90,{'dbName':_0x44c88d,'mode':_0x143eba,'syncedAt':new Date()[_0x3a6ec3(0x7f)](),'description':_0x3ad07e[_0x3a6ec3(0x82)]});if(await fileExists(_0x4ca0cc))throw CliErrors[_0x3a6ec3(0x9c)](_0x3a6ec3(0xb5)+_0x4ca0cc);await ensureParentDirectory(_0x4ca0cc),await writeFile(_0x4ca0cc,_0x2e192e,'utf8');const _0x3d3c6b=await readSqlLockFile(_0x1ce8a6[_0x3a6ec3(0xa7)]),{lockData:_0x5e4e80,appLock:_0x3465b2}=ensureSqlLockScope(_0x3d3c6b??createEmptySqlLock(),_0x1ce8a6['appCode'],_0x1ce8a6[_0x3a6ec3(0x9d)],_0x3a6ec3(0xaf));return _0x3465b2[_0x3a6ec3(0xa1)][_0x3ad07e[_0x3a6ec3(0x8c)]]={...buildSqlLockEntry(_0x3ad07e,_0x74ca90,computeSqlContentHash(_0x2e192e),{'dbName':_0x44c88d}),'path':_0x1d8a3c,'mode':_0x143eba},_0x3465b2[_0x3a6ec3(0xa8)]=new Date()['toISOString'](),await writeSqlLockFile(_0x1ce8a6[_0x3a6ec3(0xa7)],_0x5e4e80),{'ok':!![],'data':{'id':_0x3ad07e['id'],'sqlCode':_0x3ad07e['sqlCode'],'sqlName':_0x3ad07e[_0x3a6ec3(0x96)],'dbId':_0x3ad07e[_0x3a6ec3(0x95)],'path':_0x4ca0cc,'mode':_0x143eba},'message':_0x3a6ec3(0xb0)+_0x3ad07e['sqlCode']};}};async function resolveSqlNewInputs(_0xc1f6b8){const _0x370dd7=await resolveSqlNameInput(_0xc1f6b8),{dbId:_0x186317,dbName:_0x22cdea}=await resolveDbSelection(_0xc1f6b8),_0x5b6c81=await resolveSqlModeInput(_0xc1f6b8);return{'sqlName':_0x370dd7,'dbId':_0x186317,'dbName':_0x22cdea,'mode':_0x5b6c81};}async function resolveSqlNameInput(_0x5666a7){const _0x4aa1db=a132_0x2bce6c,_0x92a8eb=_0x5666a7['str'](_0x4aa1db(0xb1))[_0x4aa1db(0xa5)]();if(_0x92a8eb)return _0x92a8eb;if(_0x5666a7[_0x4aa1db(0xb3)])throw CliErrors[_0x4aa1db(0x9e)](_0x4aa1db(0xb1),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');return(await input({'message':'请输入\x20SQL\x20名称:','validate':_0x4d44a3=>_0x4d44a3[_0x4aa1db(0xa5)]()?!![]:_0x4aa1db(0xb7)}))[_0x4aa1db(0xa5)]();}async function resolveDbSelection(_0x59089a){const _0x4972a9=a132_0x2bce6c,_0x4ad7c2=resolveProvidedDbId(_0x59089a);if(typeof _0x4ad7c2===_0x4972a9(0xbc)&&Number[_0x4972a9(0x8b)](_0x4ad7c2)&&_0x4ad7c2>0x0)return{'dbId':_0x4ad7c2,'dbName':await getDbName(_0x59089a[_0x4972a9(0x9b)],_0x4ad7c2)[_0x4972a9(0xa3)](()=>undefined)};if(_0x59089a[_0x4972a9(0xb3)])throw CliErrors[_0x4972a9(0x9e)]('db-id',_0x4972a9(0x90));const _0x11565a=await listDatabases(_0x59089a['appCode'])[_0x4972a9(0xa3)](()=>[]);if(_0x11565a['length']===0x1)return{'dbId':_0x11565a[0x0][_0x4972a9(0x95)],'dbName':_0x11565a[0x0][_0x4972a9(0x8d)]};if(_0x11565a[_0x4972a9(0x8a)]>0x1){const _0x465653=await select({'message':_0x4972a9(0x97),'choices':[..._0x11565a['map'](_0x1b7547=>({'name':_0x1b7547[_0x4972a9(0x8d)]+'\x20('+_0x1b7547[_0x4972a9(0x95)]+')','value':serializeDbSelection(_0x1b7547)})),{'name':_0x4972a9(0x92),'value':_0x4972a9(0xbb)}]});if(_0x465653!==_0x4972a9(0xbb))return deserializeDbSelection(_0x465653);}const _0x54b7d8=await input({'message':_0x4972a9(0x7b),'validate':_0x2a9110=>{const _0x1c4933=_0x4972a9,_0x27559c=_0x2a9110[_0x1c4933(0xa5)]();if(!_0x27559c)return _0x1c4933(0x9f);const _0x398dbc=Number(_0x27559c);if(!Number[_0x1c4933(0x7d)](_0x398dbc)||_0x398dbc<=0x0)return'dbId\x20必须为正整数';return!![];}});return{'dbId':Number(_0x54b7d8[_0x4972a9(0xa5)]())};}async function resolveSqlModeInput(_0x1ddb90){const _0x18412a=a132_0x2bce6c,_0x48f238=_0x1ddb90[_0x18412a(0xb8)](_0x18412a(0xba))['trim']();if(_0x48f238===_0x18412a(0xb4)||_0x48f238===_0x18412a(0xb2))return _0x48f238;if(_0x1ddb90[_0x18412a(0xb3)])throw CliErrors['flagMissing'](_0x18412a(0xba),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');return await select({'message':_0x18412a(0xb9),'choices':[{'name':_0x18412a(0x88),'value':_0x18412a(0xb4),'description':_0x18412a(0x85)},{'name':'MyBatis\x20XML(mybatisXml)','value':_0x18412a(0xb2),'description':'适合带动态标签的\x20MyBatis\x20XML\x20SQL'}]});}function serializeDbSelection(_0x15afd3){const _0x150622=a132_0x2bce6c;return JSON[_0x150622(0xa0)]({'dbId':_0x15afd3[_0x150622(0x95)],'dbName':_0x15afd3['dbName']});}function deserializeDbSelection(_0x1990a4){const _0xb04d3d=a132_0x2bce6c;try{const _0x790aae=JSON[_0xb04d3d(0xa6)](_0x1990a4);if(typeof _0x790aae['dbId']===_0xb04d3d(0xbc)&&Number[_0xb04d3d(0x8b)](_0x790aae[_0xb04d3d(0x95)]))return{'dbId':_0x790aae[_0xb04d3d(0x95)],'dbName':_0x790aae[_0xb04d3d(0x8d)]};}catch{}throw CliErrors[_0xb04d3d(0x9c)]('Invalid\x20database\x20selection\x20payload:\x20'+_0x1990a4);}function resolveProvidedDbId(_0x2216e0){const _0x37758b=a132_0x2bce6c,_0x3e0b14=_0x2216e0[_0x37758b(0x8e)]('db-id');if(typeof _0x3e0b14===_0x37758b(0xbc)&&Number[_0x37758b(0x8b)](_0x3e0b14))return _0x3e0b14;return undefined;}
@@ -1 +1 @@
1
- const a133_0x56882e=a133_0xa72a;(function(_0x53cd79,_0x7970b6){const _0x1450aa=a133_0xa72a,_0x33d404=_0x53cd79();while(!![]){try{const _0x112ef0=parseInt(_0x1450aa(0x148))/0x1+parseInt(_0x1450aa(0x139))/0x2*(-parseInt(_0x1450aa(0x141))/0x3)+-parseInt(_0x1450aa(0x129))/0x4+-parseInt(_0x1450aa(0x13d))/0x5+-parseInt(_0x1450aa(0x133))/0x6*(-parseInt(_0x1450aa(0x130))/0x7)+parseInt(_0x1450aa(0x143))/0x8*(parseInt(_0x1450aa(0x137))/0x9)+-parseInt(_0x1450aa(0x12f))/0xa;if(_0x112ef0===_0x7970b6)break;else _0x33d404['push'](_0x33d404['shift']());}catch(_0x262e6d){_0x33d404['push'](_0x33d404['shift']());}}}(a133_0x3f47,0x3e963));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{fileExists}from'../../core/bff/file-system.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';function a133_0xa72a(_0xda1785,_0xa75cca){_0xda1785=_0xda1785-0x129;const _0x3f47f9=a133_0x3f47();let _0xa72af9=_0x3f47f9[_0xda1785];return _0xa72af9;}import{ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDelete={'service':a133_0x56882e(0x14a),'command':'delete','description':'Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','risk':'high-risk-write','flags':[SQLCODE_FLAG],async 'validate'(_0x9cdae1){const _0x6c956f=a133_0x56882e,_0x1e4dca=loadSqlProjectConfig(_0x9cdae1[_0x6c956f(0x131)]),_0x24f549=await readSqlLockFile(_0x1e4dca[_0x6c956f(0x12a)]);if(!_0x24f549)throw CliErrors[_0x6c956f(0x147)](_0x6c956f(0x149));},async 'dryRun'(_0x47c62b){const _0x15311c=a133_0x56882e,_0xd0dadd=loadSqlProjectConfig(_0x47c62b[_0x15311c(0x131)]),_0x382042=await readSqlLockFile(_0xd0dadd[_0x15311c(0x12a)]);if(!_0x382042)throw CliErrors[_0x15311c(0x147)](_0x15311c(0x149));const {appLock:_0x1ffdf9}=ensureSqlLockScope(_0x382042,_0x47c62b[_0x15311c(0x131)],_0xd0dadd[_0x15311c(0x144)],_0x15311c(0x13f)),_0x37a933=_0x47c62b[_0x15311c(0x135)](_0x15311c(0x12b)),_0xcfcb1b=_0x1ffdf9['sqls'][_0x37a933];if(!_0xcfcb1b)throw CliErrors['validation'](_0x15311c(0x14b)+_0x37a933+'\x22.');return{'method':'POST','url':_0x15311c(0x13e),'body':{'sqlCode':_0x37a933,'id':_0xcfcb1b[_0x15311c(0x134)],'localPath':resolveLocalSqlFilePath(_0xd0dadd,_0x37a933,_0xcfcb1b)},'description':_0x15311c(0x13a)+_0x37a933+_0x15311c(0x132)+_0xd0dadd[_0x15311c(0x142)]};},async 'execute'(_0x45e855){const _0x1bafdc=a133_0x56882e,_0x320407=loadSqlProjectConfig(_0x45e855['appCode']),_0x186f8d=await readSqlLockFile(_0x320407[_0x1bafdc(0x12a)]);if(!_0x186f8d)throw CliErrors[_0x1bafdc(0x147)]('SQL\x20lock\x20file\x20not\x20found.');const {lockData:_0x39324a,appLock:_0x190d66}=ensureSqlLockScope(_0x186f8d,_0x45e855[_0x1bafdc(0x131)],_0x320407[_0x1bafdc(0x144)],_0x1bafdc(0x13f)),_0x5ea9f8=_0x45e855[_0x1bafdc(0x135)]('sqlcode'),_0x352190=_0x190d66[_0x1bafdc(0x12d)][_0x5ea9f8];if(!_0x352190)throw CliErrors[_0x1bafdc(0x147)]('No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22'+_0x5ea9f8+'\x22.');await deleteSqlQuery({'id':_0x352190['remoteId'],'sqlCode':_0x5ea9f8}),_0x190d66[_0x1bafdc(0x12d)]=Object[_0x1bafdc(0x13b)](Object[_0x1bafdc(0x14c)](_0x190d66[_0x1bafdc(0x12d)])['filter'](([_0x46468c])=>_0x46468c!==_0x5ea9f8)),_0x190d66[_0x1bafdc(0x12c)]=new Date()[_0x1bafdc(0x145)](),await writeSqlLockFile(_0x320407[_0x1bafdc(0x12a)],_0x39324a);const _0x3da6b0=resolveLocalSqlFilePath(_0x320407,_0x5ea9f8,_0x352190);let _0xac9eea;await fileExists(_0x3da6b0)&&(_0xac9eea=await moveToTrash(_0x320407[_0x1bafdc(0x13c)],_0x320407[_0x1bafdc(0x142)],_0x3da6b0),await cleanupEmptyDirectories(dirname(_0x3da6b0),_0x320407[_0x1bafdc(0x146)]));const _0x2ba89d={'deleted':_0x5ea9f8,'remoteId':_0x352190[_0x1bafdc(0x134)]};if(_0xac9eea)_0x2ba89d[_0x1bafdc(0x12e)]=_0xac9eea;return{'ok':!![],'data':_0x2ba89d,'message':_0x1bafdc(0x136)+_0x5ea9f8+(_0xac9eea?_0x1bafdc(0x14d):'')};}};function a133_0x3f47(){const _0x9009bd=['sqlRoot','toISOString','sqlRootDir','validation','394720ilqroQ','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','sql','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','entries','\x20(local\x20file\x20moved\x20to\x20trash)','530392MGjTJA','lockFilePath','sqlcode','lastSync','sqls','trashedTo','1673980ewUSeo','973MwoFmX','appCode','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','9588TreHPQ','remoteId','str','Deleted\x20','9RmPJTx','startsWith','134908TwWtzT','Would\x20delete\x20SQL\x20','fromEntries','projectRoot','950780qjPSfD','/smartapi/custom/deleteUserCustomSql','delete','replace','3BwlTrd','trashDir','1576952qYtwQK'];a133_0x3f47=function(){return _0x9009bd;};return a133_0x3f47();}async function moveToTrash(_0x4bf1f0,_0x3f1ba3,_0x535b97){const _0x3265af=a133_0x56882e,_0x29e413=new Date()[_0x3265af(0x145)]()[_0x3265af(0x140)](/[:.]/g,'-'),_0x1ca5ee=relative(_0x4bf1f0,_0x535b97),_0x142219=join(_0x3f1ba3,_0x29e413,_0x1ca5ee);return await mkdir(dirname(_0x142219),{'recursive':!![]}),await rename(_0x535b97,_0x142219),_0x142219;}async function cleanupEmptyDirectories(_0x271fbf,_0xc56607){const _0x1b4992=a133_0x56882e;let _0xc4eda2=resolve(_0x271fbf);const _0x1e227b=resolve(_0xc56607);while(_0xc4eda2[_0x1b4992(0x138)](''+_0x1e227b+sep)||_0xc4eda2===_0x1e227b){if(_0xc4eda2===_0x1e227b)return;try{const _0xbaa3af=await readdir(_0xc4eda2);if(_0xbaa3af['length']>0x0)return;await rmdir(_0xc4eda2);}catch{return;}_0xc4eda2=dirname(_0xc4eda2);}}
1
+ const a133_0x32c855=a133_0x5ead;(function(_0x20dbf1,_0x49e452){const _0x555646=a133_0x5ead,_0xc58086=_0x20dbf1();while(!![]){try{const _0x4fd0f9=parseInt(_0x555646(0xd2))/0x1*(parseInt(_0x555646(0xbd))/0x2)+parseInt(_0x555646(0xb8))/0x3+-parseInt(_0x555646(0xc6))/0x4+parseInt(_0x555646(0xdc))/0x5*(-parseInt(_0x555646(0xc7))/0x6)+-parseInt(_0x555646(0xb9))/0x7*(parseInt(_0x555646(0xbb))/0x8)+parseInt(_0x555646(0xd4))/0x9+parseInt(_0x555646(0xcc))/0xa;if(_0x4fd0f9===_0x49e452)break;else _0xc58086['push'](_0xc58086['shift']());}catch(_0x27b5ee){_0xc58086['push'](_0xc58086['shift']());}}}(a133_0xf7a4,0xa5d9e));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';function a133_0xf7a4(){const _0x1dd9e3=['Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','10600191fhAjas','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','high-risk-write','delete','\x20(local\x20file\x20moved\x20to\x20trash)','lockFilePath','SQL\x20lock\x20file\x20not\x20found.','replace','5FPssjD','2236611riDAHp','227297cChbMq','lastSync','264DLICXP','trashedTo','34184WBCpzw','Deleted\x20','trashDir','filter','Would\x20delete\x20SQL\x20','toISOString','sqlcode','remoteId','projectRoot','1670204AKGIeF','6898458wPEAeO','sqlRoot','/smartapi/custom/deleteUserCustomSql','entries','validation','13777350LFfZOX','sqls','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','POST','appCode','fromEntries','1vcjHay'];a133_0xf7a4=function(){return _0x1dd9e3;};return a133_0xf7a4();}function a133_0x5ead(_0x4468ba,_0x2e48a6){_0x4468ba=_0x4468ba-0xb8;const _0xf7a4da=a133_0xf7a4();let _0x5ead9=_0xf7a4da[_0x4468ba];return _0x5ead9;}import{dirname,join,relative,resolve,sep}from'node:path';import{deleteSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{fileExists}from'../../core/bff/file-system.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDelete={'service':'sql','command':a133_0x32c855(0xd7),'description':a133_0x32c855(0xd3),'risk':a133_0x32c855(0xd6),'flags':[SQLCODE_FLAG],async 'validate'(_0x2e9035){const _0x19409d=a133_0x32c855,_0x59b968=loadSqlProjectConfig(_0x2e9035['appCode']),_0xe6af1c=await readSqlLockFile(_0x59b968[_0x19409d(0xd9)]);if(!_0xe6af1c)throw CliErrors[_0x19409d(0xcb)](_0x19409d(0xd5));},async 'dryRun'(_0x35ee81){const _0x5dae40=a133_0x32c855,_0x439041=loadSqlProjectConfig(_0x35ee81['appCode']),_0x48db34=await readSqlLockFile(_0x439041[_0x5dae40(0xd9)]);if(!_0x48db34)throw CliErrors[_0x5dae40(0xcb)](_0x5dae40(0xd5));const {appLock:_0x2b7078}=ensureSqlLockScope(_0x48db34,_0x35ee81['appCode'],_0x439041[_0x5dae40(0xc8)],_0x5dae40(0xd7)),_0x25919d=_0x35ee81['str'](_0x5dae40(0xc3)),_0x5bdc8a=_0x2b7078[_0x5dae40(0xcd)][_0x25919d];if(!_0x5bdc8a)throw CliErrors[_0x5dae40(0xcb)](_0x5dae40(0xce)+_0x25919d+'\x22.');return{'method':_0x5dae40(0xcf),'url':_0x5dae40(0xc9),'body':{'sqlCode':_0x25919d,'id':_0x5bdc8a[_0x5dae40(0xc4)],'localPath':resolveLocalSqlFilePath(_0x439041,_0x25919d,_0x5bdc8a)},'description':_0x5dae40(0xc1)+_0x25919d+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20'+_0x439041[_0x5dae40(0xbf)]};},async 'execute'(_0x5e9276){const _0xa8b9d6=a133_0x32c855,_0x3598fe=loadSqlProjectConfig(_0x5e9276[_0xa8b9d6(0xd0)]),_0x333b32=await readSqlLockFile(_0x3598fe['lockFilePath']);if(!_0x333b32)throw CliErrors[_0xa8b9d6(0xcb)](_0xa8b9d6(0xda));const {lockData:_0x5d57ec,appLock:_0x4538cb}=ensureSqlLockScope(_0x333b32,_0x5e9276['appCode'],_0x3598fe[_0xa8b9d6(0xc8)],'delete'),_0x2ac37c=_0x5e9276['str'](_0xa8b9d6(0xc3)),_0x9c5be4=_0x4538cb[_0xa8b9d6(0xcd)][_0x2ac37c];if(!_0x9c5be4)throw CliErrors[_0xa8b9d6(0xcb)]('No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22'+_0x2ac37c+'\x22.');await deleteSqlQuery({'id':_0x9c5be4['remoteId'],'sqlCode':_0x2ac37c}),_0x4538cb[_0xa8b9d6(0xcd)]=Object[_0xa8b9d6(0xd1)](Object[_0xa8b9d6(0xca)](_0x4538cb[_0xa8b9d6(0xcd)])[_0xa8b9d6(0xc0)](([_0x587684])=>_0x587684!==_0x2ac37c)),_0x4538cb[_0xa8b9d6(0xba)]=new Date()['toISOString'](),await writeSqlLockFile(_0x3598fe[_0xa8b9d6(0xd9)],_0x5d57ec);const _0x7bdc64=resolveLocalSqlFilePath(_0x3598fe,_0x2ac37c,_0x9c5be4);let _0x199ed7;await fileExists(_0x7bdc64)&&(_0x199ed7=await moveToTrash(_0x3598fe[_0xa8b9d6(0xc5)],_0x3598fe[_0xa8b9d6(0xbf)],_0x7bdc64),await cleanupEmptyDirectories(dirname(_0x7bdc64),_0x3598fe['sqlRootDir']));const _0x4f35a6={'deleted':_0x2ac37c,'remoteId':_0x9c5be4[_0xa8b9d6(0xc4)]};if(_0x199ed7)_0x4f35a6[_0xa8b9d6(0xbc)]=_0x199ed7;return{'ok':!![],'data':_0x4f35a6,'message':_0xa8b9d6(0xbe)+_0x2ac37c+(_0x199ed7?_0xa8b9d6(0xd8):'')};}};async function moveToTrash(_0x37674b,_0x332048,_0x4a46d2){const _0xf0b2e8=a133_0x32c855,_0x57c1ec=new Date()[_0xf0b2e8(0xc2)]()[_0xf0b2e8(0xdb)](/[:.]/g,'-'),_0x592257=relative(_0x37674b,_0x4a46d2),_0x4a4c98=join(_0x332048,_0x57c1ec,_0x592257);return await mkdir(dirname(_0x4a4c98),{'recursive':!![]}),await rename(_0x4a46d2,_0x4a4c98),_0x4a4c98;}async function cleanupEmptyDirectories(_0x173462,_0x509337){let _0xf1c3c8=resolve(_0x173462);const _0x75bf55=resolve(_0x509337);while(_0xf1c3c8['startsWith'](''+_0x75bf55+sep)||_0xf1c3c8===_0x75bf55){if(_0xf1c3c8===_0x75bf55)return;try{const _0x1a5169=await readdir(_0xf1c3c8);if(_0x1a5169['length']>0x0)return;await rmdir(_0xf1c3c8);}catch{return;}_0xf1c3c8=dirname(_0xf1c3c8);}}
@@ -1 +1 @@
1
- const a134_0x1a8a02=a134_0x59b2;function a134_0x59b2(_0x51963f,_0x420207){_0x51963f=_0x51963f-0x15a;const _0x2f0137=a134_0x2f01();let _0x59b251=_0x2f0137[_0x51963f];return _0x59b251;}(function(_0x44ac12,_0x5e65b7){const _0x4cd0b8=a134_0x59b2,_0x1a9a28=_0x44ac12();while(!![]){try{const _0x3fb6e3=parseInt(_0x4cd0b8(0x16e))/0x1*(parseInt(_0x4cd0b8(0x15b))/0x2)+parseInt(_0x4cd0b8(0x166))/0x3*(parseInt(_0x4cd0b8(0x15e))/0x4)+parseInt(_0x4cd0b8(0x16c))/0x5*(parseInt(_0x4cd0b8(0x169))/0x6)+parseInt(_0x4cd0b8(0x171))/0x7*(parseInt(_0x4cd0b8(0x168))/0x8)+-parseInt(_0x4cd0b8(0x160))/0x9*(parseInt(_0x4cd0b8(0x170))/0xa)+-parseInt(_0x4cd0b8(0x15f))/0xb*(parseInt(_0x4cd0b8(0x165))/0xc)+-parseInt(_0x4cd0b8(0x16f))/0xd;if(_0x3fb6e3===_0x5e65b7)break;else _0x1a9a28['push'](_0x1a9a28['shift']());}catch(_0x1846ba){_0x1a9a28['push'](_0x1a9a28['shift']());}}}(a134_0x2f01,0xa9505));function a134_0x2f01(){const _0x3ff605=['Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','7300168OxldGV','156126tVSqQO','dbId','sql','15MgjMMW','str','2949lkEljh','10999287zuqxYG','28240jQhAWW','7GbNTQX','appCode','446HJqkON','detail','verbose','253404LXqGWn','10021EsEarx','2142CPcEgv','boolean','sqlContent','description','Return\x20full\x20raw\x20SQL\x20query\x20object','4260tHPBFi','42bhTVwH'];a134_0x2f01=function(){return _0x3ff605;};return a134_0x2f01();}import{getSqlQueryInfo}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDetail={'service':a134_0x1a8a02(0x16b),'command':a134_0x1a8a02(0x15c),'description':a134_0x1a8a02(0x167),'risk':'read','flags':[SQLCODE_FLAG,{'name':a134_0x1a8a02(0x15d),'type':a134_0x1a8a02(0x161),'description':a134_0x1a8a02(0x164)}],async 'execute'(_0x4370f7){const _0x5a1dfc=a134_0x1a8a02,_0x54f45b=await getSqlQueryInfo(_0x4370f7[_0x5a1dfc(0x15a)],_0x4370f7[_0x5a1dfc(0x16d)]('sqlcode')),_0x1b6971=_0x4370f7['bool'](_0x5a1dfc(0x15d));if(_0x1b6971)return{'ok':!![],'data':_0x54f45b};const _0x1bca26=_0x54f45b['dbId']?await getDbName(_0x4370f7[_0x5a1dfc(0x15a)],_0x54f45b['dbId']):undefined;return{'ok':!![],'data':{'sqlCode':_0x54f45b['sqlCode'],'sqlName':_0x54f45b['sqlName'],'db':_0x1bca26?_0x1bca26+'\x20('+_0x54f45b[_0x5a1dfc(0x16a)]+')':_0x54f45b['dbId']??'','description':_0x54f45b[_0x5a1dfc(0x163)]??'','sqlContent':_0x54f45b[_0x5a1dfc(0x162)]??''}};}};
1
+ const a134_0x293d60=a134_0xa079;(function(_0x3f289b,_0xc80d81){const _0x5b3914=a134_0xa079,_0x36ebbb=_0x3f289b();while(!![]){try{const _0x2432b7=-parseInt(_0x5b3914(0x1f0))/0x1+parseInt(_0x5b3914(0x1f6))/0x2*(-parseInt(_0x5b3914(0x1ec))/0x3)+-parseInt(_0x5b3914(0x1ef))/0x4*(parseInt(_0x5b3914(0x1fe))/0x5)+-parseInt(_0x5b3914(0x203))/0x6*(parseInt(_0x5b3914(0x1f3))/0x7)+parseInt(_0x5b3914(0x202))/0x8+parseInt(_0x5b3914(0x1ee))/0x9*(parseInt(_0x5b3914(0x1fb))/0xa)+parseInt(_0x5b3914(0x1eb))/0xb*(parseInt(_0x5b3914(0x1ff))/0xc);if(_0x2432b7===_0xc80d81)break;else _0x36ebbb['push'](_0x36ebbb['shift']());}catch(_0x1ea3e3){_0x36ebbb['push'](_0x36ebbb['shift']());}}}(a134_0x4164,0x24bcd));import{getSqlQueryInfo}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';function a134_0xa079(_0x1ccd51,_0x29ab5e){_0x1ccd51=_0x1ccd51-0x1eb;const _0x41644b=a134_0x4164();let _0xa079f9=_0x41644b[_0x1ccd51];return _0xa079f9;}import{SQLCODE_FLAG}from'../../commands/common/flags.js';function a134_0x4164(){const _0x2f1b08=['appCode','bool','1112536CDdYgy','6ESNILh','102916fXpgFs','171SNaKsX','dbId','369EyJMdv','324nNpNpp','196348SAeIFw','sqlName','detail','1022154TUPUQA','str','description','1486PoJIIF','sqlContent','boolean','read','sqlCode','6080TXkygj','verbose','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','765qNdayJ','492Lnptdk'];a134_0x4164=function(){return _0x2f1b08;};return a134_0x4164();}export const sqlDetail={'service':'sql','command':a134_0x293d60(0x1f2),'description':a134_0x293d60(0x1fd),'risk':a134_0x293d60(0x1f9),'flags':[SQLCODE_FLAG,{'name':'verbose','type':a134_0x293d60(0x1f8),'description':'Return\x20full\x20raw\x20SQL\x20query\x20object'}],async 'execute'(_0x1c66d0){const _0x18d61f=a134_0x293d60,_0x5b9b15=await getSqlQueryInfo(_0x1c66d0['appCode'],_0x1c66d0[_0x18d61f(0x1f4)]('sqlcode')),_0x267dc8=_0x1c66d0[_0x18d61f(0x201)](_0x18d61f(0x1fc));if(_0x267dc8)return{'ok':!![],'data':_0x5b9b15};const _0x1ec467=_0x5b9b15[_0x18d61f(0x1ed)]?await getDbName(_0x1c66d0[_0x18d61f(0x200)],_0x5b9b15[_0x18d61f(0x1ed)]):undefined;return{'ok':!![],'data':{'sqlCode':_0x5b9b15[_0x18d61f(0x1fa)],'sqlName':_0x5b9b15[_0x18d61f(0x1f1)],'db':_0x1ec467?_0x1ec467+'\x20('+_0x5b9b15[_0x18d61f(0x1ed)]+')':_0x5b9b15[_0x18d61f(0x1ed)]??'','description':_0x5b9b15[_0x18d61f(0x1f5)]??'','sqlContent':_0x5b9b15[_0x18d61f(0x1f7)]??''}};}};
@@ -1 +1 @@
1
- const a135_0x41b073=a135_0x2595;(function(_0x151849,_0x3eff81){const _0x3705a4=a135_0x2595,_0x513a80=_0x151849();while(!![]){try{const _0x266110=-parseInt(_0x3705a4(0xb2))/0x1*(parseInt(_0x3705a4(0xad))/0x2)+parseInt(_0x3705a4(0xb5))/0x3+parseInt(_0x3705a4(0xa5))/0x4*(-parseInt(_0x3705a4(0xae))/0x5)+-parseInt(_0x3705a4(0xa3))/0x6+parseInt(_0x3705a4(0xa9))/0x7*(parseInt(_0x3705a4(0xa4))/0x8)+-parseInt(_0x3705a4(0xa8))/0x9*(-parseInt(_0x3705a4(0xac))/0xa)+-parseInt(_0x3705a4(0xb9))/0xb*(-parseInt(_0x3705a4(0xa7))/0xc);if(_0x266110===_0x3eff81)break;else _0x513a80['push'](_0x513a80['shift']());}catch(_0x36a43d){_0x513a80['push'](_0x513a80['shift']());}}}(a135_0x4b43,0x5c5a3));function a135_0x4b43(){const _0x26369=['36JzMhms','9tctuwm','7tEryNS','exec','sql','6968690AdaNUO','230RzYXCT','20cJqDtx','SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)','length','Returned\x20','6332gQTMeq','execError','isArray','654417iHgdFd','execSuccess','execResult','string','2196326Ylvksq','params','sqlcode','str','now','SQL\x20execution\x20failed','read','748104LgUXKr','3560008vznOds','727868TVhsRf','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode'];a135_0x4b43=function(){return _0x26369;};return a135_0x4b43();}import{executeSql}from'../../core/api-client.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';function a135_0x2595(_0x45aec9,_0x417cc2){_0x45aec9=_0x45aec9-0xa1;const _0x4b432e=a135_0x4b43();let _0x2595dc=_0x4b432e[_0x45aec9];return _0x2595dc;}import{parseJsonParams}from'../../utils/params.js';export const sqlExec={'service':a135_0x41b073(0xab),'command':a135_0x41b073(0xaa),'description':a135_0x41b073(0xa6),'risk':a135_0x41b073(0xa2),'flags':[SQLCODE_FLAG,{'name':a135_0x41b073(0xba),'type':a135_0x41b073(0xb8),'description':a135_0x41b073(0xaf)}],async 'execute'(_0x420e34){const _0x4c0e79=a135_0x41b073,_0x152b23=parseJsonParams(_0x420e34[_0x4c0e79(0xbc)](_0x4c0e79(0xba))),_0x210987=Date[_0x4c0e79(0xbd)](),_0x440eca=await executeSql(_0x420e34['appCode'],_0x420e34['str'](_0x4c0e79(0xbb)),_0x152b23),_0x358333=Date['now']()-_0x210987,_0x28e335=_0x440eca?.[_0x4c0e79(0xb7)]??_0x440eca,_0x153daf=_0x440eca?.[_0x4c0e79(0xb6)]??!![];if(!_0x153daf)return{'ok':![],'data':{'error':_0x440eca?.[_0x4c0e79(0xb3)]||_0x4c0e79(0xa1),'elapsed':_0x358333},'message':_0x4c0e79(0xa1)};const _0x1c8761=Array[_0x4c0e79(0xb4)](_0x28e335)?_0x28e335:[];return{'ok':!![],'data':{'rows':_0x1c8761,'rowCount':_0x1c8761['length'],'elapsed':_0x358333},'message':_0x4c0e79(0xb1)+_0x1c8761[_0x4c0e79(0xb0)]+'\x20row(s)\x20in\x20'+_0x358333+'ms'};}};
1
+ function a135_0x103c(){const _0x3c808f=['4mqYFvK','execError','445015XhFrkx','\x20row(s)\x20in\x20','SQL\x20execution\x20failed','7695440SqVoKM','str','string','711996mCmbQH','6605221YWrfdC','length','execResult','exec','params','1781640cNVExn','1174859zlhxmI','read','203294xuPrEQ','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','execSuccess','SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)','sqlcode'];a135_0x103c=function(){return _0x3c808f;};return a135_0x103c();}const a135_0x101401=a135_0x5328;(function(_0x2738dc,_0x34b94c){const _0x230662=a135_0x5328,_0x4199ce=_0x2738dc();while(!![]){try{const _0x967c00=parseInt(_0x230662(0x1f9))/0x1+parseInt(_0x230662(0x1fb))/0x2+-parseInt(_0x230662(0x208))/0x3+parseInt(_0x230662(0x200))/0x4*(-parseInt(_0x230662(0x202))/0x5)+-parseInt(_0x230662(0x1f8))/0x6+-parseInt(_0x230662(0x209))/0x7+parseInt(_0x230662(0x205))/0x8;if(_0x967c00===_0x34b94c)break;else _0x4199ce['push'](_0x4199ce['shift']());}catch(_0x4bcb0f){_0x4199ce['push'](_0x4199ce['shift']());}}}(a135_0x103c,0xa3f46));import{executeSql}from'../../core/api-client.js';function a135_0x5328(_0x6d13c1,_0x4be3bc){_0x6d13c1=_0x6d13c1-0x1f4;const _0x103c74=a135_0x103c();let _0x532834=_0x103c74[_0x6d13c1];return _0x532834;}import{SQLCODE_FLAG}from'../../commands/common/flags.js';import{parseJsonParams}from'../../utils/params.js';export const sqlExec={'service':'sql','command':a135_0x101401(0x1f6),'description':a135_0x101401(0x1fc),'risk':a135_0x101401(0x1fa),'flags':[SQLCODE_FLAG,{'name':a135_0x101401(0x1f7),'type':a135_0x101401(0x207),'description':a135_0x101401(0x1fe)}],async 'execute'(_0xd1d9d1){const _0x189086=a135_0x101401,_0x334436=parseJsonParams(_0xd1d9d1[_0x189086(0x206)](_0x189086(0x1f7))),_0x4c8b5c=Date['now'](),_0xb1d4ea=await executeSql(_0xd1d9d1['appCode'],_0xd1d9d1[_0x189086(0x206)](_0x189086(0x1ff)),_0x334436),_0x4b9bcf=Date['now']()-_0x4c8b5c,_0x291719=_0xb1d4ea?.[_0x189086(0x1f5)]??_0xb1d4ea,_0x3c64c6=_0xb1d4ea?.[_0x189086(0x1fd)]??!![];if(!_0x3c64c6)return{'ok':![],'data':{'error':_0xb1d4ea?.[_0x189086(0x201)]||_0x189086(0x204),'elapsed':_0x4b9bcf},'message':_0x189086(0x204)};const _0x3f22ae=Array['isArray'](_0x291719)?_0x291719:[];return{'ok':!![],'data':{'rows':_0x3f22ae,'rowCount':_0x3f22ae[_0x189086(0x1f4)],'elapsed':_0x4b9bcf},'message':'Returned\x20'+_0x3f22ae[_0x189086(0x1f4)]+_0x189086(0x203)+_0x4b9bcf+'ms'};}};
@@ -1 +1 @@
1
- (function(_0x57077c,_0xeda266){const _0x46732b=a136_0x107e,_0xd1ef9=_0x57077c();while(!![]){try{const _0x41db2f=parseInt(_0x46732b(0x19b))/0x1*(parseInt(_0x46732b(0x199))/0x2)+parseInt(_0x46732b(0x194))/0x3+-parseInt(_0x46732b(0x19c))/0x4+parseInt(_0x46732b(0x195))/0x5*(parseInt(_0x46732b(0x19a))/0x6)+-parseInt(_0x46732b(0x198))/0x7*(parseInt(_0x46732b(0x19d))/0x8)+-parseInt(_0x46732b(0x197))/0x9+parseInt(_0x46732b(0x196))/0xa;if(_0x41db2f===_0xeda266)break;else _0xd1ef9['push'](_0xd1ef9['shift']());}catch(_0x9a1060){_0xd1ef9['push'](_0xd1ef9['shift']());}}}(a136_0x9fe4,0x1dcba));import{sqlList}from'../../commands/sql/list.js';import{sqlDetail}from'../../commands/sql/detail.js';function a136_0x107e(_0x2aaca6,_0x3547fd){_0x2aaca6=_0x2aaca6-0x194;const _0x9fe444=a136_0x9fe4();let _0x107ed7=_0x9fe444[_0x2aaca6];return _0x107ed7;}import{sqlValidate}from'../../commands/sql/validate.js';import{sqlSave}from'../../commands/sql/save.js';import{sqlExec}from'../../commands/sql/exec.js';import{sqlPull}from'../../commands/sql/pull.js';import{sqlCreate}from'../../commands/sql/create.js';import{sqlStatus}from'../../commands/sql/status.js';import{sqlPush}from'../../commands/sql/push.js';function a136_0x9fe4(){const _0x1231da=['144PTpinJ','104101ELqxkC','275680iPEHvI','1264HBWCmS','417975nFzGbD','35375xVDydG','389910uLGsOO','1150938mJcWFh','10521aKnaHC','4jBXuUb'];a136_0x9fe4=function(){return _0x1231da;};return a136_0x9fe4();}import{sqlDelete}from'../../commands/sql/delete.js';export const sqlDefinitions=[sqlList,sqlDetail,sqlStatus,sqlCreate,sqlPush,sqlValidate,sqlSave,sqlExec,sqlPull,sqlDelete];
1
+ (function(_0x46282f,_0x2e525b){const _0x53207f=a136_0x5bce,_0x33f8bd=_0x46282f();while(!![]){try{const _0x40c493=parseInt(_0x53207f(0x186))/0x1+parseInt(_0x53207f(0x185))/0x2*(-parseInt(_0x53207f(0x184))/0x3)+-parseInt(_0x53207f(0x187))/0x4*(-parseInt(_0x53207f(0x183))/0x5)+parseInt(_0x53207f(0x18a))/0x6+parseInt(_0x53207f(0x18b))/0x7*(parseInt(_0x53207f(0x188))/0x8)+parseInt(_0x53207f(0x182))/0x9+parseInt(_0x53207f(0x18c))/0xa*(-parseInt(_0x53207f(0x189))/0xb);if(_0x40c493===_0x2e525b)break;else _0x33f8bd['push'](_0x33f8bd['shift']());}catch(_0x5bce2e){_0x33f8bd['push'](_0x33f8bd['shift']());}}}(a136_0x1e1b,0xd9e8d));import{sqlList}from'../../commands/sql/list.js';function a136_0x5bce(_0x244c4d,_0x3c4a0a){_0x244c4d=_0x244c4d-0x182;const _0x1e1b52=a136_0x1e1b();let _0x5bceea=_0x1e1b52[_0x244c4d];return _0x5bceea;}import{sqlDetail}from'../../commands/sql/detail.js';function a136_0x1e1b(){const _0x362ec0=['642422XiUwOX','3318012sXNxSo','3466841KsDEvV','360FPmmpV','725040zpyxer','15RzAKXl','1434333wiFOzV','4iMQmEF','1605087cFrQTx','962768FzfGSO','16jruMSD'];a136_0x1e1b=function(){return _0x362ec0;};return a136_0x1e1b();}import{sqlValidate}from'../../commands/sql/validate.js';import{sqlSave}from'../../commands/sql/save.js';import{sqlExec}from'../../commands/sql/exec.js';import{sqlPull}from'../../commands/sql/pull.js';import{sqlCreate}from'../../commands/sql/create.js';import{sqlStatus}from'../../commands/sql/status.js';import{sqlPush}from'../../commands/sql/push.js';import{sqlDelete}from'../../commands/sql/delete.js';export const sqlDefinitions=[sqlList,sqlDetail,sqlStatus,sqlCreate,sqlPush,sqlValidate,sqlSave,sqlExec,sqlPull,sqlDelete];
@@ -1 +1 @@
1
- const a137_0x28a530=a137_0x288a;(function(_0x25652c,_0x23a7e2){const _0x549a6a=a137_0x288a,_0x521ef6=_0x25652c();while(!![]){try{const _0x282710=-parseInt(_0x549a6a(0x15c))/0x1*(-parseInt(_0x549a6a(0x158))/0x2)+parseInt(_0x549a6a(0x168))/0x3+-parseInt(_0x549a6a(0x150))/0x4+-parseInt(_0x549a6a(0x15d))/0x5+-parseInt(_0x549a6a(0x163))/0x6*(parseInt(_0x549a6a(0x16b))/0x7)+-parseInt(_0x549a6a(0x15f))/0x8+parseInt(_0x549a6a(0x16d))/0x9;if(_0x282710===_0x23a7e2)break;else _0x521ef6['push'](_0x521ef6['shift']());}catch(_0x3692ee){_0x521ef6['push'](_0x521ef6['shift']());}}}(a137_0x53e1,0xb440f));import{listSqlQueries}from'../../core/api-client.js';function a137_0x53e1(){const _0x2f2eba=['str','No\x20custom\x20SQL\x20queries\x20found.','all','17490ugDVkR','sqlCode','name','Found\x20','read','2731881rVDAfL','Page\x20number','number','2849FzWhWJ','string','26200224ZQlrOA','totalCount','page','sql','num','length','sqlcode','1410728DwZfeZ','bool','paging','pagesize','appCode','Page\x20size','map','sqlName','2KJzmXv','List\x20custom\x20SQL\x20queries','dbId','description','196565NujDPn','3741980DIyzwi','verbose','7940208UXtvOW'];a137_0x53e1=function(){return _0x2f2eba;};return a137_0x53e1();}import{getDbName}from'../../core/db-resolver.js';function a137_0x288a(_0x5e70ab,_0x178c3e){_0x5e70ab=_0x5e70ab-0x14a;const _0x53e122=a137_0x53e1();let _0x288a23=_0x53e122[_0x5e70ab];return _0x288a23;}import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';export const sqlList={'service':a137_0x28a530(0x14c),'command':'list','description':a137_0x28a530(0x159),'risk':a137_0x28a530(0x167),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':'name','type':a137_0x28a530(0x16c),'description':'Filter\x20by\x20SQL\x20name'},{'name':a137_0x28a530(0x14b),'type':a137_0x28a530(0x16a),'description':a137_0x28a530(0x169),'default':0x1},{'name':a137_0x28a530(0x153),'type':a137_0x28a530(0x16a),'description':a137_0x28a530(0x155)},{'name':a137_0x28a530(0x15e),'type':'boolean','description':'Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content'}],async 'execute'(_0x428e99){const _0x5977fb=a137_0x28a530,_0x3c0c49=await listSqlQueries(_0x428e99[_0x5977fb(0x154)],{'sqlCode':_0x428e99[_0x5977fb(0x160)](_0x5977fb(0x14f))||undefined,'sqlName':_0x428e99[_0x5977fb(0x160)](_0x5977fb(0x165))||undefined,'currentPage':_0x428e99[_0x5977fb(0x14d)](_0x5977fb(0x14b)),'pageSize':_0x428e99[_0x5977fb(0x14d)](_0x5977fb(0x153),0x32)}),_0x32050c=_0x428e99[_0x5977fb(0x151)](_0x5977fb(0x15e)),_0x416474=_0x3c0c49['tableData']??[],_0x555409=_0x3c0c49[_0x5977fb(0x152)]?.[_0x5977fb(0x14a)]??_0x416474['length'];let _0x32daaf;return _0x32050c?_0x32daaf=_0x416474:_0x32daaf=await Promise[_0x5977fb(0x162)](_0x416474[_0x5977fb(0x156)](async _0x27ef55=>{const _0x37b765=_0x5977fb;let _0x34adc1;try{_0x34adc1=_0x27ef55[_0x37b765(0x15a)]?await getDbName(_0x428e99['appCode'],_0x27ef55[_0x37b765(0x15a)]):undefined;}catch{}return{'sqlCode':_0x27ef55[_0x37b765(0x164)],'sqlName':_0x27ef55[_0x37b765(0x157)],'description':_0x27ef55[_0x37b765(0x15b)]??'','db':_0x34adc1?_0x34adc1+'\x20('+_0x27ef55[_0x37b765(0x15a)]+')':_0x27ef55[_0x37b765(0x15a)]??''};})),{'ok':!![],'data':_0x32daaf,'message':_0x416474[_0x5977fb(0x14e)]===0x0?_0x5977fb(0x161):_0x5977fb(0x166)+_0x416474[_0x5977fb(0x14e)]+'\x20SQL\x20queries\x20(total:\x20'+_0x555409+').'};}};
1
+ const a137_0x37f438=a137_0x43b6;(function(_0x400c5a,_0x5d4077){const _0x39c524=a137_0x43b6,_0x1bc92b=_0x400c5a();while(!![]){try{const _0x30af30=parseInt(_0x39c524(0x7a))/0x1*(parseInt(_0x39c524(0x84))/0x2)+parseInt(_0x39c524(0x7f))/0x3*(-parseInt(_0x39c524(0x93))/0x4)+-parseInt(_0x39c524(0x8f))/0x5+-parseInt(_0x39c524(0x81))/0x6*(-parseInt(_0x39c524(0x83))/0x7)+-parseInt(_0x39c524(0x8e))/0x8+parseInt(_0x39c524(0x7e))/0x9*(-parseInt(_0x39c524(0x7d))/0xa)+parseInt(_0x39c524(0x90))/0xb;if(_0x30af30===_0x5d4077)break;else _0x1bc92b['push'](_0x1bc92b['shift']());}catch(_0x254f84){_0x1bc92b['push'](_0x1bc92b['shift']());}}}(a137_0x4066,0x8acaa));function a137_0x43b6(_0x9ccce2,_0x74c56d){_0x9ccce2=_0x9ccce2-0x76;const _0x406689=a137_0x4066();let _0x43b65a=_0x406689[_0x9ccce2];return _0x43b65a;}import{listSqlQueries}from'../../core/api-client.js';function a137_0x4066(){const _0x4462a9=['1058100JofAoU','15659809teSuuZ','paging','appCode','6436PjEHGy','pagesize','Page\x20number','all','bool','verbose','length','totalCount','tableData','num','Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content','Page\x20size','read','478579uugPiK','list','sql','5223630emluQI','9HmOIBp','1149fHRRUg','dbId','11784CsOBbx','description','1582emfLEl','2IirKNa','map','\x20SQL\x20queries\x20(total:\x20','name','str','List\x20custom\x20SQL\x20queries','sqlName','Filter\x20by\x20SQL\x20name','number','string','3418736XhzrGn'];a137_0x4066=function(){return _0x4462a9;};return a137_0x4066();}import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';export const sqlList={'service':a137_0x37f438(0x7c),'command':a137_0x37f438(0x7b),'description':a137_0x37f438(0x89),'risk':a137_0x37f438(0x79),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a137_0x37f438(0x87),'type':a137_0x37f438(0x8d),'description':a137_0x37f438(0x8b)},{'name':'page','type':a137_0x37f438(0x8c),'description':a137_0x37f438(0x95),'default':0x1},{'name':a137_0x37f438(0x94),'type':a137_0x37f438(0x8c),'description':a137_0x37f438(0x78)},{'name':'verbose','type':'boolean','description':a137_0x37f438(0x77)}],async 'execute'(_0x45ae03){const _0x445c81=a137_0x37f438,_0xde6119=await listSqlQueries(_0x45ae03[_0x445c81(0x92)],{'sqlCode':_0x45ae03[_0x445c81(0x88)]('sqlcode')||undefined,'sqlName':_0x45ae03[_0x445c81(0x88)](_0x445c81(0x87))||undefined,'currentPage':_0x45ae03[_0x445c81(0x76)]('page'),'pageSize':_0x45ae03[_0x445c81(0x76)](_0x445c81(0x94),0x32)}),_0x1c92b0=_0x45ae03[_0x445c81(0x97)](_0x445c81(0x98)),_0x310473=_0xde6119[_0x445c81(0x9b)]??[],_0x356296=_0xde6119[_0x445c81(0x91)]?.[_0x445c81(0x9a)]??_0x310473[_0x445c81(0x99)];let _0x68fe20;return _0x1c92b0?_0x68fe20=_0x310473:_0x68fe20=await Promise[_0x445c81(0x96)](_0x310473[_0x445c81(0x85)](async _0x3295f8=>{const _0x44c89f=_0x445c81;let _0x5ac27a;try{_0x5ac27a=_0x3295f8['dbId']?await getDbName(_0x45ae03[_0x44c89f(0x92)],_0x3295f8[_0x44c89f(0x80)]):undefined;}catch{}return{'sqlCode':_0x3295f8['sqlCode'],'sqlName':_0x3295f8[_0x44c89f(0x8a)],'description':_0x3295f8[_0x44c89f(0x82)]??'','db':_0x5ac27a?_0x5ac27a+'\x20('+_0x3295f8[_0x44c89f(0x80)]+')':_0x3295f8[_0x44c89f(0x80)]??''};})),{'ok':!![],'data':_0x68fe20,'message':_0x310473['length']===0x0?'No\x20custom\x20SQL\x20queries\x20found.':'Found\x20'+_0x310473[_0x445c81(0x99)]+_0x445c81(0x86)+_0x356296+').'};}};