@lovrabet/rabetbase-cli 2.5.1 → 2.5.2-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 (319) 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/api/generate-sdk-config-file.js +1 -1
  5. package/lib/auth/auth-server-ui.js +1 -1
  6. package/lib/auth/auth-server.js +1 -1
  7. package/lib/auth/constant.js +1 -1
  8. package/lib/auth/get-cookie.js +1 -1
  9. package/lib/auth/get-session-user.js +1 -1
  10. package/lib/auth/is-session-valid.js +1 -1
  11. package/lib/auth/login-success-html.js +1 -1
  12. package/lib/auth/logout.js +1 -1
  13. package/lib/cli-flags.js +1 -1
  14. package/lib/cli.js +1 -1
  15. package/lib/commands/api/generate.js +1 -1
  16. package/lib/commands/api/index.js +1 -1
  17. package/lib/commands/api/list.js +1 -1
  18. package/lib/commands/api/pull.js +1 -1
  19. package/lib/commands/api/shared.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/members-list.js +1 -1
  23. package/lib/commands/app/remote-directory.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/async-task.js +1 -1
  48. package/lib/commands/common/dry-run.js +1 -1
  49. package/lib/commands/common/flags.js +1 -1
  50. package/lib/commands/common/local-file.js +1 -1
  51. package/lib/commands/common/validate.js +1 -1
  52. package/lib/commands/config/delete.js +1 -1
  53. package/lib/commands/config/get.js +1 -1
  54. package/lib/commands/config/index.js +1 -1
  55. package/lib/commands/config/init.js +1 -1
  56. package/lib/commands/config/list.js +1 -1
  57. package/lib/commands/config/set.js +1 -1
  58. package/lib/commands/config/shared.js +1 -1
  59. package/lib/commands/dataset/business-group-update.js +1 -1
  60. package/lib/commands/dataset/business-groups.js +1 -1
  61. package/lib/commands/dataset/capability.js +1 -1
  62. package/lib/commands/dataset/delete.js +1 -1
  63. package/lib/commands/dataset/detail.js +1 -1
  64. package/lib/commands/dataset/extend-update.js +1 -1
  65. package/lib/commands/dataset/field-restore.js +1 -1
  66. package/lib/commands/dataset/field-update.js +1 -1
  67. package/lib/commands/dataset/generate.js +1 -1
  68. package/lib/commands/dataset/index.js +1 -1
  69. package/lib/commands/dataset/list.js +1 -1
  70. package/lib/commands/dataset/operations.js +1 -1
  71. package/lib/commands/dataset/relation-audit.js +1 -1
  72. package/lib/commands/dataset/relation-create.js +1 -1
  73. package/lib/commands/dataset/relation-delete.js +1 -1
  74. package/lib/commands/dataset/relation-shared.js +1 -1
  75. package/lib/commands/dataset/relation-update.js +1 -1
  76. package/lib/commands/dataset/relations.js +1 -1
  77. package/lib/commands/dataset/rename.js +1 -1
  78. package/lib/commands/dataset/restore.js +1 -1
  79. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  80. package/lib/commands/db/analysis-batching.js +1 -1
  81. package/lib/commands/db/analyze-batch-plan.js +1 -1
  82. package/lib/commands/db/analyze-cancel.js +1 -1
  83. package/lib/commands/db/analyze-start.js +1 -1
  84. package/lib/commands/db/analyze-status.js +1 -1
  85. package/lib/commands/db/create.js +1 -1
  86. package/lib/commands/db/delete.js +1 -1
  87. package/lib/commands/db/detail.js +1 -1
  88. package/lib/commands/db/diff-refresh-start.js +1 -1
  89. package/lib/commands/db/diff-refresh-status.js +1 -1
  90. package/lib/commands/db/diff.js +1 -1
  91. package/lib/commands/db/index.js +1 -1
  92. package/lib/commands/db/list.js +1 -1
  93. package/lib/commands/db/shared.js +1 -1
  94. package/lib/commands/db/table-diff-shared.js +1 -1
  95. package/lib/commands/db/tables.js +1 -1
  96. package/lib/commands/db/test.js +1 -1
  97. package/lib/commands/db/update.js +1 -1
  98. package/lib/commands/deployment/auto-sync.d.ts +3 -11
  99. package/lib/commands/deployment/auto-sync.js +1 -1
  100. package/lib/commands/deployment/index.js +1 -1
  101. package/lib/commands/deployment/sync.js +1 -1
  102. package/lib/commands/doctor.js +1 -1
  103. package/lib/commands/file/index.js +1 -1
  104. package/lib/commands/issue/index.js +1 -1
  105. package/lib/commands/issue/nudge.js +1 -1
  106. package/lib/commands/issue/report.js +1 -1
  107. package/lib/commands/issue/shared.js +1 -1
  108. package/lib/commands/kb/create.js +1 -1
  109. package/lib/commands/kb/delete.js +1 -1
  110. package/lib/commands/kb/detail.js +1 -1
  111. package/lib/commands/kb/index.js +1 -1
  112. package/lib/commands/kb/list.js +1 -1
  113. package/lib/commands/kb/search.js +1 -1
  114. package/lib/commands/kb/shared.js +1 -1
  115. package/lib/commands/kb/update.js +1 -1
  116. package/lib/commands/logs/index.js +1 -1
  117. package/lib/commands/menu/asset-update.js +1 -1
  118. package/lib/commands/menu/delete.js +1 -1
  119. package/lib/commands/menu/external-link-create.js +1 -1
  120. package/lib/commands/menu/external-link-update.js +1 -1
  121. package/lib/commands/menu/group-create.js +1 -1
  122. package/lib/commands/menu/group-update.js +1 -1
  123. package/lib/commands/menu/index.js +1 -1
  124. package/lib/commands/menu/list.js +1 -1
  125. package/lib/commands/menu/move.js +1 -1
  126. package/lib/commands/menu/regroup-start.js +1 -1
  127. package/lib/commands/menu/rename.js +1 -1
  128. package/lib/commands/menu/shared/compare-table.js +1 -1
  129. package/lib/commands/menu/shared/delete-plan.js +1 -1
  130. package/lib/commands/menu/shared/facts.js +1 -1
  131. package/lib/commands/menu/shared/index.js +1 -1
  132. package/lib/commands/menu/shared/inquirer.js +1 -1
  133. package/lib/commands/menu/shared/local-pages.js +1 -1
  134. package/lib/commands/menu/shared/logic.js +1 -1
  135. package/lib/commands/menu/shared/mutations.js +1 -1
  136. package/lib/commands/menu/shared/service.js +1 -1
  137. package/lib/commands/menu/shared/sync-core.js +1 -1
  138. package/lib/commands/menu/shared/update-core.js +1 -1
  139. package/lib/commands/menu/shared/valid-url.js +1 -1
  140. package/lib/commands/menu/sync.js +1 -1
  141. package/lib/commands/menu/visibility-update.js +1 -1
  142. package/lib/commands/notification/config-create.js +1 -1
  143. package/lib/commands/notification/config-delete.js +1 -1
  144. package/lib/commands/notification/config-list.js +1 -1
  145. package/lib/commands/notification/config-update.js +1 -1
  146. package/lib/commands/notification/index.js +1 -1
  147. package/lib/commands/notification/shared.js +1 -1
  148. package/lib/commands/ocr/index.js +1 -1
  149. package/lib/commands/page/create.js +1 -1
  150. package/lib/commands/page/custom/detail.js +1 -1
  151. package/lib/commands/page/custom/list.js +1 -1
  152. package/lib/commands/page/custom/publish.js +1 -1
  153. package/lib/commands/page/custom/shared.js +1 -1
  154. package/lib/commands/page/custom/syntax.js +1 -1
  155. package/lib/commands/page/custom/template.js +1 -1
  156. package/lib/commands/page/custom/update.js +1 -1
  157. package/lib/commands/page/data-list-status.js +1 -1
  158. package/lib/commands/page/generate-start.js +1 -1
  159. package/lib/commands/page/generate-status.js +1 -1
  160. package/lib/commands/page/index.js +1 -1
  161. package/lib/commands/page/pull.js +1 -1
  162. package/lib/commands/page/push.js +1 -1
  163. package/lib/commands/page/relation-audit.js +1 -1
  164. package/lib/commands/page/restore.js +1 -1
  165. package/lib/commands/page/shared.js +1 -1
  166. package/lib/commands/page/sync.js +1 -1
  167. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  168. package/lib/commands/project/create/format-elapsed.js +1 -1
  169. package/lib/commands/project/create/main.js +1 -1
  170. package/lib/commands/project/create/materialize-project-template.js +1 -1
  171. package/lib/commands/project/create/project-name.js +1 -1
  172. package/lib/commands/project/create/project-template-archive.js +1 -1
  173. package/lib/commands/project/create/project-template-path.js +1 -1
  174. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  175. package/lib/commands/project/create/use-format-code.js +1 -1
  176. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  177. package/lib/commands/project/domain-routing-sync.js +1 -1
  178. package/lib/commands/project/index.js +1 -1
  179. package/lib/commands/project/upgrade.js +1 -1
  180. package/lib/commands/registry.js +1 -1
  181. package/lib/commands/role/delete.js +1 -1
  182. package/lib/commands/role/detail.js +1 -1
  183. package/lib/commands/role/index.js +1 -1
  184. package/lib/commands/role/list.js +1 -1
  185. package/lib/commands/role/shared.js +1 -1
  186. package/lib/commands/role/update.js +1 -1
  187. package/lib/commands/role/user-add.js +1 -1
  188. package/lib/commands/role/user-remove.js +1 -1
  189. package/lib/commands/role/user-resolve.js +1 -1
  190. package/lib/commands/rule/get.js +1 -1
  191. package/lib/commands/rule/index.js +1 -1
  192. package/lib/commands/rule/list.js +1 -1
  193. package/lib/commands/rule/set.js +1 -1
  194. package/lib/commands/rule/shared.js +1 -1
  195. package/lib/commands/run/index.js +1 -1
  196. package/lib/commands/schema.js +1 -1
  197. package/lib/commands/sql/create.js +1 -1
  198. package/lib/commands/sql/delete.js +1 -1
  199. package/lib/commands/sql/detail.js +1 -1
  200. package/lib/commands/sql/exec.js +1 -1
  201. package/lib/commands/sql/index.js +1 -1
  202. package/lib/commands/sql/list.js +1 -1
  203. package/lib/commands/sql/pull.js +1 -1
  204. package/lib/commands/sql/push.js +1 -1
  205. package/lib/commands/sql/shared.js +1 -1
  206. package/lib/commands/sql/status.js +1 -1
  207. package/lib/commands/sql/validate.js +1 -1
  208. package/lib/commands/task/index.js +1 -1
  209. package/lib/commands/task/status.js +1 -1
  210. package/lib/commands/tenant/index.js +1 -1
  211. package/lib/commands/tenant/members-list.js +1 -1
  212. package/lib/commands/tenant/shared.js +1 -1
  213. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  214. package/lib/commands/user-account/index.js +1 -1
  215. package/lib/commands/workspace/add.js +1 -1
  216. package/lib/commands/workspace/index.js +1 -1
  217. package/lib/commands/workspace/remove.js +1 -1
  218. package/lib/config/domain-config.js +1 -1
  219. package/lib/config/project-domain-routing.js +1 -1
  220. package/lib/config/schema.js +1 -1
  221. package/lib/constant/cdn.js +1 -1
  222. package/lib/constant/cli.js +1 -1
  223. package/lib/constant/defaults.js +1 -1
  224. package/lib/constant/domain.js +1 -1
  225. package/lib/constant/env.js +1 -1
  226. package/lib/constant/output.js +1 -1
  227. package/lib/constant/paths.js +1 -1
  228. package/lib/constant/region.js +1 -1
  229. package/lib/constant/risk.js +1 -1
  230. package/lib/constant/routing-profile.js +1 -1
  231. package/lib/context/app-resolver.d.ts +0 -2
  232. package/lib/context/app-resolver.js +1 -1
  233. package/lib/context/auth-resolver.js +1 -1
  234. package/lib/context/config-loader.js +1 -1
  235. package/lib/context.js +1 -1
  236. package/lib/core/alias-resolver.js +1 -1
  237. package/lib/core/api-client.d.ts +0 -2
  238. package/lib/core/api-client.js +1 -1
  239. package/lib/core/bff/config.js +1 -1
  240. package/lib/core/bff/file-system.js +1 -1
  241. package/lib/core/bff/hash.js +1 -1
  242. package/lib/core/bff/lock.js +1 -1
  243. package/lib/core/bff/utils.js +1 -1
  244. package/lib/core/db-resolver.js +1 -1
  245. package/lib/core/kb-search-client.js +1 -1
  246. package/lib/core/page/file-system.js +1 -1
  247. package/lib/core/page/hash.js +1 -1
  248. package/lib/core/page/lock.js +1 -1
  249. package/lib/core/sql-index-auditor.js +1 -1
  250. package/lib/core/sql-sync/config.js +1 -1
  251. package/lib/core/sql-sync/file-system.js +1 -1
  252. package/lib/core/sql-sync/hash.js +1 -1
  253. package/lib/core/sql-sync/lock.js +1 -1
  254. package/lib/core/sql-sync/utils.js +1 -1
  255. package/lib/core/sql-validator.js +1 -1
  256. package/lib/errors.js +1 -1
  257. package/lib/framework/build-all-flags.js +1 -1
  258. package/lib/framework/error-output.js +1 -1
  259. package/lib/framework/explicit-yes.js +1 -1
  260. package/lib/framework/flags.js +1 -1
  261. package/lib/framework/help.js +1 -1
  262. package/lib/framework/index.js +1 -1
  263. package/lib/framework/output.js +1 -1
  264. package/lib/framework/response.js +1 -1
  265. package/lib/framework/runner-alias.js +1 -1
  266. package/lib/framework/runner.js +1 -1
  267. package/lib/framework/schema-export.js +1 -1
  268. package/lib/framework/supported-flags.d.ts +2 -0
  269. package/lib/framework/supported-flags.js +1 -0
  270. package/lib/framework/types.d.ts +2 -4
  271. package/lib/framework/types.js +1 -1
  272. package/lib/generated/build-info.d.ts +4 -4
  273. package/lib/generated/build-info.js +1 -1
  274. package/lib/generated/official-routing.js +1 -1
  275. package/lib/generated/routing-contract.js +1 -1
  276. package/lib/help.js +1 -1
  277. package/lib/postinstall.js +1 -1
  278. package/lib/runtime/confirmation.js +1 -1
  279. package/lib/runtime/event.js +1 -1
  280. package/lib/runtime/index.js +1 -1
  281. package/lib/runtime/queue.js +1 -1
  282. package/lib/runtime/resolve.js +1 -1
  283. package/lib/skills/builtin-skill.js +1 -1
  284. package/lib/skills/main.js +1 -1
  285. package/lib/skills/npx-skills-add.js +1 -1
  286. package/lib/skills/skill-presence.js +1 -1
  287. package/lib/telemetry/cli-command-trace.js +1 -1
  288. package/lib/telemetry/cli-help-trace.js +1 -1
  289. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  290. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  291. package/lib/telemetry/send-cli-trace-log.js +1 -1
  292. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  293. package/lib/utils/ai_config.js +1 -1
  294. package/lib/utils/apply-jq-filter.js +1 -1
  295. package/lib/utils/cdn-config.js +1 -1
  296. package/lib/utils/check-sdk-version.js +1 -1
  297. package/lib/utils/cli-version-check.js +1 -1
  298. package/lib/utils/cli-version-policy.js +1 -1
  299. package/lib/utils/config.js +1 -1
  300. package/lib/utils/entity-with-id.js +1 -1
  301. package/lib/utils/file-utils.js +1 -1
  302. package/lib/utils/guides-cdn.js +1 -1
  303. package/lib/utils/http-client.js +1 -1
  304. package/lib/utils/is-non-interactive.js +1 -1
  305. package/lib/utils/logger.js +1 -1
  306. package/lib/utils/params.js +1 -1
  307. package/lib/utils/platform.js +1 -1
  308. package/lib/utils/sleep.js +1 -1
  309. package/lib/utils/template-replacer.js +1 -1
  310. package/lib/utils/update-notice.js +1 -1
  311. package/lib/utils/version.js +1 -1
  312. package/lib/utils/with-active-cookie.js +1 -1
  313. package/lib/utils/write-cli-side-channel.js +1 -1
  314. package/package.json +1 -1
  315. package/skills/rabetbase/SKILL.md +3 -3
  316. package/skills/rabetbase/references/rabetbase-deployment-sync.md +16 -44
  317. package/skills/rabetbase.manifest.json +3 -3
  318. package/lib/config/deployment-sync.d.ts +0 -10
  319. package/lib/config/deployment-sync.js +0 -1
