@lovrabet/rabetbase-cli 2.4.4 → 2.4.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 (330) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/index.js +1 -1
  20. package/lib/commands/app/list.js +1 -1
  21. package/lib/commands/app/members-list.js +1 -1
  22. package/lib/commands/app/remote-directory.js +1 -1
  23. package/lib/commands/app/shared.js +1 -1
  24. package/lib/commands/app-config/delete.js +1 -1
  25. package/lib/commands/app-config/get.js +1 -1
  26. package/lib/commands/app-config/index.js +1 -1
  27. package/lib/commands/app-config/list.js +1 -1
  28. package/lib/commands/app-config/set.js +1 -1
  29. package/lib/commands/app-config/shared.js +1 -1
  30. package/lib/commands/auth/index.js +1 -1
  31. package/lib/commands/bff/create.js +1 -1
  32. package/lib/commands/bff/delete.js +1 -1
  33. package/lib/commands/bff/detail.js +1 -1
  34. package/lib/commands/bff/index.js +1 -1
  35. package/lib/commands/bff/list.js +1 -1
  36. package/lib/commands/bff/pull.js +1 -1
  37. package/lib/commands/bff/push.js +1 -1
  38. package/lib/commands/bff/status.js +1 -1
  39. package/lib/commands/cli-skill/index.js +1 -1
  40. package/lib/commands/cli-update.js +1 -1
  41. package/lib/commands/codegen/index.js +1 -1
  42. package/lib/commands/codegen/sdk.js +1 -1
  43. package/lib/commands/codegen/sql.js +1 -1
  44. package/lib/commands/common/app-registry.js +1 -1
  45. package/lib/commands/common/app-selector.js +1 -1
  46. package/lib/commands/common/async-task.js +1 -1
  47. package/lib/commands/common/dry-run.js +1 -1
  48. package/lib/commands/common/flags.d.ts +1 -0
  49. package/lib/commands/common/flags.js +1 -1
  50. package/lib/commands/common/local-file.js +1 -1
  51. package/lib/commands/common/validate.js +1 -1
  52. package/lib/commands/config/get.js +1 -1
  53. package/lib/commands/config/index.js +1 -1
  54. package/lib/commands/config/list.js +1 -1
  55. package/lib/commands/config/set.js +1 -1
  56. package/lib/commands/config/shared.js +1 -1
  57. package/lib/commands/data/filter.js +1 -1
  58. package/lib/commands/data/getOne.js +1 -1
  59. package/lib/commands/data/index.js +1 -1
  60. package/lib/commands/data/shared.js +1 -1
  61. package/lib/commands/dataset/business-group-update.js +1 -1
  62. package/lib/commands/{permit/index.d.ts → dataset/business-groups.d.ts} +1 -1
  63. package/lib/commands/dataset/business-groups.js +1 -0
  64. package/lib/commands/dataset/capability.js +1 -1
  65. package/lib/commands/dataset/delete.js +1 -1
  66. package/lib/commands/dataset/detail.js +1 -1
  67. package/lib/commands/dataset/extend-update.js +1 -1
  68. package/lib/commands/dataset/field-update.js +1 -1
  69. package/lib/commands/dataset/generate.js +1 -1
  70. package/lib/commands/dataset/index.js +1 -1
  71. package/lib/commands/dataset/list.js +1 -1
  72. package/lib/commands/dataset/operations.js +1 -1
  73. package/lib/commands/dataset/relation-audit.js +1 -1
  74. package/lib/commands/dataset/relation-create.js +1 -1
  75. package/lib/commands/dataset/relation-delete.js +1 -1
  76. package/lib/commands/dataset/relation-shared.js +1 -1
  77. package/lib/commands/dataset/relation-update.js +1 -1
  78. package/lib/commands/dataset/relations.js +1 -1
  79. package/lib/commands/dataset/rename.js +1 -1
  80. package/lib/commands/dataset/restore.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.d.ts +15 -1
  95. package/lib/commands/db/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/doctor.js +1 -1
  100. package/lib/commands/file/index.js +1 -1
  101. package/lib/commands/init/index.js +1 -1
  102. package/lib/commands/issue/index.js +1 -1
  103. package/lib/commands/issue/nudge.js +1 -1
  104. package/lib/commands/issue/report.js +1 -1
  105. package/lib/commands/issue/shared.js +1 -1
  106. package/lib/commands/kb/create.js +1 -1
  107. package/lib/commands/kb/delete.js +1 -1
  108. package/lib/commands/kb/detail.js +1 -1
  109. package/lib/commands/kb/index.js +1 -1
  110. package/lib/commands/kb/list.js +1 -1
  111. package/lib/commands/kb/shared.js +1 -1
  112. package/lib/commands/kb/update.js +1 -1
  113. package/lib/commands/logs/index.js +1 -1
  114. package/lib/commands/menu/asset-update.js +1 -1
  115. package/lib/commands/menu/delete.js +1 -1
  116. package/lib/commands/menu/external-link-create.js +1 -1
  117. package/lib/commands/menu/external-link-update.js +1 -1
  118. package/lib/commands/menu/group-create.js +1 -1
  119. package/lib/commands/menu/group-update.js +1 -1
  120. package/lib/commands/menu/index.js +1 -1
  121. package/lib/commands/menu/list.js +1 -1
  122. package/lib/commands/menu/move.js +1 -1
  123. package/lib/commands/menu/regroup-start.js +1 -1
  124. package/lib/commands/menu/rename.js +1 -1
  125. package/lib/commands/menu/shared/compare-table.js +1 -1
  126. package/lib/commands/menu/shared/delete-plan.js +1 -1
  127. package/lib/commands/menu/shared/facts.js +1 -1
  128. package/lib/commands/menu/shared/index.js +1 -1
  129. package/lib/commands/menu/shared/inquirer.js +1 -1
  130. package/lib/commands/menu/shared/local-pages.js +1 -1
  131. package/lib/commands/menu/shared/logic.js +1 -1
  132. package/lib/commands/menu/shared/mutations.js +1 -1
  133. package/lib/commands/menu/shared/service.js +1 -1
  134. package/lib/commands/menu/shared/sync-core.js +1 -1
  135. package/lib/commands/menu/shared/update-core.js +1 -1
  136. package/lib/commands/menu/shared/valid-url.js +1 -1
  137. package/lib/commands/menu/sync.js +1 -1
  138. package/lib/commands/notification/config-create.js +1 -1
  139. package/lib/commands/notification/config-delete.js +1 -1
  140. package/lib/commands/notification/config-list.js +1 -1
  141. package/lib/commands/notification/config-update.js +1 -1
  142. package/lib/commands/notification/index.js +1 -1
  143. package/lib/commands/notification/shared.js +1 -1
  144. package/lib/commands/ocr/index.js +1 -1
  145. package/lib/commands/page/generate-start.js +1 -1
  146. package/lib/commands/page/generate-status.js +1 -1
  147. package/lib/commands/page/index.js +1 -1
  148. package/lib/commands/page/pull.js +1 -1
  149. package/lib/commands/page/push.js +1 -1
  150. package/lib/commands/page/react/create.js +1 -1
  151. package/lib/commands/page/react/detail.js +1 -1
  152. package/lib/commands/page/react/list.js +1 -1
  153. package/lib/commands/page/react/publish.js +1 -1
  154. package/lib/commands/page/react/shared.js +1 -1
  155. package/lib/commands/page/react/syntax.js +1 -1
  156. package/lib/commands/page/react/template.js +1 -1
  157. package/lib/commands/page/react/update.js +1 -1
  158. package/lib/commands/page/relation-audit.js +1 -1
  159. package/lib/commands/page/restore.js +1 -1
  160. package/lib/commands/page/shared.js +1 -1
  161. package/lib/commands/page/standard-page-status.js +1 -1
  162. package/lib/commands/page/sync.js +1 -1
  163. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  164. package/lib/commands/project/create/format-elapsed.js +1 -1
  165. package/lib/commands/project/create/main.js +1 -1
  166. package/lib/commands/project/create/materialize-project-template.js +1 -1
  167. package/lib/commands/project/create/project-name.js +1 -1
  168. package/lib/commands/project/create/project-template-archive.js +1 -1
  169. package/lib/commands/project/create/project-template-path.js +1 -1
  170. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  171. package/lib/commands/project/create/use-format-code.js +1 -1
  172. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  173. package/lib/commands/project/index.js +1 -1
  174. package/lib/commands/project/upgrade.js +1 -1
  175. package/lib/commands/registry.js +1 -1
  176. package/lib/commands/role/delete.js +1 -1
  177. package/lib/commands/role/detail.js +1 -1
  178. package/lib/commands/role/index.js +1 -1
  179. package/lib/commands/role/list.js +1 -1
  180. package/lib/commands/role/shared.d.ts +15 -17
  181. package/lib/commands/role/shared.js +1 -1
  182. package/lib/commands/role/update.js +1 -1
  183. package/lib/commands/role/user-add.js +1 -1
  184. package/lib/commands/role/user-remove.js +1 -1
  185. package/lib/commands/role/user-resolve.js +1 -1
  186. package/lib/commands/run/index.js +1 -1
  187. package/lib/commands/schema.js +1 -1
  188. package/lib/commands/sql/create.js +1 -1
  189. package/lib/commands/sql/delete.js +1 -1
  190. package/lib/commands/sql/detail.js +1 -1
  191. package/lib/commands/sql/exec.js +1 -1
  192. package/lib/commands/sql/index.js +1 -1
  193. package/lib/commands/sql/list.js +1 -1
  194. package/lib/commands/sql/pull.js +1 -1
  195. package/lib/commands/sql/push.js +1 -1
  196. package/lib/commands/sql/shared.js +1 -1
  197. package/lib/commands/sql/status.js +1 -1
  198. package/lib/commands/sql/validate.js +1 -1
  199. package/lib/commands/task/index.js +1 -1
  200. package/lib/commands/task/status.js +1 -1
  201. package/lib/commands/tenant/index.js +1 -1
  202. package/lib/commands/tenant/members-list.js +1 -1
  203. package/lib/commands/tenant/shared.js +1 -1
  204. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  205. package/lib/commands/user-account/index.js +1 -1
  206. package/lib/commands/workspace/add.js +1 -1
  207. package/lib/commands/workspace/index.js +1 -1
  208. package/lib/commands/workspace/remove.js +1 -1
  209. package/lib/config/schema.js +1 -1
  210. package/lib/constant/cdn.js +1 -1
  211. package/lib/constant/cli.js +1 -1
  212. package/lib/constant/defaults.js +1 -1
  213. package/lib/constant/domain.js +1 -1
  214. package/lib/constant/env.js +1 -1
  215. package/lib/constant/output.js +1 -1
  216. package/lib/constant/paths.js +1 -1
  217. package/lib/constant/risk.js +1 -1
  218. package/lib/context/app-resolver.js +1 -1
  219. package/lib/context/auth-resolver.js +1 -1
  220. package/lib/context/config-loader.js +1 -1
  221. package/lib/context.js +1 -1
  222. package/lib/core/alias-resolver.js +1 -1
  223. package/lib/core/api-client.d.ts +70 -79
  224. package/lib/core/api-client.js +1 -1
  225. package/lib/core/bff/config.js +1 -1
  226. package/lib/core/bff/file-system.d.ts +1 -0
  227. package/lib/core/bff/file-system.js +1 -1
  228. package/lib/core/bff/hash.js +1 -1
  229. package/lib/core/bff/lock.js +1 -1
  230. package/lib/core/bff/utils.js +1 -1
  231. package/lib/core/db-resolver.js +1 -1
  232. package/lib/core/page/file-system.js +1 -1
  233. package/lib/core/page/hash.js +1 -1
  234. package/lib/core/page/lock.js +1 -1
  235. package/lib/core/sql-index-auditor.js +1 -1
  236. package/lib/core/sql-sync/config.js +1 -1
  237. package/lib/core/sql-sync/file-system.js +1 -1
  238. package/lib/core/sql-sync/hash.js +1 -1
  239. package/lib/core/sql-sync/lock.js +1 -1
  240. package/lib/core/sql-sync/utils.js +1 -1
  241. package/lib/core/sql-validator.js +1 -1
  242. package/lib/errors.js +1 -1
  243. package/lib/framework/build-all-flags.js +1 -1
  244. package/lib/framework/error-output.js +1 -1
  245. package/lib/framework/explicit-yes.js +1 -1
  246. package/lib/framework/flags.js +1 -1
  247. package/lib/framework/help.js +1 -1
  248. package/lib/framework/index.js +1 -1
  249. package/lib/framework/output.js +1 -1
  250. package/lib/framework/response.js +1 -1
  251. package/lib/framework/runner-alias.js +1 -1
  252. package/lib/framework/runner.js +1 -1
  253. package/lib/framework/schema-export.js +1 -1
  254. package/lib/framework/types.js +1 -1
  255. package/lib/generated/build-info.d.ts +4 -4
  256. package/lib/generated/build-info.js +1 -1
  257. package/lib/help.js +1 -1
  258. package/lib/postinstall.js +1 -1
  259. package/lib/runtime/confirmation.js +1 -1
  260. package/lib/runtime/event.js +1 -1
  261. package/lib/runtime/index.js +1 -1
  262. package/lib/runtime/queue.js +1 -1
  263. package/lib/runtime/resolve.js +1 -1
  264. package/lib/skills/builtin-skill.js +1 -1
  265. package/lib/skills/main.js +1 -1
  266. package/lib/skills/npx-skills-add.js +1 -1
  267. package/lib/skills/skill-presence.js +1 -1
  268. package/lib/telemetry/cli-command-trace.js +1 -1
  269. package/lib/telemetry/cli-help-trace.js +1 -1
  270. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  271. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  272. package/lib/telemetry/send-cli-trace-log.js +1 -1
  273. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  274. package/lib/utils/ai_config.js +1 -1
  275. package/lib/utils/apply-jq-filter.js +1 -1
  276. package/lib/utils/cdn-config.js +1 -1
  277. package/lib/utils/check-sdk-version.js +1 -1
  278. package/lib/utils/cli-version-check.js +1 -1
  279. package/lib/utils/cli-version-policy.js +1 -1
  280. package/lib/utils/config.js +1 -1
  281. package/lib/utils/entity-with-id.js +1 -1
  282. package/lib/utils/file-utils.js +1 -1
  283. package/lib/utils/guides-cdn.js +1 -1
  284. package/lib/utils/http-client.js +1 -1
  285. package/lib/utils/is-non-interactive.js +1 -1
  286. package/lib/utils/logger.js +1 -1
  287. package/lib/utils/params.js +1 -1
  288. package/lib/utils/platform.js +1 -1
  289. package/lib/utils/rules-cdn.js +1 -1
  290. package/lib/utils/sleep.js +1 -1
  291. package/lib/utils/template-replacer.js +1 -1
  292. package/lib/utils/update-notice.js +1 -1
  293. package/lib/utils/version.js +1 -1
  294. package/lib/utils/with-active-cookie.js +1 -1
  295. package/lib/utils/write-cli-side-channel.js +1 -1
  296. package/package.json +1 -1
  297. package/skills/rabetbase/SKILL.md +18 -24
  298. package/skills/rabetbase/guides/database-connection-workflow.md +6 -2
  299. package/skills/rabetbase/references/rabetbase-dataset-business-groups.md +28 -0
  300. package/skills/rabetbase/references/rabetbase-dataset-delete.md +7 -5
  301. package/skills/rabetbase/references/rabetbase-dataset-list.md +6 -6
  302. package/skills/rabetbase/references/rabetbase-dataset-restore.md +5 -5
  303. package/skills/rabetbase/references/rabetbase-db-create.md +3 -0
  304. package/skills/rabetbase/references/rabetbase-db-delete.md +10 -2
  305. package/skills/rabetbase/references/rabetbase-db-detail.md +2 -0
  306. package/skills/rabetbase/references/rabetbase-db-list.md +3 -2
  307. package/skills/rabetbase/references/rabetbase-db-update.md +4 -2
  308. package/skills/rabetbase/references/rabetbase-role-list.md +9 -17
  309. package/skills/rabetbase/references/rabetbase-role-user-add.md +44 -16
  310. package/skills/rabetbase/references/rabetbase-role-user-resolve.md +2 -2
  311. package/skills/rabetbase.manifest.json +4 -7
  312. package/lib/commands/permit/index.js +0 -1
  313. package/lib/commands/permit/page-get.d.ts +0 -2
  314. package/lib/commands/permit/page-get.js +0 -1
  315. package/lib/commands/permit/page-set.d.ts +0 -2
  316. package/lib/commands/permit/page-set.js +0 -1
  317. package/lib/commands/permit/role-apis-set.d.ts +0 -2
  318. package/lib/commands/permit/role-apis-set.js +0 -1
  319. package/lib/commands/permit/role-menus-set.d.ts +0 -2
  320. package/lib/commands/permit/role-menus-set.js +0 -1
  321. package/lib/commands/permit/role-menus.d.ts +0 -2
  322. package/lib/commands/permit/role-menus.js +0 -1
  323. package/lib/commands/permit/shared.d.ts +0 -74
  324. package/lib/commands/permit/shared.js +0 -1
  325. package/lib/commands/role/create.d.ts +0 -2
  326. package/lib/commands/role/create.js +0 -1
  327. package/skills/rabetbase/guides/role-permit-workflow.md +0 -127
  328. package/skills/rabetbase/references/rabetbase-permit-page-set.md +0 -69
  329. package/skills/rabetbase/references/rabetbase-permit-role-apis-set.md +0 -53
  330. package/skills/rabetbase/references/rabetbase-permit-role-menus-set.md +0 -57
