@lovrabet/rabetbase-cli 2.3.16-beta.7 → 2.4.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 (435) hide show
  1. package/README.md +4 -10
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-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/get.js +1 -1
  53. package/lib/commands/config/index.js +1 -1
  54. package/lib/commands/config/list.js +1 -1
  55. package/lib/commands/config/set.js +1 -1
  56. package/lib/commands/config/shared.js +1 -1
  57. package/lib/commands/data/filter.js +1 -1
  58. package/lib/commands/data/getOne.js +1 -1
  59. package/lib/commands/data/index.js +1 -1
  60. package/lib/commands/data/shared.js +1 -1
  61. package/lib/commands/dataset/business-group-update.js +1 -1
  62. package/lib/commands/dataset/capability.js +1 -1
  63. package/lib/commands/dataset/delete.js +1 -1
  64. package/lib/commands/dataset/detail.js +1 -1
  65. package/lib/commands/dataset/extend-update.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/db/analysis-batching.js +1 -1
  80. package/lib/commands/db/analyze-batch-plan.js +1 -1
  81. package/lib/commands/db/analyze-cancel.js +1 -1
  82. package/lib/commands/db/analyze-start.js +1 -1
  83. package/lib/commands/db/analyze-status.js +1 -1
  84. package/lib/commands/db/create.js +1 -1
  85. package/lib/commands/db/delete.js +1 -1
  86. package/lib/commands/db/detail.js +1 -1
  87. package/lib/commands/db/diff.js +1 -1
  88. package/lib/commands/db/index.js +1 -1
  89. package/lib/commands/db/list.js +1 -1
  90. package/lib/commands/db/shared.js +1 -1
  91. package/lib/commands/db/tables.js +1 -1
  92. package/lib/commands/db/test.js +1 -1
  93. package/lib/commands/db/update.js +1 -1
  94. package/lib/commands/doctor.js +1 -1
  95. package/lib/commands/file/index.js +1 -1
  96. package/lib/commands/init/index.js +1 -1
  97. package/lib/commands/issue/index.js +1 -1
  98. package/lib/commands/issue/nudge.js +1 -1
  99. package/lib/commands/issue/report.js +1 -1
  100. package/lib/commands/issue/shared.js +1 -1
  101. package/lib/commands/kb/create.js +1 -1
  102. package/lib/commands/kb/delete.js +1 -1
  103. package/lib/commands/kb/detail.js +1 -1
  104. package/lib/commands/kb/index.js +1 -1
  105. package/lib/commands/kb/list.js +1 -1
  106. package/lib/commands/kb/shared.js +1 -1
  107. package/lib/commands/kb/update.js +1 -1
  108. package/lib/commands/logs/index.js +1 -1
  109. package/lib/commands/menu/asset-update.js +1 -1
  110. package/lib/commands/menu/delete.js +1 -1
  111. package/lib/commands/menu/external-link-create.js +1 -1
  112. package/lib/commands/menu/external-link-update.js +1 -1
  113. package/lib/commands/menu/group-create.js +1 -1
  114. package/lib/commands/menu/group-update.js +1 -1
  115. package/lib/commands/menu/index.js +1 -1
  116. package/lib/commands/menu/list.js +1 -1
  117. package/lib/commands/menu/move.js +1 -1
  118. package/lib/commands/menu/regroup-start.js +1 -1
  119. package/lib/commands/menu/rename.js +1 -1
  120. package/lib/commands/menu/shared/compare-table.js +1 -1
  121. package/lib/commands/menu/shared/delete-plan.js +1 -1
  122. package/lib/commands/menu/shared/facts.js +1 -1
  123. package/lib/commands/menu/shared/index.js +1 -1
  124. package/lib/commands/menu/shared/inquirer.js +1 -1
  125. package/lib/commands/menu/shared/local-pages.js +1 -1
  126. package/lib/commands/menu/shared/logic.js +1 -1
  127. package/lib/commands/menu/shared/mutations.js +1 -1
  128. package/lib/commands/menu/shared/service.js +1 -1
  129. package/lib/commands/menu/shared/sync-core.js +1 -1
  130. package/lib/commands/menu/shared/update-core.js +1 -1
  131. package/lib/commands/menu/shared/valid-url.js +1 -1
  132. package/lib/commands/menu/sync.js +1 -1
  133. package/lib/commands/notification/config-list.js +1 -1
  134. package/lib/commands/notification/index.js +1 -1
  135. package/lib/commands/ocr/index.js +1 -1
  136. package/lib/commands/page/generate-start.js +1 -1
  137. package/lib/commands/page/generate-status.js +1 -1
  138. package/lib/commands/page/index.js +1 -1
  139. package/lib/commands/page/pull.js +1 -1
  140. package/lib/commands/page/push.js +1 -1
  141. package/lib/commands/page/react/create.d.ts +2 -0
  142. package/lib/commands/page/react/create.js +1 -0
  143. package/lib/commands/page/react/detail.d.ts +2 -0
  144. package/lib/commands/page/react/detail.js +1 -0
  145. package/lib/commands/page/react/list.d.ts +2 -0
  146. package/lib/commands/page/react/list.js +1 -0
  147. package/lib/commands/page/react/publish.d.ts +2 -0
  148. package/lib/commands/page/react/publish.js +1 -0
  149. package/lib/commands/page/react/shared.d.ts +78 -0
  150. package/lib/commands/page/react/shared.js +1 -0
  151. package/lib/commands/page/react/syntax.d.ts +18 -0
  152. package/lib/commands/page/react/syntax.js +1 -0
  153. package/lib/commands/page/react/template.d.ts +8 -0
  154. package/lib/commands/page/react/template.js +1 -0
  155. package/lib/commands/page/react/update.d.ts +2 -0
  156. package/lib/commands/page/react/update.js +1 -0
  157. package/lib/commands/page/relation-audit.js +1 -1
  158. package/lib/commands/page/restore.js +1 -1
  159. package/lib/commands/page/shared.d.ts +1 -0
  160. package/lib/commands/page/shared.js +1 -1
  161. package/lib/commands/page/standard-page-status.js +1 -1
  162. package/lib/commands/page/sync.js +1 -1
  163. package/lib/commands/permit/index.js +1 -1
  164. package/lib/commands/permit/page-get.js +1 -1
  165. package/lib/commands/permit/page-set.js +1 -1
  166. package/lib/commands/permit/role-apis-set.js +1 -1
  167. package/lib/commands/permit/role-menus-set.js +1 -1
  168. package/lib/commands/permit/role-menus.js +1 -1
  169. package/lib/commands/permit/shared.js +1 -1
  170. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  171. package/lib/commands/project/create/format-elapsed.js +1 -1
  172. package/lib/commands/project/create/main.js +1 -1
  173. package/lib/commands/project/create/non-interactive.js +1 -1
  174. package/lib/commands/project/create/project-template-path.js +1 -1
  175. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  176. package/lib/commands/project/create/use-format-code.js +1 -1
  177. package/lib/commands/project/create/use-install-dependencies.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/create.js +1 -1
  182. package/lib/commands/role/delete.js +1 -1
  183. package/lib/commands/role/detail.js +1 -1
  184. package/lib/commands/role/index.js +1 -1
  185. package/lib/commands/role/list.js +1 -1
  186. package/lib/commands/role/shared.js +1 -1
  187. package/lib/commands/role/update.js +1 -1
  188. package/lib/commands/role/user-add.js +1 -1
  189. package/lib/commands/role/user-remove.js +1 -1
  190. package/lib/commands/role/user-resolve.js +1 -1
  191. package/lib/commands/run/index.js +1 -1
  192. package/lib/commands/schema.js +1 -1
  193. package/lib/commands/sql/create.js +1 -1
  194. package/lib/commands/sql/delete.js +1 -1
  195. package/lib/commands/sql/detail.js +1 -1
  196. package/lib/commands/sql/exec.js +1 -1
  197. package/lib/commands/sql/index.js +1 -1
  198. package/lib/commands/sql/list.js +1 -1
  199. package/lib/commands/sql/pull.js +1 -1
  200. package/lib/commands/sql/push.js +1 -1
  201. package/lib/commands/sql/shared.js +1 -1
  202. package/lib/commands/sql/status.js +1 -1
  203. package/lib/commands/sql/validate.js +1 -1
  204. package/lib/commands/task/index.js +1 -1
  205. package/lib/commands/task/status.js +1 -1
  206. package/lib/commands/tenant/index.js +1 -1
  207. package/lib/commands/tenant/members-list.js +1 -1
  208. package/lib/commands/tenant/shared.js +1 -1
  209. package/lib/commands/user-account/dingding-sandbox-bind.d.ts +2 -0
  210. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -0
  211. package/lib/commands/user-account/index.d.ts +2 -0
  212. package/lib/commands/user-account/index.js +1 -0
  213. package/lib/commands/workspace/add.js +1 -1
  214. package/lib/commands/workspace/index.js +1 -1
  215. package/lib/commands/workspace/remove.js +1 -1
  216. package/lib/config/schema.js +1 -1
  217. package/lib/constant/cdn.js +1 -1
  218. package/lib/constant/cli.js +1 -1
  219. package/lib/constant/defaults.js +1 -1
  220. package/lib/constant/domain.js +1 -1
  221. package/lib/constant/env.js +1 -1
  222. package/lib/constant/output.js +1 -1
  223. package/lib/constant/paths.js +1 -1
  224. package/lib/constant/risk.js +1 -1
  225. package/lib/context/app-resolver.js +1 -1
  226. package/lib/context/auth-resolver.js +1 -1
  227. package/lib/context/config-loader.js +1 -1
  228. package/lib/context.js +1 -1
  229. package/lib/core/alias-resolver.js +1 -1
  230. package/lib/core/api-client.d.ts +117 -0
  231. package/lib/core/api-client.js +1 -1
  232. package/lib/core/bff/config.js +1 -1
  233. package/lib/core/bff/file-system.js +1 -1
  234. package/lib/core/bff/hash.js +1 -1
  235. package/lib/core/bff/lock.js +1 -1
  236. package/lib/core/bff/utils.js +1 -1
  237. package/lib/core/db-resolver.js +1 -1
  238. package/lib/core/page/file-system.js +1 -1
  239. package/lib/core/page/hash.js +1 -1
  240. package/lib/core/page/lock.js +1 -1
  241. package/lib/core/sql-index-auditor.js +1 -1
  242. package/lib/core/sql-sync/config.js +1 -1
  243. package/lib/core/sql-sync/file-system.js +1 -1
  244. package/lib/core/sql-sync/hash.js +1 -1
  245. package/lib/core/sql-sync/lock.js +1 -1
  246. package/lib/core/sql-sync/utils.js +1 -1
  247. package/lib/core/sql-validator.js +1 -1
  248. package/lib/errors.js +1 -1
  249. package/lib/framework/build-all-flags.js +1 -1
  250. package/lib/framework/error-output.js +1 -1
  251. package/lib/framework/explicit-yes.js +1 -1
  252. package/lib/framework/flags.js +1 -1
  253. package/lib/framework/help.js +1 -1
  254. package/lib/framework/index.js +1 -1
  255. package/lib/framework/output.js +1 -1
  256. package/lib/framework/response.js +1 -1
  257. package/lib/framework/runner-alias.js +1 -1
  258. package/lib/framework/runner.js +1 -1
  259. package/lib/framework/schema-export.js +1 -1
  260. package/lib/framework/types.js +1 -1
  261. package/lib/generated/build-info.d.ts +4 -4
  262. package/lib/generated/build-info.js +1 -1
  263. package/lib/help.js +1 -1
  264. package/lib/postinstall.d.ts +3 -0
  265. package/lib/postinstall.js +1 -0
  266. package/lib/runtime/confirmation.js +1 -1
  267. package/lib/runtime/event.js +1 -1
  268. package/lib/runtime/index.js +1 -1
  269. package/lib/runtime/queue.js +1 -1
  270. package/lib/runtime/resolve.js +1 -1
  271. package/lib/skills/builtin-skill.d.ts +37 -0
  272. package/lib/skills/builtin-skill.js +1 -0
  273. package/lib/skills/main.js +1 -1
  274. package/lib/skills/npx-skills-add.d.ts +4 -2
  275. package/lib/skills/npx-skills-add.js +1 -1
  276. package/lib/skills/skill-presence.js +1 -1
  277. package/lib/telemetry/cli-command-trace.js +1 -1
  278. package/lib/telemetry/cli-help-trace.js +1 -1
  279. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  280. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  281. package/lib/telemetry/send-cli-trace-log.js +1 -1
  282. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  283. package/lib/utils/ai_config.js +1 -1
  284. package/lib/utils/apply-jq-filter.js +1 -1
  285. package/lib/utils/cdn-config.js +1 -1
  286. package/lib/utils/check-sdk-version.js +1 -1
  287. package/lib/utils/cli-version-check.js +1 -1
  288. package/lib/utils/cli-version-policy.js +1 -1
  289. package/lib/utils/config.js +1 -1
  290. package/lib/utils/copy-directory.js +1 -1
  291. package/lib/utils/entity-with-id.js +1 -1
  292. package/lib/utils/file-utils.js +1 -1
  293. package/lib/utils/guides-cdn.js +1 -1
  294. package/lib/utils/http-client.js +1 -1
  295. package/lib/utils/is-non-interactive.js +1 -1
  296. package/lib/utils/logger.js +1 -1
  297. package/lib/utils/params.js +1 -1
  298. package/lib/utils/platform.js +1 -1
  299. package/lib/utils/rules-cdn.js +1 -1
  300. package/lib/utils/sleep.js +1 -1
  301. package/lib/utils/template-replacer.js +1 -1
  302. package/lib/utils/update-notice.js +1 -1
  303. package/lib/utils/version.js +1 -1
  304. package/lib/utils/with-active-cookie.js +1 -1
  305. package/lib/utils/write-cli-side-channel.js +1 -1
  306. package/package.json +9 -3
  307. package/scripts/postinstall.mjs +24 -0
  308. package/skills/rabetbase/SKILL.md +493 -0
  309. package/skills/rabetbase/guides/backend-function.md +835 -0
  310. package/skills/rabetbase/guides/best-practices.md +137 -0
  311. package/skills/rabetbase/guides/bff-creation-workflow.md +148 -0
  312. package/skills/rabetbase/guides/conflict-detection.md +119 -0
  313. package/skills/rabetbase/guides/data-api-guidelines.md +414 -0
  314. package/skills/rabetbase/guides/database-connection-workflow.md +169 -0
  315. package/skills/rabetbase/guides/frontend-development.md +179 -0
  316. package/skills/rabetbase/guides/legacy-application-blueprint-workflow.md +495 -0
  317. package/skills/rabetbase/guides/menu-anomaly-manual-cleanup.md +137 -0
  318. package/skills/rabetbase/guides/page-development-workflow.md +187 -0
  319. package/skills/rabetbase/guides/react-custom-page-workflow.md +184 -0
  320. package/skills/rabetbase/guides/role-permit-workflow.md +127 -0
  321. package/skills/rabetbase/guides/sql-creation-workflow.md +173 -0
  322. package/skills/rabetbase/guides/sql-mybatis.md +126 -0
  323. package/skills/rabetbase/guides/troubleshooting.md +67 -0
  324. package/skills/rabetbase/guides/typescript-sdk.md +227 -0
  325. package/skills/rabetbase/knowledge/page-schema/LrSmartCreate.md +367 -0
  326. package/skills/rabetbase/knowledge/page-schema/LrSmartDetail.md +153 -0
  327. package/skills/rabetbase/knowledge/page-schema/LrSmartEcharts.md +291 -0
  328. package/skills/rabetbase/knowledge/page-schema/LrSmartFilter.md +478 -0
  329. package/skills/rabetbase/knowledge/page-schema/LrSmartJsx.md +119 -0
  330. package/skills/rabetbase/knowledge/page-schema/LrSmartStatistic.md +223 -0
  331. package/skills/rabetbase/knowledge/page-schema/LrSmartTable.md +632 -0
  332. package/skills/rabetbase/knowledge/page-schema/YtPage.md +172 -0
  333. package/skills/rabetbase/knowledge/page-schema/dataset-relations.md +126 -0
  334. package/skills/rabetbase/knowledge/page-schema/external-resources-usage.md +232 -0
  335. package/skills/rabetbase/knowledge/page-schema/field-components.md +312 -0
  336. package/skills/rabetbase/knowledge/page-schema/syntax-reference.md +278 -0
  337. package/skills/rabetbase/knowledge/react-page/components.md +225 -0
  338. package/skills/rabetbase/knowledge/react-page/generation-standards.md +385 -0
  339. package/skills/rabetbase/references/rabetbase-api-list.md +58 -0
  340. package/skills/rabetbase/references/rabetbase-api-pull.md +82 -0
  341. package/skills/rabetbase/references/rabetbase-app-config.md +95 -0
  342. package/skills/rabetbase/references/rabetbase-app-list.md +79 -0
  343. package/skills/rabetbase/references/rabetbase-app-members-list.md +64 -0
  344. package/skills/rabetbase/references/rabetbase-auth-login.md +53 -0
  345. package/skills/rabetbase/references/rabetbase-auth-logout.md +29 -0
  346. package/skills/rabetbase/references/rabetbase-bff-create.md +59 -0
  347. package/skills/rabetbase/references/rabetbase-bff-delete.md +42 -0
  348. package/skills/rabetbase/references/rabetbase-bff-detail.md +38 -0
  349. package/skills/rabetbase/references/rabetbase-bff-list.md +61 -0
  350. package/skills/rabetbase/references/rabetbase-bff-pull.md +42 -0
  351. package/skills/rabetbase/references/rabetbase-bff-push.md +65 -0
  352. package/skills/rabetbase/references/rabetbase-bff-save.md +63 -0
  353. package/skills/rabetbase/references/rabetbase-bff-status.md +37 -0
  354. package/skills/rabetbase/references/rabetbase-cli-skill-install.md +42 -0
  355. package/skills/rabetbase/references/rabetbase-codegen-sdk.md +35 -0
  356. package/skills/rabetbase/references/rabetbase-codegen-sql.md +33 -0
  357. package/skills/rabetbase/references/rabetbase-config.md +296 -0
  358. package/skills/rabetbase/references/rabetbase-dataset-business-group-update.md +84 -0
  359. package/skills/rabetbase/references/rabetbase-dataset-delete.md +54 -0
  360. package/skills/rabetbase/references/rabetbase-dataset-detail.md +106 -0
  361. package/skills/rabetbase/references/rabetbase-dataset-extend-update.md +70 -0
  362. package/skills/rabetbase/references/rabetbase-dataset-field-update.md +117 -0
  363. package/skills/rabetbase/references/rabetbase-dataset-generate.md +206 -0
  364. package/skills/rabetbase/references/rabetbase-dataset-list.md +42 -0
  365. package/skills/rabetbase/references/rabetbase-dataset-operations.md +34 -0
  366. package/skills/rabetbase/references/rabetbase-dataset-relation-audit.md +63 -0
  367. package/skills/rabetbase/references/rabetbase-dataset-relation-mutations.md +141 -0
  368. package/skills/rabetbase/references/rabetbase-dataset-relations.md +71 -0
  369. package/skills/rabetbase/references/rabetbase-dataset-rename.md +107 -0
  370. package/skills/rabetbase/references/rabetbase-dataset-restore.md +54 -0
  371. package/skills/rabetbase/references/rabetbase-db-analyze.md +135 -0
  372. package/skills/rabetbase/references/rabetbase-db-create.md +54 -0
  373. package/skills/rabetbase/references/rabetbase-db-delete.md +26 -0
  374. package/skills/rabetbase/references/rabetbase-db-detail.md +27 -0
  375. package/skills/rabetbase/references/rabetbase-db-diff.md +57 -0
  376. package/skills/rabetbase/references/rabetbase-db-list.md +37 -0
  377. package/skills/rabetbase/references/rabetbase-db-tables.md +25 -0
  378. package/skills/rabetbase/references/rabetbase-db-test.md +29 -0
  379. package/skills/rabetbase/references/rabetbase-db-update.md +29 -0
  380. package/skills/rabetbase/references/rabetbase-doctor.md +62 -0
  381. package/skills/rabetbase/references/rabetbase-file.md +35 -0
  382. package/skills/rabetbase/references/rabetbase-init.md +70 -0
  383. package/skills/rabetbase/references/rabetbase-issue-report.md +132 -0
  384. package/skills/rabetbase/references/rabetbase-kb.md +62 -0
  385. package/skills/rabetbase/references/rabetbase-menu-asset-update.md +135 -0
  386. package/skills/rabetbase/references/rabetbase-menu-delete.md +54 -0
  387. package/skills/rabetbase/references/rabetbase-menu-external-link-create.md +63 -0
  388. package/skills/rabetbase/references/rabetbase-menu-external-link-update.md +74 -0
  389. package/skills/rabetbase/references/rabetbase-menu-group-create.md +33 -0
  390. package/skills/rabetbase/references/rabetbase-menu-group-update.md +38 -0
  391. package/skills/rabetbase/references/rabetbase-menu-list.md +144 -0
  392. package/skills/rabetbase/references/rabetbase-menu-move.md +54 -0
  393. package/skills/rabetbase/references/rabetbase-menu-regroup-start.md +45 -0
  394. package/skills/rabetbase/references/rabetbase-menu-rename.md +48 -0
  395. package/skills/rabetbase/references/rabetbase-menu-sync.md +60 -0
  396. package/skills/rabetbase/references/rabetbase-notification-config-list.md +80 -0
  397. package/skills/rabetbase/references/rabetbase-ocr.md +86 -0
  398. package/skills/rabetbase/references/rabetbase-page-generate-start.md +32 -0
  399. package/skills/rabetbase/references/rabetbase-page-generate-status.md +32 -0
  400. package/skills/rabetbase/references/rabetbase-page-pull.md +47 -0
  401. package/skills/rabetbase/references/rabetbase-page-push.md +45 -0
  402. package/skills/rabetbase/references/rabetbase-page-react-create.md +29 -0
  403. package/skills/rabetbase/references/rabetbase-page-react-detail.md +26 -0
  404. package/skills/rabetbase/references/rabetbase-page-react-list.md +23 -0
  405. package/skills/rabetbase/references/rabetbase-page-react-publish.md +23 -0
  406. package/skills/rabetbase/references/rabetbase-page-react-update.md +24 -0
  407. package/skills/rabetbase/references/rabetbase-page-relation-binding.md +72 -0
  408. package/skills/rabetbase/references/rabetbase-page-restore.md +45 -0
  409. package/skills/rabetbase/references/rabetbase-page-sync.md +36 -0
  410. package/skills/rabetbase/references/rabetbase-permit-page-set.md +69 -0
  411. package/skills/rabetbase/references/rabetbase-permit-role-apis-set.md +53 -0
  412. package/skills/rabetbase/references/rabetbase-permit-role-menus-set.md +57 -0
  413. package/skills/rabetbase/references/rabetbase-project-create.md +46 -0
  414. package/skills/rabetbase/references/rabetbase-project-upgrade.md +57 -0
  415. package/skills/rabetbase/references/rabetbase-role-list.md +68 -0
  416. package/skills/rabetbase/references/rabetbase-role-user-add.md +54 -0
  417. package/skills/rabetbase/references/rabetbase-role-user-resolve.md +27 -0
  418. package/skills/rabetbase/references/rabetbase-run.md +53 -0
  419. package/skills/rabetbase/references/rabetbase-schema.md +22 -0
  420. package/skills/rabetbase/references/rabetbase-sql-create.md +41 -0
  421. package/skills/rabetbase/references/rabetbase-sql-delete.md +37 -0
  422. package/skills/rabetbase/references/rabetbase-sql-detail.md +32 -0
  423. package/skills/rabetbase/references/rabetbase-sql-exec.md +34 -0
  424. package/skills/rabetbase/references/rabetbase-sql-list.md +54 -0
  425. package/skills/rabetbase/references/rabetbase-sql-pull.md +54 -0
  426. package/skills/rabetbase/references/rabetbase-sql-push.md +46 -0
  427. package/skills/rabetbase/references/rabetbase-sql-status.md +39 -0
  428. package/skills/rabetbase/references/rabetbase-sql-validate.md +73 -0
  429. package/skills/rabetbase/references/rabetbase-standard-page-status.md +31 -0
  430. package/skills/rabetbase/references/rabetbase-task-status.md +40 -0
  431. package/skills/rabetbase/references/rabetbase-tenant-members-list.md +69 -0
  432. package/skills/rabetbase/references/rabetbase-update.md +56 -0
  433. package/skills/rabetbase/references/rabetbase-user-account.md +45 -0
  434. package/skills/rabetbase/references/rabetbase-workspace.md +60 -0
  435. package/skills/rabetbase.manifest.json +137 -0