@@ -1 +1 @@
1
- const a202_0x1c4c4c=a202_0x4a30;(function(_0x4a75eb,_0x288354){const _0x531e78=a202_0x4a30,_0x89554e=_0x4a75eb();while(!![]){try{const _0x18ebbe=parseInt(_0x531e78(0x1c2))/0x1+-parseInt(_0x531e78(0x1a2))/0x2+-parseInt(_0x531e78(0x1ac))/0x3+-parseInt(_0x531e78(0x1b6))/0x4*(parseInt(_0x531e78(0x1a3))/0x5)+parseInt(_0x531e78(0x1a7))/0x6*(-parseInt(_0x531e78(0x1b7))/0x7)+-parseInt(_0x531e78(0x1b1))/0x8+parseInt(_0x531e78(0x1aa))/0x9;if(_0x18ebbe===_0x288354)break;else _0x89554e['push'](_0x89554e['shift']());}catch(_0x5eb92b){_0x89554e['push'](_0x89554e['shift']());}}}(a202_0x5cfb,0xf087b));import{readFile,rm,writeFile}from'node:fs/promises';import{join}from'node:path';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';function a202_0x5cfb(){const _0xd722d=['lastSync','5688246mBMNWF','Force\x20overwrite\x20local\x20unsynced\x20changes','mybatisXml','\x20skipped,\x20','sqlName','6652472KosaQi','str','filter','length','sqlRootDir','4lHZdml','4081581xchLCW','message','local\x20differs\x20from\x20remote','sqlContent','read','path','No\x20remote\x20SQL\x20queries\x20matched.','description','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','sqls','utf8','89860EZFQSv','pull','conflict','sql','cancelled','toISOString','lockFilePath','push','test','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','\x20written,\x20','trimStart','name','dbId','bool','split','string','appCode','sqlcode','force','tableData','unchanged','Pull\x20complete:\x20','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','sqlCode','skipped','2429808vZdnNx','4278385wagrzd','nonInteractive','sqlRoot','\x20failed','6oouTBr','catch','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','56489904aZCqPu'];a202_0x5cfb=function(){return _0xd722d;};return a202_0x5cfb();}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';function a202_0x4a30(_0x62bd70,_0x4b02c1){_0x62bd70=_0x62bd70-0x19e;const _0x5cfbca=a202_0x5cfb();let _0x4a3006=_0x5cfbca[_0x62bd70];return _0x4a3006;}import{buildLocalSqlFileContent,buildSqlLockEntry,cloneSqlLockData,confirmForceOverwrite,ensureRemoteSqlContent,stripLocalSqlMetadata}from'./shared.js';const PAGE_SIZE=0x64;async function fetchAllSqlQueries(_0x4fc609,_0x2a137b){const _0xafb996=a202_0x4a30,_0x3a6395=[];let _0x4aa6cf=0x1;while(!![]){const _0x4408e1=await listSqlQueries(_0x4fc609,{'currentPage':_0x4aa6cf,'pageSize':PAGE_SIZE,'sqlCode':_0x2a137b[_0xafb996(0x1a0)],'sqlName':_0x2a137b[_0xafb996(0x1b0)]}),_0x3ee1f3=_0x4408e1[_0xafb996(0x1d6)]??[];_0x3a6395[_0xafb996(0x1c9)](..._0x3ee1f3);if(_0x3ee1f3['length']===0x0)break;const _0x2e1848=_0x4408e1['paging']?.['totalCount'];if(_0x2e1848!=null?_0x3a6395[_0xafb996(0x1b4)]>=_0x2e1848:_0x3ee1f3['length']<PAGE_SIZE)break;_0x4aa6cf++;}return _0x3a6395;}async function ensureSqlContent(_0x3901f0){const _0x575459=a202_0x4a30;if(_0x3901f0[_0x575459(0x1ba)]!=null&&String(_0x3901f0[_0x575459(0x1ba)])[_0x575459(0x1b4)]>0x0)return _0x3901f0;return getSqlQueryDetail(_0x3901f0[_0x575459(0x1a0)]);}export const sqlPull={'service':a202_0x1c4c4c(0x1c5),'command':a202_0x1c4c4c(0x1c3),'description':a202_0x1c4c4c(0x1cb),'risk':a202_0x1c4c4c(0x1bb),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a202_0x1c4c4c(0x1ce),'type':a202_0x1c4c4c(0x1d2),'description':'Filter\x20by\x20SQL\x20display\x20name'},{'name':a202_0x1c4c4c(0x1d5),'type':'boolean','description':a202_0x1c4c4c(0x1ad)}],async 'dryRun'(_0x4c602f){const _0x5f0bcc=a202_0x1c4c4c,_0x4b6d7f=loadSqlProjectConfig(_0x4c602f[_0x5f0bcc(0x1d3)]),_0x5f0d49=await readSqlLockFile(_0x4b6d7f['lockFilePath']),{appLock:_0x52cf8b}=ensureSqlLockScope(_0x5f0d49??createEmptySqlLock(),_0x4b6d7f[_0x5f0bcc(0x1d3)],_0x4b6d7f[_0x5f0bcc(0x1a5)],_0x5f0bcc(0x1c3)),_0x5d01e0=await fetchAllSqlQueries(_0x4c602f[_0x5f0bcc(0x1d3)],{'sqlCode':_0x4c602f[_0x5f0bcc(0x1b2)](_0x5f0bcc(0x1d4))||undefined,'sqlName':_0x4c602f['str']('name')||undefined}),_0x5c7ba7=[];for(const _0x256aa8 of _0x5d01e0){const _0x52e0ea=await ensureSqlContent(_0x256aa8),_0x1fc1c7=ensureRemoteSqlContent(_0x52e0ea),_0x166905=detectModeFromSql(_0x52e0ea),_0x5b0d02=_0x52e0ea[_0x5f0bcc(0x1cf)]?await getDbName(_0x4c602f[_0x5f0bcc(0x1d3)],Number(_0x52e0ea['dbId']))[_0x5f0bcc(0x1a8)](()=>undefined):undefined,_0x9fc948=buildLocalSqlFileContent({'sqlCode':_0x52e0ea[_0x5f0bcc(0x1a0)],'sqlName':_0x52e0ea[_0x5f0bcc(0x1b0)],'dbId':_0x52e0ea[_0x5f0bcc(0x1cf)]},_0x1fc1c7,{'dbName':_0x5b0d02,'mode':_0x166905,'syncedAt':new Date()[_0x5f0bcc(0x1c7)](),'description':_0x52e0ea[_0x5f0bcc(0x1be)]}),_0x21f446=buildSqlLockEntry(_0x52e0ea,_0x1fc1c7,'',{'dbName':_0x5b0d02}),_0x1803a0=resolveLocalSqlFilePath(_0x4b6d7f,_0x52e0ea['sqlCode'],_0x21f446);let _0x565c53='would_pull',_0x55fec8;if(await fileExists(_0x1803a0)){const _0x2f9d5b=await readFile(_0x1803a0,_0x5f0bcc(0x1c1));isEquivalentPulledSqlFile(_0x2f9d5b,_0x9fc948,_0x166905)?(_0x565c53=_0x5f0bcc(0x1a1),_0x55fec8='unchanged'):(_0x565c53=_0x5f0bcc(0x1c4),_0x55fec8=_0x5f0bcc(0x1a9));}_0x5c7ba7[_0x5f0bcc(0x1c9)]({'sqlCode':_0x52e0ea[_0x5f0bcc(0x1a0)],'sqlName':_0x52e0ea[_0x5f0bcc(0x1b0)],'filePath':_0x1803a0,'status':_0x565c53,'reason':_0x55fec8});}return{'method':'POST','url':_0x5f0bcc(0x19f),'body':{'appCode':_0x4c602f['appCode'],'sqlCode':_0x4c602f[_0x5f0bcc(0x1b2)](_0x5f0bcc(0x1d4))||null,'sqlName':_0x4c602f[_0x5f0bcc(0x1b2)](_0x5f0bcc(0x1ce))||null,'files':_0x5c7ba7},'description':'Would\x20pull\x20'+_0x5c7ba7[_0x5f0bcc(0x1b4)]+'\x20SQL\x20file(s)\x20into\x20'+_0x4b6d7f['sqlRootDir']};},async 'execute'(_0x44a4e0){const _0x548588=a202_0x1c4c4c,_0x5c5793=loadSqlProjectConfig(_0x44a4e0[_0x548588(0x1d3)]),_0x433fc6=await readSqlLockFile(_0x5c5793[_0x548588(0x1c8)]),{lockData:_0x175ce0,appLock:_0x43fdeb}=ensureSqlLockScope(_0x433fc6??createEmptySqlLock(),_0x5c5793[_0x548588(0x1d3)],_0x5c5793[_0x548588(0x1a5)],_0x548588(0x1c3)),_0x2f4828=_0x44a4e0[_0x548588(0x1d0)](_0x548588(0x1d5)),_0x264577=await fetchAllSqlQueries(_0x44a4e0[_0x548588(0x1d3)],{'sqlCode':_0x44a4e0[_0x548588(0x1b2)](_0x548588(0x1d4))||undefined,'sqlName':_0x44a4e0[_0x548588(0x1b2)](_0x548588(0x1ce))||undefined});if(_0x264577[_0x548588(0x1b4)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x548588(0x1bd)};const _0x3453d5=[],_0xa4db7e=[];for(const _0x5e5adb of _0x264577){try{_0x3453d5[_0x548588(0x1c9)](await ensureSqlContent(_0x5e5adb));}catch(_0x7fb597){_0xa4db7e[_0x548588(0x1c9)]({'sqlCode':_0x5e5adb[_0x548588(0x1a0)],'error':_0x7fb597 instanceof Error?_0x7fb597[_0x548588(0x1b8)]:String(_0x7fb597)});}}if(_0x2f4828&&!_0x44a4e0[_0x548588(0x1a4)]){let _0x4e147d=![];for(const _0x24d75a of _0x3453d5){const _0x53f73b=detectModeFromSql(_0x24d75a),_0x314563=_0x24d75a['dbId']?await getDbName(_0x44a4e0[_0x548588(0x1d3)],Number(_0x24d75a[_0x548588(0x1cf)]))['catch'](()=>undefined):undefined,_0x1f915d=buildLocalSqlFileContent({'sqlCode':_0x24d75a[_0x548588(0x1a0)],'sqlName':_0x24d75a[_0x548588(0x1b0)],'dbId':_0x24d75a[_0x548588(0x1cf)]},ensureRemoteSqlContent(_0x24d75a),{'dbName':_0x314563,'mode':_0x53f73b,'syncedAt':new Date()[_0x548588(0x1c7)](),'description':_0x24d75a['description']}),_0x567747=resolveLocalSqlFilePath(_0x5c5793,_0x24d75a[_0x548588(0x1a0)],buildSqlLockEntry(_0x24d75a,ensureRemoteSqlContent(_0x24d75a),'',{'dbName':_0x314563}));if(await fileExists(_0x567747)){const _0x534e81=await readFile(_0x567747,_0x548588(0x1c1));if(!isEquivalentPulledSqlFile(_0x534e81,_0x1f915d,_0x53f73b)){_0x4e147d=!![];break;}}}if(_0x4e147d){const _0x50a4a3=await confirmForceOverwrite(_0x548588(0x1bf));if(!_0x50a4a3)throw CliErrors[_0x548588(0x1c6)]('Force\x20pull\x20cancelled.');}}const _0x4f9434=cloneSqlLockData(_0x175ce0),_0x477baf=_0x4f9434['apps'][_0x5c5793[_0x548588(0x1d3)]],_0x516152=[],_0x25120f=[];for(const _0x477b13 of _0x3453d5){const _0x28143b=_0x477baf['sqls'][_0x477b13[_0x548588(0x1a0)]],_0x499d2c=ensureRemoteSqlContent(_0x477b13),_0x1aacea=detectModeFromSql(_0x477b13),_0x159018=_0x477b13[_0x548588(0x1cf)]?await getDbName(_0x44a4e0[_0x548588(0x1d3)],Number(_0x477b13['dbId']))[_0x548588(0x1a8)](()=>undefined):undefined,_0x51d2ac=buildLocalSqlFileContent({'sqlCode':_0x477b13[_0x548588(0x1a0)],'sqlName':_0x477b13['sqlName'],'dbId':_0x477b13[_0x548588(0x1cf)]},_0x499d2c,{'dbName':_0x159018,'mode':_0x1aacea,'syncedAt':new Date()['toISOString'](),'description':_0x477b13[_0x548588(0x1be)]}),_0x29fda6=buildSqlLockEntry(_0x477b13,_0x499d2c,computeSqlContentHash(_0x51d2ac),{'dbName':_0x159018}),_0x1d4d6a=_0x29fda6[_0x548588(0x1bc)],_0x192320=join(_0x5c5793[_0x548588(0x1b5)],_0x1d4d6a);try{if(await fileExists(_0x192320)){const _0x4f5b9e=await readFile(_0x192320,'utf8');if(isEquivalentPulledSqlFile(_0x4f5b9e,_0x51d2ac,_0x1aacea)){_0x25120f[_0x548588(0x1c9)]({'sqlCode':_0x477b13[_0x548588(0x1a0)],'reason':_0x548588(0x1d7)}),_0x477baf[_0x548588(0x1c0)][_0x477b13[_0x548588(0x1a0)]]={..._0x29fda6,'hash':computeSqlContentHash(_0x4f5b9e),'path':_0x1d4d6a};continue;}if(!_0x2f4828){_0x25120f[_0x548588(0x1c9)]({'sqlCode':_0x477b13['sqlCode'],'reason':_0x548588(0x1b9)});continue;}}const _0x4159ea=_0x28143b?.[_0x548588(0x1bc)]?join(_0x5c5793[_0x548588(0x1b5)],_0x28143b[_0x548588(0x1bc)]):undefined;_0x4159ea&&_0x4159ea!==_0x192320&&await fileExists(_0x4159ea)&&await rm(_0x4159ea,{'force':!![]}),await ensureParentDirectory(_0x192320),await writeFile(_0x192320,_0x51d2ac,'utf8'),_0x477baf['sqls'][_0x477b13['sqlCode']]={..._0x29fda6,'path':_0x1d4d6a},_0x516152[_0x548588(0x1c9)]({'sqlCode':_0x477b13['sqlCode'],'filePath':_0x192320});}catch(_0xd59278){_0xa4db7e[_0x548588(0x1c9)]({'sqlCode':_0x477b13[_0x548588(0x1a0)],'error':_0xd59278 instanceof Error?_0xd59278[_0x548588(0x1b8)]:String(_0xd59278)});}}return _0x477baf[_0x548588(0x1ab)]=new Date()[_0x548588(0x1c7)](),await writeSqlLockFile(_0x5c5793['lockFilePath'],_0x4f9434),{'ok':_0xa4db7e[_0x548588(0x1b4)]===0x0,'data':{'pulled':_0x516152,'skipped':_0x25120f,'failed':_0xa4db7e},'message':_0x548588(0x19e)+_0x516152[_0x548588(0x1b4)]+_0x548588(0x1cc)+_0x25120f[_0x548588(0x1b4)]+_0x548588(0x1af)+_0xa4db7e[_0x548588(0x1b4)]+_0x548588(0x1a6)};}};function detectModeFromSql(_0x44a1fc){const _0x441680=a202_0x1c4c4c,_0x58add7=ensureRemoteSqlContent(_0x44a1fc),_0x2137d9=stripLocalSqlMetadata(_0x58add7,_0x441680(0x1ae))[_0x441680(0x1cd)]();if(/^<(select|insert|update|delete)\b/i['test'](_0x2137d9))return _0x441680(0x1ae);return _0x441680(0x1c5);}function isEquivalentPulledSqlFile(_0x27c4c6,_0x169310,_0x4e866b){return normalizePullComparableContent(_0x27c4c6,_0x4e866b)===normalizePullComparableContent(_0x169310,_0x4e866b);}function normalizePullComparableContent(_0x507932,_0x532406){const _0xcb3ab7=a202_0x1c4c4c,_0x3765e8=_0x507932['replace'](/\r\n/g,'\x0a')[_0xcb3ab7(0x1d1)]('\x0a'),_0x1f22cd=_0x3765e8[_0xcb3ab7(0x1b3)](_0x556b04=>!isSyncedAtMetadataLine(_0x556b04,_0x532406));return _0x1f22cd['join']('\x0a');}function isSyncedAtMetadataLine(_0x961b81,_0x2a89ec){const _0x3709be=a202_0x1c4c4c;if(_0x2a89ec===_0x3709be(0x1ae))return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0x3709be(0x1ca)](_0x961b81);return/^\s*--\s*@lovrabet\.syncedAt:/['test'](_0x961b81);}
1
+ const a202_0x4ad68a=a202_0x28c5;(function(_0x435cd4,_0x597863){const _0x577a51=a202_0x28c5,_0x260dbe=_0x435cd4();while(!![]){try{const _0x577568=-parseInt(_0x577a51(0x9d))/0x1*(-parseInt(_0x577a51(0xb3))/0x2)+parseInt(_0x577a51(0xa4))/0x3+parseInt(_0x577a51(0xac))/0x4+parseInt(_0x577a51(0x96))/0x5*(parseInt(_0x577a51(0xa9))/0x6)+parseInt(_0x577a51(0x9f))/0x7+-parseInt(_0x577a51(0xb0))/0x8+-parseInt(_0x577a51(0x99))/0x9;if(_0x577568===_0x597863)break;else _0x260dbe['push'](_0x260dbe['shift']());}catch(_0x131848){_0x260dbe['push'](_0x260dbe['shift']());}}}(a202_0x2cee,0x64f6c));import{readFile,rm,writeFile}from'node:fs/promises';import{join}from'node:path';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';function a202_0x2cee(){const _0x802fd6=['split','read','boolean','lastSync','filter','mybatisXml','totalCount','string','message','tableData','Force\x20pull\x20cancelled.','No\x20remote\x20SQL\x20queries\x20matched.','utf8','trimStart','nonInteractive','replace','toISOString','skipped','conflict','pull','sqlcode','3545GGDolA','local\x20differs\x20from\x20remote','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','7967907TMMCWQ','sqlRootDir','unchanged','name','12151OBgygi','paging','3492300BsJPoT','sqlContent','would_pull','str','sqlName','902769EoyZMM','dbId','sql','push','path','1692kiVKJT','Would\x20pull\x20','appCode','3103308ipCAzE','lockFilePath','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','\x20written,\x20','4299776PQBeOv','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','10ilPVMk','sqlCode','sqlRoot','Force\x20overwrite\x20local\x20unsynced\x20changes','description','\x20skipped,\x20','force','sqls','catch','length','cancelled','\x20failed','Filter\x20by\x20SQL\x20display\x20name'];a202_0x2cee=function(){return _0x802fd6;};return a202_0x2cee();}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(_0x2d2464,_0x1bc32e){const _0x21dc11=a202_0x28c5,_0x34a185=[];let _0x49fd2c=0x1;while(!![]){const _0x35efcc=await listSqlQueries(_0x2d2464,{'currentPage':_0x49fd2c,'pageSize':PAGE_SIZE,'sqlCode':_0x1bc32e[_0x21dc11(0xb4)],'sqlName':_0x1bc32e[_0x21dc11(0xa3)]}),_0x44c6c7=_0x35efcc[_0x21dc11(0x8a)]??[];_0x34a185[_0x21dc11(0xa7)](..._0x44c6c7);if(_0x44c6c7['length']===0x0)break;const _0x551132=_0x35efcc[_0x21dc11(0x9e)]?.[_0x21dc11(0x87)];if(_0x551132!=null?_0x34a185[_0x21dc11(0x7d)]>=_0x551132:_0x44c6c7[_0x21dc11(0x7d)]<PAGE_SIZE)break;_0x49fd2c++;}return _0x34a185;}async function ensureSqlContent(_0x2b0c3c){const _0x4af7b6=a202_0x28c5;if(_0x2b0c3c['sqlContent']!=null&&String(_0x2b0c3c[_0x4af7b6(0xa0)])[_0x4af7b6(0x7d)]>0x0)return _0x2b0c3c;return getSqlQueryDetail(_0x2b0c3c[_0x4af7b6(0xb4)]);}export const sqlPull={'service':a202_0x4ad68a(0xa6),'command':a202_0x4ad68a(0x94),'description':a202_0x4ad68a(0xb2),'risk':a202_0x4ad68a(0x82),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a202_0x4ad68a(0x9c),'type':a202_0x4ad68a(0x88),'description':a202_0x4ad68a(0x80)},{'name':a202_0x4ad68a(0xb9),'type':a202_0x4ad68a(0x83),'description':a202_0x4ad68a(0xb6)}],async 'dryRun'(_0x3cb74a){const _0x583e37=a202_0x4ad68a,_0x138548=loadSqlProjectConfig(_0x3cb74a[_0x583e37(0xab)]),_0x200752=await readSqlLockFile(_0x138548[_0x583e37(0xad)]),{appLock:_0x538fb6}=ensureSqlLockScope(_0x200752??createEmptySqlLock(),_0x138548['appCode'],_0x138548['sqlRoot'],_0x583e37(0x94)),_0x271fd7=await fetchAllSqlQueries(_0x3cb74a['appCode'],{'sqlCode':_0x3cb74a['str'](_0x583e37(0x95))||undefined,'sqlName':_0x3cb74a[_0x583e37(0xa2)]('name')||undefined}),_0x33a30c=[];for(const _0xe7460b of _0x271fd7){const _0x3a5f39=await ensureSqlContent(_0xe7460b),_0x28ec15=ensureRemoteSqlContent(_0x3a5f39),_0x3862dd=detectModeFromSql(_0x3a5f39),_0x38237a=_0x3a5f39['dbId']?await getDbName(_0x3cb74a[_0x583e37(0xab)],Number(_0x3a5f39[_0x583e37(0xa5)]))['catch'](()=>undefined):undefined,_0xc58a2=buildLocalSqlFileContent({'sqlCode':_0x3a5f39[_0x583e37(0xb4)],'sqlName':_0x3a5f39[_0x583e37(0xa3)],'dbId':_0x3a5f39['dbId']},_0x28ec15,{'dbName':_0x38237a,'mode':_0x3862dd,'syncedAt':new Date()[_0x583e37(0x91)](),'description':_0x3a5f39[_0x583e37(0xb7)]}),_0x27bca0=buildSqlLockEntry(_0x3a5f39,_0x28ec15,'',{'dbName':_0x38237a}),_0x15dc1a=resolveLocalSqlFilePath(_0x138548,_0x3a5f39['sqlCode'],_0x27bca0);let _0x304a45=_0x583e37(0xa1),_0x44e6ce;if(await fileExists(_0x15dc1a)){const _0x4bcf7a=await readFile(_0x15dc1a,'utf8');isEquivalentPulledSqlFile(_0x4bcf7a,_0xc58a2,_0x3862dd)?(_0x304a45=_0x583e37(0x92),_0x44e6ce=_0x583e37(0x9b)):(_0x304a45=_0x583e37(0x93),_0x44e6ce=_0x583e37(0xae));}_0x33a30c['push']({'sqlCode':_0x3a5f39[_0x583e37(0xb4)],'sqlName':_0x3a5f39[_0x583e37(0xa3)],'filePath':_0x15dc1a,'status':_0x304a45,'reason':_0x44e6ce});}return{'method':'POST','url':_0x583e37(0x98),'body':{'appCode':_0x3cb74a['appCode'],'sqlCode':_0x3cb74a[_0x583e37(0xa2)]('sqlcode')||null,'sqlName':_0x3cb74a[_0x583e37(0xa2)](_0x583e37(0x9c))||null,'files':_0x33a30c},'description':_0x583e37(0xaa)+_0x33a30c[_0x583e37(0x7d)]+'\x20SQL\x20file(s)\x20into\x20'+_0x138548['sqlRootDir']};},async 'execute'(_0x315adc){const _0x24191f=a202_0x4ad68a,_0x22ea56=loadSqlProjectConfig(_0x315adc[_0x24191f(0xab)]),_0x40771d=await readSqlLockFile(_0x22ea56['lockFilePath']),{lockData:_0x18e777,appLock:_0x2f4613}=ensureSqlLockScope(_0x40771d??createEmptySqlLock(),_0x22ea56[_0x24191f(0xab)],_0x22ea56[_0x24191f(0xb5)],_0x24191f(0x94)),_0x35f46f=_0x315adc['bool']('force'),_0x5ca4a9=await fetchAllSqlQueries(_0x315adc[_0x24191f(0xab)],{'sqlCode':_0x315adc[_0x24191f(0xa2)]('sqlcode')||undefined,'sqlName':_0x315adc['str'](_0x24191f(0x9c))||undefined});if(_0x5ca4a9[_0x24191f(0x7d)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x24191f(0x8c)};const _0x1da047=[],_0x45f5f3=[];for(const _0x18731a of _0x5ca4a9){try{_0x1da047[_0x24191f(0xa7)](await ensureSqlContent(_0x18731a));}catch(_0x2404f8){_0x45f5f3[_0x24191f(0xa7)]({'sqlCode':_0x18731a[_0x24191f(0xb4)],'error':_0x2404f8 instanceof Error?_0x2404f8[_0x24191f(0x89)]:String(_0x2404f8)});}}if(_0x35f46f&&!_0x315adc[_0x24191f(0x8f)]){let _0x835f29=![];for(const _0x3de7d0 of _0x1da047){const _0x34f7e4=detectModeFromSql(_0x3de7d0),_0x570947=_0x3de7d0[_0x24191f(0xa5)]?await getDbName(_0x315adc[_0x24191f(0xab)],Number(_0x3de7d0[_0x24191f(0xa5)]))['catch'](()=>undefined):undefined,_0x40d41c=buildLocalSqlFileContent({'sqlCode':_0x3de7d0[_0x24191f(0xb4)],'sqlName':_0x3de7d0['sqlName'],'dbId':_0x3de7d0[_0x24191f(0xa5)]},ensureRemoteSqlContent(_0x3de7d0),{'dbName':_0x570947,'mode':_0x34f7e4,'syncedAt':new Date()[_0x24191f(0x91)](),'description':_0x3de7d0['description']}),_0x17a56b=resolveLocalSqlFilePath(_0x22ea56,_0x3de7d0[_0x24191f(0xb4)],buildSqlLockEntry(_0x3de7d0,ensureRemoteSqlContent(_0x3de7d0),'',{'dbName':_0x570947}));if(await fileExists(_0x17a56b)){const _0xe05e13=await readFile(_0x17a56b,_0x24191f(0x8d));if(!isEquivalentPulledSqlFile(_0xe05e13,_0x40d41c,_0x34f7e4)){_0x835f29=!![];break;}}}if(_0x835f29){const _0x7ae315=await confirmForceOverwrite(_0x24191f(0xb1));if(!_0x7ae315)throw CliErrors[_0x24191f(0x7e)](_0x24191f(0x8b));}}const _0x2c6b8d=cloneSqlLockData(_0x18e777),_0x3cdb8f=_0x2c6b8d['apps'][_0x22ea56[_0x24191f(0xab)]],_0x530273=[],_0xc2e572=[];for(const _0x102a08 of _0x1da047){const _0x309cd2=_0x3cdb8f[_0x24191f(0x7b)][_0x102a08[_0x24191f(0xb4)]],_0x155858=ensureRemoteSqlContent(_0x102a08),_0x352a21=detectModeFromSql(_0x102a08),_0x5c1a58=_0x102a08[_0x24191f(0xa5)]?await getDbName(_0x315adc[_0x24191f(0xab)],Number(_0x102a08[_0x24191f(0xa5)]))[_0x24191f(0x7c)](()=>undefined):undefined,_0x3330ce=buildLocalSqlFileContent({'sqlCode':_0x102a08[_0x24191f(0xb4)],'sqlName':_0x102a08['sqlName'],'dbId':_0x102a08[_0x24191f(0xa5)]},_0x155858,{'dbName':_0x5c1a58,'mode':_0x352a21,'syncedAt':new Date()[_0x24191f(0x91)](),'description':_0x102a08[_0x24191f(0xb7)]}),_0x216d47=buildSqlLockEntry(_0x102a08,_0x155858,computeSqlContentHash(_0x3330ce),{'dbName':_0x5c1a58}),_0x25b993=_0x216d47[_0x24191f(0xa8)],_0x282b7a=join(_0x22ea56[_0x24191f(0x9a)],_0x25b993);try{if(await fileExists(_0x282b7a)){const _0x3727b2=await readFile(_0x282b7a,_0x24191f(0x8d));if(isEquivalentPulledSqlFile(_0x3727b2,_0x3330ce,_0x352a21)){_0xc2e572['push']({'sqlCode':_0x102a08[_0x24191f(0xb4)],'reason':'unchanged'}),_0x3cdb8f['sqls'][_0x102a08[_0x24191f(0xb4)]]={..._0x216d47,'hash':computeSqlContentHash(_0x3727b2),'path':_0x25b993};continue;}if(!_0x35f46f){_0xc2e572[_0x24191f(0xa7)]({'sqlCode':_0x102a08[_0x24191f(0xb4)],'reason':_0x24191f(0x97)});continue;}}const _0x873fad=_0x309cd2?.[_0x24191f(0xa8)]?join(_0x22ea56[_0x24191f(0x9a)],_0x309cd2[_0x24191f(0xa8)]):undefined;_0x873fad&&_0x873fad!==_0x282b7a&&await fileExists(_0x873fad)&&await rm(_0x873fad,{'force':!![]}),await ensureParentDirectory(_0x282b7a),await writeFile(_0x282b7a,_0x3330ce,_0x24191f(0x8d)),_0x3cdb8f[_0x24191f(0x7b)][_0x102a08[_0x24191f(0xb4)]]={..._0x216d47,'path':_0x25b993},_0x530273['push']({'sqlCode':_0x102a08[_0x24191f(0xb4)],'filePath':_0x282b7a});}catch(_0x545e2d){_0x45f5f3['push']({'sqlCode':_0x102a08[_0x24191f(0xb4)],'error':_0x545e2d instanceof Error?_0x545e2d[_0x24191f(0x89)]:String(_0x545e2d)});}}return _0x3cdb8f[_0x24191f(0x84)]=new Date()[_0x24191f(0x91)](),await writeSqlLockFile(_0x22ea56[_0x24191f(0xad)],_0x2c6b8d),{'ok':_0x45f5f3[_0x24191f(0x7d)]===0x0,'data':{'pulled':_0x530273,'skipped':_0xc2e572,'failed':_0x45f5f3},'message':'Pull\x20complete:\x20'+_0x530273[_0x24191f(0x7d)]+_0x24191f(0xaf)+_0xc2e572['length']+_0x24191f(0xb8)+_0x45f5f3[_0x24191f(0x7d)]+_0x24191f(0x7f)};}};function detectModeFromSql(_0xe0fc09){const _0x4e81d5=a202_0x4ad68a,_0x3ed212=ensureRemoteSqlContent(_0xe0fc09),_0x3bf931=stripLocalSqlMetadata(_0x3ed212,_0x4e81d5(0x86))[_0x4e81d5(0x8e)]();if(/^<(select|insert|update|delete)\b/i['test'](_0x3bf931))return _0x4e81d5(0x86);return _0x4e81d5(0xa6);}function isEquivalentPulledSqlFile(_0x14fe3d,_0x59ff85,_0x933776){return normalizePullComparableContent(_0x14fe3d,_0x933776)===normalizePullComparableContent(_0x59ff85,_0x933776);}function a202_0x28c5(_0x168019,_0x180f84){_0x168019=_0x168019-0x7b;const _0x2ceebd=a202_0x2cee();let _0x28c519=_0x2ceebd[_0x168019];return _0x28c519;}function normalizePullComparableContent(_0x12f430,_0x14da39){const _0x4c1dc3=a202_0x4ad68a,_0x378163=_0x12f430[_0x4c1dc3(0x90)](/\r\n/g,'\x0a')[_0x4c1dc3(0x81)]('\x0a'),_0x3b87e5=_0x378163[_0x4c1dc3(0x85)](_0x53b0d2=>!isSyncedAtMetadataLine(_0x53b0d2,_0x14da39));return _0x3b87e5['join']('\x0a');}function isSyncedAtMetadataLine(_0x45a169,_0x5e1205){if(_0x5e1205==='mybatisXml')return/^\s*<!--\s*@lovrabet\.syncedAt:/['test'](_0x45a169);return/^\s*--\s*@lovrabet\.syncedAt:/['test'](_0x45a169);}
@@ -1 +1 @@
1
- const a203_0x10b9c8=a203_0x4e56;(function(_0x4d7000,_0x1e6807){const _0x3866c6=a203_0x4e56,_0xc25d49=_0x4d7000();while(!![]){try{const _0x20bb3e=-parseInt(_0x3866c6(0x18e))/0x1*(parseInt(_0x3866c6(0x175))/0x2)+parseInt(_0x3866c6(0x14d))/0x3*(parseInt(_0x3866c6(0x17d))/0x4)+-parseInt(_0x3866c6(0x18a))/0x5*(parseInt(_0x3866c6(0x15d))/0x6)+parseInt(_0x3866c6(0x17f))/0x7*(parseInt(_0x3866c6(0x170))/0x8)+parseInt(_0x3866c6(0x176))/0x9+parseInt(_0x3866c6(0x189))/0xa+-parseInt(_0x3866c6(0x16e))/0xb;if(_0x20bb3e===_0x1e6807)break;else _0xc25d49['push'](_0xc25d49['shift']());}catch(_0x5eed9e){_0xc25d49['push'](_0xc25d49['shift']());}}}(a203_0x2049,0x9b5ba));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';import{automaticDeploymentSyncSucceeded,buildAutomaticDeploymentSyncPreview,runAutomaticDeploymentSync,validateAutomaticDeploymentSync}from'../../commands/deployment/auto-sync.js';function a203_0x2049(){const _0x55acf9=['sqlcode','status','write','configured','Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock','sqlRoot','dbId','dbName','utf8','remoteId','.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.','unchanged','9276egcdJr','join','Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20','catch','missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first','sqls','\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20','exec','sqlConfig','entries','push','sqlCode','length','version','lockFilePath','filePath','Local\x20directory\x20\x22','16116628xenZDi','sql','2446648VllAPS','map','Push\x20complete:\x20','has','sqlName','2EBeNZm','11420802OzsnXk','startsWith','\x20pushed,\x20','str','path','relativePath','force','49092GtVwRO','POST','7DcqEkz','hash','mode','message','appCode','bool','set','get','sqlRootDir','trashDir','2851120nagrhl','1385smhqId','/smartapi/custom/updateUserCustomSql','Would\x20push\x20','validation','385663AIufdC','Local\x20SQL\x20not\x20found:\x20','No\x20database\x20matches\x20local\x20directory\x20\x22','toISOString','\x20failed','258uzodSg','replace','\x20SQL\x20file(s)','No\x20local\x20SQL\x20files\x20found.'];a203_0x2049=function(){return _0x55acf9;};return a203_0x2049();}async function getTargetSqlQueries(_0xbcbeb4,_0x2eaaae,_0x20bee3){const _0x144248=a203_0x4e56,_0x3c243e=await scanLocalSqlQueries(_0xbcbeb4),_0x55dd8d=new Map();for(const _0x8070e8 of _0x3c243e){if(_0x20bee3&&_0x8070e8['sqlCode']!==_0x20bee3)continue;const _0x4ad9fa=_0x55dd8d[_0x144248(0x186)](_0x8070e8[_0x144248(0x168)])??[];_0x4ad9fa[_0x144248(0x167)](_0x8070e8),_0x55dd8d[_0x144248(0x185)](_0x8070e8[_0x144248(0x168)],_0x4ad9fa);}if(_0x20bee3&&!_0x55dd8d[_0x144248(0x173)](_0x20bee3))throw CliErrors[_0x144248(0x18d)](_0x144248(0x149)+_0x20bee3);const _0x1a7479=[];for(const [_0x58c3f9,_0x2b855]of _0x55dd8d[_0x144248(0x166)]()){if(_0x2b855[_0x144248(0x169)]===0x1){_0x1a7479[_0x144248(0x167)](_0x2b855[0x0]);continue;}const _0x2497b6=_0x2eaaae[_0x144248(0x162)][_0x58c3f9],_0xb8c5c1=_0x2497b6?.[_0x144248(0x17a)],_0x17522a=_0xb8c5c1?_0x2b855['filter'](_0x47e53c=>_0x47e53c[_0x144248(0x17b)]!==_0xb8c5c1):_0x2b855;if(_0x2497b6&&_0x17522a[_0x144248(0x169)]===0x1){_0x1a7479[_0x144248(0x167)](_0x17522a[0x0]);continue;}throw CliErrors[_0x144248(0x18d)](_0x144248(0x15f)+_0x58c3f9+_0x144248(0x15b));}return _0x1a7479;}export const sqlPush={'service':a203_0x10b9c8(0x16f),'command':'push','description':'Push\x20local\x20SQL\x20files\x20to\x20remote','risk':a203_0x10b9c8(0x153),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a203_0x10b9c8(0x17c),'type':'boolean','description':a203_0x10b9c8(0x155)}],async 'validate'(_0x451ba9){validateAutomaticDeploymentSync(_0x451ba9);},async 'dryRun'(_0x5ed96d){const _0x420ea9=a203_0x10b9c8,_0x594e34=loadSqlProjectConfig(_0x5ed96d[_0x420ea9(0x183)]),_0x562e9e=await readSqlLockFile(_0x594e34[_0x420ea9(0x16b)]),{appLock:_0x2631be}=ensureSqlLockScope(_0x562e9e??createEmptySqlLock(),_0x5ed96d[_0x420ea9(0x183)],_0x594e34[_0x420ea9(0x156)],_0x420ea9(0x167)),_0x3bae36=await getTargetSqlQueries(_0x594e34,_0x2631be,_0x5ed96d[_0x420ea9(0x179)](_0x420ea9(0x151))||undefined),_0x26b96d=[];for(const _0x8f417 of _0x3bae36){const _0x41118c=await computeSqlFileHash(_0x8f417['filePath']),_0xaa28f4=_0x2631be['sqls'][_0x8f417[_0x420ea9(0x168)]],_0x1e1d78=!!_0xaa28f4&&(_0xaa28f4[_0x420ea9(0x17a)]!==_0x8f417[_0x420ea9(0x17b)]||!!_0x8f417[_0x420ea9(0x174)]&&_0xaa28f4[_0x420ea9(0x174)]!==_0x8f417[_0x420ea9(0x174)]);if(!_0x5ed96d[_0x420ea9(0x184)](_0x420ea9(0x17c))&&_0xaa28f4&&_0xaa28f4[_0x420ea9(0x180)]===_0x41118c&&!_0x1e1d78)continue;_0x26b96d[_0x420ea9(0x167)](_0x8f417['sqlCode']);}return{'method':_0x420ea9(0x17e),'url':_0x420ea9(0x18b),'deploymentSync':buildAutomaticDeploymentSyncPreview(_0x5ed96d,_0x420ea9(0x16f),_0x26b96d),'body':{'sqlCodes':_0x26b96d,'appCode':_0x5ed96d['appCode']},'description':_0x420ea9(0x18c)+_0x26b96d[_0x420ea9(0x169)]+_0x420ea9(0x14f)};},async 'execute'(_0x2d7727){const _0x52ea46=a203_0x10b9c8,_0x1e09bb=loadSqlProjectConfig(_0x2d7727[_0x52ea46(0x183)]),_0x12a79e=await readSqlLockFile(_0x1e09bb[_0x52ea46(0x16b)]),{lockData:_0x59b20f,appLock:_0x1c98d9}=ensureSqlLockScope(_0x12a79e??createEmptySqlLock(),_0x2d7727[_0x52ea46(0x183)],_0x1e09bb[_0x52ea46(0x156)],_0x52ea46(0x167)),_0xf1ad91=await getTargetSqlQueries(_0x1e09bb,_0x1c98d9,_0x2d7727[_0x52ea46(0x179)]('sqlcode')||undefined);if(_0xf1ad91[_0x52ea46(0x169)]===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':_0x52ea46(0x150)};const _0x4f6125=[],_0x556780=[],_0x400faf=[];for(const _0x4b4b6c of _0xf1ad91){const _0x2d64f8=_0x1c98d9[_0x52ea46(0x162)][_0x4b4b6c[_0x52ea46(0x168)]];if(!_0x2d64f8){_0x400faf[_0x52ea46(0x167)]({'sqlCode':_0x4b4b6c[_0x52ea46(0x168)],'error':'local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first'});continue;}try{const _0x3c4ef6=await computeSqlFileHash(_0x4b4b6c['filePath']),_0x4f7591=_0x2d64f8[_0x52ea46(0x17a)]!==_0x4b4b6c['relativePath']||!!_0x4b4b6c[_0x52ea46(0x174)]&&_0x2d64f8[_0x52ea46(0x174)]!==_0x4b4b6c[_0x52ea46(0x174)];if(!_0x2d7727[_0x52ea46(0x184)]('force')&&_0x2d64f8['hash']===_0x3c4ef6&&!_0x4f7591){_0x556780[_0x52ea46(0x167)]({'sqlCode':_0x4b4b6c[_0x52ea46(0x168)],'reason':_0x52ea46(0x15c)});continue;}if(_0x2d64f8[_0x52ea46(0x16a)]==null){_0x400faf[_0x52ea46(0x167)]({'sqlCode':_0x4b4b6c[_0x52ea46(0x168)],'error':_0x52ea46(0x161)});continue;}const _0x26e8c8=await readFile(_0x4b4b6c[_0x52ea46(0x16c)],_0x52ea46(0x159)),_0x26b14e=stripLocalSqlMetadata(_0x26e8c8,_0x4b4b6c[_0x52ea46(0x181)]),_0x53ea2c=_0x4b4b6c['sqlName']||_0x2d64f8[_0x52ea46(0x174)],_0x2722c0=await resolveTargetDbBinding(_0x2d7727[_0x52ea46(0x183)],_0x4b4b6c,_0x2d64f8),_0x59e4c1=await updateSqlQuery({'id':_0x2d64f8[_0x52ea46(0x15a)],'appCode':_0x2d7727[_0x52ea46(0x183)],'sqlCode':_0x4b4b6c[_0x52ea46(0x168)],'sqlName':_0x53ea2c,'dbId':_0x2722c0['dbId'],'version':_0x2d64f8[_0x52ea46(0x16a)],'sqlContent':_0x26b14e,'sqlConfig':_0x2d64f8[_0x52ea46(0x165)]??undefined}),_0x287d36=_0x59e4c1[_0x52ea46(0x157)]?await getDbName(_0x2d7727[_0x52ea46(0x183)],Number(_0x59e4c1[_0x52ea46(0x157)]))[_0x52ea46(0x160)](()=>_0x2722c0[_0x52ea46(0x158)]):_0x2722c0['dbName'];_0x1c98d9[_0x52ea46(0x162)][_0x4b4b6c[_0x52ea46(0x168)]]={...buildSqlLockEntry(_0x59e4c1,_0x26b14e,_0x3c4ef6,{'dbName':_0x287d36}),'path':_0x4b4b6c[_0x52ea46(0x17b)],'mode':_0x2d64f8['mode']},await archivePreviousSqlFileIfNeeded(_0x1e09bb,_0x2d64f8[_0x52ea46(0x17a)],_0x4b4b6c[_0x52ea46(0x17b)]),_0x4f6125['push']({'sqlCode':_0x4b4b6c[_0x52ea46(0x168)],'remoteId':_0x2d64f8[_0x52ea46(0x15a)]});}catch(_0xdf69a6){_0x400faf[_0x52ea46(0x167)]({'sqlCode':_0x4b4b6c[_0x52ea46(0x168)],'error':_0xdf69a6 instanceof Error?_0xdf69a6[_0x52ea46(0x182)]:String(_0xdf69a6)});}}_0x1c98d9['lastSync']=new Date()[_0x52ea46(0x14b)](),await writeSqlLockFile(_0x1e09bb[_0x52ea46(0x16b)],_0x59b20f);const _0x360fa7=_0x400faf['length']===0x0,_0x370131=await runAutomaticDeploymentSync(_0x2d7727,_0x52ea46(0x16f),_0x4f6125[_0x52ea46(0x171)](_0x321517=>_0x321517[_0x52ea46(0x168)]),_0x360fa7),_0x536375=_0x360fa7&&automaticDeploymentSyncSucceeded(_0x370131),_0x52cb97=_0x370131[_0x52ea46(0x154)]?',\x20deployment\x20sync\x20'+_0x370131[_0x52ea46(0x152)]:'';return{'ok':_0x536375,'data':{'pushed':_0x4f6125,'skipped':_0x556780,'failed':_0x400faf,'deploymentSync':_0x370131},'message':_0x52ea46(0x172)+_0x4f6125[_0x52ea46(0x169)]+_0x52ea46(0x178)+_0x556780[_0x52ea46(0x169)]+'\x20skipped,\x20'+_0x400faf[_0x52ea46(0x169)]+_0x52ea46(0x14c)+_0x52cb97};}};async function archivePreviousSqlFileIfNeeded(_0x4df483,_0xe4bacc,_0x418367){const _0x105c2c=a203_0x10b9c8;if(!_0xe4bacc||_0xe4bacc===_0x418367)return;const _0xbe76a3=join(_0x4df483[_0x105c2c(0x187)],_0xe4bacc);if(!await fileExists(_0xbe76a3))return;const _0x17a98c=await moveToTrash(_0x4df483['projectRoot'],_0x4df483[_0x105c2c(0x188)],_0xbe76a3);await cleanupEmptyDirectories(dirname(_0xbe76a3),_0x4df483[_0x105c2c(0x187)]),void _0x17a98c;}async function moveToTrash(_0x5b47e9,_0x217af3,_0x64a6ef){const _0x3ce3b4=a203_0x10b9c8,_0x9d6dcf=new Date()['toISOString']()[_0x3ce3b4(0x14e)](/[:.]/g,'-'),_0x3a1d56=relative(_0x5b47e9,_0x64a6ef),_0x154b59=join(_0x217af3,_0x9d6dcf,_0x3a1d56);return await mkdir(dirname(_0x154b59),{'recursive':!![]}),await rename(_0x64a6ef,_0x154b59),_0x154b59;}async function cleanupEmptyDirectories(_0x355b65,_0x1ffc9e){const _0x4ad28f=a203_0x10b9c8;let _0x162007=resolve(_0x355b65);const _0x218ee2=resolve(_0x1ffc9e);while(_0x162007[_0x4ad28f(0x177)](''+_0x218ee2+sep)||_0x162007===_0x218ee2){if(_0x162007===_0x218ee2)return;try{const _0x13cb6b=await readdir(_0x162007);if(_0x13cb6b[_0x4ad28f(0x169)]>0x0)return;await rmdir(_0x162007);}catch{return;}_0x162007=dirname(_0x162007);}}async function resolveTargetDbBinding(_0x3eab29,_0x52a262,_0x4a6365){const _0x3fa689=a203_0x10b9c8,_0x2a60c6=_0x52a262['dbDirectory'];if(!_0x2a60c6)return{'dbId':_0x4a6365[_0x3fa689(0x157)],'dbName':_0x4a6365[_0x3fa689(0x158)]};const _0x8c7268=buildDbDirectoryName(_0x4a6365[_0x3fa689(0x158)],_0x4a6365['dbId']);if(_0x2a60c6===_0x8c7268)return{'dbId':_0x4a6365[_0x3fa689(0x157)],'dbName':_0x4a6365[_0x3fa689(0x158)]};const _0x133969=parseExplicitDbDirectory(_0x2a60c6);if(_0x133969!=null)return{'dbId':_0x133969,'dbName':await getDbName(_0x3eab29,_0x133969)[_0x3fa689(0x160)](()=>undefined)};const _0x42fa4a=await listDatabases(_0x3eab29),_0x35a763=_0x42fa4a['filter'](_0x33cfec=>buildDbDirectoryName(_0x33cfec[_0x3fa689(0x158)],_0x33cfec[_0x3fa689(0x157)])===_0x2a60c6);if(_0x35a763['length']===0x1)return{'dbId':_0x35a763[0x0]['dbId'],'dbName':_0x35a763[0x0][_0x3fa689(0x158)]};if(_0x35a763[_0x3fa689(0x169)]===0x0)throw CliErrors[_0x3fa689(0x18d)](_0x3fa689(0x14a)+_0x2a60c6+'\x22\x20for\x20sqlCode\x20'+_0x52a262['sqlCode']+'.');const _0x5bd2fb=_0x35a763[_0x3fa689(0x171)](_0x46cfdd=>_0x46cfdd[_0x3fa689(0x158)]+'\x20('+_0x46cfdd[_0x3fa689(0x157)]+')')[_0x3fa689(0x15e)](',\x20');throw CliErrors[_0x3fa689(0x18d)](_0x3fa689(0x16d)+_0x2a60c6+_0x3fa689(0x163)+_0x52a262[_0x3fa689(0x168)]+':\x20'+_0x5bd2fb);}function a203_0x4e56(_0x422cc9,_0x48d923){_0x422cc9=_0x422cc9-0x149;const _0x20490=a203_0x2049();let _0x4e5665=_0x20490[_0x422cc9];return _0x4e5665;}function parseExplicitDbDirectory(_0xbedeb3){const _0x82ce47=a203_0x10b9c8,_0x37d0b7=/^db-(\d+)$/[_0x82ce47(0x164)](_0xbedeb3);if(!_0x37d0b7)return null;const _0x14d528=Number(_0x37d0b7[0x1]);return Number['isFinite'](_0x14d528)&&_0x14d528>0x0?_0x14d528:null;}
1
+ const a203_0xfb2fb3=a203_0x5e27;(function(_0x18fb9c,_0x50f13e){const _0x3ff4a0=a203_0x5e27,_0x35b48c=_0x18fb9c();while(!![]){try{const _0xfd152f=-parseInt(_0x3ff4a0(0x212))/0x1+parseInt(_0x3ff4a0(0x1f3))/0x2+-parseInt(_0x3ff4a0(0x203))/0x3+parseInt(_0x3ff4a0(0x1eb))/0x4*(parseInt(_0x3ff4a0(0x21e))/0x5)+parseInt(_0x3ff4a0(0x20e))/0x6*(-parseInt(_0x3ff4a0(0x20b))/0x7)+-parseInt(_0x3ff4a0(0x219))/0x8*(-parseInt(_0x3ff4a0(0x1e0))/0x9)+parseInt(_0x3ff4a0(0x1e4))/0xa;if(_0xfd152f===_0x50f13e)break;else _0x35b48c['push'](_0x35b48c['shift']());}catch(_0xe6dbc4){_0x35b48c['push'](_0x35b48c['shift']());}}}(a203_0x835f,0x68dc6));function a203_0x5e27(_0x3946b1,_0x4c5c63){_0x3946b1=_0x3946b1-0x1e0;const _0x835f19=a203_0x835f();let _0x5e2797=_0x835f19[_0x3946b1];return _0x5e2797;}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';function a203_0x835f(){const _0x35d3e5=['1433268oopXrY','Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20','join','length','str','mode','validation','dbName','\x20failed','Push\x20local\x20SQL\x20files\x20to\x20remote','/smartapi/custom/updateUserCustomSql','push','filePath','sqlRootDir','toISOString','status','916371KjsOGM','dbDirectory','set','has','Local\x20SQL\x20not\x20found:\x20','missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first','\x20pushed,\x20','sqls','14HuHUDG','write','lockFilePath','1677906GQYmut','exec','force','projectRoot','660401EpnwhR','sqlRoot','lastSync','entries','trashDir','Push\x20complete:\x20','appCode','274504mRmrVX','utf8','remoteId','sql','local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first','985SzKRSN','No\x20local\x20SQL\x20files\x20found.','sqlConfig','sqlCode','isFinite','sqlcode','map','153TXdPUD','Local\x20directory\x20\x22','filter','.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.','3034640YQwJde','boolean','path','version','sqlName','message','dbId','7132FMjtXb','Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock','relativePath','replace','hash','POST','bool','startsWith'];a203_0x835f=function(){return _0x35d3e5;};return a203_0x835f();}import{buildSqlLockEntry,stripLocalSqlMetadata}from'./shared.js';import{buildDbDirectoryName}from'../../core/sql-sync/utils.js';import{automaticDeploymentSyncSucceeded,buildAutomaticDeploymentSyncPreview,runAutomaticDeploymentSync}from'../../commands/deployment/auto-sync.js';async function getTargetSqlQueries(_0x1f35f6,_0x29db05,_0x1efc24){const _0x366dd4=a203_0x5e27,_0x338bc2=await scanLocalSqlQueries(_0x1f35f6),_0x5a03c3=new Map();for(const _0x1476a3 of _0x338bc2){if(_0x1efc24&&_0x1476a3['sqlCode']!==_0x1efc24)continue;const _0x297c84=_0x5a03c3['get'](_0x1476a3[_0x366dd4(0x221)])??[];_0x297c84[_0x366dd4(0x1fe)](_0x1476a3),_0x5a03c3[_0x366dd4(0x205)](_0x1476a3[_0x366dd4(0x221)],_0x297c84);}if(_0x1efc24&&!_0x5a03c3[_0x366dd4(0x206)](_0x1efc24))throw CliErrors[_0x366dd4(0x1f9)](_0x366dd4(0x207)+_0x1efc24);const _0x1c139a=[];for(const [_0x2bb121,_0x583296]of _0x5a03c3[_0x366dd4(0x215)]()){if(_0x583296[_0x366dd4(0x1f6)]===0x1){_0x1c139a[_0x366dd4(0x1fe)](_0x583296[0x0]);continue;}const _0x5262a4=_0x29db05[_0x366dd4(0x20a)][_0x2bb121],_0x3a2067=_0x5262a4?.['path'],_0x2223bb=_0x3a2067?_0x583296[_0x366dd4(0x1e2)](_0x2f323c=>_0x2f323c[_0x366dd4(0x1ed)]!==_0x3a2067):_0x583296;if(_0x5262a4&&_0x2223bb[_0x366dd4(0x1f6)]===0x1){_0x1c139a[_0x366dd4(0x1fe)](_0x2223bb[0x0]);continue;}throw CliErrors[_0x366dd4(0x1f9)](_0x366dd4(0x1f4)+_0x2bb121+_0x366dd4(0x1e3));}return _0x1c139a;}export const sqlPush={'service':a203_0xfb2fb3(0x21c),'command':'push','description':a203_0xfb2fb3(0x1fc),'risk':a203_0xfb2fb3(0x20c),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a203_0xfb2fb3(0x210),'type':a203_0xfb2fb3(0x1e5),'description':a203_0xfb2fb3(0x1ec)}],async 'dryRun'(_0x3442fd){const _0x2904e9=a203_0xfb2fb3,_0x21fc35=loadSqlProjectConfig(_0x3442fd['appCode']),_0x464ea0=await readSqlLockFile(_0x21fc35[_0x2904e9(0x20d)]),{appLock:_0x5f5238}=ensureSqlLockScope(_0x464ea0??createEmptySqlLock(),_0x3442fd['appCode'],_0x21fc35[_0x2904e9(0x213)],_0x2904e9(0x1fe)),_0x45493a=await getTargetSqlQueries(_0x21fc35,_0x5f5238,_0x3442fd[_0x2904e9(0x1f7)](_0x2904e9(0x223))||undefined),_0x560757=[];for(const _0x446f42 of _0x45493a){const _0x2220d7=await computeSqlFileHash(_0x446f42[_0x2904e9(0x1ff)]),_0x322973=_0x5f5238[_0x2904e9(0x20a)][_0x446f42[_0x2904e9(0x221)]],_0x365c56=!!_0x322973&&(_0x322973[_0x2904e9(0x1e6)]!==_0x446f42[_0x2904e9(0x1ed)]||!!_0x446f42['sqlName']&&_0x322973[_0x2904e9(0x1e8)]!==_0x446f42[_0x2904e9(0x1e8)]);if(!_0x3442fd[_0x2904e9(0x1f1)](_0x2904e9(0x210))&&_0x322973&&_0x322973[_0x2904e9(0x1ef)]===_0x2220d7&&!_0x365c56)continue;_0x560757[_0x2904e9(0x1fe)](_0x446f42[_0x2904e9(0x221)]);}return{'method':_0x2904e9(0x1f0),'url':_0x2904e9(0x1fd),'deploymentSync':buildAutomaticDeploymentSyncPreview('sql',_0x560757),'body':{'sqlCodes':_0x560757,'appCode':_0x3442fd[_0x2904e9(0x218)]},'description':'Would\x20push\x20'+_0x560757[_0x2904e9(0x1f6)]+'\x20SQL\x20file(s)'};},async 'execute'(_0x31f6e9){const _0x85bba=a203_0xfb2fb3,_0x12ac1c=loadSqlProjectConfig(_0x31f6e9[_0x85bba(0x218)]),_0x320b25=await readSqlLockFile(_0x12ac1c[_0x85bba(0x20d)]),{lockData:_0x2a7bfc,appLock:_0x3bbc2a}=ensureSqlLockScope(_0x320b25??createEmptySqlLock(),_0x31f6e9[_0x85bba(0x218)],_0x12ac1c[_0x85bba(0x213)],_0x85bba(0x1fe)),_0x34cac0=await getTargetSqlQueries(_0x12ac1c,_0x3bbc2a,_0x31f6e9[_0x85bba(0x1f7)](_0x85bba(0x223))||undefined);if(_0x34cac0[_0x85bba(0x1f6)]===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':_0x85bba(0x21f)};const _0x9b8c4e=[],_0x1f07a0=[],_0x397fc0=[];for(const _0x2eee40 of _0x34cac0){const _0x4c2256=_0x3bbc2a[_0x85bba(0x20a)][_0x2eee40['sqlCode']];if(!_0x4c2256){_0x397fc0['push']({'sqlCode':_0x2eee40[_0x85bba(0x221)],'error':_0x85bba(0x21d)});continue;}try{const _0x56e7c1=await computeSqlFileHash(_0x2eee40[_0x85bba(0x1ff)]),_0x3b1678=_0x4c2256[_0x85bba(0x1e6)]!==_0x2eee40[_0x85bba(0x1ed)]||!!_0x2eee40[_0x85bba(0x1e8)]&&_0x4c2256[_0x85bba(0x1e8)]!==_0x2eee40[_0x85bba(0x1e8)];if(!_0x31f6e9[_0x85bba(0x1f1)](_0x85bba(0x210))&&_0x4c2256['hash']===_0x56e7c1&&!_0x3b1678){_0x1f07a0[_0x85bba(0x1fe)]({'sqlCode':_0x2eee40[_0x85bba(0x221)],'reason':'unchanged'});continue;}if(_0x4c2256[_0x85bba(0x1e7)]==null){_0x397fc0['push']({'sqlCode':_0x2eee40[_0x85bba(0x221)],'error':_0x85bba(0x208)});continue;}const _0x11010d=await readFile(_0x2eee40[_0x85bba(0x1ff)],_0x85bba(0x21a)),_0x461517=stripLocalSqlMetadata(_0x11010d,_0x2eee40[_0x85bba(0x1f8)]),_0x1e85d5=_0x2eee40[_0x85bba(0x1e8)]||_0x4c2256[_0x85bba(0x1e8)],_0x45ccc2=await resolveTargetDbBinding(_0x31f6e9['appCode'],_0x2eee40,_0x4c2256),_0x3c8420=await updateSqlQuery({'id':_0x4c2256[_0x85bba(0x21b)],'appCode':_0x31f6e9['appCode'],'sqlCode':_0x2eee40[_0x85bba(0x221)],'sqlName':_0x1e85d5,'dbId':_0x45ccc2['dbId'],'version':_0x4c2256['version'],'sqlContent':_0x461517,'sqlConfig':_0x4c2256[_0x85bba(0x220)]??undefined}),_0x34e6a9=_0x3c8420['dbId']?await getDbName(_0x31f6e9[_0x85bba(0x218)],Number(_0x3c8420[_0x85bba(0x1ea)]))['catch'](()=>_0x45ccc2[_0x85bba(0x1fa)]):_0x45ccc2[_0x85bba(0x1fa)];_0x3bbc2a[_0x85bba(0x20a)][_0x2eee40[_0x85bba(0x221)]]={...buildSqlLockEntry(_0x3c8420,_0x461517,_0x56e7c1,{'dbName':_0x34e6a9}),'path':_0x2eee40[_0x85bba(0x1ed)],'mode':_0x4c2256[_0x85bba(0x1f8)]},await archivePreviousSqlFileIfNeeded(_0x12ac1c,_0x4c2256['path'],_0x2eee40[_0x85bba(0x1ed)]),_0x9b8c4e['push']({'sqlCode':_0x2eee40[_0x85bba(0x221)],'remoteId':_0x4c2256[_0x85bba(0x21b)]});}catch(_0x32b19f){_0x397fc0[_0x85bba(0x1fe)]({'sqlCode':_0x2eee40[_0x85bba(0x221)],'error':_0x32b19f instanceof Error?_0x32b19f[_0x85bba(0x1e9)]:String(_0x32b19f)});}}_0x3bbc2a[_0x85bba(0x214)]=new Date()[_0x85bba(0x201)](),await writeSqlLockFile(_0x12ac1c[_0x85bba(0x20d)],_0x2a7bfc);const _0x266877=_0x397fc0['length']===0x0,_0x59745d=await runAutomaticDeploymentSync(_0x31f6e9,_0x85bba(0x21c),_0x9b8c4e[_0x85bba(0x224)](_0x57213c=>_0x57213c[_0x85bba(0x221)]),_0x266877),_0x35c5c0=_0x266877&&automaticDeploymentSyncSucceeded(_0x59745d),_0x41ef42=',\x20deployment\x20sync\x20'+_0x59745d[_0x85bba(0x202)];return{'ok':_0x35c5c0,'data':{'pushed':_0x9b8c4e,'skipped':_0x1f07a0,'failed':_0x397fc0,'deploymentSync':_0x59745d},'message':_0x85bba(0x217)+_0x9b8c4e[_0x85bba(0x1f6)]+_0x85bba(0x209)+_0x1f07a0[_0x85bba(0x1f6)]+'\x20skipped,\x20'+_0x397fc0[_0x85bba(0x1f6)]+_0x85bba(0x1fb)+_0x41ef42};}};async function archivePreviousSqlFileIfNeeded(_0x4d3542,_0x5f9b1a,_0x1203db){const _0x21acd1=a203_0xfb2fb3;if(!_0x5f9b1a||_0x5f9b1a===_0x1203db)return;const _0x4cad3f=join(_0x4d3542[_0x21acd1(0x200)],_0x5f9b1a);if(!await fileExists(_0x4cad3f))return;const _0x947e10=await moveToTrash(_0x4d3542[_0x21acd1(0x211)],_0x4d3542[_0x21acd1(0x216)],_0x4cad3f);await cleanupEmptyDirectories(dirname(_0x4cad3f),_0x4d3542[_0x21acd1(0x200)]),void _0x947e10;}async function moveToTrash(_0x547e9b,_0x159bc2,_0x1df4ec){const _0x5f5820=a203_0xfb2fb3,_0x53e36c=new Date()[_0x5f5820(0x201)]()[_0x5f5820(0x1ee)](/[:.]/g,'-'),_0xc7e752=relative(_0x547e9b,_0x1df4ec),_0x5f39f2=join(_0x159bc2,_0x53e36c,_0xc7e752);return await mkdir(dirname(_0x5f39f2),{'recursive':!![]}),await rename(_0x1df4ec,_0x5f39f2),_0x5f39f2;}async function cleanupEmptyDirectories(_0x1b2d75,_0x16290b){const _0x274600=a203_0xfb2fb3;let _0x615912=resolve(_0x1b2d75);const _0x5a4f9a=resolve(_0x16290b);while(_0x615912[_0x274600(0x1f2)](''+_0x5a4f9a+sep)||_0x615912===_0x5a4f9a){if(_0x615912===_0x5a4f9a)return;try{const _0x1e6372=await readdir(_0x615912);if(_0x1e6372[_0x274600(0x1f6)]>0x0)return;await rmdir(_0x615912);}catch{return;}_0x615912=dirname(_0x615912);}}async function resolveTargetDbBinding(_0x162e0b,_0x578794,_0x1068db){const _0xeca1fa=a203_0xfb2fb3,_0x3279cc=_0x578794[_0xeca1fa(0x204)];if(!_0x3279cc)return{'dbId':_0x1068db[_0xeca1fa(0x1ea)],'dbName':_0x1068db[_0xeca1fa(0x1fa)]};const _0x325954=buildDbDirectoryName(_0x1068db['dbName'],_0x1068db[_0xeca1fa(0x1ea)]);if(_0x3279cc===_0x325954)return{'dbId':_0x1068db[_0xeca1fa(0x1ea)],'dbName':_0x1068db[_0xeca1fa(0x1fa)]};const _0x5bd115=parseExplicitDbDirectory(_0x3279cc);if(_0x5bd115!=null)return{'dbId':_0x5bd115,'dbName':await getDbName(_0x162e0b,_0x5bd115)['catch'](()=>undefined)};const _0xa13633=await listDatabases(_0x162e0b),_0x5d7fb1=_0xa13633[_0xeca1fa(0x1e2)](_0x880181=>buildDbDirectoryName(_0x880181['dbName'],_0x880181['dbId'])===_0x3279cc);if(_0x5d7fb1['length']===0x1)return{'dbId':_0x5d7fb1[0x0][_0xeca1fa(0x1ea)],'dbName':_0x5d7fb1[0x0][_0xeca1fa(0x1fa)]};if(_0x5d7fb1[_0xeca1fa(0x1f6)]===0x0)throw CliErrors['validation']('No\x20database\x20matches\x20local\x20directory\x20\x22'+_0x3279cc+'\x22\x20for\x20sqlCode\x20'+_0x578794[_0xeca1fa(0x221)]+'.');const _0x2830fe=_0x5d7fb1[_0xeca1fa(0x224)](_0x3b2266=>_0x3b2266['dbName']+'\x20('+_0x3b2266[_0xeca1fa(0x1ea)]+')')[_0xeca1fa(0x1f5)](',\x20');throw CliErrors[_0xeca1fa(0x1f9)](_0xeca1fa(0x1e1)+_0x3279cc+'\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20'+_0x578794['sqlCode']+':\x20'+_0x2830fe);}function parseExplicitDbDirectory(_0x47b8eb){const _0x6362d3=a203_0xfb2fb3,_0x15cd81=/^db-(\d+)$/[_0x6362d3(0x20f)](_0x47b8eb);if(!_0x15cd81)return null;const _0x4a93c3=Number(_0x15cd81[0x1]);return Number[_0x6362d3(0x222)](_0x4a93c3)&&_0x4a93c3>0x0?_0x4a93c3:null;}
@@ -1 +1 @@
1
- const a204_0x1c7b71=a204_0x514f;(function(_0x234913,_0x1ca8f6){const _0x36065a=a204_0x514f,_0x4341f1=_0x234913();while(!![]){try{const _0x264a75=parseInt(_0x36065a(0x1fe))/0x1+-parseInt(_0x36065a(0x20c))/0x2*(parseInt(_0x36065a(0x206))/0x3)+-parseInt(_0x36065a(0x1fb))/0x4*(parseInt(_0x36065a(0x20d))/0x5)+-parseInt(_0x36065a(0x1ec))/0x6+-parseInt(_0x36065a(0x200))/0x7+parseInt(_0x36065a(0x202))/0x8+-parseInt(_0x36065a(0x1e6))/0x9*(-parseInt(_0x36065a(0x1fd))/0xa);if(_0x264a75===_0x1ca8f6)break;else _0x4341f1['push'](_0x4341f1['shift']());}catch(_0x425296){_0x4341f1['push'](_0x4341f1['shift']());}}}(a204_0x30ab,0xcc0a1));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=a204_0x1c7b71(0x1eb);export function buildSqlLockEntry(_0x4e0fdd,_0xb6532f,_0x17b7bb,_0x56a801){const _0x1bf138=a204_0x1c7b71,_0x7c7aec=detectSqlMode(_0xb6532f);return{'path':buildSqlRelativePath(_0x4e0fdd[_0x1bf138(0x1e4)],_0x4e0fdd[_0x1bf138(0x1f7)],_0x56a801?.[_0x1bf138(0x1f2)],_0x7c7aec,_0x4e0fdd[_0x1bf138(0x1f4)]),'hash':_0x17b7bb,'remoteId':_0x4e0fdd['id'],'version':_0x4e0fdd['version'],'dbId':Number(_0x4e0fdd[_0x1bf138(0x1f4)]),'dbName':_0x56a801?.['dbName'],'sqlName':_0x4e0fdd[_0x1bf138(0x1f7)],'sqlConfig':_0x4e0fdd[_0x1bf138(0x1f9)]??undefined,'mode':_0x7c7aec};}export function cloneSqlLockData(_0x345b2f){const _0x79fcb9=a204_0x1c7b71;return{'apps':Object[_0x79fcb9(0x1f1)](Object[_0x79fcb9(0x203)](_0x345b2f['apps'])[_0x79fcb9(0x1f0)](([_0x2240d0,_0x4a8196])=>[_0x2240d0,{'sqlRoot':_0x4a8196[_0x79fcb9(0x208)],'lastSync':_0x4a8196[_0x79fcb9(0x209)],'sqls':{..._0x4a8196[_0x79fcb9(0x1e8)]}}]))};}export function ensureRemoteSqlContent(_0x4bf239){return _0x4bf239['sqlContent']??'';}export function buildLocalSqlFileContent(_0x4b5657,_0x559ecc,_0x3a1eb7){const _0x11a791=a204_0x1c7b71,_0x503282=_0x3a1eb7?.[_0x11a791(0x201)]??detectSqlMode(_0x559ecc),_0xf08d93=stripLocalSqlMetadata(_0x559ecc,_0x503282)['trim'](),_0x29bd30=[...buildMetadataHeaderLines({'sqlCode':_0x4b5657['sqlCode'],'sqlName':_0x4b5657['sqlName'],'dbId':_0x4b5657['dbId'],'dbName':_0x3a1eb7?.[_0x11a791(0x1f2)],'mode':_0x503282,'syncedAt':_0x3a1eb7?.[_0x11a791(0x1f6)],'description':_0x3a1eb7?.[_0x11a791(0x207)]},_0x503282),'',_0xf08d93],_0x5a78da=_0x29bd30[_0x11a791(0x1ea)]('\x0a');return _0x5a78da['endsWith']('\x0a')?_0x5a78da:_0x5a78da+'\x0a';}export function stripLocalSqlMetadata(_0x2224a9,_0x5c2085){const _0x5a5869=a204_0x1c7b71,_0x2d3074=_0x2224a9[_0x5a5869(0x1e3)](/\r\n/g,'\x0a')[_0x5a5869(0x204)]('\x0a'),_0x4d0f86=[];let _0x36ad90=0x0;if(_0x5c2085==='mybatisXml')while(_0x36ad90<_0x2d3074['length']){const _0x1beab8=_0x2d3074[_0x36ad90]??'';if(/^\s*<!--\s*@lovrabet\./[_0x5a5869(0x1f3)](_0x1beab8)){_0x36ad90++;continue;}if(_0x1beab8[_0x5a5869(0x1f8)]()===''&&_0x36ad90>0x0){_0x36ad90++;continue;}break;}else while(_0x36ad90<_0x2d3074[_0x5a5869(0x1e5)]){const _0x5df7ec=_0x2d3074[_0x36ad90]??'';if(/^\s*--\s*@lovrabet\./['test'](_0x5df7ec)){_0x36ad90++;continue;}if(_0x5df7ec['trim']()===''&&_0x36ad90>0x0){_0x36ad90++;continue;}break;}for(;_0x36ad90<_0x2d3074['length'];_0x36ad90++){_0x4d0f86[_0x5a5869(0x1e9)](_0x2d3074[_0x36ad90]);}return _0x4d0f86['join']('\x0a')['trimStart']();}export function resolveSqlMode(_0x384078,_0x1f6526){const _0x34fed7=a204_0x1c7b71;if(_0x1f6526?.[_0x34fed7(0x201)])return _0x1f6526[_0x34fed7(0x201)];return detectSqlMode(_0x384078);}export function resolveSqlFileName(_0x29ded3,_0x4be56a,_0x2df90b){const _0x57475f=a204_0x1c7b71;if(_0x2df90b?.[_0x57475f(0x1ff)])return _0x2df90b[_0x57475f(0x1ff)];if(_0x2df90b?.['sqlName']||_0x2df90b?.['dbName'])return buildSqlRelativePath(_0x29ded3,_0x2df90b?.[_0x57475f(0x1f7)],_0x2df90b?.[_0x57475f(0x1f2)],resolveSqlMode(_0x4be56a,_0x2df90b),_0x2df90b?.[_0x57475f(0x1f4)]);return buildDefaultSqlFileName(_0x29ded3,resolveSqlMode(_0x4be56a,_0x2df90b));}export function resolveSqlLocalDir(_0x3ee5d4,_0x573114){return join(_0x3ee5d4,SQL_LOCAL_REL_DIR,_0x573114);}function a204_0x514f(_0x3fdfa3,_0x492ea9){_0x3fdfa3=_0x3fdfa3-0x1e2;const _0x30abc1=a204_0x30ab();let _0x514f3a=_0x30abc1[_0x3fdfa3];return _0x514f3a;}export async function confirmForceOverwrite(_0x42b653){const _0x129ec5=a204_0x1c7b71,_0x926db5=createInterface({'input':process['stdin'],'output':process[_0x129ec5(0x20a)]}),_0xd60a9=await new Promise(_0x137f2e=>{const _0xe3a1be=_0x129ec5;_0x926db5[_0xe3a1be(0x1f5)](_0x42b653+_0xe3a1be(0x1ed),_0x137f2e);});return _0x926db5[_0x129ec5(0x205)](),['y',_0x129ec5(0x1ee)][_0x129ec5(0x20b)](_0xd60a9[_0x129ec5(0x1f8)]()[_0x129ec5(0x1fa)]());}export function findSqlLockScope(_0xadcd11,_0x5bb37d){return _0xadcd11['apps'][_0x5bb37d];}function a204_0x30ab(){const _0xef3481=['syncedAt','sqlName','trim','sqlConfig','toLowerCase','76612taHwew','mybatisXml','28778870qRLowE','636054fLCyaP','path','7965846SNNzGG','mode','3581408YJurwx','entries','split','close','15UggMzd','description','sqlRoot','lastSync','stderr','includes','470674mAksxI','195gvByZR','--\x20@lovrabet.','<!--\x20@lovrabet.','replace','sqlCode','length','9ZHGCcQ','filter','sqls','push','join','.rabetbase/sql','385452FqaPhB','\x20[y/N]\x20','yes','\x20-->','map','fromEntries','dbName','test','dbId','question'];a204_0x30ab=function(){return _0xef3481;};return a204_0x30ab();}function buildMetadataHeaderLines(_0x26d6d1,_0x329f88){const _0x19cf55=a204_0x1c7b71,_0x4b2d40=[[_0x19cf55(0x1e4),_0x26d6d1[_0x19cf55(0x1e4)]],[_0x19cf55(0x1f7),_0x26d6d1[_0x19cf55(0x1f7)]],['dbId',_0x26d6d1[_0x19cf55(0x1f4)]],[_0x19cf55(0x1f2),_0x26d6d1[_0x19cf55(0x1f2)]],['mode',_0x26d6d1[_0x19cf55(0x201)]],[_0x19cf55(0x1f6),_0x26d6d1[_0x19cf55(0x1f6)]],[_0x19cf55(0x207),_0x26d6d1[_0x19cf55(0x207)]]];if(_0x329f88===_0x19cf55(0x1fc))return _0x4b2d40[_0x19cf55(0x1e7)](([,_0x48ef98])=>_0x48ef98!==undefined&&_0x48ef98!==null&&String(_0x48ef98)['trim']()!=='')[_0x19cf55(0x1f0)](([_0x457038,_0x52edfc])=>_0x19cf55(0x1e2)+_0x457038+':\x20'+String(_0x52edfc)+_0x19cf55(0x1ef));return _0x4b2d40['filter'](([,_0x5cf5e1])=>_0x5cf5e1!==undefined&&_0x5cf5e1!==null&&String(_0x5cf5e1)['trim']()!=='')[_0x19cf55(0x1f0)](([_0x2674cc,_0x237f10])=>_0x19cf55(0x20e)+_0x2674cc+':\x20'+String(_0x237f10));}
1
+ (function(_0x175ce5,_0x12792b){const _0x2b9cd0=a204_0x50d1,_0x3f4f2d=_0x175ce5();while(!![]){try{const _0x54524b=parseInt(_0x2b9cd0(0x174))/0x1+parseInt(_0x2b9cd0(0x189))/0x2+parseInt(_0x2b9cd0(0x17c))/0x3*(-parseInt(_0x2b9cd0(0x170))/0x4)+parseInt(_0x2b9cd0(0x175))/0x5+-parseInt(_0x2b9cd0(0x173))/0x6*(-parseInt(_0x2b9cd0(0x193))/0x7)+parseInt(_0x2b9cd0(0x185))/0x8+parseInt(_0x2b9cd0(0x186))/0x9*(-parseInt(_0x2b9cd0(0x192))/0xa);if(_0x54524b===_0x12792b)break;else _0x3f4f2d['push'](_0x3f4f2d['shift']());}catch(_0x9c3c4e){_0x3f4f2d['push'](_0x3f4f2d['shift']());}}}(a204_0x40e3,0x95e9f));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='.rabetbase/sql';export function buildSqlLockEntry(_0xce9e5b,_0xfa1c88,_0x568af8,_0x1343e4){const _0x3e24ae=a204_0x50d1,_0x13af9a=detectSqlMode(_0xfa1c88);return{'path':buildSqlRelativePath(_0xce9e5b[_0x3e24ae(0x176)],_0xce9e5b[_0x3e24ae(0x190)],_0x1343e4?.[_0x3e24ae(0x16c)],_0x13af9a,_0xce9e5b['dbId']),'hash':_0x568af8,'remoteId':_0xce9e5b['id'],'version':_0xce9e5b['version'],'dbId':Number(_0xce9e5b[_0x3e24ae(0x16f)]),'dbName':_0x1343e4?.[_0x3e24ae(0x16c)],'sqlName':_0xce9e5b[_0x3e24ae(0x190)],'sqlConfig':_0xce9e5b[_0x3e24ae(0x184)]??undefined,'mode':_0x13af9a};}export function cloneSqlLockData(_0x471e4f){const _0x42bb6b=a204_0x50d1;return{'apps':Object['fromEntries'](Object[_0x42bb6b(0x179)](_0x471e4f[_0x42bb6b(0x18c)])[_0x42bb6b(0x187)](([_0x58d291,_0x5440c2])=>[_0x58d291,{'sqlRoot':_0x5440c2[_0x42bb6b(0x172)],'lastSync':_0x5440c2[_0x42bb6b(0x177)],'sqls':{..._0x5440c2[_0x42bb6b(0x17e)]}}]))};}function a204_0x50d1(_0x5ac12f,_0x3b3d78){_0x5ac12f=_0x5ac12f-0x16c;const _0x40e376=a204_0x40e3();let _0x50d1fb=_0x40e376[_0x5ac12f];return _0x50d1fb;}export function ensureRemoteSqlContent(_0x1c8183){const _0x3913fb=a204_0x50d1;return _0x1c8183[_0x3913fb(0x17a)]??'';}export function buildLocalSqlFileContent(_0x3155e4,_0x164922,_0x2691d8){const _0x3bea26=a204_0x50d1,_0x5133b0=_0x2691d8?.[_0x3bea26(0x18a)]??detectSqlMode(_0x164922),_0x56f7b0=stripLocalSqlMetadata(_0x164922,_0x5133b0)[_0x3bea26(0x191)](),_0x16e007=[...buildMetadataHeaderLines({'sqlCode':_0x3155e4['sqlCode'],'sqlName':_0x3155e4[_0x3bea26(0x190)],'dbId':_0x3155e4[_0x3bea26(0x16f)],'dbName':_0x2691d8?.[_0x3bea26(0x16c)],'mode':_0x5133b0,'syncedAt':_0x2691d8?.['syncedAt'],'description':_0x2691d8?.[_0x3bea26(0x171)]},_0x5133b0),'',_0x56f7b0],_0x212821=_0x16e007[_0x3bea26(0x194)]('\x0a');return _0x212821['endsWith']('\x0a')?_0x212821:_0x212821+'\x0a';}export function stripLocalSqlMetadata(_0x5107e7,_0x4aa8a0){const _0x2e55a7=a204_0x50d1,_0x690fa9=_0x5107e7[_0x2e55a7(0x18d)](/\r\n/g,'\x0a')['split']('\x0a'),_0xbeac27=[];let _0x8f779a=0x0;if(_0x4aa8a0===_0x2e55a7(0x195))while(_0x8f779a<_0x690fa9['length']){const _0x85119c=_0x690fa9[_0x8f779a]??'';if(/^\s*<!--\s*@lovrabet\./[_0x2e55a7(0x182)](_0x85119c)){_0x8f779a++;continue;}if(_0x85119c[_0x2e55a7(0x191)]()===''&&_0x8f779a>0x0){_0x8f779a++;continue;}break;}else while(_0x8f779a<_0x690fa9[_0x2e55a7(0x18b)]){const _0x4fde52=_0x690fa9[_0x8f779a]??'';if(/^\s*--\s*@lovrabet\./[_0x2e55a7(0x182)](_0x4fde52)){_0x8f779a++;continue;}if(_0x4fde52[_0x2e55a7(0x191)]()===''&&_0x8f779a>0x0){_0x8f779a++;continue;}break;}for(;_0x8f779a<_0x690fa9[_0x2e55a7(0x18b)];_0x8f779a++){_0xbeac27['push'](_0x690fa9[_0x8f779a]);}return _0xbeac27[_0x2e55a7(0x194)]('\x0a')['trimStart']();}export function resolveSqlMode(_0x86b1ba,_0x7b4354){const _0x591631=a204_0x50d1;if(_0x7b4354?.['mode'])return _0x7b4354[_0x591631(0x18a)];return detectSqlMode(_0x86b1ba);}export function resolveSqlFileName(_0x405ff9,_0x9da412,_0x38d1e8){const _0x210cc1=a204_0x50d1;if(_0x38d1e8?.['path'])return _0x38d1e8[_0x210cc1(0x18f)];if(_0x38d1e8?.[_0x210cc1(0x190)]||_0x38d1e8?.[_0x210cc1(0x16c)])return buildSqlRelativePath(_0x405ff9,_0x38d1e8?.[_0x210cc1(0x190)],_0x38d1e8?.[_0x210cc1(0x16c)],resolveSqlMode(_0x9da412,_0x38d1e8),_0x38d1e8?.[_0x210cc1(0x16f)]);return buildDefaultSqlFileName(_0x405ff9,resolveSqlMode(_0x9da412,_0x38d1e8));}function a204_0x40e3(){const _0x210d15=['lastSync','\x20-->','entries','sqlContent','includes','3MRKNOI','stderr','sqls','syncedAt','close','\x20[y/N]\x20','test','question','sqlConfig','800920gzJpRR','21851658wIMcKo','map','--\x20@lovrabet.','1185608fhTwRz','mode','length','apps','replace','<!--\x20@lovrabet.','path','sqlName','trim','10MBcNBD','826sAnSAl','join','mybatisXml','dbName','toLowerCase','filter','dbId','3780108PfPuJW','description','sqlRoot','61284RIdgVs','913370AJXqwN','5877475rgejHX','sqlCode'];a204_0x40e3=function(){return _0x210d15;};return a204_0x40e3();}export function resolveSqlLocalDir(_0x50be30,_0x5591ae){return join(_0x50be30,SQL_LOCAL_REL_DIR,_0x5591ae);}export async function confirmForceOverwrite(_0x1a5878){const _0x315cfd=a204_0x50d1,_0x1b7812=createInterface({'input':process['stdin'],'output':process[_0x315cfd(0x17d)]}),_0xae87a0=await new Promise(_0x7c6af0=>{const _0x56de13=_0x315cfd;_0x1b7812[_0x56de13(0x183)](_0x1a5878+_0x56de13(0x181),_0x7c6af0);});return _0x1b7812[_0x315cfd(0x180)](),['y','yes'][_0x315cfd(0x17b)](_0xae87a0[_0x315cfd(0x191)]()[_0x315cfd(0x16d)]());}export function findSqlLockScope(_0x4634dd,_0x576923){return _0x4634dd['apps'][_0x576923];}function buildMetadataHeaderLines(_0xe3f9c5,_0x10ccd7){const _0x2fb8f9=a204_0x50d1,_0x56cf6a=[['sqlCode',_0xe3f9c5['sqlCode']],[_0x2fb8f9(0x190),_0xe3f9c5[_0x2fb8f9(0x190)]],[_0x2fb8f9(0x16f),_0xe3f9c5[_0x2fb8f9(0x16f)]],[_0x2fb8f9(0x16c),_0xe3f9c5['dbName']],[_0x2fb8f9(0x18a),_0xe3f9c5[_0x2fb8f9(0x18a)]],[_0x2fb8f9(0x17f),_0xe3f9c5[_0x2fb8f9(0x17f)]],[_0x2fb8f9(0x171),_0xe3f9c5[_0x2fb8f9(0x171)]]];if(_0x10ccd7===_0x2fb8f9(0x195))return _0x56cf6a[_0x2fb8f9(0x16e)](([,_0x5e73ba])=>_0x5e73ba!==undefined&&_0x5e73ba!==null&&String(_0x5e73ba)[_0x2fb8f9(0x191)]()!=='')[_0x2fb8f9(0x187)](([_0x50dab0,_0xe0dbdb])=>_0x2fb8f9(0x18e)+_0x50dab0+':\x20'+String(_0xe0dbdb)+_0x2fb8f9(0x178));return _0x56cf6a[_0x2fb8f9(0x16e)](([,_0x3f7306])=>_0x3f7306!==undefined&&_0x3f7306!==null&&String(_0x3f7306)[_0x2fb8f9(0x191)]()!=='')['map'](([_0xef0660,_0x5b9876])=>_0x2fb8f9(0x188)+_0xef0660+':\x20'+String(_0x5b9876));}
@@ -1 +1 @@
1
- const a205_0x202c22=a205_0x4d3b;(function(_0x19e357,_0x5e4dec){const _0x300656=a205_0x4d3b,_0x329ec9=_0x19e357();while(!![]){try{const _0x43262d=-parseInt(_0x300656(0x144))/0x1*(-parseInt(_0x300656(0x12a))/0x2)+parseInt(_0x300656(0x126))/0x3*(parseInt(_0x300656(0x142))/0x4)+parseInt(_0x300656(0x123))/0x5+-parseInt(_0x300656(0x135))/0x6*(parseInt(_0x300656(0x146))/0x7)+-parseInt(_0x300656(0x12e))/0x8*(parseInt(_0x300656(0x133))/0x9)+parseInt(_0x300656(0x12c))/0xa+parseInt(_0x300656(0x13c))/0xb*(-parseInt(_0x300656(0x122))/0xc);if(_0x43262d===_0x5e4dec)break;else _0x329ec9['push'](_0x329ec9['shift']());}catch(_0x267388){_0x329ec9['push'](_0x329ec9['shift']());}}}(a205_0x29dc,0x8f017));function a205_0x29dc(){const _0x34692d=['1005653FKszUp','relativePath','filePath','\x20modified,\x20','sqlName','\x20remote-only','1677784QbtisX','lockFilePath','25bSLXbp','\x20added,\x20','20139RPmGmj','read','boolean','Check\x20local\x20SQL\x20sync\x20status\x20against\x20lock\x20file','length','132UeTCCa','5203610oCIkrx','lockKey','tableData','6sCqrRE','sqls','remote','sql','62282DMcXEZ','hash','6362340ZfNmZd','\x20missing,\x20','21872CNGhal','sqlRoot','paging','keys','appCode','3816KZVuou','All\x20SQL\x20queries\x20are\x20in\x20sync.','1134zJtXya','push','path','map','Also\x20check\x20for\x20remote-only\x20SQL\x20queries\x20not\x20present\x20locally','has','bool'];a205_0x29dc=function(){return _0x34692d;};return a205_0x29dc();}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 a205_0x4d3b(_0x520c3f,_0x42e65f){_0x520c3f=_0x520c3f-0x11f;const _0x29dc8f=a205_0x29dc();let _0x4d3b3f=_0x29dc8f[_0x520c3f];return _0x4d3b3f;}async function fetchAllSqlCodes(_0x598e05){const _0x28e1c1=a205_0x4d3b,_0x43a01e=[];let _0x2b9449=0x1;while(!![]){const _0x22f884=await listSqlQueries(_0x598e05,{'currentPage':_0x2b9449,'pageSize':PAGE_SIZE}),_0x1a80ae=_0x22f884[_0x28e1c1(0x125)]??[];_0x43a01e[_0x28e1c1(0x136)](..._0x1a80ae[_0x28e1c1(0x138)](_0x330c37=>_0x330c37['sqlCode']));if(_0x1a80ae[_0x28e1c1(0x121)]===0x0)break;const _0x329fbd=_0x22f884[_0x28e1c1(0x130)]?.['totalCount'];if(_0x329fbd!=null?_0x43a01e[_0x28e1c1(0x121)]>=_0x329fbd:_0x1a80ae[_0x28e1c1(0x121)]<PAGE_SIZE)break;_0x2b9449++;}return _0x43a01e;}export const sqlStatus={'service':a205_0x202c22(0x129),'command':'status','description':a205_0x202c22(0x120),'risk':a205_0x202c22(0x147),'flags':[{'name':a205_0x202c22(0x128),'type':a205_0x202c22(0x11f),'description':a205_0x202c22(0x139)}],async 'execute'(_0x4e0821){const _0x174aed=a205_0x202c22,_0x1ddaec=loadSqlProjectConfig(_0x4e0821[_0x174aed(0x132)]),_0x4544e4=await readSqlLockFile(_0x1ddaec[_0x174aed(0x143)]),{appLock:_0x4d68d5}=ensureSqlLockScope(_0x4544e4??createEmptySqlLock(),_0x1ddaec['appCode'],_0x1ddaec[_0x174aed(0x12f)],'status'),_0x1b5446=await scanLocalSqlQueries(_0x1ddaec),_0x310414=[],_0x521a85=[],_0x31f161=[],_0x5028ca=[],_0x5d5a50=new Set(_0x1b5446[_0x174aed(0x138)](_0x1a6bb3=>_0x1a6bb3[_0x174aed(0x124)]));for(const _0x1567f2 of _0x1b5446){const _0x226aee=await computeSqlFileHash(_0x1567f2[_0x174aed(0x13e)]),_0x356891=_0x4d68d5[_0x174aed(0x127)][_0x1567f2[_0x174aed(0x124)]],_0x43c403=!!_0x356891&&_0x356891[_0x174aed(0x137)]!==_0x1567f2[_0x174aed(0x13d)],_0x3281f8=!!_0x356891&&!!_0x1567f2[_0x174aed(0x140)]&&_0x356891[_0x174aed(0x140)]!==_0x1567f2[_0x174aed(0x140)];if(!_0x356891)_0x310414[_0x174aed(0x136)](_0x1567f2[_0x174aed(0x124)]);else _0x356891[_0x174aed(0x12b)]!==_0x226aee||_0x43c403||_0x3281f8?_0x521a85['push'](_0x1567f2[_0x174aed(0x124)]):_0x31f161[_0x174aed(0x136)](_0x1567f2['lockKey']);}for(const _0x63ab53 of Object[_0x174aed(0x131)](_0x4d68d5[_0x174aed(0x127)])){!_0x5d5a50['has'](_0x63ab53)&&_0x5028ca[_0x174aed(0x136)](_0x63ab53);}const _0x296c79=[];if(_0x4e0821[_0x174aed(0x13b)](_0x174aed(0x128))){const _0xa5c7f=await fetchAllSqlCodes(_0x4e0821[_0x174aed(0x132)]);for(const _0x3ac854 of _0xa5c7f){!_0x5d5a50[_0x174aed(0x13a)](_0x3ac854)&&!_0x4d68d5[_0x174aed(0x127)][_0x3ac854]&&_0x296c79[_0x174aed(0x136)](_0x3ac854);}}const _0x13b791=_0x310414[_0x174aed(0x121)]===0x0&&_0x521a85[_0x174aed(0x121)]===0x0&&_0x5028ca[_0x174aed(0x121)]===0x0&&_0x296c79[_0x174aed(0x121)]===0x0;return{'ok':!![],'data':{'added':_0x310414,'modified':_0x521a85,'missing':_0x5028ca,'unchanged':_0x31f161,'remoteOnly':_0x296c79},'message':_0x13b791?_0x174aed(0x134):_0x310414[_0x174aed(0x121)]+_0x174aed(0x145)+_0x521a85[_0x174aed(0x121)]+_0x174aed(0x13f)+_0x5028ca['length']+_0x174aed(0x12d)+_0x31f161[_0x174aed(0x121)]+'\x20unchanged'+(_0x296c79[_0x174aed(0x121)]>0x0?',\x20'+_0x296c79[_0x174aed(0x121)]+_0x174aed(0x141):'')};}};
1
+ const a205_0x15f317=a205_0x1220;(function(_0x17dfb7,_0x4540ad){const _0x4c7552=a205_0x1220,_0x4054cd=_0x17dfb7();while(!![]){try{const _0x239813=parseInt(_0x4c7552(0x13a))/0x1+-parseInt(_0x4c7552(0x130))/0x2+parseInt(_0x4c7552(0x11f))/0x3+-parseInt(_0x4c7552(0x120))/0x4+-parseInt(_0x4c7552(0x11b))/0x5*(parseInt(_0x4c7552(0x126))/0x6)+parseInt(_0x4c7552(0x13b))/0x7+-parseInt(_0x4c7552(0x137))/0x8*(parseInt(_0x4c7552(0x132))/0x9);if(_0x239813===_0x4540ad)break;else _0x4054cd['push'](_0x4054cd['shift']());}catch(_0x1be394){_0x4054cd['push'](_0x4054cd['shift']());}}}(a205_0x26c1,0x26695));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 a205_0x26c1(){const _0x284620=['bool','6FsqKbc','sqls','map','totalCount','boolean','paging','keys','sql','Also\x20check\x20for\x20remote-only\x20SQL\x20queries\x20not\x20present\x20locally','push','262730JJONAa','lockKey','345834EZphOL','has','\x20missing,\x20','length','\x20unchanged','24kxsQqv','remote','filePath','224224UHTzgV','441217sySTKH','sqlName','path','103415vlKVZQ','status','\x20remote-only','All\x20SQL\x20queries\x20are\x20in\x20sync.','439395MAeMHV','36244tYaOzx','sqlCode','hash','\x20modified,\x20','appCode'];a205_0x26c1=function(){return _0x284620;};return a205_0x26c1();}import{computeSqlFileHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile}from'../../core/sql-sync/lock.js';const PAGE_SIZE=0x64;async function fetchAllSqlCodes(_0x1b9afe){const _0x28f7c0=a205_0x1220,_0x505ee8=[];let _0x5e45a5=0x1;while(!![]){const _0x17105a=await listSqlQueries(_0x1b9afe,{'currentPage':_0x5e45a5,'pageSize':PAGE_SIZE}),_0x91ce6b=_0x17105a['tableData']??[];_0x505ee8[_0x28f7c0(0x12f)](..._0x91ce6b['map'](_0x3697c4=>_0x3697c4[_0x28f7c0(0x121)]));if(_0x91ce6b[_0x28f7c0(0x135)]===0x0)break;const _0x16e0f6=_0x17105a[_0x28f7c0(0x12b)]?.[_0x28f7c0(0x129)];if(_0x16e0f6!=null?_0x505ee8[_0x28f7c0(0x135)]>=_0x16e0f6:_0x91ce6b['length']<PAGE_SIZE)break;_0x5e45a5++;}return _0x505ee8;}function a205_0x1220(_0x16c9f8,_0x1ce8ec){_0x16c9f8=_0x16c9f8-0x11b;const _0x26c107=a205_0x26c1();let _0x122088=_0x26c107[_0x16c9f8];return _0x122088;}export const sqlStatus={'service':a205_0x15f317(0x12d),'command':a205_0x15f317(0x11c),'description':'Check\x20local\x20SQL\x20sync\x20status\x20against\x20lock\x20file','risk':'read','flags':[{'name':a205_0x15f317(0x138),'type':a205_0x15f317(0x12a),'description':a205_0x15f317(0x12e)}],async 'execute'(_0x5b621d){const _0x1b04c2=a205_0x15f317,_0x5137d0=loadSqlProjectConfig(_0x5b621d[_0x1b04c2(0x124)]),_0x5f2c35=await readSqlLockFile(_0x5137d0['lockFilePath']),{appLock:_0x330a0b}=ensureSqlLockScope(_0x5f2c35??createEmptySqlLock(),_0x5137d0[_0x1b04c2(0x124)],_0x5137d0['sqlRoot'],_0x1b04c2(0x11c)),_0x3fccd2=await scanLocalSqlQueries(_0x5137d0),_0xe67c49=[],_0x3657c0=[],_0x162acd=[],_0x4e5c6c=[],_0x591a1f=new Set(_0x3fccd2[_0x1b04c2(0x128)](_0x386107=>_0x386107[_0x1b04c2(0x131)]));for(const _0x379cc7 of _0x3fccd2){const _0x85e4d8=await computeSqlFileHash(_0x379cc7[_0x1b04c2(0x139)]),_0x4e3a02=_0x330a0b[_0x1b04c2(0x127)][_0x379cc7[_0x1b04c2(0x131)]],_0x209fa7=!!_0x4e3a02&&_0x4e3a02[_0x1b04c2(0x13d)]!==_0x379cc7['relativePath'],_0x1bb993=!!_0x4e3a02&&!!_0x379cc7['sqlName']&&_0x4e3a02[_0x1b04c2(0x13c)]!==_0x379cc7['sqlName'];if(!_0x4e3a02)_0xe67c49[_0x1b04c2(0x12f)](_0x379cc7[_0x1b04c2(0x131)]);else _0x4e3a02[_0x1b04c2(0x122)]!==_0x85e4d8||_0x209fa7||_0x1bb993?_0x3657c0[_0x1b04c2(0x12f)](_0x379cc7['lockKey']):_0x162acd[_0x1b04c2(0x12f)](_0x379cc7[_0x1b04c2(0x131)]);}for(const _0x983322 of Object[_0x1b04c2(0x12c)](_0x330a0b['sqls'])){!_0x591a1f['has'](_0x983322)&&_0x4e5c6c[_0x1b04c2(0x12f)](_0x983322);}const _0x36a840=[];if(_0x5b621d[_0x1b04c2(0x125)](_0x1b04c2(0x138))){const _0x5b3e25=await fetchAllSqlCodes(_0x5b621d[_0x1b04c2(0x124)]);for(const _0x3ab01c of _0x5b3e25){!_0x591a1f[_0x1b04c2(0x133)](_0x3ab01c)&&!_0x330a0b[_0x1b04c2(0x127)][_0x3ab01c]&&_0x36a840[_0x1b04c2(0x12f)](_0x3ab01c);}}const _0x1a001f=_0xe67c49[_0x1b04c2(0x135)]===0x0&&_0x3657c0[_0x1b04c2(0x135)]===0x0&&_0x4e5c6c[_0x1b04c2(0x135)]===0x0&&_0x36a840['length']===0x0;return{'ok':!![],'data':{'added':_0xe67c49,'modified':_0x3657c0,'missing':_0x4e5c6c,'unchanged':_0x162acd,'remoteOnly':_0x36a840},'message':_0x1a001f?_0x1b04c2(0x11e):_0xe67c49['length']+'\x20added,\x20'+_0x3657c0[_0x1b04c2(0x135)]+_0x1b04c2(0x123)+_0x4e5c6c[_0x1b04c2(0x135)]+_0x1b04c2(0x134)+_0x162acd[_0x1b04c2(0x135)]+_0x1b04c2(0x136)+(_0x36a840[_0x1b04c2(0x135)]>0x0?',\x20'+_0x36a840[_0x1b04c2(0x135)]+_0x1b04c2(0x11d):'')};}};
@@ -1 +1 @@
1
- const a206_0x526e83=a206_0x4075;(function(_0x191faa,_0x40fc42){const _0x2956aa=a206_0x4075,_0x2c26f9=_0x191faa();while(!![]){try{const _0x542dc6=parseInt(_0x2956aa(0x117))/0x1*(parseInt(_0x2956aa(0x143))/0x2)+-parseInt(_0x2956aa(0x11a))/0x3*(parseInt(_0x2956aa(0x155))/0x4)+parseInt(_0x2956aa(0x14e))/0x5*(parseInt(_0x2956aa(0x13a))/0x6)+-parseInt(_0x2956aa(0x139))/0x7*(parseInt(_0x2956aa(0x111))/0x8)+-parseInt(_0x2956aa(0x126))/0x9+-parseInt(_0x2956aa(0x10c))/0xa+parseInt(_0x2956aa(0x157))/0xb*(parseInt(_0x2956aa(0x13c))/0xc);if(_0x542dc6===_0x40fc42)break;else _0x2c26f9['push'](_0x2c26f9['shift']());}catch(_0x4e536d){_0x2c26f9['push'](_0x2c26f9['shift']());}}}(a206_0x3366,0x1f940));import{readFileSync,existsSync}from'node:fs';import{resolve}from'node:path';import{validateSql}from'../../core/sql-validator.js';function a206_0x4075(_0x2cfb6f,_0xbcbaf8){_0x2cfb6f=_0x2cfb6f-0x10c;const _0x33669b=a206_0x3366();let _0x40759e=_0x33669b[_0x2cfb6f];return _0x40759e;}import{auditSqlJoinIndexes}from'../../core/sql-index-auditor.js';import{getDatasetDetail,listDatasets}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{assertDatasetIsDbTableBacked,filterDbTableBackedDatasets}from'../../commands/dataset/capability.js';function a206_0x3366(){const _0x2c5997=['type','schemaWarnings','schema:','tables','columnNames','length','message','bool','2118402NIVazk','Comma-separated\x20dataset\x20codes\x20to\x20cross-check\x20table/column\x20names\x20against','fields','\x22\x20not\x20found\x20or\x20not\x20accessible','check-indexes','reason','\x22\x20not\x20found\x20in\x20any\x20dataset','SQL\x20schema\x20validation','utf-8','validation','sqlType','index_name','push','cwd','size','filter','file','boolean','from','1204238fSuluN','19242FdGgjD','Dataset\x20\x22','2747352AunQxA','validate','Table\x20\x22','appCode','Validate\x20SQL\x20content\x20without\x20saving\x20(type\x20detection,\x20parameter\x20extraction,\x20optional\x20schema\x20check)','get','string','14MaJufF','indexes','dbtableConfig','Audit\x20top-level\x20JOIN\x20equality\x20predicates\x20against\x20dataset\x20index\x20metadata','sql','str','primary','parameters','map','flatMap','tableName','270mjDYwh','isArray','pkField','schemas','Provide\x20--file\x20or\x20--sql','index_type','read','24eLqDPy','trim','22VxnVeW','Path\x20to\x20the\x20SQL\x20file\x20to\x20validate','566180xshYcF','find','toLowerCase','File\x20not\x20found:\x20','dataset','8NpIbDQ','isSelectOnly','indexName','name','flagMissing','index_columns','10994Utcbja','columns','valid','57327BqVLSB','--check-indexes\x20requires\x20--schemas.','joinAudit','isDangerous'];a206_0x3366=function(){return _0x2c5997;};return a206_0x3366();}export const sqlValidate={'service':a206_0x526e83(0x147),'command':a206_0x526e83(0x13d),'description':a206_0x526e83(0x140),'risk':a206_0x526e83(0x154),'flags':[{'name':'file','type':a206_0x526e83(0x142),'description':a206_0x526e83(0x158)},{'name':a206_0x526e83(0x147),'type':a206_0x526e83(0x142),'description':'Inline\x20SQL\x20content\x20to\x20validate\x20(alternative\x20to\x20--file)'},{'name':a206_0x526e83(0x151),'type':a206_0x526e83(0x142),'description':a206_0x526e83(0x127)},{'name':a206_0x526e83(0x12a),'type':a206_0x526e83(0x137),'description':a206_0x526e83(0x146)}],async 'execute'(_0x1da037){const _0x5c778f=a206_0x526e83,_0x53c9c3=_0x1da037[_0x5c778f(0x148)]('file'),_0xf32f9a=_0x1da037[_0x5c778f(0x148)](_0x5c778f(0x147)),_0x437a8f=_0x1da037['str'](_0x5c778f(0x151)),_0x1ab4c4=_0x1da037[_0x5c778f(0x125)](_0x5c778f(0x12a));if(!_0x53c9c3&&!_0xf32f9a)throw CliErrors[_0x5c778f(0x115)](_0x5c778f(0x136),_0x5c778f(0x152));if(_0x1ab4c4&&!_0x437a8f)throw CliErrors[_0x5c778f(0x12f)](_0x5c778f(0x11b));let _0xa8f4fe;if(_0x53c9c3){const _0xad88aa=resolve(process[_0x5c778f(0x133)](),_0x53c9c3);if(!existsSync(_0xad88aa))throw CliErrors[_0x5c778f(0x12f)](_0x5c778f(0x10f)+_0xad88aa);_0xa8f4fe=readFileSync(_0xad88aa,_0x5c778f(0x12e));}else _0xa8f4fe=_0xf32f9a;const _0x9d308c=validateSql(_0xa8f4fe),_0x37066c={'valid':_0x9d308c['valid'],'sqlType':_0x9d308c[_0x5c778f(0x130)][_0x5c778f(0x11e)],'isSelectOnly':_0x9d308c['sqlType'][_0x5c778f(0x112)],'isDangerous':_0x9d308c[_0x5c778f(0x130)][_0x5c778f(0x11d)],'tables':_0x9d308c[_0x5c778f(0x121)],'parameters':_0x9d308c[_0x5c778f(0x14a)],'message':_0x9d308c[_0x5c778f(0x124)]};_0x9d308c[_0x5c778f(0x130)][_0x5c778f(0x12b)]&&(_0x37066c[_0x5c778f(0x12b)]=_0x9d308c['sqlType']['reason']);if(_0x437a8f&&_0x9d308c[_0x5c778f(0x119)]){const _0x2fc201=_0x437a8f['split'](',')[_0x5c778f(0x14b)](_0x55d7cd=>_0x55d7cd[_0x5c778f(0x156)]())[_0x5c778f(0x135)](Boolean),_0x33e38a=[],_0x1d321f=[],_0x5597f4=filterDbTableBackedDatasets(await listDatasets(_0x1da037[_0x5c778f(0x13f)])),_0x40421c=new Map(_0x5597f4[_0x5c778f(0x14b)](_0x2cd72c=>[_0x2cd72c[_0x5c778f(0x145)]?.['tableName']?.[_0x5c778f(0x10e)](),_0x2cd72c]));for(const _0x5a8947 of _0x9d308c['tables']){const _0x2fb43a=_0x40421c[_0x5c778f(0x141)](_0x5a8947[_0x5c778f(0x10e)]());!_0x2fb43a&&_0x33e38a[_0x5c778f(0x132)](_0x5c778f(0x13e)+_0x5a8947+_0x5c778f(0x12c));}for(const _0x5a9a11 of _0x2fc201){let _0x2e09d1;try{_0x2e09d1=await getDatasetDetail(_0x5a9a11);}catch{_0x33e38a[_0x5c778f(0x132)](_0x5c778f(0x13b)+_0x5a9a11+_0x5c778f(0x129));continue;}assertDatasetIsDbTableBacked(_0x2e09d1,_0x5c778f(0x12d));const _0x1152a3=Array['isArray'](_0x2e09d1[_0x5c778f(0x128)])?_0x2e09d1[_0x5c778f(0x128)]:[],_0x22d82c=new Set(_0x1152a3[_0x5c778f(0x14b)](_0x3e3adc=>_0x3e3adc[_0x5c778f(0x114)]?.[_0x5c778f(0x10e)]())),_0x4eab31=_0x2e09d1[_0x5c778f(0x145)]?.['tableName']||_0x2e09d1[_0x5c778f(0x14d)]||_0x5a9a11;_0x37066c[_0x5c778f(0x120)+_0x4eab31]={'code':_0x5a9a11,'tableName':_0x4eab31,'fieldCount':_0x22d82c[_0x5c778f(0x134)],'fields':Array[_0x5c778f(0x138)](_0x22d82c)};if(_0x1ab4c4){const _0x549066=normalizeDatasetIndexes(_0x2e09d1);_0x1d321f[_0x5c778f(0x132)]({'tableName':_0x4eab31,..._0x549066});}}_0x33e38a[_0x5c778f(0x123)]>0x0&&(_0x37066c[_0x5c778f(0x11f)]=_0x33e38a),_0x1ab4c4&&(_0x37066c[_0x5c778f(0x11c)]=auditSqlJoinIndexes(_0xa8f4fe,_0x1d321f));}return{'ok':_0x9d308c[_0x5c778f(0x119)],'data':_0x37066c,'message':_0x9d308c[_0x5c778f(0x124)]};}};function normalizeDatasetIndexes(_0x5ee75d){const _0x15fba6=a206_0x526e83,_0x4893a0=Array[_0x15fba6(0x14f)](_0x5ee75d?.[_0x15fba6(0x110)]?.[_0x15fba6(0x144)])?_0x5ee75d[_0x15fba6(0x110)]['indexes']:Array['isArray'](_0x5ee75d?.[_0x15fba6(0x144)])?_0x5ee75d[_0x15fba6(0x144)]:[],_0x203434=_0x4893a0[_0x15fba6(0x14c)](_0x54b10f=>{const _0x2534cf=_0x15fba6,_0xad9813=Array[_0x2534cf(0x14f)](_0x54b10f?.[_0x2534cf(0x116)])?_0x54b10f['index_columns']:Array[_0x2534cf(0x14f)](_0x54b10f?.['columnNames'])?_0x54b10f[_0x2534cf(0x122)]:Array['isArray'](_0x54b10f?.[_0x2534cf(0x118)])?_0x54b10f[_0x2534cf(0x118)]:[],_0x263b08=_0xad9813[_0x2534cf(0x135)](_0x5f006e=>typeof _0x5f006e==='string')[_0x2534cf(0x14b)](_0x47c0e3=>_0x47c0e3['trim']())['filter'](Boolean);if(_0x263b08['length']===0x0)return[];const _0x3a8f7a=[_0x54b10f?.[_0x2534cf(0x113)],_0x54b10f?.[_0x2534cf(0x131)],_0x54b10f?.[_0x2534cf(0x114)]][_0x2534cf(0x10d)](_0x146149=>typeof _0x146149===_0x2534cf(0x142)&&_0x146149[_0x2534cf(0x156)]()),_0x1ef6fb=[_0x54b10f?.[_0x2534cf(0x153)],_0x54b10f?.[_0x2534cf(0x11e)]][_0x2534cf(0x10d)](_0x11f96b=>typeof _0x11f96b==='string'&&_0x11f96b[_0x2534cf(0x156)]());return[{..._0x3a8f7a?{'name':_0x3a8f7a['trim']()}:{},..._0x1ef6fb?{'type':_0x1ef6fb[_0x2534cf(0x156)]()}:{},'columns':_0x263b08}];}),_0x45860c=[..._0x203434],_0x463b75=typeof _0x5ee75d?.[_0x15fba6(0x145)]?.[_0x15fba6(0x150)]===_0x15fba6(0x142)?_0x5ee75d[_0x15fba6(0x145)][_0x15fba6(0x150)]['split'](',')['map'](_0x476196=>_0x476196['trim']())['filter'](Boolean):[];return _0x463b75[_0x15fba6(0x123)]>0x0&&_0x45860c['unshift']({'type':_0x15fba6(0x149),'columns':_0x463b75}),{'indexes':_0x45860c,'metadataAvailable':_0x203434[_0x15fba6(0x123)]>0x0};}
1
+ function a206_0x2cbb(){const _0x10c9d7=['message','get','index_columns','flatMap','columnNames','--check-indexes\x20requires\x20--schemas.','schema:','2649112JzcqBa','Inline\x20SQL\x20content\x20to\x20validate\x20(alternative\x20to\x20--file)','Dataset\x20\x22','valid','Table\x20\x22','Validate\x20SQL\x20content\x20without\x20saving\x20(type\x20detection,\x20parameter\x20extraction,\x20optional\x20schema\x20check)','318671RiDbAN','find','map','joinAudit','isDangerous','push','toLowerCase','validation','columns','str','schemas','cwd','8742234IzxUBg','6yfHTLl','dataset','sql','Provide\x20--file\x20or\x20--sql','check-indexes','\x22\x20not\x20found\x20in\x20any\x20dataset','SQL\x20schema\x20validation','file','fields','Comma-separated\x20dataset\x20codes\x20to\x20cross-check\x20table/column\x20names\x20against','pkField','indexes','boolean','utf-8','4061595IJspSx','2449648HnVPAe','parameters','read','index_type','size','File\x20not\x20found:\x20','flagMissing','trim','Path\x20to\x20the\x20SQL\x20file\x20to\x20validate','sqlType','dbtableConfig','filter','name','type','reason','9082626CRlNEL','schemaWarnings','isSelectOnly','split','indexName','primary','from','18YorGek','tables','tableName','813355yKHoXj','string','isArray','length','appCode','\x22\x20not\x20found\x20or\x20not\x20accessible'];a206_0x2cbb=function(){return _0x10c9d7;};return a206_0x2cbb();}const a206_0x3ba014=a206_0x17bc;(function(_0x13b9c9,_0x11a5cd){const _0x809f54=a206_0x17bc,_0x558a77=_0x13b9c9();while(!![]){try{const _0x329e30=parseInt(_0x809f54(0x1c2))/0x1*(parseInt(_0x809f54(0x1cf))/0x2)+-parseInt(_0x809f54(0x195))/0x3+parseInt(_0x809f54(0x196))/0x4+-parseInt(_0x809f54(0x1af))/0x5+parseInt(_0x809f54(0x1ce))/0x6+-parseInt(_0x809f54(0x1a5))/0x7+-parseInt(_0x809f54(0x1bc))/0x8*(-parseInt(_0x809f54(0x1ac))/0x9);if(_0x329e30===_0x11a5cd)break;else _0x558a77['push'](_0x558a77['shift']());}catch(_0xd13178){_0x558a77['push'](_0x558a77['shift']());}}}(a206_0x2cbb,0xd54d8));import{readFileSync,existsSync}from'node:fs';import{resolve}from'node:path';import{validateSql}from'../../core/sql-validator.js';import{auditSqlJoinIndexes}from'../../core/sql-index-auditor.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':a206_0x3ba014(0x1d1),'command':'validate','description':a206_0x3ba014(0x1c1),'risk':a206_0x3ba014(0x198),'flags':[{'name':'file','type':'string','description':a206_0x3ba014(0x19e)},{'name':a206_0x3ba014(0x1d1),'type':a206_0x3ba014(0x1b0),'description':a206_0x3ba014(0x1bd)},{'name':a206_0x3ba014(0x1cc),'type':a206_0x3ba014(0x1b0),'description':a206_0x3ba014(0x190)},{'name':a206_0x3ba014(0x18b),'type':a206_0x3ba014(0x193),'description':'Audit\x20top-level\x20JOIN\x20equality\x20predicates\x20against\x20dataset\x20index\x20metadata'}],async 'execute'(_0x18ee66){const _0x129da8=a206_0x3ba014,_0x73047a=_0x18ee66['str'](_0x129da8(0x18e)),_0x172da8=_0x18ee66[_0x129da8(0x1cb)](_0x129da8(0x1d1)),_0x2a55d1=_0x18ee66[_0x129da8(0x1cb)](_0x129da8(0x1cc)),_0x4c3524=_0x18ee66['bool'](_0x129da8(0x18b));if(!_0x73047a&&!_0x172da8)throw CliErrors[_0x129da8(0x19c)](_0x129da8(0x18e),_0x129da8(0x1d2));if(_0x4c3524&&!_0x2a55d1)throw CliErrors[_0x129da8(0x1c9)](_0x129da8(0x1ba));let _0x520ba5;if(_0x73047a){const _0x1f9c78=resolve(process[_0x129da8(0x1cd)](),_0x73047a);if(!existsSync(_0x1f9c78))throw CliErrors[_0x129da8(0x1c9)](_0x129da8(0x19b)+_0x1f9c78);_0x520ba5=readFileSync(_0x1f9c78,_0x129da8(0x194));}else _0x520ba5=_0x172da8;const _0x226b45=validateSql(_0x520ba5),_0x372d96={'valid':_0x226b45['valid'],'sqlType':_0x226b45[_0x129da8(0x19f)]['type'],'isSelectOnly':_0x226b45[_0x129da8(0x19f)][_0x129da8(0x1a7)],'isDangerous':_0x226b45[_0x129da8(0x19f)][_0x129da8(0x1c6)],'tables':_0x226b45[_0x129da8(0x1ad)],'parameters':_0x226b45[_0x129da8(0x197)],'message':_0x226b45[_0x129da8(0x1b5)]};_0x226b45['sqlType'][_0x129da8(0x1a4)]&&(_0x372d96[_0x129da8(0x1a4)]=_0x226b45[_0x129da8(0x19f)]['reason']);if(_0x2a55d1&&_0x226b45[_0x129da8(0x1bf)]){const _0x5b7bab=_0x2a55d1[_0x129da8(0x1a8)](',')[_0x129da8(0x1c4)](_0x13599d=>_0x13599d[_0x129da8(0x19d)]())[_0x129da8(0x1a1)](Boolean),_0x7a8687=[],_0x329506=[],_0x1d56a3=filterDbTableBackedDatasets(await listDatasets(_0x18ee66[_0x129da8(0x1b3)])),_0x4f8010=new Map(_0x1d56a3[_0x129da8(0x1c4)](_0x4492e8=>[_0x4492e8['dbtableConfig']?.[_0x129da8(0x1ae)]?.[_0x129da8(0x1c8)](),_0x4492e8]));for(const _0x48092a of _0x226b45[_0x129da8(0x1ad)]){const _0x13fef3=_0x4f8010[_0x129da8(0x1b6)](_0x48092a[_0x129da8(0x1c8)]());!_0x13fef3&&_0x7a8687[_0x129da8(0x1c7)](_0x129da8(0x1c0)+_0x48092a+_0x129da8(0x18c));}for(const _0x2311d9 of _0x5b7bab){let _0x4c66e4;try{_0x4c66e4=await getDatasetDetail(_0x2311d9);}catch{_0x7a8687[_0x129da8(0x1c7)](_0x129da8(0x1be)+_0x2311d9+_0x129da8(0x1b4));continue;}assertDatasetIsDbTableBacked(_0x4c66e4,_0x129da8(0x18d));const _0x5d51ef=Array[_0x129da8(0x1b1)](_0x4c66e4[_0x129da8(0x18f)])?_0x4c66e4[_0x129da8(0x18f)]:[],_0x24ff98=new Set(_0x5d51ef[_0x129da8(0x1c4)](_0x4dcba0=>_0x4dcba0[_0x129da8(0x1a2)]?.[_0x129da8(0x1c8)]())),_0x4f4a84=_0x4c66e4[_0x129da8(0x1a0)]?.[_0x129da8(0x1ae)]||_0x4c66e4[_0x129da8(0x1ae)]||_0x2311d9;_0x372d96[_0x129da8(0x1bb)+_0x4f4a84]={'code':_0x2311d9,'tableName':_0x4f4a84,'fieldCount':_0x24ff98[_0x129da8(0x19a)],'fields':Array[_0x129da8(0x1ab)](_0x24ff98)};if(_0x4c3524){const _0x1ccae0=normalizeDatasetIndexes(_0x4c66e4);_0x329506[_0x129da8(0x1c7)]({'tableName':_0x4f4a84,..._0x1ccae0});}}_0x7a8687[_0x129da8(0x1b2)]>0x0&&(_0x372d96[_0x129da8(0x1a6)]=_0x7a8687),_0x4c3524&&(_0x372d96[_0x129da8(0x1c5)]=auditSqlJoinIndexes(_0x520ba5,_0x329506));}return{'ok':_0x226b45['valid'],'data':_0x372d96,'message':_0x226b45[_0x129da8(0x1b5)]};}};function a206_0x17bc(_0xa2d817,_0x13deaa){_0xa2d817=_0xa2d817-0x18b;const _0x2cbbf2=a206_0x2cbb();let _0x17bc79=_0x2cbbf2[_0xa2d817];return _0x17bc79;}function normalizeDatasetIndexes(_0x3e95bb){const _0x47cc06=a206_0x3ba014,_0x3b1259=Array[_0x47cc06(0x1b1)](_0x3e95bb?.[_0x47cc06(0x1d0)]?.[_0x47cc06(0x192)])?_0x3e95bb[_0x47cc06(0x1d0)]['indexes']:Array[_0x47cc06(0x1b1)](_0x3e95bb?.[_0x47cc06(0x192)])?_0x3e95bb[_0x47cc06(0x192)]:[],_0x34efe6=_0x3b1259[_0x47cc06(0x1b8)](_0x2b278d=>{const _0x588c50=_0x47cc06,_0x20bca2=Array[_0x588c50(0x1b1)](_0x2b278d?.[_0x588c50(0x1b7)])?_0x2b278d[_0x588c50(0x1b7)]:Array[_0x588c50(0x1b1)](_0x2b278d?.[_0x588c50(0x1b9)])?_0x2b278d['columnNames']:Array[_0x588c50(0x1b1)](_0x2b278d?.[_0x588c50(0x1ca)])?_0x2b278d[_0x588c50(0x1ca)]:[],_0x20da5f=_0x20bca2[_0x588c50(0x1a1)](_0x4d3bbf=>typeof _0x4d3bbf===_0x588c50(0x1b0))[_0x588c50(0x1c4)](_0x5c2caa=>_0x5c2caa['trim']())[_0x588c50(0x1a1)](Boolean);if(_0x20da5f[_0x588c50(0x1b2)]===0x0)return[];const _0x552e63=[_0x2b278d?.[_0x588c50(0x1a9)],_0x2b278d?.['index_name'],_0x2b278d?.[_0x588c50(0x1a2)]][_0x588c50(0x1c3)](_0x1c6ff3=>typeof _0x1c6ff3==='string'&&_0x1c6ff3['trim']()),_0x3ffbad=[_0x2b278d?.[_0x588c50(0x199)],_0x2b278d?.[_0x588c50(0x1a3)]]['find'](_0x6aa57a=>typeof _0x6aa57a===_0x588c50(0x1b0)&&_0x6aa57a[_0x588c50(0x19d)]());return[{..._0x552e63?{'name':_0x552e63[_0x588c50(0x19d)]()}:{},..._0x3ffbad?{'type':_0x3ffbad['trim']()}:{},'columns':_0x20da5f}];}),_0x675bb1=[..._0x34efe6],_0x3d3570=typeof _0x3e95bb?.[_0x47cc06(0x1a0)]?.['pkField']===_0x47cc06(0x1b0)?_0x3e95bb[_0x47cc06(0x1a0)][_0x47cc06(0x191)][_0x47cc06(0x1a8)](',')[_0x47cc06(0x1c4)](_0x43e53f=>_0x43e53f[_0x47cc06(0x19d)]())[_0x47cc06(0x1a1)](Boolean):[];return _0x3d3570[_0x47cc06(0x1b2)]>0x0&&_0x675bb1['unshift']({'type':_0x47cc06(0x1aa),'columns':_0x3d3570}),{'indexes':_0x675bb1,'metadataAvailable':_0x34efe6[_0x47cc06(0x1b2)]>0x0};}
@@ -1 +1 @@
1
- (function(_0x40540c,_0x232f33){const _0x4fdd85=a207_0x1852,_0x209efe=_0x40540c();while(!![]){try{const _0x75bce6=-parseInt(_0x4fdd85(0x138))/0x1+parseInt(_0x4fdd85(0x13d))/0x2+-parseInt(_0x4fdd85(0x13f))/0x3+parseInt(_0x4fdd85(0x13e))/0x4+-parseInt(_0x4fdd85(0x13a))/0x5+-parseInt(_0x4fdd85(0x13b))/0x6*(-parseInt(_0x4fdd85(0x139))/0x7)+parseInt(_0x4fdd85(0x140))/0x8*(parseInt(_0x4fdd85(0x13c))/0x9);if(_0x75bce6===_0x232f33)break;else _0x209efe['push'](_0x209efe['shift']());}catch(_0x4d059f){_0x209efe['push'](_0x209efe['shift']());}}}(a207_0x1d87,0x63932));function a207_0x1852(_0xec6871,_0x383fd2){_0xec6871=_0xec6871-0x138;const _0x1d8757=a207_0x1d87();let _0x185230=_0x1d8757[_0xec6871];return _0x185230;}import{taskStatus}from'../../commands/task/status.js';export const taskDefinitions=[taskStatus];function a207_0x1d87(){const _0x4bc857=['56KAZteo','92358njQPUK','2630278VTSCjD','1243690cndpKR','6pyXhYk','82233XKnIcb','729028wWlHbd','2907992PYLPOi','2346813aqVGRg'];a207_0x1d87=function(){return _0x4bc857;};return a207_0x1d87();}
1
+ (function(_0x1365e1,_0x42b8c0){const _0x2603c6=a207_0x5864,_0x386bd3=_0x1365e1();while(!![]){try{const _0x5d3b96=-parseInt(_0x2603c6(0x1cf))/0x1+-parseInt(_0x2603c6(0x1cc))/0x2+-parseInt(_0x2603c6(0x1d0))/0x3+parseInt(_0x2603c6(0x1c9))/0x4+parseInt(_0x2603c6(0x1ce))/0x5+-parseInt(_0x2603c6(0x1ca))/0x6+-parseInt(_0x2603c6(0x1cb))/0x7*(-parseInt(_0x2603c6(0x1cd))/0x8);if(_0x5d3b96===_0x42b8c0)break;else _0x386bd3['push'](_0x386bd3['shift']());}catch(_0x5342e7){_0x386bd3['push'](_0x386bd3['shift']());}}}(a207_0x131c,0xbdd96));function a207_0x131c(){const _0x11eefc=['8756232mABrnL','112hfhgJt','3024146DDpgrY','2159624PPMbWO','518940LEveFM','1450805wEVzjG','54549NNRosK','3180076uosJiD'];a207_0x131c=function(){return _0x11eefc;};return a207_0x131c();}function a207_0x5864(_0x314807,_0x353eb2){_0x314807=_0x314807-0x1c9;const _0x131c4e=a207_0x131c();let _0x5864bf=_0x131c4e[_0x314807];return _0x5864bf;}import{taskStatus}from'../../commands/task/status.js';export const taskDefinitions=[taskStatus];
@@ -1 +1 @@
1
- function a208_0x5138(_0x4c49d2,_0x2cb10b){_0x4c49d2=_0x4c49d2-0x1a5;const _0x341190=a208_0x3411();let _0x51380e=_0x341190[_0x4c49d2];return _0x51380e;}const a208_0x378ff2=a208_0x5138;(function(_0x327a3e,_0x3eae6f){const _0x46433c=a208_0x5138,_0x396eed=_0x327a3e();while(!![]){try{const _0x42ec8e=parseInt(_0x46433c(0x1b3))/0x1+parseInt(_0x46433c(0x1af))/0x2*(parseInt(_0x46433c(0x1b7))/0x3)+parseInt(_0x46433c(0x1ac))/0x4*(parseInt(_0x46433c(0x1b4))/0x5)+parseInt(_0x46433c(0x1a5))/0x6*(-parseInt(_0x46433c(0x1a6))/0x7)+parseInt(_0x46433c(0x1b8))/0x8*(-parseInt(_0x46433c(0x1b0))/0x9)+-parseInt(_0x46433c(0x1b9))/0xa+-parseInt(_0x46433c(0x1a8))/0xb*(-parseInt(_0x46433c(0x1ba))/0xc);if(_0x42ec8e===_0x3eae6f)break;else _0x396eed['push'](_0x396eed['shift']());}catch(_0x308b39){_0x396eed['push'](_0x396eed['shift']());}}}(a208_0x3411,0x41776));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{getAsyncTaskStatus}from'../../core/api-client.js';function a208_0x3411(){const _0x467287=['str','1392BjGQjA','10157jKfqBk','string','77tzWOKo','trim','Task\x20id\x20returned\x20by\x20an\x20asynchronous\x20platform\x20command','compress','4jjajFJ','Query\x20an\x20asynchronous\x20task;\x20repeat\x20for\x20PENDING\x20or\x20PROCESSING\x20until\x20SUCCESS\x20or\x20FAILED','task','4cddRmx','36DTyeck','task-id','appCode','189289mkshsw','2176655SWnmCc','flagMissing','taskId','290469EQuzGL','596152pkpWak','5144470LziRzl','1026924BAwIng','Task\x20status\x20response\x20id\x20mismatch:\x20requested\x20'];a208_0x3411=function(){return _0x467287;};return a208_0x3411();}import{CliErrors}from'../../errors.js';export const taskStatus={'service':a208_0x378ff2(0x1ae),'command':'status','description':a208_0x378ff2(0x1ad),'risk':'read','defaultOutputFormat':a208_0x378ff2(0x1ab),'structuredErrors':!![],'flags':[{'name':a208_0x378ff2(0x1b1),'type':a208_0x378ff2(0x1a7),'required':!![],'description':a208_0x378ff2(0x1aa)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x26089b){const _0x44a879=a208_0x378ff2;if(!_0x26089b[_0x44a879(0x1bc)](_0x44a879(0x1b1))[_0x44a879(0x1a9)]())throw CliErrors[_0x44a879(0x1b5)](_0x44a879(0x1b1));},async 'execute'(_0x34d208){const _0x30a67e=a208_0x378ff2,_0x323365=_0x34d208[_0x30a67e(0x1bc)](_0x30a67e(0x1b1))[_0x30a67e(0x1a9)](),_0x2d5ee4=normalizeAsyncTask(await getAsyncTaskStatus(_0x323365,_0x34d208['appCode'],_0x34d208['cookie']));if(_0x2d5ee4['taskId']!==_0x323365)throw CliErrors['apiError'](_0x30a67e(0x1bb)+_0x323365+',\x20received\x20'+_0x2d5ee4[_0x30a67e(0x1b6)]+'.');const _0x40dc55=buildAsyncTaskStatusCommand(_0x2d5ee4[_0x30a67e(0x1b6)],_0x34d208[_0x30a67e(0x1b2)]);return{'ok':!![],'message':asyncTaskMessage(_0x2d5ee4),'data':{'appCode':_0x34d208[_0x30a67e(0x1b2)],..._0x2d5ee4,'query':_0x2d5ee4['isTerminal']?null:{'command':_0x40dc55}}};}};
1
+ const a208_0x5667d0=a208_0x5222;(function(_0x175098,_0x2507d5){const _0x5ebee6=a208_0x5222,_0x212268=_0x175098();while(!![]){try{const _0x40d45a=parseInt(_0x5ebee6(0x87))/0x1+-parseInt(_0x5ebee6(0x96))/0x2+parseInt(_0x5ebee6(0x90))/0x3*(-parseInt(_0x5ebee6(0x9c))/0x4)+parseInt(_0x5ebee6(0x93))/0x5+parseInt(_0x5ebee6(0x8a))/0x6*(-parseInt(_0x5ebee6(0x89))/0x7)+-parseInt(_0x5ebee6(0x95))/0x8+-parseInt(_0x5ebee6(0x8b))/0x9*(-parseInt(_0x5ebee6(0x94))/0xa);if(_0x40d45a===_0x2507d5)break;else _0x212268['push'](_0x212268['shift']());}catch(_0x114786){_0x212268['push'](_0x212268['shift']());}}}(a208_0x3f21,0xbeeaf));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';function a208_0x5222(_0x373ca9,_0x374e8a){_0x373ca9=_0x373ca9-0x87;const _0x3f216a=a208_0x3f21();let _0x5222de=_0x3f216a[_0x373ca9];return _0x5222de;}function a208_0x3f21(){const _0x5e38dd=['8633328EyDESA','1951734VKuUgc','str',',\x20received\x20','Query\x20an\x20asynchronous\x20task;\x20repeat\x20for\x20PENDING\x20or\x20PROCESSING\x20until\x20SUCCESS\x20or\x20FAILED','Task\x20id\x20returned\x20by\x20an\x20asynchronous\x20platform\x20command','task','375904mARaSm','isTerminal','string','523464rywbRu','taskId','37121UdzEnD','78hsyleZ','99PsiWTc','flagMissing','compress','task-id','appCode','3XlBGhQ','trim','cookie','1355080GbWQEm','2004970OOTNKl'];a208_0x3f21=function(){return _0x5e38dd;};return a208_0x3f21();}import{getAsyncTaskStatus}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const taskStatus={'service':a208_0x5667d0(0x9b),'command':'status','description':a208_0x5667d0(0x99),'risk':'read','defaultOutputFormat':a208_0x5667d0(0x8d),'structuredErrors':!![],'flags':[{'name':'task-id','type':a208_0x5667d0(0x9e),'required':!![],'description':a208_0x5667d0(0x9a)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x58ab61){const _0x1bbe6e=a208_0x5667d0;if(!_0x58ab61[_0x1bbe6e(0x97)](_0x1bbe6e(0x8e))[_0x1bbe6e(0x91)]())throw CliErrors[_0x1bbe6e(0x8c)](_0x1bbe6e(0x8e));},async 'execute'(_0x3cf219){const _0x4fd7f8=a208_0x5667d0,_0x376c2e=_0x3cf219[_0x4fd7f8(0x97)]('task-id')[_0x4fd7f8(0x91)](),_0x631758=normalizeAsyncTask(await getAsyncTaskStatus(_0x376c2e,_0x3cf219['appCode'],_0x3cf219[_0x4fd7f8(0x92)]));if(_0x631758[_0x4fd7f8(0x88)]!==_0x376c2e)throw CliErrors['apiError']('Task\x20status\x20response\x20id\x20mismatch:\x20requested\x20'+_0x376c2e+_0x4fd7f8(0x98)+_0x631758[_0x4fd7f8(0x88)]+'.');const _0x2f3115=buildAsyncTaskStatusCommand(_0x631758[_0x4fd7f8(0x88)],_0x3cf219[_0x4fd7f8(0x8f)]);return{'ok':!![],'message':asyncTaskMessage(_0x631758),'data':{'appCode':_0x3cf219[_0x4fd7f8(0x8f)],..._0x631758,'query':_0x631758[_0x4fd7f8(0x9d)]?null:{'command':_0x2f3115}}};}};
@@ -1 +1 @@
1
- (function(_0x54a51d,_0x230ea1){const _0x593171=a209_0x30ba,_0x58205a=_0x54a51d();while(!![]){try{const _0x4f0177=-parseInt(_0x593171(0x1ea))/0x1+-parseInt(_0x593171(0x1ee))/0x2+-parseInt(_0x593171(0x1e8))/0x3*(-parseInt(_0x593171(0x1e9))/0x4)+parseInt(_0x593171(0x1e4))/0x5*(-parseInt(_0x593171(0x1ed))/0x6)+parseInt(_0x593171(0x1ec))/0x7+parseInt(_0x593171(0x1e5))/0x8*(parseInt(_0x593171(0x1eb))/0x9)+-parseInt(_0x593171(0x1e7))/0xa*(-parseInt(_0x593171(0x1e6))/0xb);if(_0x4f0177===_0x230ea1)break;else _0x58205a['push'](_0x58205a['shift']());}catch(_0x28cac6){_0x58205a['push'](_0x58205a['shift']());}}}(a209_0x393f,0x6d0b8));function a209_0x30ba(_0x328734,_0x124476){_0x328734=_0x328734-0x1e4;const _0x393f08=a209_0x393f();let _0x30ba40=_0x393f08[_0x328734];return _0x30ba40;}function a209_0x393f(){const _0x117529=['871077RgeHTh','4077VpZxPs','6116593YcCqAt','18FhSRcD','1136650RbvrHa','1181435yWfrqB','248uUCxWj','1349381jufCmq','90GheHGM','6gUIbgI','1206060CQKudS'];a209_0x393f=function(){return _0x117529;};return a209_0x393f();}import{tenantMembersListDefinition}from'../../commands/tenant/members-list.js';export const tenantDefinitions=[tenantMembersListDefinition];
1
+ (function(_0xdb2282,_0x20e4ec){const _0x4c1378=a209_0x2961,_0x10eae8=_0xdb2282();while(!![]){try{const _0xe1191b=-parseInt(_0x4c1378(0x179))/0x1+-parseInt(_0x4c1378(0x178))/0x2+parseInt(_0x4c1378(0x177))/0x3*(parseInt(_0x4c1378(0x176))/0x4)+-parseInt(_0x4c1378(0x17a))/0x5+-parseInt(_0x4c1378(0x17b))/0x6*(parseInt(_0x4c1378(0x175))/0x7)+parseInt(_0x4c1378(0x172))/0x8*(-parseInt(_0x4c1378(0x174))/0x9)+-parseInt(_0x4c1378(0x173))/0xa*(-parseInt(_0x4c1378(0x17c))/0xb);if(_0xe1191b===_0x20e4ec)break;else _0x10eae8['push'](_0x10eae8['shift']());}catch(_0x1c0c97){_0x10eae8['push'](_0x10eae8['shift']());}}}(a209_0x5603,0x46c44));function a209_0x2961(_0x158694,_0x9614c5){_0x158694=_0x158694-0x172;const _0x5603c1=a209_0x5603();let _0x2961a8=_0x5603c1[_0x158694];return _0x2961a8;}import{tenantMembersListDefinition}from'../../commands/tenant/members-list.js';function a209_0x5603(){const _0x4b593d=['603344NQaakp','562427RQXPVQ','2099340xVjvvY','6RBhpSK','11wbkPgo','16eyifXK','23182620xmzTqJ','2231613WOWnTy','2155790DHtrVW','884oIxxfd','807tfTfew'];a209_0x5603=function(){return _0x4b593d;};return a209_0x5603();}export const tenantDefinitions=[tenantMembersListDefinition];
@@ -1 +1 @@
1
- const a210_0x593693=a210_0x5297;(function(_0x290313,_0x195bed){const _0x389400=a210_0x5297,_0x16a226=_0x290313();while(!![]){try{const _0x523ea6=-parseInt(_0x389400(0x14d))/0x1*(parseInt(_0x389400(0x153))/0x2)+parseInt(_0x389400(0x146))/0x3*(parseInt(_0x389400(0x14c))/0x4)+-parseInt(_0x389400(0x150))/0x5+parseInt(_0x389400(0x14e))/0x6*(-parseInt(_0x389400(0x144))/0x7)+parseInt(_0x389400(0x148))/0x8+parseInt(_0x389400(0x147))/0x9*(-parseInt(_0x389400(0x13f))/0xa)+-parseInt(_0x389400(0x14f))/0xb*(-parseInt(_0x389400(0x141))/0xc);if(_0x523ea6===_0x195bed)break;else _0x16a226['push'](_0x16a226['shift']());}catch(_0x511d67){_0x16a226['push'](_0x16a226['shift']());}}}(a210_0x5b7b,0xab816));function a210_0x5b7b(){const _0x36ae5d=['length','members-list','Exact\x20tenant\x20code','string','350FJXkst','str','24EofqMo','read','tenant','3787uluOdg','trim','3cNwAHC','317889jBrcgX','2404512NETFis','List\x20members\x20of\x20a\x20tenant\x20available\x20to\x20the\x20current\x20account','Found\x20','tenant-code','293028xJTUGR','821ZjmkCi','8178pwEAqw','22945967QrfBSh','4993150wTSeFi','\x20tenant\x20member(s)','Pass\x20--tenant-code\x20<code>.','2122zGCQME'];a210_0x5b7b=function(){return _0x36ae5d;};return a210_0x5b7b();}function a210_0x5297(_0x136c19,_0x1fd1dd){_0x136c19=_0x136c19-0x13b;const _0x5b7bb6=a210_0x5b7b();let _0x52974e=_0x5b7bb6[_0x136c19];return _0x52974e;}import{listCurrentUserTenantMemberships,listTenantDirectoryMembers}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{assertTenantAccessible,projectTenantMembers}from'../../commands/tenant/shared.js';export const tenantMembersListDefinition={'service':a210_0x593693(0x143),'command':a210_0x593693(0x13c),'description':a210_0x593693(0x149),'risk':a210_0x593693(0x142),'requiresAuth':!![],'requiresAppCode':![],'structuredErrors':!![],'flags':[{'name':a210_0x593693(0x14b),'type':a210_0x593693(0x13e),'required':!![],'description':a210_0x593693(0x13d)}],async 'validate'(_0x3db70f){const _0xc78cfa=a210_0x593693;if(!_0x3db70f[_0xc78cfa(0x140)](_0xc78cfa(0x14b))[_0xc78cfa(0x145)]())throw CliErrors['flagMissing']('tenant-code',_0xc78cfa(0x152));},async 'execute'(_0x3c521b){const _0x475d6a=a210_0x593693,_0x2731b8=_0x3c521b[_0x475d6a(0x140)](_0x475d6a(0x14b))[_0x475d6a(0x145)](),_0x1c3ce3=await listCurrentUserTenantMemberships();assertTenantAccessible(_0x2731b8,_0x1c3ce3);const _0x580bb1=projectTenantMembers(await listTenantDirectoryMembers(_0x2731b8));return{'ok':!![],'data':{'tenantCode':_0x2731b8,'items':_0x580bb1,'totalCount':_0x580bb1[_0x475d6a(0x13b)]},'message':_0x475d6a(0x14a)+_0x580bb1[_0x475d6a(0x13b)]+_0x475d6a(0x151)};}};
1
+ const a210_0x3292f1=a210_0x4ff9;function a210_0x4ff9(_0x59f455,_0x4c2377){_0x59f455=_0x59f455-0x17a;const _0x3a281e=a210_0x3a28();let _0x4ff996=_0x3a281e[_0x59f455];return _0x4ff996;}(function(_0xbbf33d,_0x2c4fef){const _0x478015=a210_0x4ff9,_0x23365a=_0xbbf33d();while(!![]){try{const _0x27c6a9=-parseInt(_0x478015(0x189))/0x1*(-parseInt(_0x478015(0x18f))/0x2)+parseInt(_0x478015(0x17c))/0x3*(-parseInt(_0x478015(0x18e))/0x4)+parseInt(_0x478015(0x18c))/0x5*(parseInt(_0x478015(0x17e))/0x6)+parseInt(_0x478015(0x17b))/0x7+parseInt(_0x478015(0x17f))/0x8*(-parseInt(_0x478015(0x18a))/0x9)+parseInt(_0x478015(0x17a))/0xa*(parseInt(_0x478015(0x18b))/0xb)+-parseInt(_0x478015(0x191))/0xc;if(_0x27c6a9===_0x2c4fef)break;else _0x23365a['push'](_0x23365a['shift']());}catch(_0x59889d){_0x23365a['push'](_0x23365a['shift']());}}}(a210_0x3a28,0x266c9));import{listCurrentUserTenantMemberships,listTenantDirectoryMembers}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a210_0x3a28(){const _0x5a40bf=['645LoWyWN','trim','1166116zbEDnP','432422RmZQXw','tenant','1858620tnTebj','20VgDZiM','1070153HVgHda','3hlEWfp','tenant-code','2442lcslit','96KutmnH','\x20tenant\x20member(s)','Exact\x20tenant\x20code','string','Pass\x20--tenant-code\x20<code>.','Found\x20','length','flagMissing','read','str','1qVXHXY','1323SiGkGW','1011835hrFeGD'];a210_0x3a28=function(){return _0x5a40bf;};return a210_0x3a28();}import{assertTenantAccessible,projectTenantMembers}from'../../commands/tenant/shared.js';export const tenantMembersListDefinition={'service':a210_0x3292f1(0x190),'command':'members-list','description':'List\x20members\x20of\x20a\x20tenant\x20available\x20to\x20the\x20current\x20account','risk':a210_0x3292f1(0x187),'requiresAuth':!![],'requiresAppCode':![],'structuredErrors':!![],'flags':[{'name':'tenant-code','type':a210_0x3292f1(0x182),'required':!![],'description':a210_0x3292f1(0x181)}],async 'validate'(_0x3dd468){const _0x4be5f7=a210_0x3292f1;if(!_0x3dd468[_0x4be5f7(0x188)](_0x4be5f7(0x17d))[_0x4be5f7(0x18d)]())throw CliErrors[_0x4be5f7(0x186)](_0x4be5f7(0x17d),_0x4be5f7(0x183));},async 'execute'(_0x96ff65){const _0x5b40f5=a210_0x3292f1,_0x2314a4=_0x96ff65[_0x5b40f5(0x188)]('tenant-code')[_0x5b40f5(0x18d)](),_0x58154b=await listCurrentUserTenantMemberships();assertTenantAccessible(_0x2314a4,_0x58154b);const _0x5f5287=projectTenantMembers(await listTenantDirectoryMembers(_0x2314a4));return{'ok':!![],'data':{'tenantCode':_0x2314a4,'items':_0x5f5287,'totalCount':_0x5f5287[_0x5b40f5(0x185)]},'message':_0x5b40f5(0x184)+_0x5f5287[_0x5b40f5(0x185)]+_0x5b40f5(0x180)};}};
@@ -1 +1 @@
1
- function a211_0x2dcd(){const _0x6b9f=['\x22\x20is\x20not\x20available\x20to\x20the\x20current\x20account.','displayName','values','4525470kvjuQJ','2167272FHCbcS','adminFlag','userId','14ReJYEF','validation','317360mWSGZh','username','status','isFinite','2805868WmnIsr','MEMBER','sort','Check\x20--tenant-code\x20or\x20login\x20with\x20an\x20account\x20that\x20belongs\x20to\x20this\x20tenant.','126wbubix','set','role','tenantCode','get','100699IWmrGx','trim','7ldHSmq','170965xaLHqz','ADMIN','1254530cxhknp','nickname'];a211_0x2dcd=function(){return _0x6b9f;};return a211_0x2dcd();}(function(_0x22c532,_0x50a615){const _0x370fd0=a211_0x3145,_0x5f49b0=_0x22c532();while(!![]){try{const _0x3b861e=parseInt(_0x370fd0(0xb7))/0x1*(-parseInt(_0x370fd0(0xa8))/0x2)+-parseInt(_0x370fd0(0xc2))/0x3+-parseInt(_0x370fd0(0xae))/0x4+-parseInt(_0x370fd0(0xba))/0x5+parseInt(_0x370fd0(0xc1))/0x6+-parseInt(_0x370fd0(0xb9))/0x7*(-parseInt(_0x370fd0(0xaa))/0x8)+-parseInt(_0x370fd0(0xb2))/0x9*(-parseInt(_0x370fd0(0xbc))/0xa);if(_0x3b861e===_0x50a615)break;else _0x5f49b0['push'](_0x5f49b0['shift']());}catch(_0x11c644){_0x5f49b0['push'](_0x5f49b0['shift']());}}}(a211_0x2dcd,0x5e8d0));import{CliErrors}from'../../errors.js';function textOrNull(_0x2622a1){const _0x27267b=a211_0x3145,_0x1be885=_0x2622a1?.[_0x27267b(0xb8)]();return _0x1be885?_0x1be885:null;}function a211_0x3145(_0xe354a6,_0x20adf4){_0xe354a6=_0xe354a6-0xa7;const _0x2dcd6d=a211_0x2dcd();let _0x314572=_0x2dcd6d[_0xe354a6];return _0x314572;}export function projectTenantMembers(_0x93749f){const _0x598f4e=a211_0x3145,_0x4f22b6=new Map();for(const _0x3184bd of _0x93749f){const _0x5688b2=Number(_0x3184bd[_0x598f4e(0xa7)]);if(!Number[_0x598f4e(0xad)](_0x5688b2)||_0x5688b2<=0x0)continue;const _0x2a2e8e={'userId':_0x5688b2,'username':textOrNull(_0x3184bd['username']),'displayName':textOrNull(_0x3184bd[_0x598f4e(0xbd)]),'role':_0x3184bd[_0x598f4e(0xc3)]===!![]?'ADMIN':_0x598f4e(0xaf),'status':textOrNull(_0x3184bd[_0x598f4e(0xac)])},_0x4084c3=_0x4f22b6[_0x598f4e(0xb6)](_0x5688b2);if(!_0x4084c3){_0x4f22b6[_0x598f4e(0xb3)](_0x5688b2,_0x2a2e8e);continue;}_0x4084c3['username']??=_0x2a2e8e[_0x598f4e(0xab)],_0x4084c3[_0x598f4e(0xbf)]??=_0x2a2e8e[_0x598f4e(0xbf)],_0x4084c3[_0x598f4e(0xac)]??=_0x2a2e8e['status'];if(_0x2a2e8e[_0x598f4e(0xb4)]===_0x598f4e(0xbb))_0x4084c3[_0x598f4e(0xb4)]='ADMIN';}return[..._0x4f22b6[_0x598f4e(0xc0)]()][_0x598f4e(0xb0)]((_0x3f8ab1,_0x99a81e)=>_0x3f8ab1[_0x598f4e(0xa7)]-_0x99a81e[_0x598f4e(0xa7)]);}export function assertTenantAccessible(_0x588240,_0x450946){const _0x4198d8=a211_0x3145;if(_0x450946['some'](_0x1a9e6b=>_0x1a9e6b[_0x4198d8(0xb5)]===_0x588240))return;throw CliErrors[_0x4198d8(0xa9)]('Tenant\x20\x22'+_0x588240+_0x4198d8(0xbe),_0x4198d8(0xb1));}
1
+ (function(_0x24bcb0,_0x25a427){const _0x5c3551=a211_0x1403,_0x2ed5f5=_0x24bcb0();while(!![]){try{const _0x21b366=parseInt(_0x5c3551(0x1fa))/0x1+-parseInt(_0x5c3551(0x1f7))/0x2+parseInt(_0x5c3551(0x1ea))/0x3+-parseInt(_0x5c3551(0x1f4))/0x4*(parseInt(_0x5c3551(0x1e8))/0x5)+-parseInt(_0x5c3551(0x1f1))/0x6+parseInt(_0x5c3551(0x1ed))/0x7+parseInt(_0x5c3551(0x1f6))/0x8;if(_0x21b366===_0x25a427)break;else _0x2ed5f5['push'](_0x2ed5f5['shift']());}catch(_0x216efd){_0x2ed5f5['push'](_0x2ed5f5['shift']());}}}(a211_0x6116,0x84404));import{CliErrors}from'../../errors.js';function textOrNull(_0x585b7d){const _0x3d2415=_0x585b7d?.['trim']();return _0x3d2415?_0x3d2415:null;}function a211_0x1403(_0x4ed50b,_0x44ab06){_0x4ed50b=_0x4ed50b-0x1e6;const _0x61168b=a211_0x6116();let _0x1403be=_0x61168b[_0x4ed50b];return _0x1403be;}export function projectTenantMembers(_0x58531a){const _0x40ba65=a211_0x1403,_0x5311a7=new Map();for(const _0x5e1653 of _0x58531a){const _0x2800aa=Number(_0x5e1653[_0x40ba65(0x1f0)]);if(!Number['isFinite'](_0x2800aa)||_0x2800aa<=0x0)continue;const _0x5c9bac={'userId':_0x2800aa,'username':textOrNull(_0x5e1653[_0x40ba65(0x1ec)]),'displayName':textOrNull(_0x5e1653[_0x40ba65(0x1e7)]),'role':_0x5e1653['adminFlag']===!![]?'ADMIN':_0x40ba65(0x1e9),'status':textOrNull(_0x5e1653[_0x40ba65(0x1fd)])},_0x2ba7c4=_0x5311a7[_0x40ba65(0x1f9)](_0x2800aa);if(!_0x2ba7c4){_0x5311a7[_0x40ba65(0x1ee)](_0x2800aa,_0x5c9bac);continue;}_0x2ba7c4[_0x40ba65(0x1ec)]??=_0x5c9bac['username'],_0x2ba7c4[_0x40ba65(0x1fc)]??=_0x5c9bac['displayName'],_0x2ba7c4[_0x40ba65(0x1fd)]??=_0x5c9bac[_0x40ba65(0x1fd)];if(_0x5c9bac[_0x40ba65(0x1e6)]===_0x40ba65(0x1f3))_0x2ba7c4[_0x40ba65(0x1e6)]=_0x40ba65(0x1f3);}return[..._0x5311a7[_0x40ba65(0x1f8)]()][_0x40ba65(0x1eb)]((_0x5d988d,_0x5c7b29)=>_0x5d988d[_0x40ba65(0x1f0)]-_0x5c7b29[_0x40ba65(0x1f0)]);}function a211_0x6116(){const _0x520d0c=['values','get','320560LLXASj','Tenant\x20\x22','displayName','status','role','nickname','1964660RtQqff','MEMBER','939435vbpbrf','sort','username','703164qgHaSF','set','validation','userId','5750550igmafN','\x22\x20is\x20not\x20available\x20to\x20the\x20current\x20account.','ADMIN','4rNCMTm','tenantCode','12640888WkMRZl','842422kfzdSU'];a211_0x6116=function(){return _0x520d0c;};return a211_0x6116();}export function assertTenantAccessible(_0x275cee,_0x334b06){const _0x1b4b77=a211_0x1403;if(_0x334b06['some'](_0x3a0b3e=>_0x3a0b3e[_0x1b4b77(0x1f5)]===_0x275cee))return;throw CliErrors[_0x1b4b77(0x1ef)](_0x1b4b77(0x1fb)+_0x275cee+_0x1b4b77(0x1f2),'Check\x20--tenant-code\x20or\x20login\x20with\x20an\x20account\x20that\x20belongs\x20to\x20this\x20tenant.');}
@@ -1 +1 @@
1
- const a212_0x30e90e=a212_0x3083;(function(_0x66f855,_0x110565){const _0x4584f3=a212_0x3083,_0x5af626=_0x66f855();while(!![]){try{const _0x554a15=parseInt(_0x4584f3(0xa9))/0x1*(parseInt(_0x4584f3(0xa6))/0x2)+-parseInt(_0x4584f3(0xb7))/0x3+-parseInt(_0x4584f3(0xac))/0x4+parseInt(_0x4584f3(0xb9))/0x5*(-parseInt(_0x4584f3(0xa8))/0x6)+-parseInt(_0x4584f3(0xb3))/0x7*(-parseInt(_0x4584f3(0xad))/0x8)+-parseInt(_0x4584f3(0xbb))/0x9*(parseInt(_0x4584f3(0xba))/0xa)+-parseInt(_0x4584f3(0xa7))/0xb*(-parseInt(_0x4584f3(0xaf))/0xc);if(_0x554a15===_0x110565)break;else _0x5af626['push'](_0x5af626['shift']());}catch(_0x5ada08){_0x5af626['push'](_0x5af626['shift']());}}}(a212_0x1070,0x233ea));function a212_0x3083(_0x18db65,_0x22d840){_0x18db65=_0x18db65-0xa5;const _0x107079=a212_0x1070();let _0x308306=_0x107079[_0x18db65];return _0x308306;}import{asDryRunResult}from'../../commands/common/dry-run.js';import{bindDingTalkSandboxAccount,DING_TALK_SANDBOX_BIND_PATH}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a212_0x1070(){const _0x4e3f46=['user-account','Bind\x20the\x20current\x20platform\x20user\x20to\x20a\x20DingTalk\x20sandbox\x20account','dingding-sandbox-bind','write','bind','287736aisUSf','962621GnmaND','100242kHHaPN','1JdoTPX','trim','POST','75384GPfULB','549280qhisrP','DingTalk\x20sandbox\x20account\x20binding\x20was\x20not\x20confirmed.','36Tlicte','validation','DingTalk\x20user\x20id\x20returned\x20by\x20the\x20sandbox','Pass\x20the\x20DingTalk\x20user\x20id\x20returned\x20by\x20the\x20sandbox.','14CETXYk','ding-talk-user-id','--ding-talk-user-id\x20cannot\x20be\x20empty.','Retry\x20with\x20the\x20same\x20--ding-talk-user-id\x20only\x20after\x20checking\x20the\x20current\x20platform\x20session.','150768petxXp','str','45KyuQVH','8140WQPTDY','1989MdXaXc','string','dingtalk'];a212_0x1070=function(){return _0x4e3f46;};return a212_0x1070();}const PROVIDER_ID=a212_0x30e90e(0xbd),CURRENT_BINDING_WARNING='The\x20current\x20binding\x20is\x20not\x20exposed\x20by\x20the\x20server;\x20before\x20is\x20unavailable.';function readDingTalkUserId(_0x16118b){const _0x1de3b0=a212_0x30e90e,_0x2bc0ad=_0x16118b[_0x1de3b0(0xb8)]('ding-talk-user-id')[_0x1de3b0(0xaa)]();if(!_0x2bc0ad)throw CliErrors[_0x1de3b0(0xb0)](_0x1de3b0(0xb5),_0x1de3b0(0xb2));return _0x2bc0ad;}function buildBindingData(_0x5aa991,_0x3b0d50){const _0x4791cc=a212_0x30e90e;return{'operation':_0x4791cc(0xa5),'selector':{'providerId':PROVIDER_ID,'dingTalkUserId':_0x5aa991},'before':null,'after':{'providerId':PROVIDER_ID,'dingTalkUserId':_0x5aa991,'bound':!![]},'dryRun':_0x3b0d50,'backend':{'method':_0x4791cc(0xab),'path':DING_TALK_SANDBOX_BIND_PATH},'warnings':[CURRENT_BINDING_WARNING]};}export const dingTalkSandboxBind={'service':a212_0x30e90e(0xbe),'command':a212_0x30e90e(0xc0),'description':a212_0x30e90e(0xbf),'risk':a212_0x30e90e(0xc1),'requiresAuth':!![],'requiresAppCode':![],'structuredErrors':!![],'flags':[{'name':a212_0x30e90e(0xb4),'type':a212_0x30e90e(0xbc),'required':!![],'description':a212_0x30e90e(0xb1)}],async 'validate'(_0xa823f9){readDingTalkUserId(_0xa823f9);},async 'dryRun'(_0x5d2b5e){const _0x59c0ed=a212_0x30e90e,_0xfa457=readDingTalkUserId(_0x5d2b5e);return asDryRunResult(buildBindingData(_0xfa457,!![]),{'method':_0x59c0ed(0xab),'url':DING_TALK_SANDBOX_BIND_PATH});},async 'execute'(_0x16be4f){const _0x383aa1=a212_0x30e90e,_0x123c5a=readDingTalkUserId(_0x16be4f),_0x55eaed=await bindDingTalkSandboxAccount(_0x123c5a);if(_0x55eaed!==!![])throw CliErrors['apiError'](_0x383aa1(0xae),_0x383aa1(0xb6));return{'ok':!![],'data':buildBindingData(_0x123c5a,![]),'message':'Bound\x20current\x20user\x20to\x20DingTalk\x20sandbox\x20account.'};}};
1
+ const a212_0x366cbd=a212_0x3483;(function(_0x160a46,_0x59cccb){const _0x560751=a212_0x3483,_0x478898=_0x160a46();while(!![]){try{const _0x1a9fd9=-parseInt(_0x560751(0x110))/0x1*(-parseInt(_0x560751(0x104))/0x2)+-parseInt(_0x560751(0x106))/0x3*(parseInt(_0x560751(0x100))/0x4)+-parseInt(_0x560751(0xfe))/0x5*(parseInt(_0x560751(0x114))/0x6)+parseInt(_0x560751(0x108))/0x7+-parseInt(_0x560751(0x101))/0x8*(parseInt(_0x560751(0xfb))/0x9)+-parseInt(_0x560751(0xff))/0xa*(-parseInt(_0x560751(0xfc))/0xb)+-parseInt(_0x560751(0x112))/0xc*(-parseInt(_0x560751(0x10f))/0xd);if(_0x1a9fd9===_0x59cccb)break;else _0x478898['push'](_0x478898['shift']());}catch(_0x43e541){_0x478898['push'](_0x478898['shift']());}}}(a212_0x8662,0x45414));import{asDryRunResult}from'../../commands/common/dry-run.js';import{bindDingTalkSandboxAccount,DING_TALK_SANDBOX_BIND_PATH}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a212_0x3483(_0xb6c5ff,_0x3d3140){_0xb6c5ff=_0xb6c5ff-0xfb;const _0x8662f6=a212_0x8662();let _0x34833d=_0x8662f6[_0xb6c5ff];return _0x34833d;}const PROVIDER_ID=a212_0x366cbd(0x10c),CURRENT_BINDING_WARNING=a212_0x366cbd(0x10a);function readDingTalkUserId(_0x105957){const _0x119771=a212_0x366cbd,_0x36ba61=_0x105957[_0x119771(0xfd)]('ding-talk-user-id')[_0x119771(0x10b)]();if(!_0x36ba61)throw CliErrors[_0x119771(0x111)]('--ding-talk-user-id\x20cannot\x20be\x20empty.','Pass\x20the\x20DingTalk\x20user\x20id\x20returned\x20by\x20the\x20sandbox.');return _0x36ba61;}function buildBindingData(_0xb97004,_0xd16628){const _0x13db39=a212_0x366cbd;return{'operation':'bind','selector':{'providerId':PROVIDER_ID,'dingTalkUserId':_0xb97004},'before':null,'after':{'providerId':PROVIDER_ID,'dingTalkUserId':_0xb97004,'bound':!![]},'dryRun':_0xd16628,'backend':{'method':_0x13db39(0x105),'path':DING_TALK_SANDBOX_BIND_PATH},'warnings':[CURRENT_BINDING_WARNING]};}function a212_0x8662(){const _0x43dc09=['4sGWtIx','1288vzMpFc','DingTalk\x20user\x20id\x20returned\x20by\x20the\x20sandbox','Retry\x20with\x20the\x20same\x20--ding-talk-user-id\x20only\x20after\x20checking\x20the\x20current\x20platform\x20session.','3752zTuJdP','POST','302649VtIhab','DingTalk\x20sandbox\x20account\x20binding\x20was\x20not\x20confirmed.','1872486uADgXq','ding-talk-user-id','The\x20current\x20binding\x20is\x20not\x20exposed\x20by\x20the\x20server;\x20before\x20is\x20unavailable.','trim','dingtalk','write','dingding-sandbox-bind','624aGxsiS','113GuqtWg','validation','103260MBuEMg','string','30RQqOLs','18513SiOKUJ','11MXddTu','str','348295EtYnNf','1714970GOrXAn'];a212_0x8662=function(){return _0x43dc09;};return a212_0x8662();}export const dingTalkSandboxBind={'service':'user-account','command':a212_0x366cbd(0x10e),'description':'Bind\x20the\x20current\x20platform\x20user\x20to\x20a\x20DingTalk\x20sandbox\x20account','risk':a212_0x366cbd(0x10d),'requiresAuth':!![],'requiresAppCode':![],'structuredErrors':!![],'flags':[{'name':a212_0x366cbd(0x109),'type':a212_0x366cbd(0x113),'required':!![],'description':a212_0x366cbd(0x102)}],async 'validate'(_0x3c8b5b){readDingTalkUserId(_0x3c8b5b);},async 'dryRun'(_0xa3b610){const _0x5b8b67=readDingTalkUserId(_0xa3b610);return asDryRunResult(buildBindingData(_0x5b8b67,!![]),{'method':'POST','url':DING_TALK_SANDBOX_BIND_PATH});},async 'execute'(_0x41dc62){const _0xea0ecf=a212_0x366cbd,_0x154521=readDingTalkUserId(_0x41dc62),_0x33906d=await bindDingTalkSandboxAccount(_0x154521);if(_0x33906d!==!![])throw CliErrors['apiError'](_0xea0ecf(0x107),_0xea0ecf(0x103));return{'ok':!![],'data':buildBindingData(_0x154521,![]),'message':'Bound\x20current\x20user\x20to\x20DingTalk\x20sandbox\x20account.'};}};
@@ -1 +1 @@
1
- (function(_0x132760,_0x56b0bb){const _0x337283=a213_0x2424,_0x4d0757=_0x132760();while(!![]){try{const _0x175b3a=-parseInt(_0x337283(0xe8))/0x1*(-parseInt(_0x337283(0xef))/0x2)+parseInt(_0x337283(0xea))/0x3+-parseInt(_0x337283(0xed))/0x4+-parseInt(_0x337283(0xf0))/0x5*(-parseInt(_0x337283(0xe7))/0x6)+-parseInt(_0x337283(0xee))/0x7*(-parseInt(_0x337283(0xe9))/0x8)+parseInt(_0x337283(0xe6))/0x9*(-parseInt(_0x337283(0xeb))/0xa)+parseInt(_0x337283(0xec))/0xb;if(_0x175b3a===_0x56b0bb)break;else _0x4d0757['push'](_0x4d0757['shift']());}catch(_0x3bed74){_0x4d0757['push'](_0x4d0757['shift']());}}}(a213_0x51de,0x97ca3));function a213_0x51de(){const _0x58fb31=['4969300pclDom','35rPmUZi','555134BufXBN','326525bfbgPT','2604213aMHqRD','18aWnoFy','1eSJjEl','1871448sImYBz','2092212fSvYlQ','40PDiXRJ','7490373ixaSOa'];a213_0x51de=function(){return _0x58fb31;};return a213_0x51de();}import{dingTalkSandboxBind}from'../../commands/user-account/dingding-sandbox-bind.js';function a213_0x2424(_0x377f81,_0x4a0f8d){_0x377f81=_0x377f81-0xe6;const _0x51de36=a213_0x51de();let _0x2424e6=_0x51de36[_0x377f81];return _0x2424e6;}export const userAccountDefinitions=[dingTalkSandboxBind];
1
+ (function(_0x2437f0,_0x727f5){const _0x372d03=a213_0x1ce7,_0x5bb2cf=_0x2437f0();while(!![]){try{const _0x22db8b=-parseInt(_0x372d03(0x1b5))/0x1+-parseInt(_0x372d03(0x1b9))/0x2*(parseInt(_0x372d03(0x1b8))/0x3)+-parseInt(_0x372d03(0x1b7))/0x4+-parseInt(_0x372d03(0x1b3))/0x5*(parseInt(_0x372d03(0x1b4))/0x6)+parseInt(_0x372d03(0x1b2))/0x7+-parseInt(_0x372d03(0x1b6))/0x8*(parseInt(_0x372d03(0x1bb))/0x9)+-parseInt(_0x372d03(0x1ba))/0xa*(-parseInt(_0x372d03(0x1b1))/0xb);if(_0x22db8b===_0x727f5)break;else _0x5bb2cf['push'](_0x5bb2cf['shift']());}catch(_0x281f97){_0x5bb2cf['push'](_0x5bb2cf['shift']());}}}(a213_0x2ff0,0x5bd3d));import{dingTalkSandboxBind}from'../../commands/user-account/dingding-sandbox-bind.js';function a213_0x2ff0(){const _0x1e21e9=['3724938wNDkoD','977495soxYtq','6MiPyqR','463503MlVgel','56xHkQHs','470768MEAWam','1814259VVBQfq','2dJGFlx','100DGLpip','655164BHFojX','1908511pyBYUi'];a213_0x2ff0=function(){return _0x1e21e9;};return a213_0x2ff0();}function a213_0x1ce7(_0x5484fe,_0x12e0ae){_0x5484fe=_0x5484fe-0x1b1;const _0x2ff0cd=a213_0x2ff0();let _0x1ce727=_0x2ff0cd[_0x5484fe];return _0x1ce727;}export const userAccountDefinitions=[dingTalkSandboxBind];
@@ -1 +1 @@
1
- const a214_0x1e6cd6=a214_0x8bdd;function a214_0x4c8d(){const _0xdafdae=['workspace','708501KaBstv','write','382rjpuXW','name','6687369ssGOxQ','556927SsWLBP','114488xeekVR','2190gekDdx','8526040MzgPTC','1144NrKiEq','add','60XTLvhG','450MtZTJf','App\x20profile\x20name','workspace\x20add','45VFAmub'];a214_0x4c8d=function(){return _0xdafdae;};return a214_0x4c8d();}function a214_0x8bdd(_0x528d62,_0x200810){_0x528d62=_0x528d62-0x1b9;const _0x4c8d5f=a214_0x4c8d();let _0x8bddee=_0x4c8d5f[_0x528d62];return _0x8bddee;}(function(_0x2dd1d8,_0x108925){const _0x3bf36f=a214_0x8bdd,_0x48072f=_0x2dd1d8();while(!![]){try{const _0x5d6a9a=-parseInt(_0x3bf36f(0x1be))/0x1+parseInt(_0x3bf36f(0x1c0))/0x2*(-parseInt(_0x3bf36f(0x1c5))/0x3)+parseInt(_0x3bf36f(0x1c7))/0x4*(-parseInt(_0x3bf36f(0x1bc))/0x5)+-parseInt(_0x3bf36f(0x1c9))/0x6*(-parseInt(_0x3bf36f(0x1c3))/0x7)+parseInt(_0x3bf36f(0x1c6))/0x8+-parseInt(_0x3bf36f(0x1c2))/0x9+-parseInt(_0x3bf36f(0x1b9))/0xa*(-parseInt(_0x3bf36f(0x1c4))/0xb);if(_0x5d6a9a===_0x108925)break;else _0x48072f['push'](_0x48072f['shift']());}catch(_0x40fd5f){_0x48072f['push'](_0x48072f['shift']());}}}(a214_0x4c8d,0xb3bb3));import{buildAppAddFlags,runAppAdd,validateAppName}from'../../commands/common/app-registry.js';export const workspaceAddDefinition={'service':a214_0x1e6cd6(0x1bd),'command':a214_0x1e6cd6(0x1c8),'description':'Register\x20an\x20app\x20profile\x20in\x20the\x20current\x20workspace\x20(or\x20--global)','risk':a214_0x1e6cd6(0x1bf),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a214_0x1e6cd6(0x1c1),'description':a214_0x1e6cd6(0x1ba),'required':!![]}],'flags':buildAppAddFlags(),'validate':_0x287df6=>validateAppName(_0x287df6,a214_0x1e6cd6(0x1bb)),'execute':_0x4bff1a=>runAppAdd(_0x4bff1a,a214_0x1e6cd6(0x1bb))};
1
+ function a214_0x3452(){const _0x54ccd9=['App\x20profile\x20name','9413586RymvwD','workspace','add','272VAqlCb','Register\x20an\x20app\x20profile\x20in\x20the\x20current\x20workspace\x20(or\x20--global)','12377770KDGoyo','1964mYjdft','11345AGUJAc','write','13542mQlYoD','workspace\x20add','1200938jcPCmO','name','966SJmwiN','2821YiSBNq','1418432jDtEzZ'];a214_0x3452=function(){return _0x54ccd9;};return a214_0x3452();}function a214_0x1320(_0x3ff962,_0x36b3b1){_0x3ff962=_0x3ff962-0xa1;const _0x3452b6=a214_0x3452();let _0x1320b2=_0x3452b6[_0x3ff962];return _0x1320b2;}const a214_0x52841a=a214_0x1320;(function(_0x319632,_0x183e1a){const _0x2475b5=a214_0x1320,_0xcaf8a8=_0x319632();while(!![]){try{const _0x1a6f22=-parseInt(_0x2475b5(0xa3))/0x1+-parseInt(_0x2475b5(0xac))/0x2*(-parseInt(_0x2475b5(0xa1))/0x3)+parseInt(_0x2475b5(0xaf))/0x4*(parseInt(_0x2475b5(0xb0))/0x5)+parseInt(_0x2475b5(0xa5))/0x6*(parseInt(_0x2475b5(0xa6))/0x7)+-parseInt(_0x2475b5(0xa7))/0x8+-parseInt(_0x2475b5(0xa9))/0x9+parseInt(_0x2475b5(0xae))/0xa;if(_0x1a6f22===_0x183e1a)break;else _0xcaf8a8['push'](_0xcaf8a8['shift']());}catch(_0x452c2e){_0xcaf8a8['push'](_0xcaf8a8['shift']());}}}(a214_0x3452,0x940ef));import{buildAppAddFlags,runAppAdd,validateAppName}from'../../commands/common/app-registry.js';export const workspaceAddDefinition={'service':a214_0x52841a(0xaa),'command':a214_0x52841a(0xab),'description':a214_0x52841a(0xad),'risk':a214_0x52841a(0xb1),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a214_0x52841a(0xa4),'description':a214_0x52841a(0xa8),'required':!![]}],'flags':buildAppAddFlags(),'validate':_0x431137=>validateAppName(_0x431137,a214_0x52841a(0xa2)),'execute':_0x155e9c=>runAppAdd(_0x155e9c,a214_0x52841a(0xa2))};
@@ -1 +1 @@
1
- const a215_0x2ee0a9=a215_0x4464;(function(_0x433cd4,_0x23d14b){const _0x31999b=a215_0x4464,_0x4775ad=_0x433cd4();while(!![]){try{const _0x1a2f94=parseInt(_0x31999b(0x1e3))/0x1+-parseInt(_0x31999b(0x1e5))/0x2*(-parseInt(_0x31999b(0x1cd))/0x3)+parseInt(_0x31999b(0x1d3))/0x4*(parseInt(_0x31999b(0x1e4))/0x5)+-parseInt(_0x31999b(0x1d1))/0x6*(parseInt(_0x31999b(0x1c2))/0x7)+parseInt(_0x31999b(0x1c7))/0x8*(parseInt(_0x31999b(0x1e0))/0x9)+-parseInt(_0x31999b(0x1f5))/0xa+-parseInt(_0x31999b(0x1e9))/0xb;if(_0x1a2f94===_0x23d14b)break;else _0x4775ad['push'](_0x4775ad['shift']());}catch(_0x2b177c){_0x4775ad['push'](_0x4775ad['shift']());}}}(a215_0x4fd7,0x92ddf));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';import{normalizeStoredDefaultApp}from'../../config/schema.js';import{collectDeploymentSyncProfile,getDeploymentSyncProfileFlagDefs}from'../../config/deployment-sync.js';const WORKSPACE_USAGE=CLI_BIN_NAME+'\x20workspace\x20<init|use>\x20--app\x20<name>\x20[--appcode\x20<code>]',SAFE_PROFILE_KEYS=[a215_0x2ee0a9(0x1ce),'env',a215_0x2ee0a9(0x1df),'format',a215_0x2ee0a9(0x1db),a215_0x2ee0a9(0x1c1),'locale',a215_0x2ee0a9(0x1f2)],workspaceFlags=[{'name':a215_0x2ee0a9(0x1bf),'type':a215_0x2ee0a9(0x1d9),'description':a215_0x2ee0a9(0x1f3)},{'name':a215_0x2ee0a9(0x1ce),'type':a215_0x2ee0a9(0x1d9),'description':a215_0x2ee0a9(0x1ea)},{'name':a215_0x2ee0a9(0x1ef),'type':a215_0x2ee0a9(0x1d9),'description':a215_0x2ee0a9(0x1e1),'enum':[...RABETBASE_ENV_VALUES]},{'name':'apiDir','type':a215_0x2ee0a9(0x1d9),'description':a215_0x2ee0a9(0x1d8)},{'name':'defaultFormat','type':a215_0x2ee0a9(0x1d9),'description':a215_0x2ee0a9(0x1dd),'enum':[...RABETBASE_OUTPUT_FORMAT_VALUES]},{'name':a215_0x2ee0a9(0x1db),'type':a215_0x2ee0a9(0x1f4),'description':a215_0x2ee0a9(0x1cc)},{'name':a215_0x2ee0a9(0x1c1),'type':a215_0x2ee0a9(0x1d9),'description':a215_0x2ee0a9(0x1c0),'enum':[...RISK_LEVEL_VALUES]},{'name':a215_0x2ee0a9(0x1c6),'type':'string','description':a215_0x2ee0a9(0x1d2)},...getDeploymentSyncProfileFlagDefs()];function isRecord(_0x37d284){const _0x4ea851=a215_0x2ee0a9;return!!_0x37d284&&typeof _0x37d284===_0x4ea851(0x1e6)&&!Array[_0x4ea851(0x1bd)](_0x37d284);}function assertValidAppcode(_0x53cdb9){const _0x3c7d4b=a215_0x2ee0a9,{valid:_0x25c5f5,message:_0x462ee5}=validateAppcode(_0x53cdb9);if(!_0x25c5f5)throw CliErrors[_0x3c7d4b(0x1f1)](_0x3c7d4b(0x1e7)+_0x53cdb9,_0x462ee5);}function sanitizeProfile(_0x1e907d){if(!isRecord(_0x1e907d))return{};const _0x59e571={};for(const _0x25a9f5 of SAFE_PROFILE_KEYS){if(_0x1e907d[_0x25a9f5]!==undefined)_0x59e571[_0x25a9f5]=_0x1e907d[_0x25a9f5];}return _0x59e571;}function cloneProfile(_0x4e06ca){return isRecord(_0x4e06ca)?{..._0x4e06ca}:{};}function collectWorkspaceProfileOverrides(_0x4022ff){const _0x2134c2=a215_0x2ee0a9,_0xec45f5={},_0x3086c0=_0x4022ff[_0x2134c2(0x1e8)](_0x2134c2(0x1ef)),_0x105be1=_0x4022ff[_0x2134c2(0x1e8)](_0x2134c2(0x1df)),_0x46d969=_0x4022ff[_0x2134c2(0x1e8)](_0x2134c2(0x1c5)),_0x57f9c2=_0x4022ff[_0x2134c2(0x1d0)]('pageSize'),_0x2aca10=_0x4022ff['str'](_0x2134c2(0x1c1)),_0x523e5c=_0x4022ff[_0x2134c2(0x1e8)](_0x2134c2(0x1c6));if(_0x3086c0)_0xec45f5['env']=_0x3086c0;if(_0x105be1)_0xec45f5[_0x2134c2(0x1df)]=_0x105be1;if(_0x46d969)_0xec45f5[_0x2134c2(0x1de)]=_0x46d969;if(_0x57f9c2!==undefined&&_0x57f9c2!=='')_0xec45f5[_0x2134c2(0x1db)]=Number(_0x57f9c2);if(_0x2aca10)_0xec45f5[_0x2134c2(0x1c1)]=_0x2aca10;if(_0x523e5c)_0xec45f5[_0x2134c2(0x1c6)]=_0x523e5c;const _0x26459e=collectDeploymentSyncProfile(_0x8c4314=>_0x4022ff[_0x2134c2(0x1e8)](_0x8c4314));if(_0x26459e)_0xec45f5[_0x2134c2(0x1f2)]=_0x26459e;return _0xec45f5;}async function validateWorkspaceArgs(_0x205c3d){const _0x7bc9e4=a215_0x2ee0a9,_0x46710f=_0x205c3d[_0x7bc9e4(0x1e8)]('app')[_0x7bc9e4(0x1d7)](),_0x3d92de=_0x205c3d[_0x7bc9e4(0x1e8)](_0x7bc9e4(0x1ce))['trim']();if(!_0x46710f&&!_0x3d92de)throw CliErrors[_0x7bc9e4(0x1f1)](_0x7bc9e4(0x1e2),_0x7bc9e4(0x1d6)+CLI_BIN_NAME+_0x7bc9e4(0x1ed)+CLI_BIN_NAME+_0x7bc9e4(0x1c9));if(_0x3d92de)assertValidAppcode(_0x3d92de);}function a215_0x4464(_0x3d3ee4,_0x144f31){_0x3d3ee4=_0x3d3ee4-0x1bc;const _0x4fd785=a215_0x4fd7();let _0x4464e3=_0x4fd785[_0x3d3ee4];return _0x4464e3;}function resolveKnownApps(){const _0x3d106f=a215_0x2ee0a9,{config:_0xc096f7,layers:_0x4df415}=readRawConfigWithLayers(),_0x463a70=isRecord(_0xc096f7[_0x3d106f(0x1c4)])?_0xc096f7[_0x3d106f(0x1c4)]:{},_0x59878e=isRecord(_0x4df415['globalConfig']['apps'])?_0x4df415['globalConfig'][_0x3d106f(0x1c4)]:{};return{..._0x59878e,..._0x463a70};}async function configureWorkspace(_0x261bac,_0x56914e){const _0x1ce5cf=a215_0x2ee0a9,_0xd9c738=_0x261bac['str']('app')['trim'](),_0x423f52=_0x261bac[_0x1ce5cf(0x1e8)](_0x1ce5cf(0x1ce))['trim'](),_0x19b6d4=_0xd9c738||_0x423f52;if(!_0x19b6d4)throw CliErrors['validation'](_0x1ce5cf(0x1e2),_0x1ce5cf(0x1d6)+CLI_BIN_NAME+_0x1ce5cf(0x1ed)+CLI_BIN_NAME+'\x20workspace\x20use\x20--app\x20<name>`.');if(_0x423f52)assertValidAppcode(_0x423f52);const _0x4d77dc=resolveWriteConfigPath('project'),_0xe85e6c=readConfigFile(_0x4d77dc),_0x58a411=resolveKnownApps(),_0x4bd5c7=isRecord(_0xe85e6c['apps'])?{..._0xe85e6c[_0x1ce5cf(0x1c4)]}:{},_0x92c0f8=cloneProfile(_0x4bd5c7[_0x19b6d4]),_0x2f0e7c=sanitizeProfile(_0x58a411[_0x19b6d4]),_0x160095=_0x423f52?{}:_0x2f0e7c,_0x1c1afa=_0x423f52||_0x160095[_0x1ce5cf(0x1ce)];if(!_0x1c1afa){const _0x3ae11b=Object[_0x1ce5cf(0x1be)](_0x58a411),_0x2ae097=_0x3ae11b[_0x1ce5cf(0x1eb)]===0x0?_0x1ce5cf(0x1d6)+CLI_BIN_NAME+_0x1ce5cf(0x1ee)+_0x56914e+_0x1ce5cf(0x1d5)+_0x19b6d4+'\x20--appcode\x20<code>`.':'Pass\x20--appcode\x20<code>,\x20or\x20choose\x20one\x20of:\x20'+_0x3ae11b[_0x1ce5cf(0x1d4)](',\x20');throw CliErrors[_0x1ce5cf(0x1f1)]('App\x20\x22'+_0x19b6d4+'\x22\x20not\x20found.',_0x2ae097);}assertValidAppcode(String(_0x1c1afa));const _0x505886={..._0x160095,..._0x92c0f8,'appcode':String(_0x1c1afa),...collectWorkspaceProfileOverrides(_0x261bac)};return _0x4bd5c7[_0x19b6d4]=_0x505886,_0xe85e6c[_0x1ce5cf(0x1c4)]=_0x4bd5c7,normalizeStoredDefaultApp(_0xe85e6c,_0x19b6d4),delete _0xe85e6c['appcode'],delete _0xe85e6c[_0x1ce5cf(0x1bf)],_0x505886['env']&&(_0xe85e6c[_0x1ce5cf(0x1ef)]=_0x505886[_0x1ce5cf(0x1ef)]),writeConfigFile(_0x4d77dc,_0xe85e6c),{'ok':!![],'message':_0x1ce5cf(0x1f0)+(_0x56914e===_0x1ce5cf(0x1ca)?_0x1ce5cf(0x1dc):_0x1ce5cf(0x1ec))+':\x20'+_0x19b6d4+'\x20(appcode:\x20'+_0x505886[_0x1ce5cf(0x1ce)]+_0x1ce5cf(0x1c3)+_0x4d77dc+_0x1ce5cf(0x1bc),'data':{'operation':_0x1ce5cf(0x1c8)+_0x56914e,'configPath':_0x4d77dc,'app':_0x19b6d4,'appcode':_0x505886[_0x1ce5cf(0x1ce)],'env':_0x505886['env']??null,'credentialsWritten':![]}};}function a215_0x4fd7(){const _0x2c6933=['Missing\x20workspace\x20app\x20selector.','1018058lSOEgT','10ZcvRwX','2noXYJO','object','Invalid\x20appcode:\x20','str','6368329KRqwfs','App\x20code\x20to\x20bind\x20to\x20this\x20workspace','length','updated','\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20`','\x20workspace\x20','env','Workspace\x20','validation','deploymentSync','App\x20profile\x20name\x20to\x20use\x20in\x20this\x20workspace','number','3734250rcfgaO','.\x20Credentials:\x20not\x20written.','isArray','keys','app','Risk\x20level\x20for\x20this\x20workspace\x20app\x20profile','riskLevel','5720428yVmPAK',').\x20Config:\x20','apps','defaultFormat','locale','472MRbyoz','workspace.','\x20workspace\x20use\x20--app\x20<name>`.','init','workspace','Default\x20page\x20size\x20for\x20this\x20workspace\x20app\x20profile','436047HVZPPo','appcode','write','flag','6Hbzgcv','App\x20locale\x20for\x20this\x20workspace\x20app\x20profile\x20(not\x20CLI\x20language;\x20reserved\x20for\x20later\x20app\x20use)','440608McNxuY','join','\x20--app\x20','Use\x20`','trim','API\x20directory\x20path\x20for\x20this\x20workspace\x20app\x20profile','string','use','pageSize','initialized','Default\x20output\x20format\x20for\x20this\x20workspace\x20app\x20profile','format','apiDir','150624KPxwod','Target\x20environment'];a215_0x4fd7=function(){return _0x2c6933;};return a215_0x4fd7();}const workspaceInitDefinition={'service':a215_0x2ee0a9(0x1cb),'command':a215_0x2ee0a9(0x1ca),'description':'Initialize\x20the\x20current\x20workspace\x20app\x20binding','risk':a215_0x2ee0a9(0x1cf),'requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x558f0a=>configureWorkspace(_0x558f0a,a215_0x2ee0a9(0x1ca))},workspaceUseDefinition={'service':a215_0x2ee0a9(0x1cb),'command':a215_0x2ee0a9(0x1da),'description':'Switch\x20the\x20current\x20workspace\x20app\x20binding','risk':a215_0x2ee0a9(0x1cf),'requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x2ece4d=>configureWorkspace(_0x2ece4d,'use')};export const workspaceDefinitions=[workspaceInitDefinition,workspaceUseDefinition,workspaceAddDefinition,workspaceRemoveDefinition];export{WORKSPACE_USAGE};
1
+ const a215_0x288320=a215_0x4b12;(function(_0x3e283a,_0x4261bd){const _0x5550f0=a215_0x4b12,_0x42be80=_0x3e283a();while(!![]){try{const _0x2b8083=parseInt(_0x5550f0(0x17b))/0x1+parseInt(_0x5550f0(0x16e))/0x2*(parseInt(_0x5550f0(0x162))/0x3)+parseInt(_0x5550f0(0x15a))/0x4*(-parseInt(_0x5550f0(0x16b))/0x5)+-parseInt(_0x5550f0(0x178))/0x6*(-parseInt(_0x5550f0(0x188))/0x7)+-parseInt(_0x5550f0(0x171))/0x8+-parseInt(_0x5550f0(0x177))/0x9*(-parseInt(_0x5550f0(0x18d))/0xa)+parseInt(_0x5550f0(0x172))/0xb;if(_0x2b8083===_0x4261bd)break;else _0x42be80['push'](_0x42be80['shift']());}catch(_0x44ac49){_0x42be80['push'](_0x42be80['shift']());}}}(a215_0x4891,0x2c794));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';function a215_0x4891(){const _0x4eac55=['167302Ralqsj','Invalid\x20appcode:\x20','object','801848UmGOqY','2683813eNUjQT','Switch\x20the\x20current\x20workspace\x20app\x20binding','\x20(appcode:\x20','App\x20locale\x20for\x20this\x20workspace\x20app\x20profile\x20(not\x20CLI\x20language;\x20reserved\x20for\x20later\x20app\x20use)','app','153knIFmH','30264dNGHzp','API\x20directory\x20path\x20for\x20this\x20workspace\x20app\x20profile','use','7095WocuAM','env','App\x20profile\x20name\x20to\x20use\x20in\x20this\x20workspace','\x20--app\x20','trim','updated','defaultFormat','riskLevel','Missing\x20workspace\x20app\x20selector.','locale','Risk\x20level\x20for\x20this\x20workspace\x20app\x20profile','\x20workspace\x20<init|use>\x20--app\x20<name>\x20[--appcode\x20<code>]','.\x20Credentials:\x20not\x20written.','28CDdQOl','\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20`','apiDir','isArray','project','89730jFCnKt','write','Use\x20`','join','workspace.','Initialize\x20the\x20current\x20workspace\x20app\x20binding','workspace','Default\x20page\x20size\x20for\x20this\x20workspace\x20app\x20profile','initialized','keys','4bifSwv','\x20--appcode\x20<code>`.','validation','format','flag','Workspace\x20','Default\x20output\x20format\x20for\x20this\x20workspace\x20app\x20profile',').\x20Config:\x20','6mjNDoj','Pass\x20--appcode\x20<code>,\x20or\x20choose\x20one\x20of:\x20','App\x20code\x20to\x20bind\x20to\x20this\x20workspace','\x20workspace\x20use\x20--app\x20<name>`.','init','apps','pageSize','string','appcode','1543510nsVclN','str','number'];a215_0x4891=function(){return _0x4eac55;};return a215_0x4891();}import{normalizeStoredDefaultApp}from'../../config/schema.js';const WORKSPACE_USAGE=CLI_BIN_NAME+a215_0x288320(0x186),SAFE_PROFILE_KEYS=[a215_0x288320(0x16a),a215_0x288320(0x17c),'apiDir',a215_0x288320(0x15d),a215_0x288320(0x168),a215_0x288320(0x182),'locale'],workspaceFlags=[{'name':a215_0x288320(0x176),'type':'string','description':a215_0x288320(0x17d)},{'name':a215_0x288320(0x16a),'type':'string','description':a215_0x288320(0x164)},{'name':a215_0x288320(0x17c),'type':a215_0x288320(0x169),'description':'Target\x20environment','enum':[...RABETBASE_ENV_VALUES]},{'name':a215_0x288320(0x18a),'type':a215_0x288320(0x169),'description':a215_0x288320(0x179)},{'name':a215_0x288320(0x181),'type':a215_0x288320(0x169),'description':a215_0x288320(0x160),'enum':[...RABETBASE_OUTPUT_FORMAT_VALUES]},{'name':a215_0x288320(0x168),'type':a215_0x288320(0x16d),'description':a215_0x288320(0x194)},{'name':'riskLevel','type':'string','description':a215_0x288320(0x185),'enum':[...RISK_LEVEL_VALUES]},{'name':a215_0x288320(0x184),'type':a215_0x288320(0x169),'description':a215_0x288320(0x175)}];function isRecord(_0x4676b5){const _0x5a58fc=a215_0x288320;return!!_0x4676b5&&typeof _0x4676b5===_0x5a58fc(0x170)&&!Array[_0x5a58fc(0x18b)](_0x4676b5);}function assertValidAppcode(_0x538856){const _0xb2172c=a215_0x288320,{valid:_0x1fb11e,message:_0x4da2ac}=validateAppcode(_0x538856);if(!_0x1fb11e)throw CliErrors['validation'](_0xb2172c(0x16f)+_0x538856,_0x4da2ac);}function sanitizeProfile(_0x2d7f72){if(!isRecord(_0x2d7f72))return{};const _0xd76e8d={};for(const _0x323f16 of SAFE_PROFILE_KEYS){if(_0x2d7f72[_0x323f16]!==undefined)_0xd76e8d[_0x323f16]=_0x2d7f72[_0x323f16];}return _0xd76e8d;}function cloneProfile(_0x2e00e0){return isRecord(_0x2e00e0)?{..._0x2e00e0}:{};}function collectWorkspaceProfileOverrides(_0x53f2df){const _0x4ebbe9=a215_0x288320,_0xe54f27={},_0xb64272=_0x53f2df[_0x4ebbe9(0x16c)](_0x4ebbe9(0x17c)),_0x562cb0=_0x53f2df['str']('apiDir'),_0x544005=_0x53f2df[_0x4ebbe9(0x16c)]('defaultFormat'),_0x2f4daa=_0x53f2df[_0x4ebbe9(0x15e)](_0x4ebbe9(0x168)),_0x5a4eff=_0x53f2df[_0x4ebbe9(0x16c)]('riskLevel'),_0x55db3a=_0x53f2df['str'](_0x4ebbe9(0x184));if(_0xb64272)_0xe54f27[_0x4ebbe9(0x17c)]=_0xb64272;if(_0x562cb0)_0xe54f27[_0x4ebbe9(0x18a)]=_0x562cb0;if(_0x544005)_0xe54f27['format']=_0x544005;if(_0x2f4daa!==undefined&&_0x2f4daa!=='')_0xe54f27[_0x4ebbe9(0x168)]=Number(_0x2f4daa);if(_0x5a4eff)_0xe54f27['riskLevel']=_0x5a4eff;if(_0x55db3a)_0xe54f27['locale']=_0x55db3a;return _0xe54f27;}async function validateWorkspaceArgs(_0x224913){const _0x8919ea=a215_0x288320,_0x4c6c2b=_0x224913[_0x8919ea(0x16c)](_0x8919ea(0x176))[_0x8919ea(0x17f)](),_0xd24507=_0x224913[_0x8919ea(0x16c)]('appcode')[_0x8919ea(0x17f)]();if(!_0x4c6c2b&&!_0xd24507)throw CliErrors[_0x8919ea(0x15c)](_0x8919ea(0x183),_0x8919ea(0x18f)+CLI_BIN_NAME+_0x8919ea(0x189)+CLI_BIN_NAME+_0x8919ea(0x165));if(_0xd24507)assertValidAppcode(_0xd24507);}function resolveKnownApps(){const _0x5a0fd6=a215_0x288320,{config:_0x4287db,layers:_0x9906d1}=readRawConfigWithLayers(),_0x253ade=isRecord(_0x4287db[_0x5a0fd6(0x167)])?_0x4287db[_0x5a0fd6(0x167)]:{},_0x379939=isRecord(_0x9906d1['globalConfig']['apps'])?_0x9906d1['globalConfig'][_0x5a0fd6(0x167)]:{};return{..._0x379939,..._0x253ade};}function a215_0x4b12(_0x323dab,_0x28c5ce){_0x323dab=_0x323dab-0x159;const _0x48913b=a215_0x4891();let _0x4b12a6=_0x48913b[_0x323dab];return _0x4b12a6;}async function configureWorkspace(_0xe1c9c0,_0x59d726){const _0x3fd628=a215_0x288320,_0x18ffc7=_0xe1c9c0[_0x3fd628(0x16c)]('app')['trim'](),_0x4381c7=_0xe1c9c0['str'](_0x3fd628(0x16a))[_0x3fd628(0x17f)](),_0x10cbba=_0x18ffc7||_0x4381c7;if(!_0x10cbba)throw CliErrors[_0x3fd628(0x15c)](_0x3fd628(0x183),'Use\x20`'+CLI_BIN_NAME+'\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20`'+CLI_BIN_NAME+_0x3fd628(0x165));if(_0x4381c7)assertValidAppcode(_0x4381c7);const _0x34327f=resolveWriteConfigPath(_0x3fd628(0x18c)),_0x25f861=readConfigFile(_0x34327f),_0x970495=resolveKnownApps(),_0x560557=isRecord(_0x25f861['apps'])?{..._0x25f861['apps']}:{},_0x31d6ca=cloneProfile(_0x560557[_0x10cbba]),_0x517ae1=sanitizeProfile(_0x970495[_0x10cbba]),_0x4972f2=_0x4381c7?{}:_0x517ae1,_0x5cd1c3=_0x4381c7||_0x4972f2[_0x3fd628(0x16a)];if(!_0x5cd1c3){const _0x3d4452=Object[_0x3fd628(0x159)](_0x970495),_0x378691=_0x3d4452['length']===0x0?_0x3fd628(0x18f)+CLI_BIN_NAME+'\x20workspace\x20'+_0x59d726+_0x3fd628(0x17e)+_0x10cbba+_0x3fd628(0x15b):_0x3fd628(0x163)+_0x3d4452[_0x3fd628(0x190)](',\x20');throw CliErrors[_0x3fd628(0x15c)]('App\x20\x22'+_0x10cbba+'\x22\x20not\x20found.',_0x378691);}assertValidAppcode(String(_0x5cd1c3));const _0x194c03={..._0x4972f2,..._0x31d6ca,'appcode':String(_0x5cd1c3),...collectWorkspaceProfileOverrides(_0xe1c9c0)};return _0x560557[_0x10cbba]=_0x194c03,_0x25f861[_0x3fd628(0x167)]=_0x560557,normalizeStoredDefaultApp(_0x25f861,_0x10cbba),delete _0x25f861[_0x3fd628(0x16a)],delete _0x25f861[_0x3fd628(0x176)],_0x194c03['env']&&(_0x25f861[_0x3fd628(0x17c)]=_0x194c03[_0x3fd628(0x17c)]),writeConfigFile(_0x34327f,_0x25f861),{'ok':!![],'message':_0x3fd628(0x15f)+(_0x59d726===_0x3fd628(0x166)?_0x3fd628(0x195):_0x3fd628(0x180))+':\x20'+_0x10cbba+_0x3fd628(0x174)+_0x194c03[_0x3fd628(0x16a)]+_0x3fd628(0x161)+_0x34327f+_0x3fd628(0x187),'data':{'operation':_0x3fd628(0x191)+_0x59d726,'configPath':_0x34327f,'app':_0x10cbba,'appcode':_0x194c03[_0x3fd628(0x16a)],'env':_0x194c03[_0x3fd628(0x17c)]??null,'credentialsWritten':![]}};}const workspaceInitDefinition={'service':'workspace','command':a215_0x288320(0x166),'description':a215_0x288320(0x192),'risk':a215_0x288320(0x18e),'requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x1a4f8f=>configureWorkspace(_0x1a4f8f,a215_0x288320(0x166))},workspaceUseDefinition={'service':a215_0x288320(0x193),'command':'use','description':a215_0x288320(0x173),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x4ab3aa=>configureWorkspace(_0x4ab3aa,a215_0x288320(0x17a))};export const workspaceDefinitions=[workspaceInitDefinition,workspaceUseDefinition,workspaceAddDefinition,workspaceRemoveDefinition];export{WORKSPACE_USAGE};
@@ -1 +1 @@
1
- const a216_0x866b4d=a216_0x2149;function a216_0x5824(){const _0x39e5a0=['workspace','workspace\x20remove','164773lxgsyP','write','24kNYIVC','Remove\x20an\x20app\x20profile\x20from\x20the\x20current\x20workspace\x20(or\x20--global)','6519684BlNxTf','5mufEzD','remove','52bnPUlQ','340278dMekAr','name','300210JbpfbG','App\x20profile\x20name\x20to\x20remove','11pDnmOA','9pYPTMr','233814tJEtRa','23697UBnqNs','443740VzFDak'];a216_0x5824=function(){return _0x39e5a0;};return a216_0x5824();}function a216_0x2149(_0x3c3e2d,_0x189b9b){_0x3c3e2d=_0x3c3e2d-0x129;const _0x58249c=a216_0x5824();let _0x2149a1=_0x58249c[_0x3c3e2d];return _0x2149a1;}(function(_0x390c59,_0x4d361e){const _0x3fb5aa=a216_0x2149,_0x1c880e=_0x390c59();while(!![]){try{const _0x73d6b9=-parseInt(_0x3fb5aa(0x12b))/0x1+parseInt(_0x3fb5aa(0x136))/0x2+-parseInt(_0x3fb5aa(0x12a))/0x3*(parseInt(_0x3fb5aa(0x135))/0x4)+parseInt(_0x3fb5aa(0x133))/0x5*(parseInt(_0x3fb5aa(0x129))/0x6)+-parseInt(_0x3fb5aa(0x12e))/0x7*(-parseInt(_0x3fb5aa(0x130))/0x8)+-parseInt(_0x3fb5aa(0x13b))/0x9*(parseInt(_0x3fb5aa(0x138))/0xa)+parseInt(_0x3fb5aa(0x13a))/0xb*(parseInt(_0x3fb5aa(0x132))/0xc);if(_0x73d6b9===_0x4d361e)break;else _0x1c880e['push'](_0x1c880e['shift']());}catch(_0x1a3865){_0x1c880e['push'](_0x1c880e['shift']());}}}(a216_0x5824,0x3c338));import{buildAppRemoveFlags,runAppRemove,validateAppName}from'../../commands/common/app-registry.js';export const workspaceRemoveDefinition={'service':a216_0x866b4d(0x12c),'command':a216_0x866b4d(0x134),'description':a216_0x866b4d(0x131),'risk':a216_0x866b4d(0x12f),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a216_0x866b4d(0x137),'description':a216_0x866b4d(0x139),'required':!![]}],'flags':buildAppRemoveFlags(),'validate':_0x271bf6=>validateAppName(_0x271bf6,a216_0x866b4d(0x12d)),'execute':_0x1ef26c=>runAppRemove(_0x1ef26c,a216_0x866b4d(0x12d))};
1
+ const a216_0x51d80b=a216_0x5e65;(function(_0x2ed620,_0x308468){const _0x53db67=a216_0x5e65,_0x39cad4=_0x2ed620();while(!![]){try{const _0x42c570=-parseInt(_0x53db67(0xc3))/0x1+parseInt(_0x53db67(0xc6))/0x2+-parseInt(_0x53db67(0xcc))/0x3*(parseInt(_0x53db67(0xcf))/0x4)+-parseInt(_0x53db67(0xca))/0x5+parseInt(_0x53db67(0xcb))/0x6+-parseInt(_0x53db67(0xc5))/0x7*(-parseInt(_0x53db67(0xd0))/0x8)+parseInt(_0x53db67(0xc8))/0x9*(parseInt(_0x53db67(0xcd))/0xa);if(_0x42c570===_0x308468)break;else _0x39cad4['push'](_0x39cad4['shift']());}catch(_0x2c8aa5){_0x39cad4['push'](_0x39cad4['shift']());}}}(a216_0x2267,0x8dea9));function a216_0x2267(){const _0x32646e=['write','173092EbTIhw','40ZlPBNs','570396iMbRGE','name','788158lkyTHA','1359904ZGmcsV','workspace\x20remove','197199tCEAII','Remove\x20an\x20app\x20profile\x20from\x20the\x20current\x20workspace\x20(or\x20--global)','4778270nKzskZ','2642532UhHUlG','42JdJnLB','470WJKyEi'];a216_0x2267=function(){return _0x32646e;};return a216_0x2267();}function a216_0x5e65(_0x1a4589,_0x3c6beb){_0x1a4589=_0x1a4589-0xc3;const _0x22679b=a216_0x2267();let _0x5e657f=_0x22679b[_0x1a4589];return _0x5e657f;}import{buildAppRemoveFlags,runAppRemove,validateAppName}from'../../commands/common/app-registry.js';export const workspaceRemoveDefinition={'service':'workspace','command':'remove','description':a216_0x51d80b(0xc9),'risk':a216_0x51d80b(0xce),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a216_0x51d80b(0xc4),'description':'App\x20profile\x20name\x20to\x20remove','required':!![]}],'flags':buildAppRemoveFlags(),'validate':_0x31091a=>validateAppName(_0x31091a,'workspace\x20remove'),'execute':_0x5ae980=>runAppRemove(_0x5ae980,a216_0x51d80b(0xc7))};