@@ -1 +1 @@
1
- function a228_0x3688(_0x8c5b6b,_0x1e3a13){_0x8c5b6b=_0x8c5b6b-0x77;const _0xbe0c65=a228_0xbe0c();let _0x36888f=_0xbe0c65[_0x8c5b6b];return _0x36888f;}const a228_0x31d867=a228_0x3688;(function(_0x4544d4,_0x507fe3){const _0x20b54f=a228_0x3688,_0x1763e0=_0x4544d4();while(!![]){try{const _0x57bce0=parseInt(_0x20b54f(0x7e))/0x1*(-parseInt(_0x20b54f(0x77))/0x2)+parseInt(_0x20b54f(0x92))/0x3*(parseInt(_0x20b54f(0x82))/0x4)+parseInt(_0x20b54f(0x98))/0x5+-parseInt(_0x20b54f(0x83))/0x6+-parseInt(_0x20b54f(0x94))/0x7*(parseInt(_0x20b54f(0x8c))/0x8)+parseInt(_0x20b54f(0x80))/0x9+parseInt(_0x20b54f(0x81))/0xa;if(_0x57bce0===_0x507fe3)break;else _0x1763e0['push'](_0x1763e0['shift']());}catch(_0x20289a){_0x1763e0['push'](_0x1763e0['shift']());}}}(a228_0xbe0c,0x83ed2));import{access,mkdir,readdir,stat}from'node:fs/promises';import{constants}from'node:fs';import{dirname,join}from'node:path';function a228_0xbe0c(){const _0x109052=['ENDPOINT','operationType','includes','set','alias','isDirectory','afterScriptId','496SlsGsW','ENOENT','push','replace','toUpperCase','isFile','849HtrGIu','functionName','68327wSkGXk','before','beforeScriptId','datasetCode','71700dHqpaQ','HOOK/','name','map','code','get','250xfBwNS','scriptType','after','HOOK','COMMON','scriptsRootDir','.js','6765iiNmDS','endsWith','4974273UsjPSz','10275650MQYrDH','13076eNhZsh','3171312VcbFyn','functionNode'];a228_0xbe0c=function(){return _0x109052;};return a228_0xbe0c();}import{findHookLocationByRemoteId,snakeToCamel}from'../../core/bff/utils.js';export const SUPPORTED_BFF_TYPES=[a228_0x31d867(0x7b),a228_0x31d867(0x85),'HOOK'];export function normalizeBffType(_0xfbeb25){const _0x263204=a228_0x31d867;if(!_0xfbeb25)return undefined;const _0x37c102=_0xfbeb25['trim']()[_0x263204(0x90)]();return SUPPORTED_BFF_TYPES[_0x263204(0x87)](_0x37c102)?_0x37c102:undefined;}async function scanJsFilesRecursively(_0x264003,_0x58f5e4){const _0x190593=a228_0x31d867,_0x40113c=[];try{const _0x137f0b=await readdir(_0x264003,{'withFileTypes':!![]});for(const _0x21d56c of _0x137f0b){const _0x49679d=join(_0x264003,_0x21d56c[_0x190593(0x9a)]);if(_0x21d56c[_0x190593(0x8a)]())_0x40113c[_0x190593(0x8e)](...await scanJsFilesRecursively(_0x49679d,_0x58f5e4+'/'+_0x21d56c['name']));else _0x21d56c[_0x190593(0x91)]()&&_0x21d56c[_0x190593(0x9a)][_0x190593(0x7f)](_0x190593(0x7d))&&_0x40113c['push']({'lockKey':_0x58f5e4+'/'+_0x21d56c['name'][_0x190593(0x8f)](/\.js$/,''),'filePath':_0x49679d});}}catch(_0x5a473d){if(_0x5a473d[_0x190593(0x9c)]!=='ENOENT')throw _0x5a473d;}return _0x40113c;}async function scanFlatFunctions(_0x3d4041,_0x439bea){const _0x52f811=a228_0x31d867,_0x594f28=join(_0x3d4041[_0x52f811(0x7c)],_0x439bea),_0x418d0b=await scanJsFilesRecursively(_0x594f28,_0x439bea);return _0x418d0b[_0x52f811(0x9b)](({lockKey:_0x29a49d,filePath:_0x4d52e1})=>({'type':_0x439bea,'name':_0x29a49d['split']('/')['at'](-0x1)??'','filePath':_0x4d52e1,'lockKey':_0x29a49d}));}async function scanHookFunctions(_0x298c04){const _0x4cc1fe=a228_0x31d867,_0xf39b9a=join(_0x298c04[_0x4cc1fe(0x7c)],_0x4cc1fe(0x7a)),_0x4e0607=[];try{const _0x2cf798=await readdir(_0xf39b9a,{'withFileTypes':!![]});for(const _0x2e11be of _0x2cf798){if(!_0x2e11be[_0x4cc1fe(0x8a)]())continue;const _0xbce5af=_0x2e11be[_0x4cc1fe(0x9a)],_0x136214=join(_0xf39b9a,_0xbce5af),_0x2b5de0=await readdir(_0x136214,{'withFileTypes':!![]});for(const _0x50e878 of _0x2b5de0){if(!_0x50e878[_0x4cc1fe(0x8a)]())continue;const _0x90a3a=_0x50e878[_0x4cc1fe(0x9a)],_0x3d4017=join(_0x136214,_0x90a3a),_0x8e2efd=await readdir(_0x3d4017,{'withFileTypes':!![]});for(const _0x503280 of _0x8e2efd){if(!_0x503280['isDirectory']())continue;const _0x4bc107=_0x503280[_0x4cc1fe(0x9a)],_0x34d725=join(_0x3d4017,_0x4bc107),_0x534c3d=await readdir(_0x34d725,{'withFileTypes':!![]});for(const _0x2d52df of _0x534c3d){if(!_0x2d52df['isFile']()||!_0x2d52df[_0x4cc1fe(0x9a)]['endsWith']('.js'))continue;const _0x2008c3=_0x2d52df[_0x4cc1fe(0x9a)][_0x4cc1fe(0x8f)](/\.js$/,'');_0x4e0607['push']({'type':_0x4cc1fe(0x7a),'name':_0x2008c3,'filePath':join(_0x34d725,_0x2d52df['name']),'lockKey':_0x4cc1fe(0x99)+_0xbce5af+'/'+_0x90a3a+'/'+_0x4bc107+'/'+_0x2008c3,'alias':_0xbce5af,'operationType':_0x90a3a,'functionNode':_0x4bc107});}}}}}catch(_0x47f6cb){if(_0x47f6cb[_0x4cc1fe(0x9c)]!==_0x4cc1fe(0x8d))throw _0x47f6cb;}return _0x4e0607;}export async function scanLocalBffFunctions(_0xe5e79e,_0x5ba149){const _0x3837b1=a228_0x31d867;if(_0x5ba149===_0x3837b1(0x7b)||_0x5ba149===_0x3837b1(0x85))return scanFlatFunctions(_0xe5e79e,_0x5ba149);if(_0x5ba149===_0x3837b1(0x7a))return scanHookFunctions(_0xe5e79e);const [_0x2f29b4,_0x3ef25d,_0x3c243b]=await Promise['all']([scanFlatFunctions(_0xe5e79e,_0x3837b1(0x7b)),scanFlatFunctions(_0xe5e79e,_0x3837b1(0x85)),scanHookFunctions(_0xe5e79e)]);return[..._0x2f29b4,..._0x3ef25d,..._0x3c243b];}export function resolveLocalFilePathFromLockKey(_0x1a9d3c,_0x47c67f){const _0x55889e=a228_0x31d867;return join(_0x1a9d3c['scriptsRootDir'],..._0x47c67f['split']('/'))+_0x55889e(0x7d);}export function createHookLocationMap(_0x50290f){const _0x2c96de=a228_0x31d867,_0x5a0919=new Map();for(const _0x404ba3 of _0x50290f){_0x404ba3[_0x2c96de(0x96)]&&_0x5a0919[_0x2c96de(0x88)](_0x404ba3[_0x2c96de(0x96)],{'datasetCode':_0x404ba3['datasetCode'],'operationType':snakeToCamel(_0x404ba3[_0x2c96de(0x86)]),'functionNode':_0x2c96de(0x95)}),_0x404ba3[_0x2c96de(0x8b)]&&_0x5a0919[_0x2c96de(0x88)](_0x404ba3[_0x2c96de(0x8b)],{'datasetCode':_0x404ba3[_0x2c96de(0x97)],'operationType':snakeToCamel(_0x404ba3[_0x2c96de(0x86)]),'functionNode':_0x2c96de(0x79)});}return _0x5a0919;}export function resolveRemoteScriptTarget(_0x2ec007,_0x5dfb7d,_0x12ff23,_0x40507d,_0x25e684){const _0x18b591=a228_0x31d867,_0x1bd0d3=normalizeBffType(_0x5dfb7d[_0x18b591(0x78)]);if(!_0x1bd0d3||!_0x5dfb7d['functionName'])return null;if(_0x1bd0d3===_0x18b591(0x7a)){const _0x383eea=(_0x5dfb7d['id']?_0x12ff23[_0x18b591(0x9d)](_0x5dfb7d['id']):undefined)??findHookLocationByRemoteId(_0x40507d,_0x5dfb7d['id']);if(!_0x383eea)return null;const _0x3f2735=_0x383eea[_0x18b591(0x89)]||_0x25e684[_0x18b591(0x9d)](_0x383eea[_0x18b591(0x97)]),_0x5ef10b=_0x3f2735??_0x383eea[_0x18b591(0x97)],_0x4da8d2={..._0x383eea,'alias':_0x3f2735},_0x1a16c0=_0x18b591(0x99)+_0x5ef10b+'/'+_0x4da8d2[_0x18b591(0x86)]+'/'+_0x4da8d2[_0x18b591(0x84)]+'/'+_0x5dfb7d[_0x18b591(0x93)];return{'lockKey':_0x1a16c0,'filePath':resolveLocalFilePathFromLockKey(_0x2ec007,_0x1a16c0),'type':'HOOK','hookLocation':_0x4da8d2};}const _0x20c4c4=_0x1bd0d3+'/'+_0x5dfb7d[_0x18b591(0x93)];return{'lockKey':_0x20c4c4,'filePath':resolveLocalFilePathFromLockKey(_0x2ec007,_0x20c4c4),'type':_0x1bd0d3};}export async function ensureParentDirectory(_0x50d403){await mkdir(dirname(_0x50d403),{'recursive':!![]});}export async function fileExists(_0x248668){try{return await access(_0x248668,constants['F_OK']),!![];}catch{return![];}}export async function directoryExists(_0x277a12){try{const _0x33b49b=await stat(_0x277a12);return _0x33b49b['isDirectory']();}catch{return![];}}
1
+ const a221_0x203318=a221_0x1bcc;(function(_0xb39d62,_0x3ee2b0){const _0x1f8d6a=a221_0x1bcc,_0x339c14=_0xb39d62();while(!![]){try{const _0x4b67a8=parseInt(_0x1f8d6a(0x11e))/0x1+parseInt(_0x1f8d6a(0x106))/0x2*(-parseInt(_0x1f8d6a(0xfe))/0x3)+parseInt(_0x1f8d6a(0xfd))/0x4*(parseInt(_0x1f8d6a(0x115))/0x5)+parseInt(_0x1f8d6a(0x120))/0x6*(parseInt(_0x1f8d6a(0x101))/0x7)+-parseInt(_0x1f8d6a(0x124))/0x8+-parseInt(_0x1f8d6a(0xff))/0x9+-parseInt(_0x1f8d6a(0x119))/0xa;if(_0x4b67a8===_0x3ee2b0)break;else _0x339c14['push'](_0x339c14['shift']());}catch(_0x4bc2d4){_0x339c14['push'](_0x339c14['shift']());}}}(a221_0x155c,0x2cf4b));import{access,mkdir,readdir,stat}from'node:fs/promises';import{constants}from'node:fs';import{dirname,join,resolve,sep}from'node:path';import{findHookLocationByRemoteId,snakeToCamel}from'../../core/bff/utils.js';export const SUPPORTED_BFF_TYPES=[a221_0x203318(0x128),'ENDPOINT',a221_0x203318(0x112)];export function normalizeBffType(_0x2da9f9){const _0x52e88b=a221_0x203318;if(!_0x2da9f9)return undefined;const _0x19ce83=_0x2da9f9['trim']()[_0x52e88b(0x10d)]();return SUPPORTED_BFF_TYPES[_0x52e88b(0x11d)](_0x19ce83)?_0x19ce83:undefined;}function a221_0x155c(){const _0x3ecd69=['code','505200PvOyeO','datasetCode','split','every','includes','226489pnsmlX','scriptsRootDir','1469406IvXDFz','before','ENOENT','startsWith','1263064czdyZK','get','replace','all','COMMON','1592MWedSR','57999JzfhDa','653103MCvolY','alias','7EXLjrH','HOOK/','functionName','push','isDirectory','34qFxisS','Unsafe\x20BFF\x20lock\x20key\x20(traversal\x20or\x20invalid\x20segment):\x20','ENDPOINT','isFile','scriptType','beforeScriptId','afterScriptId','toUpperCase','Resolved\x20BFF\x20script\x20path\x20escapes\x20scripts\x20root:\x20','operationType','after','.js','HOOK','name','functionNode','4050CPPdgM','set','endsWith'];a221_0x155c=function(){return _0x3ecd69;};return a221_0x155c();}async function scanJsFilesRecursively(_0x24c0df,_0x2dd45c){const _0x5c3233=a221_0x203318,_0x4d11c2=[];try{const _0x1ac065=await readdir(_0x24c0df,{'withFileTypes':!![]});for(const _0x5588b1 of _0x1ac065){const _0x39b33e=join(_0x24c0df,_0x5588b1[_0x5c3233(0x113)]);if(_0x5588b1[_0x5c3233(0x105)]())_0x4d11c2['push'](...await scanJsFilesRecursively(_0x39b33e,_0x2dd45c+'/'+_0x5588b1[_0x5c3233(0x113)]));else _0x5588b1['isFile']()&&_0x5588b1[_0x5c3233(0x113)][_0x5c3233(0x117)]('.js')&&_0x4d11c2[_0x5c3233(0x104)]({'lockKey':_0x2dd45c+'/'+_0x5588b1[_0x5c3233(0x113)][_0x5c3233(0x126)](/\.js$/,''),'filePath':_0x39b33e});}}catch(_0x2cc2cd){if(_0x2cc2cd[_0x5c3233(0x118)]!==_0x5c3233(0x122))throw _0x2cc2cd;}return _0x4d11c2;}async function scanFlatFunctions(_0x2b56f0,_0x12d84c){const _0x20825c=a221_0x203318,_0x56999a=join(_0x2b56f0['scriptsRootDir'],_0x12d84c),_0x99dce0=await scanJsFilesRecursively(_0x56999a,_0x12d84c);return _0x99dce0['map'](({lockKey:_0xc7f621,filePath:_0x1c3ebd})=>({'type':_0x12d84c,'name':_0xc7f621[_0x20825c(0x11b)]('/')['at'](-0x1)??'','filePath':_0x1c3ebd,'lockKey':_0xc7f621}));}async function scanHookFunctions(_0x463e83){const _0x155c26=a221_0x203318,_0x4a8448=join(_0x463e83[_0x155c26(0x11f)],_0x155c26(0x112)),_0x5bd62d=[];try{const _0x2dc84d=await readdir(_0x4a8448,{'withFileTypes':!![]});for(const _0x17f1b0 of _0x2dc84d){if(!_0x17f1b0[_0x155c26(0x105)]())continue;const _0xcdc628=_0x17f1b0[_0x155c26(0x113)],_0x4b7897=join(_0x4a8448,_0xcdc628),_0x130f54=await readdir(_0x4b7897,{'withFileTypes':!![]});for(const _0x5925ae of _0x130f54){if(!_0x5925ae[_0x155c26(0x105)]())continue;const _0x3f9fad=_0x5925ae[_0x155c26(0x113)],_0x44121b=join(_0x4b7897,_0x3f9fad),_0x5c49ed=await readdir(_0x44121b,{'withFileTypes':!![]});for(const _0x3bc473 of _0x5c49ed){if(!_0x3bc473[_0x155c26(0x105)]())continue;const _0x53398e=_0x3bc473[_0x155c26(0x113)],_0x133a82=join(_0x44121b,_0x53398e),_0x2b8ac6=await readdir(_0x133a82,{'withFileTypes':!![]});for(const _0x529c80 of _0x2b8ac6){if(!_0x529c80[_0x155c26(0x109)]()||!_0x529c80[_0x155c26(0x113)][_0x155c26(0x117)](_0x155c26(0x111)))continue;const _0x5ddd91=_0x529c80['name'][_0x155c26(0x126)](/\.js$/,'');_0x5bd62d['push']({'type':_0x155c26(0x112),'name':_0x5ddd91,'filePath':join(_0x133a82,_0x529c80[_0x155c26(0x113)]),'lockKey':'HOOK/'+_0xcdc628+'/'+_0x3f9fad+'/'+_0x53398e+'/'+_0x5ddd91,'alias':_0xcdc628,'operationType':_0x3f9fad,'functionNode':_0x53398e});}}}}}catch(_0xbd22d6){if(_0xbd22d6[_0x155c26(0x118)]!=='ENOENT')throw _0xbd22d6;}return _0x5bd62d;}export async function scanLocalBffFunctions(_0x28260f,_0xa20083){const _0x2a086d=a221_0x203318;if(_0xa20083==='COMMON'||_0xa20083===_0x2a086d(0x108))return scanFlatFunctions(_0x28260f,_0xa20083);if(_0xa20083==='HOOK')return scanHookFunctions(_0x28260f);const [_0x383042,_0x9c9a8,_0x391cd9]=await Promise[_0x2a086d(0x127)]([scanFlatFunctions(_0x28260f,_0x2a086d(0x128)),scanFlatFunctions(_0x28260f,'ENDPOINT'),scanHookFunctions(_0x28260f)]);return[..._0x383042,..._0x9c9a8,..._0x391cd9];}const SAFE_LOCK_KEY_SEGMENT=/^[A-Za-z0-9_$.-]+$/;export function isSafeLockKeySegment(_0x183167){return SAFE_LOCK_KEY_SEGMENT['test'](_0x183167)&&_0x183167!=='.'&&_0x183167!=='..';}export function resolveLocalFilePathFromLockKey(_0x16f8c9,_0x32944b){const _0xcd059c=a221_0x203318,_0x189e13=_0x32944b['split']('/');if(!_0x189e13[_0xcd059c(0x11c)](isSafeLockKeySegment))throw new Error(_0xcd059c(0x107)+_0x32944b);const _0x2f049a=resolve(join(_0x16f8c9[_0xcd059c(0x11f)],..._0x189e13)+_0xcd059c(0x111)),_0x40b686=resolve(_0x16f8c9[_0xcd059c(0x11f)]);if(_0x2f049a!==_0x40b686&&!_0x2f049a[_0xcd059c(0x123)](_0x40b686+sep))throw new Error(_0xcd059c(0x10e)+_0x2f049a);return _0x2f049a;}export function createHookLocationMap(_0x3c78c2){const _0x4b8fef=a221_0x203318,_0x4e6905=new Map();for(const _0x400574 of _0x3c78c2){_0x400574['beforeScriptId']&&_0x4e6905[_0x4b8fef(0x116)](_0x400574[_0x4b8fef(0x10b)],{'datasetCode':_0x400574[_0x4b8fef(0x11a)],'operationType':snakeToCamel(_0x400574[_0x4b8fef(0x10f)]),'functionNode':_0x4b8fef(0x121)}),_0x400574[_0x4b8fef(0x10c)]&&_0x4e6905[_0x4b8fef(0x116)](_0x400574[_0x4b8fef(0x10c)],{'datasetCode':_0x400574[_0x4b8fef(0x11a)],'operationType':snakeToCamel(_0x400574['operationType']),'functionNode':_0x4b8fef(0x110)});}return _0x4e6905;}function a221_0x1bcc(_0x177347,_0x104e92){_0x177347=_0x177347-0xfd;const _0x155c38=a221_0x155c();let _0x1bccd4=_0x155c38[_0x177347];return _0x1bccd4;}export function resolveRemoteScriptTarget(_0x2a5dd4,_0x36fa4f,_0x5cb2e1,_0x5b5dcf,_0x56e45c){const _0x282afb=a221_0x203318,_0x4b0493=normalizeBffType(_0x36fa4f[_0x282afb(0x10a)]);if(!_0x4b0493||!_0x36fa4f[_0x282afb(0x103)])return null;if(_0x4b0493===_0x282afb(0x112)){const _0x2c10ae=(_0x36fa4f['id']?_0x5cb2e1[_0x282afb(0x125)](_0x36fa4f['id']):undefined)??findHookLocationByRemoteId(_0x5b5dcf,_0x36fa4f['id']);if(!_0x2c10ae)return null;const _0x19aec0=_0x2c10ae[_0x282afb(0x100)]||_0x56e45c['get'](_0x2c10ae[_0x282afb(0x11a)]),_0x78470d=_0x19aec0??_0x2c10ae[_0x282afb(0x11a)],_0x9677f8={..._0x2c10ae,'alias':_0x19aec0},_0x4cb3bb=_0x282afb(0x102)+_0x78470d+'/'+_0x9677f8['operationType']+'/'+_0x9677f8[_0x282afb(0x114)]+'/'+_0x36fa4f[_0x282afb(0x103)];if(!_0x4cb3bb['split']('/')['every'](isSafeLockKeySegment))return null;return{'lockKey':_0x4cb3bb,'filePath':resolveLocalFilePathFromLockKey(_0x2a5dd4,_0x4cb3bb),'type':_0x282afb(0x112),'hookLocation':_0x9677f8};}const _0xf9c726=_0x4b0493+'/'+_0x36fa4f[_0x282afb(0x103)];if(!_0xf9c726['split']('/')['every'](isSafeLockKeySegment))return null;return{'lockKey':_0xf9c726,'filePath':resolveLocalFilePathFromLockKey(_0x2a5dd4,_0xf9c726),'type':_0x4b0493};}export async function ensureParentDirectory(_0x26ec31){await mkdir(dirname(_0x26ec31),{'recursive':!![]});}export async function fileExists(_0x56c3a7){try{return await access(_0x56c3a7,constants['F_OK']),!![];}catch{return![];}}export async function directoryExists(_0xd2f893){const _0x3621e1=a221_0x203318;try{const _0x214ae3=await stat(_0xd2f893);return _0x214ae3[_0x3621e1(0x105)]();}catch{return![];}}
@@ -1 +1 @@
1
- function a229_0x1afa(_0x365ae6,_0x122c7d){_0x365ae6=_0x365ae6-0x83;const _0x392b20=a229_0x392b();let _0x1afad0=_0x392b20[_0x365ae6];return _0x1afad0;}(function(_0x308565,_0x17bb2f){const _0x5cb269=a229_0x1afa,_0x5eef85=_0x308565();while(!![]){try{const _0x652a4=-parseInt(_0x5cb269(0x8d))/0x1+parseInt(_0x5cb269(0x8b))/0x2*(parseInt(_0x5cb269(0x87))/0x3)+-parseInt(_0x5cb269(0x8a))/0x4*(-parseInt(_0x5cb269(0x89))/0x5)+-parseInt(_0x5cb269(0x88))/0x6*(parseInt(_0x5cb269(0x8c))/0x7)+-parseInt(_0x5cb269(0x85))/0x8*(parseInt(_0x5cb269(0x90))/0x9)+parseInt(_0x5cb269(0x8f))/0xa*(parseInt(_0x5cb269(0x91))/0xb)+parseInt(_0x5cb269(0x83))/0xc*(-parseInt(_0x5cb269(0x8e))/0xd);if(_0x652a4===_0x17bb2f)break;else _0x5eef85['push'](_0x5eef85['shift']());}catch(_0x4c30ed){_0x5eef85['push'](_0x5eef85['shift']());}}}(a229_0x392b,0xb1130));function a229_0x392b(){const _0x142c63=['4976ZqbhOW','digest','577266MnMaJW','111762kXJVBx','5393395EETIOq','4mZXvUk','10THLOcZ','105CzitYu','665874SUsCDh','11895PzJuUU','10GROlWd','6453pHAUGe','3198635NXrvRE','2820xvMQHj','createHash'];a229_0x392b=function(){return _0x142c63;};return a229_0x392b();}import{readFile}from'node:fs/promises';import a229_0x3ff7a5 from'node:crypto';export function computeContentHash(_0x4174da){const _0x31dbc8=a229_0x1afa;return a229_0x3ff7a5[_0x31dbc8(0x84)]('md5')['update'](_0x4174da)[_0x31dbc8(0x86)]('hex');}export async function computeFileHash(_0x59c768){const _0x223ee3=await readFile(_0x59c768,'utf8');return computeContentHash(_0x223ee3);}
1
+ (function(_0x37e0eb,_0xbf9598){const _0xb2c8=a222_0x48e8,_0x42301f=_0x37e0eb();while(!![]){try{const _0x46d049=-parseInt(_0xb2c8(0x1a5))/0x1*(-parseInt(_0xb2c8(0x1ab))/0x2)+-parseInt(_0xb2c8(0x1a1))/0x3*(parseInt(_0xb2c8(0x1a3))/0x4)+parseInt(_0xb2c8(0x19e))/0x5+-parseInt(_0xb2c8(0x1a2))/0x6+parseInt(_0xb2c8(0x19d))/0x7*(-parseInt(_0xb2c8(0x1a0))/0x8)+parseInt(_0xb2c8(0x19f))/0x9*(parseInt(_0xb2c8(0x1a6))/0xa)+parseInt(_0xb2c8(0x1ac))/0xb;if(_0x46d049===_0xbf9598)break;else _0x42301f['push'](_0x42301f['shift']());}catch(_0x145d3c){_0x42301f['push'](_0x42301f['shift']());}}}(a222_0x2a22,0x3e091));import{readFile}from'node:fs/promises';import a222_0x2458bf from'node:crypto';function a222_0x48e8(_0x197a36,_0x2dd4b7){_0x197a36=_0x197a36-0x19d;const _0x2a2277=a222_0x2a22();let _0x48e8ba=_0x2a2277[_0x197a36];return _0x48e8ba;}function a222_0x2a22(){const _0x3ac793=['hex','67694fSxTzA','3607472zcFmlo','59493KEDoxJ','1804750CMTXuv','17991tiLWSv','216AwGtCA','13533QWXAtl','1715892AmqppX','272alvZob','md5','3BWLJSn','1430KqcVZr','digest','update','createHash'];a222_0x2a22=function(){return _0x3ac793;};return a222_0x2a22();}export function computeContentHash(_0x35829f){const _0x27b8ae=a222_0x48e8;return a222_0x2458bf[_0x27b8ae(0x1a9)](_0x27b8ae(0x1a4))[_0x27b8ae(0x1a8)](_0x35829f)[_0x27b8ae(0x1a7)](_0x27b8ae(0x1aa));}export async function computeFileHash(_0x4eb9c1){const _0x43a901=await readFile(_0x4eb9c1,'utf8');return computeContentHash(_0x43a901);}
@@ -1 +1 @@
1
- (function(_0x457713,_0x5f2768){const _0xad6a7f=a230_0x23d1,_0x19a02e=_0x457713();while(!![]){try{const _0x48380d=-parseInt(_0xad6a7f(0x197))/0x1*(parseInt(_0xad6a7f(0x1a2))/0x2)+parseInt(_0xad6a7f(0x1a0))/0x3+-parseInt(_0xad6a7f(0x1ab))/0x4*(-parseInt(_0xad6a7f(0x196))/0x5)+parseInt(_0xad6a7f(0x19b))/0x6+parseInt(_0xad6a7f(0x19a))/0x7*(-parseInt(_0xad6a7f(0x1a4))/0x8)+-parseInt(_0xad6a7f(0x1aa))/0x9*(parseInt(_0xad6a7f(0x19f))/0xa)+parseInt(_0xad6a7f(0x1a8))/0xb;if(_0x48380d===_0x5f2768)break;else _0x19a02e['push'](_0x19a02e['shift']());}catch(_0x2ebcc5){_0x19a02e['push'](_0x19a02e['shift']());}}}(a230_0x272b,0x59cfa));import{mkdir,readFile,writeFile}from'node:fs/promises';function a230_0x272b(){const _0x3dc5da=['13652dwMUDT','functions','905vLZriK','1Peayjp','stringify','lastSync','129955aavbei','1193970xSVhTP','ENOENT','Check\x20.rabetbase/bff.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','\x22\x20vs\x20lock\x20\x22','903370zRlbqh','1630365VkfiCl','apps','559694MtWgyq','utf8','232tKDFtm','code','\x22.\x20','object','72259INouoA','scriptsRoot','18sPnszQ'];a230_0x272b=function(){return _0x3dc5da;};return a230_0x272b();}function a230_0x23d1(_0x3f0bdf,_0x5de1f7){_0x3f0bdf=_0x3f0bdf-0x196;const _0x272bbd=a230_0x272b();let _0x23d107=_0x272bbd[_0x3f0bdf];return _0x23d107;}import{dirname}from'node:path';export function createEmptyBffLock(){return{'apps':{}};}export function ensureLockScope(_0x1002f0,_0x3ce258,_0x2bdf5f,_0x2c6e0e){const _0x141302=a230_0x23d1,_0x4bf725={'apps':_0x1002f0['apps']&&typeof _0x1002f0[_0x141302(0x1a1)]===_0x141302(0x1a7)?_0x1002f0[_0x141302(0x1a1)]:{}};let _0x1401dc=_0x4bf725['apps'][_0x3ce258];if(!_0x1401dc)return _0x1401dc={'scriptsRoot':_0x2bdf5f,'lastSync':'','functions':{}},_0x4bf725['apps'][_0x3ce258]=_0x1401dc,{'lockData':_0x4bf725,'appLock':_0x1401dc};if(!_0x1401dc[_0x141302(0x1a9)])_0x1401dc[_0x141302(0x1a9)]=_0x2bdf5f;else{if(_0x1401dc[_0x141302(0x1a9)]!==_0x2bdf5f)throw new Error(_0x2c6e0e+':\x20scriptsRoot\x20mismatch\x20—\x20'+('current\x20\x22'+_0x2bdf5f+_0x141302(0x19e)+_0x1401dc['scriptsRoot']+_0x141302(0x1a6))+_0x141302(0x19d));}return!_0x1401dc['functions']&&(_0x1401dc[_0x141302(0x1ac)]={}),!_0x1401dc['lastSync']&&(_0x1401dc[_0x141302(0x199)]=''),{'lockData':_0x4bf725,'appLock':_0x1401dc};}export async function readBffLockFile(_0x55e1e8){const _0x275097=a230_0x23d1;try{const _0x2874bf=await readFile(_0x55e1e8,'utf8'),_0x4edac7=JSON['parse'](_0x2874bf);return{'apps':_0x4edac7[_0x275097(0x1a1)]&&typeof _0x4edac7[_0x275097(0x1a1)]===_0x275097(0x1a7)?_0x4edac7['apps']:{}};}catch(_0x444e11){if(_0x444e11[_0x275097(0x1a5)]===_0x275097(0x19c))return null;throw new Error('Failed\x20to\x20read\x20BFF\x20lock\x20file:\x20'+String(_0x444e11));}}export async function writeBffLockFile(_0x431c1c,_0x490d64){const _0x2ac900=a230_0x23d1;await mkdir(dirname(_0x431c1c),{'recursive':!![]}),await writeFile(_0x431c1c,JSON[_0x2ac900(0x198)](_0x490d64,null,0x2),_0x2ac900(0x1a3));}
1
+ (function(_0x178bf5,_0x270da8){const _0x9c895d=a223_0x3a02,_0x756de8=_0x178bf5();while(!![]){try{const _0x40613f=-parseInt(_0x9c895d(0xfc))/0x1*(parseInt(_0x9c895d(0xfa))/0x2)+-parseInt(_0x9c895d(0x103))/0x3*(-parseInt(_0x9c895d(0x108))/0x4)+-parseInt(_0x9c895d(0xfb))/0x5*(-parseInt(_0x9c895d(0x107))/0x6)+-parseInt(_0x9c895d(0x102))/0x7+parseInt(_0x9c895d(0x10f))/0x8+-parseInt(_0x9c895d(0x101))/0x9*(-parseInt(_0x9c895d(0xff))/0xa)+parseInt(_0x9c895d(0xfe))/0xb;if(_0x40613f===_0x270da8)break;else _0x756de8['push'](_0x756de8['shift']());}catch(_0x3b3fb5){_0x756de8['push'](_0x756de8['shift']());}}}(a223_0x5288,0x3e3fa));import{mkdir,readFile,writeFile}from'node:fs/promises';function a223_0x3a02(_0x328e27,_0x30a2f0){_0x328e27=_0x328e27-0xf9;const _0x5288c4=a223_0x5288();let _0x3a02c2=_0x5288c4[_0x328e27];return _0x3a02c2;}import{dirname}from'node:path';export function createEmptyBffLock(){return{'apps':{}};}export function ensureLockScope(_0x2a340e,_0x1e407b,_0x3ff30d,_0x4e7a70){const _0x266752=a223_0x3a02,_0x3b7d94={'apps':_0x2a340e[_0x266752(0x10b)]&&typeof _0x2a340e[_0x266752(0x10b)]===_0x266752(0x10e)?_0x2a340e[_0x266752(0x10b)]:{}};let _0x54d21d=_0x3b7d94[_0x266752(0x10b)][_0x1e407b];if(!_0x54d21d)return _0x54d21d={'scriptsRoot':_0x3ff30d,'lastSync':'','functions':{}},_0x3b7d94[_0x266752(0x10b)][_0x1e407b]=_0x54d21d,{'lockData':_0x3b7d94,'appLock':_0x54d21d};if(!_0x54d21d['scriptsRoot'])_0x54d21d[_0x266752(0xfd)]=_0x3ff30d;else{if(_0x54d21d[_0x266752(0xfd)]!==_0x3ff30d)throw new Error(_0x4e7a70+_0x266752(0x104)+(_0x266752(0x10a)+_0x3ff30d+_0x266752(0x10d)+_0x54d21d[_0x266752(0xfd)]+'\x22.\x20')+_0x266752(0x10c));}return!_0x54d21d[_0x266752(0xf9)]&&(_0x54d21d['functions']={}),!_0x54d21d[_0x266752(0x100)]&&(_0x54d21d[_0x266752(0x100)]=''),{'lockData':_0x3b7d94,'appLock':_0x54d21d};}export async function readBffLockFile(_0x5669bd){const _0x144759=a223_0x3a02;try{const _0x331b1f=await readFile(_0x5669bd,_0x144759(0x106)),_0x21b4e2=JSON['parse'](_0x331b1f);return{'apps':_0x21b4e2[_0x144759(0x10b)]&&typeof _0x21b4e2[_0x144759(0x10b)]===_0x144759(0x10e)?_0x21b4e2['apps']:{}};}catch(_0x305243){if(_0x305243['code']===_0x144759(0x105))return null;throw new Error('Failed\x20to\x20read\x20BFF\x20lock\x20file:\x20'+String(_0x305243));}}function a223_0x5288(){const _0x515823=['stringify','current\x20\x22','apps','Check\x20.rabetbase/bff.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','\x22\x20vs\x20lock\x20\x22','object','239120oFLIfS','functions','2fjBmQd','26865boEkJs','438329HmYWTM','scriptsRoot','2220372hghXeP','11020cldGgs','lastSync','2691oyMSjX','1461593QFwLno','3aGyzLv',':\x20scriptsRoot\x20mismatch\x20—\x20','ENOENT','utf8','234efrMyt','525244oxoyws'];a223_0x5288=function(){return _0x515823;};return a223_0x5288();}export async function writeBffLockFile(_0x1fe8be,_0x2c5152){const _0x4bbc18=a223_0x3a02;await mkdir(dirname(_0x1fe8be),{'recursive':!![]}),await writeFile(_0x1fe8be,JSON[_0x4bbc18(0x109)](_0x2c5152,null,0x2),_0x4bbc18(0x106));}
@@ -1 +1 @@
1
- (function(_0x4b25d0,_0x5da500){const _0x1ad419=a232_0x2130,_0x234f22=_0x4b25d0();while(!![]){try{const _0x340b98=-parseInt(_0x1ad419(0x7f))/0x1*(parseInt(_0x1ad419(0x8a))/0x2)+-parseInt(_0x1ad419(0x7e))/0x3+-parseInt(_0x1ad419(0x87))/0x4+-parseInt(_0x1ad419(0x85))/0x5+-parseInt(_0x1ad419(0x86))/0x6+parseInt(_0x1ad419(0x8c))/0x7*(parseInt(_0x1ad419(0x82))/0x8)+parseInt(_0x1ad419(0x8b))/0x9;if(_0x340b98===_0x5da500)break;else _0x234f22['push'](_0x234f22['shift']());}catch(_0x3e2e67){_0x234f22['push'](_0x234f22['shift']());}}}(a232_0x5bdd,0xef229));export function snakeToCamel(_0x2dd030){const _0x3a6290=a232_0x2130;return _0x2dd030[_0x3a6290(0x83)]()['replace'](/_([a-z])/g,(_0x397137,_0x405097)=>_0x405097[_0x3a6290(0x80)]());}function a232_0x5bdd(){const _0x2ceb5e=['592376hTLCCq','toLowerCase','functionNode','3460895Wfmntn','4005894mpsUbl','4925844IjzhAb','operationType','match','141586YHIyUW','34255701CpunYN','70QXHcXg','test','trim','remoteId','before','datasetCode','values','2290482Rkaxnz','3dQNQnA','toUpperCase','after'];a232_0x5bdd=function(){return _0x2ceb5e;};return a232_0x5bdd();}export function findHookLocationByRemoteId(_0x14ac15,_0x6e0fd){const _0x5b67a2=a232_0x2130;if(!_0x6e0fd)return undefined;for(const _0x5e6b6b of Object[_0x5b67a2(0x92)](_0x14ac15)){if(_0x5e6b6b[_0x5b67a2(0x8f)]===_0x6e0fd&&_0x5e6b6b['datasetCode']&&_0x5e6b6b[_0x5b67a2(0x88)]&&_0x5e6b6b['functionNode'])return{'datasetCode':_0x5e6b6b[_0x5b67a2(0x91)],'operationType':_0x5e6b6b[_0x5b67a2(0x88)],'functionNode':_0x5e6b6b[_0x5b67a2(0x84)]};}return undefined;}function a232_0x2130(_0x46e5c6,_0x1bc8ae){_0x46e5c6=_0x46e5c6-0x7e;const _0x5bdd60=a232_0x5bdd();let _0x21306a=_0x5bdd60[_0x46e5c6];return _0x21306a;}export function extractScriptDescription(_0x5d5468){const _0x34b319=a232_0x2130,_0x3a99a3=_0x5d5468[_0x34b319(0x89)](/\[\s*脚本描述\s*]\s*(.+)/);return _0x3a99a3?.[0x1]?.[_0x34b319(0x8e)]()||undefined;}export function isValidBffFunctionName(_0x5d3e8c){const _0x238b23=a232_0x2130;return/^[A-Za-z_$][A-Za-z0-9_$]*$/[_0x238b23(0x8d)](_0x5d3e8c);}export function normalizeHookFunctionNode(_0x22ed19){const _0x3e5a7e=a232_0x2130;if(!_0x22ed19)return undefined;const _0x84e217=_0x22ed19[_0x3e5a7e(0x8e)]()['toLowerCase']();if(_0x84e217===_0x3e5a7e(0x90)||_0x84e217===_0x3e5a7e(0x81))return _0x84e217;return undefined;}
1
+ (function(_0x9f0be6,_0x2688f3){const _0xbad638=a225_0x1fb2,_0x4609e6=_0x9f0be6();while(!![]){try{const _0x1429c4=parseInt(_0xbad638(0x13a))/0x1+parseInt(_0xbad638(0x13f))/0x2*(-parseInt(_0xbad638(0x144))/0x3)+-parseInt(_0xbad638(0x146))/0x4+parseInt(_0xbad638(0x140))/0x5*(parseInt(_0xbad638(0x13c))/0x6)+-parseInt(_0xbad638(0x149))/0x7+-parseInt(_0xbad638(0x14c))/0x8+parseInt(_0xbad638(0x142))/0x9;if(_0x1429c4===_0x2688f3)break;else _0x4609e6['push'](_0x4609e6['shift']());}catch(_0x49c070){_0x4609e6['push'](_0x4609e6['shift']());}}}(a225_0x4d87,0xc9e2f));export function snakeToCamel(_0x2aea46){const _0x331ae0=a225_0x1fb2;return _0x2aea46[_0x331ae0(0x14d)]()[_0x331ae0(0x14b)](/_([a-z])/g,(_0x36ba64,_0x1d2e44)=>_0x1d2e44[_0x331ae0(0x141)]());}export function findHookLocationByRemoteId(_0x3b9a69,_0x3cb647){const _0x306a57=a225_0x1fb2;if(!_0x3cb647)return undefined;for(const _0x326e8e of Object[_0x306a57(0x145)](_0x3b9a69)){if(_0x326e8e['remoteId']===_0x3cb647&&_0x326e8e[_0x306a57(0x143)]&&_0x326e8e[_0x306a57(0x13b)]&&_0x326e8e[_0x306a57(0x13e)])return{'datasetCode':_0x326e8e[_0x306a57(0x143)],'operationType':_0x326e8e[_0x306a57(0x13b)],'functionNode':_0x326e8e[_0x306a57(0x13e)]};}return undefined;}export function extractScriptDescription(_0x2ca701){const _0x211f48=a225_0x1fb2,_0x112d40=_0x2ca701[_0x211f48(0x147)](/\[\s*脚本描述\s*]\s*(.+)/);return _0x112d40?.[0x1]?.[_0x211f48(0x148)]()||undefined;}export function isValidBffFunctionName(_0x35b23a){const _0xa970a3=a225_0x1fb2;return/^[A-Za-z_$][A-Za-z0-9_$]*$/[_0xa970a3(0x14a)](_0x35b23a);}function a225_0x4d87(){const _0x5550a4=['before','227407FRVrol','operationType','642jcfGBO','after','functionNode','371174getLIc','44035VkTTei','toUpperCase','25292340gOVVoO','datasetCode','3FEIfyu','values','1309196qCAFIW','match','trim','10750495UwQGMN','test','replace','8835344cjZgCV','toLowerCase'];a225_0x4d87=function(){return _0x5550a4;};return a225_0x4d87();}function a225_0x1fb2(_0x5a41fe,_0x46050f){_0x5a41fe=_0x5a41fe-0x139;const _0x4d8709=a225_0x4d87();let _0x1fb26a=_0x4d8709[_0x5a41fe];return _0x1fb26a;}export function normalizeHookFunctionNode(_0x129f15){const _0xab5865=a225_0x1fb2;if(!_0x129f15)return undefined;const _0x470938=_0x129f15[_0xab5865(0x148)]()[_0xab5865(0x14d)]();if(_0x470938===_0xab5865(0x139)||_0x470938===_0xab5865(0x13d))return _0x470938;return undefined;}
@@ -1 +1 @@
1
- (function(_0x31858a,_0x5f4146){const _0x1c50be=a233_0xee38,_0x29fc1e=_0x31858a();while(!![]){try{const _0x45c657=parseInt(_0x1c50be(0x1db))/0x1+-parseInt(_0x1c50be(0x1e4))/0x2+parseInt(_0x1c50be(0x1e5))/0x3*(-parseInt(_0x1c50be(0x1d6))/0x4)+parseInt(_0x1c50be(0x1d1))/0x5+parseInt(_0x1c50be(0x1de))/0x6+-parseInt(_0x1c50be(0x1d2))/0x7+parseInt(_0x1c50be(0x1ea))/0x8;if(_0x45c657===_0x5f4146)break;else _0x29fc1e['push'](_0x29fc1e['shift']());}catch(_0x255001){_0x29fc1e['push'](_0x29fc1e['shift']());}}}(a233_0x5d29,0x6492d));function a233_0xee38(_0x325c5c,_0x2c8ab2){_0x325c5c=_0x325c5c-0x1ce;const _0x5d2989=a233_0x5d29();let _0xee3890=_0x5d2989[_0x325c5c];return _0xee3890;}import{listDatasets}from'../core/api-client.js';const cache=new Map();export async function listDatabases(_0x50f406){const _0x477aca=a233_0xee38;if(cache['has'](_0x50f406))return cache[_0x477aca(0x1d8)](_0x50f406);const _0xefb0b=await listDatasets(_0x50f406),_0x4c978a=new Map();for(const _0x19287e of _0xefb0b){const _0x2e58fe=_0x19287e[_0x477aca(0x1d7)];_0x2e58fe?.[_0x477aca(0x1e9)]!=null&&_0x4c978a['set'](_0x2e58fe[_0x477aca(0x1e9)],_0x2e58fe['dbName']??_0x477aca(0x1e8)+_0x2e58fe['dbId']);}const _0x1e7d71=[..._0x4c978a[_0x477aca(0x1e0)]()][_0x477aca(0x1e2)](([_0x14b13e,_0x34f670])=>({'dbId':_0x14b13e,'dbName':_0x34f670}));return cache['set'](_0x50f406,_0x1e7d71),_0x1e7d71;}export async function resolveDb(_0x25998c,_0x403898){const _0x3d3516=a233_0xee38,_0x5bb733=await listDatabases(_0x25998c);if(_0x5bb733[_0x3d3516(0x1cf)]===0x0)return{'resolved':[],'error':_0x3d3516(0x1d0)+_0x25998c+_0x3d3516(0x1e7)};if(!_0x403898)return{'resolved':_0x5bb733};const _0x17e4a7=Number(_0x403898);if(!Number[_0x3d3516(0x1d9)](_0x17e4a7)){const _0x20f804=_0x5bb733[_0x3d3516(0x1ec)](_0x51fb95=>_0x51fb95[_0x3d3516(0x1e9)]===_0x17e4a7);if(_0x20f804)return{'resolved':[_0x20f804]};}const _0x329465=_0x403898[_0x3d3516(0x1ce)](),_0x5e4756=_0x5bb733[_0x3d3516(0x1e6)](_0x5d429c=>_0x5d429c[_0x3d3516(0x1e1)][_0x3d3516(0x1ce)]()[_0x3d3516(0x1d3)](_0x329465));if(_0x5e4756[_0x3d3516(0x1cf)]>0x0)return{'resolved':_0x5e4756};const _0x12469d=_0x5bb733['map'](_0x1795b6=>_0x1795b6[_0x3d3516(0x1e1)]+'\x20('+_0x1795b6[_0x3d3516(0x1e9)]+')')[_0x3d3516(0x1dd)](',\x20');return{'resolved':[],'error':_0x3d3516(0x1eb)+_0x403898+_0x3d3516(0x1df)+_0x25998c+_0x3d3516(0x1dc)+_0x12469d+_0x3d3516(0x1d5)};}export async function resolveOneDb(_0x20708f,_0x26c496){const _0x89fef=a233_0xee38,{resolved:_0x44969d,error:_0x1458f5}=await resolveDb(_0x20708f,_0x26c496);if(_0x1458f5)return{'db':null,'error':_0x1458f5};if(_0x44969d[_0x89fef(0x1cf)]===0x1)return{'db':_0x44969d[0x0]};if(!_0x26c496){const _0x1c03c7=_0x44969d[_0x89fef(0x1e2)](_0x5d1b20=>_0x5d1b20[_0x89fef(0x1e1)]+'\x20('+_0x5d1b20['dbId']+')')[_0x89fef(0x1dd)](',\x20');return{'db':null,'error':_0x89fef(0x1da)+_0x1c03c7};}const _0x3e9eec=_0x44969d[_0x89fef(0x1e2)](_0x4599ba=>_0x4599ba[_0x89fef(0x1e1)]+'\x20('+_0x4599ba[_0x89fef(0x1e9)]+')')[_0x89fef(0x1dd)](',\x20');return{'db':null,'error':'\x22'+_0x26c496+_0x89fef(0x1d4)+_0x3e9eec+_0x89fef(0x1e3)};}function a233_0x5d29(){const _0x4d6648=['Multiple\x20databases\x20found.\x20Specify\x20one\x20with\x20--db:\x20','382843mdihFX','\x22.\x20Available:\x20','join','2766084QmfMri','\x22\x20under\x20app\x20\x22','entries','dbName','map','.\x20Be\x20more\x20specific.','950618mBuVVx','42QwBiZF','filter','\x22.\x20Make\x20sure\x20datasets\x20have\x20been\x20created.','db-','dbId','940320GNpiMG','No\x20database\x20matching\x20\x22','find','toLowerCase','length','No\x20linked\x20databases\x20found\x20under\x20app\x20\x22','2120045ycFgeT','2338770QVCaZD','includes','\x22\x20matches\x20multiple\x20databases:\x20','.\x20If\x20this\x20db\x20belongs\x20to\x20another\x20app,\x20rerun\x20with\x20--appcode\x20<appCode>.','46868aikBYl','dbtableConfig','get','isNaN'];a233_0x5d29=function(){return _0x4d6648;};return a233_0x5d29();}export async function getDbName(_0x2089dd,_0x168cd8){const _0x5d0839=a233_0xee38,_0x19d040=await listDatabases(_0x2089dd);return _0x19d040[_0x5d0839(0x1ec)](_0x42d479=>_0x42d479[_0x5d0839(0x1e9)]===_0x168cd8)?.[_0x5d0839(0x1e1)];}
1
+ function a226_0x15b6(_0x4931ef,_0x2f0a4c){_0x4931ef=_0x4931ef-0x181;const _0x3a2bc9=a226_0x3a2b();let _0x15b606=_0x3a2bc9[_0x4931ef];return _0x15b606;}(function(_0x45e439,_0x4f2b90){const _0x3ad8a5=a226_0x15b6,_0x561d34=_0x45e439();while(!![]){try{const _0x5b39b9=-parseInt(_0x3ad8a5(0x19e))/0x1+-parseInt(_0x3ad8a5(0x19c))/0x2*(-parseInt(_0x3ad8a5(0x193))/0x3)+parseInt(_0x3ad8a5(0x19f))/0x4*(-parseInt(_0x3ad8a5(0x194))/0x5)+-parseInt(_0x3ad8a5(0x188))/0x6+-parseInt(_0x3ad8a5(0x19d))/0x7*(-parseInt(_0x3ad8a5(0x199))/0x8)+-parseInt(_0x3ad8a5(0x18a))/0x9+parseInt(_0x3ad8a5(0x184))/0xa;if(_0x5b39b9===_0x4f2b90)break;else _0x561d34['push'](_0x561d34['shift']());}catch(_0x4b0b4e){_0x561d34['push'](_0x561d34['shift']());}}}(a226_0x3a2b,0xf2051));import{listDatasets}from'../core/api-client.js';const cache=new Map();export async function listDatabases(_0x591797){const _0x387c70=a226_0x15b6;if(cache[_0x387c70(0x186)](_0x591797))return cache[_0x387c70(0x197)](_0x591797);const _0x1ea5e7=await listDatasets(_0x591797),_0x1bf43c=new Map();for(const _0x4d3865 of _0x1ea5e7){const _0x2e3b11=_0x4d3865[_0x387c70(0x18f)];_0x2e3b11?.[_0x387c70(0x182)]!=null&&_0x1bf43c[_0x387c70(0x192)](_0x2e3b11['dbId'],_0x2e3b11[_0x387c70(0x198)]??'db-'+_0x2e3b11['dbId']);}const _0x2e2900=[..._0x1bf43c['entries']()][_0x387c70(0x19a)](([_0x1213a9,_0x202c88])=>({'dbId':_0x1213a9,'dbName':_0x202c88}));return cache[_0x387c70(0x192)](_0x591797,_0x2e2900),_0x2e2900;}function a226_0x3a2b(){const _0x2d8494=['No\x20linked\x20databases\x20found\x20under\x20app\x20\x22','has','includes','7203840CXeBMW','join','7682355CzvwUl','filter','.\x20Be\x20more\x20specific.','.\x20If\x20this\x20db\x20belongs\x20to\x20another\x20app,\x20rerun\x20with\x20--appcode\x20<appCode>.','length','dbtableConfig','\x22.\x20Available:\x20','No\x20database\x20matching\x20\x22','set','1152hCoifi','8994970xjGWDA','isNaN','Multiple\x20databases\x20found.\x20Specify\x20one\x20with\x20--db:\x20','get','dbName','152Ufikgi','map','\x22\x20matches\x20multiple\x20databases:\x20','8410eOjXSf','189427WnxuUr','1149961kcWQWK','4yrwvHf','toLowerCase','\x22.\x20Make\x20sure\x20datasets\x20have\x20been\x20created.','dbId','find','38656240jhlIxQ'];a226_0x3a2b=function(){return _0x2d8494;};return a226_0x3a2b();}export async function resolveDb(_0x31cd5d,_0x321fdd){const _0x252239=a226_0x15b6,_0x32a5a3=await listDatabases(_0x31cd5d);if(_0x32a5a3['length']===0x0)return{'resolved':[],'error':_0x252239(0x185)+_0x31cd5d+_0x252239(0x181)};if(!_0x321fdd)return{'resolved':_0x32a5a3};const _0x15586f=Number(_0x321fdd);if(!Number[_0x252239(0x195)](_0x15586f)){const _0x4bbb7f=_0x32a5a3[_0x252239(0x183)](_0x27769b=>_0x27769b[_0x252239(0x182)]===_0x15586f);if(_0x4bbb7f)return{'resolved':[_0x4bbb7f]};}const _0x5caf62=_0x321fdd[_0x252239(0x1a0)](),_0x5c9ea2=_0x32a5a3[_0x252239(0x18b)](_0x2b26c1=>_0x2b26c1[_0x252239(0x198)]['toLowerCase']()[_0x252239(0x187)](_0x5caf62));if(_0x5c9ea2[_0x252239(0x18e)]>0x0)return{'resolved':_0x5c9ea2};const _0x1dd3f5=_0x32a5a3[_0x252239(0x19a)](_0x2f2630=>_0x2f2630[_0x252239(0x198)]+'\x20('+_0x2f2630[_0x252239(0x182)]+')')[_0x252239(0x189)](',\x20');return{'resolved':[],'error':_0x252239(0x191)+_0x321fdd+'\x22\x20under\x20app\x20\x22'+_0x31cd5d+_0x252239(0x190)+_0x1dd3f5+_0x252239(0x18d)};}export async function resolveOneDb(_0x1fbc35,_0x529696){const _0x1adcbd=a226_0x15b6,{resolved:_0x186235,error:_0xef6150}=await resolveDb(_0x1fbc35,_0x529696);if(_0xef6150)return{'db':null,'error':_0xef6150};if(_0x186235['length']===0x1)return{'db':_0x186235[0x0]};if(!_0x529696){const _0x538571=_0x186235['map'](_0xdf03e1=>_0xdf03e1[_0x1adcbd(0x198)]+'\x20('+_0xdf03e1[_0x1adcbd(0x182)]+')')[_0x1adcbd(0x189)](',\x20');return{'db':null,'error':_0x1adcbd(0x196)+_0x538571};}const _0x7e1e04=_0x186235['map'](_0x30bb5d=>_0x30bb5d[_0x1adcbd(0x198)]+'\x20('+_0x30bb5d[_0x1adcbd(0x182)]+')')[_0x1adcbd(0x189)](',\x20');return{'db':null,'error':'\x22'+_0x529696+_0x1adcbd(0x19b)+_0x7e1e04+_0x1adcbd(0x18c)};}export async function getDbName(_0x1ca2be,_0x16b9e8){const _0x662222=a226_0x15b6,_0x385d3b=await listDatabases(_0x1ca2be);return _0x385d3b[_0x662222(0x183)](_0x587ecc=>_0x587ecc[_0x662222(0x182)]===_0x16b9e8)?.[_0x662222(0x198)];}
@@ -1 +1 @@
1
- function a234_0x3796(){const _0x3c74e0=['page','.rabetbase','8382344DqhZIo','388BdvgEX','16209mYXmBE','2406656GVOUgT','17785wDUksZ','3623949zcCUQa','F_OK','appPagesDir','page.lock.json','441171enODaw','toUpperCase','.json','cwd','264VHiOjD','706410rxqGoS','360RXgtln'];a234_0x3796=function(){return _0x3c74e0;};return a234_0x3796();}const a234_0x3ee305=a234_0x4d6e;(function(_0x4bebe9,_0x529c94){const _0x17b791=a234_0x4d6e,_0x3dfe6b=_0x4bebe9();while(!![]){try{const _0x1d78a9=-parseInt(_0x17b791(0x182))/0x1+parseInt(_0x17b791(0x177))/0x2+parseInt(_0x17b791(0x176))/0x3*(parseInt(_0x17b791(0x175))/0x4)+parseInt(_0x17b791(0x178))/0x5*(parseInt(_0x17b791(0x181))/0x6)+parseInt(_0x17b791(0x179))/0x7+parseInt(_0x17b791(0x174))/0x8+parseInt(_0x17b791(0x17d))/0x9*(-parseInt(_0x17b791(0x183))/0xa);if(_0x1d78a9===_0x529c94)break;else _0x3dfe6b['push'](_0x3dfe6b['shift']());}catch(_0x4f5eec){_0x3dfe6b['push'](_0x3dfe6b['shift']());}}}(a234_0x3796,0xeed9d));import{constants}from'node:fs';import{access,mkdir}from'node:fs/promises';import{dirname,join,resolve}from'node:path';function a234_0x4d6e(_0x7fcc6f,_0x2b1cbe){_0x7fcc6f=_0x7fcc6f-0x174;const _0x3796eb=a234_0x3796();let _0x4d6e14=_0x3796eb[_0x7fcc6f];return _0x4d6e14;}export function loadPageProjectConfig(_0x1a2b71,_0x5506db=process[a234_0x3ee305(0x180)]()){const _0x2266d7=a234_0x3ee305,_0x5987f5=resolve(_0x5506db),_0x161592=join(_0x5987f5,_0x2266d7(0x185),_0x2266d7(0x184));return{'projectRoot':_0x5987f5,'pagesBaseDir':_0x161592,'appPagesDir':join(_0x161592,_0x1a2b71),'lockFilePath':join(_0x5987f5,_0x2266d7(0x185),_0x2266d7(0x17c))};}export function buildPageFileName(_0x4b0c9c,_0x7ad99e){const _0x54cca9=a234_0x3ee305;return _0x4b0c9c+'-'+String(_0x7ad99e)[_0x54cca9(0x17e)]()+_0x54cca9(0x17f);}export function resolvePageFilePath(_0x381479,_0x2a9c70,_0x6ad36b){const _0x3c5ae6=a234_0x3ee305;return join(_0x381479[_0x3c5ae6(0x17b)],buildPageFileName(_0x2a9c70,_0x6ad36b));}export async function ensureParentDirectory(_0x242e69){await mkdir(dirname(_0x242e69),{'recursive':!![]});}export async function fileExists(_0x159d60){const _0x377eff=a234_0x3ee305;try{return await access(_0x159d60,constants[_0x377eff(0x17a)]),!![];}catch{return![];}}
1
+ const a227_0x3e2a53=a227_0x506f;(function(_0x2c02d9,_0x3f8aa7){const _0x116240=a227_0x506f,_0x20cee5=_0x2c02d9();while(!![]){try{const _0x43046a=parseInt(_0x116240(0x1f2))/0x1*(parseInt(_0x116240(0x1f4))/0x2)+parseInt(_0x116240(0x1e9))/0x3*(parseInt(_0x116240(0x1ee))/0x4)+-parseInt(_0x116240(0x1eb))/0x5*(parseInt(_0x116240(0x1f8))/0x6)+-parseInt(_0x116240(0x1e8))/0x7*(parseInt(_0x116240(0x1f6))/0x8)+parseInt(_0x116240(0x1ec))/0x9+-parseInt(_0x116240(0x1f7))/0xa+parseInt(_0x116240(0x1f9))/0xb*(parseInt(_0x116240(0x1f3))/0xc);if(_0x43046a===_0x3f8aa7)break;else _0x20cee5['push'](_0x20cee5['shift']());}catch(_0x15457f){_0x20cee5['push'](_0x20cee5['shift']());}}}(a227_0x1d3d,0x57f14));import{constants}from'node:fs';function a227_0x506f(_0x1c7ee8,_0x35f7bd){_0x1c7ee8=_0x1c7ee8-0x1e8;const _0x1d3d81=a227_0x1d3d();let _0x506fb4=_0x1d3d81[_0x1c7ee8];return _0x506fb4;}import{access,mkdir}from'node:fs/promises';import{dirname,join,resolve}from'node:path';export function loadPageProjectConfig(_0x1d66ab,_0x320507=process[a227_0x3e2a53(0x1f5)]()){const _0x1536be=a227_0x3e2a53,_0x596200=resolve(_0x320507),_0x21825c=join(_0x596200,'.rabetbase','page');return{'projectRoot':_0x596200,'pagesBaseDir':_0x21825c,'appPagesDir':join(_0x21825c,_0x1d66ab),'lockFilePath':join(_0x596200,_0x1536be(0x1ef),_0x1536be(0x1f0))};}function a227_0x1d3d(){const _0x54df25=['755880zIFEEL','3442338AyJZwU','1588103yJbnzz','295841gBNepp','5283aCBTHm','F_OK','5PfpPaB','4972815Bwgedk','appPagesDir','692aQtBzE','.rabetbase','page.lock.json','.json','287fiFfjF','12LvCZjI','350ofNxYh','cwd','8xpANMv'];a227_0x1d3d=function(){return _0x54df25;};return a227_0x1d3d();}export function buildPageFileName(_0x6c6438,_0x5d43ea){const _0x468bfe=a227_0x3e2a53;return _0x6c6438+'-'+String(_0x5d43ea)['toUpperCase']()+_0x468bfe(0x1f1);}export function resolvePageFilePath(_0x10291e,_0x2a7092,_0x28aa07){const _0x3eb289=a227_0x3e2a53;return join(_0x10291e[_0x3eb289(0x1ed)],buildPageFileName(_0x2a7092,_0x28aa07));}export async function ensureParentDirectory(_0x4ed408){await mkdir(dirname(_0x4ed408),{'recursive':!![]});}export async function fileExists(_0x429718){const _0x567a24=a227_0x3e2a53;try{return await access(_0x429718,constants[_0x567a24(0x1ea)]),!![];}catch{return![];}}
@@ -1 +1 @@
1
- (function(_0x39946b,_0x2b78c4){const _0x520847=a235_0x59ff,_0x57d3e4=_0x39946b();while(!![]){try{const _0x533538=-parseInt(_0x520847(0x147))/0x1*(-parseInt(_0x520847(0x140))/0x2)+-parseInt(_0x520847(0x143))/0x3+-parseInt(_0x520847(0x141))/0x4*(parseInt(_0x520847(0x14c))/0x5)+-parseInt(_0x520847(0x14d))/0x6+-parseInt(_0x520847(0x14b))/0x7+parseInt(_0x520847(0x145))/0x8*(-parseInt(_0x520847(0x149))/0x9)+parseInt(_0x520847(0x142))/0xa;if(_0x533538===_0x2b78c4)break;else _0x57d3e4['push'](_0x57d3e4['shift']());}catch(_0x1b5d79){_0x57d3e4['push'](_0x57d3e4['shift']());}}}(a235_0x5bc1,0x4ab4d));import a235_0x2b8e28 from'node:crypto';import{readFile}from'node:fs/promises';export function serializePageSchemaForFile(_0x569de9){const _0x5c4dd6=a235_0x59ff;return JSON['stringify'](JSON[_0x5c4dd6(0x14a)](_0x569de9),null,0x2)+'\x0a';}export function computePageContentHash(_0x5980cf){const _0x2df08d=a235_0x59ff;return a235_0x2b8e28[_0x2df08d(0x14f)](_0x2df08d(0x150))[_0x2df08d(0x146)](_0x5980cf)[_0x2df08d(0x144)](_0x2df08d(0x14e));}export function computeSerializedSchemaHash(_0x11dace){return computePageContentHash(serializePageSchemaForFile(_0x11dace));}export async function computePageFileHash(_0xebc310){const _0x453cdb=a235_0x59ff,_0x1b9107=await readFile(_0xebc310,_0x453cdb(0x148));return computePageContentHash(_0x1b9107);}function a235_0x59ff(_0x582579,_0xab72f1){_0x582579=_0x582579-0x140;const _0x5bc1d4=a235_0x5bc1();let _0x59ffe0=_0x5bc1d4[_0x582579];return _0x59ffe0;}function a235_0x5bc1(){const _0x5500ed=['digest','16GePLLw','update','25058BdJHln','utf8','2111409njxHth','parse','2007257JNvnfe','9155DecLdH','3365808LfoXiT','hex','createHash','md5','8tmNYgo','844EKwMrZ','22882700eOltFn','1137729hkgRJe'];a235_0x5bc1=function(){return _0x5500ed;};return a235_0x5bc1();}
1
+ (function(_0x3369e9,_0x1c4d95){const _0x497081=a228_0x59d1,_0x2bb6df=_0x3369e9();while(!![]){try{const _0x15a2e6=-parseInt(_0x497081(0x11f))/0x1*(parseInt(_0x497081(0x128))/0x2)+parseInt(_0x497081(0x11d))/0x3*(-parseInt(_0x497081(0x11b))/0x4)+-parseInt(_0x497081(0x126))/0x5+parseInt(_0x497081(0x129))/0x6+parseInt(_0x497081(0x11e))/0x7*(-parseInt(_0x497081(0x123))/0x8)+-parseInt(_0x497081(0x120))/0x9+parseInt(_0x497081(0x12a))/0xa*(parseInt(_0x497081(0x125))/0xb);if(_0x15a2e6===_0x1c4d95)break;else _0x2bb6df['push'](_0x2bb6df['shift']());}catch(_0x367500){_0x2bb6df['push'](_0x2bb6df['shift']());}}}(a228_0xbc75,0x2599c));import a228_0x3fb347 from'node:crypto';import{readFile}from'node:fs/promises';function a228_0x59d1(_0x3fb0fe,_0x13137c){_0x3fb0fe=_0x3fb0fe-0x11b;const _0xbc75fe=a228_0xbc75();let _0x59d150=_0xbc75fe[_0x3fb0fe];return _0x59d150;}export function serializePageSchemaForFile(_0x5ebb18){const _0x445145=a228_0x59d1;return JSON[_0x445145(0x122)](JSON['parse'](_0x5ebb18),null,0x2)+'\x0a';}export function computePageContentHash(_0x4c9d57){const _0x5472f3=a228_0x59d1;return a228_0x3fb347['createHash']('md5')[_0x5472f3(0x121)](_0x4c9d57)[_0x5472f3(0x124)](_0x5472f3(0x11c));}function a228_0xbc75(){const _0x19d8d6=['8IeXULl','digest','132OLddvD','890335KTcXIz','utf8','14RyJfgg','1189926QfQMeb','679130edyXJT','996972GlrYEp','hex','3sKIDTI','103789xbkaAW','28004IJADLM','1989900rzzbMC','update','stringify'];a228_0xbc75=function(){return _0x19d8d6;};return a228_0xbc75();}export function computeSerializedSchemaHash(_0x156724){return computePageContentHash(serializePageSchemaForFile(_0x156724));}export async function computePageFileHash(_0x3d5b2d){const _0x300465=a228_0x59d1,_0x5bda69=await readFile(_0x3d5b2d,_0x300465(0x127));return computePageContentHash(_0x5bda69);}
@@ -1 +1 @@
1
- (function(_0x313f21,_0x417085){const _0x4a891a=a236_0x359a,_0x3825fa=_0x313f21();while(!![]){try{const _0x26078e=parseInt(_0x4a891a(0x1ab))/0x1*(-parseInt(_0x4a891a(0x196))/0x2)+-parseInt(_0x4a891a(0x1a1))/0x3*(parseInt(_0x4a891a(0x1a4))/0x4)+-parseInt(_0x4a891a(0x1a0))/0x5*(parseInt(_0x4a891a(0x1aa))/0x6)+parseInt(_0x4a891a(0x19f))/0x7*(parseInt(_0x4a891a(0x19b))/0x8)+-parseInt(_0x4a891a(0x19d))/0x9*(-parseInt(_0x4a891a(0x1a2))/0xa)+-parseInt(_0x4a891a(0x1a7))/0xb+parseInt(_0x4a891a(0x1a6))/0xc*(parseInt(_0x4a891a(0x1a5))/0xd);if(_0x26078e===_0x417085)break;else _0x3825fa['push'](_0x3825fa['shift']());}catch(_0x3a0a96){_0x3825fa['push'](_0x3825fa['shift']());}}}(a236_0x483f,0xcc292));import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';export function createEmptyPageLock(){return{'apps':{}};}export function ensurePageLockScope(_0x376018,_0x17cf7b){const _0x3ead5e=a236_0x359a,_0x5bd2bb={'apps':_0x376018[_0x3ead5e(0x1a3)]&&typeof _0x376018['apps']===_0x3ead5e(0x19c)?_0x376018['apps']:{}};let _0x4669c9=_0x5bd2bb['apps'][_0x17cf7b];if(!_0x4669c9)return _0x4669c9={'lastSync':'','pages':{}},_0x5bd2bb[_0x3ead5e(0x1a3)][_0x17cf7b]=_0x4669c9,{'lockData':_0x5bd2bb,'appLock':_0x4669c9};return!_0x4669c9[_0x3ead5e(0x1a9)]&&(_0x4669c9['lastSync']=''),(!_0x4669c9[_0x3ead5e(0x199)]||typeof _0x4669c9['pages']!==_0x3ead5e(0x19c))&&(_0x4669c9[_0x3ead5e(0x199)]={}),{'lockData':_0x5bd2bb,'appLock':_0x4669c9};}function a236_0x483f(){const _0x31bec6=['180Idrytl','apps','4juoohy','12078014lIHBGh','24ZrklLC','15887058HUVPrk','parse','lastSync','1861986bhCyUP','207203kUeFOn','6nUNUhl','utf8','Failed\x20to\x20read\x20page\x20lock\x20file:\x20','pages','stringify','16uXpFYZ','object','752769YhPuqR','ENOENT','5096189clyShC','15yHNbAN','2959878KJjXBz'];a236_0x483f=function(){return _0x31bec6;};return a236_0x483f();}export async function readPageLockFile(_0x22415f){const _0x2f5517=a236_0x359a;try{const _0x1832e1=await readFile(_0x22415f,_0x2f5517(0x197)),_0x534c3b=JSON[_0x2f5517(0x1a8)](_0x1832e1);return{'apps':_0x534c3b[_0x2f5517(0x1a3)]&&typeof _0x534c3b['apps']===_0x2f5517(0x19c)?_0x534c3b['apps']:{}};}catch(_0x12202f){if(_0x12202f['code']===_0x2f5517(0x19e))return null;throw new Error(_0x2f5517(0x198)+String(_0x12202f));}}function a236_0x359a(_0x93671,_0x1d16ed){_0x93671=_0x93671-0x196;const _0x483f70=a236_0x483f();let _0x359a89=_0x483f70[_0x93671];return _0x359a89;}export async function writePageLockFile(_0x3d36e5,_0x50d655){const _0x44ebf5=a236_0x359a;await mkdir(dirname(_0x3d36e5),{'recursive':!![]}),await writeFile(_0x3d36e5,JSON[_0x44ebf5(0x19a)](_0x50d655,null,0x2),_0x44ebf5(0x197));}
1
+ (function(_0x4c89f4,_0x31790e){const _0x20d645=a229_0x2e05,_0x59041e=_0x4c89f4();while(!![]){try{const _0x309ef0=-parseInt(_0x20d645(0x117))/0x1+parseInt(_0x20d645(0x114))/0x2+-parseInt(_0x20d645(0x121))/0x3*(parseInt(_0x20d645(0x116))/0x4)+parseInt(_0x20d645(0x120))/0x5*(parseInt(_0x20d645(0x11e))/0x6)+-parseInt(_0x20d645(0x113))/0x7+parseInt(_0x20d645(0x11b))/0x8*(parseInt(_0x20d645(0x115))/0x9)+-parseInt(_0x20d645(0x112))/0xa;if(_0x309ef0===_0x31790e)break;else _0x59041e['push'](_0x59041e['shift']());}catch(_0x2d3761){_0x59041e['push'](_0x59041e['shift']());}}}(a229_0xb5a1,0x86e2b));import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';export function createEmptyPageLock(){return{'apps':{}};}export function ensurePageLockScope(_0xfa1a67,_0x11fc99){const _0x2ac67=a229_0x2e05,_0x11650f={'apps':_0xfa1a67['apps']&&typeof _0xfa1a67[_0x2ac67(0x122)]===_0x2ac67(0x124)?_0xfa1a67['apps']:{}};let _0x5cbcb0=_0x11650f[_0x2ac67(0x122)][_0x11fc99];if(!_0x5cbcb0)return _0x5cbcb0={'lastSync':'','pages':{}},_0x11650f[_0x2ac67(0x122)][_0x11fc99]=_0x5cbcb0,{'lockData':_0x11650f,'appLock':_0x5cbcb0};return!_0x5cbcb0[_0x2ac67(0x11d)]&&(_0x5cbcb0[_0x2ac67(0x11d)]=''),(!_0x5cbcb0[_0x2ac67(0x123)]||typeof _0x5cbcb0[_0x2ac67(0x123)]!==_0x2ac67(0x124))&&(_0x5cbcb0['pages']={}),{'lockData':_0x11650f,'appLock':_0x5cbcb0};}function a229_0xb5a1(){const _0x4d8c10=['apps','pages','object','924550qoHTek','1380547cJbLVR','1929326oeDFDm','269109iODBpy','2135764YLddjl','794151RwhCsa','ENOENT','parse','stringify','72gyEIVl','Failed\x20to\x20read\x20page\x20lock\x20file:\x20','lastSync','5618922zoHXhK','utf8','5mOXAbA','3mvLJFE'];a229_0xb5a1=function(){return _0x4d8c10;};return a229_0xb5a1();}export async function readPageLockFile(_0x5d7858){const _0x531e1f=a229_0x2e05;try{const _0x17e2b1=await readFile(_0x5d7858,_0x531e1f(0x11f)),_0x2189b8=JSON[_0x531e1f(0x119)](_0x17e2b1);return{'apps':_0x2189b8['apps']&&typeof _0x2189b8[_0x531e1f(0x122)]===_0x531e1f(0x124)?_0x2189b8['apps']:{}};}catch(_0x54c172){if(_0x54c172['code']===_0x531e1f(0x118))return null;throw new Error(_0x531e1f(0x11c)+String(_0x54c172));}}function a229_0x2e05(_0x4f4569,_0x4a7a14){_0x4f4569=_0x4f4569-0x112;const _0xb5a1d0=a229_0xb5a1();let _0x2e0595=_0xb5a1d0[_0x4f4569];return _0x2e0595;}export async function writePageLockFile(_0x217c30,_0x1b3dc6){const _0x4876bd=a229_0x2e05;await mkdir(dirname(_0x217c30),{'recursive':!![]}),await writeFile(_0x217c30,JSON[_0x4876bd(0x11a)](_0x1b3dc6,null,0x2),_0x4876bd(0x11f));}
@@ -1 +1 @@
1
- (function(_0x3247bd,_0x24007a){const _0x4908c4=a238_0x1878,_0x25719b=_0x3247bd();while(!![]){try{const _0x3ecd04=parseInt(_0x4908c4(0x188))/0x1*(-parseInt(_0x4908c4(0x18d))/0x2)+-parseInt(_0x4908c4(0x173))/0x3+parseInt(_0x4908c4(0x170))/0x4+-parseInt(_0x4908c4(0x177))/0x5*(parseInt(_0x4908c4(0x187))/0x6)+parseInt(_0x4908c4(0x199))/0x7+parseInt(_0x4908c4(0x167))/0x8+-parseInt(_0x4908c4(0x186))/0x9*(parseInt(_0x4908c4(0x16c))/0xa);if(_0x3ecd04===_0x24007a)break;else _0x25719b['push'](_0x25719b['shift']());}catch(_0x422887){_0x25719b['push'](_0x25719b['shift']());}}}(a238_0x2c71,0xee13b));import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';function a238_0x2c71(){const _0xe4237=['reduce','split','10075779bmpicg','replaceAll','No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.','unknown','push','\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.','JOIN_INDEX_NOT_USABLE','slice','The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.','(?:^|[^\x5cw$])','replace','metadataAvailable','columns','using','exec','min','unavailable','Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.','Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','\x5cs*\x5c.\x5cs*[\x5cw$]+','toUpperCase','sort','position','toLowerCase','5419712AjzdcR','index','alias','from','trim','50UfiKbU','JOIN_PREDICATE_UNSUPPORTED','\x5c$&','Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.','2540028RbCraW','containsUnresolvedInclude','MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.','142371flTAgL','Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.','covered','MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','275FFMAsa','sql','natural','startsWith','matchedPrefix','No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.','max','map','match','search','some','tableName','right','full','matchAll','841779nhpOZf','5118NecZgP','1mKsdbJ','__sq__','length','inner','includes','2429356ALcFcp','join','test','indexes','filter','error','add','table','MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.','has'];a238_0x2c71=function(){return _0xe4237;};return a238_0x2c71();}export function auditSqlJoinIndexes(_0x1d286d,_0x101706){const _0x48f488=a238_0x1878,_0x56d8c0=[],_0x52abf9=normalizeSqlForStaticAnalysis(_0x1d286d),_0x491e30=(_0x52abf9[_0x48f488(0x192)]?[]:extractJoinFacts(_0x52abf9[_0x48f488(0x178)]))[_0x48f488(0x17e)](_0x1b5a50=>{const _0x49af44=_0x48f488;if(_0x1b5a50['unsupportedPredicate']||_0x1b5a50[_0x49af44(0x1a5)][_0x49af44(0x18a)]===0x0)return _0x56d8c0[_0x49af44(0x19d)]({'code':_0x49af44(0x16d),'table':_0x1b5a50[_0x49af44(0x194)],'alias':_0x1b5a50['alias'],'columns':_0x1b5a50[_0x49af44(0x1a5)],'reason':_0x1b5a50['unsupportedReason']??_0x49af44(0x160)}),{'table':_0x1b5a50['table'],'alias':_0x1b5a50['alias'],'columns':_0x1b5a50['columns'],'status':_0x49af44(0x15f)};const _0x3e8278=resolveTableMetadata(_0x101706,_0x1b5a50[_0x49af44(0x194)]),_0x38b6e3=(_0x3e8278?.[_0x49af44(0x190)]??[])[_0x49af44(0x17e)](_0x449957=>({'index':_0x449957,'matchedPrefix':findEqualityPrefix(_0x449957[_0x49af44(0x1a5)],_0x1b5a50[_0x49af44(0x1a5)])}))['filter'](_0xd5272a=>_0xd5272a[_0x49af44(0x17b)][_0x49af44(0x18a)]>0x0),_0x554f1d=_0x38b6e3[_0x49af44(0x197)]((_0x18ccad,_0x3b405f)=>!_0x18ccad||_0x3b405f[_0x49af44(0x17b)][_0x49af44(0x18a)]>_0x18ccad[_0x49af44(0x17b)]['length']?_0x3b405f:_0x18ccad,_0x38b6e3[0x0]);if(_0x554f1d)return{'table':_0x1b5a50[_0x49af44(0x194)],'alias':_0x1b5a50[_0x49af44(0x169)],'columns':_0x1b5a50[_0x49af44(0x1a5)],'status':_0x49af44(0x175),'matchedIndex':{..._0x554f1d[_0x49af44(0x168)],'matchedPrefix':_0x554f1d[_0x49af44(0x17b)]}};const _0x149c14=_0x3e8278?.[_0x49af44(0x190)][_0x49af44(0x191)](_0x4d188f=>_0x4d188f[_0x49af44(0x1a5)][_0x49af44(0x181)](_0x43395b=>_0x1b5a50[_0x49af44(0x1a5)][_0x49af44(0x181)](_0x5a600f=>columnNamesMatch(_0x43395b,_0x5a600f))))??[];if(_0x149c14[_0x49af44(0x18a)]>0x0)return _0x56d8c0['push']({'code':_0x49af44(0x19f),'table':_0x1b5a50['table'],'alias':_0x1b5a50['alias'],'columns':_0x1b5a50[_0x49af44(0x1a5)],'reason':_0x49af44(0x174)}),{'table':_0x1b5a50['table'],'alias':_0x1b5a50[_0x49af44(0x169)],'columns':_0x1b5a50['columns'],'status':'warning','candidateIndexes':_0x149c14};if(_0x3e8278&&_0x3e8278[_0x49af44(0x1a4)]!==![]&&_0x3e8278[_0x49af44(0x190)][_0x49af44(0x18a)]>0x0&&_0x1b5a50[_0x49af44(0x1a5)][_0x49af44(0x18a)]>0x0)return _0x56d8c0['push']({'code':'JOIN_INDEX_MISSING','table':_0x1b5a50[_0x49af44(0x194)],'alias':_0x1b5a50[_0x49af44(0x169)],'columns':_0x1b5a50[_0x49af44(0x1a5)],'reason':_0x49af44(0x19b)}),{'table':_0x1b5a50[_0x49af44(0x194)],'alias':_0x1b5a50[_0x49af44(0x169)],'columns':_0x1b5a50[_0x49af44(0x1a5)],'status':'warning'};return _0x56d8c0[_0x49af44(0x19d)]({'code':'INDEX_METADATA_UNAVAILABLE','table':_0x1b5a50[_0x49af44(0x194)],'alias':_0x1b5a50['alias'],'columns':_0x1b5a50[_0x49af44(0x1a5)],'reason':_0x3e8278?_0x49af44(0x1a1):_0x49af44(0x17c)}),{'table':_0x1b5a50[_0x49af44(0x194)],'alias':_0x1b5a50[_0x49af44(0x169)],'columns':_0x1b5a50[_0x49af44(0x1a5)],'status':'unavailable'};});return{'checked':_0x491e30[_0x48f488(0x18a)]>0x0,'joins':_0x491e30,'warnings':_0x56d8c0};}function extractJoinFacts(_0x42d68c){const _0x3353e2=a238_0x1878,_0x59c739=maskNestedQueries(stripSqlNoise(_0x42d68c)),_0x1205f7=maskQuotedIdentifiers(_0x59c739),_0x4de2b6=[],_0x253991=new Set(),_0x38c570=/\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 _0x1ce5e1 of _0x59c739[_0x3353e2(0x185)](_0x38c570)){const _0x1ea1a9=_0x1ce5e1['index']??0x0,_0x1321b9=_0x1ce5e1[0x0][_0x3353e2(0x180)](/\bJOIN\b/i),_0x449615=_0x1ea1a9+Math[_0x3353e2(0x17d)](0x0,_0x1321b9);if(!/^JOIN\b/i[_0x3353e2(0x18f)](_0x1205f7[_0x3353e2(0x1a0)](_0x449615)))continue;_0x253991[_0x3353e2(0x193)](_0x449615);const _0x346286=normalizeIdentifier(_0x1ce5e1[0x1]||'INNER'),_0xe5d413=normalizeIdentifier(_0x1ce5e1[0x2]??''),_0x56ffae=normalizeIdentifier(_0x1ce5e1[0x3]||_0xe5d413[_0x3353e2(0x198)]('.')['at'](-0x1)||_0xe5d413),_0x237211=[],_0x4d5b44=_0xe5d413===_0x3353e2(0x189);let _0xb862c=_0x346286===_0x3353e2(0x183)||_0x346286==='full'||_0x4d5b44,_0x4ec585=_0xb862c?_0x4d5b44?_0x3353e2(0x16f):_0x346286[_0x3353e2(0x163)]()+_0x3353e2(0x19e):undefined;const _0xeb66e=stripOuterParentheses(_0x1ce5e1[0x4]??''),_0xe1e1cf=_0xeb66e[_0x3353e2(0x18c)](MYBATIS_DYNAMIC_START_MARKER)||_0xeb66e[_0x3353e2(0x18c)](MYBATIS_DYNAMIC_END_MARKER),_0x2281b5=_0xeb66e[_0x3353e2(0x18c)](MYBATIS_INCLUDE_MARKER);_0xe1e1cf&&(_0xb862c=!![],_0x4ec585??=_0x3353e2(0x195));_0x2281b5&&(_0xb862c=!![],_0x4ec585??=_0x3353e2(0x172));const _0xe76267=_0xeb66e[_0x3353e2(0x19a)](MYBATIS_DYNAMIC_START_MARKER,'\x20')['replaceAll'](MYBATIS_DYNAMIC_END_MARKER,'\x20')[_0x3353e2(0x19a)](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0xe76267,'OR')&&(_0xb862c=!![],_0x4ec585??='OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.');for(const _0x484a88 of splitTopLevelAnd(_0xe76267)){const _0x2b4eb4=stripOuterParentheses(_0x484a88);if(hasTopLevelKeyword(_0x2b4eb4,'OR')){_0xb862c=!![],_0x4ec585??='OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.';continue;}const _0x42dbf4=splitEquality(_0x2b4eb4);if(!_0x42dbf4){containsColumnReference(_0x484a88,_0x56ffae)&&(_0xb862c=!![]);continue;}const _0x577d2a=parseDirectColumnReference(_0x42dbf4[0x0],_0x56ffae),_0x33780c=parseDirectColumnReference(_0x42dbf4[0x1],_0x56ffae),_0xc697de=containsColumnReference(_0x42dbf4[0x0],_0x56ffae),_0x2a12f8=containsColumnReference(_0x42dbf4[0x1],_0x56ffae),_0x48a0cf=_0x577d2a&&!_0x2a12f8?_0x577d2a:_0x33780c&&!_0xc697de?_0x33780c:null;if(_0x48a0cf&&!_0x237211[_0x3353e2(0x18c)](_0x48a0cf))_0x237211[_0x3353e2(0x19d)](_0x48a0cf);else!_0x48a0cf&&containsColumnReference(_0x484a88,_0x56ffae)&&(_0xb862c=!![]);}_0x4de2b6[_0x3353e2(0x19d)]({'table':_0xe5d413,'alias':_0x56ffae,'columns':_0x237211,'unsupportedPredicate':_0xb862c,'unsupportedReason':_0x4ec585,'containsUnresolvedInclude':_0x2281b5,'position':_0x449615});}for(const _0x4d4339 of _0x1205f7['matchAll'](/\bJOIN\b/gi)){const _0x4bd903=_0x4d4339[_0x3353e2(0x168)]??0x0;if(_0x253991[_0x3353e2(0x196)](_0x4bd903))continue;const _0x38c817=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/[_0x3353e2(0x15d)](_0x59c739['slice'](_0x4bd903+_0x4d4339[0x0][_0x3353e2(0x18a)])),_0x1c7016=normalizeIdentifier(_0x38c817?.[0x1]||'unknown'),_0x1956a6=normalizeIdentifier(_0x38c817?.[0x2]||''),_0x3a2bf8=isSqlClauseKeyword(_0x1956a6)?_0x1c7016[_0x3353e2(0x198)]('.')['at'](-0x1)||_0x1c7016:_0x1956a6||_0x1c7016['split']('.')['at'](-0x1)||_0x1c7016;_0x4de2b6['push']({'table':_0x1c7016,'alias':_0x3a2bf8,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x3353e2(0x161),'position':_0x4bd903});}const _0x326c04=_0x1205f7['indexOf'](MYBATIS_INCLUDE_MARKER);return _0x326c04>=0x0&&!_0x4de2b6[_0x3353e2(0x181)](_0xb292e0=>_0xb292e0[_0x3353e2(0x171)])&&_0x4de2b6[_0x3353e2(0x19d)]({'table':_0x3353e2(0x19c),'alias':'unknown','columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x3353e2(0x176),'containsUnresolvedInclude':!![],'position':_0x326c04}),_0x4de2b6[_0x3353e2(0x164)]((_0x56c114,_0x411b71)=>_0x56c114[_0x3353e2(0x165)]-_0x411b71[_0x3353e2(0x165)]);}function stripSqlNoise(_0x1ba683){const _0x2ddfbd=a238_0x1878,_0x2ccabd=Array[_0x2ddfbd(0x16a)](_0x1ba683),_0x56c944=(_0x17ada9,_0x578e80)=>{for(let _0x50a601=_0x17ada9;_0x50a601<_0x578e80;_0x50a601+=0x1){_0x2ccabd[_0x50a601]!=='\x0a'&&_0x2ccabd[_0x50a601]!=='\x0d'&&(_0x2ccabd[_0x50a601]='\x20');}};for(let _0x576aa7=0x0;_0x576aa7<_0x2ccabd[_0x2ddfbd(0x18a)];_0x576aa7+=0x1){const _0x30769b=_0x2ccabd[_0x576aa7],_0x58414d=_0x2ccabd[_0x576aa7+0x1];if(_0x30769b==='\x27'||_0x30769b==='\x22'||_0x30769b==='`'){const _0x5b17b2=_0x30769b,_0x17526f=_0x576aa7;_0x576aa7+=0x1;while(_0x576aa7<_0x2ccabd[_0x2ddfbd(0x18a)]){if(_0x2ccabd[_0x576aa7]==='\x5c'&&_0x576aa7+0x1<_0x2ccabd['length']){_0x576aa7+=0x2;continue;}if(_0x2ccabd[_0x576aa7]!==_0x5b17b2){_0x576aa7+=0x1;continue;}if(_0x2ccabd[_0x576aa7+0x1]===_0x5b17b2){_0x576aa7+=0x2;continue;}break;}if(_0x5b17b2==='\x27')_0x56c944(_0x17526f,Math[_0x2ddfbd(0x15e)](_0x576aa7+0x1,_0x2ccabd[_0x2ddfbd(0x18a)]));continue;}if(_0x30769b==='-'&&_0x58414d==='-'){const _0x3532f1=_0x576aa7;while(_0x576aa7<_0x2ccabd['length']&&_0x2ccabd[_0x576aa7]!=='\x0a')_0x576aa7+=0x1;_0x56c944(_0x3532f1,_0x576aa7);continue;}if(_0x30769b==='/'&&_0x58414d==='*'){const _0x4af9d1=_0x576aa7;_0x576aa7+=0x2;while(_0x576aa7<_0x2ccabd[_0x2ddfbd(0x18a)]&&!(_0x2ccabd[_0x576aa7]==='*'&&_0x2ccabd[_0x576aa7+0x1]==='/')){_0x576aa7+=0x1;}_0x576aa7=Math['min'](_0x576aa7+0x1,_0x2ccabd[_0x2ddfbd(0x18a)]-0x1),_0x56c944(_0x4af9d1,_0x576aa7+0x1);continue;}if(_0x30769b==='#'&&_0x58414d!=='{'){const _0x304d46=_0x576aa7;while(_0x576aa7<_0x2ccabd[_0x2ddfbd(0x18a)]&&_0x2ccabd[_0x576aa7]!=='\x0a')_0x576aa7+=0x1;_0x56c944(_0x304d46,_0x576aa7);continue;}if((_0x30769b==='#'||_0x30769b==='$')&&_0x58414d==='{'){const _0x30f290=_0x576aa7;_0x576aa7+=0x2;while(_0x576aa7<_0x2ccabd[_0x2ddfbd(0x18a)]&&_0x2ccabd[_0x576aa7]!=='}')_0x576aa7+=0x1;_0x56c944(_0x30f290,Math[_0x2ddfbd(0x15e)](_0x576aa7+0x1,_0x2ccabd[_0x2ddfbd(0x18a)]));}}return _0x2ccabd[_0x2ddfbd(0x18e)]('');}function maskQuotedIdentifiers(_0x5dc62f){const _0x4571bd=a238_0x1878,_0x37da55=Array[_0x4571bd(0x16a)](_0x5dc62f);for(let _0x291a69=0x0;_0x291a69<_0x37da55[_0x4571bd(0x18a)];_0x291a69+=0x1){const _0x4dcc45=_0x37da55[_0x291a69];if(_0x4dcc45!=='\x22'&&_0x4dcc45!=='`')continue;_0x291a69+=0x1;while(_0x291a69<_0x37da55[_0x4571bd(0x18a)]){if(_0x37da55[_0x291a69]===_0x4dcc45){if(_0x37da55[_0x291a69+0x1]===_0x4dcc45){_0x37da55[_0x291a69]='\x20',_0x37da55[_0x291a69+0x1]='\x20',_0x291a69+=0x2;continue;}break;}_0x37da55[_0x291a69]='\x20',_0x291a69+=0x1;}}return _0x37da55[_0x4571bd(0x18e)]('');}function maskNestedQueries(_0x120330){const _0x51d4f2=a238_0x1878,_0x1f4b01=Array[_0x51d4f2(0x16a)](_0x120330);for(let _0x1c5b23=0x0;_0x1c5b23<_0x1f4b01[_0x51d4f2(0x18a)];_0x1c5b23+=0x1){if(_0x1f4b01[_0x1c5b23]!=='(')continue;const _0x2c5503=_0x120330[_0x51d4f2(0x1a0)](_0x1c5b23+0x1);if(!/^\s*(?:SELECT|WITH)\b/i[_0x51d4f2(0x18f)](_0x2c5503))continue;let _0x4dc062=0x1,_0x28e31e=_0x1c5b23+0x1;for(;_0x28e31e<_0x1f4b01[_0x51d4f2(0x18a)]&&_0x4dc062>0x0;_0x28e31e+=0x1){if(_0x1f4b01[_0x28e31e]==='(')_0x4dc062+=0x1;if(_0x1f4b01[_0x28e31e]===')')_0x4dc062-=0x1;}if(_0x4dc062!==0x0)continue;for(let _0x41de79=_0x1c5b23;_0x41de79<_0x28e31e;_0x41de79+=0x1){_0x1f4b01[_0x41de79]='\x20';}const _0x31ee77=_0x51d4f2(0x189);for(let _0x5de3b0=0x0;_0x5de3b0<_0x31ee77[_0x51d4f2(0x18a)]&&_0x1c5b23+_0x5de3b0<_0x28e31e;_0x5de3b0+=0x1){_0x1f4b01[_0x1c5b23+_0x5de3b0]=_0x31ee77[_0x5de3b0];}_0x1c5b23=_0x28e31e-0x1;}return _0x1f4b01[_0x51d4f2(0x18e)]('');}function splitTopLevelAnd(_0x49f8d6){const _0x4fe569=a238_0x1878,_0x4cfac2=[];let _0x469825=0x0,_0x5444fa=0x0;for(let _0x408fbd=0x0;_0x408fbd<_0x49f8d6[_0x4fe569(0x18a)];_0x408fbd+=0x1){const _0x4b0ef9=_0x49f8d6[_0x408fbd];if(_0x4b0ef9==='(')_0x469825+=0x1;if(_0x4b0ef9===')')_0x469825=Math[_0x4fe569(0x17d)](0x0,_0x469825-0x1);_0x469825===0x0&&_0x49f8d6['slice'](_0x408fbd)[_0x4fe569(0x17f)](/^AND\b/i)&&(_0x408fbd===0x0||/\s/[_0x4fe569(0x18f)](_0x49f8d6[_0x408fbd-0x1]??''))&&(_0x4cfac2[_0x4fe569(0x19d)](_0x49f8d6['slice'](_0x5444fa,_0x408fbd)[_0x4fe569(0x16b)]()),_0x408fbd+=0x2,_0x5444fa=_0x408fbd+0x1);}const _0x56bd5c=_0x49f8d6[_0x4fe569(0x1a0)](_0x5444fa)[_0x4fe569(0x16b)]();if(_0x56bd5c)_0x4cfac2[_0x4fe569(0x19d)](_0x56bd5c);return _0x4cfac2;}function hasTopLevelKeyword(_0x4acc66,_0xe7acf5){const _0x3c8000=a238_0x1878;let _0x4a67ba=0x0;for(let _0x1a7665=0x0;_0x1a7665<_0x4acc66[_0x3c8000(0x18a)];_0x1a7665+=0x1){const _0x52b384=_0x4acc66[_0x1a7665];if(_0x52b384==='(')_0x4a67ba+=0x1;if(_0x52b384===')')_0x4a67ba=Math['max'](0x0,_0x4a67ba-0x1);if(_0x4a67ba!==0x0)continue;const _0x6d7648=_0x4acc66['slice'](_0x1a7665,_0x1a7665+_0xe7acf5['length']),_0x2e5ac2=_0x4acc66[_0x1a7665-0x1]??'\x20',_0xbc16d7=_0x4acc66[_0x1a7665+_0xe7acf5[_0x3c8000(0x18a)]]??'\x20';if(_0x6d7648[_0x3c8000(0x163)]()===_0xe7acf5[_0x3c8000(0x163)]()&&!/[\w$]/['test'](_0x2e5ac2)&&!/[\w$]/['test'](_0xbc16d7))return!![];}return![];}function splitEquality(_0x2ad912){const _0x4aa4e9=a238_0x1878,_0x12db58=stripOuterParentheses(_0x2ad912);let _0x57def4=0x0,_0x493f10;for(let _0x5c7977=0x0;_0x5c7977<_0x12db58['length'];_0x5c7977+=0x1){const _0x4f0d73=_0x12db58[_0x5c7977];if(_0x4f0d73==='(')_0x57def4+=0x1;if(_0x4f0d73===')')_0x57def4=Math[_0x4aa4e9(0x17d)](0x0,_0x57def4-0x1);const _0x59bfd0=_0x12db58[_0x5c7977-0x1]??'',_0x3f0e92=_0x12db58[_0x5c7977+0x1]??'';if(_0x4f0d73==='='&&_0x57def4===0x0&&!/[!<>=:]/[_0x4aa4e9(0x18f)](_0x59bfd0)&&_0x3f0e92!=='='){if(_0x493f10!==undefined)return null;_0x493f10=_0x5c7977;}}return _0x493f10===undefined?null:[_0x12db58[_0x4aa4e9(0x1a0)](0x0,_0x493f10)[_0x4aa4e9(0x16b)](),_0x12db58[_0x4aa4e9(0x1a0)](_0x493f10+0x1)[_0x4aa4e9(0x16b)]()];}function parseDirectColumnReference(_0x1c97b1,_0x32c40e){const _0x5390ae=a238_0x1878,_0x3d1a02=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/[_0x5390ae(0x15d)](stripOuterParentheses(_0x1c97b1));if(!_0x3d1a02)return null;if(normalizeIdentifier(_0x3d1a02[0x1]??'')!==normalizeIdentifier(_0x32c40e))return null;return normalizeIdentifier(_0x3d1a02[0x2]??'');}function containsColumnReference(_0x2de09d,_0x392878){const _0x4f3d56=a238_0x1878,_0x15dea7=_0x2de09d[_0x4f3d56(0x1a3)](/[`"]/g,''),_0x3db13c=_0x392878[_0x4f3d56(0x1a3)](/[.*+?^${}()|[\]\\]/g,_0x4f3d56(0x16e));return new RegExp(_0x4f3d56(0x1a2)+_0x3db13c+_0x4f3d56(0x162),'i')['test'](_0x15dea7);}function findEqualityPrefix(_0xf1db77,_0x35c75c){const _0x15dc3d=a238_0x1878,_0xb1c837=new Set(_0x35c75c[_0x15dc3d(0x17e)](normalizeIdentifier)),_0x4f4954=[];for(const _0x594a41 of _0xf1db77){if(!_0xb1c837[_0x15dc3d(0x196)](normalizeIdentifier(_0x594a41)))break;_0x4f4954['push'](_0x594a41);}return _0x4f4954;}function a238_0x1878(_0x373787,_0x37e5ed){_0x373787=_0x373787-0x15d;const _0x2c71ca=a238_0x2c71();let _0x1878b0=_0x2c71ca[_0x373787];return _0x1878b0;}function resolveTableMetadata(_0x17ceb8,_0x1e5ed7){const _0xf5679=a238_0x1878,_0x4cf24d=normalizeIdentifier(_0x1e5ed7),_0x514e44=_0x17ceb8[_0xf5679(0x191)](_0x2aa6e4=>normalizeIdentifier(_0x2aa6e4[_0xf5679(0x182)])===_0x4cf24d);if(_0x514e44[_0xf5679(0x18a)]===0x1)return _0x514e44[0x0];const _0x5be722=_0x4cf24d['includes']('.'),_0x4f0a43=_0x4cf24d[_0xf5679(0x198)]('.')['at'](-0x1),_0x464663=_0x17ceb8[_0xf5679(0x191)](_0x3814c4=>{const _0x516d92=_0xf5679,_0x1dbb38=normalizeIdentifier(_0x3814c4[_0x516d92(0x182)]);if(_0x5be722&&_0x1dbb38[_0x516d92(0x18c)]('.'))return![];return _0x1dbb38[_0x516d92(0x198)]('.')['at'](-0x1)===_0x4f0a43;});return _0x464663[_0xf5679(0x18a)]===0x1?_0x464663[0x0]:undefined;}function columnNamesMatch(_0x77379c,_0x3abccf){return normalizeIdentifier(_0x77379c)===normalizeIdentifier(_0x3abccf);}function normalizeIdentifier(_0x57da26){const _0xba297=a238_0x1878;return _0x57da26[_0xba297(0x1a3)](/[`"]/g,'')['trim']()[_0xba297(0x166)]();}function isSqlClauseKeyword(_0x1fd826){const _0x25cacf=a238_0x1878;return new Set(['on',_0x25cacf(0x1a6),'where',_0x25cacf(0x18e),_0x25cacf(0x18b),'left',_0x25cacf(0x183),_0x25cacf(0x184),'cross',_0x25cacf(0x179)])[_0x25cacf(0x196)](_0x1fd826);}function stripOuterParentheses(_0x3f0e0b){const _0x25e413=a238_0x1878;let _0x367a58=_0x3f0e0b[_0x25e413(0x16b)]();while(_0x367a58[_0x25e413(0x17a)]('(')&&_0x367a58['endsWith'](')')){let _0x2dc950=0x0,_0x1c0bf0=!![];for(let _0x20853e=0x0;_0x20853e<_0x367a58['length'];_0x20853e+=0x1){if(_0x367a58[_0x20853e]==='(')_0x2dc950+=0x1;if(_0x367a58[_0x20853e]===')')_0x2dc950-=0x1;if(_0x2dc950===0x0&&_0x20853e<_0x367a58['length']-0x1){_0x1c0bf0=![];break;}}if(!_0x1c0bf0||_0x2dc950!==0x0)break;_0x367a58=_0x367a58[_0x25e413(0x1a0)](0x1,-0x1)[_0x25e413(0x16b)]();}return _0x367a58;}
1
+ function a231_0x3cba(_0x30aa6b,_0x375469){_0x30aa6b=_0x30aa6b-0x100;const _0x5851cf=a231_0x5851();let _0x3cbad9=_0x5851cf[_0x30aa6b];return _0x3cbad9;}(function(_0xaa1781,_0x2367a6){const _0x3a029f=a231_0x3cba,_0x16e552=_0xaa1781();while(!![]){try{const _0x3a57e3=-parseInt(_0x3a029f(0x104))/0x1+parseInt(_0x3a029f(0x134))/0x2+-parseInt(_0x3a029f(0x106))/0x3*(parseInt(_0x3a029f(0x108))/0x4)+-parseInt(_0x3a029f(0x13b))/0x5*(-parseInt(_0x3a029f(0x11e))/0x6)+-parseInt(_0x3a029f(0x146))/0x7+parseInt(_0x3a029f(0x116))/0x8+parseInt(_0x3a029f(0x122))/0x9;if(_0x3a57e3===_0x2367a6)break;else _0x16e552['push'](_0x16e552['shift']());}catch(_0x103d3e){_0x16e552['push'](_0x16e552['shift']());}}}(a231_0x5851,0xb3a84));import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';export function auditSqlJoinIndexes(_0x5a7e95,_0x2eb208){const _0x498b79=a231_0x3cba,_0x346d7d=[],_0x46dbe3=normalizeSqlForStaticAnalysis(_0x5a7e95),_0x2bf4a9=(_0x46dbe3[_0x498b79(0x103)]?[]:extractJoinFacts(_0x46dbe3['sql']))[_0x498b79(0x120)](_0x1b7828=>{const _0x37a86f=_0x498b79;if(_0x1b7828['unsupportedPredicate']||_0x1b7828[_0x37a86f(0x12c)]['length']===0x0)return _0x346d7d[_0x37a86f(0x109)]({'code':_0x37a86f(0x13d),'table':_0x1b7828[_0x37a86f(0x145)],'alias':_0x1b7828[_0x37a86f(0x13e)],'columns':_0x1b7828['columns'],'reason':_0x1b7828['unsupportedReason']??_0x37a86f(0x12b)}),{'table':_0x1b7828[_0x37a86f(0x145)],'alias':_0x1b7828[_0x37a86f(0x13e)],'columns':_0x1b7828[_0x37a86f(0x12c)],'status':'unavailable'};const _0x5dae07=resolveTableMetadata(_0x2eb208,_0x1b7828['table']),_0x533079=(_0x5dae07?.[_0x37a86f(0x10b)]??[])[_0x37a86f(0x120)](_0x28c321=>({'index':_0x28c321,'matchedPrefix':findEqualityPrefix(_0x28c321[_0x37a86f(0x12c)],_0x1b7828[_0x37a86f(0x12c)])}))[_0x37a86f(0x149)](_0x2991ba=>_0x2991ba[_0x37a86f(0x137)][_0x37a86f(0x12f)]>0x0),_0x186b0d=_0x533079[_0x37a86f(0x130)]((_0x3b9d55,_0x37c890)=>!_0x3b9d55||_0x37c890[_0x37a86f(0x137)][_0x37a86f(0x12f)]>_0x3b9d55['matchedPrefix'][_0x37a86f(0x12f)]?_0x37c890:_0x3b9d55,_0x533079[0x0]);if(_0x186b0d)return{'table':_0x1b7828[_0x37a86f(0x145)],'alias':_0x1b7828['alias'],'columns':_0x1b7828[_0x37a86f(0x12c)],'status':_0x37a86f(0x124),'matchedIndex':{..._0x186b0d[_0x37a86f(0x142)],'matchedPrefix':_0x186b0d['matchedPrefix']}};const _0x507a6f=_0x5dae07?.['indexes'][_0x37a86f(0x149)](_0x204cc4=>_0x204cc4[_0x37a86f(0x12c)][_0x37a86f(0x101)](_0x5b53bc=>_0x1b7828[_0x37a86f(0x12c)][_0x37a86f(0x101)](_0x125661=>columnNamesMatch(_0x5b53bc,_0x125661))))??[];if(_0x507a6f[_0x37a86f(0x12f)]>0x0)return _0x346d7d[_0x37a86f(0x109)]({'code':_0x37a86f(0x102),'table':_0x1b7828['table'],'alias':_0x1b7828[_0x37a86f(0x13e)],'columns':_0x1b7828['columns'],'reason':_0x37a86f(0x12a)}),{'table':_0x1b7828['table'],'alias':_0x1b7828[_0x37a86f(0x13e)],'columns':_0x1b7828[_0x37a86f(0x12c)],'status':_0x37a86f(0x11f),'candidateIndexes':_0x507a6f};if(_0x5dae07&&_0x5dae07[_0x37a86f(0x13f)]!==![]&&_0x5dae07[_0x37a86f(0x10b)][_0x37a86f(0x12f)]>0x0&&_0x1b7828[_0x37a86f(0x12c)][_0x37a86f(0x12f)]>0x0)return _0x346d7d['push']({'code':_0x37a86f(0x138),'table':_0x1b7828['table'],'alias':_0x1b7828[_0x37a86f(0x13e)],'columns':_0x1b7828[_0x37a86f(0x12c)],'reason':_0x37a86f(0x117)}),{'table':_0x1b7828[_0x37a86f(0x145)],'alias':_0x1b7828[_0x37a86f(0x13e)],'columns':_0x1b7828[_0x37a86f(0x12c)],'status':'warning'};return _0x346d7d[_0x37a86f(0x109)]({'code':_0x37a86f(0x14b),'table':_0x1b7828['table'],'alias':_0x1b7828['alias'],'columns':_0x1b7828[_0x37a86f(0x12c)],'reason':_0x5dae07?_0x37a86f(0x115):_0x37a86f(0x123)}),{'table':_0x1b7828[_0x37a86f(0x145)],'alias':_0x1b7828[_0x37a86f(0x13e)],'columns':_0x1b7828[_0x37a86f(0x12c)],'status':'unavailable'};});return{'checked':_0x2bf4a9[_0x498b79(0x12f)]>0x0,'joins':_0x2bf4a9,'warnings':_0x346d7d};}function extractJoinFacts(_0x3e1b40){const _0x55a6b1=a231_0x3cba,_0xf701f3=maskNestedQueries(stripSqlNoise(_0x3e1b40)),_0x385662=maskQuotedIdentifiers(_0xf701f3),_0x933afc=[],_0x103d2b=new Set(),_0x2821cf=/\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 _0x37bfc0 of _0xf701f3['matchAll'](_0x2821cf)){const _0x1e2516=_0x37bfc0[_0x55a6b1(0x142)]??0x0,_0x434e83=_0x37bfc0[0x0][_0x55a6b1(0x121)](/\bJOIN\b/i),_0x48c31d=_0x1e2516+Math[_0x55a6b1(0x10f)](0x0,_0x434e83);if(!/^JOIN\b/i[_0x55a6b1(0x127)](_0x385662[_0x55a6b1(0x111)](_0x48c31d)))continue;_0x103d2b[_0x55a6b1(0x11c)](_0x48c31d);const _0x18f1e4=normalizeIdentifier(_0x37bfc0[0x1]||_0x55a6b1(0x136)),_0x35571d=normalizeIdentifier(_0x37bfc0[0x2]??''),_0x4e62f4=normalizeIdentifier(_0x37bfc0[0x3]||_0x35571d['split']('.')['at'](-0x1)||_0x35571d),_0xbc7c86=[],_0x4e81e9=_0x35571d===_0x55a6b1(0x13a);let _0xc508a9=_0x18f1e4===_0x55a6b1(0x11a)||_0x18f1e4===_0x55a6b1(0x10c)||_0x4e81e9,_0x2b407d=_0xc508a9?_0x4e81e9?_0x55a6b1(0x10d):_0x18f1e4[_0x55a6b1(0x133)]()+_0x55a6b1(0x131):undefined;const _0x35486c=stripOuterParentheses(_0x37bfc0[0x4]??''),_0x7b4b33=_0x35486c['includes'](MYBATIS_DYNAMIC_START_MARKER)||_0x35486c[_0x55a6b1(0x139)](MYBATIS_DYNAMIC_END_MARKER),_0x38b3ae=_0x35486c[_0x55a6b1(0x139)](MYBATIS_INCLUDE_MARKER);_0x7b4b33&&(_0xc508a9=!![],_0x2b407d??=_0x55a6b1(0x128));_0x38b3ae&&(_0xc508a9=!![],_0x2b407d??=_0x55a6b1(0x144));const _0x5d5ee6=_0x35486c[_0x55a6b1(0x119)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x55a6b1(0x119)](MYBATIS_DYNAMIC_END_MARKER,'\x20')[_0x55a6b1(0x119)](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0x5d5ee6,'OR')&&(_0xc508a9=!![],_0x2b407d??=_0x55a6b1(0x100));for(const _0x270cac of splitTopLevelAnd(_0x5d5ee6)){const _0x45770c=stripOuterParentheses(_0x270cac);if(hasTopLevelKeyword(_0x45770c,'OR')){_0xc508a9=!![],_0x2b407d??=_0x55a6b1(0x100);continue;}const _0x19e0df=splitEquality(_0x45770c);if(!_0x19e0df){containsColumnReference(_0x270cac,_0x4e62f4)&&(_0xc508a9=!![]);continue;}const _0x7e52bc=parseDirectColumnReference(_0x19e0df[0x0],_0x4e62f4),_0x2b3ba9=parseDirectColumnReference(_0x19e0df[0x1],_0x4e62f4),_0x22371a=containsColumnReference(_0x19e0df[0x0],_0x4e62f4),_0x1de3d7=containsColumnReference(_0x19e0df[0x1],_0x4e62f4),_0xc57d48=_0x7e52bc&&!_0x1de3d7?_0x7e52bc:_0x2b3ba9&&!_0x22371a?_0x2b3ba9:null;if(_0xc57d48&&!_0xbc7c86[_0x55a6b1(0x139)](_0xc57d48))_0xbc7c86[_0x55a6b1(0x109)](_0xc57d48);else!_0xc57d48&&containsColumnReference(_0x270cac,_0x4e62f4)&&(_0xc508a9=!![]);}_0x933afc[_0x55a6b1(0x109)]({'table':_0x35571d,'alias':_0x4e62f4,'columns':_0xbc7c86,'unsupportedPredicate':_0xc508a9,'unsupportedReason':_0x2b407d,'containsUnresolvedInclude':_0x38b3ae,'position':_0x48c31d});}for(const _0x3eae81 of _0x385662[_0x55a6b1(0x13c)](/\bJOIN\b/gi)){const _0x4fb5af=_0x3eae81[_0x55a6b1(0x142)]??0x0;if(_0x103d2b[_0x55a6b1(0x105)](_0x4fb5af))continue;const _0x9d1131=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/[_0x55a6b1(0x143)](_0xf701f3[_0x55a6b1(0x111)](_0x4fb5af+_0x3eae81[0x0][_0x55a6b1(0x12f)])),_0x103da9=normalizeIdentifier(_0x9d1131?.[0x1]||_0x55a6b1(0x113)),_0x566781=normalizeIdentifier(_0x9d1131?.[0x2]||''),_0x2e8964=isSqlClauseKeyword(_0x566781)?_0x103da9[_0x55a6b1(0x10e)]('.')['at'](-0x1)||_0x103da9:_0x566781||_0x103da9['split']('.')['at'](-0x1)||_0x103da9;_0x933afc['push']({'table':_0x103da9,'alias':_0x2e8964,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x55a6b1(0x12d),'position':_0x4fb5af});}const _0x3b36de=_0x385662[_0x55a6b1(0x140)](MYBATIS_INCLUDE_MARKER);return _0x3b36de>=0x0&&!_0x933afc[_0x55a6b1(0x101)](_0x27e7cf=>_0x27e7cf[_0x55a6b1(0x114)])&&_0x933afc[_0x55a6b1(0x109)]({'table':_0x55a6b1(0x113),'alias':_0x55a6b1(0x113),'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x55a6b1(0x118),'containsUnresolvedInclude':!![],'position':_0x3b36de}),_0x933afc[_0x55a6b1(0x126)]((_0x1eb8b8,_0x1768b1)=>_0x1eb8b8[_0x55a6b1(0x148)]-_0x1768b1[_0x55a6b1(0x148)]);}function stripSqlNoise(_0x1d630c){const _0x5a232b=a231_0x3cba,_0x182457=Array[_0x5a232b(0x12e)](_0x1d630c),_0x46e04d=(_0x525433,_0x2a3cd6)=>{for(let _0x1fc15b=_0x525433;_0x1fc15b<_0x2a3cd6;_0x1fc15b+=0x1){_0x182457[_0x1fc15b]!=='\x0a'&&_0x182457[_0x1fc15b]!=='\x0d'&&(_0x182457[_0x1fc15b]='\x20');}};for(let _0x2cd06b=0x0;_0x2cd06b<_0x182457['length'];_0x2cd06b+=0x1){const _0x3367cf=_0x182457[_0x2cd06b],_0x4d312f=_0x182457[_0x2cd06b+0x1];if(_0x3367cf==='\x27'||_0x3367cf==='\x22'||_0x3367cf==='`'){const _0x212028=_0x3367cf,_0x4d9f8c=_0x2cd06b;_0x2cd06b+=0x1;while(_0x2cd06b<_0x182457[_0x5a232b(0x12f)]){if(_0x182457[_0x2cd06b]==='\x5c'&&_0x2cd06b+0x1<_0x182457[_0x5a232b(0x12f)]){_0x2cd06b+=0x2;continue;}if(_0x182457[_0x2cd06b]!==_0x212028){_0x2cd06b+=0x1;continue;}if(_0x182457[_0x2cd06b+0x1]===_0x212028){_0x2cd06b+=0x2;continue;}break;}if(_0x212028==='\x27')_0x46e04d(_0x4d9f8c,Math[_0x5a232b(0x11b)](_0x2cd06b+0x1,_0x182457['length']));continue;}if(_0x3367cf==='-'&&_0x4d312f==='-'){const _0x1eb439=_0x2cd06b;while(_0x2cd06b<_0x182457['length']&&_0x182457[_0x2cd06b]!=='\x0a')_0x2cd06b+=0x1;_0x46e04d(_0x1eb439,_0x2cd06b);continue;}if(_0x3367cf==='/'&&_0x4d312f==='*'){const _0x5a63b2=_0x2cd06b;_0x2cd06b+=0x2;while(_0x2cd06b<_0x182457['length']&&!(_0x182457[_0x2cd06b]==='*'&&_0x182457[_0x2cd06b+0x1]==='/')){_0x2cd06b+=0x1;}_0x2cd06b=Math[_0x5a232b(0x11b)](_0x2cd06b+0x1,_0x182457[_0x5a232b(0x12f)]-0x1),_0x46e04d(_0x5a63b2,_0x2cd06b+0x1);continue;}if(_0x3367cf==='#'&&_0x4d312f!=='{'){const _0x534464=_0x2cd06b;while(_0x2cd06b<_0x182457[_0x5a232b(0x12f)]&&_0x182457[_0x2cd06b]!=='\x0a')_0x2cd06b+=0x1;_0x46e04d(_0x534464,_0x2cd06b);continue;}if((_0x3367cf==='#'||_0x3367cf==='$')&&_0x4d312f==='{'){const _0x1ea897=_0x2cd06b;_0x2cd06b+=0x2;while(_0x2cd06b<_0x182457[_0x5a232b(0x12f)]&&_0x182457[_0x2cd06b]!=='}')_0x2cd06b+=0x1;_0x46e04d(_0x1ea897,Math[_0x5a232b(0x11b)](_0x2cd06b+0x1,_0x182457[_0x5a232b(0x12f)]));}}return _0x182457[_0x5a232b(0x147)]('');}function maskQuotedIdentifiers(_0x1ac020){const _0x38631c=a231_0x3cba,_0x53cdc9=Array[_0x38631c(0x12e)](_0x1ac020);for(let _0x46b897=0x0;_0x46b897<_0x53cdc9[_0x38631c(0x12f)];_0x46b897+=0x1){const _0x5cc742=_0x53cdc9[_0x46b897];if(_0x5cc742!=='\x22'&&_0x5cc742!=='`')continue;_0x46b897+=0x1;while(_0x46b897<_0x53cdc9[_0x38631c(0x12f)]){if(_0x53cdc9[_0x46b897]===_0x5cc742){if(_0x53cdc9[_0x46b897+0x1]===_0x5cc742){_0x53cdc9[_0x46b897]='\x20',_0x53cdc9[_0x46b897+0x1]='\x20',_0x46b897+=0x2;continue;}break;}_0x53cdc9[_0x46b897]='\x20',_0x46b897+=0x1;}}return _0x53cdc9['join']('');}function maskNestedQueries(_0x5e0eb3){const _0x3a8af9=a231_0x3cba,_0x2457fc=Array[_0x3a8af9(0x12e)](_0x5e0eb3);for(let _0x3c9878=0x0;_0x3c9878<_0x2457fc['length'];_0x3c9878+=0x1){if(_0x2457fc[_0x3c9878]!=='(')continue;const _0x2671d2=_0x5e0eb3[_0x3a8af9(0x111)](_0x3c9878+0x1);if(!/^\s*(?:SELECT|WITH)\b/i[_0x3a8af9(0x127)](_0x2671d2))continue;let _0x30fd99=0x1,_0x56f654=_0x3c9878+0x1;for(;_0x56f654<_0x2457fc[_0x3a8af9(0x12f)]&&_0x30fd99>0x0;_0x56f654+=0x1){if(_0x2457fc[_0x56f654]==='(')_0x30fd99+=0x1;if(_0x2457fc[_0x56f654]===')')_0x30fd99-=0x1;}if(_0x30fd99!==0x0)continue;for(let _0x2488eb=_0x3c9878;_0x2488eb<_0x56f654;_0x2488eb+=0x1){_0x2457fc[_0x2488eb]='\x20';}const _0x392fc8='__sq__';for(let _0x2be582=0x0;_0x2be582<_0x392fc8[_0x3a8af9(0x12f)]&&_0x3c9878+_0x2be582<_0x56f654;_0x2be582+=0x1){_0x2457fc[_0x3c9878+_0x2be582]=_0x392fc8[_0x2be582];}_0x3c9878=_0x56f654-0x1;}return _0x2457fc[_0x3a8af9(0x147)]('');}function splitTopLevelAnd(_0x122c3a){const _0x4934c2=a231_0x3cba,_0x2e11d7=[];let _0xdf58c1=0x0,_0x38c9d9=0x0;for(let _0x416663=0x0;_0x416663<_0x122c3a[_0x4934c2(0x12f)];_0x416663+=0x1){const _0x37ce0c=_0x122c3a[_0x416663];if(_0x37ce0c==='(')_0xdf58c1+=0x1;if(_0x37ce0c===')')_0xdf58c1=Math[_0x4934c2(0x10f)](0x0,_0xdf58c1-0x1);_0xdf58c1===0x0&&_0x122c3a['slice'](_0x416663)['match'](/^AND\b/i)&&(_0x416663===0x0||/\s/['test'](_0x122c3a[_0x416663-0x1]??''))&&(_0x2e11d7[_0x4934c2(0x109)](_0x122c3a[_0x4934c2(0x111)](_0x38c9d9,_0x416663)[_0x4934c2(0x141)]()),_0x416663+=0x2,_0x38c9d9=_0x416663+0x1);}const _0x1dd6db=_0x122c3a[_0x4934c2(0x111)](_0x38c9d9)[_0x4934c2(0x141)]();if(_0x1dd6db)_0x2e11d7[_0x4934c2(0x109)](_0x1dd6db);return _0x2e11d7;}function hasTopLevelKeyword(_0x46f52e,_0x45e419){const _0xd26b53=a231_0x3cba;let _0x5aecfd=0x0;for(let _0x526fbe=0x0;_0x526fbe<_0x46f52e[_0xd26b53(0x12f)];_0x526fbe+=0x1){const _0xcf0b30=_0x46f52e[_0x526fbe];if(_0xcf0b30==='(')_0x5aecfd+=0x1;if(_0xcf0b30===')')_0x5aecfd=Math[_0xd26b53(0x10f)](0x0,_0x5aecfd-0x1);if(_0x5aecfd!==0x0)continue;const _0x1cf06f=_0x46f52e['slice'](_0x526fbe,_0x526fbe+_0x45e419[_0xd26b53(0x12f)]),_0x3a6826=_0x46f52e[_0x526fbe-0x1]??'\x20',_0x2c477f=_0x46f52e[_0x526fbe+_0x45e419[_0xd26b53(0x12f)]]??'\x20';if(_0x1cf06f['toUpperCase']()===_0x45e419[_0xd26b53(0x133)]()&&!/[\w$]/[_0xd26b53(0x127)](_0x3a6826)&&!/[\w$]/[_0xd26b53(0x127)](_0x2c477f))return!![];}return![];}function splitEquality(_0x10df56){const _0x17dfc7=a231_0x3cba,_0xfd9526=stripOuterParentheses(_0x10df56);let _0x8d34cf=0x0,_0xd85c67;for(let _0x813141=0x0;_0x813141<_0xfd9526['length'];_0x813141+=0x1){const _0x5d59cd=_0xfd9526[_0x813141];if(_0x5d59cd==='(')_0x8d34cf+=0x1;if(_0x5d59cd===')')_0x8d34cf=Math['max'](0x0,_0x8d34cf-0x1);const _0x4de4b3=_0xfd9526[_0x813141-0x1]??'',_0x3669d2=_0xfd9526[_0x813141+0x1]??'';if(_0x5d59cd==='='&&_0x8d34cf===0x0&&!/[!<>=:]/[_0x17dfc7(0x127)](_0x4de4b3)&&_0x3669d2!=='='){if(_0xd85c67!==undefined)return null;_0xd85c67=_0x813141;}}return _0xd85c67===undefined?null:[_0xfd9526[_0x17dfc7(0x111)](0x0,_0xd85c67)[_0x17dfc7(0x141)](),_0xfd9526[_0x17dfc7(0x111)](_0xd85c67+0x1)[_0x17dfc7(0x141)]()];}function parseDirectColumnReference(_0x2af45c,_0x1f0397){const _0x84ddef=a231_0x3cba,_0x44c7ac=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/[_0x84ddef(0x143)](stripOuterParentheses(_0x2af45c));if(!_0x44c7ac)return null;if(normalizeIdentifier(_0x44c7ac[0x1]??'')!==normalizeIdentifier(_0x1f0397))return null;return normalizeIdentifier(_0x44c7ac[0x2]??'');}function containsColumnReference(_0x558a6e,_0x8fe3f9){const _0x47aa4b=a231_0x3cba,_0x208c4a=_0x558a6e[_0x47aa4b(0x132)](/[`"]/g,''),_0x143184=_0x8fe3f9[_0x47aa4b(0x132)](/[.*+?^${}()|[\]\\]/g,_0x47aa4b(0x129));return new RegExp('(?:^|[^\x5cw$])'+_0x143184+_0x47aa4b(0x112),'i')[_0x47aa4b(0x127)](_0x208c4a);}function findEqualityPrefix(_0x4478b3,_0x3c0663){const _0x527577=a231_0x3cba,_0x338739=new Set(_0x3c0663[_0x527577(0x120)](normalizeIdentifier)),_0x1f0372=[];for(const _0x6afb43 of _0x4478b3){if(!_0x338739[_0x527577(0x105)](normalizeIdentifier(_0x6afb43)))break;_0x1f0372[_0x527577(0x109)](_0x6afb43);}return _0x1f0372;}function a231_0x5851(){const _0x587a1d=['Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.','columns','Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','from','length','reduce','\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.','replace','toUpperCase','970070JcGHGE','inner','INNER','matchedPrefix','JOIN_INDEX_MISSING','includes','__sq__','35nAFKlS','matchAll','JOIN_PREDICATE_UNSUPPORTED','alias','metadataAvailable','indexOf','trim','index','exec','MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.','table','6125644akDVzc','join','position','filter','endsWith','INDEX_METADATA_UNAVAILABLE','toLowerCase','OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.','some','JOIN_INDEX_NOT_USABLE','error','65410oPonXi','has','629247ToWRkc','left','28cgDBJI','push','using','indexes','full','Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.','split','max','startsWith','slice','\x5cs*\x5c.\x5cs*[\x5cw$]+','unknown','containsUnresolvedInclude','The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.','3180640MWMPKr','No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.','MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','replaceAll','right','min','add','tableName','1014756XhLCRl','warning','map','search','9703116hNiEyG','No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.','covered','where','sort','test','MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.','\x5c$&','Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.'];a231_0x5851=function(){return _0x587a1d;};return a231_0x5851();}function resolveTableMetadata(_0xf0f516,_0x1943ba){const _0x306bcc=a231_0x3cba,_0x2180fa=normalizeIdentifier(_0x1943ba),_0x32ed93=_0xf0f516[_0x306bcc(0x149)](_0x62ae64=>normalizeIdentifier(_0x62ae64['tableName'])===_0x2180fa);if(_0x32ed93[_0x306bcc(0x12f)]===0x1)return _0x32ed93[0x0];const _0x420497=_0x2180fa[_0x306bcc(0x139)]('.'),_0x3b2666=_0x2180fa[_0x306bcc(0x10e)]('.')['at'](-0x1),_0x4398b2=_0xf0f516[_0x306bcc(0x149)](_0x66adb7=>{const _0x53ee69=_0x306bcc,_0x79c146=normalizeIdentifier(_0x66adb7[_0x53ee69(0x11d)]);if(_0x420497&&_0x79c146[_0x53ee69(0x139)]('.'))return![];return _0x79c146[_0x53ee69(0x10e)]('.')['at'](-0x1)===_0x3b2666;});return _0x4398b2['length']===0x1?_0x4398b2[0x0]:undefined;}function columnNamesMatch(_0x4084d2,_0x432777){return normalizeIdentifier(_0x4084d2)===normalizeIdentifier(_0x432777);}function normalizeIdentifier(_0x91e18a){const _0x284e55=a231_0x3cba;return _0x91e18a[_0x284e55(0x132)](/[`"]/g,'')[_0x284e55(0x141)]()[_0x284e55(0x14c)]();}function isSqlClauseKeyword(_0x24c4e9){const _0x25e6bd=a231_0x3cba;return new Set(['on',_0x25e6bd(0x10a),_0x25e6bd(0x125),_0x25e6bd(0x147),_0x25e6bd(0x135),_0x25e6bd(0x107),_0x25e6bd(0x11a),_0x25e6bd(0x10c),'cross','natural'])['has'](_0x24c4e9);}function stripOuterParentheses(_0x4dcda0){const _0x5c74e0=a231_0x3cba;let _0x4faf28=_0x4dcda0[_0x5c74e0(0x141)]();while(_0x4faf28[_0x5c74e0(0x110)]('(')&&_0x4faf28[_0x5c74e0(0x14a)](')')){let _0x4e4f51=0x0,_0x36d2a3=!![];for(let _0x4fffce=0x0;_0x4fffce<_0x4faf28[_0x5c74e0(0x12f)];_0x4fffce+=0x1){if(_0x4faf28[_0x4fffce]==='(')_0x4e4f51+=0x1;if(_0x4faf28[_0x4fffce]===')')_0x4e4f51-=0x1;if(_0x4e4f51===0x0&&_0x4fffce<_0x4faf28[_0x5c74e0(0x12f)]-0x1){_0x36d2a3=![];break;}}if(!_0x36d2a3||_0x4e4f51!==0x0)break;_0x4faf28=_0x4faf28[_0x5c74e0(0x111)](0x1,-0x1)[_0x5c74e0(0x141)]();}return _0x4faf28;}
@@ -1 +1 @@
1
- function a239_0x5336(){const _0xf4a5c1=['578ykSJNF','.rabetbase','2462900htOkXs','1759776FidpKX','3188ggtSbe','/sql','123uieEZm','1722429RpONxq','583qowAmO','6aHlSTI','488614zGFlsx','sql.lock.json','983800rVmHJT'];a239_0x5336=function(){return _0xf4a5c1;};return a239_0x5336();}const a239_0x4d5e3=a239_0xa5e9;(function(_0x2ea37f,_0x242b92){const _0x3a63d=a239_0xa5e9,_0x5141ed=_0x2ea37f();while(!![]){try{const _0x23a393=-parseInt(_0x3a63d(0x114))/0x1*(-parseInt(_0x3a63d(0x119))/0x2)+-parseInt(_0x3a63d(0x112))/0x3*(parseInt(_0x3a63d(0x110))/0x4)+parseInt(_0x3a63d(0x118))/0x5+-parseInt(_0x3a63d(0x115))/0x6*(-parseInt(_0x3a63d(0x116))/0x7)+-parseInt(_0x3a63d(0x10f))/0x8+parseInt(_0x3a63d(0x113))/0x9+-parseInt(_0x3a63d(0x11b))/0xa;if(_0x23a393===_0x242b92)break;else _0x5141ed['push'](_0x5141ed['shift']());}catch(_0xd32aa5){_0x5141ed['push'](_0x5141ed['shift']());}}}(a239_0x5336,0x1f203));import{resolve}from'node:path';import{findProjectRootDirectory}from'../../context.js';const DOT_DIR=a239_0x4d5e3(0x11a),LOCK_FILE_NAME=a239_0x4d5e3(0x117),TRASH_DIR_NAME='sql-trash';function a239_0xa5e9(_0x1dd4e6,_0x27566f){_0x1dd4e6=_0x1dd4e6-0x10f;const _0x5336d3=a239_0x5336();let _0xa5e977=_0x5336d3[_0x1dd4e6];return _0xa5e977;}export function loadSqlProjectConfig(_0x582ed1,_0x5b57d6){const _0x538c92=a239_0x4d5e3,_0xb4bf72=resolve(_0x5b57d6??findProjectRootDirectory()),_0x20a54a=DOT_DIR+_0x538c92(0x111),_0xbb1792=_0x20a54a+'/'+_0x582ed1;return{'projectRoot':_0xb4bf72,'appCode':_0x582ed1,'sqlWorkspaceRoot':_0x20a54a,'sqlRoot':_0xbb1792,'sqlRootDir':resolve(_0xb4bf72,DOT_DIR,'sql',_0x582ed1),'lockFilePath':resolve(_0xb4bf72,DOT_DIR,LOCK_FILE_NAME),'trashDir':resolve(_0xb4bf72,DOT_DIR,TRASH_DIR_NAME)};}
1
+ const a232_0x4e390f=a232_0x2ee3;(function(_0x4adae1,_0xdc30fe){const _0x503fc0=a232_0x2ee3,_0x5bf84e=_0x4adae1();while(!![]){try{const _0x4f099c=-parseInt(_0x503fc0(0x6e))/0x1*(parseInt(_0x503fc0(0x72))/0x2)+parseInt(_0x503fc0(0x70))/0x3*(parseInt(_0x503fc0(0x74))/0x4)+-parseInt(_0x503fc0(0x76))/0x5+parseInt(_0x503fc0(0x77))/0x6+-parseInt(_0x503fc0(0x7a))/0x7*(-parseInt(_0x503fc0(0x75))/0x8)+-parseInt(_0x503fc0(0x73))/0x9*(parseInt(_0x503fc0(0x78))/0xa)+-parseInt(_0x503fc0(0x71))/0xb*(-parseInt(_0x503fc0(0x6f))/0xc);if(_0x4f099c===_0xdc30fe)break;else _0x5bf84e['push'](_0x5bf84e['shift']());}catch(_0x1fc353){_0x5bf84e['push'](_0x5bf84e['shift']());}}}(a232_0x4d7f,0x30f2e));import{resolve}from'node:path';function a232_0x2ee3(_0x5e5cf0,_0x37b0f5){_0x5e5cf0=_0x5e5cf0-0x6d;const _0x4d7f4e=a232_0x4d7f();let _0x2ee362=_0x4d7f4e[_0x5e5cf0];return _0x2ee362;}import{findProjectRootDirectory}from'../../context.js';function a232_0x4d7f(){const _0x4aee85=['sql.lock.json','295673TSeZqI','/sql','.rabetbase','sql-trash','199FnaczO','12zCKiOI','25341LPxkOc','1273261ecBXPN','1658FmHSer','2478591NwCNBe','4InElss','72zuZupq','987125iNNDRy','2003640AttqjU','10ypehha'];a232_0x4d7f=function(){return _0x4aee85;};return a232_0x4d7f();}const DOT_DIR=a232_0x4e390f(0x7c),LOCK_FILE_NAME=a232_0x4e390f(0x79),TRASH_DIR_NAME=a232_0x4e390f(0x6d);export function loadSqlProjectConfig(_0x33eabb,_0x4e48ed){const _0x44101b=a232_0x4e390f,_0x51fdc6=resolve(_0x4e48ed??findProjectRootDirectory()),_0x1c31e0=DOT_DIR+_0x44101b(0x7b),_0x103538=_0x1c31e0+'/'+_0x33eabb;return{'projectRoot':_0x51fdc6,'appCode':_0x33eabb,'sqlWorkspaceRoot':_0x1c31e0,'sqlRoot':_0x103538,'sqlRootDir':resolve(_0x51fdc6,DOT_DIR,'sql',_0x33eabb),'lockFilePath':resolve(_0x51fdc6,DOT_DIR,LOCK_FILE_NAME),'trashDir':resolve(_0x51fdc6,DOT_DIR,TRASH_DIR_NAME)};}
@@ -1 +1 @@
1
- (function(_0x832fb7,_0x3d724a){const _0x529c25=a240_0x399f,_0x3bfe6a=_0x832fb7();while(!![]){try{const _0xc15ffe=parseInt(_0x529c25(0x1cf))/0x1+parseInt(_0x529c25(0x1c9))/0x2+-parseInt(_0x529c25(0x1db))/0x3+-parseInt(_0x529c25(0x1d5))/0x4+-parseInt(_0x529c25(0x1c2))/0x5*(parseInt(_0x529c25(0x1c4))/0x6)+parseInt(_0x529c25(0x1d9))/0x7+-parseInt(_0x529c25(0x1d8))/0x8*(-parseInt(_0x529c25(0x1d2))/0x9);if(_0xc15ffe===_0x3d724a)break;else _0x3bfe6a['push'](_0x3bfe6a['shift']());}catch(_0xa20bbb){_0x3bfe6a['push'](_0x3bfe6a['shift']());}}}(a240_0x3ef6,0xdd881));import{readdir,stat}from'node:fs/promises';import{extname,join,relative}from'node:path';import{buildDefaultSqlFileName,buildSqlRelativePath}from'./utils.js';function extensionToMode(_0x257843){const _0x17351b=a240_0x399f;if(_0x257843===_0x17351b(0x1d0))return _0x17351b(0x1cb);if(_0x257843===_0x17351b(0x1da))return _0x17351b(0x1c5);return undefined;}function a240_0x3ef6(){const _0x9f98d4=['.sql','slice','9eSKZjH','dbId','replace','1794616UvoTnZ','ENOENT','sqlRootDir','23105256XApNSt','1539531iJVlbm','.xml','4103889JYEyqM','sqlName','sqlCode','name','test','isFile','code','2831425gKckWu','dbName','6sEVDhU','mybatisXml','indexOf','push','path','281426jiGVkK','mode','sql','toLowerCase','length','isDirectory','41492jLoSmd'];a240_0x3ef6=function(){return _0x9f98d4;};return a240_0x3ef6();}async function scanSqlFilesRecursively(_0x21bbe8,_0x57dbd4){const _0x191271=a240_0x399f,_0x5aba1c=[];try{const _0x56bcb8=await readdir(_0x21bbe8,{'withFileTypes':!![]});for(const _0x1fa16a of _0x56bcb8){const _0x298309=join(_0x21bbe8,_0x1fa16a[_0x191271(0x1be)]);if(_0x1fa16a[_0x191271(0x1ce)]()){_0x5aba1c[_0x191271(0x1c7)](...await scanSqlFilesRecursively(_0x298309,_0x57dbd4));continue;}if(!_0x1fa16a[_0x191271(0x1c0)]())continue;const _0x4b3c49=extname(_0x1fa16a[_0x191271(0x1be)])[_0x191271(0x1cc)](),_0x1dc6fe=extensionToMode(_0x4b3c49);if(!_0x1dc6fe)continue;const _0x377611=relative(_0x57dbd4,_0x298309)[_0x191271(0x1d4)](/\\/g,'/'),_0x459c14=_0x377611['split']('/')['filter'](Boolean),_0x46a33d=parseSqlPath(_0x459c14,_0x1fa16a[_0x191271(0x1be)],_0x4b3c49);if(!_0x46a33d)continue;_0x5aba1c[_0x191271(0x1c7)]({'sqlCode':_0x46a33d[_0x191271(0x1bd)],'sqlName':_0x46a33d[_0x191271(0x1dc)],'dbDirectory':_0x459c14[0x0],'filePath':_0x298309,'relativePath':_0x377611,'lockKey':_0x46a33d[_0x191271(0x1bd)],'mode':_0x1dc6fe});}}catch(_0x4f42ba){if(_0x4f42ba[_0x191271(0x1c1)]!==_0x191271(0x1d6))throw _0x4f42ba;}return _0x5aba1c;}function a240_0x399f(_0x51018c,_0xa1bf7f){_0x51018c=_0x51018c-0x1bd;const _0x3ef679=a240_0x3ef6();let _0x399f2b=_0x3ef679[_0x51018c];return _0x399f2b;}export async function scanLocalSqlQueries(_0x582590){const _0x48d61d=a240_0x399f;return scanSqlFilesRecursively(_0x582590[_0x48d61d(0x1d7)],_0x582590[_0x48d61d(0x1d7)]);}export function resolveLocalSqlFilePath(_0x38b7a9,_0x8dda27,_0x3f21fc){const _0x58e5c7=a240_0x399f,_0x30c5f9=_0x3f21fc?.[_0x58e5c7(0x1c8)]||(_0x3f21fc?.[_0x58e5c7(0x1dc)]||_0x3f21fc?.[_0x58e5c7(0x1c3)]?buildSqlRelativePath(_0x8dda27,_0x3f21fc?.[_0x58e5c7(0x1dc)],_0x3f21fc?.[_0x58e5c7(0x1c3)],_0x3f21fc?.[_0x58e5c7(0x1ca)]||_0x58e5c7(0x1cb),_0x3f21fc?.[_0x58e5c7(0x1d3)]):buildDefaultSqlFileName(_0x8dda27,_0x3f21fc?.[_0x58e5c7(0x1ca)]||_0x58e5c7(0x1cb)));return join(_0x38b7a9[_0x58e5c7(0x1d7)],_0x30c5f9);}export async function directoryExists(_0x419e14){const _0x369e24=a240_0x399f;try{const _0x1aa5f5=await stat(_0x419e14);return _0x1aa5f5[_0x369e24(0x1ce)]();}catch{return![];}}function parseSqlPath(_0x5ccfe6,_0x3680e1,_0x5a4059){const _0x4ea590=a240_0x399f,_0x17f3b6=_0x3680e1[_0x4ea590(0x1d1)](0x0,-_0x5a4059['length']);if(_0x5ccfe6[_0x4ea590(0x1cd)]<0x2)return null;const _0x5a0979=_0x17f3b6[_0x4ea590(0x1c6)]('_');if(_0x5a0979<=0x0||_0x5a0979>=_0x17f3b6['length']-0x1)return null;const _0x542b70=_0x17f3b6[_0x4ea590(0x1d1)](0x0,_0x5a0979);if(!isLikelySqlCode(_0x542b70))return null;return{'sqlCode':_0x542b70,'sqlName':_0x17f3b6[_0x4ea590(0x1d1)](_0x5a0979+0x1)};}function isLikelySqlCode(_0x432b85){const _0xe3035e=a240_0x399f;return/^[A-Za-z0-9-]+-[A-Za-z0-9-]+$/[_0xe3035e(0x1bf)](_0x432b85);}
1
+ (function(_0x44465d,_0x193057){const _0x15a418=a233_0x30ec,_0x3e844a=_0x44465d();while(!![]){try{const _0x3c8451=-parseInt(_0x15a418(0x1dd))/0x1*(-parseInt(_0x15a418(0x1f5))/0x2)+-parseInt(_0x15a418(0x1dc))/0x3*(-parseInt(_0x15a418(0x1db))/0x4)+parseInt(_0x15a418(0x1d5))/0x5*(parseInt(_0x15a418(0x1ec))/0x6)+parseInt(_0x15a418(0x1e1))/0x7*(parseInt(_0x15a418(0x1f4))/0x8)+parseInt(_0x15a418(0x1f3))/0x9+parseInt(_0x15a418(0x1e6))/0xa+-parseInt(_0x15a418(0x1d7))/0xb;if(_0x3c8451===_0x193057)break;else _0x3e844a['push'](_0x3e844a['shift']());}catch(_0x314171){_0x3e844a['push'](_0x3e844a['shift']());}}}(a233_0x4abc,0xe7651));import{readdir,stat}from'node:fs/promises';import{extname,join,relative}from'node:path';import{buildDefaultSqlFileName,buildSqlRelativePath}from'./utils.js';function extensionToMode(_0x43784a){const _0x1f7166=a233_0x30ec;if(_0x43784a===_0x1f7166(0x1f6))return _0x1f7166(0x1eb);if(_0x43784a===_0x1f7166(0x1d8))return _0x1f7166(0x1ed);return undefined;}async function scanSqlFilesRecursively(_0x52c15b,_0x459bde){const _0xa9bdca=a233_0x30ec,_0x43d86e=[];try{const _0x239e99=await readdir(_0x52c15b,{'withFileTypes':!![]});for(const _0x5506dc of _0x239e99){const _0x139c2e=join(_0x52c15b,_0x5506dc[_0xa9bdca(0x1ee)]);if(_0x5506dc[_0xa9bdca(0x1e0)]()){_0x43d86e['push'](...await scanSqlFilesRecursively(_0x139c2e,_0x459bde));continue;}if(!_0x5506dc[_0xa9bdca(0x1e4)]())continue;const _0x24d277=extname(_0x5506dc['name'])[_0xa9bdca(0x1ea)](),_0x2313fd=extensionToMode(_0x24d277);if(!_0x2313fd)continue;const _0x47e725=relative(_0x459bde,_0x139c2e)[_0xa9bdca(0x1d6)](/\\/g,'/'),_0x5ed202=_0x47e725[_0xa9bdca(0x1de)]('/')['filter'](Boolean),_0x27dd8d=parseSqlPath(_0x5ed202,_0x5506dc['name'],_0x24d277);if(!_0x27dd8d)continue;_0x43d86e[_0xa9bdca(0x1d9)]({'sqlCode':_0x27dd8d[_0xa9bdca(0x1f2)],'sqlName':_0x27dd8d[_0xa9bdca(0x1e2)],'dbDirectory':_0x5ed202[0x0],'filePath':_0x139c2e,'relativePath':_0x47e725,'lockKey':_0x27dd8d[_0xa9bdca(0x1f2)],'mode':_0x2313fd});}}catch(_0x4220a9){if(_0x4220a9[_0xa9bdca(0x1e5)]!==_0xa9bdca(0x1e7))throw _0x4220a9;}return _0x43d86e;}function a233_0x30ec(_0x12aa9a,_0x962bb1){_0x12aa9a=_0x12aa9a-0x1d5;const _0x4abc9d=a233_0x4abc();let _0x30ec9d=_0x4abc9d[_0x12aa9a];return _0x30ec9d;}export async function scanLocalSqlQueries(_0x54b059){const _0x43bf7c=a233_0x30ec;return scanSqlFilesRecursively(_0x54b059[_0x43bf7c(0x1e3)],_0x54b059['sqlRootDir']);}export function resolveLocalSqlFilePath(_0x231c29,_0x2ffb0d,_0x1adf60){const _0x126ece=a233_0x30ec,_0x5c4d7c=_0x1adf60?.[_0x126ece(0x1da)]||(_0x1adf60?.[_0x126ece(0x1e2)]||_0x1adf60?.[_0x126ece(0x1e9)]?buildSqlRelativePath(_0x2ffb0d,_0x1adf60?.[_0x126ece(0x1e2)],_0x1adf60?.[_0x126ece(0x1e9)],_0x1adf60?.[_0x126ece(0x1f7)]||_0x126ece(0x1eb),_0x1adf60?.[_0x126ece(0x1df)]):buildDefaultSqlFileName(_0x2ffb0d,_0x1adf60?.[_0x126ece(0x1f7)]||'sql'));return join(_0x231c29[_0x126ece(0x1e3)],_0x5c4d7c);}function a233_0x4abc(){const _0xe45e87=['91284HsIxrV','165154OgVebE','split','dbId','isDirectory','5929NnLljx','sqlName','sqlRootDir','isFile','code','1346320gtxPWK','ENOENT','length','dbName','toLowerCase','sql','12tRNSay','mybatisXml','name','indexOf','slice','test','sqlCode','3763179biEeDt','7192bTYllV','16GONsDz','.sql','mode','2474570uxuCDu','replace','37820013osbwMf','.xml','push','path','100suVYNM'];a233_0x4abc=function(){return _0xe45e87;};return a233_0x4abc();}export async function directoryExists(_0x54eb88){const _0x4f0f51=a233_0x30ec;try{const _0x25e5ed=await stat(_0x54eb88);return _0x25e5ed[_0x4f0f51(0x1e0)]();}catch{return![];}}function parseSqlPath(_0x6f8323,_0x94fcec,_0x53e044){const _0x5305fc=a233_0x30ec,_0x5beeec=_0x94fcec[_0x5305fc(0x1f0)](0x0,-_0x53e044[_0x5305fc(0x1e8)]);if(_0x6f8323[_0x5305fc(0x1e8)]<0x2)return null;const _0x3adee8=_0x5beeec[_0x5305fc(0x1ef)]('_');if(_0x3adee8<=0x0||_0x3adee8>=_0x5beeec[_0x5305fc(0x1e8)]-0x1)return null;const _0x194f62=_0x5beeec[_0x5305fc(0x1f0)](0x0,_0x3adee8);if(!isLikelySqlCode(_0x194f62))return null;return{'sqlCode':_0x194f62,'sqlName':_0x5beeec['slice'](_0x3adee8+0x1)};}function isLikelySqlCode(_0x41eedf){const _0x47353c=a233_0x30ec;return/^[A-Za-z0-9-]+-[A-Za-z0-9-]+$/[_0x47353c(0x1f1)](_0x41eedf);}
@@ -1 +1 @@
1
- (function(_0x12235e,_0xf412ad){const _0x346242=a241_0x3505,_0x301493=_0x12235e();while(!![]){try{const _0x43a3de=-parseInt(_0x346242(0x1a0))/0x1*(parseInt(_0x346242(0x1a1))/0x2)+parseInt(_0x346242(0x1a9))/0x3*(parseInt(_0x346242(0x1aa))/0x4)+-parseInt(_0x346242(0x1a2))/0x5*(-parseInt(_0x346242(0x1a6))/0x6)+-parseInt(_0x346242(0x19f))/0x7*(-parseInt(_0x346242(0x19d))/0x8)+parseInt(_0x346242(0x19b))/0x9+parseInt(_0x346242(0x1a8))/0xa*(-parseInt(_0x346242(0x1a7))/0xb)+parseInt(_0x346242(0x19e))/0xc;if(_0x43a3de===_0xf412ad)break;else _0x301493['push'](_0x301493['shift']());}catch(_0x437fc4){_0x301493['push'](_0x301493['shift']());}}}(a241_0x1b13,0x2fa1b));function a241_0x1b13(){const _0xa886dc=['192iUQbMg','16788nwdEZs','2516715lstwJI','digest','16RaDQYl','1637016UqCpQT','126294QEHORN','6686HyaNKN','94uqrDQP','531695fFgqWN','createHash','utf8','update','6kVZTRN','3495173tbiLaP','10pfaXte'];a241_0x1b13=function(){return _0xa886dc;};return a241_0x1b13();}import{readFile}from'node:fs/promises';function a241_0x3505(_0x1e2237,_0x43455c){_0x1e2237=_0x1e2237-0x19b;const _0x1b1328=a241_0x1b13();let _0x350575=_0x1b1328[_0x1e2237];return _0x350575;}import a241_0x33e4da from'node:crypto';export function computeSqlContentHash(_0x3e149a){const _0x49ddf4=a241_0x3505;return a241_0x33e4da[_0x49ddf4(0x1a3)]('md5')[_0x49ddf4(0x1a5)](_0x3e149a)[_0x49ddf4(0x19c)]('hex');}export async function computeSqlFileHash(_0xfb7092){const _0x49fe40=a241_0x3505,_0x2b720d=await readFile(_0xfb7092,_0x49fe40(0x1a4));return computeSqlContentHash(_0x2b720d);}
1
+ (function(_0x36c2e7,_0x317875){const _0x384d30=a234_0x2dd2,_0xeca667=_0x36c2e7();while(!![]){try{const _0x2edc39=parseInt(_0x384d30(0x1a5))/0x1*(-parseInt(_0x384d30(0x1a6))/0x2)+parseInt(_0x384d30(0x1a3))/0x3+parseInt(_0x384d30(0x1a1))/0x4+-parseInt(_0x384d30(0x1a2))/0x5*(-parseInt(_0x384d30(0x19c))/0x6)+parseInt(_0x384d30(0x19e))/0x7+parseInt(_0x384d30(0x19d))/0x8+-parseInt(_0x384d30(0x19f))/0x9;if(_0x2edc39===_0x317875)break;else _0xeca667['push'](_0xeca667['shift']());}catch(_0xc232dd){_0xeca667['push'](_0xeca667['shift']());}}}(a234_0x1940,0xa2fe3));import{readFile}from'node:fs/promises';function a234_0x2dd2(_0x532b71,_0x15d2dd){_0x532b71=_0x532b71-0x19c;const _0x194048=a234_0x1940();let _0x2dd25c=_0x194048[_0x532b71];return _0x2dd25c;}function a234_0x1940(){const _0x380056=['7626618vDEcKv','2031976nXOVEA','2541560anqNaE','10224387tzsTtD','update','1597556Yydaah','5HZrzRX','586881BUznOe','digest','82zpcqfA','16574kLuGXu'];a234_0x1940=function(){return _0x380056;};return a234_0x1940();}import a234_0x41f1d from'node:crypto';export function computeSqlContentHash(_0x394542){const _0x3909fb=a234_0x2dd2;return a234_0x41f1d['createHash']('md5')[_0x3909fb(0x1a0)](_0x394542)[_0x3909fb(0x1a4)]('hex');}export async function computeSqlFileHash(_0x22d813){const _0x2a58d6=await readFile(_0x22d813,'utf8');return computeSqlContentHash(_0x2a58d6);}
@@ -1 +1 @@
1
- (function(_0x16ab63,_0x51f574){const _0x1ff806=a242_0x29f8,_0x297658=_0x16ab63();while(!![]){try{const _0xe6cd5=-parseInt(_0x1ff806(0x1b7))/0x1+-parseInt(_0x1ff806(0x1be))/0x2+-parseInt(_0x1ff806(0x1b2))/0x3*(parseInt(_0x1ff806(0x1af))/0x4)+parseInt(_0x1ff806(0x1bb))/0x5+-parseInt(_0x1ff806(0x1bc))/0x6*(parseInt(_0x1ff806(0x1b8))/0x7)+-parseInt(_0x1ff806(0x1bd))/0x8*(parseInt(_0x1ff806(0x1b6))/0x9)+parseInt(_0x1ff806(0x1bf))/0xa;if(_0xe6cd5===_0x51f574)break;else _0x297658['push'](_0x297658['shift']());}catch(_0x5b896d){_0x297658['push'](_0x297658['shift']());}}}(a242_0x824c,0x919e0));function a242_0x29f8(_0x3d3755,_0x1db47d){_0x3d3755=_0x3d3755-0x1af;const _0x824c26=a242_0x824c();let _0x29f857=_0x824c26[_0x3d3755];return _0x29f857;}import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';export function createEmptySqlLock(){return{'apps':{}};}function a242_0x824c(){const _0x4dcec4=[':\x20sqlRoot\x20mismatch\x20—\x20current\x20\x22','sqlRoot','1170lGNIME','219809SzmuNk','62993TbwVZv','utf8','\x22.\x20','5151390HwCTSG','132YQfqNT','65752GAQbCr','1846862uVXyeB','23677870IInwAH','sqls','\x22\x20vs\x20lock\x20\x22','Check\x20.rabetbase/sql.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','apps','1567716zrkYcS','ENOENT','Failed\x20to\x20read\x20SQL\x20lock\x20file:\x20','3aVdpmd','lastSync'];a242_0x824c=function(){return _0x4dcec4;};return a242_0x824c();}export function ensureSqlLockScope(_0x13dd66,_0x4d5cb8,_0x2491dd,_0x34475e){const _0x59287f=a242_0x29f8,_0x134036=_0x13dd66??createEmptySqlLock();let _0x26bb0f=_0x134036[_0x59287f(0x1c3)][_0x4d5cb8];if(!_0x26bb0f)return _0x26bb0f={'sqlRoot':_0x2491dd,'lastSync':'','sqls':{}},_0x134036[_0x59287f(0x1c3)][_0x4d5cb8]=_0x26bb0f,{'lockData':_0x134036,'appLock':_0x26bb0f};if(!_0x26bb0f[_0x59287f(0x1b5)])_0x26bb0f[_0x59287f(0x1b5)]=_0x2491dd;else{if(_0x26bb0f[_0x59287f(0x1b5)]!==_0x2491dd)throw new Error(_0x34475e+_0x59287f(0x1b4)+_0x2491dd+_0x59287f(0x1c1)+_0x26bb0f[_0x59287f(0x1b5)]+_0x59287f(0x1ba)+_0x59287f(0x1c2));}return!_0x26bb0f[_0x59287f(0x1c0)]&&(_0x26bb0f[_0x59287f(0x1c0)]={}),!_0x26bb0f[_0x59287f(0x1b3)]&&(_0x26bb0f[_0x59287f(0x1b3)]=''),{'lockData':_0x134036,'appLock':_0x26bb0f};}export async function readSqlLockFile(_0x1e0e07){const _0x53f36e=a242_0x29f8;try{const _0x390577=await readFile(_0x1e0e07,_0x53f36e(0x1b9));return JSON['parse'](_0x390577);}catch(_0x50d8a2){if(_0x50d8a2['code']===_0x53f36e(0x1b0))return null;throw new Error(_0x53f36e(0x1b1)+String(_0x50d8a2));}}export async function writeSqlLockFile(_0x4703ad,_0x48f6d5){const _0x5327bf=a242_0x29f8;await mkdir(dirname(_0x4703ad),{'recursive':!![]}),await writeFile(_0x4703ad,JSON['stringify'](_0x48f6d5,null,0x2),_0x5327bf(0x1b9));}
1
+ (function(_0x21e3f2,_0x422f1c){const _0x422adf=a235_0x535d,_0x514798=_0x21e3f2();while(!![]){try{const _0x3538aa=parseInt(_0x422adf(0x171))/0x1+parseInt(_0x422adf(0x16f))/0x2+parseInt(_0x422adf(0x175))/0x3*(parseInt(_0x422adf(0x16d))/0x4)+-parseInt(_0x422adf(0x174))/0x5+-parseInt(_0x422adf(0x16e))/0x6+-parseInt(_0x422adf(0x167))/0x7+-parseInt(_0x422adf(0x16b))/0x8;if(_0x3538aa===_0x422f1c)break;else _0x514798['push'](_0x514798['shift']());}catch(_0x1cc0d5){_0x514798['push'](_0x514798['shift']());}}}(a235_0x2fbc,0x40827));import{mkdir,readFile,writeFile}from'node:fs/promises';function a235_0x2fbc(){const _0x554960=['Failed\x20to\x20read\x20SQL\x20lock\x20file:\x20','\x22\x20vs\x20lock\x20\x22','1959180fnEWHG','3981kOibKv','\x22.\x20','ENOENT','Check\x20.rabetbase/sql.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','2619582rbCUmL','sqlRoot','lastSync','apps','399128ZxygYr','stringify','964xPtOlf','1060524iMYfDA','977562CUYHPV','sqls','448350hDgeks'];a235_0x2fbc=function(){return _0x554960;};return a235_0x2fbc();}import{dirname}from'node:path';export function createEmptySqlLock(){return{'apps':{}};}function a235_0x535d(_0x4b8d18,_0x2640ad){_0x4b8d18=_0x4b8d18-0x166;const _0x2fbc64=a235_0x2fbc();let _0x535d89=_0x2fbc64[_0x4b8d18];return _0x535d89;}export function ensureSqlLockScope(_0x261e75,_0x2d4139,_0x54f94b,_0x1d8e0e){const _0x45d2fe=a235_0x535d,_0xb2cde=_0x261e75??createEmptySqlLock();let _0x521d4f=_0xb2cde[_0x45d2fe(0x16a)][_0x2d4139];if(!_0x521d4f)return _0x521d4f={'sqlRoot':_0x54f94b,'lastSync':'','sqls':{}},_0xb2cde['apps'][_0x2d4139]=_0x521d4f,{'lockData':_0xb2cde,'appLock':_0x521d4f};if(!_0x521d4f['sqlRoot'])_0x521d4f[_0x45d2fe(0x168)]=_0x54f94b;else{if(_0x521d4f[_0x45d2fe(0x168)]!==_0x54f94b)throw new Error(_0x1d8e0e+':\x20sqlRoot\x20mismatch\x20—\x20current\x20\x22'+_0x54f94b+_0x45d2fe(0x173)+_0x521d4f[_0x45d2fe(0x168)]+_0x45d2fe(0x176)+_0x45d2fe(0x166));}return!_0x521d4f[_0x45d2fe(0x170)]&&(_0x521d4f[_0x45d2fe(0x170)]={}),!_0x521d4f[_0x45d2fe(0x169)]&&(_0x521d4f[_0x45d2fe(0x169)]=''),{'lockData':_0xb2cde,'appLock':_0x521d4f};}export async function readSqlLockFile(_0x5c7323){const _0x4f28bd=a235_0x535d;try{const _0xf753a3=await readFile(_0x5c7323,'utf8');return JSON['parse'](_0xf753a3);}catch(_0xce8917){if(_0xce8917['code']===_0x4f28bd(0x177))return null;throw new Error(_0x4f28bd(0x172)+String(_0xce8917));}}export async function writeSqlLockFile(_0x49594a,_0x3ac89f){const _0x331e25=a235_0x535d;await mkdir(dirname(_0x49594a),{'recursive':!![]}),await writeFile(_0x49594a,JSON[_0x331e25(0x16c)](_0x3ac89f,null,0x2),'utf8');}
@@ -1 +1 @@
1
- (function(_0x4bc778,_0x17d99f){const _0x4bd98b=a244_0x3926,_0x5a4340=_0x4bc778();while(!![]){try{const _0x3d37d5=-parseInt(_0x4bd98b(0x19e))/0x1+parseInt(_0x4bd98b(0x1a7))/0x2*(parseInt(_0x4bd98b(0x1a0))/0x3)+parseInt(_0x4bd98b(0x1a8))/0x4*(-parseInt(_0x4bd98b(0x1aa))/0x5)+-parseInt(_0x4bd98b(0x1a5))/0x6+parseInt(_0x4bd98b(0x19b))/0x7+-parseInt(_0x4bd98b(0x19c))/0x8+parseInt(_0x4bd98b(0x1a2))/0x9;if(_0x3d37d5===_0x17d99f)break;else _0x5a4340['push'](_0x5a4340['shift']());}catch(_0x43ddac){_0x5a4340['push'](_0x5a4340['shift']());}}}(a244_0x21ee,0xe5644));function a244_0x3926(_0x3b98dc,_0x585a5e){_0x3b98dc=_0x3b98dc-0x19b;const _0x21ee7=a244_0x21ee();let _0x39264b=_0x21ee7[_0x3b98dc];return _0x39264b;}export function detectSqlMode(_0x17e7b1){const _0x2a1395=a244_0x3926,_0x4cc1c1=_0x17e7b1['trimStart']();if(/^<(select|insert|update|delete)\b/i[_0x2a1395(0x1a6)](_0x4cc1c1))return'mybatisXml';return _0x2a1395(0x1ab);}export function getSqlFileExtension(_0x39f8b5){const _0x4841cc=a244_0x3926;return _0x39f8b5===_0x4841cc(0x1a1)?_0x4841cc(0x19f):'.sql';}export function buildDefaultSqlFileName(_0x6e8123,_0x573768){return''+_0x6e8123+getSqlFileExtension(_0x573768);}export function sanitizeSqlPathSegment(_0x3d1f9e,_0x1790fd){const _0x1f67c7=a244_0x3926,_0x101f8e=String(_0x3d1f9e??'')[_0x1f67c7(0x19d)](),_0x94df16=_0x101f8e[_0x1f67c7(0x1a9)](/[<>:"/\\|?*\u0000-\u001F]/g,'-')[_0x1f67c7(0x1a9)](/\s+/g,'-')[_0x1f67c7(0x1a9)](/-+/g,'-')[_0x1f67c7(0x1a9)](/^\.+/,'')[_0x1f67c7(0x1a9)](/\.+$/,'')[_0x1f67c7(0x1a9)](/^-+/,'')[_0x1f67c7(0x1a9)](/-+$/,'');return _0x94df16||_0x1790fd;}export function buildDbDirectoryName(_0xfa25b7,_0x5b43d3){const _0x410175=a244_0x3926;return sanitizeSqlPathSegment(_0xfa25b7,_0x5b43d3!=null?'db-'+_0x5b43d3:_0x410175(0x1a3));}export function buildSqlRelativePath(_0x1b8d34,_0x4935c0,_0x79d11d,_0x259724,_0x303817){const _0x1ff93d=a244_0x3926,_0x3b7a77=buildDbDirectoryName(_0x79d11d,_0x303817),_0xfe40b2=sanitizeSqlPathSegment(_0x1b8d34,_0x1ff93d(0x1a4)),_0x113b11=sanitizeSqlPathSegment(_0x4935c0,_0xfe40b2);return _0x3b7a77+'/'+_0xfe40b2+'_'+_0x113b11+getSqlFileExtension(_0x259724);}function a244_0x21ee(){const _0xe8eabb=['185ajtwbV','sql','5613545Mostrj','9064640GuaTMW','trim','1001665PcnQEi','.xml','9hbNtQP','mybatisXml','35426349AcKgoB','unknown-db','unknown-sql','9235356ZMHfoT','test','45718hVjKVv','20888vWziko','replace'];a244_0x21ee=function(){return _0xe8eabb;};return a244_0x21ee();}
1
+ (function(_0x64e1bb,_0x3840a3){const _0x245c82=a237_0x517c,_0x54cf10=_0x64e1bb();while(!![]){try{const _0x1f4c5e=parseInt(_0x245c82(0x12f))/0x1*(-parseInt(_0x245c82(0x12d))/0x2)+-parseInt(_0x245c82(0x120))/0x3+-parseInt(_0x245c82(0x123))/0x4+-parseInt(_0x245c82(0x12a))/0x5+-parseInt(_0x245c82(0x121))/0x6+parseInt(_0x245c82(0x124))/0x7+-parseInt(_0x245c82(0x126))/0x8*(-parseInt(_0x245c82(0x122))/0x9);if(_0x1f4c5e===_0x3840a3)break;else _0x54cf10['push'](_0x54cf10['shift']());}catch(_0x40184e){_0x54cf10['push'](_0x54cf10['shift']());}}}(a237_0x56bc,0xaac88));function a237_0x517c(_0x52836f,_0x22ee0e){_0x52836f=_0x52836f-0x11f;const _0x56bcbe=a237_0x56bc();let _0x517c58=_0x56bcbe[_0x52836f];return _0x517c58;}export function detectSqlMode(_0x64b13d){const _0x5c9b31=a237_0x517c,_0x74b25d=_0x64b13d['trimStart']();if(/^<(select|insert|update|delete)\b/i['test'](_0x74b25d))return _0x5c9b31(0x12e);return _0x5c9b31(0x129);}export function getSqlFileExtension(_0x4fc87f){const _0x4ef075=a237_0x517c;return _0x4fc87f===_0x4ef075(0x12e)?_0x4ef075(0x127):_0x4ef075(0x125);}export function buildDefaultSqlFileName(_0x6c606e,_0x124532){return''+_0x6c606e+getSqlFileExtension(_0x124532);}export function sanitizeSqlPathSegment(_0x210041,_0x44fef0){const _0x2cfd80=a237_0x517c,_0x445cb0=String(_0x210041??'')[_0x2cfd80(0x11f)](),_0x368a30=_0x445cb0[_0x2cfd80(0x128)](/[<>:"/\\|?*\u0000-\u001F]/g,'-')[_0x2cfd80(0x128)](/\s+/g,'-')[_0x2cfd80(0x128)](/-+/g,'-')[_0x2cfd80(0x128)](/^\.+/,'')[_0x2cfd80(0x128)](/\.+$/,'')[_0x2cfd80(0x128)](/^-+/,'')[_0x2cfd80(0x128)](/-+$/,'');return _0x368a30||_0x44fef0;}function a237_0x56bc(){const _0x5935e3=['3107211hEEPet','4730832aalLhF','17759268ieKjAl','2125892aVZrjT','671881TGaXYE','.sql','16NrriHZ','.xml','replace','sql','1218960nImgoX','unknown-sql','unknown-db','1486970aRCGlG','mybatisXml','1qBYKUf','trim'];a237_0x56bc=function(){return _0x5935e3;};return a237_0x56bc();}export function buildDbDirectoryName(_0x49b192,_0x49fa62){const _0x1f2ec8=a237_0x517c;return sanitizeSqlPathSegment(_0x49b192,_0x49fa62!=null?'db-'+_0x49fa62:_0x1f2ec8(0x12c));}export function buildSqlRelativePath(_0x5592ea,_0x1264b3,_0x43b2ad,_0x349185,_0x41e560){const _0x342a71=a237_0x517c,_0x5b5498=buildDbDirectoryName(_0x43b2ad,_0x41e560),_0x1c1216=sanitizeSqlPathSegment(_0x5592ea,_0x342a71(0x12b)),_0x176ce2=sanitizeSqlPathSegment(_0x1264b3,_0x1c1216);return _0x5b5498+'/'+_0x1c1216+'_'+_0x176ce2+getSqlFileExtension(_0x349185);}
@@ -1 +1 @@
1
- const a245_0x51db92=a245_0x1c36;(function(_0x1c75ad,_0x185e67){const _0x298da9=a245_0x1c36,_0x2278e1=_0x1c75ad();while(!![]){try{const _0x1d5cda=-parseInt(_0x298da9(0x1d7))/0x1+-parseInt(_0x298da9(0x1b7))/0x2+parseInt(_0x298da9(0x195))/0x3+-parseInt(_0x298da9(0x1cc))/0x4*(parseInt(_0x298da9(0x1d9))/0x5)+-parseInt(_0x298da9(0x18c))/0x6+parseInt(_0x298da9(0x188))/0x7+parseInt(_0x298da9(0x1bf))/0x8;if(_0x1d5cda===_0x185e67)break;else _0x2278e1['push'](_0x2278e1['shift']());}catch(_0x108db3){_0x2278e1['push'](_0x2278e1['shift']());}}}(a245_0x2781,0x311b6));const MYBATIS_OUTER_TAGS=new Map([[a245_0x51db92(0x1a8),a245_0x51db92(0x1bc)],[a245_0x51db92(0x1a3),'INSERT'],['update',a245_0x51db92(0x1c5)],[a245_0x51db92(0x1d5),a245_0x51db92(0x1d4)]]),MYBATIS_DYNAMIC_TAGS=new Set(['if',a245_0x51db92(0x1ba),'foreach','choose','when',a245_0x51db92(0x18a),a245_0x51db92(0x1db),a245_0x51db92(0x190),a245_0x51db92(0x1c4),'include','property']),MYBATIS_BRANCH_TAGS=new Set(['if',a245_0x51db92(0x1a2),a245_0x51db92(0x1a7),'when',a245_0x51db92(0x18a)]);export const MYBATIS_DYNAMIC_START_MARKER=a245_0x51db92(0x1c7);export const MYBATIS_DYNAMIC_END_MARKER=a245_0x51db92(0x186);export const MYBATIS_INCLUDE_MARKER=a245_0x51db92(0x189);const UNRESOLVED_SQL_FRAGMENT=a245_0x51db92(0x1b3),MYBATIS_OUTER_TAG_PATTERN=new RegExp(a245_0x51db92(0x1b4)+[...MYBATIS_OUTER_TAGS[a245_0x51db92(0x1a6)]()][a245_0x51db92(0x181)]('|')+a245_0x51db92(0x1a1),'i');export function normalizeSqlForStaticAnalysis(_0x381179){const _0x23a950=a245_0x51db92,_0x4a4d0c=typeof _0x381179===_0x23a950(0x1d3)?_0x381179:'';if(!startsWithMybatisStatementWrapper(_0x4a4d0c))return{'sql':_0x4a4d0c,'mode':_0x23a950(0x1ac)};let _0x54ab75=0x0,_0x80af1='',_0x1e05c9,_0x3cde9c=![],_0x16f39b=![];const _0x39968b=[];while(_0x54ab75<_0x4a4d0c[_0x23a950(0x1a4)]){if(_0x4a4d0c['startsWith'](_0x23a950(0x18f),_0x54ab75)){const _0x37bba5=_0x4a4d0c['indexOf'](_0x23a950(0x1c6),_0x54ab75+0x4);if(_0x37bba5<0x0)return invalidMybatisSource(_0x23a950(0x1de));_0x80af1+='\x20',_0x54ab75=_0x37bba5+0x3;continue;}if(_0x4a4d0c[_0x23a950(0x1b0)](_0x23a950(0x184),_0x54ab75)){if(!_0x3cde9c||_0x16f39b)return invalidMybatisSource(_0x23a950(0x1bd));const _0x5ed97a=_0x4a4d0c[_0x23a950(0x1b9)](_0x23a950(0x1ad),_0x54ab75+0x9);if(_0x5ed97a<0x0)return invalidMybatisSource(_0x23a950(0x194));_0x80af1+=_0x4a4d0c[_0x23a950(0x1cf)](_0x54ab75+0x9,_0x5ed97a),_0x54ab75=_0x5ed97a+0x3;continue;}if(_0x4a4d0c[_0x23a950(0x1b0)]('<?',_0x54ab75)){if(_0x3cde9c)return invalidMybatisSource(_0x23a950(0x1b8));const _0x50bead=_0x4a4d0c['indexOf']('?>',_0x54ab75+0x2);if(_0x50bead<0x0)return invalidMybatisSource(_0x23a950(0x1d8));_0x80af1+='\x20',_0x54ab75=_0x50bead+0x2;continue;}if(_0x4a4d0c[_0x54ab75]!=='<'){const _0x522ec8=_0x4a4d0c[_0x23a950(0x1b9)]('<',_0x54ab75),_0x5e6514=_0x522ec8<0x0?_0x4a4d0c[_0x23a950(0x1a4)]:_0x522ec8,_0x37de50=_0x4a4d0c['slice'](_0x54ab75,_0x5e6514);if((!_0x3cde9c||_0x16f39b)&&_0x37de50[_0x23a950(0x1db)]())return invalidMybatisSource(_0x23a950(0x1c0));if(_0x3cde9c&&!_0x16f39b){const _0x3e9446=decodeXmlEntities(_0x37de50);if(_0x3e9446===null)return invalidMybatisSource(_0x23a950(0x1cd));_0x80af1+=_0x3e9446;}else _0x80af1+='\x20';_0x54ab75=_0x5e6514;continue;}const _0x1338c1=findXmlTagEnd(_0x4a4d0c,_0x54ab75);if(_0x1338c1<0x0)return invalidMybatisSource(_0x23a950(0x1c1));const _0x40a3bb=_0x4a4d0c[_0x23a950(0x1cf)](_0x54ab75,_0x1338c1+0x1),_0x5a88a2=/^<\s*(\/?)\s*([A-Za-z][\w:-]*)([\s\S]*?)(\/?)\s*>$/['exec'](_0x40a3bb);if(!_0x5a88a2)return invalidMybatisSource('Invalid\x20MyBatis\x20XML\x20tag.');const _0x505141=_0x5a88a2[0x1]==='/',_0x4cec84=_0x5a88a2[0x2]??'',_0x2de38c=_0x4cec84[_0x23a950(0x1ae)](),_0x4a7ea3=_0x5a88a2[0x3]??'',_0x3042e5=_0x5a88a2[0x4]==='/',_0x4ad7e4=MYBATIS_OUTER_TAGS['get'](_0x2de38c);if(!_0x4ad7e4&&!MYBATIS_DYNAMIC_TAGS[_0x23a950(0x18e)](_0x2de38c))return invalidMybatisSource(_0x23a950(0x1dc)+_0x2de38c+'>.');if(!_0x4ad7e4&&_0x4cec84!==_0x2de38c)return invalidMybatisSource('MyBatis\x20dynamic\x20tag\x20names\x20must\x20be\x20lowercase:\x20<'+_0x4cec84+'>.');if(_0x505141){if(_0x4a7ea3[_0x23a950(0x1db)]()||_0x3042e5)return invalidMybatisSource(_0x23a950(0x196)+_0x4cec84+'>.');const _0x392446=_0x39968b['at'](-0x1);if(!_0x392446||(_0x392446[_0x23a950(0x1ce)]?_0x392446[_0x23a950(0x19c)]!==_0x2de38c:_0x392446['rawName']!==_0x4cec84))return invalidMybatisSource('Mismatched\x20MyBatis\x20XML\x20closing\x20tag:\x20</'+_0x4cec84+'>.');_0x39968b[_0x23a950(0x198)]();if(_0x392446[_0x23a950(0x1ce)])_0x16f39b=!![];_0x80af1+=MYBATIS_BRANCH_TAGS[_0x23a950(0x18e)](_0x2de38c)?'\x20'+MYBATIS_DYNAMIC_END_MARKER+'\x20':'\x20';}else{if(!hasWellFormedXmlAttributes(_0x4a7ea3))return invalidMybatisSource(_0x23a950(0x197)+_0x4cec84+'>.');if(_0x2de38c===_0x23a950(0x19d)&&(!_0x3042e5||_0x39968b['at'](-0x1)?.[_0x23a950(0x19c)]!==_0x23a950(0x192)))return invalidMybatisSource(_0x23a950(0x183));if(_0x4ad7e4){if(_0x3cde9c||_0x39968b[_0x23a950(0x1a4)]>0x0)return invalidMybatisSource('Multiple\x20MyBatis\x20statement\x20wrappers\x20are\x20not\x20supported.');_0x3cde9c=!![],_0x16f39b=_0x3042e5,_0x1e05c9=_0x4ad7e4;}else{if(!_0x3cde9c||_0x16f39b)return invalidMybatisSource(_0x23a950(0x1aa)+_0x4cec84+'>.');}_0x80af1+=_0x2de38c===_0x23a950(0x1ba)?_0x23a950(0x1a0):_0x2de38c==='set'?'\x20SET\x20':_0x2de38c===_0x23a950(0x192)?'\x20'+MYBATIS_INCLUDE_MARKER+'\x20':MYBATIS_BRANCH_TAGS[_0x23a950(0x18e)](_0x2de38c)&&!_0x3042e5?'\x20'+MYBATIS_DYNAMIC_START_MARKER+'\x20':'\x20',!_0x3042e5&&_0x39968b[_0x23a950(0x1b1)]({'rawName':_0x4cec84,'tagName':_0x2de38c,'outer':!!_0x4ad7e4});}_0x54ab75=_0x1338c1+0x1;}if(_0x39968b[_0x23a950(0x1a4)]>0x0)return invalidMybatisSource(_0x23a950(0x1bb)+_0x39968b['at'](-0x1)?.[_0x23a950(0x1a5)]+'>.');if(!_0x3cde9c||!_0x16f39b)return invalidMybatisSource('MyBatis\x20XML\x20must\x20contain\x20exactly\x20one\x20complete\x20statement\x20wrapper.');return{'sql':_0x80af1['trim'](),'mode':_0x23a950(0x1d1),..._0x1e05c9?{'statementType':_0x1e05c9}:{}};}function hasWellFormedXmlAttributes(_0x24b6d8){const _0x13388b=a245_0x51db92;let _0x531338=0x0;const _0x473e82=new Set();while(_0x531338<_0x24b6d8[_0x13388b(0x1a4)]){while(_0x531338<_0x24b6d8[_0x13388b(0x1a4)]&&/\s/[_0x13388b(0x1d2)](_0x24b6d8[_0x531338]??''))_0x531338+=0x1;if(_0x531338>=_0x24b6d8[_0x13388b(0x1a4)])return!![];const _0x658305=/^[A-Za-z_:][\w:.-]*/[_0x13388b(0x1c9)](_0x24b6d8[_0x13388b(0x1cf)](_0x531338)),_0x5df002=_0x658305?.[0x0];if(!_0x5df002||_0x473e82['has'](_0x5df002))return![];_0x473e82[_0x13388b(0x1b5)](_0x5df002),_0x531338+=_0x5df002[_0x13388b(0x1a4)];while(_0x531338<_0x24b6d8[_0x13388b(0x1a4)]&&/\s/[_0x13388b(0x1d2)](_0x24b6d8[_0x531338]??''))_0x531338+=0x1;if(_0x24b6d8[_0x531338]!=='=')return![];_0x531338+=0x1;while(_0x531338<_0x24b6d8[_0x13388b(0x1a4)]&&/\s/[_0x13388b(0x1d2)](_0x24b6d8[_0x531338]??''))_0x531338+=0x1;const _0x2dd6fa=_0x24b6d8[_0x531338];if(_0x2dd6fa!=='\x22'&&_0x2dd6fa!=='\x27')return![];_0x531338+=0x1;const _0x1f88dc=_0x24b6d8[_0x13388b(0x1b9)](_0x2dd6fa,_0x531338);if(_0x1f88dc<0x0)return![];if(decodeXmlEntities(_0x24b6d8[_0x13388b(0x1cf)](_0x531338,_0x1f88dc))===null)return![];_0x531338=_0x1f88dc+0x1;}return!![];}function startsWithMybatisStatementWrapper(_0x385027){const _0x251037=a245_0x51db92;let _0xce8f34=0x0;const _0x5325b6=()=>{while(_0xce8f34<_0x385027['length']&&/\s/['test'](_0x385027[_0xce8f34]??''))_0xce8f34+=0x1;};_0x5325b6();while(_0xce8f34<_0x385027['length']){if(_0x385027['startsWith'](_0x251037(0x18f),_0xce8f34)){const _0x20d29b=_0x385027['indexOf'](_0x251037(0x1c6),_0xce8f34+0x4);if(_0x20d29b<0x0)return!![];_0xce8f34=_0x20d29b+0x3,_0x5325b6();continue;}if(_0x385027[_0x251037(0x1b0)]('<?',_0xce8f34)){const _0x1e3d96=_0x385027['indexOf']('?>',_0xce8f34+0x2);if(_0x1e3d96<0x0)return!![];_0xce8f34=_0x1e3d96+0x2,_0x5325b6();continue;}break;}return MYBATIS_OUTER_TAG_PATTERN[_0x251037(0x1d2)](_0x385027[_0x251037(0x1cf)](_0xce8f34));}function invalidMybatisSource(_0x265569){const _0x4ed343=a245_0x51db92;return{'sql':'','mode':_0x4ed343(0x1d1),'error':_0x265569};}function findXmlTagEnd(_0x438df4,_0x4cc52c){let _0x331fe0;for(let _0x4f6e56=_0x4cc52c+0x1;_0x4f6e56<_0x438df4['length'];_0x4f6e56+=0x1){const _0x23daf7=_0x438df4[_0x4f6e56];if(_0x331fe0){if(_0x23daf7===_0x331fe0)_0x331fe0=undefined;continue;}if(_0x23daf7==='\x22'||_0x23daf7==='\x27'){_0x331fe0=_0x23daf7;continue;}if(_0x23daf7==='>')return _0x4f6e56;}return-0x1;}function decodeXmlEntities(_0xe2f896){const _0x247e0f=a245_0x51db92;let _0x1451b7=![];const _0xe64ab5=_0xe2f896[_0x247e0f(0x193)](/&(?:#x[0-9a-f]+;|#[0-9]+;|[A-Za-z_:][\w:.-]*;)?/g,_0x4a1168=>{const _0x45d7fd=_0x247e0f;if(_0x4a1168==='&lt;')return'<';if(_0x4a1168===_0x45d7fd(0x199))return'>';if(_0x4a1168===_0x45d7fd(0x19f))return'\x22';if(_0x4a1168===_0x45d7fd(0x18b))return'\x27';if(_0x4a1168==='&amp;')return'&';const _0x164e97=/^&#(?:x([0-9a-f]+)|([0-9]+));$/[_0x45d7fd(0x1c9)](_0x4a1168);if(_0x164e97){const _0x50ebf1=_0x164e97[0x1],_0xa736ec=_0x164e97[0x2],_0x2daac0=Number[_0x45d7fd(0x1cb)](_0x50ebf1??_0xa736ec??'',_0x50ebf1?0x10:0xa);if(isValidXmlCharacter(_0x2daac0))return String[_0x45d7fd(0x1b2)](_0x2daac0);}return _0x1451b7=!![],'';});return _0x1451b7?null:_0xe64ab5;}function isValidXmlCharacter(_0x54d286){return _0x54d286===0x9||_0x54d286===0xa||_0x54d286===0xd||_0x54d286>=0x20&&_0x54d286<=0xd7ff||_0x54d286>=0xe000&&_0x54d286<=0xfffd||_0x54d286>=0x10000&&_0x54d286<=0x10ffff;}export function detectSqlType(_0x3c9f34){return detectNormalizedSqlType(normalizeSqlForStaticAnalysis(_0x3c9f34));}function detectNormalizedSqlType(_0x29ade5){const _0x14910b=a245_0x51db92;if(_0x29ade5[_0x14910b(0x185)])return{'type':_0x14910b(0x1df),'isSelectOnly':![],'isDangerous':![],'reason':_0x29ade5[_0x14910b(0x185)]};if(!_0x29ade5[_0x14910b(0x1ac)]['trim']())return{'type':_0x14910b(0x1df),'isSelectOnly':![],'isDangerous':![],'reason':_0x14910b(0x19e)};const _0x437cba=stripStaticAnalysisMarkers(_0x29ade5[_0x14910b(0x1ac)])[_0x14910b(0x193)](/#\{[^}]*\}/g,'?')[_0x14910b(0x193)](/\$\{[^}]*\}/g,'?')[_0x14910b(0x193)](/@[^(\s]+(\([^)]*\))?/g,'')[_0x14910b(0x193)](/\/\*[\s\S]*?\*\//g,'')[_0x14910b(0x1db)](),_0x91f641=_0x437cba[_0x14910b(0x1c8)]('\x0a');let _0x5e55d9='';for(const _0xcbdc8e of _0x91f641){const _0x3b3fdd=_0xcbdc8e[_0x14910b(0x1db)]();if(!_0x3b3fdd||_0x3b3fdd['startsWith']('--')||_0x3b3fdd[_0x14910b(0x1b0)]('/*'))continue;_0x5e55d9=_0x3b3fdd;break;}const _0x5e41e4=_0x5e55d9[_0x14910b(0x1d6)](),_0x3e795c=_0x29ade5['statementType'],_0xa03c1f=maskSqlTextForBlockedKeywordScan(_0x437cba),_0x4ec3c6=/\b(DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x14910b(0x1d2)](_0xa03c1f);if(_0x3e795c===_0x14910b(0x1bc)||!_0x3e795c&&(_0x5e41e4[_0x14910b(0x1b0)](_0x14910b(0x1bc))||_0x5e41e4['startsWith']('WITH'))){const _0x5d0ed7=/\b(INSERT|UPDATE|DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i['test'](_0x437cba);return{'type':_0x14910b(0x1bc),'isSelectOnly':!_0x5d0ed7,'isDangerous':_0x5d0ed7,'reason':_0x5d0ed7?_0x14910b(0x1d0):undefined};}if(_0x3e795c==='INSERT'||!_0x3e795c&&_0x5e41e4['startsWith'](_0x14910b(0x1ab)))return{'type':_0x14910b(0x1ab),'isSelectOnly':![],'isDangerous':_0x4ec3c6,'reason':_0x4ec3c6?_0x14910b(0x19a):undefined};if(_0x3e795c===_0x14910b(0x1c5)||!_0x3e795c&&_0x5e41e4[_0x14910b(0x1b0)](_0x14910b(0x1c5)))return{'type':_0x14910b(0x1c5),'isSelectOnly':![],'isDangerous':_0x4ec3c6,'reason':_0x4ec3c6?_0x14910b(0x19a):undefined};if(_0x3e795c===_0x14910b(0x1d4)||!_0x3e795c&&_0x5e41e4['startsWith'](_0x14910b(0x1d4)))return{'type':_0x14910b(0x1d4),'isSelectOnly':![],'isDangerous':!![],'reason':_0x14910b(0x1c2)};if(/^(CREATE|ALTER|DROP|TRUNCATE)/i[_0x14910b(0x1d2)](_0x5e41e4))return{'type':_0x14910b(0x1be),'isSelectOnly':![],'isDangerous':!![],'reason':'DDL\x20statements\x20are\x20blocked\x20from\x20auto-save'};return{'type':_0x14910b(0x1df),'isSelectOnly':![],'isDangerous':![]};}function stripStaticAnalysisMarkers(_0x279526){const _0x4bb3b0=a245_0x51db92;return _0x279526[_0x4bb3b0(0x191)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x4bb3b0(0x191)](MYBATIS_DYNAMIC_END_MARKER,'\x20')[_0x4bb3b0(0x191)](MYBATIS_INCLUDE_MARKER,'\x20'+UNRESOLVED_SQL_FRAGMENT+'\x20');}function maskSqlTextForBlockedKeywordScan(_0x20f5f8){const _0xdc9923=a245_0x51db92;return _0x20f5f8[_0xdc9923(0x193)](/'(?:''|\\.|[^'])*'/g,'\x20')[_0xdc9923(0x193)](/"(?:""|\\.|[^"])*"/g,'\x20')[_0xdc9923(0x193)](/`(?:``|\\.|[^`])*`/g,'\x20')['replace'](/--.*$/gm,'\x20')['replace'](/#.*$/gm,'\x20')['replace'](/\/\*[\s\S]*?\*\//g,'\x20');}function a245_0x2781(){const _0x5e80d6=['otherwise','&apos;','806688UlkBbc','Unable\x20to\x20detect\x20SQL\x20type.\x20Please\x20check\x20the\x20SQL\x20content.','has','<!--','set','replaceAll','include','replace','Unterminated\x20CDATA\x20section.','1168866CzNyKV','Invalid\x20MyBatis\x20XML\x20closing\x20tag:\x20</','Invalid\x20attributes\x20on\x20MyBatis\x20XML\x20tag:\x20<','pop','&gt;','SQL\x20contains\x20blocked\x20DELETE\x20or\x20DDL\x20statements','\x20statements\x20cannot\x20be\x20auto-saved.\x20Please\x20operate\x20manually\x20on\x20the\x20platform.','tagName','property','SQL\x20content\x20is\x20empty','&quot;','\x20WHERE\x20',')\x5cb','foreach','insert','length','rawName','keys','choose','select','isDangerous','MyBatis\x20dynamic\x20tag\x20must\x20be\x20inside\x20the\x20statement\x20wrapper:\x20<','INSERT','sql',']]>','toLowerCase','unknown\x20table(s)','startsWith','push','fromCodePoint','__RABETBASE_UNRESOLVED_SQL_FRAGMENT__','^<\x5cs*(?:','add','match','69348pcGaRP','XML\x20declarations\x20must\x20precede\x20the\x20MyBatis\x20statement\x20wrapper.','indexOf','where','Unclosed\x20MyBatis\x20XML\x20tag:\x20<','SELECT','CDATA\x20sections\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.','DDL','561152nBhzqG','SQL\x20text\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.','Unterminated\x20MyBatis\x20XML\x20tag.','DELETE\x20statements\x20are\x20blocked\x20from\x20auto-save','type','bind','UPDATE','-->','__RABETBASE_MYBATIS_DYNAMIC_START__','split','exec','matchAll','parseInt','4SPMqKf','Invalid\x20XML\x20entity\x20reference.','outer','slice','SQL\x20contains\x20modification\x20statements\x20alongside\x20SELECT','mybatisXml','test','string','DELETE','delete','toUpperCase','219942zeScGM','Unterminated\x20XML\x20declaration.','893975TFSVDY','reason','trim','Unsupported\x20MyBatis\x20XML\x20tag:\x20<','Unable\x20to\x20detect\x20SQL\x20type.\x20','Unterminated\x20XML\x20comment.','UNKNOWN','join','includes','MyBatis\x20<property>\x20must\x20be\x20a\x20self-closing\x20direct\x20child\x20of\x20<include>.','<![CDATA[','error','__RABETBASE_MYBATIS_DYNAMIC_END__','\x20query\x20targeting\x20','2164645YHmCmI','__RABETBASE_MYBATIS_INCLUDE_UNRESOLVED__'];a245_0x2781=function(){return _0x5e80d6;};return a245_0x2781();}function a245_0x1c36(_0x21db95,_0x5dfa5e){_0x21db95=_0x21db95-0x181;const _0x278166=a245_0x2781();let _0x1c367a=_0x278166[_0x21db95];return _0x1c367a;}function extractTables(_0x2e17c4){const _0x2d72ec=a245_0x51db92,_0x1a5757=_0x2e17c4[_0x2d72ec(0x193)](/#\{[^}]*\}/g,'?')[_0x2d72ec(0x193)](/\$\{[^}]*\}/g,'?')[_0x2d72ec(0x193)](/'[^']*'/g,'\x27\x27')['replace'](/--.*$/gm,'')[_0x2d72ec(0x193)](/\/\*[\s\S]*?\*\//g,''),_0x5f5aac=[],_0x5a5c00=_0x1a5757[_0x2d72ec(0x1b6)](/FROM\s+([^\s,)(]+)/i);addTable(_0x5f5aac,_0x5a5c00?.[0x1]);for(const _0x211069 of _0x1a5757[_0x2d72ec(0x1ca)](/(?:INNER|LEFT|RIGHT|FULL|CROSS)?\s*JOIN\s+([^\s,)(]+)/gi)){addTable(_0x5f5aac,_0x211069[0x1]);}const _0x2d53b8=_0x1a5757[_0x2d72ec(0x1b6)](/INTO\s+([^\s(]+)/i);addTable(_0x5f5aac,_0x2d53b8?.[0x1]);const _0x1b2e92=_0x1a5757[_0x2d72ec(0x1b6)](/UPDATE\s+([^\s,)(]+)/i);return addTable(_0x5f5aac,_0x1b2e92?.[0x1]),_0x5f5aac;}function addTable(_0xa60d99,_0x5ede0f){const _0x3ee7c2=a245_0x51db92,_0x166fc2=_0x5ede0f?.[_0x3ee7c2(0x193)](/[`"]/g,'');_0x166fc2&&_0x166fc2!==UNRESOLVED_SQL_FRAGMENT&&!_0xa60d99[_0x3ee7c2(0x182)](_0x166fc2)&&_0xa60d99[_0x3ee7c2(0x1b1)](_0x166fc2);}function extractParameters(_0x4b6263){const _0x6f817c=new Set();for(const _0x575d58 of _0x4b6263['matchAll'](/[#$]\{\s*([A-Za-z_][\w.]*)\s*(?=[,}])/g)){if(_0x575d58[0x1])_0x6f817c['add'](_0x575d58[0x1]);}return Array['from'](_0x6f817c);}export function validateSql(_0x3dd83a){const _0x4dc235=a245_0x51db92,_0x328fe6=normalizeSqlForStaticAnalysis(_0x3dd83a),_0x30ec44=detectNormalizedSqlType(_0x328fe6),_0x4bc13b=stripStaticAnalysisMarkers(_0x328fe6[_0x4dc235(0x1ac)]),_0x4a77d6=_0x328fe6[_0x4dc235(0x185)]?[]:extractTables(_0x4bc13b),_0x2c9a8e=_0x328fe6[_0x4dc235(0x185)]?[]:extractParameters(_0x4bc13b);if(_0x30ec44[_0x4dc235(0x1a9)])return{'valid':![],'sqlType':_0x30ec44,'tables':_0x4a77d6,'parameters':_0x2c9a8e,'message':_0x30ec44[_0x4dc235(0x1da)]||_0x30ec44[_0x4dc235(0x1c3)]+_0x4dc235(0x19b)};if(_0x30ec44[_0x4dc235(0x1c3)]===_0x4dc235(0x1df))return{'valid':![],'sqlType':_0x30ec44,'tables':_0x4a77d6,'parameters':_0x2c9a8e,'message':_0x328fe6['error']?_0x4dc235(0x1dd)+_0x328fe6['error']:_0x4dc235(0x18d)};return{'valid':!![],'sqlType':_0x30ec44,'tables':_0x4a77d6,'parameters':_0x2c9a8e,'message':_0x30ec44[_0x4dc235(0x1c3)]+_0x4dc235(0x187)+(_0x4a77d6[_0x4dc235(0x1a4)]?_0x4a77d6[_0x4dc235(0x181)](',\x20'):_0x4dc235(0x1af))+(_0x2c9a8e[_0x4dc235(0x1a4)]?'\x20with\x20parameters:\x20'+_0x2c9a8e['join'](',\x20'):'')};}
1
+ const a238_0x5ef39d=a238_0x3fe4;(function(_0x1c1d96,_0x3e9c5a){const _0x2ec155=a238_0x3fe4,_0x3bec70=_0x1c1d96();while(!![]){try{const _0x23ef5c=-parseInt(_0x2ec155(0x1c6))/0x1*(-parseInt(_0x2ec155(0x1aa))/0x2)+parseInt(_0x2ec155(0x1b1))/0x3+-parseInt(_0x2ec155(0x18d))/0x4*(parseInt(_0x2ec155(0x196))/0x5)+-parseInt(_0x2ec155(0x1a8))/0x6+parseInt(_0x2ec155(0x1a7))/0x7*(-parseInt(_0x2ec155(0x183))/0x8)+parseInt(_0x2ec155(0x191))/0x9+parseInt(_0x2ec155(0x182))/0xa;if(_0x23ef5c===_0x3e9c5a)break;else _0x3bec70['push'](_0x3bec70['shift']());}catch(_0x539a03){_0x3bec70['push'](_0x3bec70['shift']());}}}(a238_0x35f1,0x8a722));const MYBATIS_OUTER_TAGS=new Map([[a238_0x5ef39d(0x1c5),a238_0x5ef39d(0x16b)],[a238_0x5ef39d(0x1ad),a238_0x5ef39d(0x1c1)],[a238_0x5ef39d(0x1b0),a238_0x5ef39d(0x1bd)],[a238_0x5ef39d(0x18a),a238_0x5ef39d(0x177)]]),MYBATIS_DYNAMIC_TAGS=new Set(['if',a238_0x5ef39d(0x16f),a238_0x5ef39d(0x16e),'choose','when',a238_0x5ef39d(0x169),'trim',a238_0x5ef39d(0x168),a238_0x5ef39d(0x188),a238_0x5ef39d(0x1a9),a238_0x5ef39d(0x19d)]),MYBATIS_BRANCH_TAGS=new Set(['if','foreach',a238_0x5ef39d(0x199),a238_0x5ef39d(0x192),'otherwise']);export const MYBATIS_DYNAMIC_START_MARKER=a238_0x5ef39d(0x176);export const MYBATIS_DYNAMIC_END_MARKER=a238_0x5ef39d(0x195);function a238_0x35f1(){const _0x33ac03=['Mismatched\x20MyBatis\x20XML\x20closing\x20tag:\x20</','statementType','INSERT','rawName','__RABETBASE_UNRESOLVED_SQL_FRAGMENT__','MyBatis\x20dynamic\x20tag\x20names\x20must\x20be\x20lowercase:\x20<','select','31ZZFpWR','set','otherwise','__RABETBASE_MYBATIS_INCLUDE_UNRESOLVED__','SELECT','Unterminated\x20XML\x20declaration.','Invalid\x20MyBatis\x20XML\x20tag.','foreach','where','startsWith','type','matchAll','error','tagName','from','__RABETBASE_MYBATIS_DYNAMIC_START__','DELETE','UNKNOWN','XML\x20declarations\x20must\x20precede\x20the\x20MyBatis\x20statement\x20wrapper.','&quot;','SQL\x20contains\x20blocked\x20DELETE\x20or\x20DDL\x20statements','push','DDL','<![CDATA[','get','slice','SQL\x20contains\x20modification\x20statements\x20alongside\x20SELECT','17524540FggTWR','8770544TstFrU','WITH','&amp;','unknown\x20table(s)','Invalid\x20MyBatis\x20XML\x20closing\x20tag:\x20</','bind','has','delete','Invalid\x20XML\x20entity\x20reference.','MyBatis\x20XML\x20must\x20contain\x20exactly\x20one\x20complete\x20statement\x20wrapper.','30252mnozPi','replaceAll','test','Unable\x20to\x20detect\x20SQL\x20type.\x20Please\x20check\x20the\x20SQL\x20content.','6504903nPhTjV','when','-->','&lt;','__RABETBASE_MYBATIS_DYNAMIC_END__','430cFtlNg',']]>','DDL\x20statements\x20are\x20blocked\x20from\x20auto-save','choose','add','trim','indexOf','property','&gt;','keys','&apos;','Invalid\x20attributes\x20on\x20MyBatis\x20XML\x20tag:\x20<','outer','mybatisXml','Unsupported\x20MyBatis\x20XML\x20tag:\x20<','<!--','\x20with\x20parameters:\x20','7kyMsrw','5182482WQHaZQ','include','31264YRwYVo','exec','SQL\x20text\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.','insert','\x20WHERE\x20',')\x5cb','update','653232jAcLFi','fromCodePoint','join','\x20query\x20targeting\x20','toUpperCase','sql','MyBatis\x20dynamic\x20tag\x20must\x20be\x20inside\x20the\x20statement\x20wrapper:\x20<','replace','split','match','Unclosed\x20MyBatis\x20XML\x20tag:\x20<','length','UPDATE','toLowerCase'];a238_0x35f1=function(){return _0x33ac03;};return a238_0x35f1();}export const MYBATIS_INCLUDE_MARKER=a238_0x5ef39d(0x16a);const UNRESOLVED_SQL_FRAGMENT=a238_0x5ef39d(0x1c3),MYBATIS_OUTER_TAG_PATTERN=new RegExp('^<\x5cs*(?:'+[...MYBATIS_OUTER_TAGS[a238_0x5ef39d(0x19f)]()][a238_0x5ef39d(0x1b3)]('|')+a238_0x5ef39d(0x1af),'i');export function normalizeSqlForStaticAnalysis(_0x55dcab){const _0x380762=a238_0x5ef39d,_0x260222=typeof _0x55dcab==='string'?_0x55dcab:'';if(!startsWithMybatisStatementWrapper(_0x260222))return{'sql':_0x260222,'mode':_0x380762(0x1b6)};let _0x54b902=0x0,_0x560611='',_0x3d657f,_0x11ba2c=![],_0x3bcc03=![];const _0x253b2d=[];while(_0x54b902<_0x260222[_0x380762(0x1bc)]){if(_0x260222[_0x380762(0x170)](_0x380762(0x1a5),_0x54b902)){const _0x1ce886=_0x260222[_0x380762(0x19c)](_0x380762(0x193),_0x54b902+0x4);if(_0x1ce886<0x0)return invalidMybatisSource('Unterminated\x20XML\x20comment.');_0x560611+='\x20',_0x54b902=_0x1ce886+0x3;continue;}if(_0x260222[_0x380762(0x170)](_0x380762(0x17e),_0x54b902)){if(!_0x11ba2c||_0x3bcc03)return invalidMybatisSource('CDATA\x20sections\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.');const _0x407d6c=_0x260222['indexOf'](_0x380762(0x197),_0x54b902+0x9);if(_0x407d6c<0x0)return invalidMybatisSource('Unterminated\x20CDATA\x20section.');_0x560611+=_0x260222[_0x380762(0x180)](_0x54b902+0x9,_0x407d6c),_0x54b902=_0x407d6c+0x3;continue;}if(_0x260222[_0x380762(0x170)]('<?',_0x54b902)){if(_0x11ba2c)return invalidMybatisSource(_0x380762(0x179));const _0x12f92f=_0x260222[_0x380762(0x19c)]('?>',_0x54b902+0x2);if(_0x12f92f<0x0)return invalidMybatisSource(_0x380762(0x16c));_0x560611+='\x20',_0x54b902=_0x12f92f+0x2;continue;}if(_0x260222[_0x54b902]!=='<'){const _0x3d148d=_0x260222['indexOf']('<',_0x54b902),_0x3f73e7=_0x3d148d<0x0?_0x260222[_0x380762(0x1bc)]:_0x3d148d,_0x1e9817=_0x260222[_0x380762(0x180)](_0x54b902,_0x3f73e7);if((!_0x11ba2c||_0x3bcc03)&&_0x1e9817[_0x380762(0x19b)]())return invalidMybatisSource(_0x380762(0x1ac));if(_0x11ba2c&&!_0x3bcc03){const _0x2dfb9e=decodeXmlEntities(_0x1e9817);if(_0x2dfb9e===null)return invalidMybatisSource(_0x380762(0x18b));_0x560611+=_0x2dfb9e;}else _0x560611+='\x20';_0x54b902=_0x3f73e7;continue;}const _0x179b05=findXmlTagEnd(_0x260222,_0x54b902);if(_0x179b05<0x0)return invalidMybatisSource('Unterminated\x20MyBatis\x20XML\x20tag.');const _0x1ad399=_0x260222[_0x380762(0x180)](_0x54b902,_0x179b05+0x1),_0x829b85=/^<\s*(\/?)\s*([A-Za-z][\w:-]*)([\s\S]*?)(\/?)\s*>$/['exec'](_0x1ad399);if(!_0x829b85)return invalidMybatisSource(_0x380762(0x16d));const _0x17a8dd=_0x829b85[0x1]==='/',_0x47ec6f=_0x829b85[0x2]??'',_0x575e30=_0x47ec6f[_0x380762(0x1be)](),_0x1b7305=_0x829b85[0x3]??'',_0x233885=_0x829b85[0x4]==='/',_0x5b304a=MYBATIS_OUTER_TAGS[_0x380762(0x17f)](_0x575e30);if(!_0x5b304a&&!MYBATIS_DYNAMIC_TAGS[_0x380762(0x189)](_0x575e30))return invalidMybatisSource(_0x380762(0x1a4)+_0x575e30+'>.');if(!_0x5b304a&&_0x47ec6f!==_0x575e30)return invalidMybatisSource(_0x380762(0x1c4)+_0x47ec6f+'>.');if(_0x17a8dd){if(_0x1b7305[_0x380762(0x19b)]()||_0x233885)return invalidMybatisSource(_0x380762(0x187)+_0x47ec6f+'>.');const _0x3c024e=_0x253b2d['at'](-0x1);if(!_0x3c024e||(_0x3c024e[_0x380762(0x1a2)]?_0x3c024e[_0x380762(0x174)]!==_0x575e30:_0x3c024e[_0x380762(0x1c2)]!==_0x47ec6f))return invalidMybatisSource(_0x380762(0x1bf)+_0x47ec6f+'>.');_0x253b2d['pop']();if(_0x3c024e[_0x380762(0x1a2)])_0x3bcc03=!![];_0x560611+=MYBATIS_BRANCH_TAGS[_0x380762(0x189)](_0x575e30)?'\x20'+MYBATIS_DYNAMIC_END_MARKER+'\x20':'\x20';}else{if(!hasWellFormedXmlAttributes(_0x1b7305))return invalidMybatisSource(_0x380762(0x1a1)+_0x47ec6f+'>.');if(_0x575e30===_0x380762(0x19d)&&(!_0x233885||_0x253b2d['at'](-0x1)?.['tagName']!==_0x380762(0x1a9)))return invalidMybatisSource('MyBatis\x20<property>\x20must\x20be\x20a\x20self-closing\x20direct\x20child\x20of\x20<include>.');if(_0x5b304a){if(_0x11ba2c||_0x253b2d[_0x380762(0x1bc)]>0x0)return invalidMybatisSource('Multiple\x20MyBatis\x20statement\x20wrappers\x20are\x20not\x20supported.');_0x11ba2c=!![],_0x3bcc03=_0x233885,_0x3d657f=_0x5b304a;}else{if(!_0x11ba2c||_0x3bcc03)return invalidMybatisSource(_0x380762(0x1b7)+_0x47ec6f+'>.');}_0x560611+=_0x575e30==='where'?_0x380762(0x1ae):_0x575e30===_0x380762(0x168)?'\x20SET\x20':_0x575e30===_0x380762(0x1a9)?'\x20'+MYBATIS_INCLUDE_MARKER+'\x20':MYBATIS_BRANCH_TAGS[_0x380762(0x189)](_0x575e30)&&!_0x233885?'\x20'+MYBATIS_DYNAMIC_START_MARKER+'\x20':'\x20',!_0x233885&&_0x253b2d['push']({'rawName':_0x47ec6f,'tagName':_0x575e30,'outer':!!_0x5b304a});}_0x54b902=_0x179b05+0x1;}if(_0x253b2d['length']>0x0)return invalidMybatisSource(_0x380762(0x1bb)+_0x253b2d['at'](-0x1)?.[_0x380762(0x1c2)]+'>.');if(!_0x11ba2c||!_0x3bcc03)return invalidMybatisSource(_0x380762(0x18c));return{'sql':_0x560611['trim'](),'mode':_0x380762(0x1a3),..._0x3d657f?{'statementType':_0x3d657f}:{}};}function hasWellFormedXmlAttributes(_0x2e52b9){const _0x830a64=a238_0x5ef39d;let _0x263119=0x0;const _0xa37c00=new Set();while(_0x263119<_0x2e52b9['length']){while(_0x263119<_0x2e52b9['length']&&/\s/[_0x830a64(0x18f)](_0x2e52b9[_0x263119]??''))_0x263119+=0x1;if(_0x263119>=_0x2e52b9['length'])return!![];const _0x29747b=/^[A-Za-z_:][\w:.-]*/[_0x830a64(0x1ab)](_0x2e52b9[_0x830a64(0x180)](_0x263119)),_0x8a0cac=_0x29747b?.[0x0];if(!_0x8a0cac||_0xa37c00[_0x830a64(0x189)](_0x8a0cac))return![];_0xa37c00['add'](_0x8a0cac),_0x263119+=_0x8a0cac['length'];while(_0x263119<_0x2e52b9['length']&&/\s/['test'](_0x2e52b9[_0x263119]??''))_0x263119+=0x1;if(_0x2e52b9[_0x263119]!=='=')return![];_0x263119+=0x1;while(_0x263119<_0x2e52b9[_0x830a64(0x1bc)]&&/\s/[_0x830a64(0x18f)](_0x2e52b9[_0x263119]??''))_0x263119+=0x1;const _0x883f79=_0x2e52b9[_0x263119];if(_0x883f79!=='\x22'&&_0x883f79!=='\x27')return![];_0x263119+=0x1;const _0x8a560d=_0x2e52b9[_0x830a64(0x19c)](_0x883f79,_0x263119);if(_0x8a560d<0x0)return![];if(decodeXmlEntities(_0x2e52b9['slice'](_0x263119,_0x8a560d))===null)return![];_0x263119=_0x8a560d+0x1;}return!![];}function startsWithMybatisStatementWrapper(_0x555e6d){const _0x351347=a238_0x5ef39d;let _0x1d7ad1=0x0;const _0x1904f7=()=>{const _0x1c9fb5=a238_0x3fe4;while(_0x1d7ad1<_0x555e6d[_0x1c9fb5(0x1bc)]&&/\s/[_0x1c9fb5(0x18f)](_0x555e6d[_0x1d7ad1]??''))_0x1d7ad1+=0x1;};_0x1904f7();while(_0x1d7ad1<_0x555e6d['length']){if(_0x555e6d['startsWith'](_0x351347(0x1a5),_0x1d7ad1)){const _0xf17c46=_0x555e6d[_0x351347(0x19c)](_0x351347(0x193),_0x1d7ad1+0x4);if(_0xf17c46<0x0)return!![];_0x1d7ad1=_0xf17c46+0x3,_0x1904f7();continue;}if(_0x555e6d[_0x351347(0x170)]('<?',_0x1d7ad1)){const _0x32565d=_0x555e6d['indexOf']('?>',_0x1d7ad1+0x2);if(_0x32565d<0x0)return!![];_0x1d7ad1=_0x32565d+0x2,_0x1904f7();continue;}break;}return MYBATIS_OUTER_TAG_PATTERN[_0x351347(0x18f)](_0x555e6d['slice'](_0x1d7ad1));}function invalidMybatisSource(_0x2eb720){const _0xb9a0c8=a238_0x5ef39d;return{'sql':'','mode':_0xb9a0c8(0x1a3),'error':_0x2eb720};}function findXmlTagEnd(_0x52c284,_0x5db3e4){const _0xfef338=a238_0x5ef39d;let _0x2e06d1;for(let _0x39d7a7=_0x5db3e4+0x1;_0x39d7a7<_0x52c284[_0xfef338(0x1bc)];_0x39d7a7+=0x1){const _0x386db7=_0x52c284[_0x39d7a7];if(_0x2e06d1){if(_0x386db7===_0x2e06d1)_0x2e06d1=undefined;continue;}if(_0x386db7==='\x22'||_0x386db7==='\x27'){_0x2e06d1=_0x386db7;continue;}if(_0x386db7==='>')return _0x39d7a7;}return-0x1;}function decodeXmlEntities(_0x170104){const _0x43834f=a238_0x5ef39d;let _0x511f06=![];const _0x1d48f1=_0x170104[_0x43834f(0x1b8)](/&(?:#x[0-9a-f]+;|#[0-9]+;|[A-Za-z_:][\w:.-]*;)?/g,_0x225584=>{const _0x56d253=_0x43834f;if(_0x225584===_0x56d253(0x194))return'<';if(_0x225584===_0x56d253(0x19e))return'>';if(_0x225584===_0x56d253(0x17a))return'\x22';if(_0x225584===_0x56d253(0x1a0))return'\x27';if(_0x225584===_0x56d253(0x185))return'&';const _0x22e2c8=/^&#(?:x([0-9a-f]+)|([0-9]+));$/[_0x56d253(0x1ab)](_0x225584);if(_0x22e2c8){const _0x4802c7=_0x22e2c8[0x1],_0x5a88a0=_0x22e2c8[0x2],_0x5c54ad=Number['parseInt'](_0x4802c7??_0x5a88a0??'',_0x4802c7?0x10:0xa);if(isValidXmlCharacter(_0x5c54ad))return String[_0x56d253(0x1b2)](_0x5c54ad);}return _0x511f06=!![],'';});return _0x511f06?null:_0x1d48f1;}function isValidXmlCharacter(_0x16dfc3){return _0x16dfc3===0x9||_0x16dfc3===0xa||_0x16dfc3===0xd||_0x16dfc3>=0x20&&_0x16dfc3<=0xd7ff||_0x16dfc3>=0xe000&&_0x16dfc3<=0xfffd||_0x16dfc3>=0x10000&&_0x16dfc3<=0x10ffff;}export function detectSqlType(_0x1a9d43){return detectNormalizedSqlType(normalizeSqlForStaticAnalysis(_0x1a9d43));}function detectNormalizedSqlType(_0x18cb25){const _0x39ef98=a238_0x5ef39d;if(_0x18cb25[_0x39ef98(0x173)])return{'type':'UNKNOWN','isSelectOnly':![],'isDangerous':![],'reason':_0x18cb25['error']};if(!_0x18cb25[_0x39ef98(0x1b6)][_0x39ef98(0x19b)]())return{'type':_0x39ef98(0x178),'isSelectOnly':![],'isDangerous':![],'reason':'SQL\x20content\x20is\x20empty'};const _0x3283c6=stripStaticAnalysisMarkers(_0x18cb25[_0x39ef98(0x1b6)])[_0x39ef98(0x1b8)](/#\{[^}]*\}/g,'?')[_0x39ef98(0x1b8)](/\$\{[^}]*\}/g,'?')[_0x39ef98(0x1b8)](/@[^(\s]+(\([^)]*\))?/g,'')['replace'](/\/\*[\s\S]*?\*\//g,'')[_0x39ef98(0x19b)](),_0xf73bbc=_0x3283c6[_0x39ef98(0x1b9)]('\x0a');let _0x16c888='';for(const _0x585de7 of _0xf73bbc){const _0x4c5325=_0x585de7['trim']();if(!_0x4c5325||_0x4c5325['startsWith']('--')||_0x4c5325[_0x39ef98(0x170)]('/*'))continue;_0x16c888=_0x4c5325;break;}const _0xb3ee04=_0x16c888[_0x39ef98(0x1b5)](),_0x4b826b=_0x18cb25[_0x39ef98(0x1c0)],_0xf43f6b=maskSqlTextForBlockedKeywordScan(_0x3283c6),_0x3e46c3=/\b(DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x39ef98(0x18f)](_0xf43f6b);if(_0x4b826b==='SELECT'||!_0x4b826b&&(_0xb3ee04[_0x39ef98(0x170)]('SELECT')||_0xb3ee04[_0x39ef98(0x170)](_0x39ef98(0x184)))){const _0x233179=/\b(INSERT|UPDATE|DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x39ef98(0x18f)](_0x3283c6);return{'type':_0x39ef98(0x16b),'isSelectOnly':!_0x233179,'isDangerous':_0x233179,'reason':_0x233179?_0x39ef98(0x181):undefined};}if(_0x4b826b==='INSERT'||!_0x4b826b&&_0xb3ee04[_0x39ef98(0x170)](_0x39ef98(0x1c1)))return{'type':_0x39ef98(0x1c1),'isSelectOnly':![],'isDangerous':_0x3e46c3,'reason':_0x3e46c3?'SQL\x20contains\x20blocked\x20DELETE\x20or\x20DDL\x20statements':undefined};if(_0x4b826b===_0x39ef98(0x1bd)||!_0x4b826b&&_0xb3ee04[_0x39ef98(0x170)](_0x39ef98(0x1bd)))return{'type':_0x39ef98(0x1bd),'isSelectOnly':![],'isDangerous':_0x3e46c3,'reason':_0x3e46c3?_0x39ef98(0x17b):undefined};if(_0x4b826b===_0x39ef98(0x177)||!_0x4b826b&&_0xb3ee04['startsWith'](_0x39ef98(0x177)))return{'type':_0x39ef98(0x177),'isSelectOnly':![],'isDangerous':!![],'reason':'DELETE\x20statements\x20are\x20blocked\x20from\x20auto-save'};if(/^(CREATE|ALTER|DROP|TRUNCATE)/i['test'](_0xb3ee04))return{'type':_0x39ef98(0x17d),'isSelectOnly':![],'isDangerous':!![],'reason':_0x39ef98(0x198)};return{'type':_0x39ef98(0x178),'isSelectOnly':![],'isDangerous':![]};}function stripStaticAnalysisMarkers(_0x130482){const _0x2bd3f6=a238_0x5ef39d;return _0x130482[_0x2bd3f6(0x18e)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x2bd3f6(0x18e)](MYBATIS_DYNAMIC_END_MARKER,'\x20')['replaceAll'](MYBATIS_INCLUDE_MARKER,'\x20'+UNRESOLVED_SQL_FRAGMENT+'\x20');}function maskSqlTextForBlockedKeywordScan(_0x265a6a){const _0xa97d9e=a238_0x5ef39d;return _0x265a6a[_0xa97d9e(0x1b8)](/'(?:''|\\.|[^'])*'/g,'\x20')['replace'](/"(?:""|\\.|[^"])*"/g,'\x20')[_0xa97d9e(0x1b8)](/`(?:``|\\.|[^`])*`/g,'\x20')[_0xa97d9e(0x1b8)](/--.*$/gm,'\x20')['replace'](/#.*$/gm,'\x20')[_0xa97d9e(0x1b8)](/\/\*[\s\S]*?\*\//g,'\x20');}function extractTables(_0xa46620){const _0x3d455e=a238_0x5ef39d,_0x5a69f8=_0xa46620['replace'](/#\{[^}]*\}/g,'?')[_0x3d455e(0x1b8)](/\$\{[^}]*\}/g,'?')[_0x3d455e(0x1b8)](/'[^']*'/g,'\x27\x27')[_0x3d455e(0x1b8)](/--.*$/gm,'')[_0x3d455e(0x1b8)](/\/\*[\s\S]*?\*\//g,''),_0x142923=[],_0x232313=_0x5a69f8[_0x3d455e(0x1ba)](/FROM\s+([^\s,)(]+)/i);addTable(_0x142923,_0x232313?.[0x1]);for(const _0x249379 of _0x5a69f8[_0x3d455e(0x172)](/(?:INNER|LEFT|RIGHT|FULL|CROSS)?\s*JOIN\s+([^\s,)(]+)/gi)){addTable(_0x142923,_0x249379[0x1]);}const _0x383282=_0x5a69f8[_0x3d455e(0x1ba)](/INTO\s+([^\s(]+)/i);addTable(_0x142923,_0x383282?.[0x1]);const _0x4e7636=_0x5a69f8['match'](/UPDATE\s+([^\s,)(]+)/i);return addTable(_0x142923,_0x4e7636?.[0x1]),_0x142923;}function a238_0x3fe4(_0x68081e,_0x3becce){_0x68081e=_0x68081e-0x168;const _0x35f180=a238_0x35f1();let _0x3fe4cd=_0x35f180[_0x68081e];return _0x3fe4cd;}function addTable(_0x1400f1,_0x294ca0){const _0x3898ec=a238_0x5ef39d,_0x31290d=_0x294ca0?.[_0x3898ec(0x1b8)](/[`"]/g,'');_0x31290d&&_0x31290d!==UNRESOLVED_SQL_FRAGMENT&&!_0x1400f1['includes'](_0x31290d)&&_0x1400f1[_0x3898ec(0x17c)](_0x31290d);}function extractParameters(_0x3f98a1){const _0x4becbd=a238_0x5ef39d,_0x35756e=new Set();for(const _0x3976ae of _0x3f98a1[_0x4becbd(0x172)](/[#$]\{\s*([A-Za-z_][\w.]*)\s*(?=[,}])/g)){if(_0x3976ae[0x1])_0x35756e[_0x4becbd(0x19a)](_0x3976ae[0x1]);}return Array[_0x4becbd(0x175)](_0x35756e);}export function validateSql(_0x2c1c77){const _0x1fc96a=a238_0x5ef39d,_0x23c505=normalizeSqlForStaticAnalysis(_0x2c1c77),_0x43508f=detectNormalizedSqlType(_0x23c505),_0x5d144c=stripStaticAnalysisMarkers(_0x23c505['sql']),_0x14d925=_0x23c505[_0x1fc96a(0x173)]?[]:extractTables(_0x5d144c),_0x503feb=_0x23c505[_0x1fc96a(0x173)]?[]:extractParameters(_0x5d144c);if(_0x43508f['isDangerous'])return{'valid':![],'sqlType':_0x43508f,'tables':_0x14d925,'parameters':_0x503feb,'message':_0x43508f['reason']||_0x43508f[_0x1fc96a(0x171)]+'\x20statements\x20cannot\x20be\x20auto-saved.\x20Please\x20operate\x20manually\x20on\x20the\x20platform.'};if(_0x43508f[_0x1fc96a(0x171)]==='UNKNOWN')return{'valid':![],'sqlType':_0x43508f,'tables':_0x14d925,'parameters':_0x503feb,'message':_0x23c505[_0x1fc96a(0x173)]?'Unable\x20to\x20detect\x20SQL\x20type.\x20'+_0x23c505[_0x1fc96a(0x173)]:_0x1fc96a(0x190)};return{'valid':!![],'sqlType':_0x43508f,'tables':_0x14d925,'parameters':_0x503feb,'message':_0x43508f['type']+_0x1fc96a(0x1b4)+(_0x14d925[_0x1fc96a(0x1bc)]?_0x14d925[_0x1fc96a(0x1b3)](',\x20'):_0x1fc96a(0x186))+(_0x503feb[_0x1fc96a(0x1bc)]?_0x1fc96a(0x1a6)+_0x503feb[_0x1fc96a(0x1b3)](',\x20'):'')};}
package/lib/errors.js CHANGED
@@ -1 +1 @@
1
- const a246_0x495a24=a246_0x1c0d;function a246_0x5b9f(){const _0x1fe090=['2947HfcWDU','479275NgGEPX','Run\x20this\x20command\x20inside\x20a\x20project\x20with\x20.rabetbase.json\x20file.','\x20init\x20--appcode\x20<code>\x20--global`\x20registers\x20globally\x20so\x20you\x20can\x20use\x20it\x20from\x20anywhere.','1115290NdgVYI','\x0a\x20\x20\x20\x20\x20\x20\x20','4snGIuk','759KayKrJ','104xiHxWO','453708GIRcsy','Set\x20appcode\x20via\x20`','2779509SfUEHw','Run\x20`','Tip:\x20`','84570tBxrOI','\x20init\x20--appcode\x20<code>`\x20or\x20pass\x20--appcode.','504rAbCFd','99268jgwfZx'];a246_0x5b9f=function(){return _0x1fe090;};return a246_0x5b9f();}function a246_0x1c0d(_0x1ea6cd,_0x1db384){_0x1ea6cd=_0x1ea6cd-0x12a;const _0x5b9fed=a246_0x5b9f();let _0x1c0d09=_0x5b9fed[_0x1ea6cd];return _0x1c0d09;}(function(_0x4f85e0,_0x250f4c){const _0x46d8ff=a246_0x1c0d,_0x3fca94=_0x4f85e0();while(!![]){try{const _0x446c75=parseInt(_0x46d8ff(0x135))/0x1+parseInt(_0x46d8ff(0x133))/0x2+-parseInt(_0x46d8ff(0x12d))/0x3*(-parseInt(_0x46d8ff(0x13a))/0x4)+parseInt(_0x46d8ff(0x138))/0x5+parseInt(_0x46d8ff(0x132))/0x6*(parseInt(_0x46d8ff(0x134))/0x7)+parseInt(_0x46d8ff(0x12a))/0x8*(-parseInt(_0x46d8ff(0x12b))/0x9)+-parseInt(_0x46d8ff(0x130))/0xa*(parseInt(_0x46d8ff(0x13b))/0xb);if(_0x446c75===_0x250f4c)break;else _0x3fca94['push'](_0x3fca94['shift']());}catch(_0x423761){_0x3fca94['push'](_0x3fca94['shift']());}}}(a246_0x5b9f,0x73f41));import{CliError,createCliErrors}from'@lovrabet/cli-framework';import{CLI_BIN_NAME}from'./constant/cli.js';export{CliError};export const CliErrors=createCliErrors({'cliBinName':CLI_BIN_NAME,'authRequiredHint':a246_0x495a24(0x12e)+CLI_BIN_NAME+'\x20auth`\x20to\x20login\x20first.','configMissingHint':[a246_0x495a24(0x12c)+CLI_BIN_NAME+a246_0x495a24(0x131),a246_0x495a24(0x12f)+CLI_BIN_NAME+a246_0x495a24(0x137)]['join'](a246_0x495a24(0x139)),'notInProjectHint':a246_0x495a24(0x136)});
1
+ const a239_0x109874=a239_0x5ae8;(function(_0x383a2c,_0x389764){const _0x5bc20d=a239_0x5ae8,_0x53a5c8=_0x383a2c();while(!![]){try{const _0x1f6250=parseInt(_0x5bc20d(0x11f))/0x1*(parseInt(_0x5bc20d(0x126))/0x2)+-parseInt(_0x5bc20d(0x120))/0x3+parseInt(_0x5bc20d(0x124))/0x4+-parseInt(_0x5bc20d(0x127))/0x5*(parseInt(_0x5bc20d(0x125))/0x6)+-parseInt(_0x5bc20d(0x123))/0x7+parseInt(_0x5bc20d(0x128))/0x8+-parseInt(_0x5bc20d(0x129))/0x9;if(_0x1f6250===_0x389764)break;else _0x53a5c8['push'](_0x53a5c8['shift']());}catch(_0x135c05){_0x53a5c8['push'](_0x53a5c8['shift']());}}}(a239_0x3553,0x4e183));import{CliError,createCliErrors}from'@lovrabet/cli-framework';function a239_0x5ae8(_0x5d52b6,_0x51c06e){_0x5d52b6=_0x5d52b6-0x11c;const _0x3553ba=a239_0x3553();let _0x5ae824=_0x3553ba[_0x5d52b6];return _0x5ae824;}import{CLI_BIN_NAME}from'./constant/cli.js';function a239_0x3553(){const _0x3e39ae=['\x20init\x20--appcode\x20<code>`\x20or\x20pass\x20--appcode.','Run\x20`','Tip:\x20`','join','11bkMQey','1279131xGEzmH','Run\x20this\x20command\x20inside\x20a\x20project\x20with\x20.rabetbase.json\x20file.','\x20init\x20--appcode\x20<code>\x20--global`\x20registers\x20globally\x20so\x20you\x20can\x20use\x20it\x20from\x20anywhere.','666288AORAiy','1463164CGsssB','45282MmcLKR','51026rqUbSR','70MLoZlm','4154328eqrJJY','1967679IeDQKF','Set\x20appcode\x20via\x20`'];a239_0x3553=function(){return _0x3e39ae;};return a239_0x3553();}export{CliError};export const CliErrors=createCliErrors({'cliBinName':CLI_BIN_NAME,'authRequiredHint':a239_0x109874(0x11c)+CLI_BIN_NAME+'\x20auth`\x20to\x20login\x20first.','configMissingHint':[a239_0x109874(0x12a)+CLI_BIN_NAME+a239_0x109874(0x12b),a239_0x109874(0x11d)+CLI_BIN_NAME+a239_0x109874(0x122)][a239_0x109874(0x11e)]('\x0a\x20\x20\x20\x20\x20\x20\x20'),'notInProjectHint':a239_0x109874(0x121)});
@@ -1 +1 @@
1
- (function(_0x59db0c,_0x1d4cfb){const _0xe32dc3=a247_0x2a62,_0x43bf83=_0x59db0c();while(!![]){try{const _0x5a545e=-parseInt(_0xe32dc3(0xe0))/0x1*(-parseInt(_0xe32dc3(0xe8))/0x2)+parseInt(_0xe32dc3(0xe9))/0x3+-parseInt(_0xe32dc3(0xe2))/0x4*(-parseInt(_0xe32dc3(0xe6))/0x5)+-parseInt(_0xe32dc3(0xdf))/0x6+-parseInt(_0xe32dc3(0xe3))/0x7*(parseInt(_0xe32dc3(0xe4))/0x8)+-parseInt(_0xe32dc3(0xea))/0x9*(-parseInt(_0xe32dc3(0xe7))/0xa)+-parseInt(_0xe32dc3(0xe5))/0xb*(parseInt(_0xe32dc3(0xe1))/0xc);if(_0x5a545e===_0x1d4cfb)break;else _0x43bf83['push'](_0x43bf83['shift']());}catch(_0x3c3ed0){_0x43bf83['push'](_0x43bf83['shift']());}}}(a247_0x5412,0x77092));import{DEFAULT_COMMAND_OUTPUT_FORMAT}from'../constant/defaults.js';import{buildAllFlags as a247_0x23e52d}from'@lovrabet/cli-framework';import{EXPLICIT_YES_FLAG_DESCRIPTION,requiresExplicitYes}from'../framework/explicit-yes.js';function a247_0x2a62(_0x34e56a,_0x29a5e8){_0x34e56a=_0x34e56a-0xdf;const _0x541222=a247_0x5412();let _0x2a621e=_0x541222[_0x34e56a];return _0x2a621e;}function a247_0x5412(){const _0x44be0a=['363625QlzvWP','21570SMKScl','418972KXGohj','2067843awyHJL','2142cMmAXc','name','3914406EzbHIm','2dFSwLo','4783032QodEow','44TRQhEi','7EMeTCi','686920QdtCVv','33lYFWoV'];a247_0x5412=function(){return _0x44be0a;};return a247_0x5412();}export function buildAllFlags(_0x1c97cd){const _0x415a85=a247_0x2a62,_0x36873f=a247_0x23e52d(_0x1c97cd,{'defaultOutputFormat':DEFAULT_COMMAND_OUTPUT_FORMAT});if(!requiresExplicitYes(_0x1c97cd))return _0x36873f;return _0x36873f['map'](_0x5bcee6=>_0x5bcee6[_0x415a85(0xeb)]==='yes'?{..._0x5bcee6,'description':EXPLICIT_YES_FLAG_DESCRIPTION}:_0x5bcee6);}
1
+ (function(_0x1c0617,_0x502561){const _0x2b99ad=a240_0x548f,_0x178e4b=_0x1c0617();while(!![]){try{const _0x3d4fca=-parseInt(_0x2b99ad(0x10b))/0x1*(parseInt(_0x2b99ad(0x103))/0x2)+-parseInt(_0x2b99ad(0x108))/0x3*(parseInt(_0x2b99ad(0x109))/0x4)+parseInt(_0x2b99ad(0x102))/0x5+-parseInt(_0x2b99ad(0x104))/0x6*(-parseInt(_0x2b99ad(0x101))/0x7)+-parseInt(_0x2b99ad(0x10a))/0x8*(parseInt(_0x2b99ad(0x10c))/0x9)+-parseInt(_0x2b99ad(0x107))/0xa+parseInt(_0x2b99ad(0x100))/0xb*(parseInt(_0x2b99ad(0x105))/0xc);if(_0x3d4fca===_0x502561)break;else _0x178e4b['push'](_0x178e4b['shift']());}catch(_0xfa3ebd){_0x178e4b['push'](_0x178e4b['shift']());}}}(a240_0x1c94,0x78f06));import{DEFAULT_COMMAND_OUTPUT_FORMAT}from'../constant/defaults.js';import{buildAllFlags as a240_0x4204cd}from'@lovrabet/cli-framework';import{EXPLICIT_YES_FLAG_DESCRIPTION,requiresExplicitYes}from'../framework/explicit-yes.js';function a240_0x1c94(){const _0x148945=['2988wFmsXm','36eQJIzm','36YwpYsJ','map','1179280aGjrxz','24501tXwTay','44SrHVkY','24COWUGT','521bzdcwa','1284831GFIImX','yes','6103196ctYKQx','167069ZZoOSB','510360CrEeOm'];a240_0x1c94=function(){return _0x148945;};return a240_0x1c94();}function a240_0x548f(_0x393b87,_0x4b92b1){_0x393b87=_0x393b87-0xff;const _0x1c94d3=a240_0x1c94();let _0x548f84=_0x1c94d3[_0x393b87];return _0x548f84;}export function buildAllFlags(_0x41c917){const _0x31041a=a240_0x548f,_0x5e86f8=a240_0x4204cd(_0x41c917,{'defaultOutputFormat':DEFAULT_COMMAND_OUTPUT_FORMAT});if(!requiresExplicitYes(_0x41c917))return _0x5e86f8;return _0x5e86f8[_0x31041a(0x106)](_0x387cc2=>_0x387cc2['name']===_0x31041a(0xff)?{..._0x387cc2,'description':EXPLICIT_YES_FLAG_DESCRIPTION}:_0x387cc2);}