@@ -1 +1 @@
1
- const a181_0x350241=a181_0x20d7;(function(_0x43923f,_0x109345){const _0x23686f=a181_0x20d7,_0x209184=_0x43923f();while(!![]){try{const _0x16a044=parseInt(_0x23686f(0x169))/0x1+parseInt(_0x23686f(0x16e))/0x2*(parseInt(_0x23686f(0x1a3))/0x3)+parseInt(_0x23686f(0x19f))/0x4*(parseInt(_0x23686f(0x1a9))/0x5)+-parseInt(_0x23686f(0x177))/0x6+-parseInt(_0x23686f(0x186))/0x7+-parseInt(_0x23686f(0x185))/0x8+parseInt(_0x23686f(0x196))/0x9;if(_0x16a044===_0x109345)break;else _0x209184['push'](_0x209184['shift']());}catch(_0x3f3571){_0x209184['push'](_0x209184['shift']());}}}(a181_0x2248,0x4d823));import{readFile,rm,writeFile}from'node:fs/promises';import{join}from'node:path';function a181_0x20d7(_0x424603,_0x4a6a5c){_0x424603=_0x424603-0x169;const _0x2248aa=a181_0x2248();let _0x20d7a3=_0x2248aa[_0x424603];return _0x20d7a3;}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 a181_0x2248(){const _0x554a49=['catch','dbId','2912337YwPKPG','name','lockFilePath','bool','\x20failed','push','filter','would_pull','apps','176SAyZWl','Force\x20overwrite\x20local\x20unsynced\x20changes','paging','Would\x20pull\x20','42PxwiVR','appCode','cancelled','\x20skipped,\x20','toISOString','sqlcode','54355FdlIGj','replace','38865cxZpCh','unchanged','boolean','sqlRootDir','sql','27934JuEJUh','force','Filter\x20by\x20SQL\x20display\x20name','str','sqlContent','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','sqlCode','sqlRoot','skipped','650598ACMaBj','trimStart','message','test','pull','description','\x20written,\x20','local\x20differs\x20from\x20remote','lastSync','sqls','join','mybatisXml','read','conflict','4680288HodGxl','177632RNQyfS','split','\x20SQL\x20file(s)\x20into\x20','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','totalCount','path','Force\x20pull\x20cancelled.','length','sqlName','nonInteractive','utf8','tableData','Pull\x20complete:\x20','POST'];a181_0x2248=function(){return _0x554a49;};return a181_0x2248();}import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildLocalSqlFileContent,buildSqlLockEntry,cloneSqlLockData,confirmForceOverwrite,ensureRemoteSqlContent,stripLocalSqlMetadata}from'./shared.js';const PAGE_SIZE=0x64;async function fetchAllSqlQueries(_0x572c91,_0x3b69d9){const _0x3cd0fc=a181_0x20d7,_0x278e04=[];let _0x2402ab=0x1;while(!![]){const _0x26aaf8=await listSqlQueries(_0x572c91,{'currentPage':_0x2402ab,'pageSize':PAGE_SIZE,'sqlCode':_0x3b69d9[_0x3cd0fc(0x174)],'sqlName':_0x3b69d9[_0x3cd0fc(0x18e)]}),_0xe03fb8=_0x26aaf8[_0x3cd0fc(0x191)]??[];_0x278e04[_0x3cd0fc(0x19b)](..._0xe03fb8);if(_0xe03fb8[_0x3cd0fc(0x18d)]===0x0)break;const _0x23e123=_0x26aaf8[_0x3cd0fc(0x1a1)]?.[_0x3cd0fc(0x18a)];if(_0x23e123!=null?_0x278e04[_0x3cd0fc(0x18d)]>=_0x23e123:_0xe03fb8[_0x3cd0fc(0x18d)]<PAGE_SIZE)break;_0x2402ab++;}return _0x278e04;}async function ensureSqlContent(_0x4a4353){const _0x2e825=a181_0x20d7;if(_0x4a4353['sqlContent']!=null&&String(_0x4a4353[_0x2e825(0x172)])[_0x2e825(0x18d)]>0x0)return _0x4a4353;return getSqlQueryDetail(_0x4a4353[_0x2e825(0x174)]);}export const sqlPull={'service':a181_0x350241(0x16d),'command':'pull','description':a181_0x350241(0x189),'risk':a181_0x350241(0x183),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':'name','type':'string','description':a181_0x350241(0x170)},{'name':a181_0x350241(0x16f),'type':a181_0x350241(0x16b),'description':a181_0x350241(0x1a0)}],async 'dryRun'(_0x2ce7c5){const _0x50cc36=a181_0x350241,_0xc667d7=loadSqlProjectConfig(_0x2ce7c5[_0x50cc36(0x1a4)]),_0x2a4d4d=await readSqlLockFile(_0xc667d7[_0x50cc36(0x198)]),{appLock:_0x42aabc}=ensureSqlLockScope(_0x2a4d4d??createEmptySqlLock(),_0xc667d7['appCode'],_0xc667d7[_0x50cc36(0x175)],_0x50cc36(0x17b)),_0x4fc4d8=await fetchAllSqlQueries(_0x2ce7c5[_0x50cc36(0x1a4)],{'sqlCode':_0x2ce7c5[_0x50cc36(0x171)](_0x50cc36(0x1a8))||undefined,'sqlName':_0x2ce7c5[_0x50cc36(0x171)](_0x50cc36(0x197))||undefined}),_0x2692b7=[];for(const _0x40c004 of _0x4fc4d8){const _0x36abc0=await ensureSqlContent(_0x40c004),_0x10b7f4=ensureRemoteSqlContent(_0x36abc0),_0x1f7544=detectModeFromSql(_0x36abc0),_0x229fae=_0x36abc0[_0x50cc36(0x195)]?await getDbName(_0x2ce7c5[_0x50cc36(0x1a4)],Number(_0x36abc0['dbId']))['catch'](()=>undefined):undefined,_0x2fbd51=buildLocalSqlFileContent({'sqlCode':_0x36abc0[_0x50cc36(0x174)],'sqlName':_0x36abc0[_0x50cc36(0x18e)],'dbId':_0x36abc0['dbId']},_0x10b7f4,{'dbName':_0x229fae,'mode':_0x1f7544,'syncedAt':new Date()[_0x50cc36(0x1a7)](),'description':_0x36abc0[_0x50cc36(0x17c)]}),_0x21c5c4=buildSqlLockEntry(_0x36abc0,_0x10b7f4,'',{'dbName':_0x229fae}),_0x3c104b=resolveLocalSqlFilePath(_0xc667d7,_0x36abc0[_0x50cc36(0x174)],_0x21c5c4);let _0xd63fe4=_0x50cc36(0x19d),_0x1c8cc3;if(await fileExists(_0x3c104b)){const _0x3c8ca8=await readFile(_0x3c104b,'utf8');isEquivalentPulledSqlFile(_0x3c8ca8,_0x2fbd51,_0x1f7544)?(_0xd63fe4=_0x50cc36(0x176),_0x1c8cc3=_0x50cc36(0x16a)):(_0xd63fe4=_0x50cc36(0x184),_0x1c8cc3='local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)');}_0x2692b7[_0x50cc36(0x19b)]({'sqlCode':_0x36abc0[_0x50cc36(0x174)],'sqlName':_0x36abc0['sqlName'],'filePath':_0x3c104b,'status':_0xd63fe4,'reason':_0x1c8cc3});}return{'method':_0x50cc36(0x193),'url':_0x50cc36(0x173),'body':{'appCode':_0x2ce7c5['appCode'],'sqlCode':_0x2ce7c5['str'](_0x50cc36(0x1a8))||null,'sqlName':_0x2ce7c5[_0x50cc36(0x171)](_0x50cc36(0x197))||null,'files':_0x2692b7},'description':_0x50cc36(0x1a2)+_0x2692b7['length']+_0x50cc36(0x188)+_0xc667d7[_0x50cc36(0x16c)]};},async 'execute'(_0x22d063){const _0xef5083=a181_0x350241,_0xd0aa4c=loadSqlProjectConfig(_0x22d063[_0xef5083(0x1a4)]),_0x384f70=await readSqlLockFile(_0xd0aa4c[_0xef5083(0x198)]),{lockData:_0x4527bb,appLock:_0x14c9d9}=ensureSqlLockScope(_0x384f70??createEmptySqlLock(),_0xd0aa4c['appCode'],_0xd0aa4c['sqlRoot'],_0xef5083(0x17b)),_0xbe6a0a=_0x22d063[_0xef5083(0x199)](_0xef5083(0x16f)),_0xb95303=await fetchAllSqlQueries(_0x22d063[_0xef5083(0x1a4)],{'sqlCode':_0x22d063[_0xef5083(0x171)](_0xef5083(0x1a8))||undefined,'sqlName':_0x22d063[_0xef5083(0x171)](_0xef5083(0x197))||undefined});if(_0xb95303[_0xef5083(0x18d)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20SQL\x20queries\x20matched.'};const _0x5da1bb=[],_0x506e00=[];for(const _0x506b8e of _0xb95303){try{_0x5da1bb[_0xef5083(0x19b)](await ensureSqlContent(_0x506b8e));}catch(_0x252349){_0x506e00['push']({'sqlCode':_0x506b8e[_0xef5083(0x174)],'error':_0x252349 instanceof Error?_0x252349[_0xef5083(0x179)]:String(_0x252349)});}}if(_0xbe6a0a&&!_0x22d063[_0xef5083(0x18f)]){let _0x56cf46=![];for(const _0x1455dc of _0x5da1bb){const _0x754d94=detectModeFromSql(_0x1455dc),_0x341536=_0x1455dc[_0xef5083(0x195)]?await getDbName(_0x22d063[_0xef5083(0x1a4)],Number(_0x1455dc['dbId']))[_0xef5083(0x194)](()=>undefined):undefined,_0x2792e7=buildLocalSqlFileContent({'sqlCode':_0x1455dc['sqlCode'],'sqlName':_0x1455dc[_0xef5083(0x18e)],'dbId':_0x1455dc[_0xef5083(0x195)]},ensureRemoteSqlContent(_0x1455dc),{'dbName':_0x341536,'mode':_0x754d94,'syncedAt':new Date()[_0xef5083(0x1a7)](),'description':_0x1455dc[_0xef5083(0x17c)]}),_0x129e4f=resolveLocalSqlFilePath(_0xd0aa4c,_0x1455dc['sqlCode'],buildSqlLockEntry(_0x1455dc,ensureRemoteSqlContent(_0x1455dc),'',{'dbName':_0x341536}));if(await fileExists(_0x129e4f)){const _0x3ce5ec=await readFile(_0x129e4f,_0xef5083(0x190));if(!isEquivalentPulledSqlFile(_0x3ce5ec,_0x2792e7,_0x754d94)){_0x56cf46=!![];break;}}}if(_0x56cf46){const _0x157909=await confirmForceOverwrite('Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.');if(!_0x157909)throw CliErrors[_0xef5083(0x1a5)](_0xef5083(0x18c));}}const _0x52ed9f=cloneSqlLockData(_0x4527bb),_0x92ca1=_0x52ed9f[_0xef5083(0x19e)][_0xd0aa4c[_0xef5083(0x1a4)]],_0x5d48c4=[],_0x485d74=[];for(const _0x1ca332 of _0x5da1bb){const _0x51598b=_0x92ca1[_0xef5083(0x180)][_0x1ca332[_0xef5083(0x174)]],_0x4ec5c5=ensureRemoteSqlContent(_0x1ca332),_0xb601eb=detectModeFromSql(_0x1ca332),_0x261645=_0x1ca332['dbId']?await getDbName(_0x22d063[_0xef5083(0x1a4)],Number(_0x1ca332[_0xef5083(0x195)]))['catch'](()=>undefined):undefined,_0x268362=buildLocalSqlFileContent({'sqlCode':_0x1ca332[_0xef5083(0x174)],'sqlName':_0x1ca332[_0xef5083(0x18e)],'dbId':_0x1ca332[_0xef5083(0x195)]},_0x4ec5c5,{'dbName':_0x261645,'mode':_0xb601eb,'syncedAt':new Date()['toISOString'](),'description':_0x1ca332[_0xef5083(0x17c)]}),_0x18b676=buildSqlLockEntry(_0x1ca332,_0x4ec5c5,computeSqlContentHash(_0x268362),{'dbName':_0x261645}),_0x526c50=_0x18b676[_0xef5083(0x18b)],_0x1cbda7=join(_0xd0aa4c[_0xef5083(0x16c)],_0x526c50);try{if(await fileExists(_0x1cbda7)){const _0x466cc2=await readFile(_0x1cbda7,_0xef5083(0x190));if(isEquivalentPulledSqlFile(_0x466cc2,_0x268362,_0xb601eb)){_0x485d74[_0xef5083(0x19b)]({'sqlCode':_0x1ca332['sqlCode'],'reason':_0xef5083(0x16a)}),_0x92ca1['sqls'][_0x1ca332[_0xef5083(0x174)]]={..._0x18b676,'hash':computeSqlContentHash(_0x466cc2),'path':_0x526c50};continue;}if(!_0xbe6a0a){_0x485d74[_0xef5083(0x19b)]({'sqlCode':_0x1ca332[_0xef5083(0x174)],'reason':_0xef5083(0x17e)});continue;}}const _0x1fe176=_0x51598b?.[_0xef5083(0x18b)]?join(_0xd0aa4c['sqlRootDir'],_0x51598b[_0xef5083(0x18b)]):undefined;_0x1fe176&&_0x1fe176!==_0x1cbda7&&await fileExists(_0x1fe176)&&await rm(_0x1fe176,{'force':!![]}),await ensureParentDirectory(_0x1cbda7),await writeFile(_0x1cbda7,_0x268362,_0xef5083(0x190)),_0x92ca1[_0xef5083(0x180)][_0x1ca332[_0xef5083(0x174)]]={..._0x18b676,'path':_0x526c50},_0x5d48c4['push']({'sqlCode':_0x1ca332[_0xef5083(0x174)],'filePath':_0x1cbda7});}catch(_0x3f2b95){_0x506e00[_0xef5083(0x19b)]({'sqlCode':_0x1ca332[_0xef5083(0x174)],'error':_0x3f2b95 instanceof Error?_0x3f2b95[_0xef5083(0x179)]:String(_0x3f2b95)});}}return _0x92ca1[_0xef5083(0x17f)]=new Date()['toISOString'](),await writeSqlLockFile(_0xd0aa4c[_0xef5083(0x198)],_0x52ed9f),{'ok':_0x506e00[_0xef5083(0x18d)]===0x0,'data':{'pulled':_0x5d48c4,'skipped':_0x485d74,'failed':_0x506e00},'message':_0xef5083(0x192)+_0x5d48c4[_0xef5083(0x18d)]+_0xef5083(0x17d)+_0x485d74[_0xef5083(0x18d)]+_0xef5083(0x1a6)+_0x506e00['length']+_0xef5083(0x19a)};}};function detectModeFromSql(_0x520cdb){const _0x3b3dc9=a181_0x350241,_0x5d678e=ensureRemoteSqlContent(_0x520cdb),_0x5f57cb=stripLocalSqlMetadata(_0x5d678e,_0x3b3dc9(0x182))[_0x3b3dc9(0x178)]();if(/^<(select|insert|update|delete)\b/i[_0x3b3dc9(0x17a)](_0x5f57cb))return _0x3b3dc9(0x182);return'sql';}function isEquivalentPulledSqlFile(_0x3d7d4f,_0x3c5b95,_0x508762){return normalizePullComparableContent(_0x3d7d4f,_0x508762)===normalizePullComparableContent(_0x3c5b95,_0x508762);}function normalizePullComparableContent(_0x3050c4,_0x40820b){const _0x1c7390=a181_0x350241,_0x49461e=_0x3050c4[_0x1c7390(0x1aa)](/\r\n/g,'\x0a')[_0x1c7390(0x187)]('\x0a'),_0x590ae5=_0x49461e[_0x1c7390(0x19c)](_0x11b34e=>!isSyncedAtMetadataLine(_0x11b34e,_0x40820b));return _0x590ae5[_0x1c7390(0x181)]('\x0a');}function isSyncedAtMetadataLine(_0x59fafa,_0x3beb75){const _0x17dff3=a181_0x350241;if(_0x3beb75===_0x17dff3(0x182))return/^\s*<!--\s*@lovrabet\.syncedAt:/['test'](_0x59fafa);return/^\s*--\s*@lovrabet\.syncedAt:/['test'](_0x59fafa);}
1
+ const a189_0x4427b0=a189_0x2ed8;(function(_0xa3816f,_0x27fc0b){const _0x19bc50=a189_0x2ed8,_0x3fc498=_0xa3816f();while(!![]){try{const _0x36c9ab=parseInt(_0x19bc50(0x14d))/0x1*(parseInt(_0x19bc50(0x154))/0x2)+-parseInt(_0x19bc50(0x17a))/0x3+parseInt(_0x19bc50(0x16d))/0x4+-parseInt(_0x19bc50(0x17f))/0x5*(-parseInt(_0x19bc50(0x15b))/0x6)+parseInt(_0x19bc50(0x179))/0x7*(-parseInt(_0x19bc50(0x14f))/0x8)+-parseInt(_0x19bc50(0x15a))/0x9+-parseInt(_0x19bc50(0x146))/0xa*(-parseInt(_0x19bc50(0x14b))/0xb);if(_0x36c9ab===_0x27fc0b)break;else _0x3fc498['push'](_0x3fc498['shift']());}catch(_0x4f0c5a){_0x3fc498['push'](_0x3fc498['shift']());}}}(a189_0xaaa6,0xa0f60));function a189_0x2ed8(_0x328a93,_0x54d1e6){_0x328a93=_0x328a93-0x142;const _0xaaa6d0=a189_0xaaa6();let _0x2ed8b4=_0xaaa6d0[_0x328a93];return _0x2ed8b4;}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';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(_0x26af05,_0x2d1382){const _0x534103=a189_0x2ed8,_0x58ab2c=[];let _0x47eccb=0x1;while(!![]){const _0x282893=await listSqlQueries(_0x26af05,{'currentPage':_0x47eccb,'pageSize':PAGE_SIZE,'sqlCode':_0x2d1382[_0x534103(0x173)],'sqlName':_0x2d1382['sqlName']}),_0x3e32cc=_0x282893[_0x534103(0x14e)]??[];_0x58ab2c['push'](..._0x3e32cc);if(_0x3e32cc[_0x534103(0x145)]===0x0)break;const _0xcb5484=_0x282893[_0x534103(0x163)]?.['totalCount'];if(_0xcb5484!=null?_0x58ab2c[_0x534103(0x145)]>=_0xcb5484:_0x3e32cc['length']<PAGE_SIZE)break;_0x47eccb++;}return _0x58ab2c;}async function ensureSqlContent(_0x4c0840){const _0x502462=a189_0x2ed8;if(_0x4c0840[_0x502462(0x178)]!=null&&String(_0x4c0840['sqlContent'])['length']>0x0)return _0x4c0840;return getSqlQueryDetail(_0x4c0840[_0x502462(0x173)]);}export const sqlPull={'service':'sql','command':a189_0x4427b0(0x149),'description':a189_0x4427b0(0x161),'risk':a189_0x4427b0(0x155),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':'name','type':a189_0x4427b0(0x15e),'description':a189_0x4427b0(0x160)},{'name':a189_0x4427b0(0x16f),'type':a189_0x4427b0(0x17b),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x432637){const _0x326401=a189_0x4427b0,_0x1194d7=loadSqlProjectConfig(_0x432637[_0x326401(0x150)]),_0x2a9d7f=await readSqlLockFile(_0x1194d7[_0x326401(0x14a)]),{appLock:_0x202cdd}=ensureSqlLockScope(_0x2a9d7f??createEmptySqlLock(),_0x1194d7[_0x326401(0x150)],_0x1194d7[_0x326401(0x168)],_0x326401(0x149)),_0x4a69e2=await fetchAllSqlQueries(_0x432637[_0x326401(0x150)],{'sqlCode':_0x432637[_0x326401(0x167)](_0x326401(0x180))||undefined,'sqlName':_0x432637['str'](_0x326401(0x16c))||undefined}),_0x20da93=[];for(const _0x2c2d0e of _0x4a69e2){const _0x1cf0d1=await ensureSqlContent(_0x2c2d0e),_0x59d23a=ensureRemoteSqlContent(_0x1cf0d1),_0x36eb14=detectModeFromSql(_0x1cf0d1),_0x1eb232=_0x1cf0d1[_0x326401(0x165)]?await getDbName(_0x432637[_0x326401(0x150)],Number(_0x1cf0d1['dbId']))[_0x326401(0x174)](()=>undefined):undefined,_0x579abc=buildLocalSqlFileContent({'sqlCode':_0x1cf0d1['sqlCode'],'sqlName':_0x1cf0d1[_0x326401(0x169)],'dbId':_0x1cf0d1[_0x326401(0x165)]},_0x59d23a,{'dbName':_0x1eb232,'mode':_0x36eb14,'syncedAt':new Date()[_0x326401(0x15d)](),'description':_0x1cf0d1[_0x326401(0x166)]}),_0x4ae13c=buildSqlLockEntry(_0x1cf0d1,_0x59d23a,'',{'dbName':_0x1eb232}),_0x2a3dbc=resolveLocalSqlFilePath(_0x1194d7,_0x1cf0d1[_0x326401(0x173)],_0x4ae13c);let _0x17e32b=_0x326401(0x162),_0x4ef49f;if(await fileExists(_0x2a3dbc)){const _0x620562=await readFile(_0x2a3dbc,_0x326401(0x152));isEquivalentPulledSqlFile(_0x620562,_0x579abc,_0x36eb14)?(_0x17e32b=_0x326401(0x170),_0x4ef49f=_0x326401(0x181)):(_0x17e32b=_0x326401(0x148),_0x4ef49f=_0x326401(0x17d));}_0x20da93[_0x326401(0x175)]({'sqlCode':_0x1cf0d1[_0x326401(0x173)],'sqlName':_0x1cf0d1[_0x326401(0x169)],'filePath':_0x2a3dbc,'status':_0x17e32b,'reason':_0x4ef49f});}return{'method':_0x326401(0x143),'url':_0x326401(0x159),'body':{'appCode':_0x432637[_0x326401(0x150)],'sqlCode':_0x432637[_0x326401(0x167)](_0x326401(0x180))||null,'sqlName':_0x432637[_0x326401(0x167)](_0x326401(0x16c))||null,'files':_0x20da93},'description':_0x326401(0x17e)+_0x20da93[_0x326401(0x145)]+_0x326401(0x176)+_0x1194d7[_0x326401(0x142)]};},async 'execute'(_0x5e42c5){const _0x2a166d=a189_0x4427b0,_0x5852d1=loadSqlProjectConfig(_0x5e42c5[_0x2a166d(0x150)]),_0x329520=await readSqlLockFile(_0x5852d1['lockFilePath']),{lockData:_0x302971,appLock:_0x4670d3}=ensureSqlLockScope(_0x329520??createEmptySqlLock(),_0x5852d1[_0x2a166d(0x150)],_0x5852d1[_0x2a166d(0x168)],'pull'),_0x18e579=_0x5e42c5['bool'](_0x2a166d(0x16f)),_0x32966c=await fetchAllSqlQueries(_0x5e42c5['appCode'],{'sqlCode':_0x5e42c5['str']('sqlcode')||undefined,'sqlName':_0x5e42c5[_0x2a166d(0x167)](_0x2a166d(0x16c))||undefined});if(_0x32966c[_0x2a166d(0x145)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x2a166d(0x15c)};const _0x5eefe6=[],_0x3a97e7=[];for(const _0x2bb338 of _0x32966c){try{_0x5eefe6[_0x2a166d(0x175)](await ensureSqlContent(_0x2bb338));}catch(_0x30cf9e){_0x3a97e7['push']({'sqlCode':_0x2bb338[_0x2a166d(0x173)],'error':_0x30cf9e instanceof Error?_0x30cf9e['message']:String(_0x30cf9e)});}}if(_0x18e579&&!_0x5e42c5[_0x2a166d(0x15f)]){let _0x52c42b=![];for(const _0x3aecc6 of _0x5eefe6){const _0x169615=detectModeFromSql(_0x3aecc6),_0x2ebaad=_0x3aecc6[_0x2a166d(0x165)]?await getDbName(_0x5e42c5[_0x2a166d(0x150)],Number(_0x3aecc6[_0x2a166d(0x165)]))['catch'](()=>undefined):undefined,_0x5bd6a7=buildLocalSqlFileContent({'sqlCode':_0x3aecc6[_0x2a166d(0x173)],'sqlName':_0x3aecc6[_0x2a166d(0x169)],'dbId':_0x3aecc6[_0x2a166d(0x165)]},ensureRemoteSqlContent(_0x3aecc6),{'dbName':_0x2ebaad,'mode':_0x169615,'syncedAt':new Date()[_0x2a166d(0x15d)](),'description':_0x3aecc6[_0x2a166d(0x166)]}),_0xd8d89c=resolveLocalSqlFilePath(_0x5852d1,_0x3aecc6[_0x2a166d(0x173)],buildSqlLockEntry(_0x3aecc6,ensureRemoteSqlContent(_0x3aecc6),'',{'dbName':_0x2ebaad}));if(await fileExists(_0xd8d89c)){const _0x2e75a3=await readFile(_0xd8d89c,_0x2a166d(0x152));if(!isEquivalentPulledSqlFile(_0x2e75a3,_0x5bd6a7,_0x169615)){_0x52c42b=!![];break;}}}if(_0x52c42b){const _0x683302=await confirmForceOverwrite('Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.');if(!_0x683302)throw CliErrors[_0x2a166d(0x151)](_0x2a166d(0x16e));}}const _0x3d9a59=cloneSqlLockData(_0x302971),_0x2ba0d9=_0x3d9a59['apps'][_0x5852d1['appCode']],_0x553432=[],_0x351427=[];for(const _0x469d06 of _0x5eefe6){const _0x28ec0d=_0x2ba0d9[_0x2a166d(0x17c)][_0x469d06[_0x2a166d(0x173)]],_0x3334e3=ensureRemoteSqlContent(_0x469d06),_0x55bc31=detectModeFromSql(_0x469d06),_0x2efeeb=_0x469d06[_0x2a166d(0x165)]?await getDbName(_0x5e42c5[_0x2a166d(0x150)],Number(_0x469d06['dbId']))['catch'](()=>undefined):undefined,_0x5e1a90=buildLocalSqlFileContent({'sqlCode':_0x469d06[_0x2a166d(0x173)],'sqlName':_0x469d06['sqlName'],'dbId':_0x469d06['dbId']},_0x3334e3,{'dbName':_0x2efeeb,'mode':_0x55bc31,'syncedAt':new Date()[_0x2a166d(0x15d)](),'description':_0x469d06[_0x2a166d(0x166)]}),_0x8b2b95=buildSqlLockEntry(_0x469d06,_0x3334e3,computeSqlContentHash(_0x5e1a90),{'dbName':_0x2efeeb}),_0x37d7d7=_0x8b2b95[_0x2a166d(0x164)],_0x323efd=join(_0x5852d1['sqlRootDir'],_0x37d7d7);try{if(await fileExists(_0x323efd)){const _0x45c38f=await readFile(_0x323efd,_0x2a166d(0x152));if(isEquivalentPulledSqlFile(_0x45c38f,_0x5e1a90,_0x55bc31)){_0x351427[_0x2a166d(0x175)]({'sqlCode':_0x469d06[_0x2a166d(0x173)],'reason':_0x2a166d(0x181)}),_0x2ba0d9['sqls'][_0x469d06['sqlCode']]={..._0x8b2b95,'hash':computeSqlContentHash(_0x45c38f),'path':_0x37d7d7};continue;}if(!_0x18e579){_0x351427[_0x2a166d(0x175)]({'sqlCode':_0x469d06[_0x2a166d(0x173)],'reason':_0x2a166d(0x156)});continue;}}const _0xa0190c=_0x28ec0d?.[_0x2a166d(0x164)]?join(_0x5852d1['sqlRootDir'],_0x28ec0d['path']):undefined;_0xa0190c&&_0xa0190c!==_0x323efd&&await fileExists(_0xa0190c)&&await rm(_0xa0190c,{'force':!![]}),await ensureParentDirectory(_0x323efd),await writeFile(_0x323efd,_0x5e1a90,'utf8'),_0x2ba0d9[_0x2a166d(0x17c)][_0x469d06[_0x2a166d(0x173)]]={..._0x8b2b95,'path':_0x37d7d7},_0x553432[_0x2a166d(0x175)]({'sqlCode':_0x469d06[_0x2a166d(0x173)],'filePath':_0x323efd});}catch(_0x7562d9){_0x3a97e7[_0x2a166d(0x175)]({'sqlCode':_0x469d06[_0x2a166d(0x173)],'error':_0x7562d9 instanceof Error?_0x7562d9[_0x2a166d(0x14c)]:String(_0x7562d9)});}}return _0x2ba0d9['lastSync']=new Date()['toISOString'](),await writeSqlLockFile(_0x5852d1[_0x2a166d(0x14a)],_0x3d9a59),{'ok':_0x3a97e7[_0x2a166d(0x145)]===0x0,'data':{'pulled':_0x553432,'skipped':_0x351427,'failed':_0x3a97e7},'message':_0x2a166d(0x16a)+_0x553432['length']+_0x2a166d(0x16b)+_0x351427[_0x2a166d(0x145)]+_0x2a166d(0x157)+_0x3a97e7[_0x2a166d(0x145)]+_0x2a166d(0x158)};}};function detectModeFromSql(_0x63e41d){const _0x10d5c1=a189_0x4427b0,_0x3ecbd4=ensureRemoteSqlContent(_0x63e41d),_0x1f1af0=stripLocalSqlMetadata(_0x3ecbd4,'mybatisXml')['trimStart']();if(/^<(select|insert|update|delete)\b/i[_0x10d5c1(0x177)](_0x1f1af0))return _0x10d5c1(0x171);return'sql';}function a189_0xaaa6(){const _0x244c69=['Pull\x20complete:\x20','\x20written,\x20','name','4504280CUcimv','Force\x20pull\x20cancelled.','force','skipped','mybatisXml','split','sqlCode','catch','push','\x20SQL\x20file(s)\x20into\x20','test','sqlContent','135422mqsfVU','2056656WecFdJ','boolean','sqls','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','Would\x20pull\x20','5tAUORb','sqlcode','unchanged','sqlRootDir','POST','join','length','4754310ePMerX','filter','conflict','pull','lockFilePath','33rAJzBb','message','202XpECql','tableData','448avvJzA','appCode','cancelled','utf8','replace','3986lpHSaJ','read','local\x20differs\x20from\x20remote','\x20skipped,\x20','\x20failed','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','8129934jZxbJe','2259606nYyhRa','No\x20remote\x20SQL\x20queries\x20matched.','toISOString','string','nonInteractive','Filter\x20by\x20SQL\x20display\x20name','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','would_pull','paging','path','dbId','description','str','sqlRoot','sqlName'];a189_0xaaa6=function(){return _0x244c69;};return a189_0xaaa6();}function isEquivalentPulledSqlFile(_0x34580b,_0x45541f,_0x1f28e0){return normalizePullComparableContent(_0x34580b,_0x1f28e0)===normalizePullComparableContent(_0x45541f,_0x1f28e0);}function normalizePullComparableContent(_0x2abddd,_0x38a332){const _0x166942=a189_0x4427b0,_0x550df0=_0x2abddd[_0x166942(0x153)](/\r\n/g,'\x0a')[_0x166942(0x172)]('\x0a'),_0x1a7d75=_0x550df0[_0x166942(0x147)](_0x44854b=>!isSyncedAtMetadataLine(_0x44854b,_0x38a332));return _0x1a7d75[_0x166942(0x144)]('\x0a');}function isSyncedAtMetadataLine(_0x298515,_0x34aae1){const _0xe0b4ab=a189_0x4427b0;if(_0x34aae1===_0xe0b4ab(0x171))return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0xe0b4ab(0x177)](_0x298515);return/^\s*--\s*@lovrabet\.syncedAt:/[_0xe0b4ab(0x177)](_0x298515);}
@@ -1 +1 @@
1
- const a182_0x565ba6=a182_0x5cba;(function(_0x4c319c,_0x2e7a8b){const _0x2bee=a182_0x5cba,_0xf769a7=_0x4c319c();while(!![]){try{const _0xb4219f=-parseInt(_0x2bee(0x18b))/0x1+-parseInt(_0x2bee(0x177))/0x2*(-parseInt(_0x2bee(0x181))/0x3)+-parseInt(_0x2bee(0x16f))/0x4+-parseInt(_0x2bee(0x16e))/0x5+parseInt(_0x2bee(0x186))/0x6+-parseInt(_0x2bee(0x167))/0x7*(parseInt(_0x2bee(0x188))/0x8)+parseInt(_0x2bee(0x166))/0x9;if(_0xb4219f===_0x2e7a8b)break;else _0xf769a7['push'](_0xf769a7['shift']());}catch(_0x5c61dc){_0xf769a7['push'](_0xf769a7['shift']());}}}(a182_0x133f,0x50265));import{mkdir,readFile,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';function a182_0x133f(){const _0x2da317=['sqlcode','get','dbId','entries','lastSync','str','.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.','join','projectRoot','validation','exec','message','dbDirectory','Local\x20SQL\x20not\x20found:\x20','sqlRootDir','toISOString','\x22\x20for\x20sqlCode\x20','8872272TNbkyX','4517177gUFBVP','POST','/smartapi/custom/updateUserCustomSql','path','remoteId','sqls','local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first','1988605kJogHz','53444dqnXnF','mode','No\x20local\x20SQL\x20files\x20found.','\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20','sqlConfig','dbName','\x20pushed,\x20','high-risk-write','132ZpXLYx','force','\x20SQL\x20file(s)','utf8','catch','appCode','map','hash','relativePath','No\x20database\x20matches\x20local\x20directory\x20\x22','17196pDWNkp','startsWith','filePath','length','lockFilePath','3876870MMNiTp','push','8EcBUrU','bool','sqlName','625579smbfaj','Push\x20complete:\x20','filter','sqlCode','sqlRoot','has','version'];a182_0x133f=function(){return _0x2da317;};return a182_0x133f();}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';function a182_0x5cba(_0x58aa12,_0x390e33){_0x58aa12=_0x58aa12-0x14f;const _0x133f9d=a182_0x133f();let _0x5cba04=_0x133f9d[_0x58aa12];return _0x5cba04;}import{buildDbDirectoryName}from'../../core/sql-sync/utils.js';async function getTargetSqlQueries(_0x4eb44f,_0x354245,_0x1d2b2a){const _0x3e3771=a182_0x5cba,_0x8ae037=await scanLocalSqlQueries(_0x4eb44f),_0x7e0891=new Map();for(const _0xf8ae66 of _0x8ae037){if(_0x1d2b2a&&_0xf8ae66[_0x3e3771(0x151)]!==_0x1d2b2a)continue;const _0x4ae5aa=_0x7e0891[_0x3e3771(0x156)](_0xf8ae66[_0x3e3771(0x151)])??[];_0x4ae5aa[_0x3e3771(0x187)](_0xf8ae66),_0x7e0891['set'](_0xf8ae66[_0x3e3771(0x151)],_0x4ae5aa);}if(_0x1d2b2a&&!_0x7e0891[_0x3e3771(0x153)](_0x1d2b2a))throw CliErrors[_0x3e3771(0x15e)](_0x3e3771(0x162)+_0x1d2b2a);const _0x555070=[];for(const [_0x4ab87f,_0x4efbed]of _0x7e0891[_0x3e3771(0x158)]()){if(_0x4efbed[_0x3e3771(0x184)]===0x1){_0x555070['push'](_0x4efbed[0x0]);continue;}const _0x3184a3=_0x354245['sqls'][_0x4ab87f],_0x4f6955=_0x3184a3?.[_0x3e3771(0x16a)],_0x45fcf9=_0x4f6955?_0x4efbed[_0x3e3771(0x150)](_0x2264b2=>_0x2264b2['relativePath']!==_0x4f6955):_0x4efbed;if(_0x3184a3&&_0x45fcf9['length']===0x1){_0x555070[_0x3e3771(0x187)](_0x45fcf9[0x0]);continue;}throw CliErrors[_0x3e3771(0x15e)]('Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20'+_0x4ab87f+_0x3e3771(0x15b));}return _0x555070;}export const sqlPush={'service':'sql','command':'push','description':'Push\x20local\x20SQL\x20files\x20to\x20remote','risk':a182_0x565ba6(0x176),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a182_0x565ba6(0x178),'type':'boolean','description':'Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock'}],async 'dryRun'(_0x47ecf2){const _0x5dd1c0=a182_0x565ba6,_0x181bca=loadSqlProjectConfig(_0x47ecf2[_0x5dd1c0(0x17c)]),_0x4b2880=await readSqlLockFile(_0x181bca[_0x5dd1c0(0x185)]),{appLock:_0x2591ad}=ensureSqlLockScope(_0x4b2880??createEmptySqlLock(),_0x47ecf2[_0x5dd1c0(0x17c)],_0x181bca['sqlRoot'],'push'),_0x569ebb=await getTargetSqlQueries(_0x181bca,_0x2591ad,_0x47ecf2[_0x5dd1c0(0x15a)](_0x5dd1c0(0x155))||undefined),_0x17451a=[];for(const _0x2c9c77 of _0x569ebb){const _0x51d25b=await computeSqlFileHash(_0x2c9c77[_0x5dd1c0(0x183)]),_0x1002c6=_0x2591ad['sqls'][_0x2c9c77['sqlCode']],_0x5407ad=!!_0x1002c6&&(_0x1002c6['path']!==_0x2c9c77[_0x5dd1c0(0x17f)]||!!_0x2c9c77[_0x5dd1c0(0x18a)]&&_0x1002c6[_0x5dd1c0(0x18a)]!==_0x2c9c77[_0x5dd1c0(0x18a)]);if(!_0x47ecf2[_0x5dd1c0(0x189)](_0x5dd1c0(0x178))&&_0x1002c6&&_0x1002c6[_0x5dd1c0(0x17e)]===_0x51d25b&&!_0x5407ad)continue;_0x17451a[_0x5dd1c0(0x187)](_0x2c9c77[_0x5dd1c0(0x151)]);}return{'method':_0x5dd1c0(0x168),'url':_0x5dd1c0(0x169),'body':{'sqlCodes':_0x17451a,'appCode':_0x47ecf2['appCode']},'description':'Would\x20push\x20'+_0x17451a[_0x5dd1c0(0x184)]+_0x5dd1c0(0x179)};},async 'execute'(_0x2a2800){const _0x596eb2=a182_0x565ba6,_0x11b011=loadSqlProjectConfig(_0x2a2800[_0x596eb2(0x17c)]),_0x497273=await readSqlLockFile(_0x11b011[_0x596eb2(0x185)]),{lockData:_0x150d02,appLock:_0x27456c}=ensureSqlLockScope(_0x497273??createEmptySqlLock(),_0x2a2800[_0x596eb2(0x17c)],_0x11b011[_0x596eb2(0x152)],_0x596eb2(0x187)),_0x2add6d=await getTargetSqlQueries(_0x11b011,_0x27456c,_0x2a2800[_0x596eb2(0x15a)]('sqlcode')||undefined);if(_0x2add6d['length']===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':_0x596eb2(0x171)};const _0x4bc016=[],_0x41f378=[],_0x874b41=[];for(const _0x523d88 of _0x2add6d){const _0x4d26e4=_0x27456c[_0x596eb2(0x16c)][_0x523d88[_0x596eb2(0x151)]];if(!_0x4d26e4){_0x874b41[_0x596eb2(0x187)]({'sqlCode':_0x523d88[_0x596eb2(0x151)],'error':_0x596eb2(0x16d)});continue;}try{const _0xb81e1a=await computeSqlFileHash(_0x523d88['filePath']),_0x133167=_0x4d26e4[_0x596eb2(0x16a)]!==_0x523d88['relativePath']||!!_0x523d88['sqlName']&&_0x4d26e4['sqlName']!==_0x523d88[_0x596eb2(0x18a)];if(!_0x2a2800[_0x596eb2(0x189)](_0x596eb2(0x178))&&_0x4d26e4[_0x596eb2(0x17e)]===_0xb81e1a&&!_0x133167){_0x41f378[_0x596eb2(0x187)]({'sqlCode':_0x523d88[_0x596eb2(0x151)],'reason':'unchanged'});continue;}if(_0x4d26e4[_0x596eb2(0x154)]==null){_0x874b41[_0x596eb2(0x187)]({'sqlCode':_0x523d88[_0x596eb2(0x151)],'error':'missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first'});continue;}const _0xaa865e=await readFile(_0x523d88[_0x596eb2(0x183)],_0x596eb2(0x17a)),_0x5627=stripLocalSqlMetadata(_0xaa865e,_0x523d88['mode']),_0x36cf32=_0x523d88['sqlName']||_0x4d26e4['sqlName'],_0x327d38=await resolveTargetDbBinding(_0x2a2800['appCode'],_0x523d88,_0x4d26e4),_0x2c8d5c=await updateSqlQuery({'id':_0x4d26e4[_0x596eb2(0x16b)],'appCode':_0x2a2800[_0x596eb2(0x17c)],'sqlCode':_0x523d88[_0x596eb2(0x151)],'sqlName':_0x36cf32,'dbId':_0x327d38[_0x596eb2(0x157)],'version':_0x4d26e4[_0x596eb2(0x154)],'sqlContent':_0x5627,'sqlConfig':_0x4d26e4[_0x596eb2(0x173)]??undefined}),_0x44ca08=_0x2c8d5c[_0x596eb2(0x157)]?await getDbName(_0x2a2800[_0x596eb2(0x17c)],Number(_0x2c8d5c[_0x596eb2(0x157)]))[_0x596eb2(0x17b)](()=>_0x327d38[_0x596eb2(0x174)]):_0x327d38[_0x596eb2(0x174)];_0x27456c['sqls'][_0x523d88[_0x596eb2(0x151)]]={...buildSqlLockEntry(_0x2c8d5c,_0x5627,_0xb81e1a,{'dbName':_0x44ca08}),'path':_0x523d88['relativePath'],'mode':_0x4d26e4[_0x596eb2(0x170)]},await archivePreviousSqlFileIfNeeded(_0x11b011,_0x4d26e4[_0x596eb2(0x16a)],_0x523d88[_0x596eb2(0x17f)]),_0x4bc016[_0x596eb2(0x187)]({'sqlCode':_0x523d88[_0x596eb2(0x151)],'remoteId':_0x4d26e4[_0x596eb2(0x16b)]});}catch(_0x29d825){_0x874b41['push']({'sqlCode':_0x523d88[_0x596eb2(0x151)],'error':_0x29d825 instanceof Error?_0x29d825[_0x596eb2(0x160)]:String(_0x29d825)});}}return _0x27456c[_0x596eb2(0x159)]=new Date()[_0x596eb2(0x164)](),await writeSqlLockFile(_0x11b011[_0x596eb2(0x185)],_0x150d02),{'ok':_0x874b41['length']===0x0,'data':{'pushed':_0x4bc016,'skipped':_0x41f378,'failed':_0x874b41},'message':_0x596eb2(0x14f)+_0x4bc016[_0x596eb2(0x184)]+_0x596eb2(0x175)+_0x41f378['length']+'\x20skipped,\x20'+_0x874b41[_0x596eb2(0x184)]+'\x20failed'};}};async function archivePreviousSqlFileIfNeeded(_0x3fee9b,_0x1bd074,_0x44937d){const _0x13708e=a182_0x565ba6;if(!_0x1bd074||_0x1bd074===_0x44937d)return;const _0x13402e=join(_0x3fee9b['sqlRootDir'],_0x1bd074);if(!await fileExists(_0x13402e))return;const _0xa5d9ae=await moveToTrash(_0x3fee9b[_0x13708e(0x15d)],_0x3fee9b['trashDir'],_0x13402e);await cleanupEmptyDirectories(dirname(_0x13402e),_0x3fee9b[_0x13708e(0x163)]),void _0xa5d9ae;}async function moveToTrash(_0x526ee5,_0x3f43a4,_0x1ecf36){const _0xf7aaef=a182_0x565ba6,_0xdf92cd=new Date()[_0xf7aaef(0x164)]()['replace'](/[:.]/g,'-'),_0x470dc7=relative(_0x526ee5,_0x1ecf36),_0x4096a3=join(_0x3f43a4,_0xdf92cd,_0x470dc7);return await mkdir(dirname(_0x4096a3),{'recursive':!![]}),await rename(_0x1ecf36,_0x4096a3),_0x4096a3;}async function cleanupEmptyDirectories(_0x1bce0f,_0x46b3b4){const _0x3171a3=a182_0x565ba6;let _0x4e366f=resolve(_0x1bce0f);const _0x1a299f=resolve(_0x46b3b4);while(_0x4e366f[_0x3171a3(0x182)](''+_0x1a299f+sep)||_0x4e366f===_0x1a299f){if(_0x4e366f===_0x1a299f)return;try{const _0x57955e=await readdir(_0x4e366f);if(_0x57955e[_0x3171a3(0x184)]>0x0)return;await rmdir(_0x4e366f);}catch{return;}_0x4e366f=dirname(_0x4e366f);}}async function resolveTargetDbBinding(_0x339ea9,_0x41d3d1,_0xca9d14){const _0x24fa40=a182_0x565ba6,_0x84b498=_0x41d3d1[_0x24fa40(0x161)];if(!_0x84b498)return{'dbId':_0xca9d14[_0x24fa40(0x157)],'dbName':_0xca9d14['dbName']};const _0x2031c4=buildDbDirectoryName(_0xca9d14['dbName'],_0xca9d14[_0x24fa40(0x157)]);if(_0x84b498===_0x2031c4)return{'dbId':_0xca9d14[_0x24fa40(0x157)],'dbName':_0xca9d14['dbName']};const _0x482188=parseExplicitDbDirectory(_0x84b498);if(_0x482188!=null)return{'dbId':_0x482188,'dbName':await getDbName(_0x339ea9,_0x482188)[_0x24fa40(0x17b)](()=>undefined)};const _0x31722c=await listDatabases(_0x339ea9),_0x32951b=_0x31722c['filter'](_0x3f02da=>buildDbDirectoryName(_0x3f02da[_0x24fa40(0x174)],_0x3f02da[_0x24fa40(0x157)])===_0x84b498);if(_0x32951b['length']===0x1)return{'dbId':_0x32951b[0x0]['dbId'],'dbName':_0x32951b[0x0][_0x24fa40(0x174)]};if(_0x32951b['length']===0x0)throw CliErrors[_0x24fa40(0x15e)](_0x24fa40(0x180)+_0x84b498+_0x24fa40(0x165)+_0x41d3d1[_0x24fa40(0x151)]+'.');const _0x5b3150=_0x32951b[_0x24fa40(0x17d)](_0x50ecea=>_0x50ecea[_0x24fa40(0x174)]+'\x20('+_0x50ecea['dbId']+')')[_0x24fa40(0x15c)](',\x20');throw CliErrors[_0x24fa40(0x15e)]('Local\x20directory\x20\x22'+_0x84b498+_0x24fa40(0x172)+_0x41d3d1[_0x24fa40(0x151)]+':\x20'+_0x5b3150);}function parseExplicitDbDirectory(_0x1c800e){const _0x34645b=a182_0x565ba6,_0x12c0e4=/^db-(\d+)$/[_0x34645b(0x15f)](_0x1c800e);if(!_0x12c0e4)return null;const _0x4b1375=Number(_0x12c0e4[0x1]);return Number['isFinite'](_0x4b1375)&&_0x4b1375>0x0?_0x4b1375:null;}
1
+ function a190_0x2770(){const _0x33e404=['Would\x20push\x20','map','startsWith','projectRoot','unchanged','str','filePath','relativePath','filter','bool','get','catch','local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first','entries','set','appCode','replace','push','.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.','6FowupE','boolean','length','sqlRootDir','Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock','toISOString','\x20SQL\x20file(s)','sqlRoot','/smartapi/custom/updateUserCustomSql','hash','isFinite','sql','high-risk-write','Local\x20SQL\x20not\x20found:\x20','version','3487940vjUJKc','dbDirectory','Local\x20directory\x20\x22','dbId','dbName','path','utf8','join','17522946sZnDwS','3230344YLoAVi','force','missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first','mode','message','5390546igTQBJ','sqlcode','lastSync','POST','1254572hIckPq','No\x20database\x20matches\x20local\x20directory\x20\x22','\x20pushed,\x20','32GScQUh','remoteId','trashDir','validation','\x22\x20for\x20sqlCode\x20','sqls','82062zwYbhV','sqlName','sqlCode','\x20skipped,\x20','570545wHYAHF'];a190_0x2770=function(){return _0x33e404;};return a190_0x2770();}const a190_0x1e1511=a190_0x21eb;(function(_0x41223d,_0x2dec2b){const _0x5ef2e1=a190_0x21eb,_0x3f132c=_0x41223d();while(!![]){try{const _0x75b15=parseInt(_0x5ef2e1(0x1e0))/0x1+parseInt(_0x5ef2e1(0x1d3))/0x2+-parseInt(_0x5ef2e1(0x1dc))/0x3*(-parseInt(_0x5ef2e1(0x1d6))/0x4)+parseInt(_0x5ef2e1(0x1c1))/0x5+parseInt(_0x5ef2e1(0x1b2))/0x6*(parseInt(_0x5ef2e1(0x1cf))/0x7)+-parseInt(_0x5ef2e1(0x1ca))/0x8+-parseInt(_0x5ef2e1(0x1c9))/0x9;if(_0x75b15===_0x2dec2b)break;else _0x3f132c['push'](_0x3f132c['shift']());}catch(_0x18d322){_0x3f132c['push'](_0x3f132c['shift']());}}}(a190_0x2770,0x82426));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';function a190_0x21eb(_0x4689d5,_0x1d2730){_0x4689d5=_0x4689d5-0x1a0;const _0x277034=a190_0x2770();let _0x21eb5a=_0x277034[_0x4689d5];return _0x21eb5a;}import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildSqlLockEntry,stripLocalSqlMetadata}from'./shared.js';import{buildDbDirectoryName}from'../../core/sql-sync/utils.js';async function getTargetSqlQueries(_0x1b2513,_0x4059d4,_0x57b32d){const _0x1174d5=a190_0x21eb,_0x296447=await scanLocalSqlQueries(_0x1b2513),_0x364724=new Map();for(const _0x4a5ed6 of _0x296447){if(_0x57b32d&&_0x4a5ed6[_0x1174d5(0x1de)]!==_0x57b32d)continue;const _0x3524ce=_0x364724[_0x1174d5(0x1a9)](_0x4a5ed6[_0x1174d5(0x1de)])??[];_0x3524ce['push'](_0x4a5ed6),_0x364724[_0x1174d5(0x1ad)](_0x4a5ed6['sqlCode'],_0x3524ce);}if(_0x57b32d&&!_0x364724['has'](_0x57b32d))throw CliErrors[_0x1174d5(0x1d9)](_0x1174d5(0x1bf)+_0x57b32d);const _0x5c87cb=[];for(const [_0x361d42,_0x428000]of _0x364724[_0x1174d5(0x1ac)]()){if(_0x428000[_0x1174d5(0x1b4)]===0x1){_0x5c87cb[_0x1174d5(0x1b0)](_0x428000[0x0]);continue;}const _0x3a4026=_0x4059d4[_0x1174d5(0x1db)][_0x361d42],_0x1fbd0f=_0x3a4026?.[_0x1174d5(0x1c6)],_0x5afb98=_0x1fbd0f?_0x428000[_0x1174d5(0x1a7)](_0x1b7323=>_0x1b7323[_0x1174d5(0x1a6)]!==_0x1fbd0f):_0x428000;if(_0x3a4026&&_0x5afb98[_0x1174d5(0x1b4)]===0x1){_0x5c87cb['push'](_0x5afb98[0x0]);continue;}throw CliErrors[_0x1174d5(0x1d9)]('Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20'+_0x361d42+_0x1174d5(0x1b1));}return _0x5c87cb;}export const sqlPush={'service':a190_0x1e1511(0x1bd),'command':a190_0x1e1511(0x1b0),'description':'Push\x20local\x20SQL\x20files\x20to\x20remote','risk':a190_0x1e1511(0x1be),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':'force','type':a190_0x1e1511(0x1b3),'description':a190_0x1e1511(0x1b6)}],async 'dryRun'(_0x2365ff){const _0x5c27bb=a190_0x1e1511,_0x544f1f=loadSqlProjectConfig(_0x2365ff[_0x5c27bb(0x1ae)]),_0x5c01e6=await readSqlLockFile(_0x544f1f['lockFilePath']),{appLock:_0x2fad7d}=ensureSqlLockScope(_0x5c01e6??createEmptySqlLock(),_0x2365ff[_0x5c27bb(0x1ae)],_0x544f1f[_0x5c27bb(0x1b9)],'push'),_0xe2af3d=await getTargetSqlQueries(_0x544f1f,_0x2fad7d,_0x2365ff[_0x5c27bb(0x1a4)](_0x5c27bb(0x1d0))||undefined),_0x30687b=[];for(const _0x5ed3e0 of _0xe2af3d){const _0x318cc6=await computeSqlFileHash(_0x5ed3e0[_0x5c27bb(0x1a5)]),_0x44a87a=_0x2fad7d[_0x5c27bb(0x1db)][_0x5ed3e0[_0x5c27bb(0x1de)]],_0x27b98b=!!_0x44a87a&&(_0x44a87a[_0x5c27bb(0x1c6)]!==_0x5ed3e0[_0x5c27bb(0x1a6)]||!!_0x5ed3e0['sqlName']&&_0x44a87a['sqlName']!==_0x5ed3e0[_0x5c27bb(0x1dd)]);if(!_0x2365ff[_0x5c27bb(0x1a8)](_0x5c27bb(0x1cb))&&_0x44a87a&&_0x44a87a[_0x5c27bb(0x1bb)]===_0x318cc6&&!_0x27b98b)continue;_0x30687b['push'](_0x5ed3e0[_0x5c27bb(0x1de)]);}return{'method':_0x5c27bb(0x1d2),'url':_0x5c27bb(0x1ba),'body':{'sqlCodes':_0x30687b,'appCode':_0x2365ff[_0x5c27bb(0x1ae)]},'description':_0x5c27bb(0x1e1)+_0x30687b['length']+_0x5c27bb(0x1b8)};},async 'execute'(_0xd407d3){const _0x148285=a190_0x1e1511,_0x5635e1=loadSqlProjectConfig(_0xd407d3[_0x148285(0x1ae)]),_0x476d4b=await readSqlLockFile(_0x5635e1['lockFilePath']),{lockData:_0x4514b2,appLock:_0x27ef7d}=ensureSqlLockScope(_0x476d4b??createEmptySqlLock(),_0xd407d3[_0x148285(0x1ae)],_0x5635e1[_0x148285(0x1b9)],_0x148285(0x1b0)),_0x5eebc1=await getTargetSqlQueries(_0x5635e1,_0x27ef7d,_0xd407d3[_0x148285(0x1a4)](_0x148285(0x1d0))||undefined);if(_0x5eebc1['length']===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':'No\x20local\x20SQL\x20files\x20found.'};const _0x44f27a=[],_0x30070d=[],_0x5c8028=[];for(const _0x11738d of _0x5eebc1){const _0x4388fb=_0x27ef7d['sqls'][_0x11738d[_0x148285(0x1de)]];if(!_0x4388fb){_0x5c8028[_0x148285(0x1b0)]({'sqlCode':_0x11738d[_0x148285(0x1de)],'error':_0x148285(0x1ab)});continue;}try{const _0x2c2b22=await computeSqlFileHash(_0x11738d['filePath']),_0x36f12f=_0x4388fb['path']!==_0x11738d[_0x148285(0x1a6)]||!!_0x11738d[_0x148285(0x1dd)]&&_0x4388fb['sqlName']!==_0x11738d[_0x148285(0x1dd)];if(!_0xd407d3[_0x148285(0x1a8)]('force')&&_0x4388fb[_0x148285(0x1bb)]===_0x2c2b22&&!_0x36f12f){_0x30070d['push']({'sqlCode':_0x11738d[_0x148285(0x1de)],'reason':_0x148285(0x1a3)});continue;}if(_0x4388fb[_0x148285(0x1c0)]==null){_0x5c8028['push']({'sqlCode':_0x11738d[_0x148285(0x1de)],'error':_0x148285(0x1cc)});continue;}const _0x10fb12=await readFile(_0x11738d[_0x148285(0x1a5)],_0x148285(0x1c7)),_0x1c3a98=stripLocalSqlMetadata(_0x10fb12,_0x11738d['mode']),_0x28a1ff=_0x11738d[_0x148285(0x1dd)]||_0x4388fb['sqlName'],_0xcf708f=await resolveTargetDbBinding(_0xd407d3[_0x148285(0x1ae)],_0x11738d,_0x4388fb),_0x5a0e8d=await updateSqlQuery({'id':_0x4388fb['remoteId'],'appCode':_0xd407d3['appCode'],'sqlCode':_0x11738d[_0x148285(0x1de)],'sqlName':_0x28a1ff,'dbId':_0xcf708f[_0x148285(0x1c4)],'version':_0x4388fb[_0x148285(0x1c0)],'sqlContent':_0x1c3a98,'sqlConfig':_0x4388fb['sqlConfig']??undefined}),_0x506338=_0x5a0e8d[_0x148285(0x1c4)]?await getDbName(_0xd407d3[_0x148285(0x1ae)],Number(_0x5a0e8d[_0x148285(0x1c4)]))[_0x148285(0x1aa)](()=>_0xcf708f['dbName']):_0xcf708f[_0x148285(0x1c5)];_0x27ef7d[_0x148285(0x1db)][_0x11738d[_0x148285(0x1de)]]={...buildSqlLockEntry(_0x5a0e8d,_0x1c3a98,_0x2c2b22,{'dbName':_0x506338}),'path':_0x11738d['relativePath'],'mode':_0x4388fb[_0x148285(0x1cd)]},await archivePreviousSqlFileIfNeeded(_0x5635e1,_0x4388fb[_0x148285(0x1c6)],_0x11738d[_0x148285(0x1a6)]),_0x44f27a[_0x148285(0x1b0)]({'sqlCode':_0x11738d['sqlCode'],'remoteId':_0x4388fb[_0x148285(0x1d7)]});}catch(_0x358005){_0x5c8028['push']({'sqlCode':_0x11738d[_0x148285(0x1de)],'error':_0x358005 instanceof Error?_0x358005[_0x148285(0x1ce)]:String(_0x358005)});}}return _0x27ef7d[_0x148285(0x1d1)]=new Date()[_0x148285(0x1b7)](),await writeSqlLockFile(_0x5635e1['lockFilePath'],_0x4514b2),{'ok':_0x5c8028['length']===0x0,'data':{'pushed':_0x44f27a,'skipped':_0x30070d,'failed':_0x5c8028},'message':'Push\x20complete:\x20'+_0x44f27a[_0x148285(0x1b4)]+_0x148285(0x1d5)+_0x30070d[_0x148285(0x1b4)]+_0x148285(0x1df)+_0x5c8028[_0x148285(0x1b4)]+'\x20failed'};}};async function archivePreviousSqlFileIfNeeded(_0x3c0b26,_0x4815a5,_0xb98a41){const _0xd92776=a190_0x1e1511;if(!_0x4815a5||_0x4815a5===_0xb98a41)return;const _0x2e5829=join(_0x3c0b26[_0xd92776(0x1b5)],_0x4815a5);if(!await fileExists(_0x2e5829))return;const _0x36e42b=await moveToTrash(_0x3c0b26[_0xd92776(0x1a2)],_0x3c0b26[_0xd92776(0x1d8)],_0x2e5829);await cleanupEmptyDirectories(dirname(_0x2e5829),_0x3c0b26[_0xd92776(0x1b5)]),void _0x36e42b;}async function moveToTrash(_0x1b3c57,_0x15c524,_0x3c96d6){const _0x370ef0=a190_0x1e1511,_0x124dd9=new Date()[_0x370ef0(0x1b7)]()[_0x370ef0(0x1af)](/[:.]/g,'-'),_0x5b5495=relative(_0x1b3c57,_0x3c96d6),_0x18f90f=join(_0x15c524,_0x124dd9,_0x5b5495);return await mkdir(dirname(_0x18f90f),{'recursive':!![]}),await rename(_0x3c96d6,_0x18f90f),_0x18f90f;}async function cleanupEmptyDirectories(_0x4b7830,_0x52ac50){const _0x2f0f73=a190_0x1e1511;let _0x45a344=resolve(_0x4b7830);const _0x1d02d1=resolve(_0x52ac50);while(_0x45a344[_0x2f0f73(0x1a1)](''+_0x1d02d1+sep)||_0x45a344===_0x1d02d1){if(_0x45a344===_0x1d02d1)return;try{const _0x570621=await readdir(_0x45a344);if(_0x570621['length']>0x0)return;await rmdir(_0x45a344);}catch{return;}_0x45a344=dirname(_0x45a344);}}async function resolveTargetDbBinding(_0x2c53e2,_0x34ae8b,_0x21dca5){const _0x3b0d8c=a190_0x1e1511,_0x581917=_0x34ae8b[_0x3b0d8c(0x1c2)];if(!_0x581917)return{'dbId':_0x21dca5[_0x3b0d8c(0x1c4)],'dbName':_0x21dca5[_0x3b0d8c(0x1c5)]};const _0x48c2e9=buildDbDirectoryName(_0x21dca5[_0x3b0d8c(0x1c5)],_0x21dca5[_0x3b0d8c(0x1c4)]);if(_0x581917===_0x48c2e9)return{'dbId':_0x21dca5[_0x3b0d8c(0x1c4)],'dbName':_0x21dca5[_0x3b0d8c(0x1c5)]};const _0x523e89=parseExplicitDbDirectory(_0x581917);if(_0x523e89!=null)return{'dbId':_0x523e89,'dbName':await getDbName(_0x2c53e2,_0x523e89)[_0x3b0d8c(0x1aa)](()=>undefined)};const _0x2b1e67=await listDatabases(_0x2c53e2),_0x4d314a=_0x2b1e67[_0x3b0d8c(0x1a7)](_0x5eeb27=>buildDbDirectoryName(_0x5eeb27['dbName'],_0x5eeb27[_0x3b0d8c(0x1c4)])===_0x581917);if(_0x4d314a[_0x3b0d8c(0x1b4)]===0x1)return{'dbId':_0x4d314a[0x0][_0x3b0d8c(0x1c4)],'dbName':_0x4d314a[0x0][_0x3b0d8c(0x1c5)]};if(_0x4d314a[_0x3b0d8c(0x1b4)]===0x0)throw CliErrors[_0x3b0d8c(0x1d9)](_0x3b0d8c(0x1d4)+_0x581917+_0x3b0d8c(0x1da)+_0x34ae8b['sqlCode']+'.');const _0x6057e6=_0x4d314a[_0x3b0d8c(0x1a0)](_0x1491e1=>_0x1491e1[_0x3b0d8c(0x1c5)]+'\x20('+_0x1491e1['dbId']+')')[_0x3b0d8c(0x1c8)](',\x20');throw CliErrors[_0x3b0d8c(0x1d9)](_0x3b0d8c(0x1c3)+_0x581917+'\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20'+_0x34ae8b[_0x3b0d8c(0x1de)]+':\x20'+_0x6057e6);}function parseExplicitDbDirectory(_0x59712a){const _0x276da7=a190_0x1e1511,_0x11ad78=/^db-(\d+)$/['exec'](_0x59712a);if(!_0x11ad78)return null;const _0x4c1851=Number(_0x11ad78[0x1]);return Number[_0x276da7(0x1bc)](_0x4c1851)&&_0x4c1851>0x0?_0x4c1851:null;}
@@ -1 +1 @@
1
- const a183_0x3f9d23=a183_0x4a7b;(function(_0x470990,_0x53a1ad){const _0x2ba535=a183_0x4a7b,_0x45a29b=_0x470990();while(!![]){try{const _0x50b3f9=parseInt(_0x2ba535(0xa9))/0x1+-parseInt(_0x2ba535(0xa1))/0x2+-parseInt(_0x2ba535(0x80))/0x3+-parseInt(_0x2ba535(0x9a))/0x4+-parseInt(_0x2ba535(0x8d))/0x5*(parseInt(_0x2ba535(0x8f))/0x6)+parseInt(_0x2ba535(0xa4))/0x7+-parseInt(_0x2ba535(0x89))/0x8*(-parseInt(_0x2ba535(0xaa))/0x9);if(_0x50b3f9===_0x53a1ad)break;else _0x45a29b['push'](_0x45a29b['shift']());}catch(_0x1569a3){_0x45a29b['push'](_0x45a29b['shift']());}}}(a183_0xd3ee,0x63062));import{createInterface}from'node:readline';import{join}from'node:path';import{buildDefaultSqlFileName,buildSqlRelativePath,detectSqlMode}from'../../core/sql-sync/utils.js';function a183_0xd3ee(){const _0x4ec258=['sqls','description','endsWith','push','yes','close','2176EdNRJc','syncedAt','dbName','includes','670SAkoRw','<!--\x20@lovrabet.','29706nlJGHi','trimStart','sqlCode','sqlName','lastSync','mode','test','question','\x20[y/N]\x20','join','trim','2933484CuIfIF','path','--\x20@lovrabet.','\x20-->','dbId','filter','replace','740026GIkAaR','split','fromEntries','1991339ZnonsN','map','length','sqlConfig','.rabetbase/sql','701947UnAZDR','49122pkLVdz','895740mBVrnV','entries','version'];a183_0xd3ee=function(){return _0x4ec258;};return a183_0xd3ee();}export const SQL_LOCAL_REL_DIR=a183_0x3f9d23(0xa8);export function buildSqlLockEntry(_0x5815eb,_0x31dfaa,_0x58bec0,_0x402e9b){const _0x3cce6b=a183_0x3f9d23,_0x25f9e3=detectSqlMode(_0x31dfaa);return{'path':buildSqlRelativePath(_0x5815eb[_0x3cce6b(0x91)],_0x5815eb[_0x3cce6b(0x92)],_0x402e9b?.[_0x3cce6b(0x8b)],_0x25f9e3,_0x5815eb[_0x3cce6b(0x9e)]),'hash':_0x58bec0,'remoteId':_0x5815eb['id'],'version':_0x5815eb[_0x3cce6b(0x82)],'dbId':Number(_0x5815eb[_0x3cce6b(0x9e)]),'dbName':_0x402e9b?.['dbName'],'sqlName':_0x5815eb['sqlName'],'sqlConfig':_0x5815eb[_0x3cce6b(0xa7)]??undefined,'mode':_0x25f9e3};}export function cloneSqlLockData(_0xf7b886){const _0x3e7147=a183_0x3f9d23;return{'apps':Object[_0x3e7147(0xa3)](Object[_0x3e7147(0x81)](_0xf7b886['apps'])[_0x3e7147(0xa5)](([_0x583617,_0x3188b9])=>[_0x583617,{'sqlRoot':_0x3188b9['sqlRoot'],'lastSync':_0x3188b9[_0x3e7147(0x93)],'sqls':{..._0x3188b9[_0x3e7147(0x83)]}}]))};}export function ensureRemoteSqlContent(_0x37f222){return _0x37f222['sqlContent']??'';}export function buildLocalSqlFileContent(_0x22d93a,_0x3b2f6b,_0x3cff55){const _0x2505c6=a183_0x3f9d23,_0x20597f=_0x3cff55?.[_0x2505c6(0x94)]??detectSqlMode(_0x3b2f6b),_0x27cc6d=stripLocalSqlMetadata(_0x3b2f6b,_0x20597f)[_0x2505c6(0x99)](),_0x521f28=[...buildMetadataHeaderLines({'sqlCode':_0x22d93a[_0x2505c6(0x91)],'sqlName':_0x22d93a[_0x2505c6(0x92)],'dbId':_0x22d93a[_0x2505c6(0x9e)],'dbName':_0x3cff55?.[_0x2505c6(0x8b)],'mode':_0x20597f,'syncedAt':_0x3cff55?.[_0x2505c6(0x8a)],'description':_0x3cff55?.[_0x2505c6(0x84)]},_0x20597f),'',_0x27cc6d],_0x35bd82=_0x521f28[_0x2505c6(0x98)]('\x0a');return _0x35bd82[_0x2505c6(0x85)]('\x0a')?_0x35bd82:_0x35bd82+'\x0a';}export function stripLocalSqlMetadata(_0x186a9f,_0x437f0f){const _0x12592e=a183_0x3f9d23,_0x3a46f4=_0x186a9f[_0x12592e(0xa0)](/\r\n/g,'\x0a')[_0x12592e(0xa2)]('\x0a'),_0x3330a2=[];let _0x5b6bf6=0x0;if(_0x437f0f==='mybatisXml')while(_0x5b6bf6<_0x3a46f4[_0x12592e(0xa6)]){const _0x4715ee=_0x3a46f4[_0x5b6bf6]??'';if(/^\s*<!--\s*@lovrabet\./[_0x12592e(0x95)](_0x4715ee)){_0x5b6bf6++;continue;}if(_0x4715ee[_0x12592e(0x99)]()===''&&_0x5b6bf6>0x0){_0x5b6bf6++;continue;}break;}else while(_0x5b6bf6<_0x3a46f4[_0x12592e(0xa6)]){const _0x3c0c23=_0x3a46f4[_0x5b6bf6]??'';if(/^\s*--\s*@lovrabet\./['test'](_0x3c0c23)){_0x5b6bf6++;continue;}if(_0x3c0c23[_0x12592e(0x99)]()===''&&_0x5b6bf6>0x0){_0x5b6bf6++;continue;}break;}for(;_0x5b6bf6<_0x3a46f4[_0x12592e(0xa6)];_0x5b6bf6++){_0x3330a2[_0x12592e(0x86)](_0x3a46f4[_0x5b6bf6]);}return _0x3330a2[_0x12592e(0x98)]('\x0a')[_0x12592e(0x90)]();}export function resolveSqlMode(_0x4b44f1,_0x236ec5){if(_0x236ec5?.['mode'])return _0x236ec5['mode'];return detectSqlMode(_0x4b44f1);}function a183_0x4a7b(_0xdbb167,_0x141d2c){_0xdbb167=_0xdbb167-0x80;const _0xd3ee52=a183_0xd3ee();let _0x4a7b8b=_0xd3ee52[_0xdbb167];return _0x4a7b8b;}export function resolveSqlFileName(_0x25ee65,_0x565da1,_0x110a09){const _0x582bb9=a183_0x3f9d23;if(_0x110a09?.[_0x582bb9(0x9b)])return _0x110a09[_0x582bb9(0x9b)];if(_0x110a09?.[_0x582bb9(0x92)]||_0x110a09?.['dbName'])return buildSqlRelativePath(_0x25ee65,_0x110a09?.[_0x582bb9(0x92)],_0x110a09?.[_0x582bb9(0x8b)],resolveSqlMode(_0x565da1,_0x110a09),_0x110a09?.[_0x582bb9(0x9e)]);return buildDefaultSqlFileName(_0x25ee65,resolveSqlMode(_0x565da1,_0x110a09));}export function resolveSqlLocalDir(_0xd53cc8,_0xa51b3b){return join(_0xd53cc8,SQL_LOCAL_REL_DIR,_0xa51b3b);}export async function confirmForceOverwrite(_0x3ea1b3){const _0x149969=a183_0x3f9d23,_0x1ec801=createInterface({'input':process['stdin'],'output':process['stderr']}),_0x191d90=await new Promise(_0x12ce96=>{const _0x4a229c=a183_0x4a7b;_0x1ec801[_0x4a229c(0x96)](_0x3ea1b3+_0x4a229c(0x97),_0x12ce96);});return _0x1ec801[_0x149969(0x88)](),['y',_0x149969(0x87)][_0x149969(0x8c)](_0x191d90[_0x149969(0x99)]()['toLowerCase']());}export function findSqlLockScope(_0x3c1096,_0x387517){return _0x3c1096['apps'][_0x387517];}function buildMetadataHeaderLines(_0x16530a,_0x21ad2d){const _0x28ebb4=a183_0x3f9d23,_0x467bef=[['sqlCode',_0x16530a['sqlCode']],[_0x28ebb4(0x92),_0x16530a[_0x28ebb4(0x92)]],[_0x28ebb4(0x9e),_0x16530a[_0x28ebb4(0x9e)]],[_0x28ebb4(0x8b),_0x16530a[_0x28ebb4(0x8b)]],['mode',_0x16530a[_0x28ebb4(0x94)]],[_0x28ebb4(0x8a),_0x16530a[_0x28ebb4(0x8a)]],[_0x28ebb4(0x84),_0x16530a[_0x28ebb4(0x84)]]];if(_0x21ad2d==='mybatisXml')return _0x467bef[_0x28ebb4(0x9f)](([,_0x12c4e8])=>_0x12c4e8!==undefined&&_0x12c4e8!==null&&String(_0x12c4e8)[_0x28ebb4(0x99)]()!=='')['map'](([_0x5b9aca,_0x6dd606])=>_0x28ebb4(0x8e)+_0x5b9aca+':\x20'+String(_0x6dd606)+_0x28ebb4(0x9d));return _0x467bef['filter'](([,_0x5eab71])=>_0x5eab71!==undefined&&_0x5eab71!==null&&String(_0x5eab71)['trim']()!=='')['map'](([_0x55c6fb,_0x4cbbeb])=>_0x28ebb4(0x9c)+_0x55c6fb+':\x20'+String(_0x4cbbeb));}
1
+ const a191_0x528f98=a191_0x17f4;(function(_0x1e2b21,_0x2b3e02){const _0x3aed33=a191_0x17f4,_0x51a0f8=_0x1e2b21();while(!![]){try{const _0x11af1e=parseInt(_0x3aed33(0x1b7))/0x1+-parseInt(_0x3aed33(0x1d5))/0x2+parseInt(_0x3aed33(0x1c7))/0x3+-parseInt(_0x3aed33(0x1c8))/0x4*(-parseInt(_0x3aed33(0x1b4))/0x5)+parseInt(_0x3aed33(0x1cc))/0x6+-parseInt(_0x3aed33(0x1c4))/0x7+-parseInt(_0x3aed33(0x1cb))/0x8;if(_0x11af1e===_0x2b3e02)break;else _0x51a0f8['push'](_0x51a0f8['shift']());}catch(_0x230c20){_0x51a0f8['push'](_0x51a0f8['shift']());}}}(a191_0x11c0,0x8ef10));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=a191_0x528f98(0x1c1);export function buildSqlLockEntry(_0x2da6a8,_0x1576c8,_0x398840,_0x3cda43){const _0x31a00b=a191_0x528f98,_0x3af500=detectSqlMode(_0x1576c8);return{'path':buildSqlRelativePath(_0x2da6a8[_0x31a00b(0x1cd)],_0x2da6a8[_0x31a00b(0x1b9)],_0x3cda43?.[_0x31a00b(0x1bf)],_0x3af500,_0x2da6a8[_0x31a00b(0x1d6)]),'hash':_0x398840,'remoteId':_0x2da6a8['id'],'version':_0x2da6a8[_0x31a00b(0x1b8)],'dbId':Number(_0x2da6a8['dbId']),'dbName':_0x3cda43?.[_0x31a00b(0x1bf)],'sqlName':_0x2da6a8['sqlName'],'sqlConfig':_0x2da6a8['sqlConfig']??undefined,'mode':_0x3af500};}export function cloneSqlLockData(_0x3e38c3){const _0xb57240=a191_0x528f98;return{'apps':Object['fromEntries'](Object[_0xb57240(0x1c6)](_0x3e38c3[_0xb57240(0x1db)])['map'](([_0x5d407b,_0x27519a])=>[_0x5d407b,{'sqlRoot':_0x27519a[_0xb57240(0x1d8)],'lastSync':_0x27519a['lastSync'],'sqls':{..._0x27519a[_0xb57240(0x1c0)]}}]))};}function a191_0x17f4(_0x117cb7,_0x3edf0f){_0x117cb7=_0x117cb7-0x1b4;const _0x11c05a=a191_0x11c0();let _0x17f471=_0x11c05a[_0x117cb7];return _0x17f471;}export function ensureRemoteSqlContent(_0x46dc5e){const _0x7dbc41=a191_0x528f98;return _0x46dc5e[_0x7dbc41(0x1ca)]??'';}export function buildLocalSqlFileContent(_0x291463,_0x1ee331,_0x4b0859){const _0x35c90d=a191_0x528f98,_0xd4293f=_0x4b0859?.['mode']??detectSqlMode(_0x1ee331),_0x47d0e0=stripLocalSqlMetadata(_0x1ee331,_0xd4293f)[_0x35c90d(0x1ba)](),_0x4a62b3=[...buildMetadataHeaderLines({'sqlCode':_0x291463[_0x35c90d(0x1cd)],'sqlName':_0x291463[_0x35c90d(0x1b9)],'dbId':_0x291463['dbId'],'dbName':_0x4b0859?.[_0x35c90d(0x1bf)],'mode':_0xd4293f,'syncedAt':_0x4b0859?.[_0x35c90d(0x1d1)],'description':_0x4b0859?.[_0x35c90d(0x1c5)]},_0xd4293f),'',_0x47d0e0],_0x421f2d=_0x4a62b3[_0x35c90d(0x1bb)]('\x0a');return _0x421f2d[_0x35c90d(0x1c9)]('\x0a')?_0x421f2d:_0x421f2d+'\x0a';}function a191_0x11c0(){const _0x2b2e92=['\x20-->','map','toLowerCase','dbName','sqls','.rabetbase/sql','--\x20@lovrabet.','mode','446572MnrfCw','description','entries','1252575NGltrS','12RVapnr','endsWith','sqlContent','5341976XZscJZ','6961260gBdeHv','sqlCode','close','yes','replace','syncedAt','trimStart','path','\x20[y/N]\x20','2081920bbErkL','dbId','<!--\x20@lovrabet.','sqlRoot','mybatisXml','push','apps','includes','1218030blquDK','length','test','49438LIgMWz','version','sqlName','trim','join'];a191_0x11c0=function(){return _0x2b2e92;};return a191_0x11c0();}export function stripLocalSqlMetadata(_0x46c157,_0xe32367){const _0x1c8a06=a191_0x528f98,_0x57d910=_0x46c157[_0x1c8a06(0x1d0)](/\r\n/g,'\x0a')['split']('\x0a'),_0x2f3354=[];let _0x31a21d=0x0;if(_0xe32367==='mybatisXml')while(_0x31a21d<_0x57d910[_0x1c8a06(0x1b5)]){const _0x586a75=_0x57d910[_0x31a21d]??'';if(/^\s*<!--\s*@lovrabet\./[_0x1c8a06(0x1b6)](_0x586a75)){_0x31a21d++;continue;}if(_0x586a75[_0x1c8a06(0x1ba)]()===''&&_0x31a21d>0x0){_0x31a21d++;continue;}break;}else while(_0x31a21d<_0x57d910[_0x1c8a06(0x1b5)]){const _0x40ca24=_0x57d910[_0x31a21d]??'';if(/^\s*--\s*@lovrabet\./[_0x1c8a06(0x1b6)](_0x40ca24)){_0x31a21d++;continue;}if(_0x40ca24[_0x1c8a06(0x1ba)]()===''&&_0x31a21d>0x0){_0x31a21d++;continue;}break;}for(;_0x31a21d<_0x57d910[_0x1c8a06(0x1b5)];_0x31a21d++){_0x2f3354[_0x1c8a06(0x1da)](_0x57d910[_0x31a21d]);}return _0x2f3354[_0x1c8a06(0x1bb)]('\x0a')[_0x1c8a06(0x1d2)]();}export function resolveSqlMode(_0x305148,_0x565767){const _0x891903=a191_0x528f98;if(_0x565767?.[_0x891903(0x1c3)])return _0x565767[_0x891903(0x1c3)];return detectSqlMode(_0x305148);}export function resolveSqlFileName(_0x41c12a,_0x33ba49,_0x176e11){const _0x21c93e=a191_0x528f98;if(_0x176e11?.[_0x21c93e(0x1d3)])return _0x176e11['path'];if(_0x176e11?.[_0x21c93e(0x1b9)]||_0x176e11?.[_0x21c93e(0x1bf)])return buildSqlRelativePath(_0x41c12a,_0x176e11?.[_0x21c93e(0x1b9)],_0x176e11?.['dbName'],resolveSqlMode(_0x33ba49,_0x176e11),_0x176e11?.[_0x21c93e(0x1d6)]);return buildDefaultSqlFileName(_0x41c12a,resolveSqlMode(_0x33ba49,_0x176e11));}export function resolveSqlLocalDir(_0x2b2da1,_0x53a938){return join(_0x2b2da1,SQL_LOCAL_REL_DIR,_0x53a938);}export async function confirmForceOverwrite(_0x4b5fe0){const _0x175e0d=a191_0x528f98,_0x2e05a5=createInterface({'input':process['stdin'],'output':process['stderr']}),_0x13af4c=await new Promise(_0x502cdd=>{const _0xca0ba7=a191_0x17f4;_0x2e05a5['question'](_0x4b5fe0+_0xca0ba7(0x1d4),_0x502cdd);});return _0x2e05a5[_0x175e0d(0x1ce)](),['y',_0x175e0d(0x1cf)][_0x175e0d(0x1dc)](_0x13af4c[_0x175e0d(0x1ba)]()[_0x175e0d(0x1be)]());}export function findSqlLockScope(_0x46baad,_0x53aea8){const _0x621e3d=a191_0x528f98;return _0x46baad[_0x621e3d(0x1db)][_0x53aea8];}function buildMetadataHeaderLines(_0x1af2ee,_0xde1953){const _0x1e4196=a191_0x528f98,_0x52177f=[[_0x1e4196(0x1cd),_0x1af2ee[_0x1e4196(0x1cd)]],[_0x1e4196(0x1b9),_0x1af2ee[_0x1e4196(0x1b9)]],[_0x1e4196(0x1d6),_0x1af2ee[_0x1e4196(0x1d6)]],[_0x1e4196(0x1bf),_0x1af2ee['dbName']],[_0x1e4196(0x1c3),_0x1af2ee[_0x1e4196(0x1c3)]],[_0x1e4196(0x1d1),_0x1af2ee[_0x1e4196(0x1d1)]],[_0x1e4196(0x1c5),_0x1af2ee[_0x1e4196(0x1c5)]]];if(_0xde1953===_0x1e4196(0x1d9))return _0x52177f['filter'](([,_0x1010fa])=>_0x1010fa!==undefined&&_0x1010fa!==null&&String(_0x1010fa)['trim']()!=='')[_0x1e4196(0x1bd)](([_0x35b560,_0x17aeb7])=>_0x1e4196(0x1d7)+_0x35b560+':\x20'+String(_0x17aeb7)+_0x1e4196(0x1bc));return _0x52177f['filter'](([,_0x45c701])=>_0x45c701!==undefined&&_0x45c701!==null&&String(_0x45c701)['trim']()!=='')['map'](([_0x5a93bf,_0x4ccf94])=>_0x1e4196(0x1c2)+_0x5a93bf+':\x20'+String(_0x4ccf94));}
@@ -1 +1 @@
1
- const a184_0x5053ce=a184_0x541a;(function(_0xf0ad48,_0x1a9b71){const _0x535fb1=a184_0x541a,_0x59c361=_0xf0ad48();while(!![]){try{const _0x5a2fef=parseInt(_0x535fb1(0x119))/0x1+parseInt(_0x535fb1(0x12a))/0x2*(-parseInt(_0x535fb1(0x11e))/0x3)+parseInt(_0x535fb1(0x11c))/0x4*(parseInt(_0x535fb1(0x130))/0x5)+-parseInt(_0x535fb1(0x133))/0x6*(-parseInt(_0x535fb1(0x128))/0x7)+-parseInt(_0x535fb1(0x115))/0x8*(parseInt(_0x535fb1(0x11a))/0x9)+-parseInt(_0x535fb1(0x125))/0xa+-parseInt(_0x535fb1(0x111))/0xb*(parseInt(_0x535fb1(0x12f))/0xc);if(_0x5a2fef===_0x1a9b71)break;else _0x59c361['push'](_0x59c361['shift']());}catch(_0x16d3ba){_0x59c361['push'](_0x59c361['shift']());}}}(a184_0xe264,0x88082));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';function a184_0xe264(){const _0x254b0c=['21969UfZGsW','path','152iSPanQ','hash','12RydakK','sql','\x20missing,\x20','status','tableData','remote','sqlCode','3101570zlLZNj','has','\x20modified,\x20','147133VRyMfV','\x20remote-only','39458pbnnqg','read','sqls','sqlRoot','length','8844ccUoER','112175dCPbYM','map','Check\x20local\x20SQL\x20sync\x20status\x20against\x20lock\x20file','162VgJsNq','keys','paging','lockKey','relativePath','Also\x20check\x20for\x20remote-only\x20SQL\x20queries\x20not\x20present\x20locally','55VSJAMs','totalCount','filePath','bool','3184zrKBtR','push','sqlName','appCode','501419GyRCaZ'];a184_0xe264=function(){return _0x254b0c;};return a184_0xe264();}import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile}from'../../core/sql-sync/lock.js';function a184_0x541a(_0x96d1c0,_0x211738){_0x96d1c0=_0x96d1c0-0x10c;const _0xe2642c=a184_0xe264();let _0x541a90=_0xe2642c[_0x96d1c0];return _0x541a90;}const PAGE_SIZE=0x64;async function fetchAllSqlCodes(_0x548894){const _0x334f17=a184_0x541a,_0x54fd72=[];let _0x59b2d7=0x1;while(!![]){const _0x47323a=await listSqlQueries(_0x548894,{'currentPage':_0x59b2d7,'pageSize':PAGE_SIZE}),_0xf121c1=_0x47323a[_0x334f17(0x122)]??[];_0x54fd72[_0x334f17(0x116)](..._0xf121c1[_0x334f17(0x131)](_0x4ddbb9=>_0x4ddbb9[_0x334f17(0x124)]));if(_0xf121c1[_0x334f17(0x12e)]===0x0)break;const _0x5db315=_0x47323a[_0x334f17(0x10d)]?.[_0x334f17(0x112)];if(_0x5db315!=null?_0x54fd72[_0x334f17(0x12e)]>=_0x5db315:_0xf121c1[_0x334f17(0x12e)]<PAGE_SIZE)break;_0x59b2d7++;}return _0x54fd72;}export const sqlStatus={'service':a184_0x5053ce(0x11f),'command':a184_0x5053ce(0x121),'description':a184_0x5053ce(0x132),'risk':a184_0x5053ce(0x12b),'flags':[{'name':a184_0x5053ce(0x123),'type':'boolean','description':a184_0x5053ce(0x110)}],async 'execute'(_0x3c7cdc){const _0x1879c8=a184_0x5053ce,_0x500493=loadSqlProjectConfig(_0x3c7cdc[_0x1879c8(0x118)]),_0xa064fe=await readSqlLockFile(_0x500493['lockFilePath']),{appLock:_0x2326a7}=ensureSqlLockScope(_0xa064fe??createEmptySqlLock(),_0x500493['appCode'],_0x500493[_0x1879c8(0x12d)],_0x1879c8(0x121)),_0x7a812b=await scanLocalSqlQueries(_0x500493),_0x56d68a=[],_0x5cb44d=[],_0x3e58f2=[],_0x28ccfa=[],_0x4909df=new Set(_0x7a812b[_0x1879c8(0x131)](_0x53c49b=>_0x53c49b[_0x1879c8(0x10e)]));for(const _0x198eb5 of _0x7a812b){const _0x1927fc=await computeSqlFileHash(_0x198eb5[_0x1879c8(0x113)]),_0x3738b7=_0x2326a7[_0x1879c8(0x12c)][_0x198eb5['lockKey']],_0x4946d1=!!_0x3738b7&&_0x3738b7[_0x1879c8(0x11b)]!==_0x198eb5[_0x1879c8(0x10f)],_0x5ad89a=!!_0x3738b7&&!!_0x198eb5[_0x1879c8(0x117)]&&_0x3738b7[_0x1879c8(0x117)]!==_0x198eb5[_0x1879c8(0x117)];if(!_0x3738b7)_0x56d68a[_0x1879c8(0x116)](_0x198eb5[_0x1879c8(0x10e)]);else _0x3738b7[_0x1879c8(0x11d)]!==_0x1927fc||_0x4946d1||_0x5ad89a?_0x5cb44d[_0x1879c8(0x116)](_0x198eb5[_0x1879c8(0x10e)]):_0x3e58f2['push'](_0x198eb5[_0x1879c8(0x10e)]);}for(const _0xe7c285 of Object[_0x1879c8(0x10c)](_0x2326a7['sqls'])){!_0x4909df[_0x1879c8(0x126)](_0xe7c285)&&_0x28ccfa[_0x1879c8(0x116)](_0xe7c285);}const _0x2eb033=[];if(_0x3c7cdc[_0x1879c8(0x114)](_0x1879c8(0x123))){const _0x3c1672=await fetchAllSqlCodes(_0x3c7cdc[_0x1879c8(0x118)]);for(const _0x2f134b of _0x3c1672){!_0x4909df['has'](_0x2f134b)&&!_0x2326a7['sqls'][_0x2f134b]&&_0x2eb033[_0x1879c8(0x116)](_0x2f134b);}}const _0x2b4481=_0x56d68a['length']===0x0&&_0x5cb44d[_0x1879c8(0x12e)]===0x0&&_0x28ccfa[_0x1879c8(0x12e)]===0x0&&_0x2eb033[_0x1879c8(0x12e)]===0x0;return{'ok':!![],'data':{'added':_0x56d68a,'modified':_0x5cb44d,'missing':_0x28ccfa,'unchanged':_0x3e58f2,'remoteOnly':_0x2eb033},'message':_0x2b4481?'All\x20SQL\x20queries\x20are\x20in\x20sync.':_0x56d68a[_0x1879c8(0x12e)]+'\x20added,\x20'+_0x5cb44d['length']+_0x1879c8(0x127)+_0x28ccfa[_0x1879c8(0x12e)]+_0x1879c8(0x120)+_0x3e58f2['length']+'\x20unchanged'+(_0x2eb033[_0x1879c8(0x12e)]>0x0?',\x20'+_0x2eb033[_0x1879c8(0x12e)]+_0x1879c8(0x129):'')};}};
1
+ const a192_0x370e74=a192_0x53fb;(function(_0x361721,_0x519e10){const _0x45a441=a192_0x53fb,_0x4af640=_0x361721();while(!![]){try{const _0x34447e=-parseInt(_0x45a441(0x1d7))/0x1+-parseInt(_0x45a441(0x1c7))/0x2+parseInt(_0x45a441(0x1dc))/0x3*(parseInt(_0x45a441(0x1d9))/0x4)+-parseInt(_0x45a441(0x1ca))/0x5+-parseInt(_0x45a441(0x1de))/0x6*(parseInt(_0x45a441(0x1c9))/0x7)+-parseInt(_0x45a441(0x1e2))/0x8+parseInt(_0x45a441(0x1db))/0x9;if(_0x34447e===_0x519e10)break;else _0x4af640['push'](_0x4af640['shift']());}catch(_0x515663){_0x4af640['push'](_0x4af640['shift']());}}}(a192_0x4e7e,0xa035d));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';function a192_0x53fb(_0x265d9d,_0x1e5274){_0x265d9d=_0x265d9d-0x1c4;const _0x4e7e96=a192_0x4e7e();let _0x53fb37=_0x4e7e96[_0x265d9d];return _0x53fb37;}function a192_0x4e7e(){const _0x1d0ebd=['966717PCBtQi','length','30544fMhBvF','\x20missing,\x20','41627367VQyNKW','39NJVLPp','tableData','150GdRlih','map','keys','appCode','8138904kgyCQA','\x20remote-only','sqlName','push','Check\x20local\x20SQL\x20sync\x20status\x20against\x20lock\x20file','Also\x20check\x20for\x20remote-only\x20SQL\x20queries\x20not\x20present\x20locally','filePath','totalCount','sql','1649040KqhQGC','remote','1603drvMAD','6269925JJPDZy','boolean','relativePath','sqls','\x20added,\x20','All\x20SQL\x20queries\x20are\x20in\x20sync.','has','hash','sqlCode','lockKey','paging','\x20modified,\x20','status'];a192_0x4e7e=function(){return _0x1d0ebd;};return a192_0x4e7e();}const PAGE_SIZE=0x64;async function fetchAllSqlCodes(_0x2a0770){const _0x5c2922=a192_0x53fb,_0x2eb9e5=[];let _0x55f660=0x1;while(!![]){const _0x504eb3=await listSqlQueries(_0x2a0770,{'currentPage':_0x55f660,'pageSize':PAGE_SIZE}),_0x327b17=_0x504eb3[_0x5c2922(0x1dd)]??[];_0x2eb9e5[_0x5c2922(0x1e5)](..._0x327b17[_0x5c2922(0x1df)](_0x9ea118=>_0x9ea118[_0x5c2922(0x1d2)]));if(_0x327b17[_0x5c2922(0x1d8)]===0x0)break;const _0x2b2b36=_0x504eb3[_0x5c2922(0x1d4)]?.[_0x5c2922(0x1c5)];if(_0x2b2b36!=null?_0x2eb9e5[_0x5c2922(0x1d8)]>=_0x2b2b36:_0x327b17[_0x5c2922(0x1d8)]<PAGE_SIZE)break;_0x55f660++;}return _0x2eb9e5;}export const sqlStatus={'service':a192_0x370e74(0x1c6),'command':a192_0x370e74(0x1d6),'description':a192_0x370e74(0x1e6),'risk':'read','flags':[{'name':a192_0x370e74(0x1c8),'type':a192_0x370e74(0x1cb),'description':a192_0x370e74(0x1e7)}],async 'execute'(_0xbdfde3){const _0x3ab639=a192_0x370e74,_0x4816a=loadSqlProjectConfig(_0xbdfde3[_0x3ab639(0x1e1)]),_0x45fcdb=await readSqlLockFile(_0x4816a['lockFilePath']),{appLock:_0x2cd3e7}=ensureSqlLockScope(_0x45fcdb??createEmptySqlLock(),_0x4816a[_0x3ab639(0x1e1)],_0x4816a['sqlRoot'],_0x3ab639(0x1d6)),_0xcf6e7=await scanLocalSqlQueries(_0x4816a),_0x5422c6=[],_0x249cec=[],_0x508572=[],_0x548512=[],_0x413a90=new Set(_0xcf6e7['map'](_0x47a63a=>_0x47a63a['lockKey']));for(const _0x276444 of _0xcf6e7){const _0x12eed2=await computeSqlFileHash(_0x276444[_0x3ab639(0x1c4)]),_0xd7683f=_0x2cd3e7[_0x3ab639(0x1cd)][_0x276444[_0x3ab639(0x1d3)]],_0x1faace=!!_0xd7683f&&_0xd7683f['path']!==_0x276444[_0x3ab639(0x1cc)],_0x1fdf33=!!_0xd7683f&&!!_0x276444[_0x3ab639(0x1e4)]&&_0xd7683f[_0x3ab639(0x1e4)]!==_0x276444[_0x3ab639(0x1e4)];if(!_0xd7683f)_0x5422c6[_0x3ab639(0x1e5)](_0x276444['lockKey']);else _0xd7683f[_0x3ab639(0x1d1)]!==_0x12eed2||_0x1faace||_0x1fdf33?_0x249cec['push'](_0x276444[_0x3ab639(0x1d3)]):_0x508572[_0x3ab639(0x1e5)](_0x276444[_0x3ab639(0x1d3)]);}for(const _0x5d034a of Object[_0x3ab639(0x1e0)](_0x2cd3e7[_0x3ab639(0x1cd)])){!_0x413a90['has'](_0x5d034a)&&_0x548512[_0x3ab639(0x1e5)](_0x5d034a);}const _0x270cb6=[];if(_0xbdfde3['bool'](_0x3ab639(0x1c8))){const _0x2f36f0=await fetchAllSqlCodes(_0xbdfde3[_0x3ab639(0x1e1)]);for(const _0x18ca71 of _0x2f36f0){!_0x413a90[_0x3ab639(0x1d0)](_0x18ca71)&&!_0x2cd3e7[_0x3ab639(0x1cd)][_0x18ca71]&&_0x270cb6[_0x3ab639(0x1e5)](_0x18ca71);}}const _0x1e691a=_0x5422c6['length']===0x0&&_0x249cec[_0x3ab639(0x1d8)]===0x0&&_0x548512[_0x3ab639(0x1d8)]===0x0&&_0x270cb6['length']===0x0;return{'ok':!![],'data':{'added':_0x5422c6,'modified':_0x249cec,'missing':_0x548512,'unchanged':_0x508572,'remoteOnly':_0x270cb6},'message':_0x1e691a?_0x3ab639(0x1cf):_0x5422c6[_0x3ab639(0x1d8)]+_0x3ab639(0x1ce)+_0x249cec[_0x3ab639(0x1d8)]+_0x3ab639(0x1d5)+_0x548512[_0x3ab639(0x1d8)]+_0x3ab639(0x1da)+_0x508572[_0x3ab639(0x1d8)]+'\x20unchanged'+(_0x270cb6[_0x3ab639(0x1d8)]>0x0?',\x20'+_0x270cb6['length']+_0x3ab639(0x1e3):'')};}};
@@ -1 +1 @@
1
- const a185_0x15f84e=a185_0x5582;(function(_0x133a9a,_0x44c4d4){const _0x131363=a185_0x5582,_0x195420=_0x133a9a();while(!![]){try{const _0x4b5506=parseInt(_0x131363(0x1af))/0x1*(-parseInt(_0x131363(0x1e1))/0x2)+parseInt(_0x131363(0x1b3))/0x3+-parseInt(_0x131363(0x1c4))/0x4+-parseInt(_0x131363(0x1db))/0x5*(parseInt(_0x131363(0x1e4))/0x6)+parseInt(_0x131363(0x1a2))/0x7+parseInt(_0x131363(0x1c0))/0x8*(parseInt(_0x131363(0x1d2))/0x9)+-parseInt(_0x131363(0x1ba))/0xa;if(_0x4b5506===_0x44c4d4)break;else _0x195420['push'](_0x195420['shift']());}catch(_0x3b9fd4){_0x195420['push'](_0x195420['shift']());}}}(a185_0x33c2,0x706a9));function a185_0x33c2(){const _0x3a125e=['map','trim','string','get','Validate\x20SQL\x20content\x20without\x20saving\x20(type\x20detection,\x20parameter\x20extraction,\x20optional\x20schema\x20check)','Comma-separated\x20dataset\x20codes\x20to\x20cross-check\x20table/column\x20names\x20against','18XqPIvF','isArray','pkField','index_type','flatMap','primary','tables','boolean','length','15WVqvJV','push','\x22\x20not\x20found\x20or\x20not\x20accessible','indexName','utf-8','isSelectOnly','29798vErkDs','toLowerCase','reason','172206iXytpD','--check-indexes\x20requires\x20--schemas.','file','\x22\x20not\x20found\x20in\x20any\x20dataset','split','dbtableConfig','Table\x20\x22','3050621LTwoEv','columns','index_name','Dataset\x20\x22','index_columns','type','unshift','find','filter','check-indexes','dataset','isDangerous','read','3xkRbAX','SQL\x20schema\x20validation','message','fields','866448JJsegZ','valid','sql','from','Audit\x20top-level\x20JOIN\x20equality\x20predicates\x20against\x20dataset\x20index\x20metadata','schemas','cwd','1149570yyBQio','indexes','Provide\x20--file\x20or\x20--sql','name','sqlType','str','1246472dcIgvq','File\x20not\x20found:\x20','tableName','columnNames','1320092QJheot','schemaWarnings','Inline\x20SQL\x20content\x20to\x20validate\x20(alternative\x20to\x20--file)','appCode','schema:','validation','Path\x20to\x20the\x20SQL\x20file\x20to\x20validate','bool'];a185_0x33c2=function(){return _0x3a125e;};return a185_0x33c2();}function a185_0x5582(_0x2d8468,_0xb35ace){_0x2d8468=_0x2d8468-0x1a2;const _0x33c2f3=a185_0x33c2();let _0x558231=_0x33c2f3[_0x2d8468];return _0x558231;}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':a185_0x15f84e(0x1b5),'command':'validate','description':a185_0x15f84e(0x1d0),'risk':a185_0x15f84e(0x1ae),'flags':[{'name':'file','type':'string','description':a185_0x15f84e(0x1ca)},{'name':'sql','type':a185_0x15f84e(0x1ce),'description':a185_0x15f84e(0x1c6)},{'name':a185_0x15f84e(0x1b8),'type':a185_0x15f84e(0x1ce),'description':a185_0x15f84e(0x1d1)},{'name':'check-indexes','type':a185_0x15f84e(0x1d9),'description':a185_0x15f84e(0x1b7)}],async 'execute'(_0x1f8150){const _0x567d3b=a185_0x15f84e,_0x35a623=_0x1f8150[_0x567d3b(0x1bf)](_0x567d3b(0x1e6)),_0x281664=_0x1f8150[_0x567d3b(0x1bf)](_0x567d3b(0x1b5)),_0x3cb552=_0x1f8150['str'](_0x567d3b(0x1b8)),_0x47f2b4=_0x1f8150[_0x567d3b(0x1cb)](_0x567d3b(0x1ab));if(!_0x35a623&&!_0x281664)throw CliErrors['flagMissing'](_0x567d3b(0x1e6),_0x567d3b(0x1bc));if(_0x47f2b4&&!_0x3cb552)throw CliErrors[_0x567d3b(0x1c9)](_0x567d3b(0x1e5));let _0x289063;if(_0x35a623){const _0xdd8cf7=resolve(process[_0x567d3b(0x1b9)](),_0x35a623);if(!existsSync(_0xdd8cf7))throw CliErrors[_0x567d3b(0x1c9)](_0x567d3b(0x1c1)+_0xdd8cf7);_0x289063=readFileSync(_0xdd8cf7,_0x567d3b(0x1df));}else _0x289063=_0x281664;const _0xe9f2df=validateSql(_0x289063),_0x5e1ba6={'valid':_0xe9f2df[_0x567d3b(0x1b4)],'sqlType':_0xe9f2df['sqlType'][_0x567d3b(0x1a7)],'isSelectOnly':_0xe9f2df[_0x567d3b(0x1be)][_0x567d3b(0x1e0)],'isDangerous':_0xe9f2df[_0x567d3b(0x1be)][_0x567d3b(0x1ad)],'tables':_0xe9f2df[_0x567d3b(0x1d8)],'parameters':_0xe9f2df['parameters'],'message':_0xe9f2df[_0x567d3b(0x1b1)]};_0xe9f2df[_0x567d3b(0x1be)][_0x567d3b(0x1e3)]&&(_0x5e1ba6[_0x567d3b(0x1e3)]=_0xe9f2df[_0x567d3b(0x1be)]['reason']);if(_0x3cb552&&_0xe9f2df[_0x567d3b(0x1b4)]){const _0x5aa84d=_0x3cb552['split'](',')[_0x567d3b(0x1cc)](_0x29af7=>_0x29af7[_0x567d3b(0x1cd)]())['filter'](Boolean),_0x47562=[],_0xadeda4=[],_0xa66547=filterDbTableBackedDatasets(await listDatasets(_0x1f8150[_0x567d3b(0x1c7)])),_0x2ae68d=new Map(_0xa66547[_0x567d3b(0x1cc)](_0x4158e2=>[_0x4158e2[_0x567d3b(0x1e9)]?.[_0x567d3b(0x1c2)]?.[_0x567d3b(0x1e2)](),_0x4158e2]));for(const _0x439dad of _0xe9f2df[_0x567d3b(0x1d8)]){const _0x3671c4=_0x2ae68d[_0x567d3b(0x1cf)](_0x439dad[_0x567d3b(0x1e2)]());!_0x3671c4&&_0x47562['push'](_0x567d3b(0x1ea)+_0x439dad+_0x567d3b(0x1e7));}for(const _0x4a326e of _0x5aa84d){let _0x4bd756;try{_0x4bd756=await getDatasetDetail(_0x4a326e);}catch{_0x47562[_0x567d3b(0x1dc)](_0x567d3b(0x1a5)+_0x4a326e+_0x567d3b(0x1dd));continue;}assertDatasetIsDbTableBacked(_0x4bd756,_0x567d3b(0x1b0));const _0xfe3994=Array['isArray'](_0x4bd756['fields'])?_0x4bd756[_0x567d3b(0x1b2)]:[],_0x319d4f=new Set(_0xfe3994[_0x567d3b(0x1cc)](_0x519c88=>_0x519c88['name']?.['toLowerCase']())),_0x8be81f=_0x4bd756[_0x567d3b(0x1e9)]?.[_0x567d3b(0x1c2)]||_0x4bd756[_0x567d3b(0x1c2)]||_0x4a326e;_0x5e1ba6[_0x567d3b(0x1c8)+_0x8be81f]={'code':_0x4a326e,'tableName':_0x8be81f,'fieldCount':_0x319d4f['size'],'fields':Array[_0x567d3b(0x1b6)](_0x319d4f)};if(_0x47f2b4){const _0x22d156=normalizeDatasetIndexes(_0x4bd756);_0xadeda4['push']({'tableName':_0x8be81f,..._0x22d156});}}_0x47562[_0x567d3b(0x1da)]>0x0&&(_0x5e1ba6[_0x567d3b(0x1c5)]=_0x47562),_0x47f2b4&&(_0x5e1ba6['joinAudit']=auditSqlJoinIndexes(_0x289063,_0xadeda4));}return{'ok':_0xe9f2df[_0x567d3b(0x1b4)],'data':_0x5e1ba6,'message':_0xe9f2df[_0x567d3b(0x1b1)]};}};function normalizeDatasetIndexes(_0x2d7370){const _0x6fd141=a185_0x15f84e,_0x1267a2=Array[_0x6fd141(0x1d3)](_0x2d7370?.[_0x6fd141(0x1ac)]?.[_0x6fd141(0x1bb)])?_0x2d7370['dataset'][_0x6fd141(0x1bb)]:Array[_0x6fd141(0x1d3)](_0x2d7370?.[_0x6fd141(0x1bb)])?_0x2d7370[_0x6fd141(0x1bb)]:[],_0x247f72=_0x1267a2[_0x6fd141(0x1d6)](_0x382d23=>{const _0x5828d1=_0x6fd141,_0x1988f8=Array['isArray'](_0x382d23?.[_0x5828d1(0x1a6)])?_0x382d23[_0x5828d1(0x1a6)]:Array[_0x5828d1(0x1d3)](_0x382d23?.['columnNames'])?_0x382d23[_0x5828d1(0x1c3)]:Array[_0x5828d1(0x1d3)](_0x382d23?.['columns'])?_0x382d23[_0x5828d1(0x1a3)]:[],_0x35956d=_0x1988f8[_0x5828d1(0x1aa)](_0x25bd0b=>typeof _0x25bd0b===_0x5828d1(0x1ce))[_0x5828d1(0x1cc)](_0x299878=>_0x299878[_0x5828d1(0x1cd)]())[_0x5828d1(0x1aa)](Boolean);if(_0x35956d[_0x5828d1(0x1da)]===0x0)return[];const _0x2f5255=[_0x382d23?.[_0x5828d1(0x1de)],_0x382d23?.[_0x5828d1(0x1a4)],_0x382d23?.[_0x5828d1(0x1bd)]][_0x5828d1(0x1a9)](_0x4a1b8f=>typeof _0x4a1b8f===_0x5828d1(0x1ce)&&_0x4a1b8f[_0x5828d1(0x1cd)]()),_0x5641d5=[_0x382d23?.[_0x5828d1(0x1d5)],_0x382d23?.[_0x5828d1(0x1a7)]][_0x5828d1(0x1a9)](_0x28cb15=>typeof _0x28cb15===_0x5828d1(0x1ce)&&_0x28cb15[_0x5828d1(0x1cd)]());return[{..._0x2f5255?{'name':_0x2f5255[_0x5828d1(0x1cd)]()}:{},..._0x5641d5?{'type':_0x5641d5[_0x5828d1(0x1cd)]()}:{},'columns':_0x35956d}];}),_0xe99bdb=[..._0x247f72],_0x4d60db=typeof _0x2d7370?.[_0x6fd141(0x1e9)]?.['pkField']==='string'?_0x2d7370[_0x6fd141(0x1e9)][_0x6fd141(0x1d4)][_0x6fd141(0x1e8)](',')[_0x6fd141(0x1cc)](_0x23d9fa=>_0x23d9fa[_0x6fd141(0x1cd)]())['filter'](Boolean):[];return _0x4d60db[_0x6fd141(0x1da)]>0x0&&_0xe99bdb[_0x6fd141(0x1a8)]({'type':_0x6fd141(0x1d7),'columns':_0x4d60db}),{'indexes':_0xe99bdb,'metadataAvailable':_0x247f72['length']>0x0};}
1
+ function a193_0x34d9(_0x31a7b2,_0x194c5f){_0x31a7b2=_0x31a7b2-0x10b;const _0x1bfed8=a193_0x1bfe();let _0x34d92b=_0x1bfed8[_0x31a7b2];return _0x34d92b;}const a193_0x20ad78=a193_0x34d9;(function(_0x299937,_0x43d0a4){const _0x3a2145=a193_0x34d9,_0x5c41b6=_0x299937();while(!![]){try{const _0x3ee0a9=parseInt(_0x3a2145(0x10e))/0x1+-parseInt(_0x3a2145(0x110))/0x2*(-parseInt(_0x3a2145(0x124))/0x3)+parseInt(_0x3a2145(0x113))/0x4+-parseInt(_0x3a2145(0x143))/0x5*(parseInt(_0x3a2145(0x135))/0x6)+-parseInt(_0x3a2145(0x129))/0x7*(-parseInt(_0x3a2145(0x142))/0x8)+-parseInt(_0x3a2145(0x148))/0x9*(parseInt(_0x3a2145(0x10f))/0xa)+-parseInt(_0x3a2145(0x11c))/0xb*(parseInt(_0x3a2145(0x13f))/0xc);if(_0x3ee0a9===_0x43d0a4)break;else _0x5c41b6['push'](_0x5c41b6['shift']());}catch(_0x38cd4e){_0x5c41b6['push'](_0x5c41b6['shift']());}}}(a193_0x1bfe,0xee190));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';function a193_0x1bfe(){const _0x40a93d=['valid','Table\x20\x22','get','file','21564UyINuq','index_name','isArray','dbtableConfig','flatMap','type','string','Path\x20to\x20the\x20SQL\x20file\x20to\x20validate','indexes','push','dataset','1896782IiKVFX','7870sKFeCj','4892BgBIbu','filter','boolean','6538764uajcRT','map','File\x20not\x20found:\x20','split','parameters','pkField','sql','Provide\x20--file\x20or\x20--sql','check-indexes','11zwIzEO','schemas','indexName','\x22\x20not\x20found\x20in\x20any\x20dataset','index_type','trim','validation','tableName','1641ukxUxo','Comma-separated\x20dataset\x20codes\x20to\x20cross-check\x20table/column\x20names\x20against','sqlType','\x22\x20not\x20found\x20or\x20not\x20accessible','cwd','14nBOSEB','fields','schemaWarnings','name','tables','unshift','from','message','length','find','read','columnNames','1096356HoqxdH','columns','validate','str','toLowerCase','appCode','Dataset\x20\x22','isSelectOnly','schema:','reason','13851492zwkyLw','Validate\x20SQL\x20content\x20without\x20saving\x20(type\x20detection,\x20parameter\x20extraction,\x20optional\x20schema\x20check)','SQL\x20schema\x20validation','2430256qbBeoq','40DdLBce'];a193_0x1bfe=function(){return _0x40a93d;};return a193_0x1bfe();}export const sqlValidate={'service':a193_0x20ad78(0x119),'command':a193_0x20ad78(0x137),'description':a193_0x20ad78(0x140),'risk':a193_0x20ad78(0x133),'flags':[{'name':a193_0x20ad78(0x147),'type':a193_0x20ad78(0x14e),'description':a193_0x20ad78(0x14f)},{'name':'sql','type':a193_0x20ad78(0x14e),'description':'Inline\x20SQL\x20content\x20to\x20validate\x20(alternative\x20to\x20--file)'},{'name':a193_0x20ad78(0x11d),'type':a193_0x20ad78(0x14e),'description':a193_0x20ad78(0x125)},{'name':a193_0x20ad78(0x11b),'type':a193_0x20ad78(0x112),'description':'Audit\x20top-level\x20JOIN\x20equality\x20predicates\x20against\x20dataset\x20index\x20metadata'}],async 'execute'(_0x543c0c){const _0x349a80=a193_0x20ad78,_0x1f72f3=_0x543c0c[_0x349a80(0x138)](_0x349a80(0x147)),_0x93eae3=_0x543c0c[_0x349a80(0x138)](_0x349a80(0x119)),_0x309128=_0x543c0c['str'](_0x349a80(0x11d)),_0x34002c=_0x543c0c['bool'](_0x349a80(0x11b));if(!_0x1f72f3&&!_0x93eae3)throw CliErrors['flagMissing'](_0x349a80(0x147),_0x349a80(0x11a));if(_0x34002c&&!_0x309128)throw CliErrors[_0x349a80(0x122)]('--check-indexes\x20requires\x20--schemas.');let _0x1e3924;if(_0x1f72f3){const _0x5843e2=resolve(process[_0x349a80(0x128)](),_0x1f72f3);if(!existsSync(_0x5843e2))throw CliErrors['validation'](_0x349a80(0x115)+_0x5843e2);_0x1e3924=readFileSync(_0x5843e2,'utf-8');}else _0x1e3924=_0x93eae3;const _0x15a0a7=validateSql(_0x1e3924),_0x4fba43={'valid':_0x15a0a7[_0x349a80(0x144)],'sqlType':_0x15a0a7[_0x349a80(0x126)][_0x349a80(0x14d)],'isSelectOnly':_0x15a0a7[_0x349a80(0x126)][_0x349a80(0x13c)],'isDangerous':_0x15a0a7[_0x349a80(0x126)]['isDangerous'],'tables':_0x15a0a7[_0x349a80(0x12d)],'parameters':_0x15a0a7[_0x349a80(0x117)],'message':_0x15a0a7[_0x349a80(0x130)]};_0x15a0a7[_0x349a80(0x126)][_0x349a80(0x13e)]&&(_0x4fba43[_0x349a80(0x13e)]=_0x15a0a7[_0x349a80(0x126)][_0x349a80(0x13e)]);if(_0x309128&&_0x15a0a7['valid']){const _0x26cbb8=_0x309128[_0x349a80(0x116)](',')['map'](_0xd78c6a=>_0xd78c6a[_0x349a80(0x121)]())[_0x349a80(0x111)](Boolean),_0x45556b=[],_0x4178bb=[],_0x22c905=filterDbTableBackedDatasets(await listDatasets(_0x543c0c[_0x349a80(0x13a)])),_0x188174=new Map(_0x22c905[_0x349a80(0x114)](_0xee6d03=>[_0xee6d03['dbtableConfig']?.[_0x349a80(0x123)]?.['toLowerCase'](),_0xee6d03]));for(const _0x2b7dd3 of _0x15a0a7[_0x349a80(0x12d)]){const _0x170ecc=_0x188174[_0x349a80(0x146)](_0x2b7dd3[_0x349a80(0x139)]());!_0x170ecc&&_0x45556b[_0x349a80(0x10c)](_0x349a80(0x145)+_0x2b7dd3+_0x349a80(0x11f));}for(const _0x81b7a1 of _0x26cbb8){let _0x382156;try{_0x382156=await getDatasetDetail(_0x81b7a1);}catch{_0x45556b[_0x349a80(0x10c)](_0x349a80(0x13b)+_0x81b7a1+_0x349a80(0x127));continue;}assertDatasetIsDbTableBacked(_0x382156,_0x349a80(0x141));const _0x1680a2=Array[_0x349a80(0x14a)](_0x382156[_0x349a80(0x12a)])?_0x382156[_0x349a80(0x12a)]:[],_0x2323fd=new Set(_0x1680a2[_0x349a80(0x114)](_0x42572f=>_0x42572f['name']?.[_0x349a80(0x139)]())),_0x523809=_0x382156[_0x349a80(0x14b)]?.[_0x349a80(0x123)]||_0x382156['tableName']||_0x81b7a1;_0x4fba43[_0x349a80(0x13d)+_0x523809]={'code':_0x81b7a1,'tableName':_0x523809,'fieldCount':_0x2323fd['size'],'fields':Array[_0x349a80(0x12f)](_0x2323fd)};if(_0x34002c){const _0xe12707=normalizeDatasetIndexes(_0x382156);_0x4178bb[_0x349a80(0x10c)]({'tableName':_0x523809,..._0xe12707});}}_0x45556b[_0x349a80(0x131)]>0x0&&(_0x4fba43[_0x349a80(0x12b)]=_0x45556b),_0x34002c&&(_0x4fba43['joinAudit']=auditSqlJoinIndexes(_0x1e3924,_0x4178bb));}return{'ok':_0x15a0a7[_0x349a80(0x144)],'data':_0x4fba43,'message':_0x15a0a7[_0x349a80(0x130)]};}};function normalizeDatasetIndexes(_0x6c7a03){const _0x5a215f=a193_0x20ad78,_0x1102e1=Array[_0x5a215f(0x14a)](_0x6c7a03?.[_0x5a215f(0x10d)]?.[_0x5a215f(0x10b)])?_0x6c7a03['dataset'][_0x5a215f(0x10b)]:Array[_0x5a215f(0x14a)](_0x6c7a03?.[_0x5a215f(0x10b)])?_0x6c7a03['indexes']:[],_0x7b2825=_0x1102e1[_0x5a215f(0x14c)](_0x12416c=>{const _0x3c9e0d=_0x5a215f,_0x5f0939=Array[_0x3c9e0d(0x14a)](_0x12416c?.['index_columns'])?_0x12416c['index_columns']:Array[_0x3c9e0d(0x14a)](_0x12416c?.['columnNames'])?_0x12416c[_0x3c9e0d(0x134)]:Array['isArray'](_0x12416c?.[_0x3c9e0d(0x136)])?_0x12416c[_0x3c9e0d(0x136)]:[],_0x18f33b=_0x5f0939[_0x3c9e0d(0x111)](_0x4ef237=>typeof _0x4ef237===_0x3c9e0d(0x14e))['map'](_0x3a19bb=>_0x3a19bb[_0x3c9e0d(0x121)]())['filter'](Boolean);if(_0x18f33b[_0x3c9e0d(0x131)]===0x0)return[];const _0x36c739=[_0x12416c?.[_0x3c9e0d(0x11e)],_0x12416c?.[_0x3c9e0d(0x149)],_0x12416c?.[_0x3c9e0d(0x12c)]][_0x3c9e0d(0x132)](_0x1748f1=>typeof _0x1748f1===_0x3c9e0d(0x14e)&&_0x1748f1[_0x3c9e0d(0x121)]()),_0x1b84c7=[_0x12416c?.[_0x3c9e0d(0x120)],_0x12416c?.[_0x3c9e0d(0x14d)]]['find'](_0x1cfd25=>typeof _0x1cfd25===_0x3c9e0d(0x14e)&&_0x1cfd25[_0x3c9e0d(0x121)]());return[{..._0x36c739?{'name':_0x36c739[_0x3c9e0d(0x121)]()}:{},..._0x1b84c7?{'type':_0x1b84c7[_0x3c9e0d(0x121)]()}:{},'columns':_0x18f33b}];}),_0x39c127=[..._0x7b2825],_0xefa631=typeof _0x6c7a03?.[_0x5a215f(0x14b)]?.[_0x5a215f(0x118)]===_0x5a215f(0x14e)?_0x6c7a03['dbtableConfig'][_0x5a215f(0x118)][_0x5a215f(0x116)](',')['map'](_0xf60c3d=>_0xf60c3d[_0x5a215f(0x121)]())[_0x5a215f(0x111)](Boolean):[];return _0xefa631['length']>0x0&&_0x39c127[_0x5a215f(0x12e)]({'type':'primary','columns':_0xefa631}),{'indexes':_0x39c127,'metadataAvailable':_0x7b2825[_0x5a215f(0x131)]>0x0};}
@@ -1 +1 @@
1
- (function(_0x467d67,_0x3f0d41){const _0x1ee26c=a186_0xf94b,_0x5d980c=_0x467d67();while(!![]){try{const _0x976bb8=-parseInt(_0x1ee26c(0xc9))/0x1+parseInt(_0x1ee26c(0xca))/0x2+-parseInt(_0x1ee26c(0xce))/0x3+parseInt(_0x1ee26c(0xcd))/0x4*(parseInt(_0x1ee26c(0xc7))/0x5)+-parseInt(_0x1ee26c(0xd0))/0x6*(parseInt(_0x1ee26c(0xcf))/0x7)+parseInt(_0x1ee26c(0xcc))/0x8*(-parseInt(_0x1ee26c(0xc8))/0x9)+parseInt(_0x1ee26c(0xcb))/0xa;if(_0x976bb8===_0x3f0d41)break;else _0x5d980c['push'](_0x5d980c['shift']());}catch(_0x2b3a13){_0x5d980c['push'](_0x5d980c['shift']());}}}(a186_0x2676,0x71308));import{taskStatus}from'../../commands/task/status.js';export const taskDefinitions=[taskStatus];function a186_0xf94b(_0xf38c70,_0x17e611){_0xf38c70=_0xf38c70-0xc7;const _0x267692=a186_0x2676();let _0xf94b9=_0x267692[_0xf38c70];return _0xf94b9;}function a186_0x2676(){const _0x14add2=['91vrJYMa','101778ALEejW','3863290roREEw','9nYNomk','496763cLSOtP','1722572iLXJaS','6153540moCeeC','5297696CLkvIM','4vRmEwl','1218540SgevhI'];a186_0x2676=function(){return _0x14add2;};return a186_0x2676();}
1
+ (function(_0x29b8a4,_0x2e71b7){const _0x16f5f0=a194_0x5c92,_0x48c28f=_0x29b8a4();while(!![]){try{const _0x3aee12=parseInt(_0x16f5f0(0x13a))/0x1+-parseInt(_0x16f5f0(0x13d))/0x2*(parseInt(_0x16f5f0(0x137))/0x3)+parseInt(_0x16f5f0(0x138))/0x4*(-parseInt(_0x16f5f0(0x135))/0x5)+parseInt(_0x16f5f0(0x136))/0x6+parseInt(_0x16f5f0(0x13b))/0x7+-parseInt(_0x16f5f0(0x139))/0x8*(parseInt(_0x16f5f0(0x13e))/0x9)+-parseInt(_0x16f5f0(0x13c))/0xa;if(_0x3aee12===_0x2e71b7)break;else _0x48c28f['push'](_0x48c28f['shift']());}catch(_0x461b5a){_0x48c28f['push'](_0x48c28f['shift']());}}}(a194_0x2ebe,0xd7380));function a194_0x2ebe(){const _0x322cc8=['337964VnnAVY','1946070wbRUCS','204745KXMdPa','3266214xOrqTC','3MRxcsT','104CSrIbi','8mKKJSm','916602cJSwTg','8221493nBVXKY','3040480IKOmcx'];a194_0x2ebe=function(){return _0x322cc8;};return a194_0x2ebe();}import{taskStatus}from'../../commands/task/status.js';function a194_0x5c92(_0xcf3b4,_0x4ade77){_0xcf3b4=_0xcf3b4-0x135;const _0x2ebe42=a194_0x2ebe();let _0x5c929c=_0x2ebe42[_0xcf3b4];return _0x5c929c;}export const taskDefinitions=[taskStatus];
@@ -1 +1 @@
1
- const a187_0x12faca=a187_0x1819;(function(_0x561c42,_0x161f67){const _0x85d657=a187_0x1819,_0x5adf08=_0x561c42();while(!![]){try{const _0x5c0d07=parseInt(_0x85d657(0x1b9))/0x1*(parseInt(_0x85d657(0x1c2))/0x2)+parseInt(_0x85d657(0x1bd))/0x3*(-parseInt(_0x85d657(0x1b0))/0x4)+parseInt(_0x85d657(0x1c0))/0x5+parseInt(_0x85d657(0x1c5))/0x6+-parseInt(_0x85d657(0x1b7))/0x7+-parseInt(_0x85d657(0x1b4))/0x8+parseInt(_0x85d657(0x1b8))/0x9*(parseInt(_0x85d657(0x1c4))/0xa);if(_0x5c0d07===_0x161f67)break;else _0x5adf08['push'](_0x5adf08['shift']());}catch(_0x1471a8){_0x5adf08['push'](_0x5adf08['shift']());}}}(a187_0x1cfb,0x94150));function a187_0x1cfb(){const _0xddda56=['Task\x20id\x20returned\x20by\x20an\x20asynchronous\x20platform\x20command','12xyVitv','cookie',',\x20received\x20','4338985pcWipt','apiError','724468sqZixa','trim','2280snZzeU','3582588tVrcJr','taskId','181000BagQrM','str','compress','Task\x20status\x20response\x20id\x20mismatch:\x20requested\x20','1110720fANPCq','appCode','task-id','7380919KHiJaD','6066FQyeGV','1BJhkxc','flagMissing','isTerminal'];a187_0x1cfb=function(){return _0xddda56;};return a187_0x1cfb();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a187_0x1819(_0x29d5d1,_0x18e709){_0x29d5d1=_0x29d5d1-0x1b0;const _0x1cfbb9=a187_0x1cfb();let _0x1819e0=_0x1cfbb9[_0x29d5d1];return _0x1819e0;}import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{getAsyncTaskStatus}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const taskStatus={'service':'task','command':'status','description':'Query\x20an\x20asynchronous\x20task;\x20repeat\x20for\x20PENDING\x20or\x20PROCESSING\x20until\x20SUCCESS\x20or\x20FAILED','risk':'read','defaultOutputFormat':a187_0x12faca(0x1b2),'structuredErrors':!![],'flags':[{'name':a187_0x12faca(0x1b6),'type':'string','required':!![],'description':a187_0x12faca(0x1bc)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x104f8a){const _0x5067e2=a187_0x12faca;if(!_0x104f8a[_0x5067e2(0x1b1)]('task-id')[_0x5067e2(0x1c3)]())throw CliErrors[_0x5067e2(0x1ba)](_0x5067e2(0x1b6));},async 'execute'(_0x5cd6e5){const _0x258762=a187_0x12faca,_0x3ab2c9=_0x5cd6e5[_0x258762(0x1b1)](_0x258762(0x1b6))['trim'](),_0x48b209=normalizeAsyncTask(await getAsyncTaskStatus(_0x3ab2c9,_0x5cd6e5[_0x258762(0x1b5)],_0x5cd6e5[_0x258762(0x1be)]));if(_0x48b209[_0x258762(0x1c6)]!==_0x3ab2c9)throw CliErrors[_0x258762(0x1c1)](_0x258762(0x1b3)+_0x3ab2c9+_0x258762(0x1bf)+_0x48b209[_0x258762(0x1c6)]+'.');const _0x37dbfa=buildAsyncTaskStatusCommand(_0x48b209[_0x258762(0x1c6)],_0x5cd6e5['appCode']);return{'ok':!![],'message':asyncTaskMessage(_0x48b209),'data':{'appCode':_0x5cd6e5[_0x258762(0x1b5)],..._0x48b209,'query':_0x48b209[_0x258762(0x1bb)]?null:{'command':_0x37dbfa}}};}};
1
+ const a195_0x30c587=a195_0x6fed;function a195_0x6fed(_0x5a4731,_0x2cf404){_0x5a4731=_0x5a4731-0x12d;const _0x40e7ab=a195_0x40e7();let _0x6fedb3=_0x40e7ab[_0x5a4731];return _0x6fedb3;}(function(_0x1f8f37,_0x159c87){const _0x509553=a195_0x6fed,_0x125912=_0x1f8f37();while(!![]){try{const _0x4ca048=parseInt(_0x509553(0x13f))/0x1+-parseInt(_0x509553(0x12e))/0x2+-parseInt(_0x509553(0x140))/0x3*(parseInt(_0x509553(0x13b))/0x4)+parseInt(_0x509553(0x131))/0x5+parseInt(_0x509553(0x130))/0x6*(parseInt(_0x509553(0x13d))/0x7)+-parseInt(_0x509553(0x13c))/0x8+parseInt(_0x509553(0x13a))/0x9;if(_0x4ca048===_0x159c87)break;else _0x125912['push'](_0x125912['shift']());}catch(_0x54bd10){_0x125912['push'](_0x125912['shift']());}}}(a195_0x40e7,0xac100));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 a195_0x40e7(){const _0x33eb34=['27YCcfGb','str','2645418uFSxqd',',\x20received\x20','276UBEfZr','283195pNeyxW','trim','apiError','appCode','task-id','Task\x20id\x20returned\x20by\x20an\x20asynchronous\x20platform\x20command','Query\x20an\x20asynchronous\x20task;\x20repeat\x20for\x20PENDING\x20or\x20PROCESSING\x20until\x20SUCCESS\x20or\x20FAILED','string','isTerminal','15177555CZiJMo','11940aSxVzF','10141456LlsGqG','155190iaoera','taskId','559170XLuzZu'];a195_0x40e7=function(){return _0x33eb34;};return a195_0x40e7();}import{CliErrors}from'../../errors.js';export const taskStatus={'service':'task','command':'status','description':a195_0x30c587(0x137),'risk':'read','defaultOutputFormat':'compress','structuredErrors':!![],'flags':[{'name':'task-id','type':a195_0x30c587(0x138),'required':!![],'description':a195_0x30c587(0x136)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5ad3e8){const _0x2994b2=a195_0x30c587;if(!_0x5ad3e8[_0x2994b2(0x12d)](_0x2994b2(0x135))[_0x2994b2(0x132)]())throw CliErrors['flagMissing'](_0x2994b2(0x135));},async 'execute'(_0x675e17){const _0x49698a=a195_0x30c587,_0x593fc7=_0x675e17[_0x49698a(0x12d)](_0x49698a(0x135))['trim'](),_0x3aca86=normalizeAsyncTask(await getAsyncTaskStatus(_0x593fc7,_0x675e17['appCode'],_0x675e17['cookie']));if(_0x3aca86[_0x49698a(0x13e)]!==_0x593fc7)throw CliErrors[_0x49698a(0x133)]('Task\x20status\x20response\x20id\x20mismatch:\x20requested\x20'+_0x593fc7+_0x49698a(0x12f)+_0x3aca86[_0x49698a(0x13e)]+'.');const _0x12fd33=buildAsyncTaskStatusCommand(_0x3aca86[_0x49698a(0x13e)],_0x675e17[_0x49698a(0x134)]);return{'ok':!![],'message':asyncTaskMessage(_0x3aca86),'data':{'appCode':_0x675e17[_0x49698a(0x134)],..._0x3aca86,'query':_0x3aca86[_0x49698a(0x139)]?null:{'command':_0x12fd33}}};}};
@@ -1 +1 @@
1
- function a188_0x5f19(_0x41ac56,_0x3baa36){_0x41ac56=_0x41ac56-0x14d;const _0x2bdd20=a188_0x2bdd();let _0x5f19db=_0x2bdd20[_0x41ac56];return _0x5f19db;}(function(_0x1b2574,_0x1731aa){const _0x4046f0=a188_0x5f19,_0x18a347=_0x1b2574();while(!![]){try{const _0x3e6a01=parseInt(_0x4046f0(0x152))/0x1+-parseInt(_0x4046f0(0x151))/0x2*(-parseInt(_0x4046f0(0x157))/0x3)+-parseInt(_0x4046f0(0x14f))/0x4*(-parseInt(_0x4046f0(0x155))/0x5)+-parseInt(_0x4046f0(0x150))/0x6+-parseInt(_0x4046f0(0x14e))/0x7*(-parseInt(_0x4046f0(0x154))/0x8)+parseInt(_0x4046f0(0x14d))/0x9*(-parseInt(_0x4046f0(0x156))/0xa)+parseInt(_0x4046f0(0x153))/0xb;if(_0x3e6a01===_0x1731aa)break;else _0x18a347['push'](_0x18a347['shift']());}catch(_0x190b4f){_0x18a347['push'](_0x18a347['shift']());}}}(a188_0x2bdd,0xd1fdf));import{tenantMembersListDefinition}from'../../commands/tenant/members-list.js';export const tenantDefinitions=[tenantMembersListDefinition];function a188_0x2bdd(){const _0xc6598a=['8XcIKOA','175365yxnCfW','2882530pluREI','49026mpSjGo','36sgcXiP','5689257swoDwZ','24lOxWao','9570816RmSfiT','138WIFnvV','83091buHNMj','15118367ccNVOy'];a188_0x2bdd=function(){return _0xc6598a;};return a188_0x2bdd();}
1
+ function a196_0x2b53(_0x46a0cf,_0x5ba66b){_0x46a0cf=_0x46a0cf-0x15b;const _0x3e9dce=a196_0x3e9d();let _0x2b53d8=_0x3e9dce[_0x46a0cf];return _0x2b53d8;}(function(_0x4a3782,_0x550207){const _0x42143d=a196_0x2b53,_0x565218=_0x4a3782();while(!![]){try{const _0x325735=-parseInt(_0x42143d(0x15c))/0x1*(-parseInt(_0x42143d(0x15e))/0x2)+parseInt(_0x42143d(0x162))/0x3+-parseInt(_0x42143d(0x15b))/0x4+parseInt(_0x42143d(0x15d))/0x5+-parseInt(_0x42143d(0x163))/0x6*(-parseInt(_0x42143d(0x15f))/0x7)+-parseInt(_0x42143d(0x164))/0x8*(-parseInt(_0x42143d(0x161))/0x9)+-parseInt(_0x42143d(0x160))/0xa;if(_0x325735===_0x550207)break;else _0x565218['push'](_0x565218['shift']());}catch(_0x3c1cbd){_0x565218['push'](_0x565218['shift']());}}}(a196_0x3e9d,0x64d4d));function a196_0x3e9d(){const _0x34012b=['1052892TkfByi','424737nlsfEO','114YlmTTA','8gkvUkW','1437976HXdiRX','2UFtQpg','2015290VCDkbZ','466952ioEnEm','94808BfwOKm','6134140bRpGyn'];a196_0x3e9d=function(){return _0x34012b;};return a196_0x3e9d();}import{tenantMembersListDefinition}from'../../commands/tenant/members-list.js';export const tenantDefinitions=[tenantMembersListDefinition];
@@ -1 +1 @@
1
- const a189_0x5ec09f=a189_0x5179;(function(_0x501f85,_0x420e3c){const _0x417721=a189_0x5179,_0x100753=_0x501f85();while(!![]){try{const _0x5b3530=-parseInt(_0x417721(0x18f))/0x1+parseInt(_0x417721(0x18b))/0x2+-parseInt(_0x417721(0x18e))/0x3+parseInt(_0x417721(0x187))/0x4+-parseInt(_0x417721(0x192))/0x5*(-parseInt(_0x417721(0x182))/0x6)+parseInt(_0x417721(0x18d))/0x7*(-parseInt(_0x417721(0x184))/0x8)+parseInt(_0x417721(0x188))/0x9*(-parseInt(_0x417721(0x185))/0xa);if(_0x5b3530===_0x420e3c)break;else _0x100753['push'](_0x100753['shift']());}catch(_0x47c09c){_0x100753['push'](_0x100753['shift']());}}}(a189_0x4c41,0x45714));import{listCurrentUserTenantMemberships,listTenantDirectoryMembers}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a189_0x4c41(){const _0xaf660d=['99wlsJwA','tenant-code','List\x20members\x20of\x20a\x20tenant\x20available\x20to\x20the\x20current\x20account','259112fKzhYX','Exact\x20tenant\x20code','224917hdLxUt','106212FJPaTW','70020mzXtSL','trim','length','1740090FPoHYt','str','6wftaxo','read','56hRtKeO','327830toZVjM','Found\x20','1991264GNCjIV'];a189_0x4c41=function(){return _0xaf660d;};return a189_0x4c41();}import{assertTenantAccessible,projectTenantMembers}from'../../commands/tenant/shared.js';function a189_0x5179(_0x84e97d,_0x5f0c46){_0x84e97d=_0x84e97d-0x182;const _0x4c41d1=a189_0x4c41();let _0x51792c=_0x4c41d1[_0x84e97d];return _0x51792c;}export const tenantMembersListDefinition={'service':'tenant','command':'members-list','description':a189_0x5ec09f(0x18a),'risk':a189_0x5ec09f(0x183),'requiresAuth':!![],'requiresAppCode':![],'structuredErrors':!![],'flags':[{'name':a189_0x5ec09f(0x189),'type':'string','required':!![],'description':a189_0x5ec09f(0x18c)}],async 'validate'(_0x6b4674){const _0x132703=a189_0x5ec09f;if(!_0x6b4674[_0x132703(0x193)](_0x132703(0x189))[_0x132703(0x190)]())throw CliErrors['flagMissing'](_0x132703(0x189),'Pass\x20--tenant-code\x20<code>.');},async 'execute'(_0x38e655){const _0x1eaed6=a189_0x5ec09f,_0x179a46=_0x38e655[_0x1eaed6(0x193)](_0x1eaed6(0x189))[_0x1eaed6(0x190)](),_0xd06e74=await listCurrentUserTenantMemberships();assertTenantAccessible(_0x179a46,_0xd06e74);const _0x5890f4=projectTenantMembers(await listTenantDirectoryMembers(_0x179a46));return{'ok':!![],'data':{'tenantCode':_0x179a46,'items':_0x5890f4,'totalCount':_0x5890f4[_0x1eaed6(0x191)]},'message':_0x1eaed6(0x186)+_0x5890f4[_0x1eaed6(0x191)]+'\x20tenant\x20member(s)'};}};
1
+ function a197_0x430e(){const _0x3f46b7=['7989JOxXin','tenant','tenant-code','trim','str','554449xoOuMf','6197562vanlhc','4179670FvNJZH','2JsfvdN','length','888JlWPSt','flagMissing','80ZwhXKI','228KtPfEr','members-list','Found\x20','1406566okYOQX','\x20tenant\x20member(s)','840306jJCQTx','Exact\x20tenant\x20code','15DZBqti','1738044xSgwzv','string'];a197_0x430e=function(){return _0x3f46b7;};return a197_0x430e();}const a197_0x384a98=a197_0x30c3;(function(_0x2ce502,_0x4e2e33){const _0x2fc5a3=a197_0x30c3,_0xf54547=_0x2ce502();while(!![]){try{const _0x2114bb=parseInt(_0x2fc5a3(0xca))/0x1*(-parseInt(_0x2fc5a3(0xd2))/0x2)+parseInt(_0x2fc5a3(0xd9))/0x3*(parseInt(_0x2fc5a3(0xcc))/0x4)+-parseInt(_0x2fc5a3(0xd6))/0x5*(-parseInt(_0x2fc5a3(0xd4))/0x6)+-parseInt(_0x2fc5a3(0xc7))/0x7*(parseInt(_0x2fc5a3(0xce))/0x8)+-parseInt(_0x2fc5a3(0xc8))/0x9+-parseInt(_0x2fc5a3(0xc9))/0xa+-parseInt(_0x2fc5a3(0xd7))/0xb*(-parseInt(_0x2fc5a3(0xcf))/0xc);if(_0x2114bb===_0x4e2e33)break;else _0xf54547['push'](_0xf54547['shift']());}catch(_0xd35240){_0xf54547['push'](_0xf54547['shift']());}}}(a197_0x430e,0xace62));function a197_0x30c3(_0x379426,_0x2372cd){_0x379426=_0x379426-0xc3;const _0x430e14=a197_0x430e();let _0x30c3be=_0x430e14[_0x379426];return _0x30c3be;}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':a197_0x384a98(0xc3),'command':a197_0x384a98(0xd0),'description':'List\x20members\x20of\x20a\x20tenant\x20available\x20to\x20the\x20current\x20account','risk':'read','requiresAuth':!![],'requiresAppCode':![],'structuredErrors':!![],'flags':[{'name':'tenant-code','type':a197_0x384a98(0xd8),'required':!![],'description':a197_0x384a98(0xd5)}],async 'validate'(_0x56a584){const _0xed2184=a197_0x384a98;if(!_0x56a584[_0xed2184(0xc6)](_0xed2184(0xc4))[_0xed2184(0xc5)]())throw CliErrors[_0xed2184(0xcd)](_0xed2184(0xc4),'Pass\x20--tenant-code\x20<code>.');},async 'execute'(_0x3dfe91){const _0x5177f9=a197_0x384a98,_0x148acd=_0x3dfe91[_0x5177f9(0xc6)](_0x5177f9(0xc4))[_0x5177f9(0xc5)](),_0x10ab88=await listCurrentUserTenantMemberships();assertTenantAccessible(_0x148acd,_0x10ab88);const _0x5b0c70=projectTenantMembers(await listTenantDirectoryMembers(_0x148acd));return{'ok':!![],'data':{'tenantCode':_0x148acd,'items':_0x5b0c70,'totalCount':_0x5b0c70[_0x5177f9(0xcb)]},'message':_0x5177f9(0xd1)+_0x5b0c70[_0x5177f9(0xcb)]+_0x5177f9(0xd3)};}};
@@ -1 +1 @@
1
- (function(_0x444913,_0x228495){const _0x889be0=a190_0xb95d,_0x565cf8=_0x444913();while(!![]){try{const _0x20f91e=-parseInt(_0x889be0(0x17f))/0x1+parseInt(_0x889be0(0x16d))/0x2*(parseInt(_0x889be0(0x170))/0x3)+-parseInt(_0x889be0(0x185))/0x4+-parseInt(_0x889be0(0x176))/0x5*(parseInt(_0x889be0(0x177))/0x6)+parseInt(_0x889be0(0x182))/0x7*(parseInt(_0x889be0(0x17d))/0x8)+parseInt(_0x889be0(0x17b))/0x9+-parseInt(_0x889be0(0x184))/0xa;if(_0x20f91e===_0x228495)break;else _0x565cf8['push'](_0x565cf8['shift']());}catch(_0x5b8d54){_0x565cf8['push'](_0x565cf8['shift']());}}}(a190_0x5cce,0x1d694));import{CliErrors}from'../../errors.js';function textOrNull(_0x525f74){const _0x400ba6=a190_0xb95d,_0x55965e=_0x525f74?.[_0x400ba6(0x183)]();return _0x55965e?_0x55965e:null;}function a190_0x5cce(){const _0x57a6e0=['isFinite','username','65IJNZju','6084nrNNHD','role','displayName','values','979911SBAxzE','Check\x20--tenant-code\x20or\x20login\x20with\x20an\x20account\x20that\x20belongs\x20to\x20this\x20tenant.','8XFPWXv','adminFlag','11592NqstHF','ADMIN','userId','687113hbOpRn','trim','86540hNzsnz','549608HnVmUz','nickname','sort','some','10XNGRUS','set','status','50556kfRqqB','tenantCode','validation','Tenant\x20\x22'];a190_0x5cce=function(){return _0x57a6e0;};return a190_0x5cce();}function a190_0xb95d(_0x28ce4a,_0x297358){_0x28ce4a=_0x28ce4a-0x16a;const _0x5cce67=a190_0x5cce();let _0xb95dfd=_0x5cce67[_0x28ce4a];return _0xb95dfd;}export function projectTenantMembers(_0x281b10){const _0x2ee891=a190_0xb95d,_0x4205a7=new Map();for(const _0x185fc8 of _0x281b10){const _0x322d64=Number(_0x185fc8['userId']);if(!Number[_0x2ee891(0x174)](_0x322d64)||_0x322d64<=0x0)continue;const _0x53e337={'userId':_0x322d64,'username':textOrNull(_0x185fc8[_0x2ee891(0x175)]),'displayName':textOrNull(_0x185fc8[_0x2ee891(0x16a)]),'role':_0x185fc8[_0x2ee891(0x17e)]===!![]?_0x2ee891(0x180):'MEMBER','status':textOrNull(_0x185fc8[_0x2ee891(0x16f)])},_0x396ed4=_0x4205a7['get'](_0x322d64);if(!_0x396ed4){_0x4205a7[_0x2ee891(0x16e)](_0x322d64,_0x53e337);continue;}_0x396ed4[_0x2ee891(0x175)]??=_0x53e337[_0x2ee891(0x175)],_0x396ed4[_0x2ee891(0x179)]??=_0x53e337[_0x2ee891(0x179)],_0x396ed4['status']??=_0x53e337['status'];if(_0x53e337['role']===_0x2ee891(0x180))_0x396ed4[_0x2ee891(0x178)]=_0x2ee891(0x180);}return[..._0x4205a7[_0x2ee891(0x17a)]()][_0x2ee891(0x16b)]((_0x121f7d,_0x4adf79)=>_0x121f7d[_0x2ee891(0x181)]-_0x4adf79[_0x2ee891(0x181)]);}export function assertTenantAccessible(_0x27f129,_0x13b462){const _0x3b0bb9=a190_0xb95d;if(_0x13b462[_0x3b0bb9(0x16c)](_0x55d6b5=>_0x55d6b5[_0x3b0bb9(0x171)]===_0x27f129))return;throw CliErrors[_0x3b0bb9(0x172)](_0x3b0bb9(0x173)+_0x27f129+'\x22\x20is\x20not\x20available\x20to\x20the\x20current\x20account.',_0x3b0bb9(0x17c));}
1
+ (function(_0x407526,_0x254c16){const _0x6bd80c=a198_0x4c5c,_0xe9a3b2=_0x407526();while(!![]){try{const _0x19ce15=parseInt(_0x6bd80c(0x1e6))/0x1+-parseInt(_0x6bd80c(0x1f0))/0x2*(parseInt(_0x6bd80c(0x1e1))/0x3)+parseInt(_0x6bd80c(0x1da))/0x4+-parseInt(_0x6bd80c(0x1e8))/0x5*(-parseInt(_0x6bd80c(0x1e7))/0x6)+parseInt(_0x6bd80c(0x1f2))/0x7+-parseInt(_0x6bd80c(0x1e3))/0x8+-parseInt(_0x6bd80c(0x1e5))/0x9;if(_0x19ce15===_0x254c16)break;else _0xe9a3b2['push'](_0xe9a3b2['shift']());}catch(_0x337799){_0xe9a3b2['push'](_0xe9a3b2['shift']());}}}(a198_0x46ba,0x8f669));import{CliErrors}from'../../errors.js';function textOrNull(_0x16bd05){const _0x2b981a=a198_0x4c5c,_0x13f0df=_0x16bd05?.[_0x2b981a(0x1dc)]();return _0x13f0df?_0x13f0df:null;}function a198_0x46ba(){const _0xef8844=['ADMIN','8858488oZUwaA','status','378837LdQWrl','151285lVYlhz','378642ssqRQE','85hKsFoG','sort','displayName','isFinite','userId','some','\x22\x20is\x20not\x20available\x20to\x20the\x20current\x20account.','get','206764eZWtkn','Tenant\x20\x22','6659730ChtEDA','1553340cosSso','role','trim','set','tenantCode','MEMBER','username','24xqyJbi'];a198_0x46ba=function(){return _0xef8844;};return a198_0x46ba();}function a198_0x4c5c(_0x1db972,_0x4101bf){_0x1db972=_0x1db972-0x1da;const _0x46ba78=a198_0x46ba();let _0x4c5c86=_0x46ba78[_0x1db972];return _0x4c5c86;}export function projectTenantMembers(_0x59c2dc){const _0x12eba8=a198_0x4c5c,_0x5b03aa=new Map();for(const _0xcecee6 of _0x59c2dc){const _0x33f0b1=Number(_0xcecee6[_0x12eba8(0x1ec)]);if(!Number[_0x12eba8(0x1eb)](_0x33f0b1)||_0x33f0b1<=0x0)continue;const _0x30246c={'userId':_0x33f0b1,'username':textOrNull(_0xcecee6[_0x12eba8(0x1e0)]),'displayName':textOrNull(_0xcecee6['nickname']),'role':_0xcecee6['adminFlag']===!![]?'ADMIN':_0x12eba8(0x1df),'status':textOrNull(_0xcecee6[_0x12eba8(0x1e4)])},_0x3e0b20=_0x5b03aa[_0x12eba8(0x1ef)](_0x33f0b1);if(!_0x3e0b20){_0x5b03aa[_0x12eba8(0x1dd)](_0x33f0b1,_0x30246c);continue;}_0x3e0b20[_0x12eba8(0x1e0)]??=_0x30246c[_0x12eba8(0x1e0)],_0x3e0b20[_0x12eba8(0x1ea)]??=_0x30246c[_0x12eba8(0x1ea)],_0x3e0b20['status']??=_0x30246c['status'];if(_0x30246c['role']===_0x12eba8(0x1e2))_0x3e0b20[_0x12eba8(0x1db)]=_0x12eba8(0x1e2);}return[..._0x5b03aa['values']()][_0x12eba8(0x1e9)]((_0x46ff8b,_0x4391c1)=>_0x46ff8b[_0x12eba8(0x1ec)]-_0x4391c1[_0x12eba8(0x1ec)]);}export function assertTenantAccessible(_0x2fc5d6,_0x417671){const _0x4120ef=a198_0x4c5c;if(_0x417671[_0x4120ef(0x1ed)](_0x3346be=>_0x3346be[_0x4120ef(0x1de)]===_0x2fc5d6))return;throw CliErrors['validation'](_0x4120ef(0x1f1)+_0x2fc5d6+_0x4120ef(0x1ee),'Check\x20--tenant-code\x20or\x20login\x20with\x20an\x20account\x20that\x20belongs\x20to\x20this\x20tenant.');}
@@ -0,0 +1,2 @@
1
+ import type { CommandDefinition } from "../../framework/types.js";
2
+ export declare const dingTalkSandboxBind: CommandDefinition;
@@ -0,0 +1 @@
1
+ const a199_0x2d4b03=a199_0x1b8a;(function(_0x3ed261,_0x1a2039){const _0x111cc9=a199_0x1b8a,_0x5071f1=_0x3ed261();while(!![]){try{const _0x361771=-parseInt(_0x111cc9(0x14d))/0x1+parseInt(_0x111cc9(0x145))/0x2*(-parseInt(_0x111cc9(0x154))/0x3)+-parseInt(_0x111cc9(0x15c))/0x4*(-parseInt(_0x111cc9(0x14a))/0x5)+-parseInt(_0x111cc9(0x15b))/0x6+parseInt(_0x111cc9(0x14b))/0x7+-parseInt(_0x111cc9(0x144))/0x8*(-parseInt(_0x111cc9(0x14c))/0x9)+-parseInt(_0x111cc9(0x156))/0xa*(-parseInt(_0x111cc9(0x160))/0xb);if(_0x361771===_0x1a2039)break;else _0x5071f1['push'](_0x5071f1['shift']());}catch(_0x3dbe64){_0x5071f1['push'](_0x5071f1['shift']());}}}(a199_0x2b24,0x527a1));import{asDryRunResult}from'../../commands/common/dry-run.js';function a199_0x1b8a(_0x1cf5b3,_0x27e875){_0x1cf5b3=_0x1cf5b3-0x143;const _0x2b2404=a199_0x2b24();let _0x1b8a4f=_0x2b2404[_0x1cf5b3];return _0x1b8a4f;}import{bindDingTalkSandboxAccount,DING_TALK_SANDBOX_BIND_PATH}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';const PROVIDER_ID=a199_0x2d4b03(0x143),CURRENT_BINDING_WARNING=a199_0x2d4b03(0x151);function a199_0x2b24(){const _0x22d74e=['34334zFzAWr','--ding-talk-user-id\x20cannot\x20be\x20empty.','apiError','Bind\x20the\x20current\x20platform\x20user\x20to\x20a\x20DingTalk\x20sandbox\x20account','dingding-sandbox-bind','5UODLmi','4167352qngsHZ','17820jsQDvF','546478VQpTyc','POST','trim','Retry\x20with\x20the\x20same\x20--ding-talk-user-id\x20only\x20after\x20checking\x20the\x20current\x20platform\x20session.','The\x20current\x20binding\x20is\x20not\x20exposed\x20by\x20the\x20server;\x20before\x20is\x20unavailable.','ding-talk-user-id','Pass\x20the\x20DingTalk\x20user\x20id\x20returned\x20by\x20the\x20sandbox.','39jEVznk','user-account','4901930zeGIMa','high-risk-write','bind','string','DingTalk\x20sandbox\x20account\x20binding\x20was\x20not\x20confirmed.','2439186BXKkjN','1674304qRjfgY','Bound\x20current\x20user\x20to\x20DingTalk\x20sandbox\x20account.','DingTalk\x20user\x20id\x20returned\x20by\x20the\x20sandbox','validation','11rLdxxC','dingding-sandbox','40HcWErR'];a199_0x2b24=function(){return _0x22d74e;};return a199_0x2b24();}function readDingTalkUserId(_0x1afa9e){const _0x1c8f04=a199_0x2d4b03,_0x3f18b8=_0x1afa9e['str'](_0x1c8f04(0x152))[_0x1c8f04(0x14f)]();if(!_0x3f18b8)throw CliErrors[_0x1c8f04(0x15f)](_0x1c8f04(0x146),_0x1c8f04(0x153));return _0x3f18b8;}function buildBindingData(_0x5d292f,_0x11161e){const _0x443a4f=a199_0x2d4b03;return{'operation':_0x443a4f(0x158),'selector':{'providerId':PROVIDER_ID,'dingTalkUserId':_0x5d292f},'before':null,'after':{'providerId':PROVIDER_ID,'dingTalkUserId':_0x5d292f,'bound':!![]},'dryRun':_0x11161e,'backend':{'method':_0x443a4f(0x14e),'path':DING_TALK_SANDBOX_BIND_PATH},'warnings':[CURRENT_BINDING_WARNING]};}export const dingTalkSandboxBind={'service':a199_0x2d4b03(0x155),'command':a199_0x2d4b03(0x149),'description':a199_0x2d4b03(0x148),'risk':a199_0x2d4b03(0x157),'requiresAuth':!![],'requiresAppCode':![],'structuredErrors':!![],'flags':[{'name':a199_0x2d4b03(0x152),'type':a199_0x2d4b03(0x159),'required':!![],'description':a199_0x2d4b03(0x15e)}],async 'validate'(_0x51901f){readDingTalkUserId(_0x51901f);},async 'dryRun'(_0x197345){const _0x41fa19=a199_0x2d4b03,_0xac1307=readDingTalkUserId(_0x197345);return asDryRunResult(buildBindingData(_0xac1307,!![]),{'method':_0x41fa19(0x14e),'url':DING_TALK_SANDBOX_BIND_PATH});},async 'execute'(_0x5e260d){const _0x1c1235=a199_0x2d4b03,_0x192123=readDingTalkUserId(_0x5e260d),_0x377dc2=await bindDingTalkSandboxAccount(_0x192123);if(_0x377dc2!==!![])throw CliErrors[_0x1c1235(0x147)](_0x1c1235(0x15a),_0x1c1235(0x150));return{'ok':!![],'data':buildBindingData(_0x192123,![]),'message':_0x1c1235(0x15d)};}};
@@ -0,0 +1,2 @@
1
+ import type { CommandDefinition } from "../../framework/types.js";
2
+ export declare const userAccountDefinitions: CommandDefinition[];
@@ -0,0 +1 @@
1
+ (function(_0x1fcb51,_0xa9efae){const _0x452fd6=a200_0x57ad,_0x120e0d=_0x1fcb51();while(!![]){try{const _0x1fe816=parseInt(_0x452fd6(0x190))/0x1*(parseInt(_0x452fd6(0x196))/0x2)+-parseInt(_0x452fd6(0x18e))/0x3+-parseInt(_0x452fd6(0x194))/0x4*(parseInt(_0x452fd6(0x195))/0x5)+parseInt(_0x452fd6(0x191))/0x6+parseInt(_0x452fd6(0x193))/0x7+parseInt(_0x452fd6(0x18f))/0x8+-parseInt(_0x452fd6(0x192))/0x9;if(_0x1fe816===_0xa9efae)break;else _0x120e0d['push'](_0x120e0d['shift']());}catch(_0x5f74bc){_0x120e0d['push'](_0x120e0d['shift']());}}}(a200_0x2a8b,0x286bf));function a200_0x57ad(_0x2b692a,_0xfdd510){_0x2b692a=_0x2b692a-0x18e;const _0x2a8b04=a200_0x2a8b();let _0x57ada0=_0x2a8b04[_0x2b692a];return _0x57ada0;}function a200_0x2a8b(){const _0x503012=['365175dmwfSK','711900qzcKjp','380824sbkZLH','5KkGpiM','2IjitIX','294432etqaON','1601608ajLqev','51458vwrDIP','276798SyopqY'];a200_0x2a8b=function(){return _0x503012;};return a200_0x2a8b();}import{dingTalkSandboxBind}from'../../commands/user-account/dingding-sandbox-bind.js';export const userAccountDefinitions=[dingTalkSandboxBind];
@@ -1 +1 @@
1
- function a191_0x1d98(){const _0x525fe3=['12776nNXlAF','workspace\x20add','3102cmlDqB','1210870EjjJpp','1191065edxvZL','748446wWNYhn','App\x20profile\x20name','Register\x20an\x20app\x20profile\x20in\x20the\x20current\x20workspace\x20(or\x20--global)','write','12alXKMu','881423kJlARt','2711303DpzDOo','add','1502TAvHdE','405eobbmA','workspace'];a191_0x1d98=function(){return _0x525fe3;};return a191_0x1d98();}const a191_0x45b325=a191_0xef98;function a191_0xef98(_0x2f2544,_0x521fe2){_0x2f2544=_0x2f2544-0xd1;const _0x1d9855=a191_0x1d98();let _0xef989e=_0x1d9855[_0x2f2544];return _0xef989e;}(function(_0x4dffe8,_0x5e1cf8){const _0x1a2caf=a191_0xef98,_0x5e7059=_0x4dffe8();while(!![]){try{const _0x3a8516=parseInt(_0x1a2caf(0xe0))/0x1+-parseInt(_0x1a2caf(0xd3))/0x2*(parseInt(_0x1a2caf(0xd8))/0x3)+-parseInt(_0x1a2caf(0xdf))/0x4*(-parseInt(_0x1a2caf(0xda))/0x5)+parseInt(_0x1a2caf(0xdb))/0x6+-parseInt(_0x1a2caf(0xd1))/0x7+-parseInt(_0x1a2caf(0xd6))/0x8*(-parseInt(_0x1a2caf(0xd4))/0x9)+-parseInt(_0x1a2caf(0xd9))/0xa;if(_0x3a8516===_0x5e1cf8)break;else _0x5e7059['push'](_0x5e7059['shift']());}catch(_0x32d6d2){_0x5e7059['push'](_0x5e7059['shift']());}}}(a191_0x1d98,0x7bf46));import{buildAppAddFlags,runAppAdd,validateAppName}from'../../commands/common/app-registry.js';export const workspaceAddDefinition={'service':a191_0x45b325(0xd5),'command':a191_0x45b325(0xd2),'description':a191_0x45b325(0xdd),'risk':a191_0x45b325(0xde),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a191_0x45b325(0xdc),'required':!![]}],'flags':buildAppAddFlags(),'validate':_0x476a72=>validateAppName(_0x476a72,a191_0x45b325(0xd7)),'execute':_0x486fbf=>runAppAdd(_0x486fbf,a191_0x45b325(0xd7))};
1
+ const a201_0x48ad57=a201_0x14e2;function a201_0x3aaa(){const _0x2102a5=['App\x20profile\x20name','1174Gcckuh','228kjkKkc','1231jYuiBH','62373mcZejB','13jANoXk','write','10331190tktmMR','503770zMoMDD','10831104IsNSdY','Register\x20an\x20app\x20profile\x20in\x20the\x20current\x20workspace\x20(or\x20--global)','9jQrCBq','7908780eyyByM','7xRcVwM','8820608cxKifp','workspace\x20add','workspace','12riDgbU','add'];a201_0x3aaa=function(){return _0x2102a5;};return a201_0x3aaa();}(function(_0x37b240,_0x5d206f){const _0x54af2b=a201_0x14e2,_0xba9ca5=_0x37b240();while(!![]){try{const _0x3e2f8f=-parseInt(_0x54af2b(0xa4))/0x1*(parseInt(_0x54af2b(0xa2))/0x2)+-parseInt(_0x54af2b(0xa5))/0x3*(-parseInt(_0x54af2b(0xa3))/0x4)+parseInt(_0x54af2b(0xa9))/0x5*(-parseInt(_0x54af2b(0x9f))/0x6)+parseInt(_0x54af2b(0xae))/0x7*(parseInt(_0x54af2b(0x9c))/0x8)+parseInt(_0x54af2b(0xac))/0x9*(parseInt(_0x54af2b(0xa8))/0xa)+-parseInt(_0x54af2b(0xad))/0xb+-parseInt(_0x54af2b(0xaa))/0xc*(parseInt(_0x54af2b(0xa6))/0xd);if(_0x3e2f8f===_0x5d206f)break;else _0xba9ca5['push'](_0xba9ca5['shift']());}catch(_0x14ed6e){_0xba9ca5['push'](_0xba9ca5['shift']());}}}(a201_0x3aaa,0xbd3c1));function a201_0x14e2(_0x3bcd73,_0x2f08d4){_0x3bcd73=_0x3bcd73-0x9c;const _0x3aaa20=a201_0x3aaa();let _0x14e2c0=_0x3aaa20[_0x3bcd73];return _0x14e2c0;}import{buildAppAddFlags,runAppAdd,validateAppName}from'../../commands/common/app-registry.js';export const workspaceAddDefinition={'service':a201_0x48ad57(0x9e),'command':a201_0x48ad57(0xa0),'description':a201_0x48ad57(0xab),'risk':a201_0x48ad57(0xa7),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a201_0x48ad57(0xa1),'required':!![]}],'flags':buildAppAddFlags(),'validate':_0x208585=>validateAppName(_0x208585,a201_0x48ad57(0x9d)),'execute':_0x214c83=>runAppAdd(_0x214c83,a201_0x48ad57(0x9d))};
@@ -1 +1 @@
1
- const a192_0x1ac181=a192_0x3818;(function(_0x4a02ca,_0x1f2af9){const _0xe61473=a192_0x3818,_0x16bc52=_0x4a02ca();while(!![]){try{const _0x32dedd=parseInt(_0xe61473(0xf2))/0x1+-parseInt(_0xe61473(0xd5))/0x2+parseInt(_0xe61473(0xcc))/0x3*(-parseInt(_0xe61473(0xe1))/0x4)+parseInt(_0xe61473(0xf3))/0x5+parseInt(_0xe61473(0xbc))/0x6*(parseInt(_0xe61473(0xb7))/0x7)+parseInt(_0xe61473(0xe3))/0x8+-parseInt(_0xe61473(0xe5))/0x9;if(_0x32dedd===_0x1f2af9)break;else _0x16bc52['push'](_0x16bc52['shift']());}catch(_0x4492ee){_0x16bc52['push'](_0x16bc52['shift']());}}}(a192_0x3724,0xda166));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a192_0x3818(_0x167779,_0x3ec96b){_0x167779=_0x167779-0xb7;const _0x3724f7=a192_0x3724();let _0x38187a=_0x3724f7[_0x167779];return _0x38187a;}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 a192_0x3724(){const _0x1c76d8=['Locale\x20for\x20this\x20workspace\x20app\x20profile','\x20workspace\x20','\x20workspace\x20<init|use>\x20--app\x20<name>\x20[--appcode\x20<code>]','Default\x20output\x20format\x20for\x20this\x20workspace\x20app\x20profile','string','\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20`','App\x20code\x20to\x20bind\x20to\x20this\x20workspace','format','3qcEYbi','\x20workspace\x20use\x20--app\x20<name>`.','apiDir','defaultApp','Pass\x20--appcode\x20<code>,\x20or\x20choose\x20one\x20of:\x20','apps','workspace','Workspace\x20','API\x20directory\x20path\x20for\x20this\x20workspace\x20app\x20profile','1883198PYyQbA','Missing\x20workspace\x20app\x20selector.','appcode','updated','project','globalConfig','use','\x22\x20not\x20found.','env','defaultFormat','number','locale','4444276wOitnY','str','13467136NheTxA','Default\x20page\x20size\x20for\x20this\x20workspace\x20app\x20profile','14432481OGqNxq','\x20--app\x20','length','object','flag','initialized','riskLevel','write','app','App\x20\x22','Switch\x20the\x20current\x20workspace\x20app\x20binding','pageSize','trim','1365144fxnXgP','1239235pUrqpm','Use\x20`',').\x20Config:\x20','1754452LsKFdz','keys','validation','Target\x20environment','\x20--appcode\x20<code>`.','30qtbvSJ','init','.\x20Credentials:\x20not\x20written.','join','Initialize\x20the\x20current\x20workspace\x20app\x20binding','isArray','App\x20profile\x20name\x20to\x20use\x20in\x20this\x20workspace','workspace.'];a192_0x3724=function(){return _0x1c76d8;};return a192_0x3724();}const WORKSPACE_USAGE=CLI_BIN_NAME+a192_0x1ac181(0xc6),SAFE_PROFILE_KEYS=['appcode',a192_0x1ac181(0xdd),'apiDir',a192_0x1ac181(0xcb),a192_0x1ac181(0xf0),a192_0x1ac181(0xeb),a192_0x1ac181(0xe0)],workspaceFlags=[{'name':a192_0x1ac181(0xed),'type':a192_0x1ac181(0xc8),'description':a192_0x1ac181(0xc2)},{'name':a192_0x1ac181(0xd7),'type':'string','description':a192_0x1ac181(0xca)},{'name':a192_0x1ac181(0xdd),'type':a192_0x1ac181(0xc8),'description':a192_0x1ac181(0xba),'enum':[...RABETBASE_ENV_VALUES]},{'name':a192_0x1ac181(0xce),'type':a192_0x1ac181(0xc8),'description':a192_0x1ac181(0xd4)},{'name':a192_0x1ac181(0xde),'type':a192_0x1ac181(0xc8),'description':a192_0x1ac181(0xc7),'enum':[...RABETBASE_OUTPUT_FORMAT_VALUES]},{'name':a192_0x1ac181(0xf0),'type':a192_0x1ac181(0xdf),'description':a192_0x1ac181(0xe4)},{'name':a192_0x1ac181(0xeb),'type':a192_0x1ac181(0xc8),'description':'Risk\x20level\x20for\x20this\x20workspace\x20app\x20profile','enum':[...RISK_LEVEL_VALUES]},{'name':a192_0x1ac181(0xe0),'type':'string','description':a192_0x1ac181(0xc4)}];function isRecord(_0x340c77){const _0x359db9=a192_0x1ac181;return!!_0x340c77&&typeof _0x340c77===_0x359db9(0xe8)&&!Array[_0x359db9(0xc1)](_0x340c77);}function assertValidAppcode(_0xf116f1){const {valid:_0x24011a,message:_0x249658}=validateAppcode(_0xf116f1);if(!_0x24011a)throw CliErrors['validation']('Invalid\x20appcode:\x20'+_0xf116f1,_0x249658);}function sanitizeProfile(_0x354295){if(!isRecord(_0x354295))return{};const _0x2f7e73={};for(const _0x40f45b of SAFE_PROFILE_KEYS){if(_0x354295[_0x40f45b]!==undefined)_0x2f7e73[_0x40f45b]=_0x354295[_0x40f45b];}return _0x2f7e73;}function cloneProfile(_0xd07997){return isRecord(_0xd07997)?{..._0xd07997}:{};}function collectWorkspaceProfileOverrides(_0x48973d){const _0x14030e=a192_0x1ac181,_0x32d06d={},_0x2a3448=_0x48973d[_0x14030e(0xe2)](_0x14030e(0xdd)),_0xd2918=_0x48973d[_0x14030e(0xe2)](_0x14030e(0xce)),_0x490783=_0x48973d['str']('defaultFormat'),_0x1dbc0c=_0x48973d[_0x14030e(0xe9)]('pageSize'),_0x399086=_0x48973d[_0x14030e(0xe2)](_0x14030e(0xeb)),_0x48f086=_0x48973d[_0x14030e(0xe2)](_0x14030e(0xe0));if(_0x2a3448)_0x32d06d['env']=_0x2a3448;if(_0xd2918)_0x32d06d['apiDir']=_0xd2918;if(_0x490783)_0x32d06d[_0x14030e(0xcb)]=_0x490783;if(_0x1dbc0c!==undefined&&_0x1dbc0c!=='')_0x32d06d[_0x14030e(0xf0)]=Number(_0x1dbc0c);if(_0x399086)_0x32d06d[_0x14030e(0xeb)]=_0x399086;if(_0x48f086)_0x32d06d[_0x14030e(0xe0)]=_0x48f086;return _0x32d06d;}async function validateWorkspaceArgs(_0x4fb051){const _0x3b14c2=a192_0x1ac181,_0x48dbd1=_0x4fb051[_0x3b14c2(0xe2)](_0x3b14c2(0xed))[_0x3b14c2(0xf1)](),_0x32cfd9=_0x4fb051['str'](_0x3b14c2(0xd7))[_0x3b14c2(0xf1)]();if(!_0x48dbd1&&!_0x32cfd9)throw CliErrors[_0x3b14c2(0xb9)](_0x3b14c2(0xd6),_0x3b14c2(0xf4)+CLI_BIN_NAME+'\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20`'+CLI_BIN_NAME+_0x3b14c2(0xcd));if(_0x32cfd9)assertValidAppcode(_0x32cfd9);}function resolveKnownApps(){const _0x2e2afc=a192_0x1ac181,{config:_0x4089aa,layers:_0x7b5c90}=readRawConfigWithLayers(),_0x3bc892=isRecord(_0x4089aa[_0x2e2afc(0xd1)])?_0x4089aa[_0x2e2afc(0xd1)]:{},_0x5e4732=isRecord(_0x7b5c90[_0x2e2afc(0xda)][_0x2e2afc(0xd1)])?_0x7b5c90[_0x2e2afc(0xda)][_0x2e2afc(0xd1)]:{};return{..._0x5e4732,..._0x3bc892};}async function configureWorkspace(_0x207925,_0x53b0f3){const _0x5b5d3a=a192_0x1ac181,_0x2b34ff=_0x207925[_0x5b5d3a(0xe2)](_0x5b5d3a(0xed))[_0x5b5d3a(0xf1)](),_0x81804f=_0x207925[_0x5b5d3a(0xe2)]('appcode')[_0x5b5d3a(0xf1)](),_0x3f272a=_0x2b34ff||_0x81804f;if(!_0x3f272a)throw CliErrors[_0x5b5d3a(0xb9)]('Missing\x20workspace\x20app\x20selector.',_0x5b5d3a(0xf4)+CLI_BIN_NAME+_0x5b5d3a(0xc9)+CLI_BIN_NAME+_0x5b5d3a(0xcd));if(_0x81804f)assertValidAppcode(_0x81804f);const _0xb54aac=resolveWriteConfigPath(_0x5b5d3a(0xd9)),_0x16b395=readConfigFile(_0xb54aac),_0x144ddc=resolveKnownApps(),_0x126a8a=isRecord(_0x16b395[_0x5b5d3a(0xd1)])?{..._0x16b395[_0x5b5d3a(0xd1)]}:{},_0x5e1bf7=cloneProfile(_0x126a8a[_0x3f272a]),_0x4aace9=sanitizeProfile(_0x144ddc[_0x3f272a]),_0x78c289=_0x81804f?{}:_0x4aace9,_0x284c6e=_0x81804f||_0x78c289[_0x5b5d3a(0xd7)];if(!_0x284c6e){const _0x1e726d=Object[_0x5b5d3a(0xb8)](_0x144ddc),_0x5d4521=_0x1e726d[_0x5b5d3a(0xe7)]===0x0?_0x5b5d3a(0xf4)+CLI_BIN_NAME+_0x5b5d3a(0xc5)+_0x53b0f3+_0x5b5d3a(0xe6)+_0x3f272a+_0x5b5d3a(0xbb):_0x5b5d3a(0xd0)+_0x1e726d[_0x5b5d3a(0xbf)](',\x20');throw CliErrors[_0x5b5d3a(0xb9)](_0x5b5d3a(0xee)+_0x3f272a+_0x5b5d3a(0xdc),_0x5d4521);}assertValidAppcode(String(_0x284c6e));const _0x593519={..._0x78c289,..._0x5e1bf7,'appcode':String(_0x284c6e),...collectWorkspaceProfileOverrides(_0x207925)};return _0x126a8a[_0x3f272a]=_0x593519,_0x16b395[_0x5b5d3a(0xd1)]=_0x126a8a,_0x16b395[_0x5b5d3a(0xcf)]=_0x3f272a,delete _0x16b395[_0x5b5d3a(0xd7)],delete _0x16b395[_0x5b5d3a(0xed)],_0x593519['env']&&(_0x16b395['env']=_0x593519[_0x5b5d3a(0xdd)]),writeConfigFile(_0xb54aac,_0x16b395),{'ok':!![],'message':_0x5b5d3a(0xd3)+(_0x53b0f3==='init'?_0x5b5d3a(0xea):_0x5b5d3a(0xd8))+':\x20'+_0x3f272a+'\x20(appcode:\x20'+_0x593519[_0x5b5d3a(0xd7)]+_0x5b5d3a(0xf5)+_0xb54aac+_0x5b5d3a(0xbe),'data':{'operation':_0x5b5d3a(0xc3)+_0x53b0f3,'configPath':_0xb54aac,'app':_0x3f272a,'appcode':_0x593519[_0x5b5d3a(0xd7)],'env':_0x593519[_0x5b5d3a(0xdd)]??null,'credentialsWritten':![]}};}const workspaceInitDefinition={'service':a192_0x1ac181(0xd2),'command':a192_0x1ac181(0xbd),'description':a192_0x1ac181(0xc0),'risk':a192_0x1ac181(0xec),'requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x5a588a=>configureWorkspace(_0x5a588a,a192_0x1ac181(0xbd))},workspaceUseDefinition={'service':a192_0x1ac181(0xd2),'command':a192_0x1ac181(0xdb),'description':a192_0x1ac181(0xef),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x2c34fd=>configureWorkspace(_0x2c34fd,a192_0x1ac181(0xdb))};export const workspaceDefinitions=[workspaceInitDefinition,workspaceUseDefinition,workspaceAddDefinition,workspaceRemoveDefinition];export{WORKSPACE_USAGE};
1
+ const a202_0x407cc0=a202_0x4d15;(function(_0x34612d,_0x2a1dd8){const _0x4fb8cc=a202_0x4d15,_0x887c2c=_0x34612d();while(!![]){try{const _0x345275=-parseInt(_0x4fb8cc(0x121))/0x1+parseInt(_0x4fb8cc(0x124))/0x2*(-parseInt(_0x4fb8cc(0x135))/0x3)+parseInt(_0x4fb8cc(0x12e))/0x4+-parseInt(_0x4fb8cc(0x125))/0x5+-parseInt(_0x4fb8cc(0x12c))/0x6+-parseInt(_0x4fb8cc(0x137))/0x7*(parseInt(_0x4fb8cc(0x140))/0x8)+parseInt(_0x4fb8cc(0x127))/0x9;if(_0x345275===_0x2a1dd8)break;else _0x887c2c['push'](_0x887c2c['shift']());}catch(_0x589056){_0x887c2c['push'](_0x887c2c['shift']());}}}(a202_0x2e54,0xc46dd));function a202_0x4d15(_0x1e1919,_0x3c9bc8){_0x1e1919=_0x1e1919-0x11b;const _0x2e54d9=a202_0x2e54();let _0x4d151d=_0x2e54d9[_0x1e1919];return _0x4d151d;}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{RABETBASE_ENV_VALUES}from'../../constant/env.js';import{RABETBASE_OUTPUT_FORMAT_VALUES}from'../../constant/output.js';import{RISK_LEVEL_VALUES}from'../../constant/risk.js';import{validateAppcode}from'../../commands/common/validate.js';import{readConfigFile,readRawConfigWithLayers,resolveWriteConfigPath,writeConfigFile}from'../../context.js';import{workspaceAddDefinition}from'../../commands/workspace/add.js';import{workspaceRemoveDefinition}from'../../commands/workspace/remove.js';const WORKSPACE_USAGE=CLI_BIN_NAME+a202_0x407cc0(0x14b),SAFE_PROFILE_KEYS=[a202_0x407cc0(0x130),a202_0x407cc0(0x149),a202_0x407cc0(0x151),'format',a202_0x407cc0(0x12b),'riskLevel','locale'],workspaceFlags=[{'name':a202_0x407cc0(0x12f),'type':a202_0x407cc0(0x13c),'description':a202_0x407cc0(0x134)},{'name':a202_0x407cc0(0x130),'type':a202_0x407cc0(0x13c),'description':a202_0x407cc0(0x13a)},{'name':a202_0x407cc0(0x149),'type':'string','description':a202_0x407cc0(0x120),'enum':[...RABETBASE_ENV_VALUES]},{'name':a202_0x407cc0(0x151),'type':'string','description':a202_0x407cc0(0x144)},{'name':a202_0x407cc0(0x150),'type':'string','description':a202_0x407cc0(0x141),'enum':[...RABETBASE_OUTPUT_FORMAT_VALUES]},{'name':'pageSize','type':'number','description':a202_0x407cc0(0x13b)},{'name':a202_0x407cc0(0x13d),'type':a202_0x407cc0(0x13c),'description':a202_0x407cc0(0x122),'enum':[...RISK_LEVEL_VALUES]},{'name':'locale','type':'string','description':a202_0x407cc0(0x11b)}];function isRecord(_0x1de8bb){const _0x348699=a202_0x407cc0;return!!_0x1de8bb&&typeof _0x1de8bb===_0x348699(0x12a)&&!Array[_0x348699(0x143)](_0x1de8bb);}function assertValidAppcode(_0x34817a){const _0x5700eb=a202_0x407cc0,{valid:_0x337056,message:_0x1ca25e}=validateAppcode(_0x34817a);if(!_0x337056)throw CliErrors[_0x5700eb(0x11f)](_0x5700eb(0x14e)+_0x34817a,_0x1ca25e);}function sanitizeProfile(_0x1e36bf){if(!isRecord(_0x1e36bf))return{};const _0x5ee10b={};for(const _0x2be20b of SAFE_PROFILE_KEYS){if(_0x1e36bf[_0x2be20b]!==undefined)_0x5ee10b[_0x2be20b]=_0x1e36bf[_0x2be20b];}return _0x5ee10b;}function cloneProfile(_0x5e6ffd){return isRecord(_0x5e6ffd)?{..._0x5e6ffd}:{};}function collectWorkspaceProfileOverrides(_0x434667){const _0x3ecdf5=a202_0x407cc0,_0x34994d={},_0x282680=_0x434667[_0x3ecdf5(0x132)](_0x3ecdf5(0x149)),_0x37346d=_0x434667[_0x3ecdf5(0x132)](_0x3ecdf5(0x151)),_0x27399a=_0x434667[_0x3ecdf5(0x132)]('defaultFormat'),_0x4457c9=_0x434667[_0x3ecdf5(0x142)]('pageSize'),_0x180cc1=_0x434667[_0x3ecdf5(0x132)]('riskLevel'),_0x5f296b=_0x434667[_0x3ecdf5(0x132)]('locale');if(_0x282680)_0x34994d[_0x3ecdf5(0x149)]=_0x282680;if(_0x37346d)_0x34994d['apiDir']=_0x37346d;if(_0x27399a)_0x34994d['format']=_0x27399a;if(_0x4457c9!==undefined&&_0x4457c9!=='')_0x34994d['pageSize']=Number(_0x4457c9);if(_0x180cc1)_0x34994d[_0x3ecdf5(0x13d)]=_0x180cc1;if(_0x5f296b)_0x34994d[_0x3ecdf5(0x133)]=_0x5f296b;return _0x34994d;}async function validateWorkspaceArgs(_0x268584){const _0x267fb7=a202_0x407cc0,_0x3f4397=_0x268584[_0x267fb7(0x132)]('app')[_0x267fb7(0x126)](),_0x2e4803=_0x268584[_0x267fb7(0x132)]('appcode')['trim']();if(!_0x3f4397&&!_0x2e4803)throw CliErrors[_0x267fb7(0x11f)](_0x267fb7(0x14f),'Use\x20`'+CLI_BIN_NAME+_0x267fb7(0x146)+CLI_BIN_NAME+_0x267fb7(0x14d));if(_0x2e4803)assertValidAppcode(_0x2e4803);}function resolveKnownApps(){const _0x2e20b1=a202_0x407cc0,{config:_0x398697,layers:_0x34fd13}=readRawConfigWithLayers(),_0x1920aa=isRecord(_0x398697[_0x2e20b1(0x12d)])?_0x398697[_0x2e20b1(0x12d)]:{},_0x1bf866=isRecord(_0x34fd13[_0x2e20b1(0x147)][_0x2e20b1(0x12d)])?_0x34fd13[_0x2e20b1(0x147)][_0x2e20b1(0x12d)]:{};return{..._0x1bf866,..._0x1920aa};}async function configureWorkspace(_0x351c12,_0xcc4b6d){const _0x3981c4=a202_0x407cc0,_0x5e92d4=_0x351c12[_0x3981c4(0x132)](_0x3981c4(0x12f))[_0x3981c4(0x126)](),_0x4b726e=_0x351c12[_0x3981c4(0x132)]('appcode')[_0x3981c4(0x126)](),_0x58f9ed=_0x5e92d4||_0x4b726e;if(!_0x58f9ed)throw CliErrors['validation'](_0x3981c4(0x14f),_0x3981c4(0x123)+CLI_BIN_NAME+_0x3981c4(0x146)+CLI_BIN_NAME+_0x3981c4(0x14d));if(_0x4b726e)assertValidAppcode(_0x4b726e);const _0x41b924=resolveWriteConfigPath(_0x3981c4(0x11e)),_0x36bd60=readConfigFile(_0x41b924),_0x16edb9=resolveKnownApps(),_0x5be848=isRecord(_0x36bd60[_0x3981c4(0x12d)])?{..._0x36bd60[_0x3981c4(0x12d)]}:{},_0x53f2a1=cloneProfile(_0x5be848[_0x58f9ed]),_0x597089=sanitizeProfile(_0x16edb9[_0x58f9ed]),_0x48849c=_0x4b726e?{}:_0x597089,_0x4ada90=_0x4b726e||_0x48849c[_0x3981c4(0x130)];if(!_0x4ada90){const _0x1f54b7=Object[_0x3981c4(0x128)](_0x16edb9),_0x30e5f2=_0x1f54b7['length']===0x0?_0x3981c4(0x123)+CLI_BIN_NAME+'\x20workspace\x20'+_0xcc4b6d+'\x20--app\x20'+_0x58f9ed+_0x3981c4(0x14a):_0x3981c4(0x138)+_0x1f54b7['join'](',\x20');throw CliErrors[_0x3981c4(0x11f)](_0x3981c4(0x11c)+_0x58f9ed+_0x3981c4(0x14c),_0x30e5f2);}assertValidAppcode(String(_0x4ada90));const _0x264681={..._0x48849c,..._0x53f2a1,'appcode':String(_0x4ada90),...collectWorkspaceProfileOverrides(_0x351c12)};return _0x5be848[_0x58f9ed]=_0x264681,_0x36bd60[_0x3981c4(0x12d)]=_0x5be848,_0x36bd60['defaultApp']=_0x58f9ed,delete _0x36bd60[_0x3981c4(0x130)],delete _0x36bd60[_0x3981c4(0x12f)],_0x264681[_0x3981c4(0x149)]&&(_0x36bd60[_0x3981c4(0x149)]=_0x264681[_0x3981c4(0x149)]),writeConfigFile(_0x41b924,_0x36bd60),{'ok':!![],'message':'Workspace\x20'+(_0xcc4b6d===_0x3981c4(0x129)?'initialized':'updated')+':\x20'+_0x58f9ed+_0x3981c4(0x131)+_0x264681['appcode']+_0x3981c4(0x139)+_0x41b924+_0x3981c4(0x152),'data':{'operation':_0x3981c4(0x145)+_0xcc4b6d,'configPath':_0x41b924,'app':_0x58f9ed,'appcode':_0x264681[_0x3981c4(0x130)],'env':_0x264681['env']??null,'credentialsWritten':![]}};}const workspaceInitDefinition={'service':a202_0x407cc0(0x136),'command':a202_0x407cc0(0x129),'description':a202_0x407cc0(0x11d),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x402eb5=>configureWorkspace(_0x402eb5,a202_0x407cc0(0x129))},workspaceUseDefinition={'service':a202_0x407cc0(0x136),'command':a202_0x407cc0(0x148),'description':a202_0x407cc0(0x13f),'risk':a202_0x407cc0(0x13e),'requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x8034a=>configureWorkspace(_0x8034a,a202_0x407cc0(0x148))};function a202_0x2e54(){const _0x21d73a=[').\x20Config:\x20','App\x20code\x20to\x20bind\x20to\x20this\x20workspace','Default\x20page\x20size\x20for\x20this\x20workspace\x20app\x20profile','string','riskLevel','write','Switch\x20the\x20current\x20workspace\x20app\x20binding','88GDwaJn','Default\x20output\x20format\x20for\x20this\x20workspace\x20app\x20profile','flag','isArray','API\x20directory\x20path\x20for\x20this\x20workspace\x20app\x20profile','workspace.','\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20`','globalConfig','use','env','\x20--appcode\x20<code>`.','\x20workspace\x20<init|use>\x20--app\x20<name>\x20[--appcode\x20<code>]','\x22\x20not\x20found.','\x20workspace\x20use\x20--app\x20<name>`.','Invalid\x20appcode:\x20','Missing\x20workspace\x20app\x20selector.','defaultFormat','apiDir','.\x20Credentials:\x20not\x20written.','Locale\x20for\x20this\x20workspace\x20app\x20profile','App\x20\x22','Initialize\x20the\x20current\x20workspace\x20app\x20binding','project','validation','Target\x20environment','22966qeqYJk','Risk\x20level\x20for\x20this\x20workspace\x20app\x20profile','Use\x20`','10YWNbhf','4033670JNlYpK','trim','21285378OcPNXd','keys','init','object','pageSize','492474kNufpd','apps','2844588ynNxBK','app','appcode','\x20(appcode:\x20','str','locale','App\x20profile\x20name\x20to\x20use\x20in\x20this\x20workspace','397680DgKEjS','workspace','443569NOKKsy','Pass\x20--appcode\x20<code>,\x20or\x20choose\x20one\x20of:\x20'];a202_0x2e54=function(){return _0x21d73a;};return a202_0x2e54();}export const workspaceDefinitions=[workspaceInitDefinition,workspaceUseDefinition,workspaceAddDefinition,workspaceRemoveDefinition];export{WORKSPACE_USAGE};
@@ -1 +1 @@
1
- const a193_0x5eabdf=a193_0x475b;function a193_0x8e2f(){const _0x4f4a9b=['8PhYwvA','Remove\x20an\x20app\x20profile\x20from\x20the\x20current\x20workspace\x20(or\x20--global)','7ccMvIQ','name','App\x20profile\x20name\x20to\x20remove','714762xJWEnp','workspace','709364ikAHgI','183172sYzDJM','write','3225WxHTge','8630862wshRJq','1347827ZDXDyd','8516PDlWob','5423499HWUnoS','workspace\x20remove','1910zLFVba'];a193_0x8e2f=function(){return _0x4f4a9b;};return a193_0x8e2f();}(function(_0x169ba1,_0x26352d){const _0x22a8d6=a193_0x475b,_0x5ca0d7=_0x169ba1();while(!![]){try{const _0x16f1b2=parseInt(_0x22a8d6(0x13a))/0x1+-parseInt(_0x22a8d6(0x135))/0x2+parseInt(_0x22a8d6(0x133))/0x3+-parseInt(_0x22a8d6(0x13b))/0x4*(parseInt(_0x22a8d6(0x138))/0x5)+parseInt(_0x22a8d6(0x139))/0x6*(-parseInt(_0x22a8d6(0x141))/0x7)+-parseInt(_0x22a8d6(0x13f))/0x8*(parseInt(_0x22a8d6(0x13c))/0x9)+parseInt(_0x22a8d6(0x13e))/0xa*(parseInt(_0x22a8d6(0x136))/0xb);if(_0x16f1b2===_0x26352d)break;else _0x5ca0d7['push'](_0x5ca0d7['shift']());}catch(_0xb1f032){_0x5ca0d7['push'](_0x5ca0d7['shift']());}}}(a193_0x8e2f,0xf3906));import{buildAppRemoveFlags,runAppRemove,validateAppName}from'../../commands/common/app-registry.js';function a193_0x475b(_0x3f487,_0x239014){_0x3f487=_0x3f487-0x132;const _0x8e2f9f=a193_0x8e2f();let _0x475b71=_0x8e2f9f[_0x3f487];return _0x475b71;}export const workspaceRemoveDefinition={'service':a193_0x5eabdf(0x134),'command':'remove','description':a193_0x5eabdf(0x140),'risk':a193_0x5eabdf(0x137),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a193_0x5eabdf(0x142),'description':a193_0x5eabdf(0x132),'required':!![]}],'flags':buildAppRemoveFlags(),'validate':_0x440713=>validateAppName(_0x440713,a193_0x5eabdf(0x13d)),'execute':_0x4de346=>runAppRemove(_0x4de346,a193_0x5eabdf(0x13d))};
1
+ const a203_0x2e5c55=a203_0x4074;(function(_0x30a5d0,_0x9838a5){const _0x15ca67=a203_0x4074,_0x50d66c=_0x30a5d0();while(!![]){try{const _0x5c1db4=parseInt(_0x15ca67(0x8d))/0x1*(parseInt(_0x15ca67(0x8c))/0x2)+parseInt(_0x15ca67(0x85))/0x3*(parseInt(_0x15ca67(0x94))/0x4)+parseInt(_0x15ca67(0x8f))/0x5*(parseInt(_0x15ca67(0x8b))/0x6)+parseInt(_0x15ca67(0x91))/0x7*(parseInt(_0x15ca67(0x8e))/0x8)+parseInt(_0x15ca67(0x92))/0x9+parseInt(_0x15ca67(0x86))/0xa*(parseInt(_0x15ca67(0x87))/0xb)+-parseInt(_0x15ca67(0x88))/0xc;if(_0x5c1db4===_0x9838a5)break;else _0x50d66c['push'](_0x50d66c['shift']());}catch(_0x1bfdbb){_0x50d66c['push'](_0x50d66c['shift']());}}}(a203_0x5ee5,0x639d5));function a203_0x4074(_0x327548,_0x26dcd0){_0x327548=_0x327548-0x84;const _0x5ee58c=a203_0x5ee5();let _0x407421=_0x5ee58c[_0x327548];return _0x407421;}import{buildAppRemoveFlags,runAppRemove,validateAppName}from'../../commands/common/app-registry.js';function a203_0x5ee5(){const _0x34092d=['4222150kLzrQW','11PkLESD','16804056KsClMc','App\x20profile\x20name\x20to\x20remove','workspace\x20remove','6VIbpnU','75538bNwVlY','13jvQNSf','8YrEKtD','167380ODNjdY','workspace','3499321bWzlTF','2495583ZjpSVz','write','4VwoPwJ','name','Remove\x20an\x20app\x20profile\x20from\x20the\x20current\x20workspace\x20(or\x20--global)','253443usdmIL'];a203_0x5ee5=function(){return _0x34092d;};return a203_0x5ee5();}export const workspaceRemoveDefinition={'service':a203_0x2e5c55(0x90),'command':'remove','description':a203_0x2e5c55(0x84),'risk':a203_0x2e5c55(0x93),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a203_0x2e5c55(0x95),'description':a203_0x2e5c55(0x89),'required':!![]}],'flags':buildAppRemoveFlags(),'validate':_0x577a17=>validateAppName(_0x577a17,a203_0x2e5c55(0x8a)),'execute':_0x1e3f63=>runAppRemove(_0x1e3f63,'workspace\x20remove')};