@lovrabet/rabetbase-cli 2.3.5 → 2.3.6-beta.1

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 (239) 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/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/remote-directory.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-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/dry-run.js +1 -1
  48. package/lib/commands/common/flags.js +1 -1
  49. package/lib/commands/common/validate.js +1 -1
  50. package/lib/commands/config/get.js +1 -1
  51. package/lib/commands/config/index.js +1 -1
  52. package/lib/commands/config/list.js +1 -1
  53. package/lib/commands/config/set.js +1 -1
  54. package/lib/commands/config/shared.js +1 -1
  55. package/lib/commands/data/filter.js +1 -1
  56. package/lib/commands/data/getOne.js +1 -1
  57. package/lib/commands/data/index.js +1 -1
  58. package/lib/commands/data/shared.js +1 -1
  59. package/lib/commands/dataset/business-group-update.js +1 -1
  60. package/lib/commands/dataset/capability.js +1 -1
  61. package/lib/commands/dataset/delete.js +1 -1
  62. package/lib/commands/dataset/detail.js +1 -1
  63. package/lib/commands/dataset/extend-update.js +1 -1
  64. package/lib/commands/dataset/field-update.js +1 -1
  65. package/lib/commands/dataset/generate.js +1 -1
  66. package/lib/commands/dataset/index.js +1 -1
  67. package/lib/commands/dataset/list.js +1 -1
  68. package/lib/commands/dataset/operations.js +1 -1
  69. package/lib/commands/dataset/relation-audit.js +1 -1
  70. package/lib/commands/dataset/relation-create.js +1 -1
  71. package/lib/commands/dataset/relation-delete.js +1 -1
  72. package/lib/commands/dataset/relation-shared.js +1 -1
  73. package/lib/commands/dataset/relation-update.js +1 -1
  74. package/lib/commands/dataset/relations.js +1 -1
  75. package/lib/commands/dataset/rename.js +1 -1
  76. package/lib/commands/dataset/restore.js +1 -1
  77. package/lib/commands/db/analyze-cancel.js +1 -1
  78. package/lib/commands/db/analyze-start.js +1 -1
  79. package/lib/commands/db/analyze-status.js +1 -1
  80. package/lib/commands/db/create.js +1 -1
  81. package/lib/commands/db/delete.js +1 -1
  82. package/lib/commands/db/detail.js +1 -1
  83. package/lib/commands/db/diff.js +1 -1
  84. package/lib/commands/db/index.js +1 -1
  85. package/lib/commands/db/list.js +1 -1
  86. package/lib/commands/db/shared.js +1 -1
  87. package/lib/commands/db/tables.js +1 -1
  88. package/lib/commands/db/test.js +1 -1
  89. package/lib/commands/db/update.js +1 -1
  90. package/lib/commands/doctor.js +1 -1
  91. package/lib/commands/init/index.js +1 -1
  92. package/lib/commands/issue/index.js +1 -1
  93. package/lib/commands/issue/nudge.js +1 -1
  94. package/lib/commands/issue/report.js +1 -1
  95. package/lib/commands/issue/shared.js +1 -1
  96. package/lib/commands/logs/index.js +1 -1
  97. package/lib/commands/menu/index.js +1 -1
  98. package/lib/commands/menu/list.js +1 -1
  99. package/lib/commands/menu/shared/compare-table.js +1 -1
  100. package/lib/commands/menu/shared/index.js +1 -1
  101. package/lib/commands/menu/shared/inquirer.js +1 -1
  102. package/lib/commands/menu/shared/local-pages.js +1 -1
  103. package/lib/commands/menu/shared/logic.js +1 -1
  104. package/lib/commands/menu/shared/service.js +1 -1
  105. package/lib/commands/menu/shared/sync-core.js +1 -1
  106. package/lib/commands/menu/shared/update-core.js +1 -1
  107. package/lib/commands/menu/shared/valid-url.js +1 -1
  108. package/lib/commands/menu/sync.js +1 -1
  109. package/lib/commands/menu/update.js +1 -1
  110. package/lib/commands/page/generate-start.js +1 -1
  111. package/lib/commands/page/generate-status.js +1 -1
  112. package/lib/commands/page/index.js +1 -1
  113. package/lib/commands/page/pull.js +1 -1
  114. package/lib/commands/page/push.js +1 -1
  115. package/lib/commands/page/relation-audit.js +1 -1
  116. package/lib/commands/page/shared.js +1 -1
  117. package/lib/commands/page/standard-page-status.js +1 -1
  118. package/lib/commands/page/sync.js +1 -1
  119. package/lib/commands/permit/index.js +1 -1
  120. package/lib/commands/permit/page-get.js +1 -1
  121. package/lib/commands/permit/page-set.js +1 -1
  122. package/lib/commands/permit/role-apis-set.js +1 -1
  123. package/lib/commands/permit/role-menus-set.js +1 -1
  124. package/lib/commands/permit/role-menus.js +1 -1
  125. package/lib/commands/permit/shared.js +1 -1
  126. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  127. package/lib/commands/project/create/format-elapsed.js +1 -1
  128. package/lib/commands/project/create/main.js +1 -1
  129. package/lib/commands/project/create/non-interactive.js +1 -1
  130. package/lib/commands/project/create/project-template-path.js +1 -1
  131. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  132. package/lib/commands/project/create/use-format-code.js +1 -1
  133. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  134. package/lib/commands/project/index.js +1 -1
  135. package/lib/commands/project/init.js +1 -1
  136. package/lib/commands/project/upgrade.js +1 -1
  137. package/lib/commands/registry.js +1 -1
  138. package/lib/commands/role/create.js +1 -1
  139. package/lib/commands/role/delete.js +1 -1
  140. package/lib/commands/role/detail.js +1 -1
  141. package/lib/commands/role/index.js +1 -1
  142. package/lib/commands/role/list.js +1 -1
  143. package/lib/commands/role/shared.js +1 -1
  144. package/lib/commands/role/update.js +1 -1
  145. package/lib/commands/role/user-add.js +1 -1
  146. package/lib/commands/role/user-remove.js +1 -1
  147. package/lib/commands/role/user-resolve.js +1 -1
  148. package/lib/commands/run/index.js +1 -1
  149. package/lib/commands/schema.js +1 -1
  150. package/lib/commands/sql/create.js +1 -1
  151. package/lib/commands/sql/delete.js +1 -1
  152. package/lib/commands/sql/detail.js +1 -1
  153. package/lib/commands/sql/exec.js +1 -1
  154. package/lib/commands/sql/index.js +1 -1
  155. package/lib/commands/sql/list.js +1 -1
  156. package/lib/commands/sql/pull.js +1 -1
  157. package/lib/commands/sql/push.js +1 -1
  158. package/lib/commands/sql/save.js +1 -1
  159. package/lib/commands/sql/shared.js +1 -1
  160. package/lib/commands/sql/status.js +1 -1
  161. package/lib/commands/sql/validate.js +1 -1
  162. package/lib/commands/workspace/add.js +1 -1
  163. package/lib/commands/workspace/index.js +1 -1
  164. package/lib/commands/workspace/remove.js +1 -1
  165. package/lib/config/schema.js +1 -1
  166. package/lib/constant/cdn.js +1 -1
  167. package/lib/constant/cli.js +1 -1
  168. package/lib/constant/defaults.js +1 -1
  169. package/lib/constant/domain.js +1 -1
  170. package/lib/constant/env.js +1 -1
  171. package/lib/constant/output.js +1 -1
  172. package/lib/constant/paths.js +1 -1
  173. package/lib/constant/risk.js +1 -1
  174. package/lib/context/app-resolver.js +1 -1
  175. package/lib/context/auth-resolver.js +1 -1
  176. package/lib/context/config-loader.js +1 -1
  177. package/lib/context.js +1 -1
  178. package/lib/core/alias-resolver.js +1 -1
  179. package/lib/core/api-client.js +1 -1
  180. package/lib/core/bff/config.js +1 -1
  181. package/lib/core/bff/file-system.js +1 -1
  182. package/lib/core/bff/hash.js +1 -1
  183. package/lib/core/bff/lock.js +1 -1
  184. package/lib/core/bff/utils.js +1 -1
  185. package/lib/core/db-resolver.js +1 -1
  186. package/lib/core/page/file-system.js +1 -1
  187. package/lib/core/page/hash.js +1 -1
  188. package/lib/core/page/lock.js +1 -1
  189. package/lib/core/sql-sync/config.js +1 -1
  190. package/lib/core/sql-sync/file-system.js +1 -1
  191. package/lib/core/sql-sync/hash.js +1 -1
  192. package/lib/core/sql-sync/lock.js +1 -1
  193. package/lib/core/sql-sync/utils.js +1 -1
  194. package/lib/core/sql-validator.js +1 -1
  195. package/lib/errors.js +1 -1
  196. package/lib/framework/build-all-flags.js +1 -1
  197. package/lib/framework/flags.js +1 -1
  198. package/lib/framework/help.js +1 -1
  199. package/lib/framework/index.js +1 -1
  200. package/lib/framework/output.js +1 -1
  201. package/lib/framework/response.js +1 -1
  202. package/lib/framework/runner-alias.js +1 -1
  203. package/lib/framework/runner.js +1 -1
  204. package/lib/framework/schema-export.js +1 -1
  205. package/lib/framework/types.js +1 -1
  206. package/lib/generated/build-info.js +1 -1
  207. package/lib/help.js +1 -1
  208. package/lib/skills/main.js +1 -1
  209. package/lib/skills/npx-skills-add.js +1 -1
  210. package/lib/telemetry/cli-command-trace.js +1 -1
  211. package/lib/telemetry/cli-help-trace.js +1 -1
  212. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  213. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  214. package/lib/telemetry/send-cli-trace-log.js +1 -1
  215. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  216. package/lib/utils/ai_config.js +1 -1
  217. package/lib/utils/apply-jq-filter.js +1 -1
  218. package/lib/utils/cdn-config.js +1 -1
  219. package/lib/utils/check-sdk-version.js +1 -1
  220. package/lib/utils/cli-version-check.js +1 -1
  221. package/lib/utils/cli-version-policy.js +1 -1
  222. package/lib/utils/config.js +1 -1
  223. package/lib/utils/copy-directory.js +1 -1
  224. package/lib/utils/entity-with-id.js +1 -1
  225. package/lib/utils/file-utils.js +1 -1
  226. package/lib/utils/guides-cdn.js +1 -1
  227. package/lib/utils/http-client.js +1 -1
  228. package/lib/utils/is-non-interactive.js +1 -1
  229. package/lib/utils/logger.js +1 -1
  230. package/lib/utils/params.js +1 -1
  231. package/lib/utils/platform.js +1 -1
  232. package/lib/utils/rules-cdn.js +1 -1
  233. package/lib/utils/sleep.js +1 -1
  234. package/lib/utils/template-replacer.js +1 -1
  235. package/lib/utils/update-notice.js +1 -1
  236. package/lib/utils/version.js +1 -1
  237. package/lib/utils/with-active-cookie.js +1 -1
  238. package/lib/utils/write-cli-side-channel.js +1 -1
  239. package/package.json +1 -1
