@lovrabet/rabetbase-cli 2.5.2-beta.3 → 2.5.2-beta.5

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 (350) hide show
  1. package/README.md +1 -1
  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/api/generate-sdk-config-file.js +1 -1
  6. package/lib/auth/auth-server-ui.js +1 -1
  7. package/lib/auth/auth-server.js +1 -1
  8. package/lib/auth/constant.js +1 -1
  9. package/lib/auth/get-cookie.js +1 -1
  10. package/lib/auth/get-session-user.js +1 -1
  11. package/lib/auth/is-session-valid.js +1 -1
  12. package/lib/auth/login-success-html.js +1 -1
  13. package/lib/auth/logout.js +1 -1
  14. package/lib/cli-flags.js +1 -1
  15. package/lib/cli.js +1 -1
  16. package/lib/commands/api/generate.js +1 -1
  17. package/lib/commands/api/index.js +1 -1
  18. package/lib/commands/api/list.js +1 -1
  19. package/lib/commands/api/pull.js +1 -1
  20. package/lib/commands/api/shared.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/members-list.js +1 -1
  24. package/lib/commands/app/remote-directory.js +1 -1
  25. package/lib/commands/app/shared.js +1 -1
  26. package/lib/commands/app-config/delete.js +1 -1
  27. package/lib/commands/app-config/get.js +1 -1
  28. package/lib/commands/app-config/index.js +1 -1
  29. package/lib/commands/app-config/list.js +1 -1
  30. package/lib/commands/app-config/set.js +1 -1
  31. package/lib/commands/app-config/shared.js +1 -1
  32. package/lib/commands/auth/index.js +1 -1
  33. package/lib/commands/bff/create.js +1 -1
  34. package/lib/commands/bff/delete.js +1 -1
  35. package/lib/commands/bff/detail.js +1 -1
  36. package/lib/commands/bff/index.js +1 -1
  37. package/lib/commands/bff/list.js +1 -1
  38. package/lib/commands/bff/pull.js +1 -1
  39. package/lib/commands/bff/push.js +1 -1
  40. package/lib/commands/bff/status.js +1 -1
  41. package/lib/commands/cli-skill/index.js +1 -1
  42. package/lib/commands/cli-update.js +1 -1
  43. package/lib/commands/codegen/index.js +1 -1
  44. package/lib/commands/codegen/sdk.js +1 -1
  45. package/lib/commands/codegen/sql.js +1 -1
  46. package/lib/commands/common/app-registry.js +1 -1
  47. package/lib/commands/common/app-selector.js +1 -1
  48. package/lib/commands/common/async-task.js +1 -1
  49. package/lib/commands/common/dry-run.js +1 -1
  50. package/lib/commands/common/flags.js +1 -1
  51. package/lib/commands/common/local-file.js +1 -1
  52. package/lib/commands/common/validate.js +1 -1
  53. package/lib/commands/config/delete.js +1 -1
  54. package/lib/commands/config/get.js +1 -1
  55. package/lib/commands/config/index.js +1 -1
  56. package/lib/commands/config/init.js +1 -1
  57. package/lib/commands/config/list.js +1 -1
  58. package/lib/commands/config/set.js +1 -1
  59. package/lib/commands/config/shared.js +1 -1
  60. package/lib/commands/dataset/business-group-update.js +1 -1
  61. package/lib/commands/dataset/business-groups.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-restore.js +1 -1
  67. package/lib/commands/dataset/field-update.js +1 -1
  68. package/lib/commands/dataset/generate.js +1 -1
  69. package/lib/commands/dataset/index.js +1 -1
  70. package/lib/commands/dataset/list.js +1 -1
  71. package/lib/commands/dataset/operations.js +1 -1
  72. package/lib/commands/dataset/relation-audit.js +1 -1
  73. package/lib/commands/dataset/relation-create.js +1 -1
  74. package/lib/commands/dataset/relation-delete.js +1 -1
  75. package/lib/commands/dataset/relation-shared.js +1 -1
  76. package/lib/commands/dataset/relation-update.js +1 -1
  77. package/lib/commands/dataset/relations.js +1 -1
  78. package/lib/commands/dataset/rename.js +1 -1
  79. package/lib/commands/dataset/restore.js +1 -1
  80. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  81. package/lib/commands/db/analysis-batching.js +1 -1
  82. package/lib/commands/db/analyze-batch-plan.js +1 -1
  83. package/lib/commands/db/analyze-cancel.js +1 -1
  84. package/lib/commands/db/analyze-start.js +1 -1
  85. package/lib/commands/db/analyze-status.js +1 -1
  86. package/lib/commands/db/create.js +1 -1
  87. package/lib/commands/db/delete.js +1 -1
  88. package/lib/commands/db/detail.js +1 -1
  89. package/lib/commands/db/diff-refresh-start.js +1 -1
  90. package/lib/commands/db/diff-refresh-status.js +1 -1
  91. package/lib/commands/db/diff.js +1 -1
  92. package/lib/commands/db/index.js +1 -1
  93. package/lib/commands/db/list.js +1 -1
  94. package/lib/commands/db/shared.js +1 -1
  95. package/lib/commands/db/table-diff-shared.js +1 -1
  96. package/lib/commands/db/tables.js +1 -1
  97. package/lib/commands/db/test.js +1 -1
  98. package/lib/commands/db/update.js +1 -1
  99. package/lib/commands/deployment/auto-sync.js +1 -1
  100. package/lib/commands/deployment/index.js +1 -1
  101. package/lib/commands/deployment/sync-all.js +1 -1
  102. package/lib/commands/deployment/sync-jobs.js +1 -1
  103. package/lib/commands/deployment/sync-status.js +1 -1
  104. package/lib/commands/deployment/sync.js +1 -1
  105. package/lib/commands/doctor.js +1 -1
  106. package/lib/commands/file/index.js +1 -1
  107. package/lib/commands/instant-api-policy/current.js +1 -1
  108. package/lib/commands/instant-api-policy/index.js +1 -1
  109. package/lib/commands/instant-api-policy/init.js +1 -1
  110. package/lib/commands/instant-api-policy/publish.js +1 -1
  111. package/lib/commands/instant-api-policy/pull.js +1 -1
  112. package/lib/commands/instant-api-policy/revision.js +1 -1
  113. package/lib/commands/instant-api-policy/revisions.js +1 -1
  114. package/lib/commands/instant-api-policy/rollback.js +1 -1
  115. package/lib/commands/instant-api-policy/shared.js +1 -1
  116. package/lib/commands/instant-api-policy/validate.js +1 -1
  117. package/lib/commands/issue/index.js +1 -1
  118. package/lib/commands/issue/nudge.js +1 -1
  119. package/lib/commands/issue/report.js +1 -1
  120. package/lib/commands/issue/shared.js +1 -1
  121. package/lib/commands/kb/create.js +1 -1
  122. package/lib/commands/kb/delete.js +1 -1
  123. package/lib/commands/kb/detail.js +1 -1
  124. package/lib/commands/kb/index.js +1 -1
  125. package/lib/commands/kb/list.js +1 -1
  126. package/lib/commands/kb/search.js +1 -1
  127. package/lib/commands/kb/shared.js +1 -1
  128. package/lib/commands/kb/update.js +1 -1
  129. package/lib/commands/logs/index.js +1 -1
  130. package/lib/commands/menu/asset-update.js +1 -1
  131. package/lib/commands/menu/delete.js +1 -1
  132. package/lib/commands/menu/external-link-create.js +1 -1
  133. package/lib/commands/menu/external-link-update.js +1 -1
  134. package/lib/commands/menu/group-create.js +1 -1
  135. package/lib/commands/menu/group-update.js +1 -1
  136. package/lib/commands/menu/index.js +1 -1
  137. package/lib/commands/menu/list.js +1 -1
  138. package/lib/commands/menu/move.js +1 -1
  139. package/lib/commands/menu/regroup-start.js +1 -1
  140. package/lib/commands/menu/rename.js +1 -1
  141. package/lib/commands/menu/shared/compare-table.js +1 -1
  142. package/lib/commands/menu/shared/delete-plan.js +1 -1
  143. package/lib/commands/menu/shared/facts.js +1 -1
  144. package/lib/commands/menu/shared/index.js +1 -1
  145. package/lib/commands/menu/shared/inquirer.js +1 -1
  146. package/lib/commands/menu/shared/local-pages.js +1 -1
  147. package/lib/commands/menu/shared/logic.js +1 -1
  148. package/lib/commands/menu/shared/mutations.js +1 -1
  149. package/lib/commands/menu/shared/service.js +1 -1
  150. package/lib/commands/menu/shared/sync-core.js +1 -1
  151. package/lib/commands/menu/shared/update-core.js +1 -1
  152. package/lib/commands/menu/shared/valid-url.js +1 -1
  153. package/lib/commands/menu/sync.js +1 -1
  154. package/lib/commands/menu/visibility-update.js +1 -1
  155. package/lib/commands/notification/config-create.js +1 -1
  156. package/lib/commands/notification/config-delete.js +1 -1
  157. package/lib/commands/notification/config-list.js +1 -1
  158. package/lib/commands/notification/config-update.js +1 -1
  159. package/lib/commands/notification/index.js +1 -1
  160. package/lib/commands/notification/shared.js +1 -1
  161. package/lib/commands/ocr/index.js +1 -1
  162. package/lib/commands/page/create.js +1 -1
  163. package/lib/commands/page/custom/detail.js +1 -1
  164. package/lib/commands/page/custom/list.js +1 -1
  165. package/lib/commands/page/custom/publish.js +1 -1
  166. package/lib/commands/page/custom/shared.d.ts +0 -8
  167. package/lib/commands/page/custom/shared.js +1 -1
  168. package/lib/commands/page/custom/syntax.js +1 -1
  169. package/lib/commands/page/custom/update.js +1 -1
  170. package/lib/commands/page/data-list-status.js +1 -1
  171. package/lib/commands/page/generate-start.js +1 -1
  172. package/lib/commands/page/generate-status.js +1 -1
  173. package/lib/commands/page/index.js +1 -1
  174. package/lib/commands/page/pull.js +1 -1
  175. package/lib/commands/page/push.js +1 -1
  176. package/lib/commands/page/relation-audit.js +1 -1
  177. package/lib/commands/page/restore.js +1 -1
  178. package/lib/commands/page/shared.js +1 -1
  179. package/lib/commands/page/sync.js +1 -1
  180. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  181. package/lib/commands/project/create/format-elapsed.js +1 -1
  182. package/lib/commands/project/create/main.js +1 -1
  183. package/lib/commands/project/create/materialize-project-template.js +1 -1
  184. package/lib/commands/project/create/project-name.js +1 -1
  185. package/lib/commands/project/create/project-template-archive.js +1 -1
  186. package/lib/commands/project/create/project-template-path.js +1 -1
  187. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  188. package/lib/commands/project/create/use-format-code.js +1 -1
  189. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  190. package/lib/commands/project/domain-routing-sync.js +1 -1
  191. package/lib/commands/project/index.js +1 -1
  192. package/lib/commands/project/upgrade.js +1 -1
  193. package/lib/commands/registry.js +1 -1
  194. package/lib/commands/role/delete.js +1 -1
  195. package/lib/commands/role/detail.js +1 -1
  196. package/lib/commands/role/index.js +1 -1
  197. package/lib/commands/role/list.js +1 -1
  198. package/lib/commands/role/shared.js +1 -1
  199. package/lib/commands/role/update.js +1 -1
  200. package/lib/commands/role/user-add.js +1 -1
  201. package/lib/commands/role/user-remove.js +1 -1
  202. package/lib/commands/role/user-resolve.js +1 -1
  203. package/lib/commands/rule/get.js +1 -1
  204. package/lib/commands/rule/index.js +1 -1
  205. package/lib/commands/rule/list.js +1 -1
  206. package/lib/commands/rule/set.js +1 -1
  207. package/lib/commands/rule/shared.js +1 -1
  208. package/lib/commands/run/index.d.ts +4 -0
  209. package/lib/commands/run/index.js +1 -1
  210. package/lib/commands/schema.js +1 -1
  211. package/lib/commands/sql/create.js +1 -1
  212. package/lib/commands/sql/delete.js +1 -1
  213. package/lib/commands/sql/detail.js +1 -1
  214. package/lib/commands/sql/exec.js +1 -1
  215. package/lib/commands/sql/index.js +1 -1
  216. package/lib/commands/sql/list.js +1 -1
  217. package/lib/commands/sql/pull.js +1 -1
  218. package/lib/commands/sql/push.js +1 -1
  219. package/lib/commands/sql/shared.js +1 -1
  220. package/lib/commands/sql/status.js +1 -1
  221. package/lib/commands/sql/validate.js +1 -1
  222. package/lib/commands/task/index.js +1 -1
  223. package/lib/commands/task/status.js +1 -1
  224. package/lib/commands/tenant/index.js +1 -1
  225. package/lib/commands/tenant/members-list.js +1 -1
  226. package/lib/commands/tenant/shared.js +1 -1
  227. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  228. package/lib/commands/user-account/index.js +1 -1
  229. package/lib/commands/workspace/add.js +1 -1
  230. package/lib/commands/workspace/index.js +1 -1
  231. package/lib/commands/workspace/remove.js +1 -1
  232. package/lib/config/domain-config.js +1 -1
  233. package/lib/config/project-domain-routing.d.ts +5 -1
  234. package/lib/config/project-domain-routing.js +1 -1
  235. package/lib/config/schema.js +1 -1
  236. package/lib/constant/cdn.js +1 -1
  237. package/lib/constant/cli.js +1 -1
  238. package/lib/constant/defaults.js +1 -1
  239. package/lib/constant/domain.js +1 -1
  240. package/lib/constant/env.js +1 -1
  241. package/lib/constant/output.js +1 -1
  242. package/lib/constant/paths.js +1 -1
  243. package/lib/constant/region.js +1 -1
  244. package/lib/constant/risk.js +1 -1
  245. package/lib/constant/routing-profile.js +1 -1
  246. package/lib/context/app-resolver.js +1 -1
  247. package/lib/context/auth-resolver.js +1 -1
  248. package/lib/context/config-loader.js +1 -1
  249. package/lib/context.js +1 -1
  250. package/lib/core/alias-resolver.js +1 -1
  251. package/lib/core/api-client.d.ts +0 -26
  252. package/lib/core/api-client.js +1 -1
  253. package/lib/core/bff/config.js +1 -1
  254. package/lib/core/bff/file-system.js +1 -1
  255. package/lib/core/bff/hash.js +1 -1
  256. package/lib/core/bff/lock.js +1 -1
  257. package/lib/core/bff/utils.js +1 -1
  258. package/lib/core/db-resolver.js +1 -1
  259. package/lib/core/instant-api-policy/config.js +1 -1
  260. package/lib/core/kb-search-client.js +1 -1
  261. package/lib/core/page/file-system.d.ts +43 -0
  262. package/lib/core/page/file-system.js +1 -1
  263. package/lib/core/page/hash.js +1 -1
  264. package/lib/core/page/lock.js +1 -1
  265. package/lib/core/sql-index-auditor.js +1 -1
  266. package/lib/core/sql-sync/config.js +1 -1
  267. package/lib/core/sql-sync/file-system.js +1 -1
  268. package/lib/core/sql-sync/hash.js +1 -1
  269. package/lib/core/sql-sync/lock.js +1 -1
  270. package/lib/core/sql-sync/utils.js +1 -1
  271. package/lib/core/sql-validator.js +1 -1
  272. package/lib/errors.js +1 -1
  273. package/lib/framework/build-all-flags.js +1 -1
  274. package/lib/framework/error-output.js +1 -1
  275. package/lib/framework/explicit-yes.js +1 -1
  276. package/lib/framework/flags.js +1 -1
  277. package/lib/framework/help.js +1 -1
  278. package/lib/framework/index.js +1 -1
  279. package/lib/framework/output.js +1 -1
  280. package/lib/framework/response.js +1 -1
  281. package/lib/framework/runner-alias.js +1 -1
  282. package/lib/framework/runner.js +1 -1
  283. package/lib/framework/schema-export.js +1 -1
  284. package/lib/framework/supported-flags.js +1 -1
  285. package/lib/framework/types.js +1 -1
  286. package/lib/generated/build-info.d.ts +4 -4
  287. package/lib/generated/build-info.js +1 -1
  288. package/lib/generated/official-routing.js +1 -1
  289. package/lib/generated/routing-contract.js +1 -1
  290. package/lib/help.js +1 -1
  291. package/lib/postinstall.js +1 -1
  292. package/lib/runtime/confirmation.js +1 -1
  293. package/lib/runtime/event.js +1 -1
  294. package/lib/runtime/index.js +1 -1
  295. package/lib/runtime/queue.js +1 -1
  296. package/lib/runtime/resolve.js +1 -1
  297. package/lib/skills/builtin-skill.js +1 -1
  298. package/lib/skills/main.js +1 -1
  299. package/lib/skills/npx-skills-add.js +1 -1
  300. package/lib/skills/skill-presence.js +1 -1
  301. package/lib/telemetry/cli-command-trace.js +1 -1
  302. package/lib/telemetry/cli-help-trace.js +1 -1
  303. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  304. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  305. package/lib/telemetry/send-cli-trace-log.js +1 -1
  306. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  307. package/lib/utils/ai_config.js +1 -1
  308. package/lib/utils/apply-jq-filter.js +1 -1
  309. package/lib/utils/cdn-config.js +1 -1
  310. package/lib/utils/check-sdk-version.js +1 -1
  311. package/lib/utils/cli-version-check.js +1 -1
  312. package/lib/utils/cli-version-policy.js +1 -1
  313. package/lib/utils/config.js +1 -1
  314. package/lib/utils/entity-with-id.js +1 -1
  315. package/lib/utils/file-utils.js +1 -1
  316. package/lib/utils/guides-cdn.js +1 -1
  317. package/lib/utils/http-client.js +1 -1
  318. package/lib/utils/is-non-interactive.js +1 -1
  319. package/lib/utils/logger.js +1 -1
  320. package/lib/utils/params.js +1 -1
  321. package/lib/utils/platform.d.ts +6 -5
  322. package/lib/utils/platform.js +1 -1
  323. package/lib/utils/sleep.js +1 -1
  324. package/lib/utils/template-replacer.js +1 -1
  325. package/lib/utils/update-notice.js +1 -1
  326. package/lib/utils/version.js +1 -1
  327. package/lib/utils/with-active-cookie.js +1 -1
  328. package/lib/utils/write-cli-side-channel.js +1 -1
  329. package/package.json +2 -1
  330. package/skills/rabetbase/SKILL.md +5 -5
  331. package/skills/rabetbase/guides/custom-page-workflow.md +35 -17
  332. package/skills/rabetbase/guides/page-development-workflow.md +1 -1
  333. package/skills/rabetbase/knowledge/components.md +292 -0
  334. package/skills/rabetbase/knowledge/custom-page/generation-standards.md +74 -4
  335. package/skills/rabetbase/knowledge/custom-page/page-templates.md +68 -0
  336. package/skills/rabetbase/references/rabetbase-page-create.md +21 -9
  337. package/skills/rabetbase/references/rabetbase-page-custom-detail.md +1 -1
  338. package/skills/rabetbase/references/rabetbase-page-custom-update.md +13 -9
  339. package/skills/rabetbase/references/rabetbase-project-create.md +5 -2
  340. package/skills/rabetbase/references/rabetbase-project-domain-routing-sync.md +2 -2
  341. package/skills/rabetbase/references/rabetbase-run.md +1 -0
  342. package/skills/rabetbase.manifest.json +5 -4
  343. package/templates/README.md +10 -4
  344. package/templates/custom-pages/blank.json +5 -0
  345. package/templates/custom-pages/dashboard.json +5 -0
  346. package/templates/custom-pages/onepage.json +5 -0
  347. package/templates/generate-api/api.ts.tpl +1 -1
  348. package/lib/commands/page/custom/template.d.ts +0 -8
  349. package/lib/commands/page/custom/template.js +0 -1
  350. package/skills/rabetbase/knowledge/custom-page/components.md +0 -225
@@ -1 +1 @@
1
- function a255_0xd829(_0x62f8b5,_0x2689cb){_0x62f8b5=_0x62f8b5-0x15a;const _0x3ca656=a255_0x3ca6();let _0xd829a5=_0x3ca656[_0x62f8b5];return _0xd829a5;}(function(_0x207959,_0x344dbf){const _0x52a324=a255_0xd829,_0xb4f89c=_0x207959();while(!![]){try{const _0x48c847=-parseInt(_0x52a324(0x173))/0x1*(parseInt(_0x52a324(0x16a))/0x2)+parseInt(_0x52a324(0x163))/0x3+parseInt(_0x52a324(0x169))/0x4+-parseInt(_0x52a324(0x177))/0x5+-parseInt(_0x52a324(0x178))/0x6*(-parseInt(_0x52a324(0x16e))/0x7)+-parseInt(_0x52a324(0x176))/0x8*(parseInt(_0x52a324(0x16d))/0x9)+parseInt(_0x52a324(0x160))/0xa;if(_0x48c847===_0x344dbf)break;else _0xb4f89c['push'](_0xb4f89c['shift']());}catch(_0x280f38){_0xb4f89c['push'](_0xb4f89c['shift']());}}}(a255_0x3ca6,0xcb0bf));import{listDatasets}from'../core/api-client.js';const cache=new Map();export async function listDatabases(_0x456408){const _0x31eb40=a255_0xd829;if(cache[_0x31eb40(0x15f)](_0x456408))return cache[_0x31eb40(0x166)](_0x456408);const _0x987544=await listDatasets(_0x456408),_0x2b2643=new Map();for(const _0x414fcb of _0x987544){const _0x3729d8=_0x414fcb[_0x31eb40(0x179)];_0x3729d8?.['dbId']!=null&&_0x2b2643[_0x31eb40(0x162)](_0x3729d8[_0x31eb40(0x17a)],_0x3729d8[_0x31eb40(0x16c)]??'db-'+_0x3729d8[_0x31eb40(0x17a)]);}const _0x525f3f=[..._0x2b2643[_0x31eb40(0x172)]()]['map'](([_0x5a2551,_0x2cef36])=>({'dbId':_0x5a2551,'dbName':_0x2cef36}));return cache['set'](_0x456408,_0x525f3f),_0x525f3f;}export async function resolveDb(_0x5da4fd,_0x4baf53){const _0x44358=a255_0xd829,_0x4b8f87=await listDatabases(_0x5da4fd);if(_0x4b8f87[_0x44358(0x168)]===0x0)return{'resolved':[],'error':_0x44358(0x15b)+_0x5da4fd+_0x44358(0x16b)};if(!_0x4baf53)return{'resolved':_0x4b8f87};const _0x3e126b=Number(_0x4baf53);if(!Number[_0x44358(0x164)](_0x3e126b)){const _0x1cba2e=_0x4b8f87[_0x44358(0x165)](_0x62c9=>_0x62c9[_0x44358(0x17a)]===_0x3e126b);if(_0x1cba2e)return{'resolved':[_0x1cba2e]};}const _0x52ca0b=_0x4baf53[_0x44358(0x15c)](),_0x9ebba7=_0x4b8f87[_0x44358(0x174)](_0x4934c2=>_0x4934c2[_0x44358(0x16c)][_0x44358(0x15c)]()['includes'](_0x52ca0b));if(_0x9ebba7[_0x44358(0x168)]>0x0)return{'resolved':_0x9ebba7};const _0xe7f2c6=_0x4b8f87['map'](_0x296797=>_0x296797[_0x44358(0x16c)]+'\x20('+_0x296797['dbId']+')')[_0x44358(0x15a)](',\x20');return{'resolved':[],'error':_0x44358(0x167)+_0x4baf53+_0x44358(0x171)+_0x5da4fd+_0x44358(0x161)+_0xe7f2c6+_0x44358(0x175)};}export async function resolveOneDb(_0x4f1aa9,_0x1dfff7){const _0x417aa7=a255_0xd829,{resolved:_0x4dd8cf,error:_0xb250da}=await resolveDb(_0x4f1aa9,_0x1dfff7);if(_0xb250da)return{'db':null,'error':_0xb250da};if(_0x4dd8cf[_0x417aa7(0x168)]===0x1)return{'db':_0x4dd8cf[0x0]};if(!_0x1dfff7){const _0x553b52=_0x4dd8cf[_0x417aa7(0x15d)](_0x5f4477=>_0x5f4477[_0x417aa7(0x16c)]+'\x20('+_0x5f4477[_0x417aa7(0x17a)]+')')[_0x417aa7(0x15a)](',\x20');return{'db':null,'error':_0x417aa7(0x170)+_0x553b52};}const _0x366248=_0x4dd8cf['map'](_0x19ffab=>_0x19ffab[_0x417aa7(0x16c)]+'\x20('+_0x19ffab[_0x417aa7(0x17a)]+')')[_0x417aa7(0x15a)](',\x20');return{'db':null,'error':'\x22'+_0x1dfff7+_0x417aa7(0x15e)+_0x366248+_0x417aa7(0x16f)};}export async function getDbName(_0x58d428,_0x2ffd1b){const _0x21b2ec=a255_0xd829,_0x410a1f=await listDatabases(_0x58d428);return _0x410a1f['find'](_0x36cfb7=>_0x36cfb7[_0x21b2ec(0x17a)]===_0x2ffd1b)?.[_0x21b2ec(0x16c)];}function a255_0x3ca6(){const _0x1ae9e0=['set','1312128ykolLw','isNaN','find','get','No\x20database\x20matching\x20\x22','length','1230700UfsTPA','6528MxylDg','\x22.\x20Make\x20sure\x20datasets\x20have\x20been\x20created.','dbName','18QgyaEk','1239JeEqqg','.\x20Be\x20more\x20specific.','Multiple\x20databases\x20found.\x20Specify\x20one\x20with\x20--db:\x20','\x22\x20under\x20app\x20\x22','entries','271GaKARV','filter','.\x20If\x20this\x20db\x20belongs\x20to\x20another\x20app,\x20rerun\x20with\x20--appcode\x20<appCode>.','6631208oQRUDu','6839720xGLVIv','40098VNBPgZ','dbtableConfig','dbId','join','No\x20linked\x20databases\x20found\x20under\x20app\x20\x22','toLowerCase','map','\x22\x20matches\x20multiple\x20databases:\x20','has','28140270YgVhvR','\x22.\x20Available:\x20'];a255_0x3ca6=function(){return _0x1ae9e0;};return a255_0x3ca6();}
1
+ (function(_0x2b9d5b,_0x547e8f){const _0x222dff=a254_0x4db2,_0x45dd17=_0x2b9d5b();while(!![]){try{const _0x2d3afb=parseInt(_0x222dff(0x70))/0x1*(-parseInt(_0x222dff(0x75))/0x2)+parseInt(_0x222dff(0x84))/0x3*(-parseInt(_0x222dff(0x6d))/0x4)+parseInt(_0x222dff(0x8a))/0x5*(-parseInt(_0x222dff(0x78))/0x6)+-parseInt(_0x222dff(0x82))/0x7+-parseInt(_0x222dff(0x6f))/0x8+parseInt(_0x222dff(0x81))/0x9*(-parseInt(_0x222dff(0x89))/0xa)+parseInt(_0x222dff(0x7d))/0xb;if(_0x2d3afb===_0x547e8f)break;else _0x45dd17['push'](_0x45dd17['shift']());}catch(_0x4197cc){_0x45dd17['push'](_0x45dd17['shift']());}}}(a254_0x343c,0x4f997));import{listDatasets}from'../core/api-client.js';function a254_0x4db2(_0x201ea2,_0x12cf7b){_0x201ea2=_0x201ea2-0x6d;const _0x343cf4=a254_0x343c();let _0x4db24a=_0x343cf4[_0x201ea2];return _0x4db24a;}const cache=new Map();export async function listDatabases(_0x1f05b7){const _0x42dd59=a254_0x4db2;if(cache['has'](_0x1f05b7))return cache['get'](_0x1f05b7);const _0x8e85b7=await listDatasets(_0x1f05b7),_0x292d98=new Map();for(const _0x4f5722 of _0x8e85b7){const _0x56a563=_0x4f5722[_0x42dd59(0x7f)];_0x56a563?.[_0x42dd59(0x71)]!=null&&_0x292d98[_0x42dd59(0x76)](_0x56a563[_0x42dd59(0x71)],_0x56a563[_0x42dd59(0x85)]??_0x42dd59(0x72)+_0x56a563[_0x42dd59(0x71)]);}const _0x158533=[..._0x292d98[_0x42dd59(0x7a)]()][_0x42dd59(0x7b)](([_0x2187cd,_0x3a7b6f])=>({'dbId':_0x2187cd,'dbName':_0x3a7b6f}));return cache[_0x42dd59(0x76)](_0x1f05b7,_0x158533),_0x158533;}export async function resolveDb(_0xdddb85,_0x7e1f06){const _0x4ca4f2=a254_0x4db2,_0x2553d5=await listDatabases(_0xdddb85);if(_0x2553d5[_0x4ca4f2(0x7e)]===0x0)return{'resolved':[],'error':_0x4ca4f2(0x86)+_0xdddb85+'\x22.\x20Make\x20sure\x20datasets\x20have\x20been\x20created.'};if(!_0x7e1f06)return{'resolved':_0x2553d5};const _0x51cae7=Number(_0x7e1f06);if(!Number['isNaN'](_0x51cae7)){const _0x29ff5c=_0x2553d5[_0x4ca4f2(0x83)](_0x53013a=>_0x53013a[_0x4ca4f2(0x71)]===_0x51cae7);if(_0x29ff5c)return{'resolved':[_0x29ff5c]};}const _0x382a19=_0x7e1f06[_0x4ca4f2(0x73)](),_0x259694=_0x2553d5[_0x4ca4f2(0x6e)](_0xaa04ff=>_0xaa04ff[_0x4ca4f2(0x85)]['toLowerCase']()['includes'](_0x382a19));if(_0x259694[_0x4ca4f2(0x7e)]>0x0)return{'resolved':_0x259694};const _0x12e8e6=_0x2553d5['map'](_0x7c8e72=>_0x7c8e72[_0x4ca4f2(0x85)]+'\x20('+_0x7c8e72[_0x4ca4f2(0x71)]+')')[_0x4ca4f2(0x74)](',\x20');return{'resolved':[],'error':_0x4ca4f2(0x80)+_0x7e1f06+_0x4ca4f2(0x8b)+_0xdddb85+_0x4ca4f2(0x88)+_0x12e8e6+_0x4ca4f2(0x87)};}export async function resolveOneDb(_0x5cc7b7,_0x484fbe){const _0x11b943=a254_0x4db2,{resolved:_0x1e9338,error:_0x5c277d}=await resolveDb(_0x5cc7b7,_0x484fbe);if(_0x5c277d)return{'db':null,'error':_0x5c277d};if(_0x1e9338['length']===0x1)return{'db':_0x1e9338[0x0]};if(!_0x484fbe){const _0x5602ea=_0x1e9338['map'](_0x1de14f=>_0x1de14f[_0x11b943(0x85)]+'\x20('+_0x1de14f[_0x11b943(0x71)]+')')[_0x11b943(0x74)](',\x20');return{'db':null,'error':_0x11b943(0x7c)+_0x5602ea};}const _0x46b7a6=_0x1e9338['map'](_0x2c9adc=>_0x2c9adc[_0x11b943(0x85)]+'\x20('+_0x2c9adc['dbId']+')')[_0x11b943(0x74)](',\x20');return{'db':null,'error':'\x22'+_0x484fbe+_0x11b943(0x77)+_0x46b7a6+_0x11b943(0x79)};}function a254_0x343c(){const _0x381983=['Multiple\x20databases\x20found.\x20Specify\x20one\x20with\x20--db:\x20','27621198qxXdct','length','dbtableConfig','No\x20database\x20matching\x20\x22','2140533yzbGnh','365729zKNzxU','find','138aAmbsn','dbName','No\x20linked\x20databases\x20found\x20under\x20app\x20\x22','.\x20If\x20this\x20db\x20belongs\x20to\x20another\x20app,\x20rerun\x20with\x20--appcode\x20<appCode>.','\x22.\x20Available:\x20','10MwRrHS','614545ngKHgD','\x22\x20under\x20app\x20\x22','35732NSdXVr','filter','4100280eNXrEy','73RJOjXB','dbId','db-','toLowerCase','join','9778haPZlU','set','\x22\x20matches\x20multiple\x20databases:\x20','30ZutkXh','.\x20Be\x20more\x20specific.','entries','map'];a254_0x343c=function(){return _0x381983;};return a254_0x343c();}export async function getDbName(_0x453fc8,_0x409ffb){const _0x15e6f6=a254_0x4db2,_0x345476=await listDatabases(_0x453fc8);return _0x345476[_0x15e6f6(0x83)](_0x401481=>_0x401481[_0x15e6f6(0x71)]===_0x409ffb)?.[_0x15e6f6(0x85)];}
@@ -1 +1 @@
1
- const a256_0x5f36c5=a256_0x550a;(function(_0x173293,_0x1912f3){const _0x3c2f5e=a256_0x550a,_0x2aaacd=_0x173293();while(!![]){try{const _0x119f5e=-parseInt(_0x3c2f5e(0x127))/0x1*(-parseInt(_0x3c2f5e(0x123))/0x2)+parseInt(_0x3c2f5e(0x12c))/0x3+parseInt(_0x3c2f5e(0x14f))/0x4+-parseInt(_0x3c2f5e(0x143))/0x5*(parseInt(_0x3c2f5e(0x138))/0x6)+-parseInt(_0x3c2f5e(0x14a))/0x7*(-parseInt(_0x3c2f5e(0x153))/0x8)+-parseInt(_0x3c2f5e(0x119))/0x9*(parseInt(_0x3c2f5e(0x14c))/0xa)+-parseInt(_0x3c2f5e(0x11c))/0xb;if(_0x119f5e===_0x1912f3)break;else _0x2aaacd['push'](_0x2aaacd['shift']());}catch(_0x8fcf57){_0x2aaacd['push'](_0x2aaacd['shift']());}}}(a256_0x5152,0x9b22e));import{randomUUID}from'node:crypto';import{mkdir,readFile,rename,stat,unlink,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';import{TextDecoder}from'node:util';import{findProjectRootDirectory}from'../../context.js';import{CliError}from'../../errors.js';export const INSTANT_API_POLICY_RELATIVE_ROOT=a256_0x5f36c5(0x133);export const INSTANT_API_POLICY_FILE_NAME=a256_0x5f36c5(0x150);export const MAX_INSTANT_API_POLICY_BYTES=0x400*0x400;export function instantApiPolicyError(_0x527852,_0x2bf85c,_0x3203b3){return new CliError(_0x527852,0x1,_0x2bf85c,_0x3203b3);}function a256_0x550a(_0x423839,_0x1c87e4){_0x423839=_0x423839-0x115;const _0x5152e0=a256_0x5152();let _0x550acc=_0x5152e0[_0x423839];return _0x550acc;}export function loadInstantApiPolicyLocalConfig(_0x17aaf1,_0x2bec2b){assertSafeAppCode(_0x17aaf1);const _0x5e7cc1=resolve(_0x2bec2b??findProjectRootDirectory()),_0x224909=INSTANT_API_POLICY_RELATIVE_ROOT+'/'+_0x17aaf1+'/'+INSTANT_API_POLICY_FILE_NAME,_0x4b01e5=resolve(_0x5e7cc1,INSTANT_API_POLICY_RELATIVE_ROOT,_0x17aaf1),_0x2cb04b=resolve(_0x4b01e5,INSTANT_API_POLICY_FILE_NAME);return{'projectRoot':_0x5e7cc1,'appCode':_0x17aaf1,'policyRoot':_0x4b01e5,'policyFilePath':_0x2cb04b,'policyRelativePath':_0x224909};}export function createDefaultInstantApiPolicyConfig(_0xf8c297,_0x4402b4='allow'){return assertSafeAppCode(_0xf8c297),{'version':'1','appCode':_0xf8c297,'defaults':{'instantApi':_0x4402b4},'rules':[]};}export async function readInstantApiPolicyConfigFile(_0x544af0){const _0x5d873b=a256_0x5f36c5;let _0x903066;try{_0x903066=await stat(_0x544af0[_0x5d873b(0x139)]);}catch(_0x42ff1a){throw instantApiPolicyError(_0x5d873b(0x126),_0x5d873b(0x125)+_0x544af0[_0x5d873b(0x139)],'Run\x20`rabetbase\x20instant-api-policy\x20init`\x20or\x20`rabetbase\x20instant-api-policy\x20pull`\x20first.');}if(!_0x903066['isFile']())throw instantApiPolicyError('instant_api_policy_file_invalid',_0x5d873b(0x151)+_0x544af0['policyFilePath']);if(_0x903066[_0x5d873b(0x124)]>MAX_INSTANT_API_POLICY_BYTES)throw instantApiPolicyError('instant_api_policy_file_too_large',_0x5d873b(0x128));let _0x4a317f;try{_0x4a317f=await readFile(_0x544af0[_0x5d873b(0x139)]);}catch{throw instantApiPolicyError(_0x5d873b(0x137),'Cannot\x20read\x20Instant\x20API\x20policy\x20file:\x20'+_0x544af0['policyFilePath']);}if(_0x4a317f[_0x5d873b(0x147)]>MAX_INSTANT_API_POLICY_BYTES)throw instantApiPolicyError('instant_api_policy_file_too_large',_0x5d873b(0x128));let _0x2bd207;try{_0x2bd207=new TextDecoder('utf-8',{'fatal':!![],'ignoreBOM':!![]})[_0x5d873b(0x11f)](_0x4a317f);}catch{throw instantApiPolicyError('instant_api_policy_file_invalid',_0x5d873b(0x13b)+_0x544af0[_0x5d873b(0x139)]);}let _0x444524;try{_0x444524=JSON['parse'](_0x2bd207);}catch{throw instantApiPolicyError(_0x5d873b(0x130),'Instant\x20API\x20policy\x20file\x20is\x20not\x20valid\x20JSON:\x20'+_0x544af0[_0x5d873b(0x139)]);}return assertLocalPolicyContract(_0x444524,_0x544af0[_0x5d873b(0x146)]);}export async function writeInstantApiPolicyConfigFile(_0x339569,_0xa383ea,_0x43d614={}){const _0x2bb864=a256_0x5f36c5,_0xe3677b=assertLocalPolicyContract(_0xa383ea,_0x339569[_0x2bb864(0x146)]),_0x2448a7=JSON[_0x2bb864(0x115)](_0xe3677b,null,0x2)+'\x0a';if(Buffer[_0x2bb864(0x147)](_0x2448a7,'utf8')>MAX_INSTANT_API_POLICY_BYTES)throw instantApiPolicyError(_0x2bb864(0x149),_0x2bb864(0x128));await mkdir(_0x339569[_0x2bb864(0x121)],{'recursive':!![]});let _0x33d907;try{_0x33d907=await readFile(_0x339569[_0x2bb864(0x139)],'utf8');}catch(_0x53186c){if(!isMissingFile(_0x53186c))throw instantApiPolicyError(_0x2bb864(0x137),_0x2bb864(0x12a)+_0x339569[_0x2bb864(0x139)]);}if(_0x33d907===_0x2448a7)return{'action':_0x2bb864(0x135),'filePath':_0x339569[_0x2bb864(0x139)]};if(_0x33d907!==undefined&&!_0x43d614[_0x2bb864(0x122)])throw instantApiPolicyError(_0x2bb864(0x155),_0x2bb864(0x132)+_0x339569[_0x2bb864(0x139)],_0x2bb864(0x12f));if(_0x33d907===undefined)try{return await writeFile(_0x339569[_0x2bb864(0x139)],_0x2448a7,{'encoding':'utf8','flag':'wx'}),{'action':_0x2bb864(0x140),'filePath':_0x339569[_0x2bb864(0x139)]};}catch(_0x1df347){if(!isAlreadyExists(_0x1df347))throw instantApiPolicyError(_0x2bb864(0x145),_0x2bb864(0x156)+_0x339569['policyFilePath']);if(!_0x43d614[_0x2bb864(0x122)])throw instantApiPolicyError(_0x2bb864(0x155),_0x2bb864(0x13d)+_0x339569[_0x2bb864(0x139)],_0x2bb864(0x152));}const _0x235b23=resolve(dirname(_0x339569[_0x2bb864(0x139)]),'.'+INSTANT_API_POLICY_FILE_NAME+'.'+process[_0x2bb864(0x14e)]+'.'+randomUUID()+_0x2bb864(0x148));try{await writeFile(_0x235b23,_0x2448a7,{'encoding':_0x2bb864(0x11b),'flag':'wx'}),await rename(_0x235b23,_0x339569[_0x2bb864(0x139)]);}catch{await unlink(_0x235b23)[_0x2bb864(0x13f)](()=>undefined);throw instantApiPolicyError(_0x2bb864(0x145),_0x2bb864(0x13c)+_0x339569[_0x2bb864(0x139)]);}return{'action':_0x2bb864(0x144),'filePath':_0x339569[_0x2bb864(0x139)]};}function assertSafeAppCode(_0x1a2db0){const _0x3f4d70=a256_0x5f36c5,_0x10e781=_0x1a2db0['trim']();if(!_0x10e781||_0x10e781!==_0x1a2db0||_0x10e781[_0x3f4d70(0x131)]>0x64||_0x10e781==='.'||_0x10e781==='..'||_0x10e781[_0x3f4d70(0x129)]('/')||_0x10e781[_0x3f4d70(0x129)]('\x5c')||_0x10e781[_0x3f4d70(0x129)]('\x00'))throw instantApiPolicyError('instant_api_policy_app_code_invalid',_0x3f4d70(0x11d));}function assertLocalPolicyContract(_0x3ea582,_0x5eedfc){const _0x325957=a256_0x5f36c5;if(!isObject(_0x3ea582))throw instantApiPolicyError(_0x325957(0x130),_0x325957(0x141));if(_0x3ea582[_0x325957(0x154)]!=='1')throw instantApiPolicyError('instant_api_policy_version_invalid',_0x325957(0x14b),_0x325957(0x14d));if(_0x3ea582[_0x325957(0x146)]!==_0x5eedfc)throw instantApiPolicyError(_0x325957(0x12b),_0x325957(0x117)+_0x5eedfc+'.');if(!isObject(_0x3ea582[_0x325957(0x11a)])||typeof _0x3ea582['defaults'][_0x325957(0x11e)]!==_0x325957(0x136))throw instantApiPolicyError(_0x325957(0x142),_0x325957(0x116));if(_0x3ea582[_0x325957(0x13e)]!==undefined&&_0x3ea582[_0x325957(0x13e)]!==null&&!Array[_0x325957(0x118)](_0x3ea582[_0x325957(0x13e)]))throw instantApiPolicyError('instant_api_policy_rules_invalid',_0x325957(0x120));return _0x3ea582;}function a256_0x5152(){const _0x553fdb=['appCode','byteLength','.tmp','instant_api_policy_file_too_large','8834077DsrYQn','Instant\x20API\x20policy\x20version\x20must\x20be\x20\x221\x22.','11378860uHUbFb','version\x20is\x20the\x20JSON\x20schema\x20version;\x20published\x20history\x20uses\x20the\x20separate\x20revision\x20field.','pid','542988luoQSx','policy.json','Instant\x20API\x20policy\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','Review\x20the\x20file\x20before\x20retrying.','8QLJskZ','version','instant_api_policy_file_exists','Cannot\x20write\x20Instant\x20API\x20policy\x20file:\x20','stringify','Policy\x20defaults.instantApi\x20is\x20required.','Policy\x20appCode\x20must\x20match\x20the\x20selected\x20application\x20','isArray','9TuxgBO','defaults','utf8','5832365zxqUdU','appCode\x20cannot\x20be\x20used\x20as\x20the\x20fixed\x20Instant\x20API\x20policy\x20directory\x20name.','instantApi','decode','Policy\x20rules\x20must\x20be\x20an\x20array\x20or\x20null.','policyRoot','force','58598hddacs','size','Instant\x20API\x20policy\x20file\x20does\x20not\x20exist:\x20','instant_api_policy_file_missing','34YxmEJk','Instant\x20API\x20policy\x20file\x20exceeds\x20the\x201\x20MiB\x20CLI\x20limit.','includes','Cannot\x20inspect\x20Instant\x20API\x20policy\x20file:\x20','instant_api_policy_app_code_mismatch','2904573BUhoYK','ENOENT','object','Review\x20local\x20changes,\x20then\x20rerun\x20with\x20--force\x20--yes\x20if\x20replacement\x20is\x20intended.','instant_api_policy_json_invalid','length','Instant\x20API\x20policy\x20file\x20already\x20exists:\x20','.rabetbase/instant-api-policy','EEXIST','unchanged','string','instant_api_policy_file_unreadable','6351456VZXrmd','policyFilePath','code','Instant\x20API\x20policy\x20file\x20is\x20not\x20valid\x20UTF-8:\x20','Cannot\x20replace\x20Instant\x20API\x20policy\x20file:\x20','Instant\x20API\x20policy\x20file\x20was\x20created\x20concurrently:\x20','rules','catch','created','Instant\x20API\x20policy\x20JSON\x20root\x20must\x20be\x20an\x20object.','instant_api_policy_defaults_invalid','5AKYGuy','overwritten','instant_api_policy_file_unwritable'];a256_0x5152=function(){return _0x553fdb;};return a256_0x5152();}function isObject(_0x541f10){const _0x32f955=a256_0x5f36c5;return _0x541f10!==null&&typeof _0x541f10===_0x32f955(0x12e)&&!Array[_0x32f955(0x118)](_0x541f10);}function isMissingFile(_0x3ddf00){const _0x33fb7f=a256_0x5f36c5;return Boolean(_0x3ddf00&&typeof _0x3ddf00===_0x33fb7f(0x12e)&&_0x3ddf00[_0x33fb7f(0x13a)]===_0x33fb7f(0x12d));}function isAlreadyExists(_0x3b684f){const _0x2fbee7=a256_0x5f36c5;return Boolean(_0x3b684f&&typeof _0x3b684f==='object'&&_0x3b684f['code']===_0x2fbee7(0x134));}
1
+ const a255_0x409c94=a255_0x5a15;(function(_0x1a70a6,_0x41e709){const _0x16e0b1=a255_0x5a15,_0x121da4=_0x1a70a6();while(!![]){try{const _0x348461=-parseInt(_0x16e0b1(0x1f3))/0x1+parseInt(_0x16e0b1(0x1de))/0x2*(parseInt(_0x16e0b1(0x1e5))/0x3)+-parseInt(_0x16e0b1(0x1eb))/0x4+-parseInt(_0x16e0b1(0x1cf))/0x5*(-parseInt(_0x16e0b1(0x1e8))/0x6)+parseInt(_0x16e0b1(0x1fa))/0x7+-parseInt(_0x16e0b1(0x203))/0x8*(-parseInt(_0x16e0b1(0x1c3))/0x9)+-parseInt(_0x16e0b1(0x1d2))/0xa;if(_0x348461===_0x41e709)break;else _0x121da4['push'](_0x121da4['shift']());}catch(_0x5c32f7){_0x121da4['push'](_0x121da4['shift']());}}}(a255_0x3aef,0xbdba2));import{randomUUID}from'node:crypto';import{mkdir,readFile,rename,stat,unlink,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';function a255_0x5a15(_0xacfc1e,_0x1b9974){_0xacfc1e=_0xacfc1e-0x1c2;const _0x3aef03=a255_0x3aef();let _0x5a1595=_0x3aef03[_0xacfc1e];return _0x5a1595;}import{TextDecoder}from'node:util';import{findProjectRootDirectory}from'../../context.js';import{CliError}from'../../errors.js';export const INSTANT_API_POLICY_RELATIVE_ROOT='.rabetbase/instant-api-policy';export const INSTANT_API_POLICY_FILE_NAME='policy.json';export const MAX_INSTANT_API_POLICY_BYTES=0x400*0x400;export function instantApiPolicyError(_0x43c906,_0x55c9c3,_0xd2f071){return new CliError(_0x43c906,0x1,_0x55c9c3,_0xd2f071);}export function loadInstantApiPolicyLocalConfig(_0x5dbd9f,_0x472e9a){assertSafeAppCode(_0x5dbd9f);const _0x333891=resolve(_0x472e9a??findProjectRootDirectory()),_0x2f869c=INSTANT_API_POLICY_RELATIVE_ROOT+'/'+_0x5dbd9f+'/'+INSTANT_API_POLICY_FILE_NAME,_0x508ad8=resolve(_0x333891,INSTANT_API_POLICY_RELATIVE_ROOT,_0x5dbd9f),_0x46a43d=resolve(_0x508ad8,INSTANT_API_POLICY_FILE_NAME);return{'projectRoot':_0x333891,'appCode':_0x5dbd9f,'policyRoot':_0x508ad8,'policyFilePath':_0x46a43d,'policyRelativePath':_0x2f869c};}export function createDefaultInstantApiPolicyConfig(_0x3f02f9,_0x235f1a=a255_0x409c94(0x1d9)){return assertSafeAppCode(_0x3f02f9),{'version':'1','appCode':_0x3f02f9,'defaults':{'instantApi':_0x235f1a},'rules':[]};}export async function readInstantApiPolicyConfigFile(_0x166163){const _0x49600e=a255_0x409c94;let _0x305e0f;try{_0x305e0f=await stat(_0x166163['policyFilePath']);}catch(_0x4df968){throw instantApiPolicyError(_0x49600e(0x1fe),_0x49600e(0x1f2)+_0x166163['policyFilePath'],_0x49600e(0x1da));}if(!_0x305e0f[_0x49600e(0x1ce)]())throw instantApiPolicyError(_0x49600e(0x204),_0x49600e(0x1d1)+_0x166163['policyFilePath']);if(_0x305e0f[_0x49600e(0x1e3)]>MAX_INSTANT_API_POLICY_BYTES)throw instantApiPolicyError(_0x49600e(0x1c8),'Instant\x20API\x20policy\x20file\x20exceeds\x20the\x201\x20MiB\x20CLI\x20limit.');let _0x356a11;try{_0x356a11=await readFile(_0x166163[_0x49600e(0x1e9)]);}catch{throw instantApiPolicyError('instant_api_policy_file_unreadable',_0x49600e(0x1fd)+_0x166163[_0x49600e(0x1e9)]);}if(_0x356a11[_0x49600e(0x1dc)]>MAX_INSTANT_API_POLICY_BYTES)throw instantApiPolicyError(_0x49600e(0x1c8),_0x49600e(0x1ed));let _0x2f7e78;try{_0x2f7e78=new TextDecoder(_0x49600e(0x1d8),{'fatal':!![],'ignoreBOM':!![]})['decode'](_0x356a11);}catch{throw instantApiPolicyError(_0x49600e(0x204),_0x49600e(0x1ff)+_0x166163[_0x49600e(0x1e9)]);}let _0x2e71f8;try{_0x2e71f8=JSON[_0x49600e(0x1f8)](_0x2f7e78);}catch{throw instantApiPolicyError(_0x49600e(0x1ca),_0x49600e(0x1d6)+_0x166163[_0x49600e(0x1e9)]);}return assertLocalPolicyContract(_0x2e71f8,_0x166163[_0x49600e(0x1f9)]);}export async function writeInstantApiPolicyConfigFile(_0x37c19f,_0x163cfb,_0x581d5e={}){const _0x43a7a5=a255_0x409c94,_0xd6c3d1=assertLocalPolicyContract(_0x163cfb,_0x37c19f[_0x43a7a5(0x1f9)]),_0x7f55c2=JSON[_0x43a7a5(0x1db)](_0xd6c3d1,null,0x2)+'\x0a';if(Buffer[_0x43a7a5(0x1dc)](_0x7f55c2,_0x43a7a5(0x1f1))>MAX_INSTANT_API_POLICY_BYTES)throw instantApiPolicyError(_0x43a7a5(0x1c8),_0x43a7a5(0x1ed));await mkdir(_0x37c19f[_0x43a7a5(0x202)],{'recursive':!![]});let _0x17837e;try{_0x17837e=await readFile(_0x37c19f[_0x43a7a5(0x1e9)],_0x43a7a5(0x1f1));}catch(_0x5c797d){if(!isMissingFile(_0x5c797d))throw instantApiPolicyError(_0x43a7a5(0x1d3),_0x43a7a5(0x1cd)+_0x37c19f['policyFilePath']);}if(_0x17837e===_0x7f55c2)return{'action':_0x43a7a5(0x1f5),'filePath':_0x37c19f[_0x43a7a5(0x1e9)]};if(_0x17837e!==undefined&&!_0x581d5e[_0x43a7a5(0x200)])throw instantApiPolicyError(_0x43a7a5(0x1c7),_0x43a7a5(0x1f4)+_0x37c19f['policyFilePath'],_0x43a7a5(0x1fc));if(_0x17837e===undefined)try{return await writeFile(_0x37c19f[_0x43a7a5(0x1e9)],_0x7f55c2,{'encoding':_0x43a7a5(0x1f1),'flag':'wx'}),{'action':_0x43a7a5(0x1d5),'filePath':_0x37c19f['policyFilePath']};}catch(_0x3f7115){if(!isAlreadyExists(_0x3f7115))throw instantApiPolicyError('instant_api_policy_file_unwritable',_0x43a7a5(0x205)+_0x37c19f[_0x43a7a5(0x1e9)]);if(!_0x581d5e[_0x43a7a5(0x200)])throw instantApiPolicyError('instant_api_policy_file_exists',_0x43a7a5(0x1c4)+_0x37c19f[_0x43a7a5(0x1e9)],_0x43a7a5(0x201));}const _0x3aa4f9=resolve(dirname(_0x37c19f['policyFilePath']),'.'+INSTANT_API_POLICY_FILE_NAME+'.'+process[_0x43a7a5(0x1e4)]+'.'+randomUUID()+_0x43a7a5(0x1d0));try{await writeFile(_0x3aa4f9,_0x7f55c2,{'encoding':'utf8','flag':'wx'}),await rename(_0x3aa4f9,_0x37c19f[_0x43a7a5(0x1e9)]);}catch{await unlink(_0x3aa4f9)[_0x43a7a5(0x1c5)](()=>undefined);throw instantApiPolicyError(_0x43a7a5(0x1e6),'Cannot\x20replace\x20Instant\x20API\x20policy\x20file:\x20'+_0x37c19f[_0x43a7a5(0x1e9)]);}return{'action':'overwritten','filePath':_0x37c19f['policyFilePath']};}function assertSafeAppCode(_0x12e606){const _0x1ad523=a255_0x409c94,_0x2ebcb6=_0x12e606[_0x1ad523(0x1d7)]();if(!_0x2ebcb6||_0x2ebcb6!==_0x12e606||_0x2ebcb6['length']>0x64||_0x2ebcb6==='.'||_0x2ebcb6==='..'||_0x2ebcb6['includes']('/')||_0x2ebcb6['includes']('\x5c')||_0x2ebcb6[_0x1ad523(0x1ea)]('\x00'))throw instantApiPolicyError(_0x1ad523(0x1ee),'appCode\x20cannot\x20be\x20used\x20as\x20the\x20fixed\x20Instant\x20API\x20policy\x20directory\x20name.');}function a255_0x3aef(){const _0x40c258=['created','Instant\x20API\x20policy\x20file\x20is\x20not\x20valid\x20JSON:\x20','trim','utf-8','allow','Run\x20`rabetbase\x20instant-api-policy\x20init`\x20or\x20`rabetbase\x20instant-api-policy\x20pull`\x20first.','stringify','byteLength','Policy\x20defaults.instantApi\x20is\x20required.','4HdeyVZ','instant_api_policy_version_invalid','string','version','instantApi','size','pid','1971978NUEkun','instant_api_policy_file_unwritable','Instant\x20API\x20policy\x20version\x20must\x20be\x20\x221\x22.','42mkxBdL','policyFilePath','includes','3726688ndzvHV','ENOENT','Instant\x20API\x20policy\x20file\x20exceeds\x20the\x201\x20MiB\x20CLI\x20limit.','instant_api_policy_app_code_invalid','instant_api_policy_rules_invalid','rules','utf8','Instant\x20API\x20policy\x20file\x20does\x20not\x20exist:\x20','806327PtAzCU','Instant\x20API\x20policy\x20file\x20already\x20exists:\x20','unchanged','version\x20is\x20the\x20JSON\x20schema\x20version;\x20published\x20history\x20uses\x20the\x20separate\x20revision\x20field.','Instant\x20API\x20policy\x20JSON\x20root\x20must\x20be\x20an\x20object.','parse','appCode','1227345ecyinm','instant_api_policy_defaults_invalid','Review\x20local\x20changes,\x20then\x20rerun\x20with\x20--force\x20--yes\x20if\x20replacement\x20is\x20intended.','Cannot\x20read\x20Instant\x20API\x20policy\x20file:\x20','instant_api_policy_file_missing','Instant\x20API\x20policy\x20file\x20is\x20not\x20valid\x20UTF-8:\x20','force','Review\x20the\x20file\x20before\x20retrying.','policyRoot','8OhQksD','instant_api_policy_file_invalid','Cannot\x20write\x20Instant\x20API\x20policy\x20file:\x20','defaults','12353382SEtgGJ','Instant\x20API\x20policy\x20file\x20was\x20created\x20concurrently:\x20','catch','Policy\x20rules\x20must\x20be\x20an\x20array\x20or\x20null.','instant_api_policy_file_exists','instant_api_policy_file_too_large','instant_api_policy_app_code_mismatch','instant_api_policy_json_invalid','EEXIST','object','Cannot\x20inspect\x20Instant\x20API\x20policy\x20file:\x20','isFile','724030rqjbak','.tmp','Instant\x20API\x20policy\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','13611060QdnObz','instant_api_policy_file_unreadable','code'];a255_0x3aef=function(){return _0x40c258;};return a255_0x3aef();}function assertLocalPolicyContract(_0x159314,_0x14a05a){const _0x14568c=a255_0x409c94;if(!isObject(_0x159314))throw instantApiPolicyError(_0x14568c(0x1ca),_0x14568c(0x1f7));if(_0x159314[_0x14568c(0x1e1)]!=='1')throw instantApiPolicyError(_0x14568c(0x1df),_0x14568c(0x1e7),_0x14568c(0x1f6));if(_0x159314[_0x14568c(0x1f9)]!==_0x14a05a)throw instantApiPolicyError(_0x14568c(0x1c9),'Policy\x20appCode\x20must\x20match\x20the\x20selected\x20application\x20'+_0x14a05a+'.');if(!isObject(_0x159314[_0x14568c(0x1c2)])||typeof _0x159314['defaults'][_0x14568c(0x1e2)]!==_0x14568c(0x1e0))throw instantApiPolicyError(_0x14568c(0x1fb),_0x14568c(0x1dd));if(_0x159314[_0x14568c(0x1f0)]!==undefined&&_0x159314['rules']!==null&&!Array['isArray'](_0x159314[_0x14568c(0x1f0)]))throw instantApiPolicyError(_0x14568c(0x1ef),_0x14568c(0x1c6));return _0x159314;}function isObject(_0x3b1272){return _0x3b1272!==null&&typeof _0x3b1272==='object'&&!Array['isArray'](_0x3b1272);}function isMissingFile(_0x1e43d8){const _0x98362e=a255_0x409c94;return Boolean(_0x1e43d8&&typeof _0x1e43d8===_0x98362e(0x1cc)&&_0x1e43d8[_0x98362e(0x1d4)]===_0x98362e(0x1ec));}function isAlreadyExists(_0x57a64a){const _0x2433ce=a255_0x409c94;return Boolean(_0x57a64a&&typeof _0x57a64a==='object'&&_0x57a64a['code']===_0x2433ce(0x1cb));}
@@ -1 +1 @@
1
- const a257_0x5369a6=a257_0x1649;(function(_0x2efc57,_0x145937){const _0x3e9349=a257_0x1649,_0x484b97=_0x2efc57();while(!![]){try{const _0x2b661f=-parseInt(_0x3e9349(0x16e))/0x1*(-parseInt(_0x3e9349(0x134))/0x2)+-parseInt(_0x3e9349(0x12f))/0x3*(parseInt(_0x3e9349(0x133))/0x4)+parseInt(_0x3e9349(0x14e))/0x5+-parseInt(_0x3e9349(0x15a))/0x6+-parseInt(_0x3e9349(0x130))/0x7*(parseInt(_0x3e9349(0x141))/0x8)+parseInt(_0x3e9349(0x169))/0x9*(-parseInt(_0x3e9349(0x148))/0xa)+-parseInt(_0x3e9349(0x149))/0xb*(-parseInt(_0x3e9349(0x136))/0xc);if(_0x2b661f===_0x145937)break;else _0x484b97['push'](_0x484b97['shift']());}catch(_0x530091){_0x484b97['push'](_0x484b97['shift']());}}}(a257_0x351f,0x5917a));import{getKbDomain}from'../constant/domain.js';import{CliError,CliErrors}from'../errors.js';const RESPONSE_KEYS=[a257_0x5369a6(0x13b),a257_0x5369a6(0x14d),a257_0x5369a6(0x157),'hits',a257_0x5369a6(0x15c),a257_0x5369a6(0x176)],HIT_KEYS=[a257_0x5369a6(0x174),a257_0x5369a6(0x152),a257_0x5369a6(0x142),a257_0x5369a6(0x172),a257_0x5369a6(0x158),a257_0x5369a6(0x151),a257_0x5369a6(0x166),a257_0x5369a6(0x154),a257_0x5369a6(0x15d),a257_0x5369a6(0x163),a257_0x5369a6(0x177)];export async function searchDevelopmentKnowledge(_0x1e0cd7){const _0x35651e=a257_0x5369a6,_0x1adb1a=_0x1e0cd7[_0x35651e(0x139)]['trim'](),_0x476dda=_0x1e0cd7['query'][_0x35651e(0x168)]();if(!_0x1adb1a)throw CliErrors[_0x35651e(0x155)](_0x35651e(0x13d));if(!_0x1e0cd7['cookie'][_0x35651e(0x168)]())throw CliErrors[_0x35651e(0x13f)]();if(!_0x476dda)throw CliErrors['validation'](_0x35651e(0x16a));validateTopK(_0x1e0cd7[_0x35651e(0x14f)]);const _0x544d18=getKbDomain()+_0x35651e(0x171);let _0x7af756;try{_0x7af756=await fetch(_0x544d18,{'method':_0x35651e(0x150),'headers':{'Content-Type':_0x35651e(0x14c),'Cookie':_0x1e0cd7['cookie'],'X-Invoke-Source':'cli:rabetbase'},'body':JSON[_0x35651e(0x15b)]({'appCode':_0x1adb1a,'query':_0x476dda,..._0x1e0cd7['topK']!==undefined?{'topK':_0x1e0cd7[_0x35651e(0x14f)]}:{}}),'signal':_0x1e0cd7['signal']});}catch(_0x438a09){if(_0x438a09 instanceof CliError)throw _0x438a09;if(_0x438a09 instanceof Error&&_0x438a09['name']===_0x35651e(0x162))throw _0x438a09;throw CliErrors[_0x35651e(0x173)](_0x35651e(0x131));}if(!hasNoStore(_0x7af756[_0x35651e(0x16c)]))throw CliErrors[_0x35651e(0x145)]('SmartCode\x20knowledge\x20search\x20response\x20is\x20missing\x20Cache-Control:\x20no-store.');if(_0x7af756[_0x35651e(0x13c)]===0x191)throw CliErrors[_0x35651e(0x13f)]();if(!_0x7af756['ok'])throw CliErrors['apiError'](_0x35651e(0x14b)+_0x7af756[_0x35651e(0x13c)]+').');if(!(_0x7af756[_0x35651e(0x16c)][_0x35651e(0x13a)]('content-type')??'')[_0x35651e(0x137)]()[_0x35651e(0x16d)](_0x35651e(0x14c)))throw CliErrors[_0x35651e(0x145)](_0x35651e(0x161));let _0xabd6d;try{_0xabd6d=await _0x7af756['json']();}catch{throw CliErrors[_0x35651e(0x145)]('SmartCode\x20knowledge\x20search\x20returned\x20invalid\x20JSON.');}return parseDevelopmentSearchResponse(readEnvelopeData(_0xabd6d),_0x1e0cd7[_0x35651e(0x14f)]);}function readEnvelopeData(_0x51b5a6){const _0x391f5c=a257_0x5369a6,_0x725a6a=requireRecord(_0x51b5a6,_0x391f5c(0x132));if(_0x725a6a['success']===![])throw CliErrors[_0x391f5c(0x145)](_0x391f5c(0x175));if(!('data'in _0x725a6a))throw invalidContract('response\x20envelope');return _0x725a6a[_0x391f5c(0x140)];}function validateTopK(_0x19d676){const _0x1fec9c=a257_0x5369a6;if(_0x19d676!==undefined&&(!Number[_0x1fec9c(0x153)](_0x19d676)||_0x19d676<0x1||_0x19d676>0x32))throw CliErrors[_0x1fec9c(0x155)](_0x1fec9c(0x138));}function a257_0x1649(_0x27d115,_0x170c33){_0x27d115=_0x27d115-0x12f;const _0x351fd0=a257_0x351f();let _0x1649f4=_0x351fd0[_0x27d115];return _0x1649f4;}function hasNoStore(_0x11745c){const _0xcb514e=a257_0x5369a6;return(_0x11745c['get'](_0xcb514e(0x14a))??'')['split'](',')[_0xcb514e(0x16f)](_0x1a9327=>_0x1a9327[_0xcb514e(0x168)]()['toLowerCase']()===_0xcb514e(0x147));}function parseDevelopmentSearchResponse(_0x4716d6,_0x391764){const _0x46eadf=a257_0x5369a6,_0x26b65b=requireExactRecord(_0x4716d6,RESPONSE_KEYS,'response');if(_0x26b65b['schemaVersion']!==0x2||_0x26b65b[_0x46eadf(0x14d)]!==_0x46eadf(0x16b))throw invalidContract(_0x46eadf(0x14d));if(!Array[_0x46eadf(0x156)](_0x26b65b[_0x46eadf(0x144)])||_0x26b65b[_0x46eadf(0x144)][_0x46eadf(0x167)]>(_0x391764??0x32))throw invalidContract(_0x46eadf(0x144));if(typeof _0x26b65b[_0x46eadf(0x15c)]!==_0x46eadf(0x146)||!/^sha256:[0-9a-f]{64}$/[_0x46eadf(0x164)](_0x26b65b[_0x46eadf(0x15c)]))throw invalidContract(_0x46eadf(0x15c));const _0x1e8dff=requireRecord(_0x26b65b[_0x46eadf(0x176)],_0x46eadf(0x176)),_0x558cba={};for(const [_0x4970ac,_0xaed6b1]of Object[_0x46eadf(0x170)](_0x1e8dff)){if(!/^[A-Za-z][A-Za-z0-9]*$/[_0x46eadf(0x164)](_0x4970ac)||typeof _0xaed6b1!==_0x46eadf(0x15e)||!Number[_0x46eadf(0x160)](_0xaed6b1)||_0xaed6b1<0x0)throw invalidContract(_0x46eadf(0x176));_0x558cba[_0x4970ac]=_0xaed6b1;}const _0x39150b=_0x26b65b['hits']['map']((_0x5d842b,_0x320568)=>parseHit(_0x5d842b,_0x320568));if(!Number[_0x46eadf(0x153)](_0x26b65b[_0x46eadf(0x157)])||_0x26b65b[_0x46eadf(0x157)]!==_0x39150b[_0x46eadf(0x167)])throw invalidContract(_0x46eadf(0x157));return{'schemaVersion':_0x26b65b['schemaVersion'],'profile':_0x26b65b['profile'],'total':_0x26b65b['total'],'strategyFingerprint':_0x26b65b[_0x46eadf(0x15c)],'timingsMs':_0x558cba,'hits':_0x39150b};}function parseHit(_0x1d79d8,_0x242230){const _0x21b926=a257_0x5369a6,_0x599494=requireExactRecord(_0x1d79d8,HIT_KEYS,'hits['+_0x242230+']'),_0x3d1e2b=_0x4758e6=>{const _0x289896=a257_0x1649,_0x57eb33=_0x599494[_0x4758e6];if(typeof _0x57eb33!==_0x289896(0x146)||!_0x57eb33)throw invalidContract(_0x4758e6);return _0x57eb33;};if(!Number[_0x21b926(0x153)](_0x599494[_0x21b926(0x152)])||_0x599494['revision']<0x1)throw invalidContract('revision');if(_0x599494[_0x21b926(0x172)]!==_0x21b926(0x143)&&_0x599494[_0x21b926(0x172)]!==_0x21b926(0x159))throw invalidContract('scope');if(typeof _0x599494[_0x21b926(0x158)]!==_0x21b926(0x146)||typeof _0x599494[_0x21b926(0x151)]!==_0x21b926(0x146))throw invalidContract(_0x21b926(0x151));if(!Array['isArray'](_0x599494['tags'])||_0x599494[_0x21b926(0x166)][_0x21b926(0x16f)](_0x44ac55=>typeof _0x44ac55!==_0x21b926(0x146)))throw invalidContract('tags');if(!Number[_0x21b926(0x153)](_0x599494[_0x21b926(0x154)])||_0x599494[_0x21b926(0x154)]!==_0x242230+0x1)throw invalidContract(_0x21b926(0x154));if(!isFiniteNumber(_0x599494['rawScore'])||!isFiniteNumber(_0x599494[_0x21b926(0x163)]))throw invalidContract('score');return{'documentId':_0x3d1e2b(_0x21b926(0x174)),'revision':_0x599494['revision'],'chunkId':_0x3d1e2b('chunkId'),'scope':_0x599494[_0x21b926(0x172)],'title':_0x599494[_0x21b926(0x158)],'text':_0x599494[_0x21b926(0x151)],'tags':[..._0x599494[_0x21b926(0x166)]],'rank':_0x599494[_0x21b926(0x154)],'rawScore':_0x599494[_0x21b926(0x15d)],'finalScore':_0x599494['finalScore'],'scoreKind':_0x3d1e2b('scoreKind')};}function a257_0x351f(){const _0x218dfd=['hits','apiError','string','no-store','21370HeeBOw','2754741YEGJuU','cache-control','SmartCode\x20knowledge\x20search\x20failed\x20(HTTP\x20','application/json','profile','788470nyPUpe','topK','POST','text','revision','isSafeInteger','rank','validation','isArray','total','title','company','1510410iHpyym','stringify','strategyFingerprint','rawScore','number','sort','isFinite','SmartCode\x20knowledge\x20search\x20returned\x20a\x20non-JSON\x20content\x20type.','AbortError','finalScore','test','keys','tags','length','trim','1152KdqkJz','Knowledge\x20search\x20query\x20is\x20required.','development','headers','includes','85KnYkBd','some','entries','/smartapi/knowledge/company-public/search','scope','networkError','documentId','SmartCode\x20knowledge\x20search\x20failed.','timingsMs','scoreKind','367212kwlAUh','11459FMpcMB','SmartCode\x20knowledge\x20search\x20request\x20failed.','response\x20envelope','16FGObSX','8730lRPaWD','\x20contract.','60RCDPnr','toLowerCase','Knowledge\x20search\x20topK\x20must\x20be\x20an\x20integer\x20from\x201\x20through\x2050.','appCode','get','schemaVersion','status','Knowledge\x20search\x20appCode\x20is\x20required.','object','authRequired','data','1960qXgiZe','chunkId','public'];a257_0x351f=function(){return _0x218dfd;};return a257_0x351f();}function requireExactRecord(_0x243a23,_0xc17177,_0xaa4fc6){const _0x177569=a257_0x5369a6,_0x12c6a1=requireRecord(_0x243a23,_0xaa4fc6),_0x5484df=Object[_0x177569(0x165)](_0x12c6a1)[_0x177569(0x15f)](),_0x40a0a0=[..._0xc17177][_0x177569(0x15f)]();if(_0x5484df[_0x177569(0x167)]!==_0x40a0a0['length']||_0x5484df[_0x177569(0x16f)]((_0x570d80,_0x3a9ff4)=>_0x570d80!==_0x40a0a0[_0x3a9ff4]))throw invalidContract(_0xaa4fc6);return _0x12c6a1;}function requireRecord(_0x27a5aa,_0x1e9da5){const _0x2f2f2e=a257_0x5369a6;if(!_0x27a5aa||typeof _0x27a5aa!==_0x2f2f2e(0x13e)||Array[_0x2f2f2e(0x156)](_0x27a5aa))throw invalidContract(_0x1e9da5);return _0x27a5aa;}function isFiniteNumber(_0x13fa33){const _0x5dc707=a257_0x5369a6;return typeof _0x13fa33===_0x5dc707(0x15e)&&Number[_0x5dc707(0x160)](_0x13fa33);}function invalidContract(_0x480331){const _0x1c402a=a257_0x5369a6;return CliErrors['apiError']('SmartCode\x20knowledge\x20search\x20returned\x20an\x20invalid\x20'+_0x480331+_0x1c402a(0x135));}
1
+ const a256_0x290082=a256_0x2f87;(function(_0x5e78b5,_0x5032e2){const _0x46b8c5=a256_0x2f87,_0x29a7f7=_0x5e78b5();while(!![]){try{const _0x5ad4d8=parseInt(_0x46b8c5(0xb5))/0x1*(parseInt(_0x46b8c5(0xbd))/0x2)+parseInt(_0x46b8c5(0x8a))/0x3+-parseInt(_0x46b8c5(0x9f))/0x4*(parseInt(_0x46b8c5(0xc1))/0x5)+parseInt(_0x46b8c5(0xb7))/0x6*(-parseInt(_0x46b8c5(0x9a))/0x7)+parseInt(_0x46b8c5(0xb3))/0x8+-parseInt(_0x46b8c5(0xa8))/0x9+-parseInt(_0x46b8c5(0x99))/0xa;if(_0x5ad4d8===_0x5032e2)break;else _0x29a7f7['push'](_0x29a7f7['shift']());}catch(_0x4d7896){_0x29a7f7['push'](_0x29a7f7['shift']());}}}(a256_0x5e4c,0x55eda));import{getKbDomain}from'../constant/domain.js';import{CliError,CliErrors}from'../errors.js';function a256_0x2f87(_0x158c48,_0x44ad58){_0x158c48=_0x158c48-0x78;const _0x5e4c53=a256_0x5e4c();let _0x2f8761=_0x5e4c53[_0x158c48];return _0x2f8761;}const RESPONSE_KEYS=[a256_0x290082(0xa4),a256_0x290082(0xa3),'total',a256_0x290082(0xa7),a256_0x290082(0xb9),'timingsMs'],HIT_KEYS=[a256_0x290082(0x89),a256_0x290082(0x7d),a256_0x290082(0xa6),a256_0x290082(0x98),'title',a256_0x290082(0x8d),'tags',a256_0x290082(0x9e),'rawScore','finalScore','scoreKind'];export async function searchDevelopmentKnowledge(_0x199670){const _0x2b026a=a256_0x290082,_0x5ef667=_0x199670[_0x2b026a(0x8f)][_0x2b026a(0x86)](),_0x50d7da=_0x199670[_0x2b026a(0xad)][_0x2b026a(0x86)]();if(!_0x5ef667)throw CliErrors[_0x2b026a(0x92)](_0x2b026a(0x7e));if(!_0x199670[_0x2b026a(0xc2)][_0x2b026a(0x86)]())throw CliErrors['authRequired']();if(!_0x50d7da)throw CliErrors['validation'](_0x2b026a(0xac));validateTopK(_0x199670[_0x2b026a(0xa5)]);const _0x5534ad=getKbDomain()+_0x2b026a(0x7a);let _0x34a153;try{_0x34a153=await fetch(_0x5534ad,{'method':_0x2b026a(0x7c),'headers':{'Content-Type':_0x2b026a(0xa1),'Cookie':_0x199670['cookie'],'X-Invoke-Source':_0x2b026a(0xaa)},'body':JSON['stringify']({'appCode':_0x5ef667,'query':_0x50d7da,..._0x199670[_0x2b026a(0xa5)]!==undefined?{'topK':_0x199670[_0x2b026a(0xa5)]}:{}}),'signal':_0x199670[_0x2b026a(0xbe)]});}catch(_0x25374c){if(_0x25374c instanceof CliError)throw _0x25374c;if(_0x25374c instanceof Error&&_0x25374c['name']===_0x2b026a(0xb6))throw _0x25374c;throw CliErrors[_0x2b026a(0xbf)](_0x2b026a(0xae));}if(!hasNoStore(_0x34a153[_0x2b026a(0xa0)]))throw CliErrors['apiError']('SmartCode\x20knowledge\x20search\x20response\x20is\x20missing\x20Cache-Control:\x20no-store.');if(_0x34a153[_0x2b026a(0x7f)]===0x191)throw CliErrors[_0x2b026a(0x93)]();if(!_0x34a153['ok'])throw CliErrors[_0x2b026a(0xa2)](_0x2b026a(0x85)+_0x34a153[_0x2b026a(0x7f)]+').');if(!(_0x34a153['headers'][_0x2b026a(0x8c)](_0x2b026a(0x9c))??'')[_0x2b026a(0x83)]()[_0x2b026a(0x90)](_0x2b026a(0xa1)))throw CliErrors[_0x2b026a(0xa2)](_0x2b026a(0x91));let _0x2c4a64;try{_0x2c4a64=await _0x34a153['json']();}catch{throw CliErrors['apiError'](_0x2b026a(0xc3));}return parseDevelopmentSearchResponse(readEnvelopeData(_0x2c4a64),_0x199670['topK']);}function readEnvelopeData(_0x4da822){const _0x299f1e=a256_0x290082,_0x44c721=requireRecord(_0x4da822,_0x299f1e(0x84));if(_0x44c721['success']===![])throw CliErrors[_0x299f1e(0xa2)](_0x299f1e(0x79));if(!(_0x299f1e(0x87)in _0x44c721))throw invalidContract(_0x299f1e(0x84));return _0x44c721[_0x299f1e(0x87)];}function validateTopK(_0x14c77e){if(_0x14c77e!==undefined&&(!Number['isSafeInteger'](_0x14c77e)||_0x14c77e<0x1||_0x14c77e>0x32))throw CliErrors['validation']('Knowledge\x20search\x20topK\x20must\x20be\x20an\x20integer\x20from\x201\x20through\x2050.');}function hasNoStore(_0x1a7a81){const _0x5977df=a256_0x290082;return(_0x1a7a81['get'](_0x5977df(0x8e))??'')[_0x5977df(0x97)](',')[_0x5977df(0x88)](_0x273590=>_0x273590[_0x5977df(0x86)]()[_0x5977df(0x83)]()===_0x5977df(0x78));}function parseDevelopmentSearchResponse(_0x204cc1,_0x3c603e){const _0x215c92=a256_0x290082,_0x1ad09c=requireExactRecord(_0x204cc1,RESPONSE_KEYS,_0x215c92(0xb1));if(_0x1ad09c['schemaVersion']!==0x2||_0x1ad09c['profile']!=='development')throw invalidContract(_0x215c92(0xa3));if(!Array[_0x215c92(0xbc)](_0x1ad09c[_0x215c92(0xa7)])||_0x1ad09c[_0x215c92(0xa7)][_0x215c92(0xb4)]>(_0x3c603e??0x32))throw invalidContract(_0x215c92(0xa7));if(typeof _0x1ad09c['strategyFingerprint']!==_0x215c92(0x82)||!/^sha256:[0-9a-f]{64}$/[_0x215c92(0xc4)](_0x1ad09c['strategyFingerprint']))throw invalidContract(_0x215c92(0xb9));const _0x1c212b=requireRecord(_0x1ad09c['timingsMs'],_0x215c92(0x81)),_0x549b50={};for(const [_0x3afcc7,_0x2d3de6]of Object[_0x215c92(0x9b)](_0x1c212b)){if(!/^[A-Za-z][A-Za-z0-9]*$/[_0x215c92(0xc4)](_0x3afcc7)||typeof _0x2d3de6!=='number'||!Number['isFinite'](_0x2d3de6)||_0x2d3de6<0x0)throw invalidContract(_0x215c92(0x81));_0x549b50[_0x3afcc7]=_0x2d3de6;}const _0x292976=_0x1ad09c[_0x215c92(0xa7)]['map']((_0x2df9a0,_0x3431da)=>parseHit(_0x2df9a0,_0x3431da));if(!Number[_0x215c92(0x7b)](_0x1ad09c[_0x215c92(0x94)])||_0x1ad09c[_0x215c92(0x94)]!==_0x292976[_0x215c92(0xb4)])throw invalidContract(_0x215c92(0x94));return{'schemaVersion':_0x1ad09c[_0x215c92(0xa4)],'profile':_0x1ad09c[_0x215c92(0xa3)],'total':_0x1ad09c['total'],'strategyFingerprint':_0x1ad09c[_0x215c92(0xb9)],'timingsMs':_0x549b50,'hits':_0x292976};}function parseHit(_0x17000c,_0x5de09c){const _0x109fe9=a256_0x290082,_0x4865bf=requireExactRecord(_0x17000c,HIT_KEYS,_0x109fe9(0x8b)+_0x5de09c+']'),_0x23d776=_0x5ab2f1=>{const _0x11821a=_0x109fe9,_0x2ca549=_0x4865bf[_0x5ab2f1];if(typeof _0x2ca549!==_0x11821a(0x82)||!_0x2ca549)throw invalidContract(_0x5ab2f1);return _0x2ca549;};if(!Number[_0x109fe9(0x7b)](_0x4865bf[_0x109fe9(0x7d)])||_0x4865bf[_0x109fe9(0x7d)]<0x1)throw invalidContract(_0x109fe9(0x7d));if(_0x4865bf['scope']!=='public'&&_0x4865bf['scope']!==_0x109fe9(0xb0))throw invalidContract(_0x109fe9(0x98));if(typeof _0x4865bf[_0x109fe9(0xaf)]!==_0x109fe9(0x82)||typeof _0x4865bf[_0x109fe9(0x8d)]!==_0x109fe9(0x82))throw invalidContract(_0x109fe9(0x8d));if(!Array[_0x109fe9(0xbc)](_0x4865bf[_0x109fe9(0xc0)])||_0x4865bf[_0x109fe9(0xc0)][_0x109fe9(0x88)](_0x1a4dea=>typeof _0x1a4dea!==_0x109fe9(0x82)))throw invalidContract(_0x109fe9(0xc0));if(!Number[_0x109fe9(0x7b)](_0x4865bf['rank'])||_0x4865bf['rank']!==_0x5de09c+0x1)throw invalidContract('rank');if(!isFiniteNumber(_0x4865bf[_0x109fe9(0x80)])||!isFiniteNumber(_0x4865bf[_0x109fe9(0xba)]))throw invalidContract(_0x109fe9(0xbb));return{'documentId':_0x23d776(_0x109fe9(0x89)),'revision':_0x4865bf[_0x109fe9(0x7d)],'chunkId':_0x23d776('chunkId'),'scope':_0x4865bf[_0x109fe9(0x98)],'title':_0x4865bf[_0x109fe9(0xaf)],'text':_0x4865bf[_0x109fe9(0x8d)],'tags':[..._0x4865bf[_0x109fe9(0xc0)]],'rank':_0x4865bf[_0x109fe9(0x9e)],'rawScore':_0x4865bf[_0x109fe9(0x80)],'finalScore':_0x4865bf['finalScore'],'scoreKind':_0x23d776(_0x109fe9(0x96))};}function requireExactRecord(_0x5c7199,_0x1a4e32,_0x31cd7f){const _0x59bd09=a256_0x290082,_0x57e3c7=requireRecord(_0x5c7199,_0x31cd7f),_0x5baecc=Object[_0x59bd09(0xb8)](_0x57e3c7)[_0x59bd09(0x95)](),_0x23df76=[..._0x1a4e32][_0x59bd09(0x95)]();if(_0x5baecc[_0x59bd09(0xb4)]!==_0x23df76[_0x59bd09(0xb4)]||_0x5baecc[_0x59bd09(0x88)]((_0x43cd1a,_0x399c4b)=>_0x43cd1a!==_0x23df76[_0x399c4b]))throw invalidContract(_0x31cd7f);return _0x57e3c7;}function requireRecord(_0x390566,_0x503abe){const _0x9c2d63=a256_0x290082;if(!_0x390566||typeof _0x390566!==_0x9c2d63(0xab)||Array[_0x9c2d63(0xbc)](_0x390566))throw invalidContract(_0x503abe);return _0x390566;}function isFiniteNumber(_0x522499){const _0x1ee5f6=a256_0x290082;return typeof _0x522499==='number'&&Number[_0x1ee5f6(0xa9)](_0x522499);}function a256_0x5e4c(){const _0x19cabb=['score','isArray','92SzerOP','signal','networkError','tags','129695ucYSwX','cookie','SmartCode\x20knowledge\x20search\x20returned\x20invalid\x20JSON.','test','no-store','SmartCode\x20knowledge\x20search\x20failed.','/smartapi/knowledge/company-public/search','isSafeInteger','POST','revision','Knowledge\x20search\x20appCode\x20is\x20required.','status','rawScore','timingsMs','string','toLowerCase','response\x20envelope','SmartCode\x20knowledge\x20search\x20failed\x20(HTTP\x20','trim','data','some','documentId','1825521RTGBfg','hits[','get','text','cache-control','appCode','includes','SmartCode\x20knowledge\x20search\x20returned\x20a\x20non-JSON\x20content\x20type.','validation','authRequired','total','sort','scoreKind','split','scope','2193050eNFdJQ','199003DvTwou','entries','content-type','\x20contract.','rank','40gQPOoc','headers','application/json','apiError','profile','schemaVersion','topK','chunkId','hits','6331851JIWoIh','isFinite','cli:rabetbase','object','Knowledge\x20search\x20query\x20is\x20required.','query','SmartCode\x20knowledge\x20search\x20request\x20failed.','title','company','response','SmartCode\x20knowledge\x20search\x20returned\x20an\x20invalid\x20','4778368jVgQrp','length','7757oMKHcz','AbortError','6TOvJuQ','keys','strategyFingerprint','finalScore'];a256_0x5e4c=function(){return _0x19cabb;};return a256_0x5e4c();}function invalidContract(_0x19aa98){const _0x4dede8=a256_0x290082;return CliErrors[_0x4dede8(0xa2)](_0x4dede8(0xb2)+_0x19aa98+_0x4dede8(0x9d));}
@@ -1,6 +1,49 @@
1
1
  import type { PageProjectConfig } from "../../core/page/types.js";
2
+ /**
3
+ * 读取当前工作目录下页面工程的基础配置
4
+ *
5
+ * @param appCode 应用 code
6
+ * @param cwd 命令执行时的工作目录
7
+ * @returns 页面工程目录与文件锁路径等核心路径信息
8
+ */
2
9
  export declare function loadPageProjectConfig(appCode: string, cwd?: string): PageProjectConfig;
10
+ /**
11
+ * 按 pageId 和类型生成页面文件名
12
+ *
13
+ * @param pageId 页面标识
14
+ * @param type 文件类型,如 draft 或 release
15
+ * @returns 约定格式的文件名,如 100-DRAFT.json
16
+ */
3
17
  export declare function buildPageFileName(pageId: number, type: string): string;
18
+ /**
19
+ * 拼接指定页面类型文件的完整路径
20
+ *
21
+ * @param config 页面工程配置
22
+ * @param pageId 页面标识
23
+ * @param type 页面文件类型
24
+ * @returns 页面文件绝对路径
25
+ */
4
26
  export declare function resolvePageFilePath(config: PageProjectConfig, pageId: number, type: string): string;
27
+ /**
28
+ * 确保文件父目录存在
29
+ *
30
+ * @param filePath 文件完整路径
31
+ */
5
32
  export declare function ensureParentDirectory(filePath: string): Promise<void>;
33
+ /**
34
+ * 检查文件是否存在
35
+ *
36
+ * @param filePath 文件路径
37
+ * @returns 文件存在返回 true,不存在返回 false
38
+ */
6
39
  export declare function fileExists(filePath: string): Promise<boolean>;
40
+ /**
41
+ * 读取自定义页面目录中的全部常规文件
42
+ *
43
+ * 返回值使用相对于输入目录的 POSIX 路径,便于直接作为页面完整文件映射提交
44
+ * 符号链接和其他特殊文件会被拒绝,避免目录外内容或非文本资源被静默写入页面
45
+ *
46
+ * @param directory 页面文件根目录
47
+ * @returns 相对文件路径到 UTF-8 内容的映射
48
+ */
49
+ export declare function readCustomPageDirectory(directory: string): Promise<Record<string, string>>;
@@ -1 +1 @@
1
- (function(_0x3f610b,_0x4c88c7){const _0x461a32=a258_0x5d91,_0x5a53f0=_0x3f610b();while(!![]){try{const _0x4ea5ce=parseInt(_0x461a32(0xef))/0x1+parseInt(_0x461a32(0xec))/0x2+-parseInt(_0x461a32(0xf3))/0x3*(-parseInt(_0x461a32(0xe8))/0x4)+-parseInt(_0x461a32(0xf1))/0x5*(-parseInt(_0x461a32(0xf0))/0x6)+parseInt(_0x461a32(0xf2))/0x7+-parseInt(_0x461a32(0xed))/0x8*(-parseInt(_0x461a32(0xea))/0x9)+parseInt(_0x461a32(0xee))/0xa*(-parseInt(_0x461a32(0xe6))/0xb);if(_0x4ea5ce===_0x4c88c7)break;else _0x5a53f0['push'](_0x5a53f0['shift']());}catch(_0x57eba8){_0x5a53f0['push'](_0x5a53f0['shift']());}}}(a258_0x28e0,0xebe92));import{constants}from'node:fs';import{access,mkdir}from'node:fs/promises';import{dirname,join,resolve}from'node:path';export function loadPageProjectConfig(_0x2eb13c,_0x54e5a4=process['cwd']()){const _0x23a490=a258_0x5d91,_0x13a2ce=resolve(_0x54e5a4),_0x5479b3=join(_0x13a2ce,'.rabetbase','page');return{'projectRoot':_0x13a2ce,'pagesBaseDir':_0x5479b3,'appPagesDir':join(_0x5479b3,_0x2eb13c),'lockFilePath':join(_0x13a2ce,_0x23a490(0xeb),'page.lock.json')};}export function buildPageFileName(_0x59b926,_0x1272e0){const _0x15f5da=a258_0x5d91;return _0x59b926+'-'+String(_0x1272e0)['toUpperCase']()+_0x15f5da(0xe9);}export function resolvePageFilePath(_0xcc6135,_0x5af38f,_0x188502){const _0x1dbee2=a258_0x5d91;return join(_0xcc6135[_0x1dbee2(0xe7)],buildPageFileName(_0x5af38f,_0x188502));}function a258_0x5d91(_0x527ca5,_0x3c19a8){_0x527ca5=_0x527ca5-0xe6;const _0x28e052=a258_0x28e0();let _0x5d91c5=_0x28e052[_0x527ca5];return _0x5d91c5;}export async function ensureParentDirectory(_0x1e90a6){await mkdir(dirname(_0x1e90a6),{'recursive':!![]});}export async function fileExists(_0x513bfb){try{return await access(_0x513bfb,constants['F_OK']),!![];}catch{return![];}}function a258_0x28e0(){const _0xed5ca8=['5QQHHFL','7865116UMRcRd','741219XLrwZR','9262mNMayj','appPagesDir','4CuIbqL','.json','63TtYlgJ','.rabetbase','3606766TvmGJs','511320XWGBtU','54140iowVaT','628277VrdVfq','7650912hoLeVr'];a258_0x28e0=function(){return _0xed5ca8;};return a258_0x28e0();}
1
+ const a257_0x28212d=a257_0x251d;(function(_0x325141,_0x4a8bbc){const _0x56ba3d=a257_0x251d,_0x46d730=_0x325141();while(!![]){try{const _0x264da0=-parseInt(_0x56ba3d(0xd3))/0x1+parseInt(_0x56ba3d(0xc1))/0x2+parseInt(_0x56ba3d(0xda))/0x3*(parseInt(_0x56ba3d(0xc9))/0x4)+parseInt(_0x56ba3d(0xc3))/0x5+parseInt(_0x56ba3d(0xcf))/0x6+parseInt(_0x56ba3d(0xc6))/0x7*(-parseInt(_0x56ba3d(0xd1))/0x8)+-parseInt(_0x56ba3d(0xd6))/0x9*(-parseInt(_0x56ba3d(0xd5))/0xa);if(_0x264da0===_0x4a8bbc)break;else _0x46d730['push'](_0x46d730['shift']());}catch(_0xd100){_0x46d730['push'](_0x46d730['shift']());}}}(a257_0x3f0d,0x41805));import{constants}from'node:fs';import{access,lstat,mkdir,readFile,readdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{CliErrors}from'../../errors.js';function a257_0x251d(_0xe1c346,_0x397fef){_0xe1c346=_0xe1c346-0xbf;const _0x3f0dca=a257_0x3f0d();let _0x251d12=_0x3f0dca[_0xe1c346];return _0x251d12;}export function loadPageProjectConfig(_0x377cf9,_0x2e1e55=process[a257_0x28212d(0xc4)]()){const _0x5e6b31=a257_0x28212d,_0x203b08=resolve(_0x2e1e55),_0x299210=join(_0x203b08,'.rabetbase','page');return{'projectRoot':_0x203b08,'pagesBaseDir':_0x299210,'appPagesDir':join(_0x299210,_0x377cf9),'lockFilePath':join(_0x203b08,_0x5e6b31(0xcb),_0x5e6b31(0xd8))};}function a257_0x3f0d(){const _0x4d398e=['1194490fmotPy','cwd','isFile','29701FvkFvP','name','Page\x20directory\x20not\x20found:\x20','50544zhtCFT','flagMissing','.rabetbase','page-dir','.json','Page\x20directory\x20is\x20not\x20a\x20directory:\x20','1878564yHAOfV','join','728MULyVs','localeCompare','441112dTFQSi','isDirectory','4290abtJwt','2637PNqaif','trim','page.lock.json','validation','6zkFMNZ','F_OK','appPagesDir','utf8','785114XbUcGz','toUpperCase'];a257_0x3f0d=function(){return _0x4d398e;};return a257_0x3f0d();}export function buildPageFileName(_0x6baae9,_0x623d3){const _0xe836b7=a257_0x28212d;return _0x6baae9+'-'+_0x623d3[_0xe836b7(0xc2)]()+_0xe836b7(0xcd);}export function resolvePageFilePath(_0x18c869,_0x253c73,_0xda5869){const _0x53772f=a257_0x28212d;return join(_0x18c869[_0x53772f(0xbf)],buildPageFileName(_0x253c73,_0xda5869));}export async function ensureParentDirectory(_0x4e6793){await mkdir(dirname(_0x4e6793),{'recursive':!![]});}export async function fileExists(_0x3f9b5e){const _0x1b8d7b=a257_0x28212d;try{return await access(_0x3f9b5e,constants[_0x1b8d7b(0xdb)]),!![];}catch{return![];}}export async function readCustomPageDirectory(_0x344355){const _0x33748b=a257_0x28212d,_0x3d00d4=_0x344355[_0x33748b(0xd7)]();if(!_0x3d00d4)throw CliErrors[_0x33748b(0xca)](_0x33748b(0xcc));const _0x55ea02=resolve(_0x3d00d4);let _0x11398e;try{_0x11398e=await lstat(_0x55ea02);}catch{throw CliErrors[_0x33748b(0xd9)](_0x33748b(0xc8)+_0x3d00d4);}if(!_0x11398e[_0x33748b(0xd4)]())throw CliErrors[_0x33748b(0xd9)](_0x33748b(0xce)+_0x3d00d4);const _0x1743a9={};return await readDirectory(_0x55ea02,_0x55ea02,_0x1743a9),_0x1743a9;}async function readDirectory(_0x56e10c,_0x1d6670,_0x4ec321){const _0x578e46=a257_0x28212d,_0x574055=await readdir(_0x1d6670,{'withFileTypes':!![]});for(const _0x34559f of _0x574055['sort']((_0x54d702,_0x43ccf6)=>_0x54d702[_0x578e46(0xc7)][_0x578e46(0xd2)](_0x43ccf6[_0x578e46(0xc7)]))){const _0xc2824b=join(_0x1d6670,_0x34559f[_0x578e46(0xc7)]);if(_0x34559f[_0x578e46(0xd4)]()){await readDirectory(_0x56e10c,_0xc2824b,_0x4ec321);continue;}if(!_0x34559f[_0x578e46(0xc5)]())throw CliErrors[_0x578e46(0xd9)]('Unsupported\x20file\x20in\x20page\x20directory:\x20'+_0xc2824b);_0x4ec321[relative(_0x56e10c,_0xc2824b)['split'](sep)[_0x578e46(0xd0)]('/')]=await readFile(_0xc2824b,_0x578e46(0xc0));}}
@@ -1 +1 @@
1
- (function(_0x1e3efd,_0xc34fd8){const _0xa8cab5=a259_0x7240,_0x6f53b=_0x1e3efd();while(!![]){try{const _0x1c86fa=-parseInt(_0xa8cab5(0xb7))/0x1*(parseInt(_0xa8cab5(0xb2))/0x2)+parseInt(_0xa8cab5(0xaf))/0x3+-parseInt(_0xa8cab5(0xb0))/0x4+parseInt(_0xa8cab5(0xac))/0x5*(parseInt(_0xa8cab5(0xad))/0x6)+parseInt(_0xa8cab5(0xb4))/0x7*(-parseInt(_0xa8cab5(0xb1))/0x8)+parseInt(_0xa8cab5(0xb8))/0x9+-parseInt(_0xa8cab5(0xa9))/0xa*(-parseInt(_0xa8cab5(0xae))/0xb);if(_0x1c86fa===_0xc34fd8)break;else _0x6f53b['push'](_0x6f53b['shift']());}catch(_0x1d0948){_0x6f53b['push'](_0x6f53b['shift']());}}}(a259_0xe1a4,0x85dab));import a259_0x593f69 from'node:crypto';function a259_0x7240(_0x2e15bf,_0x221d38){_0x2e15bf=_0x2e15bf-0xa9;const _0xe1a42e=a259_0xe1a4();let _0x7240d9=_0xe1a42e[_0x2e15bf];return _0x7240d9;}import{readFile}from'node:fs/promises';function a259_0xe1a4(){const _0x5e7ffb=['46812mBAVgV','4920075KeetVa','2602100BnRGMa','digest','createHash','4705IjUcXj','5274OzrtvA','22DHUVTG','1164768cSKNZn','3507520GjGgQE','24nbBfAU','12YVaAcr','hex','1345099fLGZqZ','utf8','md5'];a259_0xe1a4=function(){return _0x5e7ffb;};return a259_0xe1a4();}export function serializePageSchemaForFile(_0x1948b2){return JSON['stringify'](JSON['parse'](_0x1948b2),null,0x2)+'\x0a';}export function computePageContentHash(_0x365b78){const _0x24447b=a259_0x7240;return a259_0x593f69[_0x24447b(0xab)](_0x24447b(0xb6))['update'](_0x365b78)[_0x24447b(0xaa)](_0x24447b(0xb3));}export function computeSerializedSchemaHash(_0x578f8d){return computePageContentHash(serializePageSchemaForFile(_0x578f8d));}export async function computePageFileHash(_0x321d4e){const _0x38dc5c=a259_0x7240,_0x326b81=await readFile(_0x321d4e,_0x38dc5c(0xb5));return computePageContentHash(_0x326b81);}
1
+ (function(_0x517493,_0x44d0d1){const _0x4360aa=a258_0x3b35,_0x187e14=_0x517493();while(!![]){try{const _0x1742b5=-parseInt(_0x4360aa(0xa0))/0x1+-parseInt(_0x4360aa(0xa5))/0x2+parseInt(_0x4360aa(0xa4))/0x3+-parseInt(_0x4360aa(0x9d))/0x4+parseInt(_0x4360aa(0xa2))/0x5*(-parseInt(_0x4360aa(0x9f))/0x6)+-parseInt(_0x4360aa(0xa7))/0x7*(-parseInt(_0x4360aa(0xa8))/0x8)+-parseInt(_0x4360aa(0xa6))/0x9*(-parseInt(_0x4360aa(0x9e))/0xa);if(_0x1742b5===_0x44d0d1)break;else _0x187e14['push'](_0x187e14['shift']());}catch(_0x39b409){_0x187e14['push'](_0x187e14['shift']());}}}(a258_0x5419,0xccc6c));function a258_0x5419(){const _0x2ab43d=['3102710jnmpFs','3006HzlByL','87626iRpFvf','utf8','5445nIAEzn','digest','4843851ztHVVq','2328652ZTABFd','18xYqnpH','14mxZwYN','3263696lELDMy','update','md5','parse','1659112iCSPWT'];a258_0x5419=function(){return _0x2ab43d;};return a258_0x5419();}function a258_0x3b35(_0x3c726a,_0x317b0f){_0x3c726a=_0x3c726a-0x9c;const _0x5419e3=a258_0x5419();let _0x3b35f6=_0x5419e3[_0x3c726a];return _0x3b35f6;}import a258_0x5966bd from'node:crypto';import{readFile}from'node:fs/promises';export function serializePageSchemaForFile(_0x5281df){const _0x5a665d=a258_0x3b35;return JSON['stringify'](JSON[_0x5a665d(0x9c)](_0x5281df),null,0x2)+'\x0a';}export function computePageContentHash(_0xdd9083){const _0x31c52c=a258_0x3b35;return a258_0x5966bd['createHash'](_0x31c52c(0xaa))[_0x31c52c(0xa9)](_0xdd9083)[_0x31c52c(0xa3)]('hex');}export function computeSerializedSchemaHash(_0x42b6df){return computePageContentHash(serializePageSchemaForFile(_0x42b6df));}export async function computePageFileHash(_0x2c42cf){const _0x2642bf=a258_0x3b35,_0x2592e1=await readFile(_0x2c42cf,_0x2642bf(0xa1));return computePageContentHash(_0x2592e1);}
@@ -1 +1 @@
1
- (function(_0x481917,_0x4167a3){const _0x2ef5e0=a260_0x1123,_0x1a28cc=_0x481917();while(!![]){try{const _0x772a03=parseInt(_0x2ef5e0(0x168))/0x1*(-parseInt(_0x2ef5e0(0x167))/0x2)+parseInt(_0x2ef5e0(0x16a))/0x3+-parseInt(_0x2ef5e0(0x16d))/0x4*(parseInt(_0x2ef5e0(0x15f))/0x5)+-parseInt(_0x2ef5e0(0x16f))/0x6*(-parseInt(_0x2ef5e0(0x165))/0x7)+-parseInt(_0x2ef5e0(0x16c))/0x8+parseInt(_0x2ef5e0(0x15d))/0x9+parseInt(_0x2ef5e0(0x161))/0xa;if(_0x772a03===_0x4167a3)break;else _0x1a28cc['push'](_0x1a28cc['shift']());}catch(_0x7d131d){_0x1a28cc['push'](_0x1a28cc['shift']());}}}(a260_0x28c4,0xb94c8));import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';function a260_0x1123(_0x2588e2,_0x2402fd){_0x2588e2=_0x2588e2-0x15d;const _0x28c4d4=a260_0x28c4();let _0x1123ac=_0x28c4d4[_0x2588e2];return _0x1123ac;}export function createEmptyPageLock(){return{'apps':{}};}export function ensurePageLockScope(_0x27c6ec,_0x319f55){const _0x4cc283=a260_0x1123,_0x426ade={'apps':_0x27c6ec['apps']&&typeof _0x27c6ec[_0x4cc283(0x164)]===_0x4cc283(0x163)?_0x27c6ec[_0x4cc283(0x164)]:{}};let _0x46523d=_0x426ade[_0x4cc283(0x164)][_0x319f55];if(!_0x46523d)return _0x46523d={'lastSync':'','pages':{}},_0x426ade['apps'][_0x319f55]=_0x46523d,{'lockData':_0x426ade,'appLock':_0x46523d};return!_0x46523d[_0x4cc283(0x16b)]&&(_0x46523d['lastSync']=''),(!_0x46523d[_0x4cc283(0x15e)]||typeof _0x46523d['pages']!==_0x4cc283(0x163))&&(_0x46523d['pages']={}),{'lockData':_0x426ade,'appLock':_0x46523d};}export async function readPageLockFile(_0x3fcec2){const _0x15715c=a260_0x1123;try{const _0xdee752=await readFile(_0x3fcec2,'utf8'),_0x5c8f00=JSON['parse'](_0xdee752);return{'apps':_0x5c8f00['apps']&&typeof _0x5c8f00[_0x15715c(0x164)]===_0x15715c(0x163)?_0x5c8f00['apps']:{}};}catch(_0x2b26ad){if(_0x2b26ad[_0x15715c(0x160)]===_0x15715c(0x162))return null;throw new Error(_0x15715c(0x16e)+String(_0x2b26ad));}}function a260_0x28c4(){const _0x33d094=['6393600TSnaQb','pages','414385mZDcew','code','13247340mzOTLO','ENOENT','object','apps','30611kcKXMk','utf8','594488uBuOoa','3aczhPv','stringify','1016493FdiXYl','lastSync','3875312soBiUf','32mnSxto','Failed\x20to\x20read\x20page\x20lock\x20file:\x20','582nTqEKL'];a260_0x28c4=function(){return _0x33d094;};return a260_0x28c4();}export async function writePageLockFile(_0x1301a1,_0x2beb7b){const _0x14a49f=a260_0x1123;await mkdir(dirname(_0x1301a1),{'recursive':!![]}),await writeFile(_0x1301a1,JSON[_0x14a49f(0x169)](_0x2beb7b,null,0x2),_0x14a49f(0x166));}
1
+ function a259_0x5d85(_0xe5d20a,_0x2ad67e){_0xe5d20a=_0xe5d20a-0x1c4;const _0x3d4a81=a259_0x3d4a();let _0x5d85fe=_0x3d4a81[_0xe5d20a];return _0x5d85fe;}(function(_0x2ac1d2,_0x4d84c0){const _0x2fed93=a259_0x5d85,_0x329309=_0x2ac1d2();while(!![]){try{const _0x1e511f=parseInt(_0x2fed93(0x1ca))/0x1+parseInt(_0x2fed93(0x1c9))/0x2+parseInt(_0x2fed93(0x1c6))/0x3*(-parseInt(_0x2fed93(0x1d6))/0x4)+parseInt(_0x2fed93(0x1ce))/0x5*(-parseInt(_0x2fed93(0x1cd))/0x6)+-parseInt(_0x2fed93(0x1c5))/0x7*(parseInt(_0x2fed93(0x1d1))/0x8)+parseInt(_0x2fed93(0x1cc))/0x9+parseInt(_0x2fed93(0x1d5))/0xa;if(_0x1e511f===_0x4d84c0)break;else _0x329309['push'](_0x329309['shift']());}catch(_0x707609){_0x329309['push'](_0x329309['shift']());}}}(a259_0x3d4a,0x5ac86));import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';export function createEmptyPageLock(){return{'apps':{}};}export function ensurePageLockScope(_0x5c41e8,_0x428c78){const _0x5e7523=a259_0x5d85,_0x588642={'apps':_0x5c41e8[_0x5e7523(0x1cb)]&&typeof _0x5c41e8['apps']==='object'?_0x5c41e8['apps']:{}};let _0x1f7f1f=_0x588642[_0x5e7523(0x1cb)][_0x428c78];if(!_0x1f7f1f)return _0x1f7f1f={'lastSync':'','pages':{}},_0x588642[_0x5e7523(0x1cb)][_0x428c78]=_0x1f7f1f,{'lockData':_0x588642,'appLock':_0x1f7f1f};return!_0x1f7f1f[_0x5e7523(0x1cf)]&&(_0x1f7f1f['lastSync']=''),(!_0x1f7f1f['pages']||typeof _0x1f7f1f[_0x5e7523(0x1c8)]!=='object')&&(_0x1f7f1f[_0x5e7523(0x1c8)]={}),{'lockData':_0x588642,'appLock':_0x1f7f1f};}export async function readPageLockFile(_0x3cb832){const _0xe769ff=a259_0x5d85;try{const _0x8212bb=await readFile(_0x3cb832,_0xe769ff(0x1c7)),_0x9db0c9=JSON[_0xe769ff(0x1d0)](_0x8212bb);return{'apps':_0x9db0c9[_0xe769ff(0x1cb)]&&typeof _0x9db0c9[_0xe769ff(0x1cb)]===_0xe769ff(0x1d2)?_0x9db0c9[_0xe769ff(0x1cb)]:{}};}catch(_0x33a051){if(_0x33a051[_0xe769ff(0x1d4)]===_0xe769ff(0x1c4))return null;throw new Error(_0xe769ff(0x1d3)+String(_0x33a051));}}export async function writePageLockFile(_0x3bd02f,_0x4a35c3){const _0x26ca80=a259_0x5d85;await mkdir(dirname(_0x3bd02f),{'recursive':!![]}),await writeFile(_0x3bd02f,JSON['stringify'](_0x4a35c3,null,0x2),_0x26ca80(0x1c7));}function a259_0x3d4a(){const _0x392a1c=['456VdfCRT','43385qgbxGC','lastSync','parse','3423352QLOXjM','object','Failed\x20to\x20read\x20page\x20lock\x20file:\x20','code','956100yjhPqL','73652eBeYcO','ENOENT','7ScMXVD','3uNtXEQ','utf8','pages','779796jusCHg','739394hZAxZm','apps','2274552WbkEWw'];a259_0x3d4a=function(){return _0x392a1c;};return a259_0x3d4a();}
@@ -1 +1 @@
1
- function a262_0x23ea(){const _0x456ce0=['2Kzvqvl','map','trim','natural','split','138921lErmQm','__sq__','metadataAvailable','exec','21105864HcLrQZ','unavailable','5220495skVOhU','from','matchedPrefix','table','reduce','toUpperCase','178677iObPko','max','index','containsUnresolvedInclude','endsWith','OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.','toLowerCase','MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.','inner','where','\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.','MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','columns','232DUHCph','unknown','Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.','710NVSKZc','27174pUlnlC','cross','position','JOIN_INDEX_NOT_USABLE','\x5cs*\x5c.\x5cs*[\x5cw$]+','132HSBzlt','includes','search','join','unsupportedPredicate','covered','has','test','3277ExXuJS','warning','No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.','length','57530rFjQfL','INNER','min','full','alias','JOIN_INDEX_MISSING','replace','2508NgcHLM','MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.','push','right','some','(?:^|[^\x5cw$])','Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.','The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.','slice','INDEX_METADATA_UNAVAILABLE','indexes','using','match','matchAll','indexOf','filter'];a262_0x23ea=function(){return _0x456ce0;};return a262_0x23ea();}(function(_0x1c1fc4,_0x4549cb){const _0x1685be=a262_0x557d,_0x4a7c9a=_0x1c1fc4();while(!![]){try{const _0xc9cb2f=-parseInt(_0x1685be(0x116))/0x1*(parseInt(_0x1685be(0x131))/0x2)+parseInt(_0x1685be(0x136))/0x3*(-parseInt(_0x1685be(0x158))/0x4)+parseInt(_0x1685be(0x152))/0x5*(parseInt(_0x1685be(0x153))/0x6)+-parseInt(_0x1685be(0x13c))/0x7+-parseInt(_0x1685be(0x14f))/0x8*(parseInt(_0x1685be(0x142))/0x9)+parseInt(_0x1685be(0x11a))/0xa*(parseInt(_0x1685be(0x121))/0xb)+parseInt(_0x1685be(0x13a))/0xc;if(_0xc9cb2f===_0x4549cb)break;else _0x4a7c9a['push'](_0x4a7c9a['shift']());}catch(_0x5da186){_0x4a7c9a['push'](_0x4a7c9a['shift']());}}}(a262_0x23ea,0xd2216));import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';export function auditSqlJoinIndexes(_0x26cf97,_0x12e237){const _0x48ff65=a262_0x557d,_0x1bdfb1=[],_0x5a0261=normalizeSqlForStaticAnalysis(_0x26cf97),_0x514cd9=(_0x5a0261['error']?[]:extractJoinFacts(_0x5a0261['sql']))['map'](_0x896c23=>{const _0x4dda8b=a262_0x557d;if(_0x896c23[_0x4dda8b(0x112)]||_0x896c23[_0x4dda8b(0x14e)][_0x4dda8b(0x119)]===0x0)return _0x1bdfb1[_0x4dda8b(0x123)]({'code':'JOIN_PREDICATE_UNSUPPORTED','table':_0x896c23['table'],'alias':_0x896c23[_0x4dda8b(0x11e)],'columns':_0x896c23[_0x4dda8b(0x14e)],'reason':_0x896c23['unsupportedReason']??_0x4dda8b(0x151)}),{'table':_0x896c23[_0x4dda8b(0x13f)],'alias':_0x896c23['alias'],'columns':_0x896c23[_0x4dda8b(0x14e)],'status':_0x4dda8b(0x13b)};const _0xd9ac0c=resolveTableMetadata(_0x12e237,_0x896c23['table']),_0xafcf80=(_0xd9ac0c?.['indexes']??[])[_0x4dda8b(0x132)](_0x1815f3=>({'index':_0x1815f3,'matchedPrefix':findEqualityPrefix(_0x1815f3[_0x4dda8b(0x14e)],_0x896c23[_0x4dda8b(0x14e)])}))['filter'](_0x3e91e9=>_0x3e91e9[_0x4dda8b(0x13e)][_0x4dda8b(0x119)]>0x0),_0x2f1ca1=_0xafcf80[_0x4dda8b(0x140)]((_0x5f5c48,_0x5ecd4d)=>!_0x5f5c48||_0x5ecd4d[_0x4dda8b(0x13e)][_0x4dda8b(0x119)]>_0x5f5c48[_0x4dda8b(0x13e)][_0x4dda8b(0x119)]?_0x5ecd4d:_0x5f5c48,_0xafcf80[0x0]);if(_0x2f1ca1)return{'table':_0x896c23[_0x4dda8b(0x13f)],'alias':_0x896c23[_0x4dda8b(0x11e)],'columns':_0x896c23[_0x4dda8b(0x14e)],'status':_0x4dda8b(0x113),'matchedIndex':{..._0x2f1ca1[_0x4dda8b(0x144)],'matchedPrefix':_0x2f1ca1[_0x4dda8b(0x13e)]}};const _0x1ce25d=_0xd9ac0c?.[_0x4dda8b(0x12b)][_0x4dda8b(0x130)](_0x1e2220=>_0x1e2220[_0x4dda8b(0x14e)]['some'](_0x2874cf=>_0x896c23[_0x4dda8b(0x14e)][_0x4dda8b(0x125)](_0x472ea4=>columnNamesMatch(_0x2874cf,_0x472ea4))))??[];if(_0x1ce25d[_0x4dda8b(0x119)]>0x0)return _0x1bdfb1[_0x4dda8b(0x123)]({'code':_0x4dda8b(0x156),'table':_0x896c23['table'],'alias':_0x896c23['alias'],'columns':_0x896c23[_0x4dda8b(0x14e)],'reason':'Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.'}),{'table':_0x896c23[_0x4dda8b(0x13f)],'alias':_0x896c23['alias'],'columns':_0x896c23['columns'],'status':'warning','candidateIndexes':_0x1ce25d};if(_0xd9ac0c&&_0xd9ac0c[_0x4dda8b(0x138)]!==![]&&_0xd9ac0c[_0x4dda8b(0x12b)][_0x4dda8b(0x119)]>0x0&&_0x896c23[_0x4dda8b(0x14e)][_0x4dda8b(0x119)]>0x0)return _0x1bdfb1['push']({'code':_0x4dda8b(0x11f),'table':_0x896c23[_0x4dda8b(0x13f)],'alias':_0x896c23['alias'],'columns':_0x896c23['columns'],'reason':_0x4dda8b(0x118)}),{'table':_0x896c23[_0x4dda8b(0x13f)],'alias':_0x896c23[_0x4dda8b(0x11e)],'columns':_0x896c23[_0x4dda8b(0x14e)],'status':_0x4dda8b(0x117)};return _0x1bdfb1[_0x4dda8b(0x123)]({'code':_0x4dda8b(0x12a),'table':_0x896c23['table'],'alias':_0x896c23[_0x4dda8b(0x11e)],'columns':_0x896c23['columns'],'reason':_0xd9ac0c?_0x4dda8b(0x128):'No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.'}),{'table':_0x896c23[_0x4dda8b(0x13f)],'alias':_0x896c23[_0x4dda8b(0x11e)],'columns':_0x896c23[_0x4dda8b(0x14e)],'status':_0x4dda8b(0x13b)};});return{'checked':_0x514cd9[_0x48ff65(0x119)]>0x0,'joins':_0x514cd9,'warnings':_0x1bdfb1};}function extractJoinFacts(_0x9eb5a1){const _0x2d1a08=a262_0x557d,_0x4ff1a1=maskNestedQueries(stripSqlNoise(_0x9eb5a1)),_0x387589=maskQuotedIdentifiers(_0x4ff1a1),_0x3c0f91=[],_0x5717c5=new Set(),_0x36bb1e=/\b(?:(INNER|LEFT|RIGHT|FULL)(?:\s+OUTER)?\s+)?JOIN\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?\s+ON\s+([\s\S]*?)(?=\s+(?:(?:(?:INNER|LEFT|RIGHT|FULL)(?:\s+OUTER)?\s+)?JOIN\b|(?:WHERE|GROUP\s+BY|ORDER\s+BY|HAVING|LIMIT|UNION)\b)|;|$)/gi;for(const _0x51270d of _0x4ff1a1[_0x2d1a08(0x12e)](_0x36bb1e)){const _0xc6d9a7=_0x51270d[_0x2d1a08(0x144)]??0x0,_0x4e01e2=_0x51270d[0x0][_0x2d1a08(0x110)](/\bJOIN\b/i),_0xf4b880=_0xc6d9a7+Math[_0x2d1a08(0x143)](0x0,_0x4e01e2);if(!/^JOIN\b/i[_0x2d1a08(0x115)](_0x387589[_0x2d1a08(0x129)](_0xf4b880)))continue;_0x5717c5['add'](_0xf4b880);const _0x246a38=normalizeIdentifier(_0x51270d[0x1]||_0x2d1a08(0x11b)),_0x54adcf=normalizeIdentifier(_0x51270d[0x2]??''),_0x2df325=normalizeIdentifier(_0x51270d[0x3]||_0x54adcf['split']('.')['at'](-0x1)||_0x54adcf),_0x2ed331=[],_0x560c7a=_0x54adcf===_0x2d1a08(0x137);let _0xf00e3b=_0x246a38===_0x2d1a08(0x124)||_0x246a38===_0x2d1a08(0x11d)||_0x560c7a,_0x2d31e9=_0xf00e3b?_0x560c7a?_0x2d1a08(0x127):_0x246a38[_0x2d1a08(0x141)]()+_0x2d1a08(0x14c):undefined;const _0x30ad4c=stripOuterParentheses(_0x51270d[0x4]??''),_0x354d34=_0x30ad4c['includes'](MYBATIS_DYNAMIC_START_MARKER)||_0x30ad4c[_0x2d1a08(0x159)](MYBATIS_DYNAMIC_END_MARKER),_0x592741=_0x30ad4c[_0x2d1a08(0x159)](MYBATIS_INCLUDE_MARKER);_0x354d34&&(_0xf00e3b=!![],_0x2d31e9??=_0x2d1a08(0x122));_0x592741&&(_0xf00e3b=!![],_0x2d31e9??=_0x2d1a08(0x149));const _0x77ffbd=_0x30ad4c['replaceAll'](MYBATIS_DYNAMIC_START_MARKER,'\x20')['replaceAll'](MYBATIS_DYNAMIC_END_MARKER,'\x20')['replaceAll'](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0x77ffbd,'OR')&&(_0xf00e3b=!![],_0x2d31e9??='OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.');for(const _0x193192 of splitTopLevelAnd(_0x77ffbd)){const _0x1f4fbf=stripOuterParentheses(_0x193192);if(hasTopLevelKeyword(_0x1f4fbf,'OR')){_0xf00e3b=!![],_0x2d31e9??=_0x2d1a08(0x147);continue;}const _0x2eb61a=splitEquality(_0x1f4fbf);if(!_0x2eb61a){containsColumnReference(_0x193192,_0x2df325)&&(_0xf00e3b=!![]);continue;}const _0x55ef87=parseDirectColumnReference(_0x2eb61a[0x0],_0x2df325),_0x4d27f3=parseDirectColumnReference(_0x2eb61a[0x1],_0x2df325),_0x1cd9f7=containsColumnReference(_0x2eb61a[0x0],_0x2df325),_0x25fc59=containsColumnReference(_0x2eb61a[0x1],_0x2df325),_0x25b688=_0x55ef87&&!_0x25fc59?_0x55ef87:_0x4d27f3&&!_0x1cd9f7?_0x4d27f3:null;if(_0x25b688&&!_0x2ed331['includes'](_0x25b688))_0x2ed331[_0x2d1a08(0x123)](_0x25b688);else!_0x25b688&&containsColumnReference(_0x193192,_0x2df325)&&(_0xf00e3b=!![]);}_0x3c0f91[_0x2d1a08(0x123)]({'table':_0x54adcf,'alias':_0x2df325,'columns':_0x2ed331,'unsupportedPredicate':_0xf00e3b,'unsupportedReason':_0x2d31e9,'containsUnresolvedInclude':_0x592741,'position':_0xf4b880});}for(const _0x385d59 of _0x387589[_0x2d1a08(0x12e)](/\bJOIN\b/gi)){const _0x1f066d=_0x385d59[_0x2d1a08(0x144)]??0x0;if(_0x5717c5['has'](_0x1f066d))continue;const _0x3a6b9c=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/[_0x2d1a08(0x139)](_0x4ff1a1[_0x2d1a08(0x129)](_0x1f066d+_0x385d59[0x0][_0x2d1a08(0x119)])),_0x43eac4=normalizeIdentifier(_0x3a6b9c?.[0x1]||_0x2d1a08(0x150)),_0x3a45c7=normalizeIdentifier(_0x3a6b9c?.[0x2]||''),_0x5510f2=isSqlClauseKeyword(_0x3a45c7)?_0x43eac4[_0x2d1a08(0x135)]('.')['at'](-0x1)||_0x43eac4:_0x3a45c7||_0x43eac4[_0x2d1a08(0x135)]('.')['at'](-0x1)||_0x43eac4;_0x3c0f91[_0x2d1a08(0x123)]({'table':_0x43eac4,'alias':_0x5510f2,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':'Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','position':_0x1f066d});}const _0x357777=_0x387589[_0x2d1a08(0x12f)](MYBATIS_INCLUDE_MARKER);return _0x357777>=0x0&&!_0x3c0f91[_0x2d1a08(0x125)](_0x3a7a40=>_0x3a7a40[_0x2d1a08(0x145)])&&_0x3c0f91['push']({'table':_0x2d1a08(0x150),'alias':'unknown','columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x2d1a08(0x14d),'containsUnresolvedInclude':!![],'position':_0x357777}),_0x3c0f91['sort']((_0x57ef09,_0x2f21c0)=>_0x57ef09[_0x2d1a08(0x155)]-_0x2f21c0[_0x2d1a08(0x155)]);}function stripSqlNoise(_0x417c84){const _0x314531=a262_0x557d,_0x41f5b7=Array[_0x314531(0x13d)](_0x417c84),_0x27f0eb=(_0x327ddf,_0x5e35dc)=>{for(let _0x50e23e=_0x327ddf;_0x50e23e<_0x5e35dc;_0x50e23e+=0x1){_0x41f5b7[_0x50e23e]!=='\x0a'&&_0x41f5b7[_0x50e23e]!=='\x0d'&&(_0x41f5b7[_0x50e23e]='\x20');}};for(let _0x22a752=0x0;_0x22a752<_0x41f5b7[_0x314531(0x119)];_0x22a752+=0x1){const _0x38f44a=_0x41f5b7[_0x22a752],_0x409d0b=_0x41f5b7[_0x22a752+0x1];if(_0x38f44a==='\x27'||_0x38f44a==='\x22'||_0x38f44a==='`'){const _0x52cd16=_0x38f44a,_0x1df58b=_0x22a752;_0x22a752+=0x1;while(_0x22a752<_0x41f5b7[_0x314531(0x119)]){if(_0x41f5b7[_0x22a752]==='\x5c'&&_0x22a752+0x1<_0x41f5b7[_0x314531(0x119)]){_0x22a752+=0x2;continue;}if(_0x41f5b7[_0x22a752]!==_0x52cd16){_0x22a752+=0x1;continue;}if(_0x41f5b7[_0x22a752+0x1]===_0x52cd16){_0x22a752+=0x2;continue;}break;}if(_0x52cd16==='\x27')_0x27f0eb(_0x1df58b,Math[_0x314531(0x11c)](_0x22a752+0x1,_0x41f5b7[_0x314531(0x119)]));continue;}if(_0x38f44a==='-'&&_0x409d0b==='-'){const _0x51d7ef=_0x22a752;while(_0x22a752<_0x41f5b7[_0x314531(0x119)]&&_0x41f5b7[_0x22a752]!=='\x0a')_0x22a752+=0x1;_0x27f0eb(_0x51d7ef,_0x22a752);continue;}if(_0x38f44a==='/'&&_0x409d0b==='*'){const _0xeeed39=_0x22a752;_0x22a752+=0x2;while(_0x22a752<_0x41f5b7['length']&&!(_0x41f5b7[_0x22a752]==='*'&&_0x41f5b7[_0x22a752+0x1]==='/')){_0x22a752+=0x1;}_0x22a752=Math[_0x314531(0x11c)](_0x22a752+0x1,_0x41f5b7['length']-0x1),_0x27f0eb(_0xeeed39,_0x22a752+0x1);continue;}if(_0x38f44a==='#'&&_0x409d0b!=='{'){const _0x42c0e7=_0x22a752;while(_0x22a752<_0x41f5b7[_0x314531(0x119)]&&_0x41f5b7[_0x22a752]!=='\x0a')_0x22a752+=0x1;_0x27f0eb(_0x42c0e7,_0x22a752);continue;}if((_0x38f44a==='#'||_0x38f44a==='$')&&_0x409d0b==='{'){const _0x27fb6d=_0x22a752;_0x22a752+=0x2;while(_0x22a752<_0x41f5b7[_0x314531(0x119)]&&_0x41f5b7[_0x22a752]!=='}')_0x22a752+=0x1;_0x27f0eb(_0x27fb6d,Math['min'](_0x22a752+0x1,_0x41f5b7[_0x314531(0x119)]));}}return _0x41f5b7[_0x314531(0x111)]('');}function maskQuotedIdentifiers(_0x43cd76){const _0x3a9ca6=a262_0x557d,_0x114b75=Array['from'](_0x43cd76);for(let _0x3c41c0=0x0;_0x3c41c0<_0x114b75[_0x3a9ca6(0x119)];_0x3c41c0+=0x1){const _0x2f75cf=_0x114b75[_0x3c41c0];if(_0x2f75cf!=='\x22'&&_0x2f75cf!=='`')continue;_0x3c41c0+=0x1;while(_0x3c41c0<_0x114b75['length']){if(_0x114b75[_0x3c41c0]===_0x2f75cf){if(_0x114b75[_0x3c41c0+0x1]===_0x2f75cf){_0x114b75[_0x3c41c0]='\x20',_0x114b75[_0x3c41c0+0x1]='\x20',_0x3c41c0+=0x2;continue;}break;}_0x114b75[_0x3c41c0]='\x20',_0x3c41c0+=0x1;}}return _0x114b75[_0x3a9ca6(0x111)]('');}function maskNestedQueries(_0x37622e){const _0x122699=a262_0x557d,_0x5cd30a=Array['from'](_0x37622e);for(let _0x563934=0x0;_0x563934<_0x5cd30a[_0x122699(0x119)];_0x563934+=0x1){if(_0x5cd30a[_0x563934]!=='(')continue;const _0x366696=_0x37622e[_0x122699(0x129)](_0x563934+0x1);if(!/^\s*(?:SELECT|WITH)\b/i[_0x122699(0x115)](_0x366696))continue;let _0x13a8b1=0x1,_0x1b5853=_0x563934+0x1;for(;_0x1b5853<_0x5cd30a[_0x122699(0x119)]&&_0x13a8b1>0x0;_0x1b5853+=0x1){if(_0x5cd30a[_0x1b5853]==='(')_0x13a8b1+=0x1;if(_0x5cd30a[_0x1b5853]===')')_0x13a8b1-=0x1;}if(_0x13a8b1!==0x0)continue;for(let _0x417a95=_0x563934;_0x417a95<_0x1b5853;_0x417a95+=0x1){_0x5cd30a[_0x417a95]='\x20';}const _0x1ac846=_0x122699(0x137);for(let _0x3cb5da=0x0;_0x3cb5da<_0x1ac846['length']&&_0x563934+_0x3cb5da<_0x1b5853;_0x3cb5da+=0x1){_0x5cd30a[_0x563934+_0x3cb5da]=_0x1ac846[_0x3cb5da];}_0x563934=_0x1b5853-0x1;}return _0x5cd30a[_0x122699(0x111)]('');}function a262_0x557d(_0x2d8d2,_0x2c2f40){_0x2d8d2=_0x2d8d2-0x110;const _0x23ea50=a262_0x23ea();let _0x557dc0=_0x23ea50[_0x2d8d2];return _0x557dc0;}function splitTopLevelAnd(_0x5b51a1){const _0x3381c4=a262_0x557d,_0x40a2c0=[];let _0x5b0f94=0x0,_0x77c59a=0x0;for(let _0x15c6d6=0x0;_0x15c6d6<_0x5b51a1[_0x3381c4(0x119)];_0x15c6d6+=0x1){const _0x6d4f25=_0x5b51a1[_0x15c6d6];if(_0x6d4f25==='(')_0x5b0f94+=0x1;if(_0x6d4f25===')')_0x5b0f94=Math[_0x3381c4(0x143)](0x0,_0x5b0f94-0x1);_0x5b0f94===0x0&&_0x5b51a1[_0x3381c4(0x129)](_0x15c6d6)[_0x3381c4(0x12d)](/^AND\b/i)&&(_0x15c6d6===0x0||/\s/[_0x3381c4(0x115)](_0x5b51a1[_0x15c6d6-0x1]??''))&&(_0x40a2c0[_0x3381c4(0x123)](_0x5b51a1['slice'](_0x77c59a,_0x15c6d6)[_0x3381c4(0x133)]()),_0x15c6d6+=0x2,_0x77c59a=_0x15c6d6+0x1);}const _0x3bbcf2=_0x5b51a1['slice'](_0x77c59a)[_0x3381c4(0x133)]();if(_0x3bbcf2)_0x40a2c0[_0x3381c4(0x123)](_0x3bbcf2);return _0x40a2c0;}function hasTopLevelKeyword(_0x1a7eaa,_0x2672c7){const _0x1d33b3=a262_0x557d;let _0x5f2bb1=0x0;for(let _0x4ddddc=0x0;_0x4ddddc<_0x1a7eaa['length'];_0x4ddddc+=0x1){const _0x5ccc73=_0x1a7eaa[_0x4ddddc];if(_0x5ccc73==='(')_0x5f2bb1+=0x1;if(_0x5ccc73===')')_0x5f2bb1=Math[_0x1d33b3(0x143)](0x0,_0x5f2bb1-0x1);if(_0x5f2bb1!==0x0)continue;const _0x505adf=_0x1a7eaa[_0x1d33b3(0x129)](_0x4ddddc,_0x4ddddc+_0x2672c7[_0x1d33b3(0x119)]),_0x11db74=_0x1a7eaa[_0x4ddddc-0x1]??'\x20',_0x114973=_0x1a7eaa[_0x4ddddc+_0x2672c7[_0x1d33b3(0x119)]]??'\x20';if(_0x505adf['toUpperCase']()===_0x2672c7[_0x1d33b3(0x141)]()&&!/[\w$]/['test'](_0x11db74)&&!/[\w$]/[_0x1d33b3(0x115)](_0x114973))return!![];}return![];}function splitEquality(_0x287152){const _0x6cb46b=a262_0x557d,_0x551c1=stripOuterParentheses(_0x287152);let _0x29a9a3=0x0,_0x4d2c65;for(let _0x15ec1a=0x0;_0x15ec1a<_0x551c1[_0x6cb46b(0x119)];_0x15ec1a+=0x1){const _0x9463c8=_0x551c1[_0x15ec1a];if(_0x9463c8==='(')_0x29a9a3+=0x1;if(_0x9463c8===')')_0x29a9a3=Math[_0x6cb46b(0x143)](0x0,_0x29a9a3-0x1);const _0x245549=_0x551c1[_0x15ec1a-0x1]??'',_0x3f8ff4=_0x551c1[_0x15ec1a+0x1]??'';if(_0x9463c8==='='&&_0x29a9a3===0x0&&!/[!<>=:]/[_0x6cb46b(0x115)](_0x245549)&&_0x3f8ff4!=='='){if(_0x4d2c65!==undefined)return null;_0x4d2c65=_0x15ec1a;}}return _0x4d2c65===undefined?null:[_0x551c1['slice'](0x0,_0x4d2c65)['trim'](),_0x551c1['slice'](_0x4d2c65+0x1)[_0x6cb46b(0x133)]()];}function parseDirectColumnReference(_0x790701,_0x57a581){const _0x8df899=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/['exec'](stripOuterParentheses(_0x790701));if(!_0x8df899)return null;if(normalizeIdentifier(_0x8df899[0x1]??'')!==normalizeIdentifier(_0x57a581))return null;return normalizeIdentifier(_0x8df899[0x2]??'');}function containsColumnReference(_0x349623,_0x2cb685){const _0x2c1f88=a262_0x557d,_0x30ad76=_0x349623[_0x2c1f88(0x120)](/[`"]/g,''),_0x31899d=_0x2cb685[_0x2c1f88(0x120)](/[.*+?^${}()|[\]\\]/g,'\x5c$&');return new RegExp(_0x2c1f88(0x126)+_0x31899d+_0x2c1f88(0x157),'i')[_0x2c1f88(0x115)](_0x30ad76);}function findEqualityPrefix(_0x188a00,_0x289229){const _0x52861e=a262_0x557d,_0x37bb5e=new Set(_0x289229['map'](normalizeIdentifier)),_0x5f1e93=[];for(const _0x21fe39 of _0x188a00){if(!_0x37bb5e[_0x52861e(0x114)](normalizeIdentifier(_0x21fe39)))break;_0x5f1e93[_0x52861e(0x123)](_0x21fe39);}return _0x5f1e93;}function resolveTableMetadata(_0x591f7a,_0x5acef9){const _0x58d4fe=a262_0x557d,_0x2795c0=normalizeIdentifier(_0x5acef9),_0x5edcbb=_0x591f7a[_0x58d4fe(0x130)](_0x496b64=>normalizeIdentifier(_0x496b64['tableName'])===_0x2795c0);if(_0x5edcbb[_0x58d4fe(0x119)]===0x1)return _0x5edcbb[0x0];const _0x176655=_0x2795c0['includes']('.'),_0xa345ec=_0x2795c0['split']('.')['at'](-0x1),_0x2f587b=_0x591f7a[_0x58d4fe(0x130)](_0x32e342=>{const _0x5427b9=_0x58d4fe,_0x3811dd=normalizeIdentifier(_0x32e342['tableName']);if(_0x176655&&_0x3811dd['includes']('.'))return![];return _0x3811dd[_0x5427b9(0x135)]('.')['at'](-0x1)===_0xa345ec;});return _0x2f587b[_0x58d4fe(0x119)]===0x1?_0x2f587b[0x0]:undefined;}function columnNamesMatch(_0x372fe6,_0x3f25f7){return normalizeIdentifier(_0x372fe6)===normalizeIdentifier(_0x3f25f7);}function normalizeIdentifier(_0x19eecf){const _0x1fae02=a262_0x557d;return _0x19eecf[_0x1fae02(0x120)](/[`"]/g,'')[_0x1fae02(0x133)]()[_0x1fae02(0x148)]();}function isSqlClauseKeyword(_0x3a451f){const _0x3d8cb5=a262_0x557d;return new Set(['on',_0x3d8cb5(0x12c),_0x3d8cb5(0x14b),_0x3d8cb5(0x111),_0x3d8cb5(0x14a),'left',_0x3d8cb5(0x124),_0x3d8cb5(0x11d),_0x3d8cb5(0x154),_0x3d8cb5(0x134)])['has'](_0x3a451f);}function stripOuterParentheses(_0x4da3c1){const _0x5539d9=a262_0x557d;let _0x59aa49=_0x4da3c1[_0x5539d9(0x133)]();while(_0x59aa49['startsWith']('(')&&_0x59aa49[_0x5539d9(0x146)](')')){let _0x424bc4=0x0,_0x363df7=!![];for(let _0xb71b8b=0x0;_0xb71b8b<_0x59aa49[_0x5539d9(0x119)];_0xb71b8b+=0x1){if(_0x59aa49[_0xb71b8b]==='(')_0x424bc4+=0x1;if(_0x59aa49[_0xb71b8b]===')')_0x424bc4-=0x1;if(_0x424bc4===0x0&&_0xb71b8b<_0x59aa49['length']-0x1){_0x363df7=![];break;}}if(!_0x363df7||_0x424bc4!==0x0)break;_0x59aa49=_0x59aa49[_0x5539d9(0x129)](0x1,-0x1)['trim']();}return _0x59aa49;}
1
+ function a261_0x1dd8(_0x315d3d,_0x269c4a){_0x315d3d=_0x315d3d-0xa0;const _0x1c0bef=a261_0x1c0b();let _0x1dd86d=_0x1c0bef[_0x315d3d];return _0x1dd86d;}(function(_0x5453fa,_0xb9414d){const _0xa9ea4a=a261_0x1dd8,_0x6118cd=_0x5453fa();while(!![]){try{const _0x4378f5=-parseInt(_0xa9ea4a(0xae))/0x1*(parseInt(_0xa9ea4a(0xa6))/0x2)+-parseInt(_0xa9ea4a(0xe3))/0x3+-parseInt(_0xa9ea4a(0xc6))/0x4+-parseInt(_0xa9ea4a(0xa9))/0x5+parseInt(_0xa9ea4a(0xcf))/0x6*(parseInt(_0xa9ea4a(0xe7))/0x7)+-parseInt(_0xa9ea4a(0xd4))/0x8*(parseInt(_0xa9ea4a(0xda))/0x9)+parseInt(_0xa9ea4a(0xcd))/0xa;if(_0x4378f5===_0xb9414d)break;else _0x6118cd['push'](_0x6118cd['shift']());}catch(_0x370c80){_0x6118cd['push'](_0x6118cd['shift']());}}}(a261_0x1c0b,0xacf62));import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';export function auditSqlJoinIndexes(_0x2bb37b,_0x1b9df7){const _0x586b69=a261_0x1dd8,_0x79d2f7=[],_0xc28273=normalizeSqlForStaticAnalysis(_0x2bb37b),_0x22470c=(_0xc28273[_0x586b69(0xc3)]?[]:extractJoinFacts(_0xc28273[_0x586b69(0xa0)]))['map'](_0x2bacec=>{const _0x38e867=_0x586b69;if(_0x2bacec['unsupportedPredicate']||_0x2bacec[_0x38e867(0xbc)][_0x38e867(0xd7)]===0x0)return _0x79d2f7[_0x38e867(0xca)]({'code':_0x38e867(0xac),'table':_0x2bacec['table'],'alias':_0x2bacec[_0x38e867(0xbe)],'columns':_0x2bacec[_0x38e867(0xbc)],'reason':_0x2bacec[_0x38e867(0xe6)]??_0x38e867(0xd8)}),{'table':_0x2bacec[_0x38e867(0xa8)],'alias':_0x2bacec[_0x38e867(0xbe)],'columns':_0x2bacec[_0x38e867(0xbc)],'status':'unavailable'};const _0xe23934=resolveTableMetadata(_0x1b9df7,_0x2bacec[_0x38e867(0xa8)]),_0x5c7e38=(_0xe23934?.[_0x38e867(0xcb)]??[])['map'](_0x3d137f=>({'index':_0x3d137f,'matchedPrefix':findEqualityPrefix(_0x3d137f[_0x38e867(0xbc)],_0x2bacec[_0x38e867(0xbc)])}))['filter'](_0xd55834=>_0xd55834[_0x38e867(0xdc)][_0x38e867(0xd7)]>0x0),_0x42aae6=_0x5c7e38[_0x38e867(0xdb)]((_0x55a5eb,_0x545003)=>!_0x55a5eb||_0x545003[_0x38e867(0xdc)]['length']>_0x55a5eb['matchedPrefix'][_0x38e867(0xd7)]?_0x545003:_0x55a5eb,_0x5c7e38[0x0]);if(_0x42aae6)return{'table':_0x2bacec[_0x38e867(0xa8)],'alias':_0x2bacec[_0x38e867(0xbe)],'columns':_0x2bacec[_0x38e867(0xbc)],'status':_0x38e867(0xb3),'matchedIndex':{..._0x42aae6['index'],'matchedPrefix':_0x42aae6[_0x38e867(0xdc)]}};const _0x59b866=_0xe23934?.['indexes'][_0x38e867(0xa4)](_0x1daf0a=>_0x1daf0a[_0x38e867(0xbc)][_0x38e867(0xe1)](_0x48ae0f=>_0x2bacec[_0x38e867(0xbc)][_0x38e867(0xe1)](_0xf11f96=>columnNamesMatch(_0x48ae0f,_0xf11f96))))??[];if(_0x59b866[_0x38e867(0xd7)]>0x0)return _0x79d2f7[_0x38e867(0xca)]({'code':_0x38e867(0xa1),'table':_0x2bacec[_0x38e867(0xa8)],'alias':_0x2bacec[_0x38e867(0xbe)],'columns':_0x2bacec['columns'],'reason':_0x38e867(0xaa)}),{'table':_0x2bacec['table'],'alias':_0x2bacec[_0x38e867(0xbe)],'columns':_0x2bacec[_0x38e867(0xbc)],'status':_0x38e867(0xde),'candidateIndexes':_0x59b866};if(_0xe23934&&_0xe23934[_0x38e867(0xd0)]!==![]&&_0xe23934[_0x38e867(0xcb)]['length']>0x0&&_0x2bacec[_0x38e867(0xbc)][_0x38e867(0xd7)]>0x0)return _0x79d2f7[_0x38e867(0xca)]({'code':_0x38e867(0xa2),'table':_0x2bacec[_0x38e867(0xa8)],'alias':_0x2bacec[_0x38e867(0xbe)],'columns':_0x2bacec[_0x38e867(0xbc)],'reason':_0x38e867(0xab)}),{'table':_0x2bacec[_0x38e867(0xa8)],'alias':_0x2bacec[_0x38e867(0xbe)],'columns':_0x2bacec[_0x38e867(0xbc)],'status':_0x38e867(0xde)};return _0x79d2f7[_0x38e867(0xca)]({'code':_0x38e867(0xa5),'table':_0x2bacec['table'],'alias':_0x2bacec['alias'],'columns':_0x2bacec[_0x38e867(0xbc)],'reason':_0xe23934?_0x38e867(0xc7):'No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.'}),{'table':_0x2bacec[_0x38e867(0xa8)],'alias':_0x2bacec[_0x38e867(0xbe)],'columns':_0x2bacec[_0x38e867(0xbc)],'status':'unavailable'};});return{'checked':_0x22470c[_0x586b69(0xd7)]>0x0,'joins':_0x22470c,'warnings':_0x79d2f7};}function extractJoinFacts(_0x31a394){const _0x7c16e=a261_0x1dd8,_0x431dac=maskNestedQueries(stripSqlNoise(_0x31a394)),_0x567bb2=maskQuotedIdentifiers(_0x431dac),_0x1b5a4e=[],_0x3706e3=new Set(),_0x2aaeba=/\b(?:(INNER|LEFT|RIGHT|FULL)(?:\s+OUTER)?\s+)?JOIN\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?\s+ON\s+([\s\S]*?)(?=\s+(?:(?:(?:INNER|LEFT|RIGHT|FULL)(?:\s+OUTER)?\s+)?JOIN\b|(?:WHERE|GROUP\s+BY|ORDER\s+BY|HAVING|LIMIT|UNION)\b)|;|$)/gi;for(const _0x1091eb of _0x431dac[_0x7c16e(0xc0)](_0x2aaeba)){const _0x1d7fa5=_0x1091eb['index']??0x0,_0x44e9d7=_0x1091eb[0x0]['search'](/\bJOIN\b/i),_0x59e1b3=_0x1d7fa5+Math[_0x7c16e(0xe4)](0x0,_0x44e9d7);if(!/^JOIN\b/i[_0x7c16e(0xb8)](_0x567bb2[_0x7c16e(0xbb)](_0x59e1b3)))continue;_0x3706e3['add'](_0x59e1b3);const _0x33f4d1=normalizeIdentifier(_0x1091eb[0x1]||_0x7c16e(0xa3)),_0x30e72b=normalizeIdentifier(_0x1091eb[0x2]??''),_0xec1274=normalizeIdentifier(_0x1091eb[0x3]||_0x30e72b[_0x7c16e(0xdd)]('.')['at'](-0x1)||_0x30e72b),_0x19c1c9=[],_0x3057ea=_0x30e72b===_0x7c16e(0xb9);let _0x421425=_0x33f4d1===_0x7c16e(0xb0)||_0x33f4d1===_0x7c16e(0xb2)||_0x3057ea,_0x888d5b=_0x421425?_0x3057ea?_0x7c16e(0xb6):_0x33f4d1[_0x7c16e(0xc2)]()+'\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.':undefined;const _0x5c2a09=stripOuterParentheses(_0x1091eb[0x4]??''),_0x1a5ff6=_0x5c2a09[_0x7c16e(0xd1)](MYBATIS_DYNAMIC_START_MARKER)||_0x5c2a09[_0x7c16e(0xd1)](MYBATIS_DYNAMIC_END_MARKER),_0x3a6df8=_0x5c2a09['includes'](MYBATIS_INCLUDE_MARKER);_0x1a5ff6&&(_0x421425=!![],_0x888d5b??='MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.');_0x3a6df8&&(_0x421425=!![],_0x888d5b??=_0x7c16e(0xb5));const _0x12e479=_0x5c2a09[_0x7c16e(0xd2)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x7c16e(0xd2)](MYBATIS_DYNAMIC_END_MARKER,'\x20')['replaceAll'](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0x12e479,'OR')&&(_0x421425=!![],_0x888d5b??=_0x7c16e(0xa7));for(const _0x7a5431 of splitTopLevelAnd(_0x12e479)){const _0x2bf8d1=stripOuterParentheses(_0x7a5431);if(hasTopLevelKeyword(_0x2bf8d1,'OR')){_0x421425=!![],_0x888d5b??='OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.';continue;}const _0x2e9afd=splitEquality(_0x2bf8d1);if(!_0x2e9afd){containsColumnReference(_0x7a5431,_0xec1274)&&(_0x421425=!![]);continue;}const _0x27d896=parseDirectColumnReference(_0x2e9afd[0x0],_0xec1274),_0x5b8caa=parseDirectColumnReference(_0x2e9afd[0x1],_0xec1274),_0x47447e=containsColumnReference(_0x2e9afd[0x0],_0xec1274),_0x1f1fd7=containsColumnReference(_0x2e9afd[0x1],_0xec1274),_0x3eef3c=_0x27d896&&!_0x1f1fd7?_0x27d896:_0x5b8caa&&!_0x47447e?_0x5b8caa:null;if(_0x3eef3c&&!_0x19c1c9[_0x7c16e(0xd1)](_0x3eef3c))_0x19c1c9['push'](_0x3eef3c);else!_0x3eef3c&&containsColumnReference(_0x7a5431,_0xec1274)&&(_0x421425=!![]);}_0x1b5a4e[_0x7c16e(0xca)]({'table':_0x30e72b,'alias':_0xec1274,'columns':_0x19c1c9,'unsupportedPredicate':_0x421425,'unsupportedReason':_0x888d5b,'containsUnresolvedInclude':_0x3a6df8,'position':_0x59e1b3});}for(const _0x111e0a of _0x567bb2[_0x7c16e(0xc0)](/\bJOIN\b/gi)){const _0x8f4807=_0x111e0a[_0x7c16e(0xc1)]??0x0;if(_0x3706e3['has'](_0x8f4807))continue;const _0x4c63ac=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/[_0x7c16e(0xc4)](_0x431dac[_0x7c16e(0xbb)](_0x8f4807+_0x111e0a[0x0][_0x7c16e(0xd7)])),_0x487791=normalizeIdentifier(_0x4c63ac?.[0x1]||_0x7c16e(0xd5)),_0x5c2636=normalizeIdentifier(_0x4c63ac?.[0x2]||''),_0x5a7a91=isSqlClauseKeyword(_0x5c2636)?_0x487791[_0x7c16e(0xdd)]('.')['at'](-0x1)||_0x487791:_0x5c2636||_0x487791[_0x7c16e(0xdd)]('.')['at'](-0x1)||_0x487791;_0x1b5a4e['push']({'table':_0x487791,'alias':_0x5a7a91,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':'Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','position':_0x8f4807});}const _0x49ab77=_0x567bb2[_0x7c16e(0xb1)](MYBATIS_INCLUDE_MARKER);return _0x49ab77>=0x0&&!_0x1b5a4e['some'](_0x421ac7=>_0x421ac7[_0x7c16e(0xd3)])&&_0x1b5a4e[_0x7c16e(0xca)]({'table':'unknown','alias':_0x7c16e(0xd5),'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x7c16e(0xc9),'containsUnresolvedInclude':!![],'position':_0x49ab77}),_0x1b5a4e['sort']((_0x14aac3,_0x54285d)=>_0x14aac3['position']-_0x54285d[_0x7c16e(0xce)]);}function stripSqlNoise(_0xe405c8){const _0x38c4be=a261_0x1dd8,_0x2c8778=Array[_0x38c4be(0xd9)](_0xe405c8),_0x547c33=(_0x3819ba,_0x5961f7)=>{for(let _0xb910cd=_0x3819ba;_0xb910cd<_0x5961f7;_0xb910cd+=0x1){_0x2c8778[_0xb910cd]!=='\x0a'&&_0x2c8778[_0xb910cd]!=='\x0d'&&(_0x2c8778[_0xb910cd]='\x20');}};for(let _0x412b97=0x0;_0x412b97<_0x2c8778[_0x38c4be(0xd7)];_0x412b97+=0x1){const _0x404cea=_0x2c8778[_0x412b97],_0x167d7e=_0x2c8778[_0x412b97+0x1];if(_0x404cea==='\x27'||_0x404cea==='\x22'||_0x404cea==='`'){const _0x2c1f05=_0x404cea,_0x4fd759=_0x412b97;_0x412b97+=0x1;while(_0x412b97<_0x2c8778[_0x38c4be(0xd7)]){if(_0x2c8778[_0x412b97]==='\x5c'&&_0x412b97+0x1<_0x2c8778[_0x38c4be(0xd7)]){_0x412b97+=0x2;continue;}if(_0x2c8778[_0x412b97]!==_0x2c1f05){_0x412b97+=0x1;continue;}if(_0x2c8778[_0x412b97+0x1]===_0x2c1f05){_0x412b97+=0x2;continue;}break;}if(_0x2c1f05==='\x27')_0x547c33(_0x4fd759,Math[_0x38c4be(0xbd)](_0x412b97+0x1,_0x2c8778[_0x38c4be(0xd7)]));continue;}if(_0x404cea==='-'&&_0x167d7e==='-'){const _0x5b4fa8=_0x412b97;while(_0x412b97<_0x2c8778[_0x38c4be(0xd7)]&&_0x2c8778[_0x412b97]!=='\x0a')_0x412b97+=0x1;_0x547c33(_0x5b4fa8,_0x412b97);continue;}if(_0x404cea==='/'&&_0x167d7e==='*'){const _0x425834=_0x412b97;_0x412b97+=0x2;while(_0x412b97<_0x2c8778['length']&&!(_0x2c8778[_0x412b97]==='*'&&_0x2c8778[_0x412b97+0x1]==='/')){_0x412b97+=0x1;}_0x412b97=Math[_0x38c4be(0xbd)](_0x412b97+0x1,_0x2c8778[_0x38c4be(0xd7)]-0x1),_0x547c33(_0x425834,_0x412b97+0x1);continue;}if(_0x404cea==='#'&&_0x167d7e!=='{'){const _0x399d9b=_0x412b97;while(_0x412b97<_0x2c8778[_0x38c4be(0xd7)]&&_0x2c8778[_0x412b97]!=='\x0a')_0x412b97+=0x1;_0x547c33(_0x399d9b,_0x412b97);continue;}if((_0x404cea==='#'||_0x404cea==='$')&&_0x167d7e==='{'){const _0x24b745=_0x412b97;_0x412b97+=0x2;while(_0x412b97<_0x2c8778['length']&&_0x2c8778[_0x412b97]!=='}')_0x412b97+=0x1;_0x547c33(_0x24b745,Math[_0x38c4be(0xbd)](_0x412b97+0x1,_0x2c8778['length']));}}return _0x2c8778[_0x38c4be(0xaf)]('');}function maskQuotedIdentifiers(_0x2421f6){const _0x3ab3d3=a261_0x1dd8,_0x51c29e=Array[_0x3ab3d3(0xd9)](_0x2421f6);for(let _0x49d77d=0x0;_0x49d77d<_0x51c29e[_0x3ab3d3(0xd7)];_0x49d77d+=0x1){const _0x119437=_0x51c29e[_0x49d77d];if(_0x119437!=='\x22'&&_0x119437!=='`')continue;_0x49d77d+=0x1;while(_0x49d77d<_0x51c29e[_0x3ab3d3(0xd7)]){if(_0x51c29e[_0x49d77d]===_0x119437){if(_0x51c29e[_0x49d77d+0x1]===_0x119437){_0x51c29e[_0x49d77d]='\x20',_0x51c29e[_0x49d77d+0x1]='\x20',_0x49d77d+=0x2;continue;}break;}_0x51c29e[_0x49d77d]='\x20',_0x49d77d+=0x1;}}return _0x51c29e[_0x3ab3d3(0xaf)]('');}function maskNestedQueries(_0x23aabe){const _0x2ae9f8=a261_0x1dd8,_0x3ce5ea=Array[_0x2ae9f8(0xd9)](_0x23aabe);for(let _0x52017b=0x0;_0x52017b<_0x3ce5ea[_0x2ae9f8(0xd7)];_0x52017b+=0x1){if(_0x3ce5ea[_0x52017b]!=='(')continue;const _0x42f357=_0x23aabe[_0x2ae9f8(0xbb)](_0x52017b+0x1);if(!/^\s*(?:SELECT|WITH)\b/i[_0x2ae9f8(0xb8)](_0x42f357))continue;let _0x4cd3e4=0x1,_0x2ce4b6=_0x52017b+0x1;for(;_0x2ce4b6<_0x3ce5ea[_0x2ae9f8(0xd7)]&&_0x4cd3e4>0x0;_0x2ce4b6+=0x1){if(_0x3ce5ea[_0x2ce4b6]==='(')_0x4cd3e4+=0x1;if(_0x3ce5ea[_0x2ce4b6]===')')_0x4cd3e4-=0x1;}if(_0x4cd3e4!==0x0)continue;for(let _0x38c8d1=_0x52017b;_0x38c8d1<_0x2ce4b6;_0x38c8d1+=0x1){_0x3ce5ea[_0x38c8d1]='\x20';}const _0x3c0ae0=_0x2ae9f8(0xb9);for(let _0x52d9ce=0x0;_0x52d9ce<_0x3c0ae0[_0x2ae9f8(0xd7)]&&_0x52017b+_0x52d9ce<_0x2ce4b6;_0x52d9ce+=0x1){_0x3ce5ea[_0x52017b+_0x52d9ce]=_0x3c0ae0[_0x52d9ce];}_0x52017b=_0x2ce4b6-0x1;}return _0x3ce5ea[_0x2ae9f8(0xaf)]('');}function splitTopLevelAnd(_0x10ea5a){const _0x3ddc3c=a261_0x1dd8,_0x454601=[];let _0x19ffe2=0x0,_0x5826ab=0x0;for(let _0x548760=0x0;_0x548760<_0x10ea5a['length'];_0x548760+=0x1){const _0x175805=_0x10ea5a[_0x548760];if(_0x175805==='(')_0x19ffe2+=0x1;if(_0x175805===')')_0x19ffe2=Math[_0x3ddc3c(0xe4)](0x0,_0x19ffe2-0x1);_0x19ffe2===0x0&&_0x10ea5a['slice'](_0x548760)[_0x3ddc3c(0xad)](/^AND\b/i)&&(_0x548760===0x0||/\s/[_0x3ddc3c(0xb8)](_0x10ea5a[_0x548760-0x1]??''))&&(_0x454601[_0x3ddc3c(0xca)](_0x10ea5a[_0x3ddc3c(0xbb)](_0x5826ab,_0x548760)['trim']()),_0x548760+=0x2,_0x5826ab=_0x548760+0x1);}const _0x52ce73=_0x10ea5a['slice'](_0x5826ab)[_0x3ddc3c(0xe0)]();if(_0x52ce73)_0x454601[_0x3ddc3c(0xca)](_0x52ce73);return _0x454601;}function hasTopLevelKeyword(_0xdf8529,_0x4b05bb){const _0x340587=a261_0x1dd8;let _0x477934=0x0;for(let _0x488418=0x0;_0x488418<_0xdf8529[_0x340587(0xd7)];_0x488418+=0x1){const _0x12ec1e=_0xdf8529[_0x488418];if(_0x12ec1e==='(')_0x477934+=0x1;if(_0x12ec1e===')')_0x477934=Math[_0x340587(0xe4)](0x0,_0x477934-0x1);if(_0x477934!==0x0)continue;const _0xef62d0=_0xdf8529['slice'](_0x488418,_0x488418+_0x4b05bb[_0x340587(0xd7)]),_0x54bb7d=_0xdf8529[_0x488418-0x1]??'\x20',_0x44d5fd=_0xdf8529[_0x488418+_0x4b05bb[_0x340587(0xd7)]]??'\x20';if(_0xef62d0[_0x340587(0xc2)]()===_0x4b05bb[_0x340587(0xc2)]()&&!/[\w$]/[_0x340587(0xb8)](_0x54bb7d)&&!/[\w$]/[_0x340587(0xb8)](_0x44d5fd))return!![];}return![];}function splitEquality(_0x90c5ff){const _0x2a0864=a261_0x1dd8,_0x4da28f=stripOuterParentheses(_0x90c5ff);let _0x1c0747=0x0,_0x326adb;for(let _0x4f3d6e=0x0;_0x4f3d6e<_0x4da28f[_0x2a0864(0xd7)];_0x4f3d6e+=0x1){const _0x4896e5=_0x4da28f[_0x4f3d6e];if(_0x4896e5==='(')_0x1c0747+=0x1;if(_0x4896e5===')')_0x1c0747=Math['max'](0x0,_0x1c0747-0x1);const _0x2347c6=_0x4da28f[_0x4f3d6e-0x1]??'',_0x5402d8=_0x4da28f[_0x4f3d6e+0x1]??'';if(_0x4896e5==='='&&_0x1c0747===0x0&&!/[!<>=:]/[_0x2a0864(0xb8)](_0x2347c6)&&_0x5402d8!=='='){if(_0x326adb!==undefined)return null;_0x326adb=_0x4f3d6e;}}return _0x326adb===undefined?null:[_0x4da28f[_0x2a0864(0xbb)](0x0,_0x326adb)[_0x2a0864(0xe0)](),_0x4da28f[_0x2a0864(0xbb)](_0x326adb+0x1)[_0x2a0864(0xe0)]()];}function parseDirectColumnReference(_0x587883,_0x5ac411){const _0x3a561a=a261_0x1dd8,_0x4086ea=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/[_0x3a561a(0xc4)](stripOuterParentheses(_0x587883));if(!_0x4086ea)return null;if(normalizeIdentifier(_0x4086ea[0x1]??'')!==normalizeIdentifier(_0x5ac411))return null;return normalizeIdentifier(_0x4086ea[0x2]??'');}function containsColumnReference(_0x9a10f4,_0x5605bd){const _0x43a60d=a261_0x1dd8,_0xa64b7d=_0x9a10f4[_0x43a60d(0xcc)](/[`"]/g,''),_0x275386=_0x5605bd[_0x43a60d(0xcc)](/[.*+?^${}()|[\]\\]/g,'\x5c$&');return new RegExp(_0x43a60d(0xbf)+_0x275386+_0x43a60d(0xb4),'i')[_0x43a60d(0xb8)](_0xa64b7d);}function a261_0x1c0b(){const _0x43a4e8=['filter','INDEX_METADATA_UNAVAILABLE','236420kXNtUq','OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.','table','2394595gWgWyB','Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.','No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.','JOIN_PREDICATE_UNSUPPORTED','match','8hJKpbx','join','right','indexOf','full','covered','\x5cs*\x5c.\x5cs*[\x5cw$]+','MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.','Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.','using','test','__sq__','toLowerCase','slice','columns','min','alias','(?:^|[^\x5cw$])','matchAll','index','toUpperCase','error','exec','tableName','1620864OrVrgY','The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.','has','MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','push','indexes','replace','36669590sWPCxH','position','28596nNVjqi','metadataAvailable','includes','replaceAll','containsUnresolvedInclude','64tDLIVu','unknown','endsWith','length','Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.','from','799911hSosEH','reduce','matchedPrefix','split','warning','left','trim','some','where','1453158MDPXjK','max','natural','unsupportedReason','98RhALAs','sql','JOIN_INDEX_NOT_USABLE','JOIN_INDEX_MISSING','INNER'];a261_0x1c0b=function(){return _0x43a4e8;};return a261_0x1c0b();}function findEqualityPrefix(_0x39bea6,_0x555716){const _0xfe3df5=a261_0x1dd8,_0x52ee5a=new Set(_0x555716['map'](normalizeIdentifier)),_0x4af9bc=[];for(const _0x5ac1c4 of _0x39bea6){if(!_0x52ee5a[_0xfe3df5(0xc8)](normalizeIdentifier(_0x5ac1c4)))break;_0x4af9bc['push'](_0x5ac1c4);}return _0x4af9bc;}function resolveTableMetadata(_0x4767a0,_0x4e1a7f){const _0x20db8d=a261_0x1dd8,_0x3080db=normalizeIdentifier(_0x4e1a7f),_0x186cb9=_0x4767a0[_0x20db8d(0xa4)](_0xb7b0a2=>normalizeIdentifier(_0xb7b0a2[_0x20db8d(0xc5)])===_0x3080db);if(_0x186cb9[_0x20db8d(0xd7)]===0x1)return _0x186cb9[0x0];const _0x40d6ff=_0x3080db[_0x20db8d(0xd1)]('.'),_0x2dd9e0=_0x3080db['split']('.')['at'](-0x1),_0x1183e9=_0x4767a0[_0x20db8d(0xa4)](_0x268df3=>{const _0x1d67ce=_0x20db8d,_0x1d052b=normalizeIdentifier(_0x268df3[_0x1d67ce(0xc5)]);if(_0x40d6ff&&_0x1d052b['includes']('.'))return![];return _0x1d052b['split']('.')['at'](-0x1)===_0x2dd9e0;});return _0x1183e9['length']===0x1?_0x1183e9[0x0]:undefined;}function columnNamesMatch(_0x192502,_0x3fdec9){return normalizeIdentifier(_0x192502)===normalizeIdentifier(_0x3fdec9);}function normalizeIdentifier(_0x96b814){const _0x13dea7=a261_0x1dd8;return _0x96b814['replace'](/[`"]/g,'')[_0x13dea7(0xe0)]()[_0x13dea7(0xba)]();}function isSqlClauseKeyword(_0x55d93a){const _0x3d8a54=a261_0x1dd8;return new Set(['on',_0x3d8a54(0xb7),_0x3d8a54(0xe2),'join','inner',_0x3d8a54(0xdf),_0x3d8a54(0xb0),'full','cross',_0x3d8a54(0xe5)])[_0x3d8a54(0xc8)](_0x55d93a);}function stripOuterParentheses(_0x22ea81){const _0x345a4b=a261_0x1dd8;let _0x587eb6=_0x22ea81[_0x345a4b(0xe0)]();while(_0x587eb6['startsWith']('(')&&_0x587eb6[_0x345a4b(0xd6)](')')){let _0x1abad0=0x0,_0x40a9a9=!![];for(let _0x4a60e2=0x0;_0x4a60e2<_0x587eb6[_0x345a4b(0xd7)];_0x4a60e2+=0x1){if(_0x587eb6[_0x4a60e2]==='(')_0x1abad0+=0x1;if(_0x587eb6[_0x4a60e2]===')')_0x1abad0-=0x1;if(_0x1abad0===0x0&&_0x4a60e2<_0x587eb6['length']-0x1){_0x40a9a9=![];break;}}if(!_0x40a9a9||_0x1abad0!==0x0)break;_0x587eb6=_0x587eb6[_0x345a4b(0xbb)](0x1,-0x1)[_0x345a4b(0xe0)]();}return _0x587eb6;}
@@ -1 +1 @@
1
- function a263_0x1285(_0x52f21f,_0x287cdd){_0x52f21f=_0x52f21f-0x1be;const _0x2b4dad=a263_0x2b4d();let _0x1285bd=_0x2b4dad[_0x52f21f];return _0x1285bd;}const a263_0x429786=a263_0x1285;(function(_0x5237fa,_0x5eb307){const _0x442107=a263_0x1285,_0xc03e6b=_0x5237fa();while(!![]){try{const _0x554f01=-parseInt(_0x442107(0x1c9))/0x1*(parseInt(_0x442107(0x1c2))/0x2)+parseInt(_0x442107(0x1be))/0x3+parseInt(_0x442107(0x1c6))/0x4+parseInt(_0x442107(0x1c5))/0x5*(-parseInt(_0x442107(0x1c0))/0x6)+parseInt(_0x442107(0x1cd))/0x7*(-parseInt(_0x442107(0x1cb))/0x8)+-parseInt(_0x442107(0x1bf))/0x9*(-parseInt(_0x442107(0x1c7))/0xa)+-parseInt(_0x442107(0x1c1))/0xb*(-parseInt(_0x442107(0x1c4))/0xc);if(_0x554f01===_0x5eb307)break;else _0xc03e6b['push'](_0xc03e6b['shift']());}catch(_0x53f806){_0xc03e6b['push'](_0xc03e6b['shift']());}}}(a263_0x2b4d,0x1f142));import{resolve}from'node:path';function a263_0x2b4d(){const _0x5d1a69=['sql','8GVhKQE','.rabetbase','1664747vXXcal','358878QhnCEM','1521DZvOfQ','116526wQJJdp','3443TBBSdZ','26vOumXU','sql-trash','13044tdPvmu','25UHyltb','161464TSHuQe','8080ndeFhY','sql.lock.json','13427UEyyUx'];a263_0x2b4d=function(){return _0x5d1a69;};return a263_0x2b4d();}import{findProjectRootDirectory}from'../../context.js';const DOT_DIR=a263_0x429786(0x1cc),LOCK_FILE_NAME=a263_0x429786(0x1c8),TRASH_DIR_NAME=a263_0x429786(0x1c3);export function loadSqlProjectConfig(_0x4dadf7,_0x11a07a){const _0x45a2ed=a263_0x429786,_0xa09632=resolve(_0x11a07a??findProjectRootDirectory()),_0x5c8be6=DOT_DIR+'/sql',_0x25deda=_0x5c8be6+'/'+_0x4dadf7;return{'projectRoot':_0xa09632,'appCode':_0x4dadf7,'sqlWorkspaceRoot':_0x5c8be6,'sqlRoot':_0x25deda,'sqlRootDir':resolve(_0xa09632,DOT_DIR,_0x45a2ed(0x1ca),_0x4dadf7),'lockFilePath':resolve(_0xa09632,DOT_DIR,LOCK_FILE_NAME),'trashDir':resolve(_0xa09632,DOT_DIR,TRASH_DIR_NAME)};}
1
+ const a262_0x516bc3=a262_0x441f;(function(_0x4d0020,_0x5adace){const _0x579fca=a262_0x441f,_0x3b6db4=_0x4d0020();while(!![]){try{const _0x5400d3=-parseInt(_0x579fca(0xdd))/0x1+parseInt(_0x579fca(0xeb))/0x2*(parseInt(_0x579fca(0xdf))/0x3)+parseInt(_0x579fca(0xe3))/0x4*(parseInt(_0x579fca(0xe8))/0x5)+-parseInt(_0x579fca(0xe5))/0x6+parseInt(_0x579fca(0xea))/0x7*(-parseInt(_0x579fca(0xde))/0x8)+parseInt(_0x579fca(0xe0))/0x9*(-parseInt(_0x579fca(0xdc))/0xa)+parseInt(_0x579fca(0xe6))/0xb*(parseInt(_0x579fca(0xe2))/0xc);if(_0x5400d3===_0x5adace)break;else _0x3b6db4['push'](_0x3b6db4['shift']());}catch(_0x4dda3c){_0x3b6db4['push'](_0x3b6db4['shift']());}}}(a262_0x8ff6,0x4af9a));function a262_0x441f(_0x128f26,_0x25e77e){_0x128f26=_0x128f26-0xdc;const _0x8ff6be=a262_0x8ff6();let _0x441fee=_0x8ff6be[_0x128f26];return _0x441fee;}import{resolve}from'node:path';import{findProjectRootDirectory}from'../../context.js';const DOT_DIR='.rabetbase',LOCK_FILE_NAME=a262_0x516bc3(0xe1),TRASH_DIR_NAME=a262_0x516bc3(0xe9);export function loadSqlProjectConfig(_0x40686a,_0x4165fd){const _0x2d0b33=a262_0x516bc3,_0x4c84d7=resolve(_0x4165fd??findProjectRootDirectory()),_0x47bf27=DOT_DIR+_0x2d0b33(0xe7),_0x372d00=_0x47bf27+'/'+_0x40686a;return{'projectRoot':_0x4c84d7,'appCode':_0x40686a,'sqlWorkspaceRoot':_0x47bf27,'sqlRoot':_0x372d00,'sqlRootDir':resolve(_0x4c84d7,DOT_DIR,_0x2d0b33(0xe4),_0x40686a),'lockFilePath':resolve(_0x4c84d7,DOT_DIR,LOCK_FILE_NAME),'trashDir':resolve(_0x4c84d7,DOT_DIR,TRASH_DIR_NAME)};}function a262_0x8ff6(){const _0xde32b7=['260732JCwsKZ','sql','3585870tOKQTk','30283iPgegL','/sql','15XRqJzy','sql-trash','8421jYrwql','50356hejcZy','20NqvmRk','416219QdTcTP','128pITZTI','33zLnIjx','295038QkbHmU','sql.lock.json','4068TxBHcg'];a262_0x8ff6=function(){return _0xde32b7;};return a262_0x8ff6();}
@@ -1 +1 @@
1
- function a264_0x5e98(_0x2e712a,_0x23b634){_0x2e712a=_0x2e712a-0x15a;const _0x10dcc8=a264_0x10dc();let _0x5e989e=_0x10dcc8[_0x2e712a];return _0x5e989e;}(function(_0x6dd2d5,_0x5a2da8){const _0x3f8602=a264_0x5e98,_0x36d87e=_0x6dd2d5();while(!![]){try{const _0x1e1017=-parseInt(_0x3f8602(0x171))/0x1*(-parseInt(_0x3f8602(0x161))/0x2)+parseInt(_0x3f8602(0x15d))/0x3*(parseInt(_0x3f8602(0x173))/0x4)+parseInt(_0x3f8602(0x16b))/0x5*(-parseInt(_0x3f8602(0x16a))/0x6)+-parseInt(_0x3f8602(0x170))/0x7*(parseInt(_0x3f8602(0x16f))/0x8)+-parseInt(_0x3f8602(0x163))/0x9+-parseInt(_0x3f8602(0x175))/0xa+parseInt(_0x3f8602(0x160))/0xb*(parseInt(_0x3f8602(0x15c))/0xc);if(_0x1e1017===_0x5a2da8)break;else _0x36d87e['push'](_0x36d87e['shift']());}catch(_0x19c41d){_0x36d87e['push'](_0x36d87e['shift']());}}}(a264_0x10dc,0x55a0c));import{readdir,stat}from'node:fs/promises';import{extname,join,relative}from'node:path';import{buildDefaultSqlFileName,buildSqlRelativePath}from'./utils.js';function extensionToMode(_0x5874db){const _0xf1a7fa=a264_0x5e98;if(_0x5874db==='.sql')return _0xf1a7fa(0x15f);if(_0x5874db===_0xf1a7fa(0x176))return _0xf1a7fa(0x15e);return undefined;}async function scanSqlFilesRecursively(_0x44aec6,_0x4707dd){const _0x49f127=a264_0x5e98,_0x1536f6=[];try{const _0x468d00=await readdir(_0x44aec6,{'withFileTypes':!![]});for(const _0x335084 of _0x468d00){const _0x5c2956=join(_0x44aec6,_0x335084[_0x49f127(0x167)]);if(_0x335084[_0x49f127(0x16d)]()){_0x1536f6['push'](...await scanSqlFilesRecursively(_0x5c2956,_0x4707dd));continue;}if(!_0x335084[_0x49f127(0x16c)]())continue;const _0x14eaa6=extname(_0x335084[_0x49f127(0x167)])[_0x49f127(0x179)](),_0x5f468a=extensionToMode(_0x14eaa6);if(!_0x5f468a)continue;const _0x108bc6=relative(_0x4707dd,_0x5c2956)[_0x49f127(0x172)](/\\/g,'/'),_0x3c7394=_0x108bc6['split']('/')['filter'](Boolean),_0x2e7730=parseSqlPath(_0x3c7394,_0x335084[_0x49f127(0x167)],_0x14eaa6);if(!_0x2e7730)continue;_0x1536f6[_0x49f127(0x164)]({'sqlCode':_0x2e7730['sqlCode'],'sqlName':_0x2e7730[_0x49f127(0x177)],'dbDirectory':_0x3c7394[0x0],'filePath':_0x5c2956,'relativePath':_0x108bc6,'lockKey':_0x2e7730[_0x49f127(0x15b)],'mode':_0x5f468a});}}catch(_0x3c00c7){if(_0x3c00c7[_0x49f127(0x15a)]!=='ENOENT')throw _0x3c00c7;}return _0x1536f6;}export async function scanLocalSqlQueries(_0x13d414){const _0x480541=a264_0x5e98;return scanSqlFilesRecursively(_0x13d414[_0x480541(0x178)],_0x13d414[_0x480541(0x178)]);}export function resolveLocalSqlFilePath(_0x56c09e,_0x289ed2,_0x293b69){const _0x45ffe9=a264_0x5e98,_0xe1c789=_0x293b69?.[_0x45ffe9(0x166)]||(_0x293b69?.['sqlName']||_0x293b69?.[_0x45ffe9(0x162)]?buildSqlRelativePath(_0x289ed2,_0x293b69?.[_0x45ffe9(0x177)],_0x293b69?.[_0x45ffe9(0x162)],_0x293b69?.[_0x45ffe9(0x168)]||_0x45ffe9(0x15f),_0x293b69?.[_0x45ffe9(0x16e)]):buildDefaultSqlFileName(_0x289ed2,_0x293b69?.[_0x45ffe9(0x168)]||_0x45ffe9(0x15f)));return join(_0x56c09e['sqlRootDir'],_0xe1c789);}export async function directoryExists(_0x70b13f){const _0x4074f6=a264_0x5e98;try{const _0x1656bd=await stat(_0x70b13f);return _0x1656bd[_0x4074f6(0x16d)]();}catch{return![];}}function a264_0x10dc(){const _0x571162=['6231303WGtnvD','push','test','path','name','mode','length','14340DbjeCz','275hDjqig','isFile','isDirectory','dbId','11080uIAqcR','1561uypMys','53hetXcw','replace','3984UGOKug','indexOf','2201690yNDYsz','.xml','sqlName','sqlRootDir','toLowerCase','slice','code','sqlCode','48wMZfzp','1563zOBuUE','mybatisXml','sql','3079263JzefNE','2450DSXsHI','dbName'];a264_0x10dc=function(){return _0x571162;};return a264_0x10dc();}function parseSqlPath(_0x3fbaff,_0x4ba993,_0x530a63){const _0x2d2acd=a264_0x5e98,_0x16f172=_0x4ba993[_0x2d2acd(0x17a)](0x0,-_0x530a63[_0x2d2acd(0x169)]);if(_0x3fbaff[_0x2d2acd(0x169)]<0x2)return null;const _0x31d7dd=_0x16f172[_0x2d2acd(0x174)]('_');if(_0x31d7dd<=0x0||_0x31d7dd>=_0x16f172[_0x2d2acd(0x169)]-0x1)return null;const _0xdae210=_0x16f172['slice'](0x0,_0x31d7dd);if(!isLikelySqlCode(_0xdae210))return null;return{'sqlCode':_0xdae210,'sqlName':_0x16f172[_0x2d2acd(0x17a)](_0x31d7dd+0x1)};}function isLikelySqlCode(_0x199ff9){const _0x23e445=a264_0x5e98;return/^[A-Za-z0-9-]+-[A-Za-z0-9-]+$/[_0x23e445(0x165)](_0x199ff9);}
1
+ (function(_0x3511e2,_0x188187){const _0x98a1f1=a263_0x55c3,_0x748f36=_0x3511e2();while(!![]){try{const _0x554654=parseInt(_0x98a1f1(0x11c))/0x1*(parseInt(_0x98a1f1(0x124))/0x2)+parseInt(_0x98a1f1(0x133))/0x3+-parseInt(_0x98a1f1(0x12a))/0x4*(parseInt(_0x98a1f1(0x12f))/0x5)+-parseInt(_0x98a1f1(0x11d))/0x6+parseInt(_0x98a1f1(0x139))/0x7+-parseInt(_0x98a1f1(0x12e))/0x8+parseInt(_0x98a1f1(0x134))/0x9;if(_0x554654===_0x188187)break;else _0x748f36['push'](_0x748f36['shift']());}catch(_0x5a0cb3){_0x748f36['push'](_0x748f36['shift']());}}}(a263_0x3da0,0xed183));import{readdir,stat}from'node:fs/promises';import{extname,join,relative}from'node:path';import{buildDefaultSqlFileName,buildSqlRelativePath}from'./utils.js';function extensionToMode(_0x17f568){const _0x2b802d=a263_0x55c3;if(_0x17f568===_0x2b802d(0x136))return'sql';if(_0x17f568===_0x2b802d(0x130))return _0x2b802d(0x12b);return undefined;}async function scanSqlFilesRecursively(_0x1c5888,_0x219bbb){const _0x2a74ca=a263_0x55c3,_0xa56251=[];try{const _0x1b5187=await readdir(_0x1c5888,{'withFileTypes':!![]});for(const _0xbc2568 of _0x1b5187){const _0xc4011b=join(_0x1c5888,_0xbc2568['name']);if(_0xbc2568[_0x2a74ca(0x138)]()){_0xa56251[_0x2a74ca(0x135)](...await scanSqlFilesRecursively(_0xc4011b,_0x219bbb));continue;}if(!_0xbc2568[_0x2a74ca(0x123)]())continue;const _0x352e75=extname(_0xbc2568['name'])[_0x2a74ca(0x125)](),_0x1105da=extensionToMode(_0x352e75);if(!_0x1105da)continue;const _0x3ab34e=relative(_0x219bbb,_0xc4011b)[_0x2a74ca(0x137)](/\\/g,'/'),_0x2fa643=_0x3ab34e[_0x2a74ca(0x12c)]('/')['filter'](Boolean),_0x5e3787=parseSqlPath(_0x2fa643,_0xbc2568['name'],_0x352e75);if(!_0x5e3787)continue;_0xa56251['push']({'sqlCode':_0x5e3787['sqlCode'],'sqlName':_0x5e3787[_0x2a74ca(0x120)],'dbDirectory':_0x2fa643[0x0],'filePath':_0xc4011b,'relativePath':_0x3ab34e,'lockKey':_0x5e3787[_0x2a74ca(0x128)],'mode':_0x1105da});}}catch(_0x4d3411){if(_0x4d3411[_0x2a74ca(0x131)]!==_0x2a74ca(0x11e))throw _0x4d3411;}return _0xa56251;}export async function scanLocalSqlQueries(_0x49d5af){const _0x51da08=a263_0x55c3;return scanSqlFilesRecursively(_0x49d5af[_0x51da08(0x129)],_0x49d5af[_0x51da08(0x129)]);}export function resolveLocalSqlFilePath(_0x41aae5,_0x4e73b5,_0x3f2612){const _0x5ad132=a263_0x55c3,_0x1187f4=_0x3f2612?.['path']||(_0x3f2612?.[_0x5ad132(0x120)]||_0x3f2612?.[_0x5ad132(0x132)]?buildSqlRelativePath(_0x4e73b5,_0x3f2612?.['sqlName'],_0x3f2612?.[_0x5ad132(0x132)],_0x3f2612?.['mode']||_0x5ad132(0x126),_0x3f2612?.[_0x5ad132(0x12d)]):buildDefaultSqlFileName(_0x4e73b5,_0x3f2612?.[_0x5ad132(0x121)]||'sql'));return join(_0x41aae5[_0x5ad132(0x129)],_0x1187f4);}export async function directoryExists(_0x57eb18){const _0x2eca26=a263_0x55c3;try{const _0x1b2af6=await stat(_0x57eb18);return _0x1b2af6[_0x2eca26(0x138)]();}catch{return![];}}function parseSqlPath(_0x31f9fc,_0x3798ee,_0x22136f){const _0x3f5e6e=a263_0x55c3,_0x3b99eb=_0x3798ee[_0x3f5e6e(0x127)](0x0,-_0x22136f['length']);if(_0x31f9fc[_0x3f5e6e(0x122)]<0x2)return null;const _0x595459=_0x3b99eb[_0x3f5e6e(0x11f)]('_');if(_0x595459<=0x0||_0x595459>=_0x3b99eb[_0x3f5e6e(0x122)]-0x1)return null;const _0x56a019=_0x3b99eb[_0x3f5e6e(0x127)](0x0,_0x595459);if(!isLikelySqlCode(_0x56a019))return null;return{'sqlCode':_0x56a019,'sqlName':_0x3b99eb[_0x3f5e6e(0x127)](_0x595459+0x1)};}function isLikelySqlCode(_0x5e814e){const _0x1c089b=a263_0x55c3;return/^[A-Za-z0-9-]+-[A-Za-z0-9-]+$/[_0x1c089b(0x11b)](_0x5e814e);}function a263_0x55c3(_0x4d6cb6,_0x3cddb7){_0x4d6cb6=_0x4d6cb6-0x11b;const _0x3da0a5=a263_0x3da0();let _0x55c318=_0x3da0a5[_0x4d6cb6];return _0x55c318;}function a263_0x3da0(){const _0x1989f6=['isDirectory','2106041vONIbO','test','33716Dkneiw','7806204WJYAPo','ENOENT','indexOf','sqlName','mode','length','isFile','34oiBQcR','toLowerCase','sql','slice','sqlCode','sqlRootDir','4FDpTwh','mybatisXml','split','dbId','2217000JbeaEu','3372065HTsRiJ','.xml','code','dbName','579681JiZwkH','19408041omrPbL','push','.sql','replace'];a263_0x3da0=function(){return _0x1989f6;};return a263_0x3da0();}
@@ -1 +1 @@
1
- (function(_0x469a86,_0x29816d){const _0x1a2efe=a265_0x1f7d,_0x2aa4db=_0x469a86();while(!![]){try{const _0x233338=parseInt(_0x1a2efe(0x1c1))/0x1+-parseInt(_0x1a2efe(0x1bb))/0x2*(-parseInt(_0x1a2efe(0x1c2))/0x3)+parseInt(_0x1a2efe(0x1ba))/0x4+-parseInt(_0x1a2efe(0x1bd))/0x5*(parseInt(_0x1a2efe(0x1b9))/0x6)+-parseInt(_0x1a2efe(0x1c5))/0x7+parseInt(_0x1a2efe(0x1c3))/0x8+-parseInt(_0x1a2efe(0x1bc))/0x9*(parseInt(_0x1a2efe(0x1bf))/0xa);if(_0x233338===_0x29816d)break;else _0x2aa4db['push'](_0x2aa4db['shift']());}catch(_0x1fedc6){_0x2aa4db['push'](_0x2aa4db['shift']());}}}(a265_0x22ad,0xafdda));import{readFile}from'node:fs/promises';import a265_0x343bdd from'node:crypto';export function computeSqlContentHash(_0x5506be){const _0x289041=a265_0x1f7d;return a265_0x343bdd[_0x289041(0x1be)]('md5')['update'](_0x5506be)['digest'](_0x289041(0x1c4));}function a265_0x1f7d(_0xcc44a2,_0x52c2e2){_0xcc44a2=_0xcc44a2-0x1b9;const _0x22ad68=a265_0x22ad();let _0x1f7d2c=_0x22ad68[_0xcc44a2];return _0x1f7d2c;}export async function computeSqlFileHash(_0x3ba03d){const _0x232089=a265_0x1f7d,_0x3af5ea=await readFile(_0x3ba03d,_0x232089(0x1c0));return computeSqlContentHash(_0x3af5ea);}function a265_0x22ad(){const _0x2db39f=['48191cSAytH','519msMDMa','9389440SOOjRU','hex','8081563OUeWtf','535002lRPrKf','435040OEmZlP','10910jNxAxU','252CSFWFW','5cAHdXO','createHash','110830dFjoLY','utf8'];a265_0x22ad=function(){return _0x2db39f;};return a265_0x22ad();}
1
+ (function(_0x1145f5,_0xf0ebd3){const _0x31c621=a264_0x283e,_0x2ba634=_0x1145f5();while(!![]){try{const _0x5d883a=parseInt(_0x31c621(0x110))/0x1*(parseInt(_0x31c621(0x112))/0x2)+-parseInt(_0x31c621(0x116))/0x3*(-parseInt(_0x31c621(0x115))/0x4)+-parseInt(_0x31c621(0x111))/0x5+-parseInt(_0x31c621(0x10d))/0x6*(-parseInt(_0x31c621(0x10e))/0x7)+-parseInt(_0x31c621(0x113))/0x8+parseInt(_0x31c621(0x114))/0x9*(parseInt(_0x31c621(0x117))/0xa)+-parseInt(_0x31c621(0x10a))/0xb;if(_0x5d883a===_0xf0ebd3)break;else _0x2ba634['push'](_0x2ba634['shift']());}catch(_0x5d178d){_0x2ba634['push'](_0x2ba634['shift']());}}}(a264_0x472f,0x324b7));import{readFile}from'node:fs/promises';function a264_0x472f(){const _0x162982=['32qesaiD','85539IsumaH','250060snSnka','update','6017671VyFWry','md5','createHash','12vnXZnp','1428077MZSMfv','digest','202409XaEten','421060XRwxum','2WQSVxK','3210808eXvAKT','144ZdqXHG'];a264_0x472f=function(){return _0x162982;};return a264_0x472f();}function a264_0x283e(_0x5c96f4,_0x4d9f65){_0x5c96f4=_0x5c96f4-0x109;const _0x472f92=a264_0x472f();let _0x283e2c=_0x472f92[_0x5c96f4];return _0x283e2c;}import a264_0xfe3f71 from'node:crypto';export function computeSqlContentHash(_0x28c662){const _0x5f1213=a264_0x283e;return a264_0xfe3f71[_0x5f1213(0x10c)](_0x5f1213(0x10b))[_0x5f1213(0x109)](_0x28c662)[_0x5f1213(0x10f)]('hex');}export async function computeSqlFileHash(_0x12c015){const _0x27545e=await readFile(_0x12c015,'utf8');return computeSqlContentHash(_0x27545e);}
@@ -1 +1 @@
1
- (function(_0x23d5d1,_0xb802c1){const _0x5e1fae=a266_0x4533,_0x53cd77=_0x23d5d1();while(!![]){try{const _0x19d563=-parseInt(_0x5e1fae(0xcc))/0x1+-parseInt(_0x5e1fae(0xbb))/0x2+-parseInt(_0x5e1fae(0xba))/0x3+parseInt(_0x5e1fae(0xce))/0x4*(parseInt(_0x5e1fae(0xc8))/0x5)+parseInt(_0x5e1fae(0xc6))/0x6*(-parseInt(_0x5e1fae(0xca))/0x7)+-parseInt(_0x5e1fae(0xc2))/0x8*(parseInt(_0x5e1fae(0xbf))/0x9)+-parseInt(_0x5e1fae(0xd0))/0xa*(-parseInt(_0x5e1fae(0xcb))/0xb);if(_0x19d563===_0xb802c1)break;else _0x53cd77['push'](_0x53cd77['shift']());}catch(_0x37d57a){_0x53cd77['push'](_0x53cd77['shift']());}}}(a266_0x47d0,0x99824));function a266_0x4533(_0x9bbd4,_0x3b971a){_0x9bbd4=_0x9bbd4-0xba;const _0x47d0f0=a266_0x47d0();let _0x453332=_0x47d0f0[_0x9bbd4];return _0x453332;}import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';export function createEmptySqlLock(){return{'apps':{}};}export function ensureSqlLockScope(_0x2748a0,_0x173fd7,_0x495a26,_0x3bfc3f){const _0xa894da=a266_0x4533,_0xbd19c7=_0x2748a0??createEmptySqlLock();let _0x3388d2=_0xbd19c7['apps'][_0x173fd7];if(!_0x3388d2)return _0x3388d2={'sqlRoot':_0x495a26,'lastSync':'','sqls':{}},_0xbd19c7[_0xa894da(0xbd)][_0x173fd7]=_0x3388d2,{'lockData':_0xbd19c7,'appLock':_0x3388d2};if(!_0x3388d2[_0xa894da(0xc0)])_0x3388d2['sqlRoot']=_0x495a26;else{if(_0x3388d2[_0xa894da(0xc0)]!==_0x495a26)throw new Error(_0x3bfc3f+_0xa894da(0xc3)+_0x495a26+_0xa894da(0xc9)+_0x3388d2[_0xa894da(0xc0)]+_0xa894da(0xc4)+_0xa894da(0xcf));}return!_0x3388d2[_0xa894da(0xcd)]&&(_0x3388d2[_0xa894da(0xcd)]={}),!_0x3388d2[_0xa894da(0xc1)]&&(_0x3388d2[_0xa894da(0xc1)]=''),{'lockData':_0xbd19c7,'appLock':_0x3388d2};}function a266_0x47d0(){const _0x32b83b=['1652406WIVHJH','Failed\x20to\x20read\x20SQL\x20lock\x20file:\x20','apps','utf8','4816953ZXmmkJ','sqlRoot','lastSync','8hUiFUf',':\x20sqlRoot\x20mismatch\x20—\x20current\x20\x22','\x22.\x20','code','60870ipzzCR','parse','5EIugHn','\x22\x20vs\x20lock\x20\x22','588eZNWxX','44XLVCyU','413575nHuWQM','sqls','4194404LUgTFY','Check\x20.rabetbase/sql.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','6088810TtkrkD','684534xEgHwi'];a266_0x47d0=function(){return _0x32b83b;};return a266_0x47d0();}export async function readSqlLockFile(_0x293b7f){const _0x518cbf=a266_0x4533;try{const _0x2f9c4c=await readFile(_0x293b7f,_0x518cbf(0xbe));return JSON[_0x518cbf(0xc7)](_0x2f9c4c);}catch(_0x3a4c75){if(_0x3a4c75[_0x518cbf(0xc5)]==='ENOENT')return null;throw new Error(_0x518cbf(0xbc)+String(_0x3a4c75));}}export async function writeSqlLockFile(_0x298c59,_0x3f9316){await mkdir(dirname(_0x298c59),{'recursive':!![]}),await writeFile(_0x298c59,JSON['stringify'](_0x3f9316,null,0x2),'utf8');}
1
+ function a265_0xe430(){const _0x3761f4=['\x22\x20vs\x20lock\x20\x22','13475wwOIEf',':\x20sqlRoot\x20mismatch\x20—\x20current\x20\x22','\x22.\x20','lastSync','624667KlHZNL','utf8','stringify','2674475bOZTGt','1922624JYADYr','7237464cbBIHi','Failed\x20to\x20read\x20SQL\x20lock\x20file:\x20','sqlRoot','apps','24303XYBIwK','322578LWbquv','ENOENT','Check\x20.rabetbase/sql.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','code','142ryFhvE','sqls'];a265_0xe430=function(){return _0x3761f4;};return a265_0xe430();}(function(_0x5585d6,_0x11195e){const _0x329adc=a265_0x24ec,_0x12bb93=_0x5585d6();while(!![]){try{const _0x2439b4=parseInt(_0x329adc(0x119))/0x1+-parseInt(_0x329adc(0x112))/0x2*(-parseInt(_0x329adc(0x10d))/0x3)+-parseInt(_0x329adc(0x11d))/0x4+parseInt(_0x329adc(0x11c))/0x5+parseInt(_0x329adc(0x10e))/0x6+-parseInt(_0x329adc(0x115))/0x7+-parseInt(_0x329adc(0x11e))/0x8;if(_0x2439b4===_0x11195e)break;else _0x12bb93['push'](_0x12bb93['shift']());}catch(_0x465b72){_0x12bb93['push'](_0x12bb93['shift']());}}}(a265_0xe430,0x61f50));import{mkdir,readFile,writeFile}from'node:fs/promises';function a265_0x24ec(_0x5cdeff,_0x3e6cf4){_0x5cdeff=_0x5cdeff-0x10b;const _0xe430ca=a265_0xe430();let _0x24ec71=_0xe430ca[_0x5cdeff];return _0x24ec71;}import{dirname}from'node:path';export function createEmptySqlLock(){return{'apps':{}};}export function ensureSqlLockScope(_0x3afda0,_0x57ad47,_0x3d85ca,_0x5245cd){const _0x4e2f8f=a265_0x24ec,_0x58ee44=_0x3afda0??createEmptySqlLock();let _0x40d0d4=_0x58ee44[_0x4e2f8f(0x10c)][_0x57ad47];if(!_0x40d0d4)return _0x40d0d4={'sqlRoot':_0x3d85ca,'lastSync':'','sqls':{}},_0x58ee44[_0x4e2f8f(0x10c)][_0x57ad47]=_0x40d0d4,{'lockData':_0x58ee44,'appLock':_0x40d0d4};if(!_0x40d0d4[_0x4e2f8f(0x10b)])_0x40d0d4['sqlRoot']=_0x3d85ca;else{if(_0x40d0d4[_0x4e2f8f(0x10b)]!==_0x3d85ca)throw new Error(_0x5245cd+_0x4e2f8f(0x116)+_0x3d85ca+_0x4e2f8f(0x114)+_0x40d0d4['sqlRoot']+_0x4e2f8f(0x117)+_0x4e2f8f(0x110));}return!_0x40d0d4[_0x4e2f8f(0x113)]&&(_0x40d0d4[_0x4e2f8f(0x113)]={}),!_0x40d0d4['lastSync']&&(_0x40d0d4[_0x4e2f8f(0x118)]=''),{'lockData':_0x58ee44,'appLock':_0x40d0d4};}export async function readSqlLockFile(_0x69a4b9){const _0x13adb9=a265_0x24ec;try{const _0x35aba1=await readFile(_0x69a4b9,_0x13adb9(0x11a));return JSON['parse'](_0x35aba1);}catch(_0x2561de){if(_0x2561de[_0x13adb9(0x111)]===_0x13adb9(0x10f))return null;throw new Error(_0x13adb9(0x11f)+String(_0x2561de));}}export async function writeSqlLockFile(_0x135525,_0x31f9a9){const _0x135526=a265_0x24ec;await mkdir(dirname(_0x135525),{'recursive':!![]}),await writeFile(_0x135525,JSON[_0x135526(0x11b)](_0x31f9a9,null,0x2),_0x135526(0x11a));}
@@ -1 +1 @@
1
- (function(_0x3297ed,_0x2dd50b){const _0x14c5b3=a268_0x5beb,_0x4209ae=_0x3297ed();while(!![]){try{const _0x298168=-parseInt(_0x14c5b3(0x1b5))/0x1+parseInt(_0x14c5b3(0x1c0))/0x2*(-parseInt(_0x14c5b3(0x1bd))/0x3)+parseInt(_0x14c5b3(0x1c2))/0x4*(-parseInt(_0x14c5b3(0x1bf))/0x5)+-parseInt(_0x14c5b3(0x1b2))/0x6+-parseInt(_0x14c5b3(0x1c3))/0x7+-parseInt(_0x14c5b3(0x1ba))/0x8+parseInt(_0x14c5b3(0x1be))/0x9;if(_0x298168===_0x2dd50b)break;else _0x4209ae['push'](_0x4209ae['shift']());}catch(_0x536829){_0x4209ae['push'](_0x4209ae['shift']());}}}(a268_0x2032,0x4b86f));function a268_0x5beb(_0x25d7b3,_0x195f4d){_0x25d7b3=_0x25d7b3-0x1b2;const _0x2032a7=a268_0x2032();let _0x5beb3d=_0x2032a7[_0x25d7b3];return _0x5beb3d;}export function detectSqlMode(_0x2fab15){const _0x1af23e=a268_0x5beb,_0x544d75=_0x2fab15[_0x1af23e(0x1b7)]();if(/^<(select|insert|update|delete)\b/i[_0x1af23e(0x1b8)](_0x544d75))return _0x1af23e(0x1bb);return _0x1af23e(0x1b3);}export function getSqlFileExtension(_0x3f09f2){const _0x318782=a268_0x5beb;return _0x3f09f2==='mybatisXml'?_0x318782(0x1c1):_0x318782(0x1b9);}export function buildDefaultSqlFileName(_0x1dc3aa,_0x1255e2){return''+_0x1dc3aa+getSqlFileExtension(_0x1255e2);}export function sanitizeSqlPathSegment(_0x255b69,_0x4aec52){const _0x4aaae0=a268_0x5beb,_0x572e9a=String(_0x255b69??'')[_0x4aaae0(0x1b4)](),_0x2741dd=_0x572e9a[_0x4aaae0(0x1c4)](/[<>:"/\\|?*\u0000-\u001F]/g,'-')[_0x4aaae0(0x1c4)](/\s+/g,'-')[_0x4aaae0(0x1c4)](/-+/g,'-')[_0x4aaae0(0x1c4)](/^\.+/,'')[_0x4aaae0(0x1c4)](/\.+$/,'')[_0x4aaae0(0x1c4)](/^-+/,'')[_0x4aaae0(0x1c4)](/-+$/,'');return _0x2741dd||_0x4aec52;}function a268_0x2032(){const _0x14eddf=['2660576BvjtSk','mybatisXml','unknown-db','84EzmDnz','17394201RmMZYp','49485OybxEA','43288puhonJ','.xml','12HEtPlR','765961FUwcao','replace','2245134oDNqAL','sql','trim','171423BgESyN','db-','trimStart','test','.sql'];a268_0x2032=function(){return _0x14eddf;};return a268_0x2032();}export function buildDbDirectoryName(_0x2a49fb,_0x4c58ad){const _0x43f438=a268_0x5beb;return sanitizeSqlPathSegment(_0x2a49fb,_0x4c58ad!=null?_0x43f438(0x1b6)+_0x4c58ad:_0x43f438(0x1bc));}export function buildSqlRelativePath(_0x3a7765,_0x4cd59d,_0x48bcbf,_0x445ae3,_0x586548){const _0x3037d6=buildDbDirectoryName(_0x48bcbf,_0x586548),_0x2f5e75=sanitizeSqlPathSegment(_0x3a7765,'unknown-sql'),_0x43fb36=sanitizeSqlPathSegment(_0x4cd59d,_0x2f5e75);return _0x3037d6+'/'+_0x2f5e75+'_'+_0x43fb36+getSqlFileExtension(_0x445ae3);}
1
+ (function(_0x434ef1,_0x2f5f58){const _0x484cd6=a267_0x1277,_0x241e2b=_0x434ef1();while(!![]){try{const _0x5623ca=parseInt(_0x484cd6(0x164))/0x1*(parseInt(_0x484cd6(0x16b))/0x2)+-parseInt(_0x484cd6(0x16d))/0x3*(parseInt(_0x484cd6(0x166))/0x4)+parseInt(_0x484cd6(0x16a))/0x5+-parseInt(_0x484cd6(0x167))/0x6+parseInt(_0x484cd6(0x165))/0x7+-parseInt(_0x484cd6(0x174))/0x8*(parseInt(_0x484cd6(0x16f))/0x9)+-parseInt(_0x484cd6(0x16c))/0xa*(-parseInt(_0x484cd6(0x171))/0xb);if(_0x5623ca===_0x2f5f58)break;else _0x241e2b['push'](_0x241e2b['shift']());}catch(_0x141a01){_0x241e2b['push'](_0x241e2b['shift']());}}}(a267_0x51ce,0x9c9ad));export function detectSqlMode(_0x18b82e){const _0xef4af1=_0x18b82e['trimStart']();if(/^<(select|insert|update|delete)\b/i['test'](_0xef4af1))return'mybatisXml';return'sql';}function a267_0x51ce(){const _0x360f1a=['1373145XAhWfk','74GdEkXn','114880qkqzan','1227lSkbkl','unknown-db','9ircHRJ','replace','2134PCYnxc','trim','mybatisXml','9283688yGZham','.xml','11213fQfoiZ','2453381egHBfa','10524rdMJEG','2344032jRwTWG','.sql','db-'];a267_0x51ce=function(){return _0x360f1a;};return a267_0x51ce();}export function getSqlFileExtension(_0x5dd1db){const _0x2388cf=a267_0x1277;return _0x5dd1db===_0x2388cf(0x173)?_0x2388cf(0x163):_0x2388cf(0x168);}export function buildDefaultSqlFileName(_0x3d75df,_0x1fcbf1){return''+_0x3d75df+getSqlFileExtension(_0x1fcbf1);}function a267_0x1277(_0x12e61e,_0xe45819){_0x12e61e=_0x12e61e-0x163;const _0x51cea6=a267_0x51ce();let _0x127714=_0x51cea6[_0x12e61e];return _0x127714;}export function sanitizeSqlPathSegment(_0x35c93c,_0x220de2){const _0x1194f9=a267_0x1277,_0x15b6ce=String(_0x35c93c??'')[_0x1194f9(0x172)](),_0x4bdbf1=_0x15b6ce[_0x1194f9(0x170)](/[<>:"/\\|?*\u0000-\u001F]/g,'-')[_0x1194f9(0x170)](/\s+/g,'-')[_0x1194f9(0x170)](/-+/g,'-')[_0x1194f9(0x170)](/^\.+/,'')[_0x1194f9(0x170)](/\.+$/,'')[_0x1194f9(0x170)](/^-+/,'')['replace'](/-+$/,'');return _0x4bdbf1||_0x220de2;}export function buildDbDirectoryName(_0x36c246,_0x56bc6c){const _0x322d17=a267_0x1277;return sanitizeSqlPathSegment(_0x36c246,_0x56bc6c!=null?_0x322d17(0x169)+_0x56bc6c:_0x322d17(0x16e));}export function buildSqlRelativePath(_0xebf0a3,_0xf3fb97,_0x556dc4,_0x3f67a5,_0x1c9aca){const _0x2b7d73=buildDbDirectoryName(_0x556dc4,_0x1c9aca),_0x568c87=sanitizeSqlPathSegment(_0xebf0a3,'unknown-sql'),_0x4c1ecb=sanitizeSqlPathSegment(_0xf3fb97,_0x568c87);return _0x2b7d73+'/'+_0x568c87+'_'+_0x4c1ecb+getSqlFileExtension(_0x3f67a5);}