@@ -1 +1 @@
1
- const a156_0x25f5f9=a156_0x4e7e;(function(_0x235f48,_0x5e89e0){const _0x734e8=a156_0x4e7e,_0x110f60=_0x235f48();while(!![]){try{const _0x373a57=parseInt(_0x734e8(0x1e2))/0x1+-parseInt(_0x734e8(0x1cf))/0x2+-parseInt(_0x734e8(0x1bb))/0x3+-parseInt(_0x734e8(0x1e5))/0x4+-parseInt(_0x734e8(0x1e9))/0x5+parseInt(_0x734e8(0x1e7))/0x6*(parseInt(_0x734e8(0x1c8))/0x7)+-parseInt(_0x734e8(0x1d2))/0x8*(-parseInt(_0x734e8(0x1c9))/0x9);if(_0x373a57===_0x5e89e0)break;else _0x110f60['push'](_0x110f60['shift']());}catch(_0x493e2f){_0x110f60['push'](_0x110f60['shift']());}}}(a156_0x3123,0x78a4c));import{readFile,rm,writeFile}from'node:fs/promises';function a156_0x4e7e(_0x46c395,_0x5803f5){_0x46c395=_0x46c395-0x1b8;const _0x3123e9=a156_0x3123();let _0x4e7e24=_0x3123e9[_0x46c395];return _0x4e7e24;}import{join}from'node:path';function a156_0x3123(){const _0x36e808=['local\x20differs\x20from\x20remote','description','boolean','replace','Pull\x20complete:\x20','trimStart','\x20skipped,\x20','force','1041372jYialV','unchanged','name','test','appCode','nonInteractive','catch','dbId','write','push','utf8','lockFilePath','toISOString','294EYUZod','9mEGnDb','bool','Would\x20pull\x20','No\x20remote\x20SQL\x20queries\x20matched.','totalCount','paging','1315064iYJPcX','sqlcode','tableData','14849632DJUHOa','path','apps','Filter\x20by\x20SQL\x20display\x20name','POST','mybatisXml','length','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','pull','message','sqlContent','\x20SQL\x20file(s)\x20into\x20','Force\x20pull\x20cancelled.','sqlRoot','sqlCode','split','515772hATBEv','sqlName','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','3236416ZFEpci','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','92802JzfVjw','sqls','3568370jUMtqc','str','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql'];a156_0x3123=function(){return _0x36e808;};return a156_0x3123();}import{getSqlQueryDetail,listSqlQueries}from'../../core/api-client.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{getDbName}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildLocalSqlFileContent,buildSqlLockEntry,cloneSqlLockData,confirmForceOverwrite,ensureRemoteSqlContent,stripLocalSqlMetadata}from'./shared.js';const PAGE_SIZE=0x64;async function fetchAllSqlQueries(_0x1d293e,_0x2e2acd){const _0x2cecce=a156_0x4e7e,_0x58138e=[];let _0x3bb689=0x1;while(!![]){const _0x5cdfbe=await listSqlQueries(_0x1d293e,{'currentPage':_0x3bb689,'pageSize':PAGE_SIZE,'sqlCode':_0x2e2acd[_0x2cecce(0x1e0)],'sqlName':_0x2e2acd['sqlName']}),_0x31d915=_0x5cdfbe[_0x2cecce(0x1d1)]??[];_0x58138e[_0x2cecce(0x1c4)](..._0x31d915);if(_0x31d915[_0x2cecce(0x1d8)]===0x0)break;const _0x56d4ff=_0x5cdfbe[_0x2cecce(0x1ce)]?.[_0x2cecce(0x1cd)];if(_0x56d4ff!=null?_0x58138e[_0x2cecce(0x1d8)]>=_0x56d4ff:_0x31d915[_0x2cecce(0x1d8)]<PAGE_SIZE)break;_0x3bb689++;}return _0x58138e;}async function ensureSqlContent(_0x12b1d2){const _0x11ed34=a156_0x4e7e;if(_0x12b1d2[_0x11ed34(0x1dc)]!=null&&String(_0x12b1d2[_0x11ed34(0x1dc)])[_0x11ed34(0x1d8)]>0x0)return _0x12b1d2;return getSqlQueryDetail(_0x12b1d2['sqlCode']);}export const sqlPull={'service':'sql','command':a156_0x25f5f9(0x1da),'description':a156_0x25f5f9(0x1d9),'risk':a156_0x25f5f9(0x1c3),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':'name','type':'string','description':a156_0x25f5f9(0x1d5)},{'name':a156_0x25f5f9(0x1ba),'type':a156_0x25f5f9(0x1ee),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x537232){const _0x3f7b12=a156_0x25f5f9,_0x171579=loadSqlProjectConfig(_0x537232[_0x3f7b12(0x1bf)]),_0x1e4e97=await readSqlLockFile(_0x171579[_0x3f7b12(0x1c6)]),{appLock:_0x93748e}=ensureSqlLockScope(_0x1e4e97??createEmptySqlLock(),_0x171579['appCode'],_0x171579[_0x3f7b12(0x1df)],_0x3f7b12(0x1da)),_0x56b94f=await fetchAllSqlQueries(_0x537232[_0x3f7b12(0x1bf)],{'sqlCode':_0x537232[_0x3f7b12(0x1ea)](_0x3f7b12(0x1d0))||undefined,'sqlName':_0x537232[_0x3f7b12(0x1ea)](_0x3f7b12(0x1bd))||undefined}),_0x57e00b=[];for(const _0x126162 of _0x56b94f){const _0x1df58a=await ensureSqlContent(_0x126162),_0x312837=ensureRemoteSqlContent(_0x1df58a),_0x18abd8=detectModeFromSql(_0x1df58a),_0x4f1a30=_0x1df58a[_0x3f7b12(0x1c2)]?await getDbName(_0x537232[_0x3f7b12(0x1bf)],Number(_0x1df58a[_0x3f7b12(0x1c2)]))[_0x3f7b12(0x1c1)](()=>undefined):undefined,_0x127a29=buildLocalSqlFileContent({'sqlCode':_0x1df58a[_0x3f7b12(0x1e0)],'sqlName':_0x1df58a[_0x3f7b12(0x1e3)],'dbId':_0x1df58a[_0x3f7b12(0x1c2)]},_0x312837,{'dbName':_0x4f1a30,'mode':_0x18abd8,'syncedAt':new Date()[_0x3f7b12(0x1c7)](),'description':_0x1df58a['description']}),_0x29bad2=buildSqlLockEntry(_0x1df58a,_0x312837,'',{'dbName':_0x4f1a30}),_0x2960e2=resolveLocalSqlFilePath(_0x171579,_0x1df58a['sqlCode'],_0x29bad2);let _0x1bccbf='would_pull',_0x2c3f40;if(await fileExists(_0x2960e2)){const _0x861c5a=await readFile(_0x2960e2,_0x3f7b12(0x1c5));isEquivalentPulledSqlFile(_0x861c5a,_0x127a29,_0x18abd8)?(_0x1bccbf='skipped',_0x2c3f40='unchanged'):(_0x1bccbf='conflict',_0x2c3f40=_0x3f7b12(0x1e4));}_0x57e00b[_0x3f7b12(0x1c4)]({'sqlCode':_0x1df58a[_0x3f7b12(0x1e0)],'sqlName':_0x1df58a[_0x3f7b12(0x1e3)],'filePath':_0x2960e2,'status':_0x1bccbf,'reason':_0x2c3f40});}return{'method':_0x3f7b12(0x1d6),'url':_0x3f7b12(0x1eb),'body':{'appCode':_0x537232[_0x3f7b12(0x1bf)],'sqlCode':_0x537232[_0x3f7b12(0x1ea)](_0x3f7b12(0x1d0))||null,'sqlName':_0x537232[_0x3f7b12(0x1ea)](_0x3f7b12(0x1bd))||null,'files':_0x57e00b},'description':_0x3f7b12(0x1cb)+_0x57e00b[_0x3f7b12(0x1d8)]+_0x3f7b12(0x1dd)+_0x171579['sqlRootDir']};},async 'execute'(_0x2e2a12){const _0x43a1f4=a156_0x25f5f9,_0xbd9006=loadSqlProjectConfig(_0x2e2a12[_0x43a1f4(0x1bf)]),_0x55dabb=await readSqlLockFile(_0xbd9006[_0x43a1f4(0x1c6)]),{lockData:_0x32d304,appLock:_0x1ff840}=ensureSqlLockScope(_0x55dabb??createEmptySqlLock(),_0xbd9006[_0x43a1f4(0x1bf)],_0xbd9006['sqlRoot'],_0x43a1f4(0x1da)),_0x20f74c=_0x2e2a12[_0x43a1f4(0x1ca)]('force'),_0xe6c0a6=await fetchAllSqlQueries(_0x2e2a12[_0x43a1f4(0x1bf)],{'sqlCode':_0x2e2a12[_0x43a1f4(0x1ea)](_0x43a1f4(0x1d0))||undefined,'sqlName':_0x2e2a12['str'](_0x43a1f4(0x1bd))||undefined});if(_0xe6c0a6[_0x43a1f4(0x1d8)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x43a1f4(0x1cc)};const _0x2ca76e=[],_0x3b4eb1=[];for(const _0x27e5fe of _0xe6c0a6){try{_0x2ca76e['push'](await ensureSqlContent(_0x27e5fe));}catch(_0x43497c){_0x3b4eb1['push']({'sqlCode':_0x27e5fe[_0x43a1f4(0x1e0)],'error':_0x43497c instanceof Error?_0x43497c[_0x43a1f4(0x1db)]:String(_0x43497c)});}}if(_0x20f74c&&!_0x2e2a12[_0x43a1f4(0x1c0)]){let _0x406cd5=![];for(const _0x1186d9 of _0x2ca76e){const _0x2e85c1=detectModeFromSql(_0x1186d9),_0x425048=_0x1186d9[_0x43a1f4(0x1c2)]?await getDbName(_0x2e2a12[_0x43a1f4(0x1bf)],Number(_0x1186d9[_0x43a1f4(0x1c2)]))[_0x43a1f4(0x1c1)](()=>undefined):undefined,_0x530045=buildLocalSqlFileContent({'sqlCode':_0x1186d9[_0x43a1f4(0x1e0)],'sqlName':_0x1186d9[_0x43a1f4(0x1e3)],'dbId':_0x1186d9[_0x43a1f4(0x1c2)]},ensureRemoteSqlContent(_0x1186d9),{'dbName':_0x425048,'mode':_0x2e85c1,'syncedAt':new Date()['toISOString'](),'description':_0x1186d9[_0x43a1f4(0x1ed)]}),_0x565137=resolveLocalSqlFilePath(_0xbd9006,_0x1186d9[_0x43a1f4(0x1e0)],buildSqlLockEntry(_0x1186d9,ensureRemoteSqlContent(_0x1186d9),'',{'dbName':_0x425048}));if(await fileExists(_0x565137)){const _0x4d8500=await readFile(_0x565137,'utf8');if(!isEquivalentPulledSqlFile(_0x4d8500,_0x530045,_0x2e85c1)){_0x406cd5=!![];break;}}}if(_0x406cd5){const _0x2b9325=await confirmForceOverwrite(_0x43a1f4(0x1e6));if(!_0x2b9325)throw CliErrors['cancelled'](_0x43a1f4(0x1de));}}const _0x53ea1a=cloneSqlLockData(_0x32d304),_0x1c46a7=_0x53ea1a[_0x43a1f4(0x1d4)][_0xbd9006[_0x43a1f4(0x1bf)]],_0x2efa7c=[],_0x1edcf9=[];for(const _0x5963e2 of _0x2ca76e){const _0x3cf6d7=_0x1c46a7[_0x43a1f4(0x1e8)][_0x5963e2[_0x43a1f4(0x1e0)]],_0x22f4c2=ensureRemoteSqlContent(_0x5963e2),_0x1edad6=detectModeFromSql(_0x5963e2),_0x4f0092=_0x5963e2[_0x43a1f4(0x1c2)]?await getDbName(_0x2e2a12[_0x43a1f4(0x1bf)],Number(_0x5963e2[_0x43a1f4(0x1c2)]))['catch'](()=>undefined):undefined,_0x2c6069=buildLocalSqlFileContent({'sqlCode':_0x5963e2['sqlCode'],'sqlName':_0x5963e2[_0x43a1f4(0x1e3)],'dbId':_0x5963e2[_0x43a1f4(0x1c2)]},_0x22f4c2,{'dbName':_0x4f0092,'mode':_0x1edad6,'syncedAt':new Date()[_0x43a1f4(0x1c7)](),'description':_0x5963e2[_0x43a1f4(0x1ed)]}),_0x3dbe3c=buildSqlLockEntry(_0x5963e2,_0x22f4c2,computeSqlContentHash(_0x2c6069),{'dbName':_0x4f0092}),_0x2cfa7a=_0x3dbe3c['path'],_0x2b907b=join(_0xbd9006['sqlRootDir'],_0x2cfa7a);try{if(await fileExists(_0x2b907b)){const _0x2e382f=await readFile(_0x2b907b,_0x43a1f4(0x1c5));if(isEquivalentPulledSqlFile(_0x2e382f,_0x2c6069,_0x1edad6)){_0x1edcf9['push']({'sqlCode':_0x5963e2[_0x43a1f4(0x1e0)],'reason':_0x43a1f4(0x1bc)}),_0x1c46a7[_0x43a1f4(0x1e8)][_0x5963e2[_0x43a1f4(0x1e0)]]={..._0x3dbe3c,'hash':computeSqlContentHash(_0x2e382f),'path':_0x2cfa7a};continue;}if(!_0x20f74c){_0x1edcf9['push']({'sqlCode':_0x5963e2[_0x43a1f4(0x1e0)],'reason':_0x43a1f4(0x1ec)});continue;}}const _0x59a856=_0x3cf6d7?.[_0x43a1f4(0x1d3)]?join(_0xbd9006['sqlRootDir'],_0x3cf6d7[_0x43a1f4(0x1d3)]):undefined;_0x59a856&&_0x59a856!==_0x2b907b&&await fileExists(_0x59a856)&&await rm(_0x59a856,{'force':!![]}),await ensureParentDirectory(_0x2b907b),await writeFile(_0x2b907b,_0x2c6069,_0x43a1f4(0x1c5)),_0x1c46a7[_0x43a1f4(0x1e8)][_0x5963e2[_0x43a1f4(0x1e0)]]={..._0x3dbe3c,'path':_0x2cfa7a},_0x2efa7c[_0x43a1f4(0x1c4)]({'sqlCode':_0x5963e2['sqlCode'],'filePath':_0x2b907b});}catch(_0x57060e){_0x3b4eb1[_0x43a1f4(0x1c4)]({'sqlCode':_0x5963e2[_0x43a1f4(0x1e0)],'error':_0x57060e instanceof Error?_0x57060e['message']:String(_0x57060e)});}}return _0x1c46a7['lastSync']=new Date()[_0x43a1f4(0x1c7)](),await writeSqlLockFile(_0xbd9006[_0x43a1f4(0x1c6)],_0x53ea1a),{'ok':_0x3b4eb1[_0x43a1f4(0x1d8)]===0x0,'data':{'pulled':_0x2efa7c,'skipped':_0x1edcf9,'failed':_0x3b4eb1},'message':_0x43a1f4(0x1f0)+_0x2efa7c[_0x43a1f4(0x1d8)]+'\x20written,\x20'+_0x1edcf9['length']+_0x43a1f4(0x1b9)+_0x3b4eb1['length']+'\x20failed'};}};function detectModeFromSql(_0x19650c){const _0x312911=a156_0x25f5f9,_0x5c82c4=ensureRemoteSqlContent(_0x19650c),_0x5644a3=stripLocalSqlMetadata(_0x5c82c4,_0x312911(0x1d7))[_0x312911(0x1b8)]();if(/^<(select|insert|update|delete)\b/i[_0x312911(0x1be)](_0x5644a3))return _0x312911(0x1d7);return'sql';}function isEquivalentPulledSqlFile(_0x4ed7e2,_0x5bfdb4,_0x105ce8){return normalizePullComparableContent(_0x4ed7e2,_0x105ce8)===normalizePullComparableContent(_0x5bfdb4,_0x105ce8);}function normalizePullComparableContent(_0xf8f982,_0x25dd2d){const _0x2226ff=a156_0x25f5f9,_0x3209c8=_0xf8f982[_0x2226ff(0x1ef)](/\r\n/g,'\x0a')[_0x2226ff(0x1e1)]('\x0a'),_0x421035=_0x3209c8['filter'](_0x1c396d=>!isSyncedAtMetadataLine(_0x1c396d,_0x25dd2d));return _0x421035['join']('\x0a');}function isSyncedAtMetadataLine(_0x3df622,_0x18d24b){const _0x5077e0=a156_0x25f5f9;if(_0x18d24b==='mybatisXml')return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0x5077e0(0x1be)](_0x3df622);return/^\s*--\s*@lovrabet\.syncedAt:/['test'](_0x3df622);}
1
+ const a156_0x1d4494=a156_0x1b6d;(function(_0x4f9ca9,_0x137f90){const _0x182932=a156_0x1b6d,_0x2b999d=_0x4f9ca9();while(!![]){try{const _0x33a843=-parseInt(_0x182932(0x176))/0x1*(parseInt(_0x182932(0x188))/0x2)+-parseInt(_0x182932(0x154))/0x3*(parseInt(_0x182932(0x177))/0x4)+-parseInt(_0x182932(0x165))/0x5+parseInt(_0x182932(0x18c))/0x6+-parseInt(_0x182932(0x179))/0x7*(-parseInt(_0x182932(0x166))/0x8)+-parseInt(_0x182932(0x18b))/0x9+parseInt(_0x182932(0x15f))/0xa*(parseInt(_0x182932(0x183))/0xb);if(_0x33a843===_0x137f90)break;else _0x2b999d['push'](_0x2b999d['shift']());}catch(_0x535696){_0x2b999d['push'](_0x2b999d['shift']());}}}(a156_0x1e39,0xa5401));import{readFile,rm,writeFile}from'node:fs/promises';import{join}from'node:path';function a156_0x1b6d(_0x4d7570,_0xf6a65c){_0x4d7570=_0x4d7570-0x152;const _0x1e39d6=a156_0x1e39();let _0x1b6d16=_0x1e39d6[_0x4d7570];return _0x1b6d16;}import{getSqlQueryDetail,listSqlQueries}from'../../core/api-client.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{getDbName}from'../../core/db-resolver.js';function a156_0x1e39(){const _0x2efbcc=['boolean','toISOString','catch','\x20written,\x20','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','22655290wwKTwb','mybatisXml','appCode','would_pull','replace','\x20skipped,\x20','6624325ABWzil','8052280jxRJpq','local\x20differs\x20from\x20remote','length','Would\x20pull\x20','conflict','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','test','string','sqlName','totalCount','lastSync','dbId','skipped','bool','sql','sqlContent','6yhopKw','2356308SyVdBQ','cancelled','7cNxBid','apps','write','force','POST','sqlCode','lockFilePath','filter','nonInteractive','name','11uJBwpe','Pull\x20complete:\x20','utf8','split','description','6728aSbdsr','sqlcode','sqlRootDir','10216377IaEYnS','2844480gBpJyf','paging','pull','sqls','push','3czzQsu','message','sqlRoot','str','trimStart','Force\x20pull\x20cancelled.'];a156_0x1e39=function(){return _0x2efbcc;};return a156_0x1e39();}import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildLocalSqlFileContent,buildSqlLockEntry,cloneSqlLockData,confirmForceOverwrite,ensureRemoteSqlContent,stripLocalSqlMetadata}from'./shared.js';const PAGE_SIZE=0x64;async function fetchAllSqlQueries(_0x261941,_0x17f9c2){const _0x360c0a=a156_0x1b6d,_0x2368f9=[];let _0x565432=0x1;while(!![]){const _0x163645=await listSqlQueries(_0x261941,{'currentPage':_0x565432,'pageSize':PAGE_SIZE,'sqlCode':_0x17f9c2[_0x360c0a(0x17e)],'sqlName':_0x17f9c2[_0x360c0a(0x16e)]}),_0x26f7d8=_0x163645['tableData']??[];_0x2368f9['push'](..._0x26f7d8);if(_0x26f7d8[_0x360c0a(0x168)]===0x0)break;const _0x41e93a=_0x163645[_0x360c0a(0x18d)]?.[_0x360c0a(0x16f)];if(_0x41e93a!=null?_0x2368f9['length']>=_0x41e93a:_0x26f7d8['length']<PAGE_SIZE)break;_0x565432++;}return _0x2368f9;}async function ensureSqlContent(_0x50b65a){const _0x202a03=a156_0x1b6d;if(_0x50b65a[_0x202a03(0x175)]!=null&&String(_0x50b65a['sqlContent'])[_0x202a03(0x168)]>0x0)return _0x50b65a;return getSqlQueryDetail(_0x50b65a[_0x202a03(0x17e)]);}export const sqlPull={'service':a156_0x1d4494(0x174),'command':a156_0x1d4494(0x18e),'description':'Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','risk':a156_0x1d4494(0x17b),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a156_0x1d4494(0x182),'type':a156_0x1d4494(0x16d),'description':'Filter\x20by\x20SQL\x20display\x20name'},{'name':a156_0x1d4494(0x17c),'type':a156_0x1d4494(0x15a),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x4e5a6b){const _0x4558af=a156_0x1d4494,_0x37aba2=loadSqlProjectConfig(_0x4e5a6b[_0x4558af(0x161)]),_0x1fb94f=await readSqlLockFile(_0x37aba2[_0x4558af(0x17f)]),{appLock:_0x378e45}=ensureSqlLockScope(_0x1fb94f??createEmptySqlLock(),_0x37aba2[_0x4558af(0x161)],_0x37aba2[_0x4558af(0x156)],_0x4558af(0x18e)),_0x58bbb8=await fetchAllSqlQueries(_0x4e5a6b['appCode'],{'sqlCode':_0x4e5a6b[_0x4558af(0x157)](_0x4558af(0x189))||undefined,'sqlName':_0x4e5a6b[_0x4558af(0x157)](_0x4558af(0x182))||undefined}),_0x3794ce=[];for(const _0x26af6d of _0x58bbb8){const _0x4f492e=await ensureSqlContent(_0x26af6d),_0x51a37e=ensureRemoteSqlContent(_0x4f492e),_0x3db1d8=detectModeFromSql(_0x4f492e),_0x4dc8b1=_0x4f492e[_0x4558af(0x171)]?await getDbName(_0x4e5a6b['appCode'],Number(_0x4f492e[_0x4558af(0x171)]))['catch'](()=>undefined):undefined,_0x5c2876=buildLocalSqlFileContent({'sqlCode':_0x4f492e[_0x4558af(0x17e)],'sqlName':_0x4f492e[_0x4558af(0x16e)],'dbId':_0x4f492e['dbId']},_0x51a37e,{'dbName':_0x4dc8b1,'mode':_0x3db1d8,'syncedAt':new Date()[_0x4558af(0x15b)](),'description':_0x4f492e[_0x4558af(0x187)]}),_0x285671=buildSqlLockEntry(_0x4f492e,_0x51a37e,'',{'dbName':_0x4dc8b1}),_0x35d5ea=resolveLocalSqlFilePath(_0x37aba2,_0x4f492e[_0x4558af(0x17e)],_0x285671);let _0x3b35e8=_0x4558af(0x162),_0x456520;if(await fileExists(_0x35d5ea)){const _0x4e4bf9=await readFile(_0x35d5ea,_0x4558af(0x185));isEquivalentPulledSqlFile(_0x4e4bf9,_0x5c2876,_0x3db1d8)?(_0x3b35e8=_0x4558af(0x172),_0x456520='unchanged'):(_0x3b35e8=_0x4558af(0x16a),_0x456520=_0x4558af(0x15e));}_0x3794ce[_0x4558af(0x153)]({'sqlCode':_0x4f492e[_0x4558af(0x17e)],'sqlName':_0x4f492e['sqlName'],'filePath':_0x35d5ea,'status':_0x3b35e8,'reason':_0x456520});}return{'method':_0x4558af(0x17d),'url':'/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','body':{'appCode':_0x4e5a6b[_0x4558af(0x161)],'sqlCode':_0x4e5a6b[_0x4558af(0x157)](_0x4558af(0x189))||null,'sqlName':_0x4e5a6b[_0x4558af(0x157)](_0x4558af(0x182))||null,'files':_0x3794ce},'description':_0x4558af(0x169)+_0x3794ce['length']+'\x20SQL\x20file(s)\x20into\x20'+_0x37aba2[_0x4558af(0x18a)]};},async 'execute'(_0x6c54da){const _0xa8a25b=a156_0x1d4494,_0x468c3d=loadSqlProjectConfig(_0x6c54da['appCode']),_0xff5a85=await readSqlLockFile(_0x468c3d[_0xa8a25b(0x17f)]),{lockData:_0x4aafac,appLock:_0x4d25cd}=ensureSqlLockScope(_0xff5a85??createEmptySqlLock(),_0x468c3d[_0xa8a25b(0x161)],_0x468c3d[_0xa8a25b(0x156)],_0xa8a25b(0x18e)),_0x283b46=_0x6c54da[_0xa8a25b(0x173)]('force'),_0xa99af0=await fetchAllSqlQueries(_0x6c54da[_0xa8a25b(0x161)],{'sqlCode':_0x6c54da[_0xa8a25b(0x157)](_0xa8a25b(0x189))||undefined,'sqlName':_0x6c54da[_0xa8a25b(0x157)]('name')||undefined});if(_0xa99af0[_0xa8a25b(0x168)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20SQL\x20queries\x20matched.'};const _0x55efa5=[],_0x186241=[];for(const _0x30b3f1 of _0xa99af0){try{_0x55efa5[_0xa8a25b(0x153)](await ensureSqlContent(_0x30b3f1));}catch(_0x3a267d){_0x186241[_0xa8a25b(0x153)]({'sqlCode':_0x30b3f1[_0xa8a25b(0x17e)],'error':_0x3a267d instanceof Error?_0x3a267d[_0xa8a25b(0x155)]:String(_0x3a267d)});}}if(_0x283b46&&!_0x6c54da[_0xa8a25b(0x181)]){let _0x39d5ab=![];for(const _0x44f425 of _0x55efa5){const _0x561dc5=detectModeFromSql(_0x44f425),_0x28d261=_0x44f425['dbId']?await getDbName(_0x6c54da[_0xa8a25b(0x161)],Number(_0x44f425[_0xa8a25b(0x171)]))[_0xa8a25b(0x15c)](()=>undefined):undefined,_0x272e4c=buildLocalSqlFileContent({'sqlCode':_0x44f425[_0xa8a25b(0x17e)],'sqlName':_0x44f425['sqlName'],'dbId':_0x44f425[_0xa8a25b(0x171)]},ensureRemoteSqlContent(_0x44f425),{'dbName':_0x28d261,'mode':_0x561dc5,'syncedAt':new Date()['toISOString'](),'description':_0x44f425[_0xa8a25b(0x187)]}),_0x3a4e8b=resolveLocalSqlFilePath(_0x468c3d,_0x44f425[_0xa8a25b(0x17e)],buildSqlLockEntry(_0x44f425,ensureRemoteSqlContent(_0x44f425),'',{'dbName':_0x28d261}));if(await fileExists(_0x3a4e8b)){const _0x224f5f=await readFile(_0x3a4e8b,_0xa8a25b(0x185));if(!isEquivalentPulledSqlFile(_0x224f5f,_0x272e4c,_0x561dc5)){_0x39d5ab=!![];break;}}}if(_0x39d5ab){const _0x37a83b=await confirmForceOverwrite(_0xa8a25b(0x16b));if(!_0x37a83b)throw CliErrors[_0xa8a25b(0x178)](_0xa8a25b(0x159));}}const _0x379c66=cloneSqlLockData(_0x4aafac),_0x41617b=_0x379c66[_0xa8a25b(0x17a)][_0x468c3d[_0xa8a25b(0x161)]],_0x5e1cc2=[],_0x307062=[];for(const _0x44fd65 of _0x55efa5){const _0x5d2930=_0x41617b['sqls'][_0x44fd65[_0xa8a25b(0x17e)]],_0x146600=ensureRemoteSqlContent(_0x44fd65),_0x135ed6=detectModeFromSql(_0x44fd65),_0x27f29a=_0x44fd65['dbId']?await getDbName(_0x6c54da[_0xa8a25b(0x161)],Number(_0x44fd65[_0xa8a25b(0x171)]))[_0xa8a25b(0x15c)](()=>undefined):undefined,_0x32be88=buildLocalSqlFileContent({'sqlCode':_0x44fd65[_0xa8a25b(0x17e)],'sqlName':_0x44fd65[_0xa8a25b(0x16e)],'dbId':_0x44fd65['dbId']},_0x146600,{'dbName':_0x27f29a,'mode':_0x135ed6,'syncedAt':new Date()[_0xa8a25b(0x15b)](),'description':_0x44fd65[_0xa8a25b(0x187)]}),_0xf34a27=buildSqlLockEntry(_0x44fd65,_0x146600,computeSqlContentHash(_0x32be88),{'dbName':_0x27f29a}),_0x104a71=_0xf34a27['path'],_0x48b8b1=join(_0x468c3d[_0xa8a25b(0x18a)],_0x104a71);try{if(await fileExists(_0x48b8b1)){const _0x11b90a=await readFile(_0x48b8b1,'utf8');if(isEquivalentPulledSqlFile(_0x11b90a,_0x32be88,_0x135ed6)){_0x307062[_0xa8a25b(0x153)]({'sqlCode':_0x44fd65[_0xa8a25b(0x17e)],'reason':'unchanged'}),_0x41617b[_0xa8a25b(0x152)][_0x44fd65[_0xa8a25b(0x17e)]]={..._0xf34a27,'hash':computeSqlContentHash(_0x11b90a),'path':_0x104a71};continue;}if(!_0x283b46){_0x307062['push']({'sqlCode':_0x44fd65[_0xa8a25b(0x17e)],'reason':_0xa8a25b(0x167)});continue;}}const _0x1ed9bc=_0x5d2930?.['path']?join(_0x468c3d[_0xa8a25b(0x18a)],_0x5d2930['path']):undefined;_0x1ed9bc&&_0x1ed9bc!==_0x48b8b1&&await fileExists(_0x1ed9bc)&&await rm(_0x1ed9bc,{'force':!![]}),await ensureParentDirectory(_0x48b8b1),await writeFile(_0x48b8b1,_0x32be88,_0xa8a25b(0x185)),_0x41617b[_0xa8a25b(0x152)][_0x44fd65['sqlCode']]={..._0xf34a27,'path':_0x104a71},_0x5e1cc2[_0xa8a25b(0x153)]({'sqlCode':_0x44fd65[_0xa8a25b(0x17e)],'filePath':_0x48b8b1});}catch(_0x5c5065){_0x186241[_0xa8a25b(0x153)]({'sqlCode':_0x44fd65[_0xa8a25b(0x17e)],'error':_0x5c5065 instanceof Error?_0x5c5065[_0xa8a25b(0x155)]:String(_0x5c5065)});}}return _0x41617b[_0xa8a25b(0x170)]=new Date()['toISOString'](),await writeSqlLockFile(_0x468c3d[_0xa8a25b(0x17f)],_0x379c66),{'ok':_0x186241['length']===0x0,'data':{'pulled':_0x5e1cc2,'skipped':_0x307062,'failed':_0x186241},'message':_0xa8a25b(0x184)+_0x5e1cc2[_0xa8a25b(0x168)]+_0xa8a25b(0x15d)+_0x307062[_0xa8a25b(0x168)]+_0xa8a25b(0x164)+_0x186241['length']+'\x20failed'};}};function detectModeFromSql(_0x15c34f){const _0x504ff9=a156_0x1d4494,_0x4bc26e=ensureRemoteSqlContent(_0x15c34f),_0x18b311=stripLocalSqlMetadata(_0x4bc26e,'mybatisXml')[_0x504ff9(0x158)]();if(/^<(select|insert|update|delete)\b/i[_0x504ff9(0x16c)](_0x18b311))return _0x504ff9(0x160);return'sql';}function isEquivalentPulledSqlFile(_0x4c5f51,_0x4db224,_0x91a4a2){return normalizePullComparableContent(_0x4c5f51,_0x91a4a2)===normalizePullComparableContent(_0x4db224,_0x91a4a2);}function normalizePullComparableContent(_0x479fad,_0x5a090c){const _0x384fb7=a156_0x1d4494,_0x1c7241=_0x479fad[_0x384fb7(0x163)](/\r\n/g,'\x0a')[_0x384fb7(0x186)]('\x0a'),_0x2113b0=_0x1c7241[_0x384fb7(0x180)](_0x176c9e=>!isSyncedAtMetadataLine(_0x176c9e,_0x5a090c));return _0x2113b0['join']('\x0a');}function isSyncedAtMetadataLine(_0x9224c3,_0x4e9181){const _0x2277be=a156_0x1d4494;if(_0x4e9181===_0x2277be(0x160))return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0x2277be(0x16c)](_0x9224c3);return/^\s*--\s*@lovrabet\.syncedAt:/['test'](_0x9224c3);}
@@ -1 +1 @@
1
- const a157_0x58b92b=a157_0x2e17;(function(_0xd9cfa6,_0x37b2d9){const _0x29cb59=a157_0x2e17,_0x440f04=_0xd9cfa6();while(!![]){try{const _0x5b81ec=-parseInt(_0x29cb59(0xdb))/0x1*(parseInt(_0x29cb59(0xfc))/0x2)+parseInt(_0x29cb59(0xff))/0x3+-parseInt(_0x29cb59(0xfe))/0x4*(-parseInt(_0x29cb59(0xef))/0x5)+parseInt(_0x29cb59(0xe8))/0x6+-parseInt(_0x29cb59(0xe9))/0x7+-parseInt(_0x29cb59(0x106))/0x8*(-parseInt(_0x29cb59(0x101))/0x9)+parseInt(_0x29cb59(0x115))/0xa*(-parseInt(_0x29cb59(0xf2))/0xb);if(_0x5b81ec===_0x37b2d9)break;else _0x440f04['push'](_0x440f04['shift']());}catch(_0x375223){_0x440f04['push'](_0x440f04['shift']());}}}(a157_0x15ba,0x62cd1));import{mkdir,readFile,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{updateSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';import{computeSqlFileHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{fileExists}from'../../core/bff/file-system.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildSqlLockEntry,stripLocalSqlMetadata}from'./shared.js';import{buildDbDirectoryName}from'../../core/sql-sync/utils.js';async function getTargetSqlQueries(_0x141c0b,_0x41ced9,_0x440519){const _0x2b5a5c=a157_0x2e17,_0x32022b=await scanLocalSqlQueries(_0x141c0b),_0x5addb5=new Map();for(const _0x1ce246 of _0x32022b){if(_0x440519&&_0x1ce246[_0x2b5a5c(0xe7)]!==_0x440519)continue;const _0x5d325b=_0x5addb5['get'](_0x1ce246[_0x2b5a5c(0xe7)])??[];_0x5d325b[_0x2b5a5c(0xec)](_0x1ce246),_0x5addb5[_0x2b5a5c(0x10d)](_0x1ce246['sqlCode'],_0x5d325b);}if(_0x440519&&!_0x5addb5[_0x2b5a5c(0xe4)](_0x440519))throw CliErrors[_0x2b5a5c(0xdd)](_0x2b5a5c(0xe1)+_0x440519);const _0x4bf22a=[];for(const [_0x19e4a4,_0x52e3ca]of _0x5addb5[_0x2b5a5c(0x10b)]()){if(_0x52e3ca[_0x2b5a5c(0x110)]===0x1){_0x4bf22a[_0x2b5a5c(0xec)](_0x52e3ca[0x0]);continue;}const _0xefa5bd=_0x41ced9[_0x2b5a5c(0xf8)][_0x19e4a4],_0xbc4c46=_0xefa5bd?.[_0x2b5a5c(0xd5)],_0x4deb23=_0xbc4c46?_0x52e3ca[_0x2b5a5c(0x104)](_0x4e64b3=>_0x4e64b3[_0x2b5a5c(0xed)]!==_0xbc4c46):_0x52e3ca;if(_0xefa5bd&&_0x4deb23[_0x2b5a5c(0x110)]===0x1){_0x4bf22a[_0x2b5a5c(0xec)](_0x4deb23[0x0]);continue;}throw CliErrors[_0x2b5a5c(0xdd)](_0x2b5a5c(0xe2)+_0x19e4a4+'.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.');}return _0x4bf22a;}export const sqlPush={'service':a157_0x58b92b(0xd9),'command':a157_0x58b92b(0xec),'description':a157_0x58b92b(0xe0),'risk':a157_0x58b92b(0xf9),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a157_0x58b92b(0x109),'type':a157_0x58b92b(0xda),'description':a157_0x58b92b(0xf7)}],async 'dryRun'(_0x283483){const _0x1ecd8e=a157_0x58b92b,_0x26506d=loadSqlProjectConfig(_0x283483[_0x1ecd8e(0xfa)]),_0x3a3055=await readSqlLockFile(_0x26506d['lockFilePath']),{appLock:_0x54c362}=ensureSqlLockScope(_0x3a3055??createEmptySqlLock(),_0x283483[_0x1ecd8e(0xfa)],_0x26506d[_0x1ecd8e(0x108)],_0x1ecd8e(0xec)),_0x3509f4=await getTargetSqlQueries(_0x26506d,_0x54c362,_0x283483['str']('sqlcode')||undefined),_0x1b3428=[];for(const _0x5bf54c of _0x3509f4){const _0x464e19=await computeSqlFileHash(_0x5bf54c[_0x1ecd8e(0xe6)]),_0x474271=_0x54c362[_0x1ecd8e(0xf8)][_0x5bf54c[_0x1ecd8e(0xe7)]],_0x29fa01=!!_0x474271&&(_0x474271[_0x1ecd8e(0xd5)]!==_0x5bf54c['relativePath']||!!_0x5bf54c[_0x1ecd8e(0x100)]&&_0x474271['sqlName']!==_0x5bf54c[_0x1ecd8e(0x100)]);if(!_0x283483[_0x1ecd8e(0x111)]('force')&&_0x474271&&_0x474271[_0x1ecd8e(0x113)]===_0x464e19&&!_0x29fa01)continue;_0x1b3428[_0x1ecd8e(0xec)](_0x5bf54c['sqlCode']);}return{'method':'POST','url':'/smartapi/custom/updateUserCustomSql','body':{'sqlCodes':_0x1b3428,'appCode':_0x283483[_0x1ecd8e(0xfa)]},'description':_0x1ecd8e(0xdc)+_0x1b3428[_0x1ecd8e(0x110)]+'\x20SQL\x20file(s)'};},async 'execute'(_0x2adbff){const _0x2b19f6=a157_0x58b92b,_0x6084ee=loadSqlProjectConfig(_0x2adbff[_0x2b19f6(0xfa)]),_0x256791=await readSqlLockFile(_0x6084ee[_0x2b19f6(0xd1)]),{lockData:_0x26c127,appLock:_0x98fbcf}=ensureSqlLockScope(_0x256791??createEmptySqlLock(),_0x2adbff[_0x2b19f6(0xfa)],_0x6084ee[_0x2b19f6(0x108)],_0x2b19f6(0xec)),_0x471f80=await getTargetSqlQueries(_0x6084ee,_0x98fbcf,_0x2adbff['str']('sqlcode')||undefined);if(_0x471f80[_0x2b19f6(0x110)]===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':_0x2b19f6(0x105)};const _0x247b73=[],_0x1372a2=[],_0x1dd6f3=[];for(const _0x563460 of _0x471f80){const _0x353a77=_0x98fbcf[_0x2b19f6(0xf8)][_0x563460[_0x2b19f6(0xe7)]];if(!_0x353a77){_0x1dd6f3[_0x2b19f6(0xec)]({'sqlCode':_0x563460[_0x2b19f6(0xe7)],'error':_0x2b19f6(0x107)});continue;}try{const _0x25e1aa=await computeSqlFileHash(_0x563460[_0x2b19f6(0xe6)]),_0x2af8ae=_0x353a77[_0x2b19f6(0xd5)]!==_0x563460[_0x2b19f6(0xed)]||!!_0x563460[_0x2b19f6(0x100)]&&_0x353a77[_0x2b19f6(0x100)]!==_0x563460[_0x2b19f6(0x100)];if(!_0x2adbff['bool'](_0x2b19f6(0x109))&&_0x353a77['hash']===_0x25e1aa&&!_0x2af8ae){_0x1372a2[_0x2b19f6(0xec)]({'sqlCode':_0x563460[_0x2b19f6(0xe7)],'reason':_0x2b19f6(0xf5)});continue;}if(_0x353a77[_0x2b19f6(0xf6)]==null){_0x1dd6f3[_0x2b19f6(0xec)]({'sqlCode':_0x563460['sqlCode'],'error':_0x2b19f6(0xea)});continue;}const _0x1f516c=await readFile(_0x563460[_0x2b19f6(0xe6)],_0x2b19f6(0x10c)),_0x4a2d31=stripLocalSqlMetadata(_0x1f516c,_0x563460[_0x2b19f6(0xee)]),_0x58f3eb=_0x563460[_0x2b19f6(0x100)]||_0x353a77['sqlName'],_0x4f068a=await resolveTargetDbBinding(_0x2adbff[_0x2b19f6(0xfa)],_0x563460,_0x353a77),_0x4d05cc=await updateSqlQuery({'id':_0x353a77[_0x2b19f6(0xe5)],'appCode':_0x2adbff['appCode'],'sqlCode':_0x563460[_0x2b19f6(0xe7)],'sqlName':_0x58f3eb,'dbId':_0x4f068a[_0x2b19f6(0xd3)],'version':_0x353a77[_0x2b19f6(0xf6)],'sqlContent':_0x4a2d31,'sqlConfig':_0x353a77[_0x2b19f6(0x112)]??undefined}),_0x243e6b=_0x4d05cc[_0x2b19f6(0xd3)]?await getDbName(_0x2adbff[_0x2b19f6(0xfa)],Number(_0x4d05cc[_0x2b19f6(0xd3)]))[_0x2b19f6(0xd7)](()=>_0x4f068a[_0x2b19f6(0xd2)]):_0x4f068a[_0x2b19f6(0xd2)];_0x98fbcf[_0x2b19f6(0xf8)][_0x563460['sqlCode']]={...buildSqlLockEntry(_0x4d05cc,_0x4a2d31,_0x25e1aa,{'dbName':_0x243e6b}),'path':_0x563460[_0x2b19f6(0xed)],'mode':_0x353a77[_0x2b19f6(0xee)]},await archivePreviousSqlFileIfNeeded(_0x6084ee,_0x353a77[_0x2b19f6(0xd5)],_0x563460[_0x2b19f6(0xed)]),_0x247b73[_0x2b19f6(0xec)]({'sqlCode':_0x563460['sqlCode'],'remoteId':_0x353a77[_0x2b19f6(0xe5)]});}catch(_0x3a1d10){_0x1dd6f3[_0x2b19f6(0xec)]({'sqlCode':_0x563460['sqlCode'],'error':_0x3a1d10 instanceof Error?_0x3a1d10[_0x2b19f6(0x102)]:String(_0x3a1d10)});}}return _0x98fbcf[_0x2b19f6(0x10f)]=new Date()[_0x2b19f6(0x10e)](),await writeSqlLockFile(_0x6084ee[_0x2b19f6(0xd1)],_0x26c127),{'ok':_0x1dd6f3[_0x2b19f6(0x110)]===0x0,'data':{'pushed':_0x247b73,'skipped':_0x1372a2,'failed':_0x1dd6f3},'message':_0x2b19f6(0x114)+_0x247b73['length']+_0x2b19f6(0xde)+_0x1372a2[_0x2b19f6(0x110)]+_0x2b19f6(0xdf)+_0x1dd6f3[_0x2b19f6(0x110)]+_0x2b19f6(0xf4)};}};async function archivePreviousSqlFileIfNeeded(_0x5da45b,_0xac6fa5,_0x2c2832){const _0x50fc11=a157_0x58b92b;if(!_0xac6fa5||_0xac6fa5===_0x2c2832)return;const _0xd7f849=join(_0x5da45b['sqlRootDir'],_0xac6fa5);if(!await fileExists(_0xd7f849))return;const _0x455547=await moveToTrash(_0x5da45b[_0x50fc11(0x116)],_0x5da45b[_0x50fc11(0xeb)],_0xd7f849);await cleanupEmptyDirectories(dirname(_0xd7f849),_0x5da45b[_0x50fc11(0xe3)]),void _0x455547;}async function moveToTrash(_0x1b3a2b,_0x17956c,_0x4d75c9){const _0x34d5c4=a157_0x58b92b,_0x40aa82=new Date()[_0x34d5c4(0x10e)]()[_0x34d5c4(0xf3)](/[:.]/g,'-'),_0x4a6c90=relative(_0x1b3a2b,_0x4d75c9),_0x44354a=join(_0x17956c,_0x40aa82,_0x4a6c90);return await mkdir(dirname(_0x44354a),{'recursive':!![]}),await rename(_0x4d75c9,_0x44354a),_0x44354a;}async function cleanupEmptyDirectories(_0x492fd1,_0x336f5c){const _0x446e3c=a157_0x58b92b;let _0x2286c7=resolve(_0x492fd1);const _0x3cd2bb=resolve(_0x336f5c);while(_0x2286c7[_0x446e3c(0xf0)](''+_0x3cd2bb+sep)||_0x2286c7===_0x3cd2bb){if(_0x2286c7===_0x3cd2bb)return;try{const _0x22c95b=await readdir(_0x2286c7);if(_0x22c95b[_0x446e3c(0x110)]>0x0)return;await rmdir(_0x2286c7);}catch{return;}_0x2286c7=dirname(_0x2286c7);}}function a157_0x2e17(_0x37cc9c,_0x55cce2){_0x37cc9c=_0x37cc9c-0xd1;const _0x15baa2=a157_0x15ba();let _0x2e17e6=_0x15baa2[_0x37cc9c];return _0x2e17e6;}function a157_0x15ba(){const _0x288b68=['57HXiMVX','Would\x20push\x20','validation','\x20pushed,\x20','\x20skipped,\x20','Push\x20local\x20SQL\x20files\x20to\x20remote','Local\x20SQL\x20not\x20found:\x20','Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20','sqlRootDir','has','remoteId','filePath','sqlCode','3034740sdewdr','1306893IuGqvl','missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first','trashDir','push','relativePath','mode','1941275ITvEkW','startsWith','Local\x20directory\x20\x22','1833502WpdAGO','replace','\x20failed','unchanged','version','Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock','sqls','high-risk-write','appCode','isFinite','21918iBSWwd','\x22\x20for\x20sqlCode\x20','4okGxzo','1541580ZwwKsd','sqlName','7155PsmNuq','message','join','filter','No\x20local\x20SQL\x20files\x20found.','1424tqNSUh','local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first','sqlRoot','force','dbDirectory','entries','utf8','set','toISOString','lastSync','length','bool','sqlConfig','hash','Push\x20complete:\x20','20bpXBQk','projectRoot','lockFilePath','dbName','dbId','exec','path','No\x20database\x20matches\x20local\x20directory\x20\x22','catch','map','sql','boolean'];a157_0x15ba=function(){return _0x288b68;};return a157_0x15ba();}async function resolveTargetDbBinding(_0x4c60ce,_0x2d6e91,_0x2c80e5){const _0xffeba4=a157_0x58b92b,_0x49beb7=_0x2d6e91[_0xffeba4(0x10a)];if(!_0x49beb7)return{'dbId':_0x2c80e5[_0xffeba4(0xd3)],'dbName':_0x2c80e5[_0xffeba4(0xd2)]};const _0x19879e=buildDbDirectoryName(_0x2c80e5[_0xffeba4(0xd2)],_0x2c80e5['dbId']);if(_0x49beb7===_0x19879e)return{'dbId':_0x2c80e5['dbId'],'dbName':_0x2c80e5['dbName']};const _0x1801ab=parseExplicitDbDirectory(_0x49beb7);if(_0x1801ab!=null)return{'dbId':_0x1801ab,'dbName':await getDbName(_0x4c60ce,_0x1801ab)[_0xffeba4(0xd7)](()=>undefined)};const _0x3c5d6f=await listDatabases(_0x4c60ce),_0xba45af=_0x3c5d6f[_0xffeba4(0x104)](_0x562c4a=>buildDbDirectoryName(_0x562c4a['dbName'],_0x562c4a['dbId'])===_0x49beb7);if(_0xba45af[_0xffeba4(0x110)]===0x1)return{'dbId':_0xba45af[0x0]['dbId'],'dbName':_0xba45af[0x0][_0xffeba4(0xd2)]};if(_0xba45af['length']===0x0)throw CliErrors[_0xffeba4(0xdd)](_0xffeba4(0xd6)+_0x49beb7+_0xffeba4(0xfd)+_0x2d6e91['sqlCode']+'.');const _0x4e9190=_0xba45af[_0xffeba4(0xd8)](_0x510ba7=>_0x510ba7[_0xffeba4(0xd2)]+'\x20('+_0x510ba7['dbId']+')')[_0xffeba4(0x103)](',\x20');throw CliErrors['validation'](_0xffeba4(0xf1)+_0x49beb7+'\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20'+_0x2d6e91[_0xffeba4(0xe7)]+':\x20'+_0x4e9190);}function parseExplicitDbDirectory(_0x4e1799){const _0x29cf83=a157_0x58b92b,_0x3a907e=/^db-(\d+)$/[_0x29cf83(0xd4)](_0x4e1799);if(!_0x3a907e)return null;const _0x568adc=Number(_0x3a907e[0x1]);return Number[_0x29cf83(0xfb)](_0x568adc)&&_0x568adc>0x0?_0x568adc:null;}
1
+ const a157_0x30af38=a157_0x24b1;(function(_0x4d2c95,_0x48b3f4){const _0x50122e=a157_0x24b1,_0x20b9ae=_0x4d2c95();while(!![]){try{const _0x2851b3=-parseInt(_0x50122e(0x1c4))/0x1+-parseInt(_0x50122e(0x19d))/0x2*(-parseInt(_0x50122e(0x1bb))/0x3)+parseInt(_0x50122e(0x1bd))/0x4+parseInt(_0x50122e(0x199))/0x5*(-parseInt(_0x50122e(0x1cc))/0x6)+parseInt(_0x50122e(0x1d9))/0x7*(parseInt(_0x50122e(0x1ba))/0x8)+-parseInt(_0x50122e(0x1ac))/0x9*(-parseInt(_0x50122e(0x1c5))/0xa)+-parseInt(_0x50122e(0x1b2))/0xb;if(_0x2851b3===_0x48b3f4)break;else _0x20b9ae['push'](_0x20b9ae['shift']());}catch(_0x373bbd){_0x20b9ae['push'](_0x20b9ae['shift']());}}}(a157_0x2ea8,0xefaf7));import{mkdir,readFile,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{updateSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';import{computeSqlFileHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{fileExists}from'../../core/bff/file-system.js';function a157_0x24b1(_0x166332,_0x3a1614){_0x166332=_0x166332-0x199;const _0x2ea8d7=a157_0x2ea8();let _0x24b100=_0x2ea8d7[_0x166332];return _0x24b100;}import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildSqlLockEntry,stripLocalSqlMetadata}from'./shared.js';import{buildDbDirectoryName}from'../../core/sql-sync/utils.js';async function getTargetSqlQueries(_0x15c6e6,_0x12d2f5,_0x151dbb){const _0x403e8c=a157_0x24b1,_0x3ac51b=await scanLocalSqlQueries(_0x15c6e6),_0x3318fa=new Map();for(const _0x2320ec of _0x3ac51b){if(_0x151dbb&&_0x2320ec[_0x403e8c(0x1d5)]!==_0x151dbb)continue;const _0x329a30=_0x3318fa[_0x403e8c(0x19b)](_0x2320ec[_0x403e8c(0x1d5)])??[];_0x329a30[_0x403e8c(0x1d1)](_0x2320ec),_0x3318fa['set'](_0x2320ec['sqlCode'],_0x329a30);}if(_0x151dbb&&!_0x3318fa[_0x403e8c(0x1d2)](_0x151dbb))throw CliErrors[_0x403e8c(0x1b6)](_0x403e8c(0x1b1)+_0x151dbb);const _0x218edd=[];for(const [_0x95e943,_0x1aaedc]of _0x3318fa[_0x403e8c(0x1ca)]()){if(_0x1aaedc[_0x403e8c(0x1cd)]===0x1){_0x218edd[_0x403e8c(0x1d1)](_0x1aaedc[0x0]);continue;}const _0x29305b=_0x12d2f5[_0x403e8c(0x1da)][_0x95e943],_0x374668=_0x29305b?.[_0x403e8c(0x1a9)],_0x4f09fb=_0x374668?_0x1aaedc[_0x403e8c(0x1cf)](_0x4f9279=>_0x4f9279[_0x403e8c(0x1a2)]!==_0x374668):_0x1aaedc;if(_0x29305b&&_0x4f09fb[_0x403e8c(0x1cd)]===0x1){_0x218edd['push'](_0x4f09fb[0x0]);continue;}throw CliErrors[_0x403e8c(0x1b6)](_0x403e8c(0x1ab)+_0x95e943+'.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.');}return _0x218edd;}export const sqlPush={'service':a157_0x30af38(0x1b0),'command':a157_0x30af38(0x1d1),'description':a157_0x30af38(0x1d7),'risk':a157_0x30af38(0x1c7),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':'force','type':a157_0x30af38(0x19c),'description':'Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock'}],async 'dryRun'(_0x2da79b){const _0x1f601a=a157_0x30af38,_0x416839=loadSqlProjectConfig(_0x2da79b[_0x1f601a(0x1af)]),_0x574d00=await readSqlLockFile(_0x416839[_0x1f601a(0x1d4)]),{appLock:_0x938628}=ensureSqlLockScope(_0x574d00??createEmptySqlLock(),_0x2da79b['appCode'],_0x416839[_0x1f601a(0x1a6)],_0x1f601a(0x1d1)),_0x514fe4=await getTargetSqlQueries(_0x416839,_0x938628,_0x2da79b[_0x1f601a(0x1d0)]('sqlcode')||undefined),_0x55a62d=[];for(const _0x430bec of _0x514fe4){const _0x47a058=await computeSqlFileHash(_0x430bec[_0x1f601a(0x1a3)]),_0x58fc41=_0x938628['sqls'][_0x430bec[_0x1f601a(0x1d5)]],_0x2389e0=!!_0x58fc41&&(_0x58fc41['path']!==_0x430bec[_0x1f601a(0x1a2)]||!!_0x430bec[_0x1f601a(0x1b4)]&&_0x58fc41[_0x1f601a(0x1b4)]!==_0x430bec['sqlName']);if(!_0x2da79b[_0x1f601a(0x1be)](_0x1f601a(0x1aa))&&_0x58fc41&&_0x58fc41[_0x1f601a(0x1d6)]===_0x47a058&&!_0x2389e0)continue;_0x55a62d[_0x1f601a(0x1d1)](_0x430bec[_0x1f601a(0x1d5)]);}return{'method':'POST','url':_0x1f601a(0x1b9),'body':{'sqlCodes':_0x55a62d,'appCode':_0x2da79b['appCode']},'description':_0x1f601a(0x1ce)+_0x55a62d['length']+_0x1f601a(0x1b8)};},async 'execute'(_0x57056b){const _0x4876f3=a157_0x30af38,_0x27980a=loadSqlProjectConfig(_0x57056b[_0x4876f3(0x1af)]),_0x46544d=await readSqlLockFile(_0x27980a['lockFilePath']),{lockData:_0x51b51c,appLock:_0x59f7c1}=ensureSqlLockScope(_0x46544d??createEmptySqlLock(),_0x57056b[_0x4876f3(0x1af)],_0x27980a[_0x4876f3(0x1a6)],_0x4876f3(0x1d1)),_0x71fdea=await getTargetSqlQueries(_0x27980a,_0x59f7c1,_0x57056b[_0x4876f3(0x1d0)]('sqlcode')||undefined);if(_0x71fdea['length']===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':_0x4876f3(0x1c8)};const _0x30cf3=[],_0x5220da=[],_0x4884c8=[];for(const _0xac35c5 of _0x71fdea){const _0x1576a2=_0x59f7c1['sqls'][_0xac35c5[_0x4876f3(0x1d5)]];if(!_0x1576a2){_0x4884c8['push']({'sqlCode':_0xac35c5[_0x4876f3(0x1d5)],'error':_0x4876f3(0x1b5)});continue;}try{const _0x1690b5=await computeSqlFileHash(_0xac35c5[_0x4876f3(0x1a3)]),_0xd317ee=_0x1576a2[_0x4876f3(0x1a9)]!==_0xac35c5[_0x4876f3(0x1a2)]||!!_0xac35c5[_0x4876f3(0x1b4)]&&_0x1576a2[_0x4876f3(0x1b4)]!==_0xac35c5[_0x4876f3(0x1b4)];if(!_0x57056b[_0x4876f3(0x1be)](_0x4876f3(0x1aa))&&_0x1576a2[_0x4876f3(0x1d6)]===_0x1690b5&&!_0xd317ee){_0x5220da['push']({'sqlCode':_0xac35c5[_0x4876f3(0x1d5)],'reason':_0x4876f3(0x1bc)});continue;}if(_0x1576a2[_0x4876f3(0x1c6)]==null){_0x4884c8['push']({'sqlCode':_0xac35c5[_0x4876f3(0x1d5)],'error':_0x4876f3(0x1c9)});continue;}const _0x3c6b25=await readFile(_0xac35c5[_0x4876f3(0x1a3)],_0x4876f3(0x1ae)),_0x10339c=stripLocalSqlMetadata(_0x3c6b25,_0xac35c5[_0x4876f3(0x1d3)]),_0x1cbe1c=_0xac35c5[_0x4876f3(0x1b4)]||_0x1576a2['sqlName'],_0xe5e84c=await resolveTargetDbBinding(_0x57056b[_0x4876f3(0x1af)],_0xac35c5,_0x1576a2),_0x5eea57=await updateSqlQuery({'id':_0x1576a2[_0x4876f3(0x19f)],'appCode':_0x57056b[_0x4876f3(0x1af)],'sqlCode':_0xac35c5[_0x4876f3(0x1d5)],'sqlName':_0x1cbe1c,'dbId':_0xe5e84c[_0x4876f3(0x1d8)],'version':_0x1576a2['version'],'sqlContent':_0x10339c,'sqlConfig':_0x1576a2[_0x4876f3(0x1a8)]??undefined}),_0x21afb8=_0x5eea57[_0x4876f3(0x1d8)]?await getDbName(_0x57056b['appCode'],Number(_0x5eea57[_0x4876f3(0x1d8)]))[_0x4876f3(0x19a)](()=>_0xe5e84c[_0x4876f3(0x19e)]):_0xe5e84c[_0x4876f3(0x19e)];_0x59f7c1[_0x4876f3(0x1da)][_0xac35c5['sqlCode']]={...buildSqlLockEntry(_0x5eea57,_0x10339c,_0x1690b5,{'dbName':_0x21afb8}),'path':_0xac35c5[_0x4876f3(0x1a2)],'mode':_0x1576a2[_0x4876f3(0x1d3)]},await archivePreviousSqlFileIfNeeded(_0x27980a,_0x1576a2[_0x4876f3(0x1a9)],_0xac35c5[_0x4876f3(0x1a2)]),_0x30cf3['push']({'sqlCode':_0xac35c5[_0x4876f3(0x1d5)],'remoteId':_0x1576a2[_0x4876f3(0x19f)]});}catch(_0x180b72){_0x4884c8[_0x4876f3(0x1d1)]({'sqlCode':_0xac35c5['sqlCode'],'error':_0x180b72 instanceof Error?_0x180b72[_0x4876f3(0x1a5)]:String(_0x180b72)});}}return _0x59f7c1['lastSync']=new Date()[_0x4876f3(0x1c0)](),await writeSqlLockFile(_0x27980a[_0x4876f3(0x1d4)],_0x51b51c),{'ok':_0x4884c8[_0x4876f3(0x1cd)]===0x0,'data':{'pushed':_0x30cf3,'skipped':_0x5220da,'failed':_0x4884c8},'message':_0x4876f3(0x1c3)+_0x30cf3[_0x4876f3(0x1cd)]+'\x20pushed,\x20'+_0x5220da['length']+_0x4876f3(0x1b7)+_0x4884c8[_0x4876f3(0x1cd)]+_0x4876f3(0x1a4)};}};function a157_0x2ea8(){const _0x1fb3a9=['utf8','appCode','sql','Local\x20SQL\x20not\x20found:\x20','19875625QAvLfP','startsWith','sqlName','local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first','validation','\x20skipped,\x20','\x20SQL\x20file(s)','/smartapi/custom/updateUserCustomSql','58584AmuIzu','1059fVRMya','unchanged','1377732ihtlmr','bool','\x22\x20for\x20sqlCode\x20','toISOString','isFinite','sqlRootDir','Push\x20complete:\x20','133152ZabRlb','14290aTKRMq','version','high-risk-write','No\x20local\x20SQL\x20files\x20found.','missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first','entries','join','6OcqwYf','length','Would\x20push\x20','filter','str','push','has','mode','lockFilePath','sqlCode','hash','Push\x20local\x20SQL\x20files\x20to\x20remote','dbId','1806zTxbVm','sqls','8941655DDnZwj','catch','get','boolean','5602ylGjkO','dbName','remoteId','map','No\x20database\x20matches\x20local\x20directory\x20\x22','relativePath','filePath','\x20failed','message','sqlRoot','dbDirectory','sqlConfig','path','force','Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20','9369ruHmjQ','projectRoot'];a157_0x2ea8=function(){return _0x1fb3a9;};return a157_0x2ea8();}async function archivePreviousSqlFileIfNeeded(_0x2cd0ad,_0x359692,_0x4ca923){const _0x170a7d=a157_0x30af38;if(!_0x359692||_0x359692===_0x4ca923)return;const _0x3a85f0=join(_0x2cd0ad['sqlRootDir'],_0x359692);if(!await fileExists(_0x3a85f0))return;const _0x8b101d=await moveToTrash(_0x2cd0ad[_0x170a7d(0x1ad)],_0x2cd0ad['trashDir'],_0x3a85f0);await cleanupEmptyDirectories(dirname(_0x3a85f0),_0x2cd0ad[_0x170a7d(0x1c2)]),void _0x8b101d;}async function moveToTrash(_0x282920,_0x41af02,_0x26ca4e){const _0x117368=a157_0x30af38,_0x4f4147=new Date()[_0x117368(0x1c0)]()['replace'](/[:.]/g,'-'),_0x3ff3d8=relative(_0x282920,_0x26ca4e),_0x58e10e=join(_0x41af02,_0x4f4147,_0x3ff3d8);return await mkdir(dirname(_0x58e10e),{'recursive':!![]}),await rename(_0x26ca4e,_0x58e10e),_0x58e10e;}async function cleanupEmptyDirectories(_0x5a04ac,_0x4283c9){const _0x541553=a157_0x30af38;let _0x226c02=resolve(_0x5a04ac);const _0xed768e=resolve(_0x4283c9);while(_0x226c02[_0x541553(0x1b3)](''+_0xed768e+sep)||_0x226c02===_0xed768e){if(_0x226c02===_0xed768e)return;try{const _0x581f5b=await readdir(_0x226c02);if(_0x581f5b[_0x541553(0x1cd)]>0x0)return;await rmdir(_0x226c02);}catch{return;}_0x226c02=dirname(_0x226c02);}}async function resolveTargetDbBinding(_0x1db3f9,_0x214b38,_0x428314){const _0xae4fa7=a157_0x30af38,_0x467e3c=_0x214b38[_0xae4fa7(0x1a7)];if(!_0x467e3c)return{'dbId':_0x428314[_0xae4fa7(0x1d8)],'dbName':_0x428314[_0xae4fa7(0x19e)]};const _0xf6558a=buildDbDirectoryName(_0x428314['dbName'],_0x428314['dbId']);if(_0x467e3c===_0xf6558a)return{'dbId':_0x428314[_0xae4fa7(0x1d8)],'dbName':_0x428314['dbName']};const _0x4b3a5d=parseExplicitDbDirectory(_0x467e3c);if(_0x4b3a5d!=null)return{'dbId':_0x4b3a5d,'dbName':await getDbName(_0x1db3f9,_0x4b3a5d)['catch'](()=>undefined)};const _0x301d65=await listDatabases(_0x1db3f9),_0x546b3f=_0x301d65['filter'](_0x103fc0=>buildDbDirectoryName(_0x103fc0['dbName'],_0x103fc0[_0xae4fa7(0x1d8)])===_0x467e3c);if(_0x546b3f[_0xae4fa7(0x1cd)]===0x1)return{'dbId':_0x546b3f[0x0]['dbId'],'dbName':_0x546b3f[0x0]['dbName']};if(_0x546b3f[_0xae4fa7(0x1cd)]===0x0)throw CliErrors[_0xae4fa7(0x1b6)](_0xae4fa7(0x1a1)+_0x467e3c+_0xae4fa7(0x1bf)+_0x214b38[_0xae4fa7(0x1d5)]+'.');const _0x126973=_0x546b3f[_0xae4fa7(0x1a0)](_0x281ae3=>_0x281ae3[_0xae4fa7(0x19e)]+'\x20('+_0x281ae3[_0xae4fa7(0x1d8)]+')')[_0xae4fa7(0x1cb)](',\x20');throw CliErrors[_0xae4fa7(0x1b6)]('Local\x20directory\x20\x22'+_0x467e3c+'\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20'+_0x214b38[_0xae4fa7(0x1d5)]+':\x20'+_0x126973);}function parseExplicitDbDirectory(_0x2f8e28){const _0x3a04fe=a157_0x30af38,_0x4fece5=/^db-(\d+)$/['exec'](_0x2f8e28);if(!_0x4fece5)return null;const _0x4f8fa7=Number(_0x4fece5[0x1]);return Number[_0x3a04fe(0x1c1)](_0x4f8fa7)&&_0x4f8fa7>0x0?_0x4f8fa7:null;}
@@ -1 +1 @@
1
- const a158_0x1fe889=a158_0x490a;function a158_0x490a(_0x399eac,_0x28aac8){_0x399eac=_0x399eac-0x16c;const _0x1d74f5=a158_0x1d74();let _0x490afb=_0x1d74f5[_0x399eac];return _0x490afb;}(function(_0x363d43,_0x211ec){const _0x9ba1d6=a158_0x490a,_0x3c5a24=_0x363d43();while(!![]){try{const _0x4d2a17=-parseInt(_0x9ba1d6(0x180))/0x1+parseInt(_0x9ba1d6(0x17e))/0x2+parseInt(_0x9ba1d6(0x171))/0x3+-parseInt(_0x9ba1d6(0x176))/0x4+parseInt(_0x9ba1d6(0x17b))/0x5+parseInt(_0x9ba1d6(0x17a))/0x6*(-parseInt(_0x9ba1d6(0x181))/0x7)+parseInt(_0x9ba1d6(0x173))/0x8*(parseInt(_0x9ba1d6(0x175))/0x9);if(_0x4d2a17===_0x211ec)break;else _0x3c5a24['push'](_0x3c5a24['shift']());}catch(_0x3957ce){_0x3c5a24['push'](_0x3c5a24['shift']());}}}(a158_0x1d74,0x21b64));function a158_0x1d74(){const _0x1982a3=['118805EsvtVZ','Create\x20new\x20SQL\x20with\x20`rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml`.','Query\x20description','137640CGZJFq','file','216420qTUBIs','217qHDAeq','Path\x20to\x20the\x20SQL\x20file','Deprecated:\x20use\x20sql\x20create\x20to\x20create\x20and\x20sql\x20push\x20to\x20update','Target\x20database\x20—\x20accepts\x20a\x20numeric\x20ID\x20or\x20database\x20name\x20(e.g.\x20ecommerce_db)','save','SQL\x20query\x20display\x20name','95823MJIwkP','Update\x20existing\x20SQL\x20by\x20editing\x20the\x20synced\x20file\x20under\x20`.rabetbase/sql/<appCode>/<dbName|db-<id>>/`\x20and\x20then\x20running\x20`rabetbase\x20sql\x20push\x20--sqlcode\x20<code>\x20--yes`.','16kxylgV','write','1536993OhJIHT','408220VcjAuF','string','sqlname','validation','1842RESysZ'];a158_0x1d74=function(){return _0x1982a3;};return a158_0x1d74();}import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';const SQL_SAVE_DEPRECATED_HINT=['`rabetbase\x20sql\x20save`\x20has\x20been\x20deprecated.',a158_0x1fe889(0x17c),a158_0x1fe889(0x172)]['join']('\x0a');export const sqlSave={'service':'sql','command':a158_0x1fe889(0x16f),'description':a158_0x1fe889(0x16d),'risk':a158_0x1fe889(0x174),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a158_0x1fe889(0x17f),'type':a158_0x1fe889(0x177),'required':!![],'description':a158_0x1fe889(0x16c)},SQLCODE_FLAG_OPTIONAL,{'name':a158_0x1fe889(0x178),'type':a158_0x1fe889(0x177),'description':a158_0x1fe889(0x170)},{'name':'db','type':a158_0x1fe889(0x177),'description':a158_0x1fe889(0x16e)},{'name':'description','type':a158_0x1fe889(0x177),'description':a158_0x1fe889(0x17d)}],async 'validate'(){throw CliErrors['validation'](SQL_SAVE_DEPRECATED_HINT);},async 'execute'(){const _0xcf2381=a158_0x1fe889;throw CliErrors[_0xcf2381(0x179)](SQL_SAVE_DEPRECATED_HINT);}};
1
+ const a158_0x5ac2b6=a158_0x2eb3;(function(_0x513bae,_0x11d3b6){const _0x23646a=a158_0x2eb3,_0x2e78fc=_0x513bae();while(!![]){try{const _0x5be110=parseInt(_0x23646a(0x1d0))/0x1+parseInt(_0x23646a(0x1c5))/0x2*(parseInt(_0x23646a(0x1cc))/0x3)+parseInt(_0x23646a(0x1d4))/0x4+-parseInt(_0x23646a(0x1d9))/0x5*(parseInt(_0x23646a(0x1d3))/0x6)+-parseInt(_0x23646a(0x1d6))/0x7+parseInt(_0x23646a(0x1d7))/0x8+-parseInt(_0x23646a(0x1c9))/0x9;if(_0x5be110===_0x11d3b6)break;else _0x2e78fc['push'](_0x2e78fc['shift']());}catch(_0x485d6b){_0x2e78fc['push'](_0x2e78fc['shift']());}}}(a158_0x17e8,0x7a27b));import{CliErrors}from'../../errors.js';function a158_0x17e8(){const _0x7ef5d5=['975hPCLVR','sql','join','sqlname','125912HFbxlb','Deprecated:\x20use\x20sql\x20create\x20to\x20create\x20and\x20sql\x20push\x20to\x20update','validation','file','3620367OOdyIK','SQL\x20query\x20display\x20name','description','27bdPBWg','Target\x20database\x20—\x20accepts\x20a\x20numeric\x20ID\x20or\x20database\x20name\x20(e.g.\x20ecommerce_db)','string','save','137219ZFRUTM','Update\x20existing\x20SQL\x20by\x20editing\x20the\x20synced\x20file\x20under\x20`.rabetbase/sql/<appCode>/<dbName|db-<id>>/`\x20and\x20then\x20running\x20`rabetbase\x20sql\x20push\x20--sqlcode\x20<code>\x20--yes`.','`rabetbase\x20sql\x20save`\x20has\x20been\x20deprecated.','10518vgyIWB','2851904FtpMNq','write','2689498ljbbNi','1694880zGqdbu','Path\x20to\x20the\x20SQL\x20file'];a158_0x17e8=function(){return _0x7ef5d5;};return a158_0x17e8();}import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a158_0x2eb3(_0x5491ef,_0x26f376){_0x5491ef=_0x5491ef-0x1c2;const _0x17e8fa=a158_0x17e8();let _0x2eb3c5=_0x17e8fa[_0x5491ef];return _0x2eb3c5;}const SQL_SAVE_DEPRECATED_HINT=[a158_0x5ac2b6(0x1d2),'Create\x20new\x20SQL\x20with\x20`rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml`.',a158_0x5ac2b6(0x1d1)][a158_0x5ac2b6(0x1c3)]('\x0a');export const sqlSave={'service':a158_0x5ac2b6(0x1c2),'command':a158_0x5ac2b6(0x1cf),'description':a158_0x5ac2b6(0x1c6),'risk':a158_0x5ac2b6(0x1d5),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a158_0x5ac2b6(0x1c8),'type':a158_0x5ac2b6(0x1ce),'required':!![],'description':a158_0x5ac2b6(0x1d8)},SQLCODE_FLAG_OPTIONAL,{'name':a158_0x5ac2b6(0x1c4),'type':'string','description':a158_0x5ac2b6(0x1ca)},{'name':'db','type':a158_0x5ac2b6(0x1ce),'description':a158_0x5ac2b6(0x1cd)},{'name':a158_0x5ac2b6(0x1cb),'type':a158_0x5ac2b6(0x1ce),'description':'Query\x20description'}],async 'validate'(){const _0x14295e=a158_0x5ac2b6;throw CliErrors[_0x14295e(0x1c7)](SQL_SAVE_DEPRECATED_HINT);},async 'execute'(){throw CliErrors['validation'](SQL_SAVE_DEPRECATED_HINT);}};
@@ -1 +1 @@
1
- const a159_0x4cc746=a159_0x2015;(function(_0x496d60,_0x288727){const _0x577478=a159_0x2015,_0x330551=_0x496d60();while(!![]){try{const _0x2dcc0a=-parseInt(_0x577478(0x151))/0x1*(-parseInt(_0x577478(0x153))/0x2)+-parseInt(_0x577478(0x136))/0x3*(-parseInt(_0x577478(0x13c))/0x4)+parseInt(_0x577478(0x144))/0x5+parseInt(_0x577478(0x139))/0x6+-parseInt(_0x577478(0x15b))/0x7*(-parseInt(_0x577478(0x130))/0x8)+parseInt(_0x577478(0x14f))/0x9*(-parseInt(_0x577478(0x135))/0xa)+-parseInt(_0x577478(0x14a))/0xb;if(_0x2dcc0a===_0x288727)break;else _0x330551['push'](_0x330551['shift']());}catch(_0x1465b9){_0x330551['push'](_0x330551['shift']());}}}(a159_0x5aea,0xd11af));import{createInterface}from'node:readline';import{join}from'node:path';import{buildDefaultSqlFileName,buildSqlRelativePath,detectSqlMode}from'../../core/sql-sync/utils.js';export const SQL_LOCAL_REL_DIR=a159_0x4cc746(0x134);export function buildSqlLockEntry(_0x531adb,_0x2c87ba,_0x4bdc59,_0x5314d9){const _0x143d89=a159_0x4cc746,_0xa82993=detectSqlMode(_0x2c87ba);return{'path':buildSqlRelativePath(_0x531adb['sqlCode'],_0x531adb[_0x143d89(0x149)],_0x5314d9?.[_0x143d89(0x131)],_0xa82993,_0x531adb[_0x143d89(0x146)]),'hash':_0x4bdc59,'remoteId':_0x531adb['id'],'version':_0x531adb['version'],'dbId':Number(_0x531adb['dbId']),'dbName':_0x5314d9?.['dbName'],'sqlName':_0x531adb['sqlName'],'sqlConfig':_0x531adb[_0x143d89(0x14d)]??undefined,'mode':_0xa82993};}export function cloneSqlLockData(_0x12f302){const _0x5ab176=a159_0x4cc746;return{'apps':Object[_0x5ab176(0x14c)](Object[_0x5ab176(0x132)](_0x12f302[_0x5ab176(0x13a)])['map'](([_0x3049cb,_0x49f8e7])=>[_0x3049cb,{'sqlRoot':_0x49f8e7['sqlRoot'],'lastSync':_0x49f8e7[_0x5ab176(0x159)],'sqls':{..._0x49f8e7[_0x5ab176(0x13d)]}}]))};}export function ensureRemoteSqlContent(_0x39fb03){const _0x51707d=a159_0x4cc746;return _0x39fb03[_0x51707d(0x155)]??'';}export function buildLocalSqlFileContent(_0x4c7cd8,_0x5423a5,_0x56285b){const _0x5a44d1=a159_0x4cc746,_0x5f42e8=_0x56285b?.['mode']??detectSqlMode(_0x5423a5),_0x21fac3=stripLocalSqlMetadata(_0x5423a5,_0x5f42e8)[_0x5a44d1(0x14e)](),_0x43388b=[...buildMetadataHeaderLines({'sqlCode':_0x4c7cd8[_0x5a44d1(0x141)],'sqlName':_0x4c7cd8['sqlName'],'dbId':_0x4c7cd8[_0x5a44d1(0x146)],'dbName':_0x56285b?.[_0x5a44d1(0x131)],'mode':_0x5f42e8,'syncedAt':_0x56285b?.['syncedAt'],'description':_0x56285b?.[_0x5a44d1(0x158)]},_0x5f42e8),'',_0x21fac3],_0x4d8649=_0x43388b[_0x5a44d1(0x13b)]('\x0a');return _0x4d8649[_0x5a44d1(0x133)]('\x0a')?_0x4d8649:_0x4d8649+'\x0a';}export function stripLocalSqlMetadata(_0x50b200,_0x4caa6b){const _0x4a4234=a159_0x4cc746,_0x42dd1a=_0x50b200[_0x4a4234(0x150)](/\r\n/g,'\x0a')[_0x4a4234(0x145)]('\x0a'),_0x2bed8d=[];let _0xa5953a=0x0;if(_0x4caa6b===_0x4a4234(0x15c))while(_0xa5953a<_0x42dd1a[_0x4a4234(0x156)]){const _0x7a46ad=_0x42dd1a[_0xa5953a]??'';if(/^\s*<!--\s*@lovrabet\./[_0x4a4234(0x15a)](_0x7a46ad)){_0xa5953a++;continue;}if(_0x7a46ad[_0x4a4234(0x14e)]()===''&&_0xa5953a>0x0){_0xa5953a++;continue;}break;}else while(_0xa5953a<_0x42dd1a[_0x4a4234(0x156)]){const _0x330449=_0x42dd1a[_0xa5953a]??'';if(/^\s*--\s*@lovrabet\./[_0x4a4234(0x15a)](_0x330449)){_0xa5953a++;continue;}if(_0x330449[_0x4a4234(0x14e)]()===''&&_0xa5953a>0x0){_0xa5953a++;continue;}break;}for(;_0xa5953a<_0x42dd1a[_0x4a4234(0x156)];_0xa5953a++){_0x2bed8d['push'](_0x42dd1a[_0xa5953a]);}return _0x2bed8d[_0x4a4234(0x13b)]('\x0a')[_0x4a4234(0x137)]();}export function resolveSqlMode(_0x3677d1,_0x56a600){const _0xbf8fbc=a159_0x4cc746;if(_0x56a600?.[_0xbf8fbc(0x13e)])return _0x56a600[_0xbf8fbc(0x13e)];return detectSqlMode(_0x3677d1);}export function resolveSqlFileName(_0x2b59e3,_0x24c0e1,_0x5c41da){const _0x2c1978=a159_0x4cc746;if(_0x5c41da?.[_0x2c1978(0x147)])return _0x5c41da[_0x2c1978(0x147)];if(_0x5c41da?.[_0x2c1978(0x149)]||_0x5c41da?.['dbName'])return buildSqlRelativePath(_0x2b59e3,_0x5c41da?.[_0x2c1978(0x149)],_0x5c41da?.[_0x2c1978(0x131)],resolveSqlMode(_0x24c0e1,_0x5c41da),_0x5c41da?.[_0x2c1978(0x146)]);return buildDefaultSqlFileName(_0x2b59e3,resolveSqlMode(_0x24c0e1,_0x5c41da));}export function resolveSqlLocalDir(_0x3f5045,_0x403c3e){return join(_0x3f5045,SQL_LOCAL_REL_DIR,_0x403c3e);}export async function confirmForceOverwrite(_0x242f9e){const _0x2b34fb=a159_0x4cc746,_0x1aae31=createInterface({'input':process['stdin'],'output':process[_0x2b34fb(0x157)]}),_0x352e91=await new Promise(_0x3085dc=>{const _0x5698d5=_0x2b34fb;_0x1aae31[_0x5698d5(0x138)](_0x242f9e+_0x5698d5(0x148),_0x3085dc);});return _0x1aae31['close'](),['y',_0x2b34fb(0x152)]['includes'](_0x352e91[_0x2b34fb(0x14e)]()[_0x2b34fb(0x13f)]());}function a159_0x2015(_0x5a0d1d,_0x19f870){_0x5a0d1d=_0x5a0d1d-0x130;const _0x5aea4e=a159_0x5aea();let _0x20154=_0x5aea4e[_0x5a0d1d];return _0x20154;}function a159_0x5aea(){const _0x51aa12=['.rabetbase/sql','30JjAeMf','15sDObLp','trimStart','question','5860050BOsmgs','apps','join','1167340WHNsOk','sqls','mode','toLowerCase','\x20-->','sqlCode','filter','syncedAt','4378085DpQVDC','split','dbId','path','\x20[y/N]\x20','sqlName','37418612tclTDp','<!--\x20@lovrabet.','fromEntries','sqlConfig','trim','3548007LFKEFG','replace','301066YGbEoC','yes','4oMXsym','map','sqlContent','length','stderr','description','lastSync','test','10690799ERWXhi','mybatisXml','8FtQleA','dbName','entries','endsWith'];a159_0x5aea=function(){return _0x51aa12;};return a159_0x5aea();}export function findSqlLockScope(_0x2e7525,_0x1204b6){const _0x1e9f21=a159_0x4cc746;return _0x2e7525[_0x1e9f21(0x13a)][_0x1204b6];}function buildMetadataHeaderLines(_0x2c2a75,_0x43dd35){const _0x575cfe=a159_0x4cc746,_0x117a16=[['sqlCode',_0x2c2a75[_0x575cfe(0x141)]],['sqlName',_0x2c2a75[_0x575cfe(0x149)]],['dbId',_0x2c2a75[_0x575cfe(0x146)]],[_0x575cfe(0x131),_0x2c2a75['dbName']],[_0x575cfe(0x13e),_0x2c2a75[_0x575cfe(0x13e)]],['syncedAt',_0x2c2a75[_0x575cfe(0x143)]],[_0x575cfe(0x158),_0x2c2a75[_0x575cfe(0x158)]]];if(_0x43dd35===_0x575cfe(0x15c))return _0x117a16[_0x575cfe(0x142)](([,_0x52acf3])=>_0x52acf3!==undefined&&_0x52acf3!==null&&String(_0x52acf3)[_0x575cfe(0x14e)]()!=='')[_0x575cfe(0x154)](([_0x4c4946,_0x52fc87])=>_0x575cfe(0x14b)+_0x4c4946+':\x20'+String(_0x52fc87)+_0x575cfe(0x140));return _0x117a16[_0x575cfe(0x142)](([,_0x588889])=>_0x588889!==undefined&&_0x588889!==null&&String(_0x588889)[_0x575cfe(0x14e)]()!=='')[_0x575cfe(0x154)](([_0x4ce1b9,_0x430334])=>'--\x20@lovrabet.'+_0x4ce1b9+':\x20'+String(_0x430334));}
1
+ const a159_0x9b4f30=a159_0x4056;(function(_0x25cf28,_0x4cafa8){const _0x385e7e=a159_0x4056,_0x34e455=_0x25cf28();while(!![]){try{const _0x212534=-parseInt(_0x385e7e(0x11f))/0x1*(-parseInt(_0x385e7e(0x11d))/0x2)+parseInt(_0x385e7e(0x120))/0x3*(-parseInt(_0x385e7e(0x143))/0x4)+parseInt(_0x385e7e(0x147))/0x5*(parseInt(_0x385e7e(0x130))/0x6)+-parseInt(_0x385e7e(0x128))/0x7*(parseInt(_0x385e7e(0x12d))/0x8)+parseInt(_0x385e7e(0x124))/0x9*(-parseInt(_0x385e7e(0x134))/0xa)+-parseInt(_0x385e7e(0x12e))/0xb+parseInt(_0x385e7e(0x13b))/0xc;if(_0x212534===_0x4cafa8)break;else _0x34e455['push'](_0x34e455['shift']());}catch(_0x15fb47){_0x34e455['push'](_0x34e455['shift']());}}}(a159_0x43ad,0x26af8));import{createInterface}from'node:readline';function a159_0x4056(_0xc55464,_0x5c7b42){_0xc55464=_0xc55464-0x11c;const _0x43adae=a159_0x43ad();let _0x405698=_0x43adae[_0xc55464];return _0x405698;}import{join}from'node:path';import{buildDefaultSqlFileName,buildSqlRelativePath,detectSqlMode}from'../../core/sql-sync/utils.js';export const SQL_LOCAL_REL_DIR=a159_0x9b4f30(0x122);export function buildSqlLockEntry(_0x55df59,_0x48df9c,_0x46f163,_0x265685){const _0x21ca02=a159_0x9b4f30,_0x5161e4=detectSqlMode(_0x48df9c);return{'path':buildSqlRelativePath(_0x55df59['sqlCode'],_0x55df59['sqlName'],_0x265685?.[_0x21ca02(0x129)],_0x5161e4,_0x55df59['dbId']),'hash':_0x46f163,'remoteId':_0x55df59['id'],'version':_0x55df59[_0x21ca02(0x135)],'dbId':Number(_0x55df59[_0x21ca02(0x137)]),'dbName':_0x265685?.[_0x21ca02(0x129)],'sqlName':_0x55df59[_0x21ca02(0x13f)],'sqlConfig':_0x55df59[_0x21ca02(0x12c)]??undefined,'mode':_0x5161e4};}export function cloneSqlLockData(_0x21ebb7){const _0x13ff2f=a159_0x9b4f30;return{'apps':Object['fromEntries'](Object[_0x13ff2f(0x132)](_0x21ebb7[_0x13ff2f(0x146)])['map'](([_0x26dd2e,_0x3b861a])=>[_0x26dd2e,{'sqlRoot':_0x3b861a[_0x13ff2f(0x125)],'lastSync':_0x3b861a['lastSync'],'sqls':{..._0x3b861a[_0x13ff2f(0x145)]}}]))};}export function ensureRemoteSqlContent(_0xad2d01){const _0x5dc9df=a159_0x9b4f30;return _0xad2d01[_0x5dc9df(0x139)]??'';}export function buildLocalSqlFileContent(_0x4adf6c,_0x111d88,_0x317682){const _0x39e72e=a159_0x9b4f30,_0x48e0a8=_0x317682?.['mode']??detectSqlMode(_0x111d88),_0x2191a0=stripLocalSqlMetadata(_0x111d88,_0x48e0a8)[_0x39e72e(0x11e)](),_0x53d1b2=[...buildMetadataHeaderLines({'sqlCode':_0x4adf6c['sqlCode'],'sqlName':_0x4adf6c['sqlName'],'dbId':_0x4adf6c[_0x39e72e(0x137)],'dbName':_0x317682?.[_0x39e72e(0x129)],'mode':_0x48e0a8,'syncedAt':_0x317682?.[_0x39e72e(0x144)],'description':_0x317682?.['description']},_0x48e0a8),'',_0x2191a0],_0x5d0022=_0x53d1b2[_0x39e72e(0x141)]('\x0a');return _0x5d0022['endsWith']('\x0a')?_0x5d0022:_0x5d0022+'\x0a';}export function stripLocalSqlMetadata(_0xa9af9d,_0x158f50){const _0x5544d4=a159_0x9b4f30,_0x57efcf=_0xa9af9d['replace'](/\r\n/g,'\x0a')['split']('\x0a'),_0x194936=[];let _0xab47d5=0x0;if(_0x158f50===_0x5544d4(0x136))while(_0xab47d5<_0x57efcf[_0x5544d4(0x121)]){const _0x1429a4=_0x57efcf[_0xab47d5]??'';if(/^\s*<!--\s*@lovrabet\./[_0x5544d4(0x140)](_0x1429a4)){_0xab47d5++;continue;}if(_0x1429a4['trim']()===''&&_0xab47d5>0x0){_0xab47d5++;continue;}break;}else while(_0xab47d5<_0x57efcf[_0x5544d4(0x121)]){const _0x42cf10=_0x57efcf[_0xab47d5]??'';if(/^\s*--\s*@lovrabet\./['test'](_0x42cf10)){_0xab47d5++;continue;}if(_0x42cf10[_0x5544d4(0x11e)]()===''&&_0xab47d5>0x0){_0xab47d5++;continue;}break;}for(;_0xab47d5<_0x57efcf[_0x5544d4(0x121)];_0xab47d5++){_0x194936[_0x5544d4(0x148)](_0x57efcf[_0xab47d5]);}return _0x194936[_0x5544d4(0x141)]('\x0a')[_0x5544d4(0x13e)]();}function a159_0x43ad(){const _0x31fef4=['\x20-->','30ksSWKe','filter','entries','path','131810xzkGts','version','mybatisXml','dbId','description','sqlContent','toLowerCase','3135852jsQKsU','question','mode','trimStart','sqlName','test','join','stderr','139144Wtmtol','syncedAt','sqls','apps','229850rkMDGZ','push','close','map','2EUClHJ','trim','101569QbdhtB','3nIsQfk','length','.rabetbase/sql','includes','9qaKomv','sqlRoot','\x20[y/N]\x20','--\x20@lovrabet.','246869EVVCGM','dbName','<!--\x20@lovrabet.','sqlCode','sqlConfig','64JsCZAN','1145991lUeaCW'];a159_0x43ad=function(){return _0x31fef4;};return a159_0x43ad();}export function resolveSqlMode(_0xad9c91,_0x37bbe6){const _0x5ebc1c=a159_0x9b4f30;if(_0x37bbe6?.[_0x5ebc1c(0x13d)])return _0x37bbe6[_0x5ebc1c(0x13d)];return detectSqlMode(_0xad9c91);}export function resolveSqlFileName(_0x8f579b,_0x422f94,_0x19d2f8){const _0x1d7dd1=a159_0x9b4f30;if(_0x19d2f8?.[_0x1d7dd1(0x133)])return _0x19d2f8[_0x1d7dd1(0x133)];if(_0x19d2f8?.[_0x1d7dd1(0x13f)]||_0x19d2f8?.['dbName'])return buildSqlRelativePath(_0x8f579b,_0x19d2f8?.[_0x1d7dd1(0x13f)],_0x19d2f8?.[_0x1d7dd1(0x129)],resolveSqlMode(_0x422f94,_0x19d2f8),_0x19d2f8?.[_0x1d7dd1(0x137)]);return buildDefaultSqlFileName(_0x8f579b,resolveSqlMode(_0x422f94,_0x19d2f8));}export function resolveSqlLocalDir(_0x254dca,_0x3fa940){return join(_0x254dca,SQL_LOCAL_REL_DIR,_0x3fa940);}export async function confirmForceOverwrite(_0x214270){const _0x12404e=a159_0x9b4f30,_0x4d1249=createInterface({'input':process['stdin'],'output':process[_0x12404e(0x142)]}),_0x3dd0a6=await new Promise(_0x358227=>{const _0x5da9ba=_0x12404e;_0x4d1249[_0x5da9ba(0x13c)](_0x214270+_0x5da9ba(0x126),_0x358227);});return _0x4d1249[_0x12404e(0x149)](),['y','yes'][_0x12404e(0x123)](_0x3dd0a6[_0x12404e(0x11e)]()[_0x12404e(0x13a)]());}export function findSqlLockScope(_0x390fea,_0x906fe3){const _0x99a345=a159_0x9b4f30;return _0x390fea[_0x99a345(0x146)][_0x906fe3];}function buildMetadataHeaderLines(_0x2cdd94,_0x48d436){const _0x4716bb=a159_0x9b4f30,_0x33152b=[['sqlCode',_0x2cdd94[_0x4716bb(0x12b)]],['sqlName',_0x2cdd94[_0x4716bb(0x13f)]],[_0x4716bb(0x137),_0x2cdd94[_0x4716bb(0x137)]],[_0x4716bb(0x129),_0x2cdd94[_0x4716bb(0x129)]],['mode',_0x2cdd94['mode']],[_0x4716bb(0x144),_0x2cdd94[_0x4716bb(0x144)]],[_0x4716bb(0x138),_0x2cdd94[_0x4716bb(0x138)]]];if(_0x48d436==='mybatisXml')return _0x33152b['filter'](([,_0x4255f9])=>_0x4255f9!==undefined&&_0x4255f9!==null&&String(_0x4255f9)[_0x4716bb(0x11e)]()!=='')[_0x4716bb(0x11c)](([_0xcd99c5,_0x535e24])=>_0x4716bb(0x12a)+_0xcd99c5+':\x20'+String(_0x535e24)+_0x4716bb(0x12f));return _0x33152b[_0x4716bb(0x131)](([,_0x4a1b43])=>_0x4a1b43!==undefined&&_0x4a1b43!==null&&String(_0x4a1b43)['trim']()!=='')[_0x4716bb(0x11c)](([_0x145d2b,_0x3be33e])=>_0x4716bb(0x127)+_0x145d2b+':\x20'+String(_0x3be33e));}
@@ -1 +1 @@
1
- const a160_0x3ff90b=a160_0x929f;(function(_0xb2f12,_0x3b9641){const _0xd8f84e=a160_0x929f,_0xabfb9c=_0xb2f12();while(!![]){try{const _0x416f86=parseInt(_0xd8f84e(0xa8))/0x1+-parseInt(_0xd8f84e(0xbb))/0x2*(parseInt(_0xd8f84e(0xba))/0x3)+-parseInt(_0xd8f84e(0xb1))/0x4+parseInt(_0xd8f84e(0xac))/0x5*(-parseInt(_0xd8f84e(0xa1))/0x6)+parseInt(_0xd8f84e(0x9f))/0x7*(parseInt(_0xd8f84e(0x9e))/0x8)+-parseInt(_0xd8f84e(0xab))/0x9+-parseInt(_0xd8f84e(0x9d))/0xa*(-parseInt(_0xd8f84e(0xad))/0xb);if(_0x416f86===_0x3b9641)break;else _0xabfb9c['push'](_0xabfb9c['shift']());}catch(_0x38f7a4){_0xabfb9c['push'](_0xabfb9c['shift']());}}}(a160_0x469a,0xa76a7));import{listSqlQueries}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';function a160_0x469a(){const _0x43abbf=['remote','sqlName','hash','\x20remote-only','push','relativePath','tableData','Check\x20local\x20SQL\x20sync\x20status\x20against\x20lock\x20file','1924662NzIZkd','4PIzIlG','has','length','sqls','\x20added,\x20','lockKey','\x20unchanged','70UeCEkC','8ZwnNqe','3956078IYGlkN','sqlCode','18gsMKLR','All\x20SQL\x20queries\x20are\x20in\x20sync.','paging','status','keys','\x20missing,\x20','path','1153144SdeJmB','bool','map','11819034bCQoqt','265125sweZkO','3367507COxOLk','Also\x20check\x20for\x20remote-only\x20SQL\x20queries\x20not\x20present\x20locally','sqlRoot','appCode','1680452waaoCZ'];a160_0x469a=function(){return _0x43abbf;};return a160_0x469a();}import{computeSqlFileHash}from'../../core/sql-sync/hash.js';function a160_0x929f(_0x41821f,_0x1dfec6){_0x41821f=_0x41821f-0x99;const _0x469a80=a160_0x469a();let _0x929fc4=_0x469a80[_0x41821f];return _0x929fc4;}import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile}from'../../core/sql-sync/lock.js';const PAGE_SIZE=0x64;async function fetchAllSqlCodes(_0x31aa3d){const _0x4429c6=a160_0x929f,_0x57630a=[];let _0x5347a0=0x1;while(!![]){const _0x2ee63b=await listSqlQueries(_0x31aa3d,{'currentPage':_0x5347a0,'pageSize':PAGE_SIZE}),_0x9ac81a=_0x2ee63b[_0x4429c6(0xb8)]??[];_0x57630a[_0x4429c6(0xb6)](..._0x9ac81a[_0x4429c6(0xaa)](_0x12927a=>_0x12927a[_0x4429c6(0xa0)]));if(_0x9ac81a['length']===0x0)break;const _0x50c9ba=_0x2ee63b[_0x4429c6(0xa3)]?.['totalCount'];if(_0x50c9ba!=null?_0x57630a['length']>=_0x50c9ba:_0x9ac81a[_0x4429c6(0xbd)]<PAGE_SIZE)break;_0x5347a0++;}return _0x57630a;}export const sqlStatus={'service':'sql','command':a160_0x3ff90b(0xa4),'description':a160_0x3ff90b(0xb9),'risk':'read','flags':[{'name':'remote','type':'boolean','description':a160_0x3ff90b(0xae)}],async 'execute'(_0x14f0f0){const _0x338892=a160_0x3ff90b,_0x55d542=loadSqlProjectConfig(_0x14f0f0[_0x338892(0xb0)]),_0x3c6ee6=await readSqlLockFile(_0x55d542['lockFilePath']),{appLock:_0x527d3c}=ensureSqlLockScope(_0x3c6ee6??createEmptySqlLock(),_0x55d542[_0x338892(0xb0)],_0x55d542[_0x338892(0xaf)],_0x338892(0xa4)),_0x528827=await scanLocalSqlQueries(_0x55d542),_0x13d0a3=[],_0x416a5f=[],_0x2a8b88=[],_0x52bde5=[],_0x1050b6=new Set(_0x528827[_0x338892(0xaa)](_0x2e5e24=>_0x2e5e24[_0x338892(0x9b)]));for(const _0x1ca730 of _0x528827){const _0x3aeba9=await computeSqlFileHash(_0x1ca730['filePath']),_0x57d74b=_0x527d3c[_0x338892(0x99)][_0x1ca730[_0x338892(0x9b)]],_0x404d8d=!!_0x57d74b&&_0x57d74b[_0x338892(0xa7)]!==_0x1ca730[_0x338892(0xb7)],_0x54e68f=!!_0x57d74b&&!!_0x1ca730[_0x338892(0xb3)]&&_0x57d74b[_0x338892(0xb3)]!==_0x1ca730[_0x338892(0xb3)];if(!_0x57d74b)_0x13d0a3['push'](_0x1ca730[_0x338892(0x9b)]);else _0x57d74b[_0x338892(0xb4)]!==_0x3aeba9||_0x404d8d||_0x54e68f?_0x416a5f[_0x338892(0xb6)](_0x1ca730['lockKey']):_0x2a8b88[_0x338892(0xb6)](_0x1ca730[_0x338892(0x9b)]);}for(const _0xc58186 of Object[_0x338892(0xa5)](_0x527d3c[_0x338892(0x99)])){!_0x1050b6[_0x338892(0xbc)](_0xc58186)&&_0x52bde5[_0x338892(0xb6)](_0xc58186);}const _0x58ae64=[];if(_0x14f0f0[_0x338892(0xa9)](_0x338892(0xb2))){const _0x2f8350=await fetchAllSqlCodes(_0x14f0f0[_0x338892(0xb0)]);for(const _0x2039ab of _0x2f8350){!_0x1050b6[_0x338892(0xbc)](_0x2039ab)&&!_0x527d3c[_0x338892(0x99)][_0x2039ab]&&_0x58ae64['push'](_0x2039ab);}}const _0x4c86c5=_0x13d0a3['length']===0x0&&_0x416a5f[_0x338892(0xbd)]===0x0&&_0x52bde5[_0x338892(0xbd)]===0x0&&_0x58ae64[_0x338892(0xbd)]===0x0;return{'ok':!![],'data':{'added':_0x13d0a3,'modified':_0x416a5f,'missing':_0x52bde5,'unchanged':_0x2a8b88,'remoteOnly':_0x58ae64},'message':_0x4c86c5?_0x338892(0xa2):_0x13d0a3[_0x338892(0xbd)]+_0x338892(0x9a)+_0x416a5f['length']+'\x20modified,\x20'+_0x52bde5[_0x338892(0xbd)]+_0x338892(0xa6)+_0x2a8b88['length']+_0x338892(0x9c)+(_0x58ae64[_0x338892(0xbd)]>0x0?',\x20'+_0x58ae64[_0x338892(0xbd)]+_0x338892(0xb5):'')};}};
1
+ const a160_0xa199e4=a160_0x1235;(function(_0x48358d,_0x12abbb){const _0x1ffb94=a160_0x1235,_0x4341a4=_0x48358d();while(!![]){try{const _0x1ebc04=parseInt(_0x1ffb94(0x17f))/0x1*(parseInt(_0x1ffb94(0x173))/0x2)+-parseInt(_0x1ffb94(0x172))/0x3+-parseInt(_0x1ffb94(0x17d))/0x4+-parseInt(_0x1ffb94(0x16e))/0x5+parseInt(_0x1ffb94(0x177))/0x6*(parseInt(_0x1ffb94(0x166))/0x7)+-parseInt(_0x1ffb94(0x163))/0x8*(-parseInt(_0x1ffb94(0x184))/0x9)+parseInt(_0x1ffb94(0x17c))/0xa*(parseInt(_0x1ffb94(0x176))/0xb);if(_0x1ebc04===_0x12abbb)break;else _0x4341a4['push'](_0x4341a4['shift']());}catch(_0x13571){_0x4341a4['push'](_0x4341a4['shift']());}}}(a160_0x3101,0xd1957));import{listSqlQueries}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';import{computeSqlFileHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile}from'../../core/sql-sync/lock.js';const PAGE_SIZE=0x64;function a160_0x1235(_0x23442a,_0x4e2114){_0x23442a=_0x23442a-0x163;const _0x31011d=a160_0x3101();let _0x1235d6=_0x31011d[_0x23442a];return _0x1235d6;}function a160_0x3101(){const _0x4a8321=['6JZKlqR','Also\x20check\x20for\x20remote-only\x20SQL\x20queries\x20not\x20present\x20locally','path','remote','status','3440xWDJhH','3367580KQlPWd','\x20remote-only','4WNMDCb','sqlCode','All\x20SQL\x20queries\x20are\x20in\x20sync.','filePath','appCode','3986244eQULVB','relativePath','sqlRoot','lockFilePath','paging','Check\x20local\x20SQL\x20sync\x20status\x20against\x20lock\x20file','16qYpwiR','tableData','totalCount','8572354ACaDLP','bool','sqlName','keys','\x20added,\x20','sql','length','lockKey','7500020OGPmZp','sqls','has','map','358368FDNLyI','597282GMVoiJ','push','\x20unchanged','473KOTCST'];a160_0x3101=function(){return _0x4a8321;};return a160_0x3101();}async function fetchAllSqlCodes(_0x5ed309){const _0x11056f=a160_0x1235,_0x16a791=[];let _0x1173b4=0x1;while(!![]){const _0x3cb625=await listSqlQueries(_0x5ed309,{'currentPage':_0x1173b4,'pageSize':PAGE_SIZE}),_0xc45d=_0x3cb625[_0x11056f(0x164)]??[];_0x16a791[_0x11056f(0x174)](..._0xc45d[_0x11056f(0x171)](_0x322d96=>_0x322d96[_0x11056f(0x180)]));if(_0xc45d[_0x11056f(0x16c)]===0x0)break;const _0x273ef4=_0x3cb625[_0x11056f(0x188)]?.[_0x11056f(0x165)];if(_0x273ef4!=null?_0x16a791['length']>=_0x273ef4:_0xc45d['length']<PAGE_SIZE)break;_0x1173b4++;}return _0x16a791;}export const sqlStatus={'service':a160_0xa199e4(0x16b),'command':a160_0xa199e4(0x17b),'description':a160_0xa199e4(0x189),'risk':'read','flags':[{'name':'remote','type':'boolean','description':a160_0xa199e4(0x178)}],async 'execute'(_0x26a838){const _0x43c5f4=a160_0xa199e4,_0x4d5ec1=loadSqlProjectConfig(_0x26a838[_0x43c5f4(0x183)]),_0x5311df=await readSqlLockFile(_0x4d5ec1[_0x43c5f4(0x187)]),{appLock:_0x1fa486}=ensureSqlLockScope(_0x5311df??createEmptySqlLock(),_0x4d5ec1[_0x43c5f4(0x183)],_0x4d5ec1[_0x43c5f4(0x186)],_0x43c5f4(0x17b)),_0xbe2524=await scanLocalSqlQueries(_0x4d5ec1),_0x5ebfd4=[],_0xa7f564=[],_0xbff2c8=[],_0x564152=[],_0x1b366d=new Set(_0xbe2524[_0x43c5f4(0x171)](_0x85778d=>_0x85778d[_0x43c5f4(0x16d)]));for(const _0x45dfa9 of _0xbe2524){const _0xd428ea=await computeSqlFileHash(_0x45dfa9[_0x43c5f4(0x182)]),_0x2cdcdd=_0x1fa486[_0x43c5f4(0x16f)][_0x45dfa9[_0x43c5f4(0x16d)]],_0x1846c1=!!_0x2cdcdd&&_0x2cdcdd[_0x43c5f4(0x179)]!==_0x45dfa9[_0x43c5f4(0x185)],_0x3c8568=!!_0x2cdcdd&&!!_0x45dfa9[_0x43c5f4(0x168)]&&_0x2cdcdd['sqlName']!==_0x45dfa9[_0x43c5f4(0x168)];if(!_0x2cdcdd)_0x5ebfd4[_0x43c5f4(0x174)](_0x45dfa9[_0x43c5f4(0x16d)]);else _0x2cdcdd['hash']!==_0xd428ea||_0x1846c1||_0x3c8568?_0xa7f564[_0x43c5f4(0x174)](_0x45dfa9[_0x43c5f4(0x16d)]):_0xbff2c8[_0x43c5f4(0x174)](_0x45dfa9[_0x43c5f4(0x16d)]);}for(const _0x504faa of Object[_0x43c5f4(0x169)](_0x1fa486['sqls'])){!_0x1b366d[_0x43c5f4(0x170)](_0x504faa)&&_0x564152['push'](_0x504faa);}const _0x2dae34=[];if(_0x26a838[_0x43c5f4(0x167)](_0x43c5f4(0x17a))){const _0xfdd3a0=await fetchAllSqlCodes(_0x26a838[_0x43c5f4(0x183)]);for(const _0x1775bb of _0xfdd3a0){!_0x1b366d['has'](_0x1775bb)&&!_0x1fa486[_0x43c5f4(0x16f)][_0x1775bb]&&_0x2dae34[_0x43c5f4(0x174)](_0x1775bb);}}const _0x41034b=_0x5ebfd4[_0x43c5f4(0x16c)]===0x0&&_0xa7f564[_0x43c5f4(0x16c)]===0x0&&_0x564152[_0x43c5f4(0x16c)]===0x0&&_0x2dae34[_0x43c5f4(0x16c)]===0x0;return{'ok':!![],'data':{'added':_0x5ebfd4,'modified':_0xa7f564,'missing':_0x564152,'unchanged':_0xbff2c8,'remoteOnly':_0x2dae34},'message':_0x41034b?_0x43c5f4(0x181):_0x5ebfd4[_0x43c5f4(0x16c)]+_0x43c5f4(0x16a)+_0xa7f564[_0x43c5f4(0x16c)]+'\x20modified,\x20'+_0x564152[_0x43c5f4(0x16c)]+'\x20missing,\x20'+_0xbff2c8[_0x43c5f4(0x16c)]+_0x43c5f4(0x175)+(_0x2dae34[_0x43c5f4(0x16c)]>0x0?',\x20'+_0x2dae34[_0x43c5f4(0x16c)]+_0x43c5f4(0x17e):'')};}};
@@ -1 +1 @@
1
- const a161_0x56a312=a161_0x337e;(function(_0x57b261,_0x43a7e5){const _0x4b9367=a161_0x337e,_0x540342=_0x57b261();while(!![]){try{const _0x103fea=-parseInt(_0x4b9367(0xbb))/0x1*(-parseInt(_0x4b9367(0xa3))/0x2)+parseInt(_0x4b9367(0x9c))/0x3*(-parseInt(_0x4b9367(0xae))/0x4)+-parseInt(_0x4b9367(0xbf))/0x5*(-parseInt(_0x4b9367(0xb4))/0x6)+parseInt(_0x4b9367(0x93))/0x7*(parseInt(_0x4b9367(0xb5))/0x8)+parseInt(_0x4b9367(0xa7))/0x9+-parseInt(_0x4b9367(0xc1))/0xa*(parseInt(_0x4b9367(0xa8))/0xb)+-parseInt(_0x4b9367(0xb3))/0xc;if(_0x103fea===_0x43a7e5)break;else _0x540342['push'](_0x540342['shift']());}catch(_0x3e03b){_0x540342['push'](_0x540342['shift']());}}}(a161_0x23d3,0x95c13));import{readFileSync,existsSync}from'node:fs';import{resolve}from'node:path';import{validateSql}from'../../core/sql-validator.js';import{getDatasetDetail,listDatasets}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{assertDatasetIsDbTableBacked,filterDbTableBackedDatasets}from'../../commands/dataset/capability.js';export const sqlValidate={'service':a161_0x56a312(0xac),'command':a161_0x56a312(0x98),'description':a161_0x56a312(0xba),'risk':a161_0x56a312(0x8f),'flags':[{'name':a161_0x56a312(0xa2),'type':'string','description':a161_0x56a312(0x8e)},{'name':a161_0x56a312(0xac),'type':'string','description':a161_0x56a312(0xaa)},{'name':'schemas','type':'string','description':a161_0x56a312(0xbe)}],async 'execute'(_0x502576){const _0x45f7e5=a161_0x56a312,_0x458a98=_0x502576['str'](_0x45f7e5(0xa2)),_0x56fa95=_0x502576[_0x45f7e5(0xa0)](_0x45f7e5(0xac));if(!_0x458a98&&!_0x56fa95)throw CliErrors[_0x45f7e5(0xaf)](_0x45f7e5(0xa2),_0x45f7e5(0x91));let _0x205daa;if(_0x458a98){const _0x16face=resolve(process[_0x45f7e5(0x97)](),_0x458a98);if(!existsSync(_0x16face))throw CliErrors[_0x45f7e5(0xa5)](_0x45f7e5(0xab)+_0x16face);_0x205daa=readFileSync(_0x16face,_0x45f7e5(0xb1));}else _0x205daa=_0x56fa95;const _0x4d5088=validateSql(_0x205daa),_0x2f1035={'valid':_0x4d5088[_0x45f7e5(0xb7)],'sqlType':_0x4d5088['sqlType'][_0x45f7e5(0xb9)],'isSelectOnly':_0x4d5088[_0x45f7e5(0x9f)][_0x45f7e5(0x94)],'isDangerous':_0x4d5088[_0x45f7e5(0x9f)][_0x45f7e5(0xad)],'tables':_0x4d5088[_0x45f7e5(0xb0)],'parameters':_0x4d5088[_0x45f7e5(0xc2)],'message':_0x4d5088[_0x45f7e5(0x99)]};_0x4d5088[_0x45f7e5(0x9f)][_0x45f7e5(0x95)]&&(_0x2f1035[_0x45f7e5(0x95)]=_0x4d5088[_0x45f7e5(0x9f)]['reason']);const _0x44a68b=_0x502576[_0x45f7e5(0xa0)](_0x45f7e5(0x90));if(_0x44a68b&&_0x4d5088['valid']){const _0x4ede37=_0x44a68b[_0x45f7e5(0xb6)](',')[_0x45f7e5(0x9a)](_0x32aa6c=>_0x32aa6c['trim']())['filter'](Boolean),_0x4637bd=[],_0x4d1574=filterDbTableBackedDatasets(await listDatasets(_0x502576[_0x45f7e5(0x8d)])),_0x31d62b=new Map(_0x4d1574[_0x45f7e5(0x9a)](_0x269bb8=>[_0x269bb8[_0x45f7e5(0xa1)]?.[_0x45f7e5(0xa6)]?.['toLowerCase'](),_0x269bb8]));for(const _0x3b582d of _0x4d5088[_0x45f7e5(0xb0)]){const _0x215395=_0x31d62b['get'](_0x3b582d[_0x45f7e5(0xbd)]());!_0x215395&&_0x4637bd[_0x45f7e5(0xb2)](_0x45f7e5(0x96)+_0x3b582d+_0x45f7e5(0xbc));}for(const _0xccb8a9 of _0x4ede37){let _0x33c330;try{_0x33c330=await getDatasetDetail(_0xccb8a9);}catch{_0x4637bd[_0x45f7e5(0xb2)](_0x45f7e5(0x9b)+_0xccb8a9+'\x22\x20not\x20found\x20or\x20not\x20accessible');continue;}assertDatasetIsDbTableBacked(_0x33c330,_0x45f7e5(0xa4));const _0x11ba37=Array[_0x45f7e5(0x9e)](_0x33c330[_0x45f7e5(0x92)])?_0x33c330[_0x45f7e5(0x92)]:[],_0xb78961=new Set(_0x11ba37[_0x45f7e5(0x9a)](_0x3eff78=>_0x3eff78[_0x45f7e5(0x8c)]?.['toLowerCase']())),_0x22196a=_0x33c330['dbtableConfig']?.[_0x45f7e5(0xa6)]||_0x33c330[_0x45f7e5(0xa6)]||_0xccb8a9;_0x2f1035[_0x45f7e5(0x9d)+_0x22196a]={'code':_0xccb8a9,'tableName':_0x22196a,'fieldCount':_0xb78961[_0x45f7e5(0xb8)],'fields':Array[_0x45f7e5(0xc0)](_0xb78961)};}_0x4637bd[_0x45f7e5(0xa9)]>0x0&&(_0x2f1035['schemaWarnings']=_0x4637bd);}return{'ok':_0x4d5088['valid'],'data':_0x2f1035,'message':_0x4d5088[_0x45f7e5(0x99)]};}};function a161_0x337e(_0x47dab1,_0x48f823){_0x47dab1=_0x47dab1-0x8c;const _0x23d399=a161_0x23d3();let _0x337ed2=_0x23d399[_0x47dab1];return _0x337ed2;}function a161_0x23d3(){const _0x320fa8=['isDangerous','20BIiADw','flagMissing','tables','utf-8','push','19732476sxadhd','6748746qWaxMy','9816YHdQpL','split','valid','size','type','Validate\x20SQL\x20content\x20without\x20saving\x20(type\x20detection,\x20parameter\x20extraction,\x20optional\x20schema\x20check)','468qahYbw','\x22\x20not\x20found\x20in\x20any\x20dataset','toLowerCase','Comma-separated\x20dataset\x20codes\x20to\x20cross-check\x20table/column\x20names\x20against','5otfAPZ','from','1869850sSXQVB','parameters','name','appCode','Path\x20to\x20the\x20SQL\x20file\x20to\x20validate','read','schemas','Provide\x20--file\x20or\x20--sql','fields','1169EOaIJh','isSelectOnly','reason','Table\x20\x22','cwd','validate','message','map','Dataset\x20\x22','199947fYZWaI','schema:','isArray','sqlType','str','dbtableConfig','file','1882BNGicb','SQL\x20schema\x20validation','validation','tableName','9071190TaRKuB','11srPlIp','length','Inline\x20SQL\x20content\x20to\x20validate\x20(alternative\x20to\x20--file)','File\x20not\x20found:\x20','sql'];a161_0x23d3=function(){return _0x320fa8;};return a161_0x23d3();}
1
+ const a161_0x3e6d1f=a161_0x41f4;(function(_0x4eb708,_0x330302){const _0xc9ee8b=a161_0x41f4,_0x56b98c=_0x4eb708();while(!![]){try{const _0x50afde=parseInt(_0xc9ee8b(0x1ea))/0x1+parseInt(_0xc9ee8b(0x1fb))/0x2+parseInt(_0xc9ee8b(0x1d5))/0x3*(parseInt(_0xc9ee8b(0x1e0))/0x4)+parseInt(_0xc9ee8b(0x1d7))/0x5+parseInt(_0xc9ee8b(0x1ff))/0x6*(-parseInt(_0xc9ee8b(0x1df))/0x7)+-parseInt(_0xc9ee8b(0x1ec))/0x8+-parseInt(_0xc9ee8b(0x1fc))/0x9*(parseInt(_0xc9ee8b(0x1fe))/0xa);if(_0x50afde===_0x330302)break;else _0x56b98c['push'](_0x56b98c['shift']());}catch(_0x2c7b84){_0x56b98c['push'](_0x56b98c['shift']());}}}(a161_0x4e41,0x7f627));import{readFileSync,existsSync}from'node:fs';import{resolve}from'node:path';import{validateSql}from'../../core/sql-validator.js';import{getDatasetDetail,listDatasets}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a161_0x4e41(){const _0x5951ae=['sqlType','598224svPyeT','cwd','4212936XooLHh','Provide\x20--file\x20or\x20--sql','push','from','reason','Table\x20\x22','Dataset\x20\x22','get','isArray','dbtableConfig','\x22\x20not\x20found\x20in\x20any\x20dataset','schema:','appCode','size','parameters','671080Ygihfd','1225953uhXdXD','tables','10GpwlSC','2925642UAtVqB','split','filter','Comma-separated\x20dataset\x20codes\x20to\x20cross-check\x20table/column\x20names\x20against','valid','map','read','toLowerCase','fields','file','18bwxHht','str','2816580WKqgux','schemas','string','\x22\x20not\x20found\x20or\x20not\x20accessible','message','name','sql','validation','7xbbYcl','116752uzNUqL','isDangerous','schemaWarnings','flagMissing','trim','File\x20not\x20found:\x20','validate','Validate\x20SQL\x20content\x20without\x20saving\x20(type\x20detection,\x20parameter\x20extraction,\x20optional\x20schema\x20check)','length'];a161_0x4e41=function(){return _0x5951ae;};return a161_0x4e41();}import{assertDatasetIsDbTableBacked,filterDbTableBackedDatasets}from'../../commands/dataset/capability.js';function a161_0x41f4(_0x5e1584,_0x5c9fa9){_0x5e1584=_0x5e1584-0x1cc;const _0x4e41eb=a161_0x4e41();let _0x41f49f=_0x4e41eb[_0x5e1584];return _0x41f49f;}export const sqlValidate={'service':'sql','command':a161_0x3e6d1f(0x1e6),'description':a161_0x3e6d1f(0x1e7),'risk':a161_0x3e6d1f(0x1d1),'flags':[{'name':'file','type':'string','description':'Path\x20to\x20the\x20SQL\x20file\x20to\x20validate'},{'name':a161_0x3e6d1f(0x1dd),'type':'string','description':'Inline\x20SQL\x20content\x20to\x20validate\x20(alternative\x20to\x20--file)'},{'name':a161_0x3e6d1f(0x1d8),'type':a161_0x3e6d1f(0x1d9),'description':a161_0x3e6d1f(0x1ce)}],async 'execute'(_0x1c976b){const _0x58dfb3=a161_0x3e6d1f,_0x164038=_0x1c976b[_0x58dfb3(0x1d6)](_0x58dfb3(0x1d4)),_0x5b502a=_0x1c976b[_0x58dfb3(0x1d6)]('sql');if(!_0x164038&&!_0x5b502a)throw CliErrors[_0x58dfb3(0x1e3)](_0x58dfb3(0x1d4),_0x58dfb3(0x1ed));let _0x1184f3;if(_0x164038){const _0x49aab1=resolve(process[_0x58dfb3(0x1eb)](),_0x164038);if(!existsSync(_0x49aab1))throw CliErrors[_0x58dfb3(0x1de)](_0x58dfb3(0x1e5)+_0x49aab1);_0x1184f3=readFileSync(_0x49aab1,'utf-8');}else _0x1184f3=_0x5b502a;const _0x3684bb=validateSql(_0x1184f3),_0x5091d3={'valid':_0x3684bb[_0x58dfb3(0x1cf)],'sqlType':_0x3684bb[_0x58dfb3(0x1e9)]['type'],'isSelectOnly':_0x3684bb['sqlType']['isSelectOnly'],'isDangerous':_0x3684bb[_0x58dfb3(0x1e9)][_0x58dfb3(0x1e1)],'tables':_0x3684bb[_0x58dfb3(0x1fd)],'parameters':_0x3684bb[_0x58dfb3(0x1fa)],'message':_0x3684bb[_0x58dfb3(0x1db)]};_0x3684bb[_0x58dfb3(0x1e9)][_0x58dfb3(0x1f0)]&&(_0x5091d3[_0x58dfb3(0x1f0)]=_0x3684bb[_0x58dfb3(0x1e9)][_0x58dfb3(0x1f0)]);const _0x281958=_0x1c976b[_0x58dfb3(0x1d6)](_0x58dfb3(0x1d8));if(_0x281958&&_0x3684bb['valid']){const _0x6d3c38=_0x281958[_0x58dfb3(0x1cc)](',')[_0x58dfb3(0x1d0)](_0x5d070d=>_0x5d070d[_0x58dfb3(0x1e4)]())[_0x58dfb3(0x1cd)](Boolean),_0x2dc962=[],_0x1c17af=filterDbTableBackedDatasets(await listDatasets(_0x1c976b[_0x58dfb3(0x1f8)])),_0x1f2c6e=new Map(_0x1c17af['map'](_0x4aa106=>[_0x4aa106[_0x58dfb3(0x1f5)]?.['tableName']?.[_0x58dfb3(0x1d2)](),_0x4aa106]));for(const _0x1423b4 of _0x3684bb[_0x58dfb3(0x1fd)]){const _0x1e5bcc=_0x1f2c6e[_0x58dfb3(0x1f3)](_0x1423b4[_0x58dfb3(0x1d2)]());!_0x1e5bcc&&_0x2dc962[_0x58dfb3(0x1ee)](_0x58dfb3(0x1f1)+_0x1423b4+_0x58dfb3(0x1f6));}for(const _0x3606d5 of _0x6d3c38){let _0x48fbed;try{_0x48fbed=await getDatasetDetail(_0x3606d5);}catch{_0x2dc962['push'](_0x58dfb3(0x1f2)+_0x3606d5+_0x58dfb3(0x1da));continue;}assertDatasetIsDbTableBacked(_0x48fbed,'SQL\x20schema\x20validation');const _0x1c52a0=Array[_0x58dfb3(0x1f4)](_0x48fbed[_0x58dfb3(0x1d3)])?_0x48fbed[_0x58dfb3(0x1d3)]:[],_0x3d444c=new Set(_0x1c52a0[_0x58dfb3(0x1d0)](_0x2beb59=>_0x2beb59[_0x58dfb3(0x1dc)]?.[_0x58dfb3(0x1d2)]())),_0x24accf=_0x48fbed[_0x58dfb3(0x1f5)]?.['tableName']||_0x48fbed['tableName']||_0x3606d5;_0x5091d3[_0x58dfb3(0x1f7)+_0x24accf]={'code':_0x3606d5,'tableName':_0x24accf,'fieldCount':_0x3d444c[_0x58dfb3(0x1f9)],'fields':Array[_0x58dfb3(0x1ef)](_0x3d444c)};}_0x2dc962[_0x58dfb3(0x1e8)]>0x0&&(_0x5091d3[_0x58dfb3(0x1e2)]=_0x2dc962);}return{'ok':_0x3684bb[_0x58dfb3(0x1cf)],'data':_0x5091d3,'message':_0x3684bb[_0x58dfb3(0x1db)]};}};
@@ -1 +1 @@
1
- const a162_0x78e0cf=a162_0x45b7;function a162_0x45b7(_0x136b18,_0x3e3c48){_0x136b18=_0x136b18-0xf4;const _0x175667=a162_0x1756();let _0x45b76c=_0x175667[_0x136b18];return _0x45b76c;}(function(_0x2456bc,_0x44c489){const _0xb43cc1=a162_0x45b7,_0x5c5d07=_0x2456bc();while(!![]){try{const _0x28cfcf=parseInt(_0xb43cc1(0xfa))/0x1*(-parseInt(_0xb43cc1(0xf5))/0x2)+parseInt(_0xb43cc1(0x105))/0x3+-parseInt(_0xb43cc1(0xf9))/0x4*(parseInt(_0xb43cc1(0xff))/0x5)+-parseInt(_0xb43cc1(0x102))/0x6*(parseInt(_0xb43cc1(0xfd))/0x7)+-parseInt(_0xb43cc1(0xf6))/0x8*(parseInt(_0xb43cc1(0x103))/0x9)+-parseInt(_0xb43cc1(0xf4))/0xa+parseInt(_0xb43cc1(0xfc))/0xb;if(_0x28cfcf===_0x44c489)break;else _0x5c5d07['push'](_0x5c5d07['shift']());}catch(_0x1fdf45){_0x5c5d07['push'](_0x5c5d07['shift']());}}}(a162_0x1756,0x724e1));function a162_0x1756(){const _0x11234f=['name','Register\x20an\x20app\x20profile\x20in\x20the\x20current\x20workspace\x20(or\x20--global)','6yEjMEJ','1687167TSRanf','add','2252988MEheUS','9090650FktAKe','14MPUAJS','8ADvLdy','write','workspace\x20add','24504dHrjGq','102367UBYAAv','App\x20profile\x20name','27908859COnIpg','3145863GHwmfi','workspace','455aJTFiH'];a162_0x1756=function(){return _0x11234f;};return a162_0x1756();}import{buildAppAddFlags,runAppAdd,validateAppName}from'../../commands/common/app-registry.js';export const workspaceAddDefinition={'service':a162_0x78e0cf(0xfe),'command':a162_0x78e0cf(0x104),'description':a162_0x78e0cf(0x101),'risk':a162_0x78e0cf(0xf7),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a162_0x78e0cf(0x100),'description':a162_0x78e0cf(0xfb),'required':!![]}],'flags':buildAppAddFlags(),'validate':_0x1255d=>validateAppName(_0x1255d,a162_0x78e0cf(0xf8)),'execute':_0x586c54=>runAppAdd(_0x586c54,a162_0x78e0cf(0xf8))};
1
+ const a162_0x484589=a162_0x5e45;(function(_0x59c0c1,_0x423575){const _0x1826b5=a162_0x5e45,_0x5a440e=_0x59c0c1();while(!![]){try{const _0x2cfcf2=parseInt(_0x1826b5(0xc9))/0x1+parseInt(_0x1826b5(0xd0))/0x2+parseInt(_0x1826b5(0xcd))/0x3+parseInt(_0x1826b5(0xca))/0x4*(-parseInt(_0x1826b5(0xcc))/0x5)+-parseInt(_0x1826b5(0xd1))/0x6+parseInt(_0x1826b5(0xd3))/0x7*(-parseInt(_0x1826b5(0xd4))/0x8)+parseInt(_0x1826b5(0xd5))/0x9;if(_0x2cfcf2===_0x423575)break;else _0x5a440e['push'](_0x5a440e['shift']());}catch(_0x1a03f6){_0x5a440e['push'](_0x5a440e['shift']());}}}(a162_0x3a14,0xcbfe9));import{buildAppAddFlags,runAppAdd,validateAppName}from'../../commands/common/app-registry.js';function a162_0x3a14(){const _0x2eaa4d=['16eEyAos','3423042SpuCJr','add','Register\x20an\x20app\x20profile\x20in\x20the\x20current\x20workspace\x20(or\x20--global)','name','302359fiQXMq','1880kgkiBr','App\x20profile\x20name','6945LviSCM','3832422sTKLkz','workspace','write','1495772NljYmE','2916480HpiBCO','workspace\x20add','2567551EyKqgS'];a162_0x3a14=function(){return _0x2eaa4d;};return a162_0x3a14();}function a162_0x5e45(_0x3dddf3,_0x3fe54d){_0x3dddf3=_0x3dddf3-0xc8;const _0x3a147a=a162_0x3a14();let _0x5e4557=_0x3a147a[_0x3dddf3];return _0x5e4557;}export const workspaceAddDefinition={'service':a162_0x484589(0xce),'command':a162_0x484589(0xd6),'description':a162_0x484589(0xd7),'risk':a162_0x484589(0xcf),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a162_0x484589(0xc8),'description':a162_0x484589(0xcb),'required':!![]}],'flags':buildAppAddFlags(),'validate':_0x42807a=>validateAppName(_0x42807a,a162_0x484589(0xd2)),'execute':_0x4e0d22=>runAppAdd(_0x4e0d22,a162_0x484589(0xd2))};
@@ -1 +1 @@
1
- const a163_0x576ad4=a163_0x428a;(function(_0x5a3c17,_0x4ab4f2){const _0x202dd8=a163_0x428a,_0x3491c6=_0x5a3c17();while(!![]){try{const _0x49c704=parseInt(_0x202dd8(0x172))/0x1+parseInt(_0x202dd8(0x165))/0x2*(parseInt(_0x202dd8(0x158))/0x3)+-parseInt(_0x202dd8(0x15e))/0x4+-parseInt(_0x202dd8(0x16e))/0x5*(-parseInt(_0x202dd8(0x16c))/0x6)+-parseInt(_0x202dd8(0x145))/0x7+parseInt(_0x202dd8(0x155))/0x8*(parseInt(_0x202dd8(0x156))/0x9)+-parseInt(_0x202dd8(0x14a))/0xa;if(_0x49c704===_0x4ab4f2)break;else _0x3491c6['push'](_0x3491c6['shift']());}catch(_0x34cad9){_0x3491c6['push'](_0x3491c6['shift']());}}}(a163_0x5ef7,0x4fa4b));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{RABETBASE_ENV_VALUES}from'../../constant/env.js';import{RABETBASE_OUTPUT_FORMAT_VALUES}from'../../constant/output.js';import{RISK_LEVEL_VALUES}from'../../constant/risk.js';import{validateAppcode}from'../../commands/common/validate.js';import{readConfigFile,readRawConfigWithLayers,resolveWriteConfigPath,writeConfigFile}from'../../context.js';import{workspaceAddDefinition}from'../../commands/workspace/add.js';import{workspaceRemoveDefinition}from'../../commands/workspace/remove.js';const WORKSPACE_USAGE=CLI_BIN_NAME+a163_0x576ad4(0x15f),SAFE_PROFILE_KEYS=[a163_0x576ad4(0x152),a163_0x576ad4(0x160),a163_0x576ad4(0x153),a163_0x576ad4(0x15a),a163_0x576ad4(0x179),'riskLevel',a163_0x576ad4(0x157)],workspaceFlags=[{'name':a163_0x576ad4(0x168),'type':a163_0x576ad4(0x162),'description':a163_0x576ad4(0x148)},{'name':'appcode','type':a163_0x576ad4(0x162),'description':a163_0x576ad4(0x15b)},{'name':'env','type':a163_0x576ad4(0x162),'description':'Target\x20environment','enum':[...RABETBASE_ENV_VALUES]},{'name':a163_0x576ad4(0x153),'type':a163_0x576ad4(0x162),'description':a163_0x576ad4(0x14b)},{'name':a163_0x576ad4(0x166),'type':a163_0x576ad4(0x162),'description':a163_0x576ad4(0x144),'enum':[...RABETBASE_OUTPUT_FORMAT_VALUES]},{'name':'pageSize','type':'number','description':'Default\x20page\x20size\x20for\x20this\x20workspace\x20app\x20profile'},{'name':a163_0x576ad4(0x14c),'type':'string','description':a163_0x576ad4(0x161),'enum':[...RISK_LEVEL_VALUES]},{'name':a163_0x576ad4(0x157),'type':a163_0x576ad4(0x162),'description':a163_0x576ad4(0x147)}];function isRecord(_0x35b7cd){const _0x930749=a163_0x576ad4;return!!_0x35b7cd&&typeof _0x35b7cd==='object'&&!Array[_0x930749(0x150)](_0x35b7cd);}function assertValidAppcode(_0x56cb9f){const _0x3d4655=a163_0x576ad4,{valid:_0x4093d7,message:_0x70ed57}=validateAppcode(_0x56cb9f);if(!_0x4093d7)throw CliErrors['validation'](_0x3d4655(0x174)+_0x56cb9f,_0x70ed57);}function sanitizeProfile(_0x534416){if(!isRecord(_0x534416))return{};const _0x41209e={};for(const _0x3c6e0d of SAFE_PROFILE_KEYS){if(_0x534416[_0x3c6e0d]!==undefined)_0x41209e[_0x3c6e0d]=_0x534416[_0x3c6e0d];}return _0x41209e;}function a163_0x5ef7(){const _0x1e33ed=['429499IgzVvb','Pass\x20--appcode\x20<code>,\x20or\x20choose\x20one\x20of:\x20','Invalid\x20appcode:\x20','write','validation','\x20--appcode\x20<code>`.','Missing\x20workspace\x20app\x20selector.','pageSize',').\x20Config:\x20','initialized','Workspace\x20','Default\x20output\x20format\x20for\x20this\x20workspace\x20app\x20profile','3585162DyBoiF','keys','Locale\x20for\x20this\x20workspace\x20app\x20profile','App\x20profile\x20name\x20to\x20use\x20in\x20this\x20workspace','\x22\x20not\x20found.','523310DxtDOL','API\x20directory\x20path\x20for\x20this\x20workspace\x20app\x20profile','riskLevel','project','workspace','workspace.','isArray','trim','appcode','apiDir','Use\x20`','24ePYYcH','1117179tpJelu','locale','153552ZmZFOL','Switch\x20the\x20current\x20workspace\x20app\x20binding','format','App\x20code\x20to\x20bind\x20to\x20this\x20workspace','flag','str','2421364kHmZnB','\x20workspace\x20<init|use>\x20--app\x20<name>\x20[--appcode\x20<code>]','env','Risk\x20level\x20for\x20this\x20workspace\x20app\x20profile','string','apps','\x20workspace\x20use\x20--app\x20<name>`.','22zPcnPF','defaultFormat','defaultApp','app','init','.\x20Credentials:\x20not\x20written.','use','1194YHWYbo','updated','3295ShngKs','globalConfig','\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20`','\x20(appcode:\x20'];a163_0x5ef7=function(){return _0x1e33ed;};return a163_0x5ef7();}function cloneProfile(_0x3aa957){return isRecord(_0x3aa957)?{..._0x3aa957}:{};}function a163_0x428a(_0x4276ff,_0x262577){_0x4276ff=_0x4276ff-0x142;const _0x5ef722=a163_0x5ef7();let _0x428a41=_0x5ef722[_0x4276ff];return _0x428a41;}function collectWorkspaceProfileOverrides(_0x14227a){const _0xa31753=a163_0x576ad4,_0x436fb3={},_0xb3f71=_0x14227a[_0xa31753(0x15d)](_0xa31753(0x160)),_0x54c849=_0x14227a[_0xa31753(0x15d)](_0xa31753(0x153)),_0x13c392=_0x14227a[_0xa31753(0x15d)](_0xa31753(0x166)),_0x1d4841=_0x14227a[_0xa31753(0x15c)](_0xa31753(0x179)),_0x2467d6=_0x14227a[_0xa31753(0x15d)]('riskLevel'),_0x351e0b=_0x14227a['str']('locale');if(_0xb3f71)_0x436fb3[_0xa31753(0x160)]=_0xb3f71;if(_0x54c849)_0x436fb3[_0xa31753(0x153)]=_0x54c849;if(_0x13c392)_0x436fb3[_0xa31753(0x15a)]=_0x13c392;if(_0x1d4841!==undefined&&_0x1d4841!=='')_0x436fb3['pageSize']=Number(_0x1d4841);if(_0x2467d6)_0x436fb3[_0xa31753(0x14c)]=_0x2467d6;if(_0x351e0b)_0x436fb3[_0xa31753(0x157)]=_0x351e0b;return _0x436fb3;}async function validateWorkspaceArgs(_0x17f2a3){const _0x5e493b=a163_0x576ad4,_0x570db4=_0x17f2a3[_0x5e493b(0x15d)](_0x5e493b(0x168))[_0x5e493b(0x151)](),_0x1db4f2=_0x17f2a3[_0x5e493b(0x15d)](_0x5e493b(0x152))[_0x5e493b(0x151)]();if(!_0x570db4&&!_0x1db4f2)throw CliErrors[_0x5e493b(0x176)](_0x5e493b(0x178),_0x5e493b(0x154)+CLI_BIN_NAME+_0x5e493b(0x170)+CLI_BIN_NAME+_0x5e493b(0x164));if(_0x1db4f2)assertValidAppcode(_0x1db4f2);}function resolveKnownApps(){const _0x2f5521=a163_0x576ad4,{config:_0x56bf70,layers:_0x52d66a}=readRawConfigWithLayers(),_0xfbb323=isRecord(_0x56bf70[_0x2f5521(0x163)])?_0x56bf70[_0x2f5521(0x163)]:{},_0x3fc369=isRecord(_0x52d66a[_0x2f5521(0x16f)]['apps'])?_0x52d66a[_0x2f5521(0x16f)][_0x2f5521(0x163)]:{};return{..._0x3fc369,..._0xfbb323};}async function configureWorkspace(_0x1f8d0e,_0x3753e1){const _0x2146e0=a163_0x576ad4,_0x4bd885=_0x1f8d0e[_0x2146e0(0x15d)](_0x2146e0(0x168))['trim'](),_0x38b0b6=_0x1f8d0e[_0x2146e0(0x15d)]('appcode')[_0x2146e0(0x151)](),_0x262b01=_0x4bd885||_0x38b0b6;if(!_0x262b01)throw CliErrors[_0x2146e0(0x176)](_0x2146e0(0x178),_0x2146e0(0x154)+CLI_BIN_NAME+_0x2146e0(0x170)+CLI_BIN_NAME+_0x2146e0(0x164));if(_0x38b0b6)assertValidAppcode(_0x38b0b6);const _0xf95568=resolveWriteConfigPath(_0x2146e0(0x14d)),_0x2b90cf=readConfigFile(_0xf95568),_0x36e3c3=resolveKnownApps(),_0x232574=isRecord(_0x2b90cf[_0x2146e0(0x163)])?{..._0x2b90cf['apps']}:{},_0x5c3b4d=cloneProfile(_0x232574[_0x262b01]),_0x3c100=sanitizeProfile(_0x36e3c3[_0x262b01]),_0x71b86d=_0x38b0b6?{}:_0x3c100,_0x89037f=_0x38b0b6||_0x71b86d[_0x2146e0(0x152)];if(!_0x89037f){const _0x307335=Object[_0x2146e0(0x146)](_0x36e3c3),_0x19461d=_0x307335['length']===0x0?_0x2146e0(0x154)+CLI_BIN_NAME+'\x20workspace\x20'+_0x3753e1+'\x20--app\x20'+_0x262b01+_0x2146e0(0x177):_0x2146e0(0x173)+_0x307335['join'](',\x20');throw CliErrors['validation']('App\x20\x22'+_0x262b01+_0x2146e0(0x149),_0x19461d);}assertValidAppcode(String(_0x89037f));const _0x1c4589={..._0x71b86d,..._0x5c3b4d,'appcode':String(_0x89037f),...collectWorkspaceProfileOverrides(_0x1f8d0e)};return _0x232574[_0x262b01]=_0x1c4589,_0x2b90cf[_0x2146e0(0x163)]=_0x232574,_0x2b90cf[_0x2146e0(0x167)]=_0x262b01,delete _0x2b90cf['appcode'],delete _0x2b90cf[_0x2146e0(0x168)],_0x1c4589[_0x2146e0(0x160)]&&(_0x2b90cf[_0x2146e0(0x160)]=_0x1c4589['env']),writeConfigFile(_0xf95568,_0x2b90cf),{'ok':!![],'message':_0x2146e0(0x143)+(_0x3753e1===_0x2146e0(0x169)?_0x2146e0(0x142):_0x2146e0(0x16d))+':\x20'+_0x262b01+_0x2146e0(0x171)+_0x1c4589[_0x2146e0(0x152)]+_0x2146e0(0x17a)+_0xf95568+_0x2146e0(0x16a),'data':{'operation':_0x2146e0(0x14f)+_0x3753e1,'configPath':_0xf95568,'app':_0x262b01,'appcode':_0x1c4589[_0x2146e0(0x152)],'env':_0x1c4589[_0x2146e0(0x160)]??null,'credentialsWritten':![]}};}const workspaceInitDefinition={'service':a163_0x576ad4(0x14e),'command':a163_0x576ad4(0x169),'description':'Initialize\x20the\x20current\x20workspace\x20app\x20binding','risk':a163_0x576ad4(0x175),'requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x1dfdee=>configureWorkspace(_0x1dfdee,a163_0x576ad4(0x169))},workspaceUseDefinition={'service':a163_0x576ad4(0x14e),'command':'use','description':a163_0x576ad4(0x159),'risk':a163_0x576ad4(0x175),'requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x1040d3=>configureWorkspace(_0x1040d3,a163_0x576ad4(0x16b))};export const workspaceDefinitions=[workspaceInitDefinition,workspaceUseDefinition,workspaceAddDefinition,workspaceRemoveDefinition];export{WORKSPACE_USAGE};
1
+ const a163_0xc1c43c=a163_0x5907;(function(_0x5b57b7,_0x53db13){const _0x55635d=a163_0x5907,_0x15e1c4=_0x5b57b7();while(!![]){try{const _0x2c8e58=parseInt(_0x55635d(0x14b))/0x1+parseInt(_0x55635d(0x169))/0x2+parseInt(_0x55635d(0x16c))/0x3*(-parseInt(_0x55635d(0x14d))/0x4)+-parseInt(_0x55635d(0x154))/0x5*(-parseInt(_0x55635d(0x158))/0x6)+-parseInt(_0x55635d(0x15b))/0x7*(-parseInt(_0x55635d(0x15a))/0x8)+-parseInt(_0x55635d(0x165))/0x9*(-parseInt(_0x55635d(0x163))/0xa)+parseInt(_0x55635d(0x15e))/0xb*(-parseInt(_0x55635d(0x13d))/0xc);if(_0x2c8e58===_0x53db13)break;else _0x15e1c4['push'](_0x15e1c4['shift']());}catch(_0x1b2c1f){_0x15e1c4['push'](_0x15e1c4['shift']());}}}(a163_0x482d,0xc8d1f));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{RABETBASE_ENV_VALUES}from'../../constant/env.js';import{RABETBASE_OUTPUT_FORMAT_VALUES}from'../../constant/output.js';function a163_0x5907(_0x142943,_0x17a20a){_0x142943=_0x142943-0x13a;const _0x482d78=a163_0x482d();let _0x590768=_0x482d78[_0x142943];return _0x590768;}import{RISK_LEVEL_VALUES}from'../../constant/risk.js';import{validateAppcode}from'../../commands/common/validate.js';function a163_0x482d(){const _0x4f5ddb=['\x20workspace\x20<init|use>\x20--app\x20<name>\x20[--appcode\x20<code>]','join','apps','validation',').\x20Config:\x20','App\x20profile\x20name\x20to\x20use\x20in\x20this\x20workspace','Missing\x20workspace\x20app\x20selector.','initialized','27190572IfBVXK','\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20`','Initialize\x20the\x20current\x20workspace\x20app\x20binding','\x22\x20not\x20found.','keys','env','Switch\x20the\x20current\x20workspace\x20app\x20binding','isArray','object','locale','App\x20code\x20to\x20bind\x20to\x20this\x20workspace','appcode','\x20(appcode:\x20','globalConfig','987569PhgEPd','Use\x20`','903016BmCjcI','defaultApp','use','Pass\x20--appcode\x20<code>,\x20or\x20choose\x20one\x20of:\x20','write','workspace','Default\x20output\x20format\x20for\x20this\x20workspace\x20app\x20profile','43480dYEefv','.\x20Credentials:\x20not\x20written.','trim','Risk\x20level\x20for\x20this\x20workspace\x20app\x20profile','1002SemyCN','flag','136YfSNGR','639667xqBKsU','Target\x20environment','pageSize','22xFtYKe','apiDir','\x20workspace\x20use\x20--app\x20<name>`.','string','app','2770uLuZUJ','\x20--appcode\x20<code>`.','42057WvbUWC','Invalid\x20appcode:\x20','Workspace\x20','riskLevel','1939276PsiVoz','Locale\x20for\x20this\x20workspace\x20app\x20profile','init','12tYuUiu','project','App\x20\x22','format','workspace.','number','str'];a163_0x482d=function(){return _0x4f5ddb;};return a163_0x482d();}import{readConfigFile,readRawConfigWithLayers,resolveWriteConfigPath,writeConfigFile}from'../../context.js';import{workspaceAddDefinition}from'../../commands/workspace/add.js';import{workspaceRemoveDefinition}from'../../commands/workspace/remove.js';const WORKSPACE_USAGE=CLI_BIN_NAME+a163_0xc1c43c(0x173),SAFE_PROFILE_KEYS=[a163_0xc1c43c(0x148),'env','apiDir',a163_0xc1c43c(0x16f),a163_0xc1c43c(0x15d),a163_0xc1c43c(0x168),'locale'],workspaceFlags=[{'name':a163_0xc1c43c(0x162),'type':a163_0xc1c43c(0x161),'description':a163_0xc1c43c(0x13a)},{'name':a163_0xc1c43c(0x148),'type':'string','description':a163_0xc1c43c(0x147)},{'name':a163_0xc1c43c(0x142),'type':a163_0xc1c43c(0x161),'description':a163_0xc1c43c(0x15c),'enum':[...RABETBASE_ENV_VALUES]},{'name':a163_0xc1c43c(0x15f),'type':a163_0xc1c43c(0x161),'description':'API\x20directory\x20path\x20for\x20this\x20workspace\x20app\x20profile'},{'name':'defaultFormat','type':a163_0xc1c43c(0x161),'description':a163_0xc1c43c(0x153),'enum':[...RABETBASE_OUTPUT_FORMAT_VALUES]},{'name':a163_0xc1c43c(0x15d),'type':a163_0xc1c43c(0x171),'description':'Default\x20page\x20size\x20for\x20this\x20workspace\x20app\x20profile'},{'name':a163_0xc1c43c(0x168),'type':a163_0xc1c43c(0x161),'description':a163_0xc1c43c(0x157),'enum':[...RISK_LEVEL_VALUES]},{'name':a163_0xc1c43c(0x146),'type':'string','description':a163_0xc1c43c(0x16a)}];function isRecord(_0x1c880c){const _0xe8cf42=a163_0xc1c43c;return!!_0x1c880c&&typeof _0x1c880c===_0xe8cf42(0x145)&&!Array[_0xe8cf42(0x144)](_0x1c880c);}function assertValidAppcode(_0x3a58bf){const _0x37e5ad=a163_0xc1c43c,{valid:_0x4e2ac8,message:_0x3f84f7}=validateAppcode(_0x3a58bf);if(!_0x4e2ac8)throw CliErrors[_0x37e5ad(0x176)](_0x37e5ad(0x166)+_0x3a58bf,_0x3f84f7);}function sanitizeProfile(_0xa0c48c){if(!isRecord(_0xa0c48c))return{};const _0x45c34e={};for(const _0x1b93d8 of SAFE_PROFILE_KEYS){if(_0xa0c48c[_0x1b93d8]!==undefined)_0x45c34e[_0x1b93d8]=_0xa0c48c[_0x1b93d8];}return _0x45c34e;}function cloneProfile(_0x592787){return isRecord(_0x592787)?{..._0x592787}:{};}function collectWorkspaceProfileOverrides(_0x4079e9){const _0x3e2da9=a163_0xc1c43c,_0x3b24d8={},_0x575692=_0x4079e9[_0x3e2da9(0x172)](_0x3e2da9(0x142)),_0x4bd97d=_0x4079e9[_0x3e2da9(0x172)](_0x3e2da9(0x15f)),_0x1efc3f=_0x4079e9[_0x3e2da9(0x172)]('defaultFormat'),_0x36d7f6=_0x4079e9[_0x3e2da9(0x159)](_0x3e2da9(0x15d)),_0x4b8174=_0x4079e9['str'](_0x3e2da9(0x168)),_0x4f46cf=_0x4079e9[_0x3e2da9(0x172)](_0x3e2da9(0x146));if(_0x575692)_0x3b24d8[_0x3e2da9(0x142)]=_0x575692;if(_0x4bd97d)_0x3b24d8['apiDir']=_0x4bd97d;if(_0x1efc3f)_0x3b24d8[_0x3e2da9(0x16f)]=_0x1efc3f;if(_0x36d7f6!==undefined&&_0x36d7f6!=='')_0x3b24d8[_0x3e2da9(0x15d)]=Number(_0x36d7f6);if(_0x4b8174)_0x3b24d8[_0x3e2da9(0x168)]=_0x4b8174;if(_0x4f46cf)_0x3b24d8[_0x3e2da9(0x146)]=_0x4f46cf;return _0x3b24d8;}async function validateWorkspaceArgs(_0x5f0570){const _0x3408fd=a163_0xc1c43c,_0x356bfc=_0x5f0570[_0x3408fd(0x172)]('app')['trim'](),_0x254e91=_0x5f0570[_0x3408fd(0x172)]('appcode')[_0x3408fd(0x156)]();if(!_0x356bfc&&!_0x254e91)throw CliErrors[_0x3408fd(0x176)](_0x3408fd(0x13b),_0x3408fd(0x14c)+CLI_BIN_NAME+'\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20`'+CLI_BIN_NAME+_0x3408fd(0x160));if(_0x254e91)assertValidAppcode(_0x254e91);}function resolveKnownApps(){const _0x56fe87=a163_0xc1c43c,{config:_0x1ee51a,layers:_0x2ac4b7}=readRawConfigWithLayers(),_0x4cc86e=isRecord(_0x1ee51a[_0x56fe87(0x175)])?_0x1ee51a[_0x56fe87(0x175)]:{},_0x17461a=isRecord(_0x2ac4b7[_0x56fe87(0x14a)][_0x56fe87(0x175)])?_0x2ac4b7[_0x56fe87(0x14a)][_0x56fe87(0x175)]:{};return{..._0x17461a,..._0x4cc86e};}async function configureWorkspace(_0x595e8e,_0x32d4a4){const _0x3f7372=a163_0xc1c43c,_0x245fc0=_0x595e8e[_0x3f7372(0x172)](_0x3f7372(0x162))[_0x3f7372(0x156)](),_0x30256d=_0x595e8e[_0x3f7372(0x172)]('appcode')[_0x3f7372(0x156)](),_0x11dda2=_0x245fc0||_0x30256d;if(!_0x11dda2)throw CliErrors[_0x3f7372(0x176)](_0x3f7372(0x13b),_0x3f7372(0x14c)+CLI_BIN_NAME+_0x3f7372(0x13e)+CLI_BIN_NAME+_0x3f7372(0x160));if(_0x30256d)assertValidAppcode(_0x30256d);const _0x19ba04=resolveWriteConfigPath(_0x3f7372(0x16d)),_0x44d72d=readConfigFile(_0x19ba04),_0x134ff5=resolveKnownApps(),_0x589436=isRecord(_0x44d72d['apps'])?{..._0x44d72d['apps']}:{},_0x2963a3=cloneProfile(_0x589436[_0x11dda2]),_0x5e7271=sanitizeProfile(_0x134ff5[_0x11dda2]),_0x46a032=_0x30256d?{}:_0x5e7271,_0x28e681=_0x30256d||_0x46a032[_0x3f7372(0x148)];if(!_0x28e681){const _0x47829d=Object[_0x3f7372(0x141)](_0x134ff5),_0x104522=_0x47829d['length']===0x0?'Use\x20`'+CLI_BIN_NAME+'\x20workspace\x20'+_0x32d4a4+'\x20--app\x20'+_0x11dda2+_0x3f7372(0x164):_0x3f7372(0x150)+_0x47829d[_0x3f7372(0x174)](',\x20');throw CliErrors[_0x3f7372(0x176)](_0x3f7372(0x16e)+_0x11dda2+_0x3f7372(0x140),_0x104522);}assertValidAppcode(String(_0x28e681));const _0x2e4f5f={..._0x46a032,..._0x2963a3,'appcode':String(_0x28e681),...collectWorkspaceProfileOverrides(_0x595e8e)};return _0x589436[_0x11dda2]=_0x2e4f5f,_0x44d72d['apps']=_0x589436,_0x44d72d[_0x3f7372(0x14e)]=_0x11dda2,delete _0x44d72d[_0x3f7372(0x148)],delete _0x44d72d[_0x3f7372(0x162)],_0x2e4f5f[_0x3f7372(0x142)]&&(_0x44d72d[_0x3f7372(0x142)]=_0x2e4f5f['env']),writeConfigFile(_0x19ba04,_0x44d72d),{'ok':!![],'message':_0x3f7372(0x167)+(_0x32d4a4==='init'?_0x3f7372(0x13c):'updated')+':\x20'+_0x11dda2+_0x3f7372(0x149)+_0x2e4f5f[_0x3f7372(0x148)]+_0x3f7372(0x177)+_0x19ba04+_0x3f7372(0x155),'data':{'operation':_0x3f7372(0x170)+_0x32d4a4,'configPath':_0x19ba04,'app':_0x11dda2,'appcode':_0x2e4f5f['appcode'],'env':_0x2e4f5f[_0x3f7372(0x142)]??null,'credentialsWritten':![]}};}const workspaceInitDefinition={'service':a163_0xc1c43c(0x152),'command':a163_0xc1c43c(0x16b),'description':a163_0xc1c43c(0x13f),'risk':a163_0xc1c43c(0x151),'requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x337413=>configureWorkspace(_0x337413,'init')},workspaceUseDefinition={'service':a163_0xc1c43c(0x152),'command':a163_0xc1c43c(0x14f),'description':a163_0xc1c43c(0x143),'risk':a163_0xc1c43c(0x151),'requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x438812=>configureWorkspace(_0x438812,'use')};export const workspaceDefinitions=[workspaceInitDefinition,workspaceUseDefinition,workspaceAddDefinition,workspaceRemoveDefinition];export{WORKSPACE_USAGE};
@@ -1 +1 @@
1
- function a164_0x511a(_0x33b9be,_0x3319bf){_0x33b9be=_0x33b9be-0xd7;const _0x341968=a164_0x3419();let _0x511a85=_0x341968[_0x33b9be];return _0x511a85;}const a164_0x320af0=a164_0x511a;(function(_0x4144d1,_0x2f23fc){const _0x48ac6b=a164_0x511a,_0x5c96c6=_0x4144d1();while(!![]){try{const _0x94d0b3=parseInt(_0x48ac6b(0xe3))/0x1*(-parseInt(_0x48ac6b(0xdc))/0x2)+-parseInt(_0x48ac6b(0xdf))/0x3+parseInt(_0x48ac6b(0xe0))/0x4+-parseInt(_0x48ac6b(0xde))/0x5+-parseInt(_0x48ac6b(0xe1))/0x6+parseInt(_0x48ac6b(0xdb))/0x7+-parseInt(_0x48ac6b(0xe2))/0x8*(-parseInt(_0x48ac6b(0xd7))/0x9);if(_0x94d0b3===_0x2f23fc)break;else _0x5c96c6['push'](_0x5c96c6['shift']());}catch(_0x3d19cf){_0x5c96c6['push'](_0x5c96c6['shift']());}}}(a164_0x3419,0xa66cb));function a164_0x3419(){const _0x175cfd=['3975710NvPsCH','3152355YXtvdA','2707900HrXTTU','2137224SIJKKN','23720768QFQaUN','1REjENQ','name','9xnDMps','Remove\x20an\x20app\x20profile\x20from\x20the\x20current\x20workspace\x20(or\x20--global)','workspace\x20remove','remove','3716538pNcUPy','2578398CjLtGE','workspace'];a164_0x3419=function(){return _0x175cfd;};return a164_0x3419();}import{buildAppRemoveFlags,runAppRemove,validateAppName}from'../../commands/common/app-registry.js';export const workspaceRemoveDefinition={'service':a164_0x320af0(0xdd),'command':a164_0x320af0(0xda),'description':a164_0x320af0(0xd8),'risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a164_0x320af0(0xe4),'description':'App\x20profile\x20name\x20to\x20remove','required':!![]}],'flags':buildAppRemoveFlags(),'validate':_0x776a4d=>validateAppName(_0x776a4d,a164_0x320af0(0xd9)),'execute':_0x404e0d=>runAppRemove(_0x404e0d,a164_0x320af0(0xd9))};
1
+ function a164_0x3328(){const _0x52c80f=['workspace','workspace\x20remove','2717848RExlHw','156789WRRpHU','Remove\x20an\x20app\x20profile\x20from\x20the\x20current\x20workspace\x20(or\x20--global)','16cVTbkT','3424234BsgAkH','1408956chfwcr','name','7301007DuWZjp','1YXiMsY','6318170XyJyMq','5SJTTfy','App\x20profile\x20name\x20to\x20remove','high-risk-write','remove','2316895iquZVX'];a164_0x3328=function(){return _0x52c80f;};return a164_0x3328();}const a164_0x4b1fa6=a164_0xa372;function a164_0xa372(_0x4df741,_0x2ab9d0){_0x4df741=_0x4df741-0x132;const _0x33280b=a164_0x3328();let _0xa372f4=_0x33280b[_0x4df741];return _0xa372f4;}(function(_0x19a629,_0x565af1){const _0x1c8f95=a164_0xa372,_0x3ffc93=_0x19a629();while(!![]){try{const _0x33b757=parseInt(_0x1c8f95(0x13d))/0x1*(parseInt(_0x1c8f95(0x139))/0x2)+parseInt(_0x1c8f95(0x136))/0x3*(-parseInt(_0x1c8f95(0x138))/0x4)+-parseInt(_0x1c8f95(0x13f))/0x5*(-parseInt(_0x1c8f95(0x13a))/0x6)+-parseInt(_0x1c8f95(0x132))/0x7+-parseInt(_0x1c8f95(0x135))/0x8+-parseInt(_0x1c8f95(0x13c))/0x9+parseInt(_0x1c8f95(0x13e))/0xa;if(_0x33b757===_0x565af1)break;else _0x3ffc93['push'](_0x3ffc93['shift']());}catch(_0x1c5d08){_0x3ffc93['push'](_0x3ffc93['shift']());}}}(a164_0x3328,0xd8bd9));import{buildAppRemoveFlags,runAppRemove,validateAppName}from'../../commands/common/app-registry.js';export const workspaceRemoveDefinition={'service':a164_0x4b1fa6(0x133),'command':a164_0x4b1fa6(0x142),'description':a164_0x4b1fa6(0x137),'risk':a164_0x4b1fa6(0x141),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a164_0x4b1fa6(0x13b),'description':a164_0x4b1fa6(0x140),'required':!![]}],'flags':buildAppRemoveFlags(),'validate':_0x41a91e=>validateAppName(_0x41a91e,a164_0x4b1fa6(0x134)),'execute':_0x15c029=>runAppRemove(_0x15c029,a164_0x4b1fa6(0x134))};
@@ -1 +1 @@
1
- const a165_0x15935e=a165_0x5aa7;(function(_0x1083c4,_0x18a4bc){const _0x2cc202=a165_0x5aa7,_0x270090=_0x1083c4();while(!![]){try{const _0x56d979=parseInt(_0x2cc202(0x187))/0x1*(parseInt(_0x2cc202(0x172))/0x2)+parseInt(_0x2cc202(0x17b))/0x3+parseInt(_0x2cc202(0x18a))/0x4*(-parseInt(_0x2cc202(0x16c))/0x5)+parseInt(_0x2cc202(0x179))/0x6+parseInt(_0x2cc202(0x176))/0x7+parseInt(_0x2cc202(0x190))/0x8*(-parseInt(_0x2cc202(0x18b))/0x9)+-parseInt(_0x2cc202(0x180))/0xa*(parseInt(_0x2cc202(0x18c))/0xb);if(_0x56d979===_0x18a4bc)break;else _0x270090['push'](_0x270090['shift']());}catch(_0x2a84dc){_0x270090['push'](_0x270090['shift']());}}}(a165_0x269c,0x4b0b5));import{DEFAULT_CONFIG_VALUES}from'../constant/defaults.js';import{RABETBASE_ENV_VALUES}from'../constant/env.js';import{RABETBASE_OUTPUT_FORMAT_VALUES}from'../constant/output.js';import{RISK_LEVEL_VALUES}from'../constant/risk.js';export{DEFAULT_CONFIG_VALUES}from'../constant/defaults.js';export const PROJECT_CREATE_INHERITABLE_KEYS=[a165_0x15935e(0x185),a165_0x15935e(0x17a),'locale',a165_0x15935e(0x178),a165_0x15935e(0x17f)];export const TOP_LEVEL_CONFIG_KEYS=new Set([a165_0x15935e(0x16a),'env',a165_0x15935e(0x16e),a165_0x15935e(0x178),a165_0x15935e(0x185),a165_0x15935e(0x17a),'apiDir']);export const CONFIG_ENUM_VALUES={'env':[...RABETBASE_ENV_VALUES],'format':[...RABETBASE_OUTPUT_FORMAT_VALUES]};export function formatConfigKeyList(_0x14914c){const _0x3906a0=a165_0x15935e;return[..._0x14914c][_0x3906a0(0x182)](',\x20');}export function getTopLevelConfigKeyList(){return[...TOP_LEVEL_CONFIG_KEYS];}export function isTopLevelConfigKey(_0x3d7490){const _0x218e4c=a165_0x15935e;return TOP_LEVEL_CONFIG_KEYS[_0x218e4c(0x171)](_0x3d7490);}export function getTopLevelConfigKeySummary(){return formatConfigKeyList(getTopLevelConfigKeyList());}function a165_0x5aa7(_0x4b04c1,_0x54abfa){_0x4b04c1=_0x4b04c1-0x16a;const _0x269cd5=a165_0x269c();let _0x5aa793=_0x269cd5[_0x4b04c1];return _0x5aa793;}export function getConfigCommandKeyDescription(){return'Config\x20key\x20('+getTopLevelConfigKeySummary()+')';}export const APP_PROFILE_FLAG_KEY_MAP={'env':'env','apiDir':'apiDir','cookie':a165_0x15935e(0x185),'accessKey':a165_0x15935e(0x17a),'defaultFormat':a165_0x15935e(0x178),'pageSize':a165_0x15935e(0x16d),'riskLevel':a165_0x15935e(0x17f),'locale':a165_0x15935e(0x16e)};export function getAppProfileFlagDefs(){const _0x5d6797=a165_0x15935e;return[{'name':_0x5d6797(0x183),'type':_0x5d6797(0x17c),'description':'Target\x20environment','enum':[...RABETBASE_ENV_VALUES]},{'name':_0x5d6797(0x188),'type':_0x5d6797(0x17c),'description':_0x5d6797(0x18e)},{'name':'cookie','type':_0x5d6797(0x17c),'description':_0x5d6797(0x16f),'hidden':!![]},{'name':'accessKey','type':_0x5d6797(0x17c),'description':'Access\x20key','hidden':!![]},{'name':'defaultFormat','type':'string','description':'Default\x20output\x20format\x20for\x20this\x20app\x20(profile)','enum':[...RABETBASE_OUTPUT_FORMAT_VALUES]},{'name':_0x5d6797(0x16d),'type':_0x5d6797(0x16b),'description':'Default\x20page\x20size'},{'name':_0x5d6797(0x17f),'type':_0x5d6797(0x17c),'description':_0x5d6797(0x18d),'enum':[...RISK_LEVEL_VALUES]},{'name':_0x5d6797(0x16e),'type':'string','description':_0x5d6797(0x181)}];}export function collectAppProfileOverrides(_0x203d2a){const _0x3c225c=a165_0x15935e,_0x93e724={};for(const [_0x54f700,_0xbb5861]of Object[_0x3c225c(0x174)](APP_PROFILE_FLAG_KEY_MAP)){const _0x13435e=_0x203d2a(_0x54f700);if(!_0x13435e)continue;_0x93e724[_0xbb5861]=_0xbb5861==='pageSize'?Number(_0x13435e):_0x13435e;}return _0x93e724;}function a165_0x269c(){const _0x305d03=['inherit','has','75918jtnlGH','trim','entries','zh-CN','2212098XBoajW','toLowerCase','format','1080006hdrMfj','accessKey','1777347nqcDLa','string','en-US','keys','riskLevel','82990vKmNNu','Locale','join','env','apps','cookie','app','11XEYMxz','apiDir','map','8204QcNfMv','158913DcldZQ','561qCgHrU','Risk\x20level','API\x20directory\x20path','defaultApp','224pSfmzS','appcode','number','685pfKbhr','pageSize','locale','Auth\x20cookie'];a165_0x269c=function(){return _0x305d03;};return a165_0x269c();}export function buildAppProfileListFields(_0x3fb317){const _0x46c46e=a165_0x15935e;return{'env':_0x3fb317[_0x46c46e(0x183)]??null,'apiDir':_0x3fb317[_0x46c46e(0x188)]??null,'hasCookie':!!_0x3fb317[_0x46c46e(0x185)],'hasAccessKey':!!_0x3fb317['accessKey'],'format':_0x3fb317['format']??null,'pageSize':_0x3fb317[_0x46c46e(0x16d)]??null,'riskLevel':_0x3fb317[_0x46c46e(0x17f)]??null,'locale':_0x3fb317[_0x46c46e(0x16e)]??null};}export function buildAppDoctorFields(_0x4a5b4a,_0x456b8b){const _0xee1c5e=a165_0x15935e;return{'env':{'value':_0x4a5b4a[_0xee1c5e(0x183)]||_0x456b8b[_0xee1c5e(0x183)],'source':_0x4a5b4a['env']?_0xee1c5e(0x186):_0xee1c5e(0x170)},'apiDir':{'value':_0x4a5b4a[_0xee1c5e(0x188)]||_0x456b8b[_0xee1c5e(0x188)],'source':_0x4a5b4a[_0xee1c5e(0x188)]?_0xee1c5e(0x186):_0xee1c5e(0x170)},'cookie':{'value':_0x4a5b4a[_0xee1c5e(0x185)]||_0x456b8b['cookie'],'source':_0x4a5b4a['cookie']?'app':_0xee1c5e(0x170)},'accessKey':{'value':_0x4a5b4a['accessKey']||_0x456b8b['accessKey'],'source':_0x4a5b4a[_0xee1c5e(0x17a)]?_0xee1c5e(0x186):_0xee1c5e(0x170)}};}export function buildCanonicalAppConfig(_0xd5011f,_0x4423fd){const _0x437941=a165_0x15935e,_0x1d243e=_0xd5011f[_0x437941(0x189)](_0x3aa27e=>String(_0x3aa27e||'')[_0x437941(0x173)]())['filter'](Boolean);if(_0x1d243e['length']===0x0)return{};const _0x197325={};for(const _0x1de1a5 of _0x1d243e){_0x197325[_0x1de1a5]=_0x4423fd?{'appcode':_0x1de1a5,'env':_0x4423fd}:{'appcode':_0x1de1a5};}return{'apps':_0x197325,'defaultApp':_0x1d243e[0x0]};}export function buildCanonicalProjectConfig(_0x165e85,_0x581242){const _0x19f64c=a165_0x15935e,{appCodes:appCodes=[],env:_0x3629b2,metadata:_0x17b770}=_0x581242,_0x223da1={..._0x165e85,..._0x17b770||{}};delete _0x223da1[_0x19f64c(0x16a)],delete _0x223da1[_0x19f64c(0x186)];if(_0x3629b2)_0x223da1[_0x19f64c(0x183)]=_0x3629b2;else!_0x223da1[_0x19f64c(0x183)]&&(_0x223da1[_0x19f64c(0x183)]=DEFAULT_CONFIG_VALUES[_0x19f64c(0x183)]);const _0x459061=buildCanonicalAppConfig(appCodes,_0x223da1[_0x19f64c(0x183)]);return Object[_0x19f64c(0x17e)](_0x459061)['length']>0x0&&(_0x223da1[_0x19f64c(0x184)]=_0x459061['apps'],_0x223da1['defaultApp']=_0x459061[_0x19f64c(0x18f)]),_0x223da1;}const LOCALE_MAP={'zh':'zh-CN','zh-cn':a165_0x15935e(0x175),'zh_cn':'zh-CN','en':'en-US','en-us':a165_0x15935e(0x17d),'en_us':a165_0x15935e(0x17d)};export function normalizeLocale(_0x4eeea9){const _0x41a3e9=a165_0x15935e;if(!_0x4eeea9)return null;return LOCALE_MAP[_0x4eeea9[_0x41a3e9(0x177)]()]??null;}
1
+ const a165_0x562883=a165_0x46db;(function(_0x297c81,_0x5bc160){const _0x5af787=a165_0x46db,_0x2a71fc=_0x297c81();while(!![]){try{const _0x12b49f=-parseInt(_0x5af787(0x158))/0x1+-parseInt(_0x5af787(0x17e))/0x2*(-parseInt(_0x5af787(0x168))/0x3)+-parseInt(_0x5af787(0x169))/0x4*(-parseInt(_0x5af787(0x16e))/0x5)+-parseInt(_0x5af787(0x15e))/0x6*(-parseInt(_0x5af787(0x174))/0x7)+-parseInt(_0x5af787(0x172))/0x8+parseInt(_0x5af787(0x166))/0x9+-parseInt(_0x5af787(0x179))/0xa*(parseInt(_0x5af787(0x164))/0xb);if(_0x12b49f===_0x5bc160)break;else _0x2a71fc['push'](_0x2a71fc['shift']());}catch(_0x2c3b6a){_0x2a71fc['push'](_0x2a71fc['shift']());}}}(a165_0x9978,0xe47fd));import{DEFAULT_CONFIG_VALUES}from'../constant/defaults.js';import{RABETBASE_ENV_VALUES}from'../constant/env.js';import{RABETBASE_OUTPUT_FORMAT_VALUES}from'../constant/output.js';import{RISK_LEVEL_VALUES}from'../constant/risk.js';export{DEFAULT_CONFIG_VALUES}from'../constant/defaults.js';export const PROJECT_CREATE_INHERITABLE_KEYS=['cookie',a165_0x562883(0x160),a165_0x562883(0x170),'format',a165_0x562883(0x15f)];export const TOP_LEVEL_CONFIG_KEYS=new Set(['appcode',a165_0x562883(0x157),'locale',a165_0x562883(0x162),'cookie','accessKey',a165_0x562883(0x16f)]);function a165_0x9978(){const _0x321788=['riskLevel','accessKey','map','format','string','11244211YXtTno','en-US','5247369PxdSNu','join','3WyVzdF','74508SVLonB','trim','pageSize','defaultFormat','has','65FUlJlB','apiDir','locale','Target\x20environment','8568080JhWlAg','entries','21GKXRcz','appcode','Risk\x20level','keys','defaultApp','10zicvSS','apps','length','app','number','3488938mcAcVp','inherit','Access\x20key','env','322980qqzNZP','zh-CN','Auth\x20cookie','Locale','cookie','toLowerCase','1564926HTtZby'];a165_0x9978=function(){return _0x321788;};return a165_0x9978();}export const CONFIG_ENUM_VALUES={'env':[...RABETBASE_ENV_VALUES],'format':[...RABETBASE_OUTPUT_FORMAT_VALUES]};export function formatConfigKeyList(_0x2747d2){const _0x521b2d=a165_0x562883;return[..._0x2747d2][_0x521b2d(0x167)](',\x20');}export function getTopLevelConfigKeyList(){return[...TOP_LEVEL_CONFIG_KEYS];}export function isTopLevelConfigKey(_0x572b52){const _0x4c8a75=a165_0x562883;return TOP_LEVEL_CONFIG_KEYS[_0x4c8a75(0x16d)](_0x572b52);}export function getTopLevelConfigKeySummary(){return formatConfigKeyList(getTopLevelConfigKeyList());}export function getConfigCommandKeyDescription(){return'Config\x20key\x20('+getTopLevelConfigKeySummary()+')';}export const APP_PROFILE_FLAG_KEY_MAP={'env':a165_0x562883(0x157),'apiDir':'apiDir','cookie':a165_0x562883(0x15c),'accessKey':a165_0x562883(0x160),'defaultFormat':'format','pageSize':'pageSize','riskLevel':'riskLevel','locale':a165_0x562883(0x170)};export function getAppProfileFlagDefs(){const _0x576af2=a165_0x562883;return[{'name':'env','type':'string','description':_0x576af2(0x171),'enum':[...RABETBASE_ENV_VALUES]},{'name':_0x576af2(0x16f),'type':_0x576af2(0x163),'description':'API\x20directory\x20path'},{'name':_0x576af2(0x15c),'type':_0x576af2(0x163),'description':_0x576af2(0x15a),'hidden':!![]},{'name':_0x576af2(0x160),'type':_0x576af2(0x163),'description':_0x576af2(0x156),'hidden':!![]},{'name':_0x576af2(0x16c),'type':'string','description':'Default\x20output\x20format\x20for\x20this\x20app\x20(profile)','enum':[...RABETBASE_OUTPUT_FORMAT_VALUES]},{'name':_0x576af2(0x16b),'type':_0x576af2(0x17d),'description':'Default\x20page\x20size'},{'name':_0x576af2(0x15f),'type':'string','description':_0x576af2(0x176),'enum':[...RISK_LEVEL_VALUES]},{'name':_0x576af2(0x170),'type':_0x576af2(0x163),'description':_0x576af2(0x15b)}];}function a165_0x46db(_0x31751e,_0x2805b1){_0x31751e=_0x31751e-0x155;const _0x997885=a165_0x9978();let _0x46db23=_0x997885[_0x31751e];return _0x46db23;}export function collectAppProfileOverrides(_0x53d4a5){const _0x3a3ca3=a165_0x562883,_0x1cc544={};for(const [_0x2ffde8,_0x501016]of Object[_0x3a3ca3(0x173)](APP_PROFILE_FLAG_KEY_MAP)){const _0x3441d3=_0x53d4a5(_0x2ffde8);if(!_0x3441d3)continue;_0x1cc544[_0x501016]=_0x501016===_0x3a3ca3(0x16b)?Number(_0x3441d3):_0x3441d3;}return _0x1cc544;}export function buildAppProfileListFields(_0x417d10){const _0x3da3db=a165_0x562883;return{'env':_0x417d10['env']??null,'apiDir':_0x417d10[_0x3da3db(0x16f)]??null,'hasCookie':!!_0x417d10[_0x3da3db(0x15c)],'hasAccessKey':!!_0x417d10['accessKey'],'format':_0x417d10[_0x3da3db(0x162)]??null,'pageSize':_0x417d10[_0x3da3db(0x16b)]??null,'riskLevel':_0x417d10[_0x3da3db(0x15f)]??null,'locale':_0x417d10[_0x3da3db(0x170)]??null};}export function buildAppDoctorFields(_0x309c97,_0x14a4e5){const _0xe5e503=a165_0x562883;return{'env':{'value':_0x309c97[_0xe5e503(0x157)]||_0x14a4e5[_0xe5e503(0x157)],'source':_0x309c97[_0xe5e503(0x157)]?_0xe5e503(0x17c):'inherit'},'apiDir':{'value':_0x309c97[_0xe5e503(0x16f)]||_0x14a4e5['apiDir'],'source':_0x309c97[_0xe5e503(0x16f)]?_0xe5e503(0x17c):_0xe5e503(0x155)},'cookie':{'value':_0x309c97['cookie']||_0x14a4e5['cookie'],'source':_0x309c97['cookie']?_0xe5e503(0x17c):_0xe5e503(0x155)},'accessKey':{'value':_0x309c97['accessKey']||_0x14a4e5[_0xe5e503(0x160)],'source':_0x309c97[_0xe5e503(0x160)]?_0xe5e503(0x17c):_0xe5e503(0x155)}};}export function buildCanonicalAppConfig(_0x4ccaea,_0x776294){const _0x4413fb=a165_0x562883,_0x42330b=_0x4ccaea[_0x4413fb(0x161)](_0x300561=>String(_0x300561||'')[_0x4413fb(0x16a)]())['filter'](Boolean);if(_0x42330b[_0x4413fb(0x17b)]===0x0)return{};const _0x567605={};for(const _0x13a790 of _0x42330b){_0x567605[_0x13a790]=_0x776294?{'appcode':_0x13a790,'env':_0x776294}:{'appcode':_0x13a790};}return{'apps':_0x567605,'defaultApp':_0x42330b[0x0]};}export function buildCanonicalProjectConfig(_0x224070,_0x4535de){const _0x1228cc=a165_0x562883,{appCodes:appCodes=[],env:_0x1e05d3,metadata:_0x15c822}=_0x4535de,_0x272461={..._0x224070,..._0x15c822||{}};delete _0x272461[_0x1228cc(0x175)],delete _0x272461[_0x1228cc(0x17c)];if(_0x1e05d3)_0x272461['env']=_0x1e05d3;else!_0x272461[_0x1228cc(0x157)]&&(_0x272461['env']=DEFAULT_CONFIG_VALUES['env']);const _0x5e73c5=buildCanonicalAppConfig(appCodes,_0x272461['env']);return Object[_0x1228cc(0x177)](_0x5e73c5)[_0x1228cc(0x17b)]>0x0&&(_0x272461['apps']=_0x5e73c5[_0x1228cc(0x17a)],_0x272461['defaultApp']=_0x5e73c5[_0x1228cc(0x178)]),_0x272461;}const LOCALE_MAP={'zh':'zh-CN','zh-cn':a165_0x562883(0x159),'zh_cn':a165_0x562883(0x159),'en':a165_0x562883(0x165),'en-us':a165_0x562883(0x165),'en_us':a165_0x562883(0x165)};export function normalizeLocale(_0x221793){const _0x19dcbe=a165_0x562883;if(!_0x221793)return null;return LOCALE_MAP[_0x221793[_0x19dcbe(0x15d)]()]??null;}
@@ -1 +1 @@
1
- function a166_0x2dd3(_0x3f7111,_0x419456){_0x3f7111=_0x3f7111-0x17d;const _0x5483bf=a166_0x5483();let _0x2dd318=_0x5483bf[_0x3f7111];return _0x2dd318;}const a166_0x37e199=a166_0x2dd3;(function(_0x47d920,_0x2d4e54){const _0x3f321b=a166_0x2dd3,_0x32091b=_0x47d920();while(!![]){try{const _0x24a74e=parseInt(_0x3f321b(0x17d))/0x1*(-parseInt(_0x3f321b(0x17f))/0x2)+-parseInt(_0x3f321b(0x185))/0x3+-parseInt(_0x3f321b(0x183))/0x4+-parseInt(_0x3f321b(0x180))/0x5+parseInt(_0x3f321b(0x184))/0x6+-parseInt(_0x3f321b(0x17e))/0x7+-parseInt(_0x3f321b(0x181))/0x8*(-parseInt(_0x3f321b(0x182))/0x9);if(_0x24a74e===_0x2d4e54)break;else _0x32091b['push'](_0x32091b['shift']());}catch(_0x559e2b){_0x32091b['push'](_0x32091b['shift']());}}}(a166_0x5483,0x19463));function a166_0x5483(){const _0x50ef78=['54eXvgQI','796360aQakid','137244LgxYQN','354684ETqjhE','https://g.lovrabet.com/dist/rabetbase-cli/config/index.json','58cBQyqg','1344504TVQSXm','1924LsdZiU','1034845lQdjaj','1137072nyQgBZ'];a166_0x5483=function(){return _0x50ef78;};return a166_0x5483();}export const CLI_VERSION_POLICY_URL=a166_0x37e199(0x186);
1
+ function a166_0x489c(){const _0x36683e=['12RXeDGn','40431911VqFvzo','3Lpswtc','112vQbxlk','1731188PaYMyS','345432dsMeNr','72FaTSmU','2052WTvPQE','341XDrydQ','634699fmLIuH','4570prqhHo','300290WXTnCG','538119GnugTY','https://g.lovrabet.com/dist/rabetbase-cli/config/index.json'];a166_0x489c=function(){return _0x36683e;};return a166_0x489c();}function a166_0x5852(_0x3b9065,_0x3ad14f){_0x3b9065=_0x3b9065-0x95;const _0x489cdd=a166_0x489c();let _0x58528f=_0x489cdd[_0x3b9065];return _0x58528f;}const a166_0x3652e3=a166_0x5852;(function(_0x16127b,_0x5f2b26){const _0x41af85=a166_0x5852,_0x33ba98=_0x16127b();while(!![]){try{const _0x4a3cff=-parseInt(_0x41af85(0x97))/0x1+parseInt(_0x41af85(0xa0))/0x2*(parseInt(_0x41af85(0x9e))/0x3)+parseInt(_0x41af85(0x95))/0x4*(-parseInt(_0x41af85(0x98))/0x5)+parseInt(_0x41af85(0xa1))/0x6*(-parseInt(_0x41af85(0x9f))/0x7)+parseInt(_0x41af85(0xa2))/0x8*(-parseInt(_0x41af85(0x9a))/0x9)+parseInt(_0x41af85(0x99))/0xa*(-parseInt(_0x41af85(0x96))/0xb)+-parseInt(_0x41af85(0x9c))/0xc*(-parseInt(_0x41af85(0x9d))/0xd);if(_0x4a3cff===_0x5f2b26)break;else _0x33ba98['push'](_0x33ba98['shift']());}catch(_0x3b0d0e){_0x33ba98['push'](_0x33ba98['shift']());}}}(a166_0x489c,0x75ac6));export const CLI_VERSION_POLICY_URL=a166_0x3652e3(0x9b);
@@ -1 +1 @@
1
- const a167_0x1f05ee=a167_0x58ab;(function(_0x2585a2,_0x39f50e){const _0x2df390=a167_0x58ab,_0x4db205=_0x2585a2();while(!![]){try{const _0x19f0c9=-parseInt(_0x2df390(0xf0))/0x1+parseInt(_0x2df390(0x117))/0x2*(parseInt(_0x2df390(0xe5))/0x3)+parseInt(_0x2df390(0xdb))/0x4*(-parseInt(_0x2df390(0xf3))/0x5)+-parseInt(_0x2df390(0x119))/0x6+parseInt(_0x2df390(0xef))/0x7*(-parseInt(_0x2df390(0x129))/0x8)+-parseInt(_0x2df390(0xf5))/0x9*(-parseInt(_0x2df390(0x106))/0xa)+-parseInt(_0x2df390(0xff))/0xb*(-parseInt(_0x2df390(0x10e))/0xc);if(_0x19f0c9===_0x39f50e)break;else _0x4db205['push'](_0x4db205['shift']());}catch(_0x4636ab){_0x4db205['push'](_0x4db205['shift']());}}}(a167_0x5ad6,0x1ba0c));export const CLI_BIN_NAME='rabetbase';function a167_0x58ab(_0x47b5f7,_0x2dc560){_0x47b5f7=_0x47b5f7-0xce;const _0x5ad68d=a167_0x5ad6();let _0x58abed=_0x5ad68d[_0x47b5f7];return _0x58abed;}export const CLI_DISPLAY_NAME=a167_0x1f05ee(0xf1);export const NPM_PACKAGE_NAME=a167_0x1f05ee(0x12d);export const GLOBAL_FLAGS=[{'name':a167_0x1f05ee(0xe2),'meowKey':a167_0x1f05ee(0xe2),'type':'string','description':a167_0x1f05ee(0xfa),'hint':a167_0x1f05ee(0xf4)},{'name':'app','meowKey':'app','type':'string','description':a167_0x1f05ee(0xd2),'hint':a167_0x1f05ee(0x109)},{'name':a167_0x1f05ee(0x124),'meowKey':a167_0x1f05ee(0x124),'type':a167_0x1f05ee(0x12a),'description':'Environment','hint':a167_0x1f05ee(0x116)},{'name':a167_0x1f05ee(0x12f),'meowKey':a167_0x1f05ee(0x12f),'type':'string','description':a167_0x1f05ee(0x113),'hint':a167_0x1f05ee(0xe3)},{'name':'jq','meowKey':'jq','type':'string','description':'Filter\x20JSON\x20output\x20(JQ_PATH\x20>\x20bundled\x20jq\x20>\x20PATH;\x20use\x20with\x20--format\x20json\x20or\x20compress)','hint':'<expr>'},{'name':a167_0x1f05ee(0xdc),'meowKey':a167_0x1f05ee(0x13c),'type':a167_0x1f05ee(0x127),'description':a167_0x1f05ee(0x11d)},{'name':a167_0x1f05ee(0xfc),'meowKey':a167_0x1f05ee(0xfc),'type':a167_0x1f05ee(0x127),'description':a167_0x1f05ee(0x13d)},{'name':a167_0x1f05ee(0x12b),'meowKey':a167_0x1f05ee(0xdd),'type':a167_0x1f05ee(0x127),'description':'Force\x20non-interactive\x20mode\x20(CI)'},{'name':'global','meowKey':'global','type':a167_0x1f05ee(0x127),'description':a167_0x1f05ee(0xfd)},{'name':'project','meowKey':a167_0x1f05ee(0xd4),'type':'boolean','description':'Use\x20project\x20config\x20scope'},{'name':'ci','meowKey':'ci','type':a167_0x1f05ee(0x127),'description':a167_0x1f05ee(0xd7),'hidden':!![]},{'name':a167_0x1f05ee(0x122),'meowKey':a167_0x1f05ee(0x122),'type':a167_0x1f05ee(0x127),'description':a167_0x1f05ee(0x105)},{'name':'name','meowKey':a167_0x1f05ee(0x10d),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x10c),'hidden':!![]},{'name':'title','meowKey':a167_0x1f05ee(0xed),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x10b),'hidden':!![]},{'name':a167_0x1f05ee(0xe4),'meowKey':a167_0x1f05ee(0xe4),'type':a167_0x1f05ee(0x127),'description':a167_0x1f05ee(0xee),'hidden':!![]},{'name':a167_0x1f05ee(0xf6),'meowKey':a167_0x1f05ee(0xf6),'type':a167_0x1f05ee(0x127),'description':'Watch\x20mode','hidden':!![]},{'name':'output','meowKey':a167_0x1f05ee(0xe0),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0xf8),'hidden':!![]},{'name':'params','meowKey':'params','type':a167_0x1f05ee(0x12a),'description':'JSON\x20params','hidden':!![]},{'name':'datasetcode','meowKey':a167_0x1f05ee(0x120),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x10a),'hidden':!![]},{'name':'all','meowKey':a167_0x1f05ee(0x12c),'type':a167_0x1f05ee(0x127),'description':a167_0x1f05ee(0x104),'hidden':!![]},{'name':a167_0x1f05ee(0x102),'meowKey':'enableBffSave','type':a167_0x1f05ee(0x127),'description':a167_0x1f05ee(0x13a),'hidden':!![]},{'name':'id','meowKey':'id','type':'string','description':a167_0x1f05ee(0x101),'hidden':!![]},{'name':a167_0x1f05ee(0xdf),'meowKey':a167_0x1f05ee(0xdf),'type':'string','description':a167_0x1f05ee(0xd8),'hidden':!![]},{'name':a167_0x1f05ee(0x111),'meowKey':a167_0x1f05ee(0x111),'type':a167_0x1f05ee(0x12a),'description':'File\x20path','hidden':!![]},{'name':a167_0x1f05ee(0x11c),'meowKey':a167_0x1f05ee(0x11c),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x114),'hidden':!![]},{'name':a167_0x1f05ee(0x134),'meowKey':a167_0x1f05ee(0x135),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x107),'hidden':!![]},{'name':a167_0x1f05ee(0xd9),'meowKey':'sqlname','type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x107),'hidden':!![]},{'name':a167_0x1f05ee(0xeb),'meowKey':a167_0x1f05ee(0x136),'type':a167_0x1f05ee(0x12a),'description':'DB\x20ID','hidden':!![]},{'name':'dbid','meowKey':'dbid','type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x11b),'hidden':!![]},{'name':a167_0x1f05ee(0xe9),'meowKey':a167_0x1f05ee(0xe9),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x12e),'hidden':!![]},{'name':a167_0x1f05ee(0xfb),'meowKey':a167_0x1f05ee(0xd3),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x110),'hidden':!![]},{'name':a167_0x1f05ee(0xd0),'meowKey':a167_0x1f05ee(0xd0),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0xda),'hidden':!![]},{'name':'pagesize','meowKey':a167_0x1f05ee(0xfe),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x132),'hidden':!![]},{'name':a167_0x1f05ee(0xd6),'meowKey':a167_0x1f05ee(0xd6),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x133),'hidden':!![]},{'name':a167_0x1f05ee(0xe6),'meowKey':a167_0x1f05ee(0xe6),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x108),'hidden':!![]},{'name':'sql','meowKey':a167_0x1f05ee(0x139),'type':a167_0x1f05ee(0x12a),'description':'SQL\x20string','hidden':!![]},{'name':a167_0x1f05ee(0x103),'meowKey':'schemas','type':'string','description':'Schemas','hidden':!![]},{'name':'operation','meowKey':a167_0x1f05ee(0x131),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x11f),'hidden':!![]},{'name':a167_0x1f05ee(0xd5),'meowKey':a167_0x1f05ee(0xd5),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x100),'hidden':!![]},{'name':a167_0x1f05ee(0x115),'meowKey':a167_0x1f05ee(0x11a),'type':a167_0x1f05ee(0x127),'description':a167_0x1f05ee(0xd1),'hidden':!![]},{'name':a167_0x1f05ee(0x126),'meowKey':a167_0x1f05ee(0x126),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0xf2),'hidden':!![]},{'name':a167_0x1f05ee(0x121),'meowKey':a167_0x1f05ee(0x121),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x118),'hidden':!![]},{'name':a167_0x1f05ee(0x11e),'meowKey':a167_0x1f05ee(0x11e),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0xe1),'hidden':!![]},{'name':'stdin','meowKey':'stdin','type':'boolean','description':a167_0x1f05ee(0x128),'hidden':!![]},{'name':'from-env','meowKey':a167_0x1f05ee(0x137),'type':'string','description':a167_0x1f05ee(0x10f),'hidden':!![]},{'name':a167_0x1f05ee(0x138),'meowKey':a167_0x1f05ee(0x138),'type':'boolean','description':a167_0x1f05ee(0x125),'hidden':!![]},{'name':a167_0x1f05ee(0xe7),'meowKey':a167_0x1f05ee(0xe7),'type':'boolean','description':a167_0x1f05ee(0xec),'hidden':!![]},{'name':a167_0x1f05ee(0xcf),'meowKey':a167_0x1f05ee(0xcf),'type':a167_0x1f05ee(0x127),'description':a167_0x1f05ee(0xf7),'hidden':!![]},{'name':'remote','meowKey':a167_0x1f05ee(0xde),'type':a167_0x1f05ee(0x127),'description':'Use\x20remote','hidden':!![]},{'name':'verbose','meowKey':a167_0x1f05ee(0xea),'type':a167_0x1f05ee(0x127),'description':'Verbose\x20output','hidden':!![]},{'name':'expected-count','meowKey':a167_0x1f05ee(0xf9),'type':a167_0x1f05ee(0x12a),'description':'Expected\x20affected\x20count','hidden':!![]},{'name':'operation-type','meowKey':a167_0x1f05ee(0x130),'type':a167_0x1f05ee(0x12a),'description':'Operation\x20type','hidden':!![]},{'name':'function-node','meowKey':a167_0x1f05ee(0x112),'type':a167_0x1f05ee(0x12a),'description':a167_0x1f05ee(0x13b),'hidden':!![]}];function a167_0x5ad6(){const _0x41a22f=['clear','543ffDRWM','code','force','meowKey','description','verbose','db-id','Force\x20overwrite','title','Clear','318073mlKBnK','41270ZjrDyG','Rabetbase\x20CLI','Config\x20key','12680vcxuOv','<code>','8163QGWmMz','watch','Confirm\x20destructive\x20action','Output\x20path','expectedCount','Override\x20appcode','description-file','yes','Use\x20global\x20config\x20scope','pagesize','11pZXBOp','Target\x20path','Record\x20ID','enable-bff-save','schemas','Apply\x20to\x20all','Show\x20help','310CZccxG','SQL\x20name','Code\x20filter','<name>','Dataset\x20code','Title','Name','name','2054772zSHmxI','Read\x20value\x20from\x20environment\x20variable','Description\x20file','file','functionNode','Output\x20format','SQL\x20code','skip-imports','production\x20|\x20daily','1202yUsNoc','Config\x20value','482160nPshXt','skipImports','DB\x20ID','sqlcode','Preview\x20operation\x20without\x20executing','tags','Operation\x20type','datasetcode','value','help','fromEntries','env','Reveal\x20sensitive\x20value','key','boolean','Read\x20value\x20from\x20stdin','8gfgphP','string','non-interactive','all','@lovrabet/rabetbase-cli','Description','format','operationType','operation','Page\x20size','Keyword\x20filter','sql-name','sqlName','dbId','fromEnv','reveal','sql','Enable\x20BFF\x20save','Function\x20node','dryRun','Skip\x20confirmation\x20for\x20high-risk\x20writes','app','confirm','page','Skip\x20import\x20generation','Select\x20app\x20profile\x20by\x20name','descriptionFile','project','target','keyword','Alias\x20for\x20--non-interactive','Type\x20filter','sqlname','Page\x20number','44lqohLE','dry-run','nonInteractive','remote','type','output','Tags','appcode','json\x20|\x20pretty\x20|\x20compress'];a167_0x5ad6=function(){return _0x41a22f;};return a167_0x5ad6();}export const PIPELINE_FLAG_NAMES=new Set(['appcode',a167_0x1f05ee(0xce),a167_0x1f05ee(0x124),a167_0x1f05ee(0x12f),'jq',a167_0x1f05ee(0xdc),a167_0x1f05ee(0xfc),a167_0x1f05ee(0x12b),'ci']);export function buildMeowFlags(){const _0x12ad6e=a167_0x1f05ee;return Object[_0x12ad6e(0x123)](GLOBAL_FLAGS['map'](_0x267b40=>[_0x267b40[_0x12ad6e(0xe8)],{'type':_0x267b40['type']}]));}
1
+ function a167_0x3ba5(){const _0x2222d3=['5878765yQUItQ','SQL\x20name','Config\x20key','page','description','Verbose\x20output','boolean','25530JMCtRS','3859500KhBMsl','datasetcode','3ucSMZW','operationType','target','Force\x20overwrite','DB\x20ID','Operation\x20type','string','from-env','SQL\x20code','enable-bff-save','force','<expr>','1402101EHEVwD','Environment','Enable\x20BFF\x20save','params','output','2114nZoYrH','non-interactive','Preview\x20operation\x20without\x20executing','232030ffPYjY','help','Tags','Watch\x20mode','Page\x20size','Record\x20ID','remote','Type\x20filter','skip-imports','Show\x20help','Apply\x20to\x20all','sqlName','88vgzzwK','Schemas','value','Output\x20format','pagesize','enableBffSave','Reveal\x20sensitive\x20value','skipImports','Use\x20project\x20config\x20scope','Skip\x20confirmation\x20for\x20high-risk\x20writes','key','app','fromEnv','Keyword\x20filter','Read\x20value\x20from\x20environment\x20variable','Function\x20node','operation','Name','nonInteractive','Clear','Read\x20value\x20from\x20stdin','clear','sqlcode','dryRun','10KdBWba','global','functionNode','dbid','name','fromEntries','schemas','Force\x20non-interactive\x20mode\x20(CI)','Confirm\x20destructive\x20action','descriptionFile','dry-run','Use\x20remote','json\x20|\x20pretty\x20|\x20compress','function-node','watch','sqlname','<code>','8085979ATauiU','rabetbase','meowKey','description-file','yes','verbose','Select\x20app\x20profile\x20by\x20name','Page\x20number','type','Expected\x20affected\x20count','format','File\x20path','stdin','appcode','project','map','Skip\x20import\x20generation','sql-name','Description\x20file','6047472sRQsKE','Title','Output\x20path','code','keyword','<name>','env','Config\x20value','tags','dbId','Override\x20appcode','all','file','confirm','Dataset\x20code','SQL\x20string'];a167_0x3ba5=function(){return _0x2222d3;};return a167_0x3ba5();}const a167_0x3ebfaf=a167_0x3bf8;(function(_0x1c6273,_0x502bf3){const _0x5a92bc=a167_0x3bf8,_0x27de14=_0x1c6273();while(!![]){try{const _0x20aa2a=parseInt(_0x5a92bc(0xcc))/0x1*(parseInt(_0x5a92bc(0xe0))/0x2)+-parseInt(_0x5a92bc(0xca))/0x3+-parseInt(_0x5a92bc(0xb2))/0x4+parseInt(_0x5a92bc(0xc2))/0x5+parseInt(_0x5a92bc(0xc9))/0x6*(parseInt(_0x5a92bc(0xdd))/0x7)+parseInt(_0x5a92bc(0xec))/0x8*(parseInt(_0x5a92bc(0xd8))/0x9)+-parseInt(_0x5a92bc(0x8e))/0xa*(parseInt(_0x5a92bc(0x9f))/0xb);if(_0x20aa2a===_0x502bf3)break;else _0x27de14['push'](_0x27de14['shift']());}catch(_0x1ae581){_0x27de14['push'](_0x27de14['shift']());}}}(a167_0x3ba5,0xf1766));function a167_0x3bf8(_0x411007,_0x2e38ed){_0x411007=_0x411007-0x89;const _0x3ba57d=a167_0x3ba5();let _0x3bf85e=_0x3ba57d[_0x411007];return _0x3bf85e;}export const CLI_BIN_NAME=a167_0x3ebfaf(0xa0);export const CLI_DISPLAY_NAME='Rabetbase\x20CLI';export const NPM_PACKAGE_NAME='@lovrabet/rabetbase-cli';export const GLOBAL_FLAGS=[{'name':a167_0x3ebfaf(0xac),'meowKey':'appcode','type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xbc),'hint':a167_0x3ebfaf(0x9e)},{'name':a167_0x3ebfaf(0xf7),'meowKey':'app','type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xa5),'hint':a167_0x3ebfaf(0xb7)},{'name':'env','meowKey':a167_0x3ebfaf(0xb8),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xd9),'hint':'production\x20|\x20daily'},{'name':a167_0x3ebfaf(0xa9),'meowKey':a167_0x3ebfaf(0xa9),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xef),'hint':a167_0x3ebfaf(0x9a)},{'name':'jq','meowKey':'jq','type':a167_0x3ebfaf(0xd2),'description':'Filter\x20JSON\x20output\x20(JQ_PATH\x20>\x20bundled\x20jq\x20>\x20PATH;\x20use\x20with\x20--format\x20json\x20or\x20compress)','hint':a167_0x3ebfaf(0xd7)},{'name':a167_0x3ebfaf(0x98),'meowKey':a167_0x3ebfaf(0x8d),'type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0xdf)},{'name':a167_0x3ebfaf(0xa3),'meowKey':a167_0x3ebfaf(0xa3),'type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0xf5)},{'name':a167_0x3ebfaf(0xde),'meowKey':a167_0x3ebfaf(0xfe),'type':'boolean','description':a167_0x3ebfaf(0x95)},{'name':'global','meowKey':a167_0x3ebfaf(0x8f),'type':a167_0x3ebfaf(0xc8),'description':'Use\x20global\x20config\x20scope'},{'name':a167_0x3ebfaf(0xad),'meowKey':a167_0x3ebfaf(0xad),'type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0xf4)},{'name':'ci','meowKey':'ci','type':a167_0x3ebfaf(0xc8),'description':'Alias\x20for\x20--non-interactive','hidden':!![]},{'name':a167_0x3ebfaf(0xe1),'meowKey':a167_0x3ebfaf(0xe1),'type':'boolean','description':a167_0x3ebfaf(0xe9)},{'name':a167_0x3ebfaf(0x92),'meowKey':a167_0x3ebfaf(0x92),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xfd),'hidden':!![]},{'name':'title','meowKey':'title','type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xb3),'hidden':!![]},{'name':a167_0x3ebfaf(0x8b),'meowKey':'clear','type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0x89),'hidden':!![]},{'name':a167_0x3ebfaf(0x9c),'meowKey':a167_0x3ebfaf(0x9c),'type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0xe3),'hidden':!![]},{'name':'output','meowKey':a167_0x3ebfaf(0xdc),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xb4),'hidden':!![]},{'name':'params','meowKey':a167_0x3ebfaf(0xdb),'type':a167_0x3ebfaf(0xd2),'description':'JSON\x20params','hidden':!![]},{'name':a167_0x3ebfaf(0xcb),'meowKey':a167_0x3ebfaf(0xcb),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xc0),'hidden':!![]},{'name':a167_0x3ebfaf(0xbd),'meowKey':a167_0x3ebfaf(0xbd),'type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0xea),'hidden':!![]},{'name':a167_0x3ebfaf(0xd5),'meowKey':a167_0x3ebfaf(0xf1),'type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0xda),'hidden':!![]},{'name':'id','meowKey':'id','type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xe5),'hidden':!![]},{'name':a167_0x3ebfaf(0xa7),'meowKey':a167_0x3ebfaf(0xa7),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xe7),'hidden':!![]},{'name':a167_0x3ebfaf(0xbe),'meowKey':a167_0x3ebfaf(0xbe),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xaa),'hidden':!![]},{'name':a167_0x3ebfaf(0x8c),'meowKey':a167_0x3ebfaf(0x8c),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xd4),'hidden':!![]},{'name':a167_0x3ebfaf(0xb0),'meowKey':a167_0x3ebfaf(0xeb),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xc3),'hidden':!![]},{'name':a167_0x3ebfaf(0x9d),'meowKey':'sqlname','type':'string','description':a167_0x3ebfaf(0xc3),'hidden':!![]},{'name':'db-id','meowKey':a167_0x3ebfaf(0xbb),'type':a167_0x3ebfaf(0xd2),'description':'DB\x20ID','hidden':!![]},{'name':a167_0x3ebfaf(0x91),'meowKey':a167_0x3ebfaf(0x91),'type':'string','description':a167_0x3ebfaf(0xd0),'hidden':!![]},{'name':a167_0x3ebfaf(0xc6),'meowKey':a167_0x3ebfaf(0xc6),'type':'string','description':'Description','hidden':!![]},{'name':a167_0x3ebfaf(0xa2),'meowKey':a167_0x3ebfaf(0x97),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xb1),'hidden':!![]},{'name':a167_0x3ebfaf(0xc5),'meowKey':'page','type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xa6),'hidden':!![]},{'name':a167_0x3ebfaf(0xf0),'meowKey':a167_0x3ebfaf(0xf0),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xe4),'hidden':!![]},{'name':a167_0x3ebfaf(0xb6),'meowKey':a167_0x3ebfaf(0xb6),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xf9),'hidden':!![]},{'name':a167_0x3ebfaf(0xb5),'meowKey':'code','type':a167_0x3ebfaf(0xd2),'description':'Code\x20filter','hidden':!![]},{'name':'sql','meowKey':'sql','type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xc1),'hidden':!![]},{'name':a167_0x3ebfaf(0x94),'meowKey':'schemas','type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xed),'hidden':!![]},{'name':a167_0x3ebfaf(0xfc),'meowKey':a167_0x3ebfaf(0xfc),'type':'string','description':a167_0x3ebfaf(0xd1),'hidden':!![]},{'name':a167_0x3ebfaf(0xce),'meowKey':'target','type':a167_0x3ebfaf(0xd2),'description':'Target\x20path','hidden':!![]},{'name':a167_0x3ebfaf(0xe8),'meowKey':a167_0x3ebfaf(0xf3),'type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0xaf),'hidden':!![]},{'name':a167_0x3ebfaf(0xf6),'meowKey':a167_0x3ebfaf(0xf6),'type':'string','description':a167_0x3ebfaf(0xc4),'hidden':!![]},{'name':a167_0x3ebfaf(0xee),'meowKey':a167_0x3ebfaf(0xee),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xb9),'hidden':!![]},{'name':a167_0x3ebfaf(0xba),'meowKey':a167_0x3ebfaf(0xba),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xe2),'hidden':!![]},{'name':a167_0x3ebfaf(0xab),'meowKey':'stdin','type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0x8a),'hidden':!![]},{'name':a167_0x3ebfaf(0xd3),'meowKey':a167_0x3ebfaf(0xf8),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xfa),'hidden':!![]},{'name':'reveal','meowKey':'reveal','type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0xf2),'hidden':!![]},{'name':a167_0x3ebfaf(0xd6),'meowKey':a167_0x3ebfaf(0xd6),'type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0xcf),'hidden':!![]},{'name':a167_0x3ebfaf(0xbf),'meowKey':a167_0x3ebfaf(0xbf),'type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0x96),'hidden':!![]},{'name':'remote','meowKey':a167_0x3ebfaf(0xe6),'type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0x99),'hidden':!![]},{'name':a167_0x3ebfaf(0xa4),'meowKey':a167_0x3ebfaf(0xa4),'type':a167_0x3ebfaf(0xc8),'description':a167_0x3ebfaf(0xc7),'hidden':!![]},{'name':'expected-count','meowKey':'expectedCount','type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xa8),'hidden':!![]},{'name':'operation-type','meowKey':a167_0x3ebfaf(0xcd),'type':a167_0x3ebfaf(0xd2),'description':'Operation\x20type','hidden':!![]},{'name':a167_0x3ebfaf(0x9b),'meowKey':a167_0x3ebfaf(0x90),'type':a167_0x3ebfaf(0xd2),'description':a167_0x3ebfaf(0xfb),'hidden':!![]}];export const PIPELINE_FLAG_NAMES=new Set([a167_0x3ebfaf(0xac),a167_0x3ebfaf(0xf7),'env','format','jq',a167_0x3ebfaf(0x98),a167_0x3ebfaf(0xa3),a167_0x3ebfaf(0xde),'ci']);export function buildMeowFlags(){const _0x5a747a=a167_0x3ebfaf;return Object[_0x5a747a(0x93)](GLOBAL_FLAGS[_0x5a747a(0xae)](_0x1fb662=>[_0x1fb662[_0x5a747a(0xa1)],{'type':_0x1fb662[_0x5a747a(0xa7)]}]));}
@@ -1 +1 @@
1
- const a168_0x2512e8=a168_0x3ed5;(function(_0x1f47fa,_0x520e31){const _0x234e8e=a168_0x3ed5,_0x397883=_0x1f47fa();while(!![]){try{const _0x4c9cb7=parseInt(_0x234e8e(0x64))/0x1+parseInt(_0x234e8e(0x70))/0x2+-parseInt(_0x234e8e(0x67))/0x3*(-parseInt(_0x234e8e(0x69))/0x4)+-parseInt(_0x234e8e(0x66))/0x5+-parseInt(_0x234e8e(0x68))/0x6+-parseInt(_0x234e8e(0x6d))/0x7*(-parseInt(_0x234e8e(0x6e))/0x8)+-parseInt(_0x234e8e(0x6a))/0x9;if(_0x4c9cb7===_0x520e31)break;else _0x397883['push'](_0x397883['shift']());}catch(_0x3d0307){_0x397883['push'](_0x397883['shift']());}}}(a168_0x123d,0xe849c));function a168_0x3ed5(_0x4f0308,_0x41f3c1){_0x4f0308=_0x4f0308-0x64;const _0x123d22=a168_0x123d();let _0x3ed569=_0x123d22[_0x4f0308];return _0x3ed569;}import{DEFAULT_API_DIR}from'../constant/paths.js';function a168_0x123d(){const _0x4536df=['4634810crtluQ','106068iFyjcf','2064780GbukDI','8ldBjHI','28647153Wuvmes','high-risk-write','compress','14zspxXg','7096872zmyjjo','en-US','3734126MJguiZ','1693568mDYVxs','production'];a168_0x123d=function(){return _0x4536df;};return a168_0x123d();}export const DEFAULT_CONFIG_VALUES={'env':a168_0x2512e8(0x65),'format':a168_0x2512e8(0x6c),'locale':a168_0x2512e8(0x6f),'riskLevel':a168_0x2512e8(0x6b),'apiDir':DEFAULT_API_DIR};export const DEFAULT_COMMAND_OUTPUT_FORMAT='compress';
1
+ const a168_0x2e1eb4=a168_0x523f;(function(_0x3c66d5,_0x1037e6){const _0x433349=a168_0x523f,_0x2dfde4=_0x3c66d5();while(!![]){try{const _0x32551b=-parseInt(_0x433349(0xd1))/0x1+parseInt(_0x433349(0xca))/0x2+parseInt(_0x433349(0xc9))/0x3+parseInt(_0x433349(0xce))/0x4+-parseInt(_0x433349(0xd0))/0x5*(-parseInt(_0x433349(0xcc))/0x6)+-parseInt(_0x433349(0xd3))/0x7+-parseInt(_0x433349(0xc7))/0x8*(parseInt(_0x433349(0xc8))/0x9);if(_0x32551b===_0x1037e6)break;else _0x2dfde4['push'](_0x2dfde4['shift']());}catch(_0x53b695){_0x2dfde4['push'](_0x2dfde4['shift']());}}}(a168_0x26d2,0xaa531));function a168_0x523f(_0x33b578,_0x44f4ec){_0x33b578=_0x33b578-0xc7;const _0x26d2d4=a168_0x26d2();let _0x523fff=_0x26d2d4[_0x33b578];return _0x523fff;}import{DEFAULT_API_DIR}from'../constant/paths.js';export const DEFAULT_CONFIG_VALUES={'env':a168_0x2e1eb4(0xcb),'format':a168_0x2e1eb4(0xcd),'locale':a168_0x2e1eb4(0xd2),'riskLevel':a168_0x2e1eb4(0xcf),'apiDir':DEFAULT_API_DIR};export const DEFAULT_COMMAND_OUTPUT_FORMAT=a168_0x2e1eb4(0xcd);function a168_0x26d2(){const _0x2cc995=['1194714xKajzx','2481417mLSrSz','1334372Twbepa','production','54306OrBHHH','compress','2289232tHMZyA','high-risk-write','185gcdHpC','196950bZfZGo','en-US','5902337LvsoeD','40jtoiYT'];a168_0x26d2=function(){return _0x2cc995;};return a168_0x26d2();}
@@ -1 +1 @@
1
- const a169_0x23c927=a169_0x5ae3;(function(_0x76e624,_0x1760f1){const _0x3c08a8=a169_0x5ae3,_0x29d7b2=_0x76e624();while(!![]){try{const _0x237471=parseInt(_0x3c08a8(0xeb))/0x1*(parseInt(_0x3c08a8(0xfa))/0x2)+parseInt(_0x3c08a8(0xfd))/0x3*(parseInt(_0x3c08a8(0xfb))/0x4)+-parseInt(_0x3c08a8(0xf8))/0x5*(parseInt(_0x3c08a8(0xec))/0x6)+-parseInt(_0x3c08a8(0xfe))/0x7+-parseInt(_0x3c08a8(0xf4))/0x8+parseInt(_0x3c08a8(0xf1))/0x9+parseInt(_0x3c08a8(0xed))/0xa;if(_0x237471===_0x1760f1)break;else _0x29d7b2['push'](_0x29d7b2['shift']());}catch(_0x439345){_0x29d7b2['push'](_0x29d7b2['shift']());}}}(a169_0x117c,0x28c7c));import{getEnv,isProduction}from'../constant/env.js';let customApiDomain,customUserDomain,customRuntimeDomain;function a169_0x5ae3(_0x14518f,_0x118709){_0x14518f=_0x14518f-0xeb;const _0x117c0f=a169_0x117c();let _0x5ae385=_0x117c0f[_0x14518f];return _0x5ae385;}export function initDomains(_0x2d7e7a){const _0x49b06b=a169_0x5ae3;customApiDomain=_0x2d7e7a?.['apiDomain'],customUserDomain=_0x2d7e7a?.[_0x49b06b(0xf9)],customRuntimeDomain=_0x2d7e7a?.[_0x49b06b(0xf2)];}export const getUserDomain=()=>customUserDomain||(isProduction(getEnv())?a169_0x23c927(0xfc):a169_0x23c927(0xf5));export const getApiDomain=()=>customApiDomain||(isProduction(getEnv())?'https://api.lovrabet.com':a169_0x23c927(0xf3));export const getRuntimeDomain=()=>customRuntimeDomain||(isProduction(getEnv())?a169_0x23c927(0xf6):'https://daily-runtime.lovrabet.com');export const getAppDomain=()=>isProduction(getEnv())?a169_0x23c927(0xef):a169_0x23c927(0xf0);export const getAppBaseUrl=_0x7cc447=>{const _0x279400=a169_0x23c927,_0x4c8f04=encodeURIComponent(_0x7cc447[_0x279400(0xf7)]());return isProduction(getEnv())?getAppDomain()+_0x279400(0xee)+_0x4c8f04:getAppDomain()+'/web-app/app/'+_0x4c8f04;};function a169_0x117c(){const _0x976c31=['https://app.lovrabet.com','https://daily.lovrabet.com','1145124dNVuxf','runtimeDomain','https://daily-api.lovrabet.com','2422672cCtxjO','https://user-daily.lovrabet.com','https://runtime.lovrabet.com','trim','5pzayTX','userDomain','6820rhWRym','4nxfsdw','https://user.lovrabet.com','662469XRfnLY','678748KvzwvJ','67SxcobN','507090pZAjDJ','748200tjoRky','/app/'];a169_0x117c=function(){return _0x976c31;};return a169_0x117c();}
1
+ const a169_0x1ea750=a169_0x4941;(function(_0x2aa1f0,_0x407d29){const _0x38fbd8=a169_0x4941,_0x553aba=_0x2aa1f0();while(!![]){try{const _0xfdd820=parseInt(_0x38fbd8(0x115))/0x1+parseInt(_0x38fbd8(0x10d))/0x2+-parseInt(_0x38fbd8(0x116))/0x3+parseInt(_0x38fbd8(0x110))/0x4+parseInt(_0x38fbd8(0x11b))/0x5+parseInt(_0x38fbd8(0x119))/0x6+-parseInt(_0x38fbd8(0x112))/0x7;if(_0xfdd820===_0x407d29)break;else _0x553aba['push'](_0x553aba['shift']());}catch(_0x4080c5){_0x553aba['push'](_0x553aba['shift']());}}}(a169_0x81c3,0xd7f0f));import{getEnv,isProduction}from'../constant/env.js';let customApiDomain,customUserDomain,customRuntimeDomain;export function initDomains(_0x47ba8d){const _0x1e3a15=a169_0x4941;customApiDomain=_0x47ba8d?.[_0x1e3a15(0x10f)],customUserDomain=_0x47ba8d?.[_0x1e3a15(0x11c)],customRuntimeDomain=_0x47ba8d?.[_0x1e3a15(0x10c)];}export const getUserDomain=()=>customUserDomain||(isProduction(getEnv())?'https://user.lovrabet.com':a169_0x1ea750(0x113));function a169_0x81c3(){const _0x35f683=['/app/','748705XmAxdZ','2811651HEKMDK','https://app.lovrabet.com','https://daily-runtime.lovrabet.com','3948564vIqtNY','https://daily-api.lovrabet.com','338815LiZPMy','userDomain','runtimeDomain','2669994PWXjzO','https://daily.lovrabet.com','apiDomain','5568884URLYCn','/web-app/app/','16660476TODbVR','https://user-daily.lovrabet.com'];a169_0x81c3=function(){return _0x35f683;};return a169_0x81c3();}export const getApiDomain=()=>customApiDomain||(isProduction(getEnv())?'https://api.lovrabet.com':a169_0x1ea750(0x11a));export const getRuntimeDomain=()=>customRuntimeDomain||(isProduction(getEnv())?'https://runtime.lovrabet.com':a169_0x1ea750(0x118));function a169_0x4941(_0x3aee79,_0x595a20){_0x3aee79=_0x3aee79-0x10c;const _0x81c3c8=a169_0x81c3();let _0x494147=_0x81c3c8[_0x3aee79];return _0x494147;}export const getAppDomain=()=>isProduction(getEnv())?a169_0x1ea750(0x117):a169_0x1ea750(0x10e);export const getAppBaseUrl=_0x3ed7da=>{const _0x598f89=a169_0x1ea750,_0x2dcc43=encodeURIComponent(_0x3ed7da['trim']());return isProduction(getEnv())?getAppDomain()+_0x598f89(0x114)+_0x2dcc43:getAppDomain()+_0x598f89(0x111)+_0x2dcc43;};