@lovrabet/rabetbase-cli 2.4.7-beta.1 → 2.4.7
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.
- package/README.md +4 -4
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.d.ts +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.d.ts +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.d.ts +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.d.ts +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.d.ts +2 -2
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/types.d.ts +1 -1
- package/lib/core/bff/utils.d.ts +2 -2
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +2 -2
- package/sidecar/flags.json +1 -1
- package/skills/rabetbase/SKILL.md +28 -28
- package/skills/rabetbase/guides/backend-function.md +30 -30
- package/skills/rabetbase/guides/best-practices.md +8 -8
- package/skills/rabetbase/guides/bff-creation-workflow.md +16 -16
- package/skills/rabetbase/guides/conflict-detection.md +3 -3
- package/skills/rabetbase/guides/custom-page-workflow.md +8 -8
- package/skills/rabetbase/guides/data-api-guidelines.md +6 -6
- package/skills/rabetbase/guides/legacy-application-blueprint-workflow.md +8 -8
- package/skills/rabetbase/guides/sql-creation-workflow.md +2 -2
- package/skills/rabetbase/guides/troubleshooting.md +6 -6
- package/skills/rabetbase/guides/typescript-sdk.md +10 -10
- package/skills/rabetbase/knowledge/page-schema/LrSmartTable.md +1 -1
- package/skills/rabetbase/knowledge/page-schema/external-resources-usage.md +10 -10
- package/skills/rabetbase/references/rabetbase-app-config.md +2 -2
- package/skills/rabetbase/references/rabetbase-bff-create.md +3 -3
- package/skills/rabetbase/references/rabetbase-bff-delete.md +1 -1
- package/skills/rabetbase/references/rabetbase-bff-detail.md +4 -4
- package/skills/rabetbase/references/rabetbase-bff-list.md +8 -8
- package/skills/rabetbase/references/rabetbase-bff-pull.md +1 -1
- package/skills/rabetbase/references/rabetbase-bff-push.md +3 -3
- package/skills/rabetbase/references/rabetbase-bff-status.md +1 -1
- package/skills/rabetbase/references/rabetbase-codegen-sql.md +3 -3
- package/skills/rabetbase/references/rabetbase-dataset-detail.md +1 -1
- package/skills/rabetbase/references/rabetbase-notification-config-list.md +3 -3
- package/skills/rabetbase.manifest.json +3 -3
- package/templates/rules/lovrabet_rules.mdc.tpl +7 -7
- package/templates/skill/SKILL.md.tpl +12 -12
package/lib/core/bff/utils.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a227_0x5e93fc=a227_0x4019;(function(_0x42b578,_0x48311a){const _0x396fe0=a227_0x4019,_0x4cb986=_0x42b578();while(!![]){try{const _0x498948=-parseInt(_0x396fe0(0x1ed))/0x1+-parseInt(_0x396fe0(0x202))/0x2+-parseInt(_0x396fe0(0x1fc))/0x3*(parseInt(_0x396fe0(0x204))/0x4)+-parseInt(_0x396fe0(0x206))/0x5+parseInt(_0x396fe0(0x1f6))/0x6*(parseInt(_0x396fe0(0x1ff))/0x7)+parseInt(_0x396fe0(0x1fd))/0x8*(-parseInt(_0x396fe0(0x1f0))/0x9)+-parseInt(_0x396fe0(0x1f8))/0xa*(-parseInt(_0x396fe0(0x205))/0xb);if(_0x498948===_0x48311a)break;else _0x4cb986['push'](_0x4cb986['shift']());}catch(_0x1392d9){_0x4cb986['push'](_0x4cb986['shift']());}}}(a227_0x5a23,0x77ec6));function a227_0x5a23(){const _0x297fd5=['TODO:\x20补充脚本功能描述','map','1853578PjpsKB','some','36BmcQxG','5327883vTbPQe','2814780yMWlXc','datasetCode','remoteId','824320NhtHhV','functionNode','values','585oBrxxF','before','replace','trim','match','toLowerCase','294nOwDFm','after','60cDnVVs','TODO:\x20add\x20script\x20description','test','operationType','170046yedfue','62184EWibdS','split','130648DMYRnJ'];a227_0x5a23=function(){return _0x297fd5;};return a227_0x5a23();}export const DEFAULT_BFF_SCRIPT_DESCRIPTION=a227_0x5e93fc(0x200);function a227_0x4019(_0x5c4c18,_0x115b42){_0x5c4c18=_0x5c4c18-0x1ed;const _0x5a231c=a227_0x5a23();let _0x4019c3=_0x5a231c[_0x5c4c18];return _0x4019c3;}const LEGACY_DEFAULT_BFF_SCRIPT_DESCRIPTION=a227_0x5e93fc(0x1f9);export function snakeToCamel(_0x2dbd76){const _0x2b8bf7=a227_0x5e93fc;return _0x2dbd76[_0x2b8bf7(0x1f5)]()['replace'](/_([a-z])/g,(_0x3ba2bd,_0x4592c0)=>_0x4592c0['toUpperCase']());}export function findHookLocationByRemoteId(_0x1b53e5,_0x234e84){const _0x128c68=a227_0x5e93fc;if(!_0x234e84)return undefined;for(const _0x3fca84 of Object[_0x128c68(0x1ef)](_0x1b53e5)){if(_0x3fca84[_0x128c68(0x208)]===_0x234e84&&_0x3fca84[_0x128c68(0x207)]&&_0x3fca84[_0x128c68(0x1fb)]&&_0x3fca84['functionNode'])return{'datasetCode':_0x3fca84[_0x128c68(0x207)],'operationType':_0x3fca84[_0x128c68(0x1fb)],'functionNode':_0x3fca84[_0x128c68(0x1ee)]};}return undefined;}export function extractScriptDescription(_0x32e6c3){const _0x38d03e=a227_0x5e93fc,_0x230a41=_0x32e6c3[_0x38d03e(0x1f4)](/^\s*\/\*\*([\s\S]*?)\*\//);if(!_0x230a41?.[0x1])return undefined;const _0x576ff2=_0x230a41[0x1],_0xcbca53=_0x5e99d5=>{const _0x3ff84b=_0x38d03e,_0x359cd2=_0x5e99d5?.[_0x3ff84b(0x1f3)]();if(!_0x359cd2||_0x359cd2===DEFAULT_BFF_SCRIPT_DESCRIPTION||_0x359cd2===LEGACY_DEFAULT_BFF_SCRIPT_DESCRIPTION)return undefined;return _0x359cd2;},_0x45f77c=_0x576ff2[_0x38d03e(0x1f4)](/^\s*\*\s*\[\s*脚本描述\s*]\s*(.+)$/m);if(_0x45f77c)return _0xcbca53(_0x45f77c[0x1]);const _0x4dc3e9=_0x576ff2[_0x38d03e(0x1fe)](/\r?\n/)[_0x38d03e(0x201)](_0x38d9bd=>_0x38d9bd[_0x38d03e(0x1f2)](/^\s*\*\s?/,'')[_0x38d03e(0x1f3)]()),_0x2b3cc4=_0x4dc3e9[_0x38d03e(0x203)](_0x179d40=>/^\[\s*脚本类型\s*]\s*\S+/[_0x38d03e(0x1fa)](_0x179d40))&&_0x4dc3e9[_0x38d03e(0x203)](_0x365d59=>/^\[\s*脚本名称\s*]\s*\S+/[_0x38d03e(0x1fa)](_0x365d59));if(!_0x2b3cc4)return undefined;for(const _0x645806 of _0x4dc3e9){if(!_0x645806||_0x645806['startsWith']('@')||/^\[[^\]]+]\s*/['test'](_0x645806))continue;return _0xcbca53(_0x645806);}return undefined;}export function isValidBffFunctionName(_0xcbb566){const _0x3fac59=a227_0x5e93fc;return/^[A-Za-z_$][A-Za-z0-9_$]*$/[_0x3fac59(0x1fa)](_0xcbb566);}export function normalizeHookFunctionNode(_0x47214c){const _0x592f9f=a227_0x5e93fc;if(!_0x47214c)return undefined;const _0x28af3c=_0x47214c[_0x592f9f(0x1f3)]()[_0x592f9f(0x1f5)]();if(_0x28af3c===_0x592f9f(0x1f1)||_0x28af3c===_0x592f9f(0x1f7))return _0x28af3c;return undefined;}
|
package/lib/core/db-resolver.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3081f8,_0xaa32e2){const _0x13e9cf=a228_0x1924,_0x51084f=_0x3081f8();while(!![]){try{const _0x29a816=-parseInt(_0x13e9cf(0x104))/0x1+parseInt(_0x13e9cf(0xf4))/0x2*(parseInt(_0x13e9cf(0x102))/0x3)+parseInt(_0x13e9cf(0xf1))/0x4*(-parseInt(_0x13e9cf(0x106))/0x5)+-parseInt(_0x13e9cf(0xec))/0x6+-parseInt(_0x13e9cf(0xed))/0x7+-parseInt(_0x13e9cf(0xee))/0x8+parseInt(_0x13e9cf(0x105))/0x9;if(_0x29a816===_0xaa32e2)break;else _0x51084f['push'](_0x51084f['shift']());}catch(_0x173904){_0x51084f['push'](_0x51084f['shift']());}}}(a228_0x5aad,0x81bdf));function a228_0x5aad(){const _0x40e1b9=['length','set','db-','find','\x22\x20under\x20app\x20\x22','entries','toLowerCase','dbId','dbName','join','No\x20database\x20matching\x20\x22','dbtableConfig','284931VuQBjy','\x22.\x20Make\x20sure\x20datasets\x20have\x20been\x20created.','646693YcAGiN','24586137NpNirn','150wuFXEW','\x22\x20matches\x20multiple\x20databases:\x20','get','935328baFNxJ','1151045JFBZNQ','7791960ICejnP','has','.\x20Be\x20more\x20specific.','72572zHofDa','filter','map','6YmQffZ','\x22.\x20Available:\x20'];a228_0x5aad=function(){return _0x40e1b9;};return a228_0x5aad();}import{listDatasets}from'../core/api-client.js';const cache=new Map();function a228_0x1924(_0x16f658,_0x28e214){_0x16f658=_0x16f658-0xeb;const _0x5aad67=a228_0x5aad();let _0x192433=_0x5aad67[_0x16f658];return _0x192433;}export async function listDatabases(_0x1887c7){const _0x2e0565=a228_0x1924;if(cache[_0x2e0565(0xef)](_0x1887c7))return cache[_0x2e0565(0xeb)](_0x1887c7);const _0x28296a=await listDatasets(_0x1887c7),_0x1ffe18=new Map();for(const _0x5b5e7e of _0x28296a){const _0x5e1132=_0x5b5e7e[_0x2e0565(0x101)];_0x5e1132?.[_0x2e0565(0xfd)]!=null&&_0x1ffe18['set'](_0x5e1132[_0x2e0565(0xfd)],_0x5e1132[_0x2e0565(0xfe)]??_0x2e0565(0xf8)+_0x5e1132[_0x2e0565(0xfd)]);}const _0x3bf544=[..._0x1ffe18[_0x2e0565(0xfb)]()][_0x2e0565(0xf3)](([_0x581801,_0x5db1dd])=>({'dbId':_0x581801,'dbName':_0x5db1dd}));return cache[_0x2e0565(0xf7)](_0x1887c7,_0x3bf544),_0x3bf544;}export async function resolveDb(_0x3cd4f2,_0x2cfb10){const _0x5ecc76=a228_0x1924,_0x17aa9c=await listDatabases(_0x3cd4f2);if(_0x17aa9c['length']===0x0)return{'resolved':[],'error':'No\x20linked\x20databases\x20found\x20under\x20app\x20\x22'+_0x3cd4f2+_0x5ecc76(0x103)};if(!_0x2cfb10)return{'resolved':_0x17aa9c};const _0x459a4b=Number(_0x2cfb10);if(!Number['isNaN'](_0x459a4b)){const _0x1c1095=_0x17aa9c[_0x5ecc76(0xf9)](_0x4837d7=>_0x4837d7[_0x5ecc76(0xfd)]===_0x459a4b);if(_0x1c1095)return{'resolved':[_0x1c1095]};}const _0x501ce2=_0x2cfb10[_0x5ecc76(0xfc)](),_0x421c67=_0x17aa9c[_0x5ecc76(0xf2)](_0x16cf11=>_0x16cf11[_0x5ecc76(0xfe)][_0x5ecc76(0xfc)]()['includes'](_0x501ce2));if(_0x421c67[_0x5ecc76(0xf6)]>0x0)return{'resolved':_0x421c67};const _0x2ce3d7=_0x17aa9c['map'](_0x3e71ce=>_0x3e71ce[_0x5ecc76(0xfe)]+'\x20('+_0x3e71ce[_0x5ecc76(0xfd)]+')')['join'](',\x20');return{'resolved':[],'error':_0x5ecc76(0x100)+_0x2cfb10+_0x5ecc76(0xfa)+_0x3cd4f2+_0x5ecc76(0xf5)+_0x2ce3d7+'.\x20If\x20this\x20db\x20belongs\x20to\x20another\x20app,\x20rerun\x20with\x20--appcode\x20<appCode>.'};}export async function resolveOneDb(_0x5cef62,_0x484af5){const _0x1f620a=a228_0x1924,{resolved:_0x26268b,error:_0xcbd7d8}=await resolveDb(_0x5cef62,_0x484af5);if(_0xcbd7d8)return{'db':null,'error':_0xcbd7d8};if(_0x26268b[_0x1f620a(0xf6)]===0x1)return{'db':_0x26268b[0x0]};if(!_0x484af5){const _0x5d0c8b=_0x26268b[_0x1f620a(0xf3)](_0x1514e7=>_0x1514e7['dbName']+'\x20('+_0x1514e7[_0x1f620a(0xfd)]+')')[_0x1f620a(0xff)](',\x20');return{'db':null,'error':'Multiple\x20databases\x20found.\x20Specify\x20one\x20with\x20--db:\x20'+_0x5d0c8b};}const _0x1e468d=_0x26268b[_0x1f620a(0xf3)](_0x99a843=>_0x99a843[_0x1f620a(0xfe)]+'\x20('+_0x99a843[_0x1f620a(0xfd)]+')')[_0x1f620a(0xff)](',\x20');return{'db':null,'error':'\x22'+_0x484af5+_0x1f620a(0x107)+_0x1e468d+_0x1f620a(0xf0)};}export async function getDbName(_0x41b854,_0x4e3b51){const _0x592f7f=a228_0x1924,_0x5d2e16=await listDatabases(_0x41b854);return _0x5d2e16[_0x592f7f(0xf9)](_0x55e862=>_0x55e862[_0x592f7f(0xfd)]===_0x4e3b51)?.['dbName'];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a229_0x42eaba=a229_0x2842;(function(_0x191f20,_0x15a8bb){const _0x327b20=a229_0x2842,_0x7ed09c=_0x191f20();while(!![]){try{const _0x3f9e7c=parseInt(_0x327b20(0x1f5))/0x1+parseInt(_0x327b20(0x1ec))/0x2*(-parseInt(_0x327b20(0x1eb))/0x3)+parseInt(_0x327b20(0x1e7))/0x4*(parseInt(_0x327b20(0x1e6))/0x5)+-parseInt(_0x327b20(0x1f1))/0x6+-parseInt(_0x327b20(0x1f3))/0x7*(parseInt(_0x327b20(0x1ee))/0x8)+-parseInt(_0x327b20(0x1ea))/0x9*(-parseInt(_0x327b20(0x1e9))/0xa)+parseInt(_0x327b20(0x1f4))/0xb;if(_0x3f9e7c===_0x15a8bb)break;else _0x7ed09c['push'](_0x7ed09c['shift']());}catch(_0x1fd3ea){_0x7ed09c['push'](_0x7ed09c['shift']());}}}(a229_0x2b60,0x3936b));import{constants}from'node:fs';import{access,mkdir}from'node:fs/promises';import{dirname,join,resolve}from'node:path';function a229_0x2b60(){const _0x3db8f0=['page','205NxUcIs','29604VpWIMN','F_OK','9740CjRwKg','2763UXgYov','375pMkqDZ','1218pBrZqh','.json','8Xwxpfk','.rabetbase','cwd','1355544iLSYOD','appPagesDir','1430366pTcHnZ','722557zapxrd','72588eAfXEb','toUpperCase'];a229_0x2b60=function(){return _0x3db8f0;};return a229_0x2b60();}export function loadPageProjectConfig(_0x4c3d01,_0x52ebc8=process[a229_0x42eaba(0x1f0)]()){const _0x3e8607=a229_0x42eaba,_0x1ca5fe=resolve(_0x52ebc8),_0x308e06=join(_0x1ca5fe,_0x3e8607(0x1ef),_0x3e8607(0x1f7));return{'projectRoot':_0x1ca5fe,'pagesBaseDir':_0x308e06,'appPagesDir':join(_0x308e06,_0x4c3d01),'lockFilePath':join(_0x1ca5fe,_0x3e8607(0x1ef),'page.lock.json')};}function a229_0x2842(_0x2b4366,_0xfd6870){_0x2b4366=_0x2b4366-0x1e6;const _0x2b60fb=a229_0x2b60();let _0x2842ab=_0x2b60fb[_0x2b4366];return _0x2842ab;}export function buildPageFileName(_0x4cb527,_0x53cdaa){const _0x41ccd7=a229_0x42eaba;return _0x4cb527+'-'+String(_0x53cdaa)[_0x41ccd7(0x1f6)]()+_0x41ccd7(0x1ed);}export function resolvePageFilePath(_0x274207,_0x10489d,_0x679bdb){const _0x3ea3b3=a229_0x42eaba;return join(_0x274207[_0x3ea3b3(0x1f2)],buildPageFileName(_0x10489d,_0x679bdb));}export async function ensureParentDirectory(_0x54eeb7){await mkdir(dirname(_0x54eeb7),{'recursive':!![]});}export async function fileExists(_0xf4c7bd){const _0x3f6039=a229_0x42eaba;try{return await access(_0xf4c7bd,constants[_0x3f6039(0x1e8)]),!![];}catch{return![];}}
|
package/lib/core/page/hash.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x18623f,_0x1a0906){const _0x293064=a230_0xa370,_0x55aee6=_0x18623f();while(!![]){try{const _0x31daee=-parseInt(_0x293064(0x15d))/0x1*(parseInt(_0x293064(0x15f))/0x2)+-parseInt(_0x293064(0x15c))/0x3+-parseInt(_0x293064(0x161))/0x4+-parseInt(_0x293064(0x167))/0x5*(parseInt(_0x293064(0x166))/0x6)+parseInt(_0x293064(0x164))/0x7+parseInt(_0x293064(0x15a))/0x8+-parseInt(_0x293064(0x168))/0x9*(-parseInt(_0x293064(0x15e))/0xa);if(_0x31daee===_0x1a0906)break;else _0x55aee6['push'](_0x55aee6['shift']());}catch(_0x189d50){_0x55aee6['push'](_0x55aee6['shift']());}}}(a230_0x3ffc,0xbf618));import a230_0xdb2e6f from'node:crypto';import{readFile}from'node:fs/promises';function a230_0xa370(_0x388192,_0xdb4ea3){_0x388192=_0x388192-0x159;const _0x3ffc69=a230_0x3ffc();let _0xa370a0=_0x3ffc69[_0x388192];return _0xa370a0;}export function serializePageSchemaForFile(_0x4a7791){const _0x2f13c4=a230_0xa370;return JSON[_0x2f13c4(0x162)](JSON[_0x2f13c4(0x165)](_0x4a7791),null,0x2)+'\x0a';}function a230_0x3ffc(){const _0x8379d0=['stringify','md5','7100989CbMTHj','parse','6yyJEqc','6882120ZhEMYG','21864519TgbvLw','createHash','10445200XvUJRT','utf8','1468170EjhXRV','539KWjWAb','10LxlQsI','2638AgrmBj','update','5555268lSMiPF'];a230_0x3ffc=function(){return _0x8379d0;};return a230_0x3ffc();}export function computePageContentHash(_0x39c17e){const _0x31620e=a230_0xa370;return a230_0xdb2e6f[_0x31620e(0x159)](_0x31620e(0x163))[_0x31620e(0x160)](_0x39c17e)['digest']('hex');}export function computeSerializedSchemaHash(_0x18ce8b){return computePageContentHash(serializePageSchemaForFile(_0x18ce8b));}export async function computePageFileHash(_0x1fff93){const _0x30411a=a230_0xa370,_0x1038d0=await readFile(_0x1fff93,_0x30411a(0x15b));return computePageContentHash(_0x1038d0);}
|
package/lib/core/page/lock.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x419db9,_0x300e12){const _0x39f5b7=a231_0x46a0,_0x375459=_0x419db9();while(!![]){try{const _0x3b21b1=-parseInt(_0x39f5b7(0x1b3))/0x1*(parseInt(_0x39f5b7(0x1b9))/0x2)+-parseInt(_0x39f5b7(0x1ad))/0x3*(parseInt(_0x39f5b7(0x1ba))/0x4)+-parseInt(_0x39f5b7(0x1b1))/0x5+parseInt(_0x39f5b7(0x1b7))/0x6*(parseInt(_0x39f5b7(0x1b8))/0x7)+parseInt(_0x39f5b7(0x1af))/0x8+parseInt(_0x39f5b7(0x1b4))/0x9+-parseInt(_0x39f5b7(0x1aa))/0xa*(-parseInt(_0x39f5b7(0x1b0))/0xb);if(_0x3b21b1===_0x300e12)break;else _0x375459['push'](_0x375459['shift']());}catch(_0x22fc2e){_0x375459['push'](_0x375459['shift']());}}}(a231_0x3a92,0x856d0));function a231_0x3a92(){const _0x11fa93=['573639ondAhn','1778695QHAssm','Failed\x20to\x20read\x20page\x20lock\x20file:\x20','494509LjYMmH','5765112clSzxP','object','apps','276YYAepi','100093fceVCO','2ZyfrXy','8cmujMi','parse','lastSync','10EQFOUm','pages','stringify','901161aVPiRZ','utf8','5176504ibZnje'];a231_0x3a92=function(){return _0x11fa93;};return a231_0x3a92();}function a231_0x46a0(_0x14fb04,_0x5e6a69){_0x14fb04=_0x14fb04-0x1aa;const _0x3a9293=a231_0x3a92();let _0x46a0f8=_0x3a9293[_0x14fb04];return _0x46a0f8;}import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';export function createEmptyPageLock(){return{'apps':{}};}export function ensurePageLockScope(_0x48ffaa,_0x162f1d){const _0x423d71=a231_0x46a0,_0x9d140d={'apps':_0x48ffaa[_0x423d71(0x1b6)]&&typeof _0x48ffaa[_0x423d71(0x1b6)]===_0x423d71(0x1b5)?_0x48ffaa[_0x423d71(0x1b6)]:{}};let _0xf8eed5=_0x9d140d[_0x423d71(0x1b6)][_0x162f1d];if(!_0xf8eed5)return _0xf8eed5={'lastSync':'','pages':{}},_0x9d140d[_0x423d71(0x1b6)][_0x162f1d]=_0xf8eed5,{'lockData':_0x9d140d,'appLock':_0xf8eed5};return!_0xf8eed5[_0x423d71(0x1bc)]&&(_0xf8eed5[_0x423d71(0x1bc)]=''),(!_0xf8eed5['pages']||typeof _0xf8eed5[_0x423d71(0x1ab)]!==_0x423d71(0x1b5))&&(_0xf8eed5['pages']={}),{'lockData':_0x9d140d,'appLock':_0xf8eed5};}export async function readPageLockFile(_0x101f2d){const _0x3726a0=a231_0x46a0;try{const _0x6342d4=await readFile(_0x101f2d,_0x3726a0(0x1ae)),_0x186ef4=JSON[_0x3726a0(0x1bb)](_0x6342d4);return{'apps':_0x186ef4[_0x3726a0(0x1b6)]&&typeof _0x186ef4['apps']===_0x3726a0(0x1b5)?_0x186ef4[_0x3726a0(0x1b6)]:{}};}catch(_0x570f00){if(_0x570f00['code']==='ENOENT')return null;throw new Error(_0x3726a0(0x1b2)+String(_0x570f00));}}export async function writePageLockFile(_0x272a50,_0x5f2d76){const _0x4c8df1=a231_0x46a0;await mkdir(dirname(_0x272a50),{'recursive':!![]}),await writeFile(_0x272a50,JSON[_0x4c8df1(0x1ac)](_0x5f2d76,null,0x2),_0x4c8df1(0x1ae));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x521e9c,_0x41e30b){const _0x32340f=a233_0x479c,_0x50751d=_0x521e9c();while(!![]){try{const _0x489e80=-parseInt(_0x32340f(0x132))/0x1+-parseInt(_0x32340f(0x134))/0x2+parseInt(_0x32340f(0x101))/0x3+-parseInt(_0x32340f(0x133))/0x4*(parseInt(_0x32340f(0x149))/0x5)+parseInt(_0x32340f(0x102))/0x6*(-parseInt(_0x32340f(0x140))/0x7)+parseInt(_0x32340f(0x12b))/0x8*(-parseInt(_0x32340f(0x143))/0x9)+parseInt(_0x32340f(0x127))/0xa*(parseInt(_0x32340f(0x109))/0xb);if(_0x489e80===_0x41e30b)break;else _0x50751d['push'](_0x50751d['shift']());}catch(_0x24bc76){_0x50751d['push'](_0x50751d['shift']());}}}(a233_0x8658,0x2dcd8));import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';export function auditSqlJoinIndexes(_0x551dcd,_0x3d5953){const _0x50bc13=a233_0x479c,_0x78d4e1=[],_0x3a986b=normalizeSqlForStaticAnalysis(_0x551dcd),_0x586e33=(_0x3a986b[_0x50bc13(0x114)]?[]:extractJoinFacts(_0x3a986b[_0x50bc13(0x139)]))[_0x50bc13(0x12f)](_0x273c5a=>{const _0x43441d=_0x50bc13;if(_0x273c5a[_0x43441d(0x12e)]||_0x273c5a['columns'][_0x43441d(0x131)]===0x0)return _0x78d4e1[_0x43441d(0x130)]({'code':_0x43441d(0x13c),'table':_0x273c5a[_0x43441d(0x142)],'alias':_0x273c5a['alias'],'columns':_0x273c5a['columns'],'reason':_0x273c5a[_0x43441d(0x103)]??_0x43441d(0x12d)}),{'table':_0x273c5a[_0x43441d(0x142)],'alias':_0x273c5a[_0x43441d(0x11a)],'columns':_0x273c5a['columns'],'status':_0x43441d(0x119)};const _0x2d1c29=resolveTableMetadata(_0x3d5953,_0x273c5a[_0x43441d(0x142)]),_0x4d2943=(_0x2d1c29?.[_0x43441d(0x11b)]??[])['map'](_0xcebdcd=>({'index':_0xcebdcd,'matchedPrefix':findEqualityPrefix(_0xcebdcd[_0x43441d(0x136)],_0x273c5a['columns'])}))[_0x43441d(0x145)](_0x7110eb=>_0x7110eb[_0x43441d(0x144)][_0x43441d(0x131)]>0x0),_0x1acac2=_0x4d2943[_0x43441d(0x13e)]((_0x5bff3a,_0x2d7214)=>!_0x5bff3a||_0x2d7214[_0x43441d(0x144)][_0x43441d(0x131)]>_0x5bff3a[_0x43441d(0x144)][_0x43441d(0x131)]?_0x2d7214:_0x5bff3a,_0x4d2943[0x0]);if(_0x1acac2)return{'table':_0x273c5a[_0x43441d(0x142)],'alias':_0x273c5a['alias'],'columns':_0x273c5a[_0x43441d(0x136)],'status':_0x43441d(0x123),'matchedIndex':{..._0x1acac2[_0x43441d(0x122)],'matchedPrefix':_0x1acac2[_0x43441d(0x144)]}};const _0x537646=_0x2d1c29?.[_0x43441d(0x11b)][_0x43441d(0x145)](_0x287e16=>_0x287e16[_0x43441d(0x136)][_0x43441d(0x10b)](_0x2fc2f2=>_0x273c5a[_0x43441d(0x136)]['some'](_0x1f8a51=>columnNamesMatch(_0x2fc2f2,_0x1f8a51))))??[];if(_0x537646[_0x43441d(0x131)]>0x0)return _0x78d4e1[_0x43441d(0x130)]({'code':_0x43441d(0x118),'table':_0x273c5a['table'],'alias':_0x273c5a[_0x43441d(0x11a)],'columns':_0x273c5a[_0x43441d(0x136)],'reason':_0x43441d(0x11c)}),{'table':_0x273c5a[_0x43441d(0x142)],'alias':_0x273c5a['alias'],'columns':_0x273c5a['columns'],'status':_0x43441d(0x135),'candidateIndexes':_0x537646};if(_0x2d1c29&&_0x2d1c29[_0x43441d(0x121)]!==![]&&_0x2d1c29['indexes'][_0x43441d(0x131)]>0x0&&_0x273c5a[_0x43441d(0x136)][_0x43441d(0x131)]>0x0)return _0x78d4e1[_0x43441d(0x130)]({'code':_0x43441d(0x125),'table':_0x273c5a[_0x43441d(0x142)],'alias':_0x273c5a[_0x43441d(0x11a)],'columns':_0x273c5a[_0x43441d(0x136)],'reason':_0x43441d(0x104)}),{'table':_0x273c5a[_0x43441d(0x142)],'alias':_0x273c5a[_0x43441d(0x11a)],'columns':_0x273c5a[_0x43441d(0x136)],'status':'warning'};return _0x78d4e1[_0x43441d(0x130)]({'code':_0x43441d(0x146),'table':_0x273c5a['table'],'alias':_0x273c5a[_0x43441d(0x11a)],'columns':_0x273c5a[_0x43441d(0x136)],'reason':_0x2d1c29?'The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.':'No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.'}),{'table':_0x273c5a[_0x43441d(0x142)],'alias':_0x273c5a[_0x43441d(0x11a)],'columns':_0x273c5a[_0x43441d(0x136)],'status':_0x43441d(0x119)};});return{'checked':_0x586e33['length']>0x0,'joins':_0x586e33,'warnings':_0x78d4e1};}function extractJoinFacts(_0x57e7f4){const _0x171a53=a233_0x479c,_0x5b3942=maskNestedQueries(stripSqlNoise(_0x57e7f4)),_0x447b35=maskQuotedIdentifiers(_0x5b3942),_0xb4af3b=[],_0x5de238=new Set(),_0x1a9c2b=/\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 _0x33129b of _0x5b3942[_0x171a53(0x11f)](_0x1a9c2b)){const _0x370c1a=_0x33129b[_0x171a53(0x122)]??0x0,_0x57260c=_0x33129b[0x0][_0x171a53(0x138)](/\bJOIN\b/i),_0x45e9c0=_0x370c1a+Math[_0x171a53(0x129)](0x0,_0x57260c);if(!/^JOIN\b/i[_0x171a53(0x113)](_0x447b35['slice'](_0x45e9c0)))continue;_0x5de238['add'](_0x45e9c0);const _0x253e0d=normalizeIdentifier(_0x33129b[0x1]||'INNER'),_0x541466=normalizeIdentifier(_0x33129b[0x2]??''),_0x49dc48=normalizeIdentifier(_0x33129b[0x3]||_0x541466[_0x171a53(0x141)]('.')['at'](-0x1)||_0x541466),_0x47e965=[],_0x2a810e=_0x541466===_0x171a53(0x13f);let _0x41bfc0=_0x253e0d===_0x171a53(0x10e)||_0x253e0d==='full'||_0x2a810e,_0x345e66=_0x41bfc0?_0x2a810e?_0x171a53(0x12a):_0x253e0d[_0x171a53(0x10c)]()+'\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.':undefined;const _0xc0d7ac=stripOuterParentheses(_0x33129b[0x4]??''),_0x2f134a=_0xc0d7ac[_0x171a53(0x13d)](MYBATIS_DYNAMIC_START_MARKER)||_0xc0d7ac[_0x171a53(0x13d)](MYBATIS_DYNAMIC_END_MARKER),_0x2f0d1a=_0xc0d7ac[_0x171a53(0x13d)](MYBATIS_INCLUDE_MARKER);_0x2f134a&&(_0x41bfc0=!![],_0x345e66??='MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.');_0x2f0d1a&&(_0x41bfc0=!![],_0x345e66??=_0x171a53(0x10d));const _0x989389=_0xc0d7ac[_0x171a53(0x128)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x171a53(0x128)](MYBATIS_DYNAMIC_END_MARKER,'\x20')[_0x171a53(0x128)](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0x989389,'OR')&&(_0x41bfc0=!![],_0x345e66??=_0x171a53(0x105));for(const _0x4600c0 of splitTopLevelAnd(_0x989389)){const _0xf953b9=stripOuterParentheses(_0x4600c0);if(hasTopLevelKeyword(_0xf953b9,'OR')){_0x41bfc0=!![],_0x345e66??=_0x171a53(0x105);continue;}const _0x468688=splitEquality(_0xf953b9);if(!_0x468688){containsColumnReference(_0x4600c0,_0x49dc48)&&(_0x41bfc0=!![]);continue;}const _0x40750c=parseDirectColumnReference(_0x468688[0x0],_0x49dc48),_0x271a49=parseDirectColumnReference(_0x468688[0x1],_0x49dc48),_0x49f7fe=containsColumnReference(_0x468688[0x0],_0x49dc48),_0x1ecfbb=containsColumnReference(_0x468688[0x1],_0x49dc48),_0x18fd04=_0x40750c&&!_0x1ecfbb?_0x40750c:_0x271a49&&!_0x49f7fe?_0x271a49:null;if(_0x18fd04&&!_0x47e965[_0x171a53(0x13d)](_0x18fd04))_0x47e965[_0x171a53(0x130)](_0x18fd04);else!_0x18fd04&&containsColumnReference(_0x4600c0,_0x49dc48)&&(_0x41bfc0=!![]);}_0xb4af3b[_0x171a53(0x130)]({'table':_0x541466,'alias':_0x49dc48,'columns':_0x47e965,'unsupportedPredicate':_0x41bfc0,'unsupportedReason':_0x345e66,'containsUnresolvedInclude':_0x2f0d1a,'position':_0x45e9c0});}for(const _0x4998c1 of _0x447b35['matchAll'](/\bJOIN\b/gi)){const _0x236300=_0x4998c1[_0x171a53(0x122)]??0x0;if(_0x5de238['has'](_0x236300))continue;const _0x4246f8=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/[_0x171a53(0x107)](_0x5b3942[_0x171a53(0x111)](_0x236300+_0x4998c1[0x0][_0x171a53(0x131)])),_0x4bc9b2=normalizeIdentifier(_0x4246f8?.[0x1]||_0x171a53(0x108)),_0x1dcb9c=normalizeIdentifier(_0x4246f8?.[0x2]||''),_0x159f23=isSqlClauseKeyword(_0x1dcb9c)?_0x4bc9b2['split']('.')['at'](-0x1)||_0x4bc9b2:_0x1dcb9c||_0x4bc9b2[_0x171a53(0x141)]('.')['at'](-0x1)||_0x4bc9b2;_0xb4af3b[_0x171a53(0x130)]({'table':_0x4bc9b2,'alias':_0x159f23,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x171a53(0x117),'position':_0x236300});}const _0xd79131=_0x447b35[_0x171a53(0x13a)](MYBATIS_INCLUDE_MARKER);return _0xd79131>=0x0&&!_0xb4af3b[_0x171a53(0x10b)](_0x4772e4=>_0x4772e4[_0x171a53(0x10a)])&&_0xb4af3b[_0x171a53(0x130)]({'table':'unknown','alias':_0x171a53(0x108),'columns':[],'unsupportedPredicate':!![],'unsupportedReason':'MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','containsUnresolvedInclude':!![],'position':_0xd79131}),_0xb4af3b[_0x171a53(0x120)]((_0x39777c,_0x45bcff)=>_0x39777c[_0x171a53(0x148)]-_0x45bcff[_0x171a53(0x148)]);}function stripSqlNoise(_0x2d45db){const _0x51bd6d=a233_0x479c,_0x3834c5=Array[_0x51bd6d(0x126)](_0x2d45db),_0x5606ba=(_0x3e249b,_0x5cfb17)=>{for(let _0x587cbc=_0x3e249b;_0x587cbc<_0x5cfb17;_0x587cbc+=0x1){_0x3834c5[_0x587cbc]!=='\x0a'&&_0x3834c5[_0x587cbc]!=='\x0d'&&(_0x3834c5[_0x587cbc]='\x20');}};for(let _0xca092b=0x0;_0xca092b<_0x3834c5[_0x51bd6d(0x131)];_0xca092b+=0x1){const _0x141aeb=_0x3834c5[_0xca092b],_0x1a8ec6=_0x3834c5[_0xca092b+0x1];if(_0x141aeb==='\x27'||_0x141aeb==='\x22'||_0x141aeb==='`'){const _0x44935a=_0x141aeb,_0x4a5a65=_0xca092b;_0xca092b+=0x1;while(_0xca092b<_0x3834c5[_0x51bd6d(0x131)]){if(_0x3834c5[_0xca092b]==='\x5c'&&_0xca092b+0x1<_0x3834c5['length']){_0xca092b+=0x2;continue;}if(_0x3834c5[_0xca092b]!==_0x44935a){_0xca092b+=0x1;continue;}if(_0x3834c5[_0xca092b+0x1]===_0x44935a){_0xca092b+=0x2;continue;}break;}if(_0x44935a==='\x27')_0x5606ba(_0x4a5a65,Math['min'](_0xca092b+0x1,_0x3834c5[_0x51bd6d(0x131)]));continue;}if(_0x141aeb==='-'&&_0x1a8ec6==='-'){const _0x26cdc2=_0xca092b;while(_0xca092b<_0x3834c5[_0x51bd6d(0x131)]&&_0x3834c5[_0xca092b]!=='\x0a')_0xca092b+=0x1;_0x5606ba(_0x26cdc2,_0xca092b);continue;}if(_0x141aeb==='/'&&_0x1a8ec6==='*'){const _0x5d8cff=_0xca092b;_0xca092b+=0x2;while(_0xca092b<_0x3834c5[_0x51bd6d(0x131)]&&!(_0x3834c5[_0xca092b]==='*'&&_0x3834c5[_0xca092b+0x1]==='/')){_0xca092b+=0x1;}_0xca092b=Math[_0x51bd6d(0x116)](_0xca092b+0x1,_0x3834c5[_0x51bd6d(0x131)]-0x1),_0x5606ba(_0x5d8cff,_0xca092b+0x1);continue;}if(_0x141aeb==='#'&&_0x1a8ec6!=='{'){const _0x32023f=_0xca092b;while(_0xca092b<_0x3834c5['length']&&_0x3834c5[_0xca092b]!=='\x0a')_0xca092b+=0x1;_0x5606ba(_0x32023f,_0xca092b);continue;}if((_0x141aeb==='#'||_0x141aeb==='$')&&_0x1a8ec6==='{'){const _0x121c7d=_0xca092b;_0xca092b+=0x2;while(_0xca092b<_0x3834c5[_0x51bd6d(0x131)]&&_0x3834c5[_0xca092b]!=='}')_0xca092b+=0x1;_0x5606ba(_0x121c7d,Math['min'](_0xca092b+0x1,_0x3834c5[_0x51bd6d(0x131)]));}}return _0x3834c5[_0x51bd6d(0x147)]('');}function a233_0x8658(){const _0x3753a1=['position','20110zyilvT','left','where','590388NjtyNh','228oDtfGy','unsupportedReason','No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.','OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.','has','exec','unknown','1187219RpktTm','containsUnresolvedInclude','some','toUpperCase','MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.','right','endsWith','\x5c$&','slice','(?:^|[^\x5cw$])','test','error','tableName','min','Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','JOIN_INDEX_NOT_USABLE','unavailable','alias','indexes','Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.','using','full','matchAll','sort','metadataAvailable','index','covered','inner','JOIN_INDEX_MISSING','from','90avTXpW','replaceAll','max','Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.','8YrxSRG','trim','Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.','unsupportedPredicate','map','push','length','368337ugiBsT','104vqLDeJ','645734ZmyiAP','warning','columns','replace','search','sql','indexOf','cross','JOIN_PREDICATE_UNSUPPORTED','includes','reduce','__sq__','28301ZCQCZb','split','table','280251AkIVuq','matchedPrefix','filter','INDEX_METADATA_UNAVAILABLE','join'];a233_0x8658=function(){return _0x3753a1;};return a233_0x8658();}function maskQuotedIdentifiers(_0x243bba){const _0x1a2a11=a233_0x479c,_0x2e1eba=Array[_0x1a2a11(0x126)](_0x243bba);for(let _0x55e2ab=0x0;_0x55e2ab<_0x2e1eba[_0x1a2a11(0x131)];_0x55e2ab+=0x1){const _0x5b0f48=_0x2e1eba[_0x55e2ab];if(_0x5b0f48!=='\x22'&&_0x5b0f48!=='`')continue;_0x55e2ab+=0x1;while(_0x55e2ab<_0x2e1eba['length']){if(_0x2e1eba[_0x55e2ab]===_0x5b0f48){if(_0x2e1eba[_0x55e2ab+0x1]===_0x5b0f48){_0x2e1eba[_0x55e2ab]='\x20',_0x2e1eba[_0x55e2ab+0x1]='\x20',_0x55e2ab+=0x2;continue;}break;}_0x2e1eba[_0x55e2ab]='\x20',_0x55e2ab+=0x1;}}return _0x2e1eba['join']('');}function a233_0x479c(_0x216ed6,_0x3b0b75){_0x216ed6=_0x216ed6-0x100;const _0x8658d6=a233_0x8658();let _0x479ccc=_0x8658d6[_0x216ed6];return _0x479ccc;}function maskNestedQueries(_0x2371e9){const _0x1e31e8=a233_0x479c,_0x59def2=Array['from'](_0x2371e9);for(let _0x3100cb=0x0;_0x3100cb<_0x59def2['length'];_0x3100cb+=0x1){if(_0x59def2[_0x3100cb]!=='(')continue;const _0x654bfb=_0x2371e9[_0x1e31e8(0x111)](_0x3100cb+0x1);if(!/^\s*(?:SELECT|WITH)\b/i[_0x1e31e8(0x113)](_0x654bfb))continue;let _0x3db306=0x1,_0x398bda=_0x3100cb+0x1;for(;_0x398bda<_0x59def2[_0x1e31e8(0x131)]&&_0x3db306>0x0;_0x398bda+=0x1){if(_0x59def2[_0x398bda]==='(')_0x3db306+=0x1;if(_0x59def2[_0x398bda]===')')_0x3db306-=0x1;}if(_0x3db306!==0x0)continue;for(let _0x1635e1=_0x3100cb;_0x1635e1<_0x398bda;_0x1635e1+=0x1){_0x59def2[_0x1635e1]='\x20';}const _0xf6634f=_0x1e31e8(0x13f);for(let _0x584211=0x0;_0x584211<_0xf6634f[_0x1e31e8(0x131)]&&_0x3100cb+_0x584211<_0x398bda;_0x584211+=0x1){_0x59def2[_0x3100cb+_0x584211]=_0xf6634f[_0x584211];}_0x3100cb=_0x398bda-0x1;}return _0x59def2[_0x1e31e8(0x147)]('');}function splitTopLevelAnd(_0x5406da){const _0x312ce0=a233_0x479c,_0x4ce180=[];let _0x3a8248=0x0,_0x523791=0x0;for(let _0x42d248=0x0;_0x42d248<_0x5406da['length'];_0x42d248+=0x1){const _0x4399bc=_0x5406da[_0x42d248];if(_0x4399bc==='(')_0x3a8248+=0x1;if(_0x4399bc===')')_0x3a8248=Math[_0x312ce0(0x129)](0x0,_0x3a8248-0x1);_0x3a8248===0x0&&_0x5406da[_0x312ce0(0x111)](_0x42d248)['match'](/^AND\b/i)&&(_0x42d248===0x0||/\s/[_0x312ce0(0x113)](_0x5406da[_0x42d248-0x1]??''))&&(_0x4ce180['push'](_0x5406da[_0x312ce0(0x111)](_0x523791,_0x42d248)[_0x312ce0(0x12c)]()),_0x42d248+=0x2,_0x523791=_0x42d248+0x1);}const _0x59dfe3=_0x5406da[_0x312ce0(0x111)](_0x523791)[_0x312ce0(0x12c)]();if(_0x59dfe3)_0x4ce180['push'](_0x59dfe3);return _0x4ce180;}function hasTopLevelKeyword(_0x3a64f6,_0x168ce3){const _0x5389b5=a233_0x479c;let _0x49987b=0x0;for(let _0x1f49f0=0x0;_0x1f49f0<_0x3a64f6[_0x5389b5(0x131)];_0x1f49f0+=0x1){const _0x55b7e8=_0x3a64f6[_0x1f49f0];if(_0x55b7e8==='(')_0x49987b+=0x1;if(_0x55b7e8===')')_0x49987b=Math[_0x5389b5(0x129)](0x0,_0x49987b-0x1);if(_0x49987b!==0x0)continue;const _0x449698=_0x3a64f6[_0x5389b5(0x111)](_0x1f49f0,_0x1f49f0+_0x168ce3[_0x5389b5(0x131)]),_0x2762de=_0x3a64f6[_0x1f49f0-0x1]??'\x20',_0xe9ab4d=_0x3a64f6[_0x1f49f0+_0x168ce3[_0x5389b5(0x131)]]??'\x20';if(_0x449698[_0x5389b5(0x10c)]()===_0x168ce3[_0x5389b5(0x10c)]()&&!/[\w$]/[_0x5389b5(0x113)](_0x2762de)&&!/[\w$]/['test'](_0xe9ab4d))return!![];}return![];}function splitEquality(_0x3b9396){const _0x44defe=a233_0x479c,_0x40a347=stripOuterParentheses(_0x3b9396);let _0x3fcd17=0x0,_0x187a03;for(let _0x6fed9f=0x0;_0x6fed9f<_0x40a347[_0x44defe(0x131)];_0x6fed9f+=0x1){const _0x38cd3b=_0x40a347[_0x6fed9f];if(_0x38cd3b==='(')_0x3fcd17+=0x1;if(_0x38cd3b===')')_0x3fcd17=Math[_0x44defe(0x129)](0x0,_0x3fcd17-0x1);const _0x2ccd6a=_0x40a347[_0x6fed9f-0x1]??'',_0xfd3655=_0x40a347[_0x6fed9f+0x1]??'';if(_0x38cd3b==='='&&_0x3fcd17===0x0&&!/[!<>=:]/[_0x44defe(0x113)](_0x2ccd6a)&&_0xfd3655!=='='){if(_0x187a03!==undefined)return null;_0x187a03=_0x6fed9f;}}return _0x187a03===undefined?null:[_0x40a347[_0x44defe(0x111)](0x0,_0x187a03)['trim'](),_0x40a347[_0x44defe(0x111)](_0x187a03+0x1)[_0x44defe(0x12c)]()];}function parseDirectColumnReference(_0xf72def,_0x5e80ae){const _0x3c6677=a233_0x479c,_0x199462=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/[_0x3c6677(0x107)](stripOuterParentheses(_0xf72def));if(!_0x199462)return null;if(normalizeIdentifier(_0x199462[0x1]??'')!==normalizeIdentifier(_0x5e80ae))return null;return normalizeIdentifier(_0x199462[0x2]??'');}function containsColumnReference(_0x37e362,_0x28da62){const _0x35349c=a233_0x479c,_0x2845ec=_0x37e362[_0x35349c(0x137)](/[`"]/g,''),_0x3d70b5=_0x28da62[_0x35349c(0x137)](/[.*+?^${}()|[\]\\]/g,_0x35349c(0x110));return new RegExp(_0x35349c(0x112)+_0x3d70b5+'\x5cs*\x5c.\x5cs*[\x5cw$]+','i')[_0x35349c(0x113)](_0x2845ec);}function findEqualityPrefix(_0x123330,_0x4ba805){const _0x58b74b=a233_0x479c,_0x4da521=new Set(_0x4ba805[_0x58b74b(0x12f)](normalizeIdentifier)),_0x1934d5=[];for(const _0x1a4800 of _0x123330){if(!_0x4da521[_0x58b74b(0x106)](normalizeIdentifier(_0x1a4800)))break;_0x1934d5[_0x58b74b(0x130)](_0x1a4800);}return _0x1934d5;}function resolveTableMetadata(_0x441a31,_0xea8756){const _0x59a36b=a233_0x479c,_0x2122f7=normalizeIdentifier(_0xea8756),_0x14e3e2=_0x441a31[_0x59a36b(0x145)](_0x5dfaef=>normalizeIdentifier(_0x5dfaef[_0x59a36b(0x115)])===_0x2122f7);if(_0x14e3e2[_0x59a36b(0x131)]===0x1)return _0x14e3e2[0x0];const _0x1ca2ed=_0x2122f7[_0x59a36b(0x13d)]('.'),_0xf7e96e=_0x2122f7['split']('.')['at'](-0x1),_0x6e061=_0x441a31[_0x59a36b(0x145)](_0x182409=>{const _0x2802a8=_0x59a36b,_0x157b72=normalizeIdentifier(_0x182409[_0x2802a8(0x115)]);if(_0x1ca2ed&&_0x157b72[_0x2802a8(0x13d)]('.'))return![];return _0x157b72[_0x2802a8(0x141)]('.')['at'](-0x1)===_0xf7e96e;});return _0x6e061[_0x59a36b(0x131)]===0x1?_0x6e061[0x0]:undefined;}function columnNamesMatch(_0x7e29c1,_0x456b15){return normalizeIdentifier(_0x7e29c1)===normalizeIdentifier(_0x456b15);}function normalizeIdentifier(_0x57d0b2){const _0xbeb542=a233_0x479c;return _0x57d0b2[_0xbeb542(0x137)](/[`"]/g,'')['trim']()['toLowerCase']();}function isSqlClauseKeyword(_0x54ddbf){const _0x325cab=a233_0x479c;return new Set(['on',_0x325cab(0x11d),_0x325cab(0x100),_0x325cab(0x147),_0x325cab(0x124),_0x325cab(0x14a),_0x325cab(0x10e),_0x325cab(0x11e),_0x325cab(0x13b),'natural'])['has'](_0x54ddbf);}function stripOuterParentheses(_0x5dcf21){const _0x278120=a233_0x479c;let _0x3fccd3=_0x5dcf21[_0x278120(0x12c)]();while(_0x3fccd3['startsWith']('(')&&_0x3fccd3[_0x278120(0x10f)](')')){let _0x5c6772=0x0,_0x43baf8=!![];for(let _0x53d789=0x0;_0x53d789<_0x3fccd3['length'];_0x53d789+=0x1){if(_0x3fccd3[_0x53d789]==='(')_0x5c6772+=0x1;if(_0x3fccd3[_0x53d789]===')')_0x5c6772-=0x1;if(_0x5c6772===0x0&&_0x53d789<_0x3fccd3[_0x278120(0x131)]-0x1){_0x43baf8=![];break;}}if(!_0x43baf8||_0x5c6772!==0x0)break;_0x3fccd3=_0x3fccd3[_0x278120(0x111)](0x1,-0x1)[_0x278120(0x12c)]();}return _0x3fccd3;}
|
|
1
|
+
(function(_0x1c9750,_0x2a8b77){const _0x3f315d=a233_0x3153,_0xdaea69=_0x1c9750();while(!![]){try{const _0x5164a5=parseInt(_0x3f315d(0x119))/0x1*(-parseInt(_0x3f315d(0x127))/0x2)+parseInt(_0x3f315d(0x10c))/0x3*(parseInt(_0x3f315d(0x13c))/0x4)+parseInt(_0x3f315d(0xf4))/0x5*(parseInt(_0x3f315d(0x133))/0x6)+parseInt(_0x3f315d(0x11e))/0x7*(parseInt(_0x3f315d(0x11b))/0x8)+parseInt(_0x3f315d(0x118))/0x9+-parseInt(_0x3f315d(0x123))/0xa+-parseInt(_0x3f315d(0xf9))/0xb;if(_0x5164a5===_0x2a8b77)break;else _0xdaea69['push'](_0xdaea69['shift']());}catch(_0xe1105c){_0xdaea69['push'](_0xdaea69['shift']());}}}(a233_0x1dc3,0xad5cd));import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';export function auditSqlJoinIndexes(_0x5d8286,_0x58b0b9){const _0x2f5d5e=a233_0x3153,_0xc01745=[],_0x27bb8e=normalizeSqlForStaticAnalysis(_0x5d8286),_0x2cb188=(_0x27bb8e[_0x2f5d5e(0x101)]?[]:extractJoinFacts(_0x27bb8e[_0x2f5d5e(0x108)]))[_0x2f5d5e(0x111)](_0x1c1182=>{const _0x553b94=_0x2f5d5e;if(_0x1c1182['unsupportedPredicate']||_0x1c1182[_0x553b94(0x12e)][_0x553b94(0x116)]===0x0)return _0xc01745[_0x553b94(0x12d)]({'code':_0x553b94(0x11f),'table':_0x1c1182[_0x553b94(0x12b)],'alias':_0x1c1182['alias'],'columns':_0x1c1182[_0x553b94(0x12e)],'reason':_0x1c1182['unsupportedReason']??'Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.'}),{'table':_0x1c1182[_0x553b94(0x12b)],'alias':_0x1c1182[_0x553b94(0xfe)],'columns':_0x1c1182[_0x553b94(0x12e)],'status':_0x553b94(0x107)};const _0x56f376=resolveTableMetadata(_0x58b0b9,_0x1c1182[_0x553b94(0x12b)]),_0x4d249c=(_0x56f376?.[_0x553b94(0x11d)]??[])[_0x553b94(0x111)](_0xcbd6bc=>({'index':_0xcbd6bc,'matchedPrefix':findEqualityPrefix(_0xcbd6bc['columns'],_0x1c1182[_0x553b94(0x12e)])}))[_0x553b94(0x102)](_0x2f0618=>_0x2f0618[_0x553b94(0xf7)][_0x553b94(0x116)]>0x0),_0x575110=_0x4d249c[_0x553b94(0x122)]((_0x521f4b,_0x31819f)=>!_0x521f4b||_0x31819f[_0x553b94(0xf7)]['length']>_0x521f4b[_0x553b94(0xf7)][_0x553b94(0x116)]?_0x31819f:_0x521f4b,_0x4d249c[0x0]);if(_0x575110)return{'table':_0x1c1182[_0x553b94(0x12b)],'alias':_0x1c1182[_0x553b94(0xfe)],'columns':_0x1c1182[_0x553b94(0x12e)],'status':_0x553b94(0x138),'matchedIndex':{..._0x575110[_0x553b94(0x113)],'matchedPrefix':_0x575110[_0x553b94(0xf7)]}};const _0x128d55=_0x56f376?.[_0x553b94(0x11d)][_0x553b94(0x102)](_0x1c1e66=>_0x1c1e66[_0x553b94(0x12e)][_0x553b94(0xf8)](_0x21cc2f=>_0x1c1182[_0x553b94(0x12e)][_0x553b94(0xf8)](_0x2dbc72=>columnNamesMatch(_0x21cc2f,_0x2dbc72))))??[];if(_0x128d55[_0x553b94(0x116)]>0x0)return _0xc01745[_0x553b94(0x12d)]({'code':_0x553b94(0xf5),'table':_0x1c1182[_0x553b94(0x12b)],'alias':_0x1c1182[_0x553b94(0xfe)],'columns':_0x1c1182['columns'],'reason':_0x553b94(0x11c)}),{'table':_0x1c1182[_0x553b94(0x12b)],'alias':_0x1c1182[_0x553b94(0xfe)],'columns':_0x1c1182['columns'],'status':_0x553b94(0x13a),'candidateIndexes':_0x128d55};if(_0x56f376&&_0x56f376[_0x553b94(0x105)]!==![]&&_0x56f376[_0x553b94(0x11d)][_0x553b94(0x116)]>0x0&&_0x1c1182['columns'][_0x553b94(0x116)]>0x0)return _0xc01745[_0x553b94(0x12d)]({'code':_0x553b94(0x130),'table':_0x1c1182[_0x553b94(0x12b)],'alias':_0x1c1182[_0x553b94(0xfe)],'columns':_0x1c1182[_0x553b94(0x12e)],'reason':_0x553b94(0x13e)}),{'table':_0x1c1182['table'],'alias':_0x1c1182[_0x553b94(0xfe)],'columns':_0x1c1182['columns'],'status':_0x553b94(0x13a)};return _0xc01745[_0x553b94(0x12d)]({'code':_0x553b94(0x10a),'table':_0x1c1182[_0x553b94(0x12b)],'alias':_0x1c1182[_0x553b94(0xfe)],'columns':_0x1c1182[_0x553b94(0x12e)],'reason':_0x56f376?_0x553b94(0xfd):'No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.'}),{'table':_0x1c1182[_0x553b94(0x12b)],'alias':_0x1c1182[_0x553b94(0xfe)],'columns':_0x1c1182['columns'],'status':_0x553b94(0x107)};});return{'checked':_0x2cb188[_0x2f5d5e(0x116)]>0x0,'joins':_0x2cb188,'warnings':_0xc01745};}function extractJoinFacts(_0xaf8dfc){const _0x1b2117=a233_0x3153,_0x41cedd=maskNestedQueries(stripSqlNoise(_0xaf8dfc)),_0x33aa1c=maskQuotedIdentifiers(_0x41cedd),_0x595a45=[],_0x5203d6=new Set(),_0x3438c5=/\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 _0x439f0f of _0x41cedd[_0x1b2117(0xfc)](_0x3438c5)){const _0x28c05b=_0x439f0f['index']??0x0,_0x2ac04c=_0x439f0f[0x0]['search'](/\bJOIN\b/i),_0x1c5bdb=_0x28c05b+Math['max'](0x0,_0x2ac04c);if(!/^JOIN\b/i[_0x1b2117(0xf6)](_0x33aa1c[_0x1b2117(0x12f)](_0x1c5bdb)))continue;_0x5203d6['add'](_0x1c5bdb);const _0x30680b=normalizeIdentifier(_0x439f0f[0x1]||_0x1b2117(0x121)),_0x50c885=normalizeIdentifier(_0x439f0f[0x2]??''),_0x38b9e0=normalizeIdentifier(_0x439f0f[0x3]||_0x50c885[_0x1b2117(0xfa)]('.')['at'](-0x1)||_0x50c885),_0x5d4172=[],_0x2e34e4=_0x50c885===_0x1b2117(0x136);let _0x10aa5c=_0x30680b===_0x1b2117(0x135)||_0x30680b===_0x1b2117(0x139)||_0x2e34e4,_0x4241bc=_0x10aa5c?_0x2e34e4?'Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.':_0x30680b[_0x1b2117(0x10e)]()+_0x1b2117(0x128):undefined;const _0x4d3268=stripOuterParentheses(_0x439f0f[0x4]??''),_0x344549=_0x4d3268[_0x1b2117(0x120)](MYBATIS_DYNAMIC_START_MARKER)||_0x4d3268[_0x1b2117(0x120)](MYBATIS_DYNAMIC_END_MARKER),_0x168ac4=_0x4d3268[_0x1b2117(0x120)](MYBATIS_INCLUDE_MARKER);_0x344549&&(_0x10aa5c=!![],_0x4241bc??='MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.');_0x168ac4&&(_0x10aa5c=!![],_0x4241bc??=_0x1b2117(0x124));const _0x3aac02=_0x4d3268[_0x1b2117(0x10b)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x1b2117(0x10b)](MYBATIS_DYNAMIC_END_MARKER,'\x20')['replaceAll'](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0x3aac02,'OR')&&(_0x10aa5c=!![],_0x4241bc??=_0x1b2117(0x104));for(const _0x537753 of splitTopLevelAnd(_0x3aac02)){const _0x195b3a=stripOuterParentheses(_0x537753);if(hasTopLevelKeyword(_0x195b3a,'OR')){_0x10aa5c=!![],_0x4241bc??='OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.';continue;}const _0x29a20d=splitEquality(_0x195b3a);if(!_0x29a20d){containsColumnReference(_0x537753,_0x38b9e0)&&(_0x10aa5c=!![]);continue;}const _0xfc9dc6=parseDirectColumnReference(_0x29a20d[0x0],_0x38b9e0),_0x4478d4=parseDirectColumnReference(_0x29a20d[0x1],_0x38b9e0),_0x56900a=containsColumnReference(_0x29a20d[0x0],_0x38b9e0),_0x1a1214=containsColumnReference(_0x29a20d[0x1],_0x38b9e0),_0x2e173b=_0xfc9dc6&&!_0x1a1214?_0xfc9dc6:_0x4478d4&&!_0x56900a?_0x4478d4:null;if(_0x2e173b&&!_0x5d4172[_0x1b2117(0x120)](_0x2e173b))_0x5d4172[_0x1b2117(0x12d)](_0x2e173b);else!_0x2e173b&&containsColumnReference(_0x537753,_0x38b9e0)&&(_0x10aa5c=!![]);}_0x595a45[_0x1b2117(0x12d)]({'table':_0x50c885,'alias':_0x38b9e0,'columns':_0x5d4172,'unsupportedPredicate':_0x10aa5c,'unsupportedReason':_0x4241bc,'containsUnresolvedInclude':_0x168ac4,'position':_0x1c5bdb});}for(const _0x3b0843 of _0x33aa1c[_0x1b2117(0xfc)](/\bJOIN\b/gi)){const _0x2fa105=_0x3b0843[_0x1b2117(0x113)]??0x0;if(_0x5203d6[_0x1b2117(0xfb)](_0x2fa105))continue;const _0x265317=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/[_0x1b2117(0x112)](_0x41cedd[_0x1b2117(0x12f)](_0x2fa105+_0x3b0843[0x0][_0x1b2117(0x116)])),_0x302863=normalizeIdentifier(_0x265317?.[0x1]||_0x1b2117(0xff)),_0x344748=normalizeIdentifier(_0x265317?.[0x2]||''),_0x336df0=isSqlClauseKeyword(_0x344748)?_0x302863['split']('.')['at'](-0x1)||_0x302863:_0x344748||_0x302863[_0x1b2117(0xfa)]('.')['at'](-0x1)||_0x302863;_0x595a45['push']({'table':_0x302863,'alias':_0x336df0,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x1b2117(0x10d),'position':_0x2fa105});}const _0x274a9a=_0x33aa1c[_0x1b2117(0x117)](MYBATIS_INCLUDE_MARKER);return _0x274a9a>=0x0&&!_0x595a45[_0x1b2117(0xf8)](_0x448488=>_0x448488[_0x1b2117(0x126)])&&_0x595a45['push']({'table':_0x1b2117(0xff),'alias':'unknown','columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x1b2117(0x13b),'containsUnresolvedInclude':!![],'position':_0x274a9a}),_0x595a45['sort']((_0x329870,_0xc0015c)=>_0x329870['position']-_0xc0015c[_0x1b2117(0x134)]);}function stripSqlNoise(_0x1c265b){const _0x8aec53=a233_0x3153,_0x1fb583=Array[_0x8aec53(0x12c)](_0x1c265b),_0x575e81=(_0x1aabd2,_0x3ded7c)=>{for(let _0x5d4b85=_0x1aabd2;_0x5d4b85<_0x3ded7c;_0x5d4b85+=0x1){_0x1fb583[_0x5d4b85]!=='\x0a'&&_0x1fb583[_0x5d4b85]!=='\x0d'&&(_0x1fb583[_0x5d4b85]='\x20');}};for(let _0x107d6a=0x0;_0x107d6a<_0x1fb583[_0x8aec53(0x116)];_0x107d6a+=0x1){const _0x31a238=_0x1fb583[_0x107d6a],_0x43689b=_0x1fb583[_0x107d6a+0x1];if(_0x31a238==='\x27'||_0x31a238==='\x22'||_0x31a238==='`'){const _0x51e0e8=_0x31a238,_0xb9507d=_0x107d6a;_0x107d6a+=0x1;while(_0x107d6a<_0x1fb583['length']){if(_0x1fb583[_0x107d6a]==='\x5c'&&_0x107d6a+0x1<_0x1fb583[_0x8aec53(0x116)]){_0x107d6a+=0x2;continue;}if(_0x1fb583[_0x107d6a]!==_0x51e0e8){_0x107d6a+=0x1;continue;}if(_0x1fb583[_0x107d6a+0x1]===_0x51e0e8){_0x107d6a+=0x2;continue;}break;}if(_0x51e0e8==='\x27')_0x575e81(_0xb9507d,Math['min'](_0x107d6a+0x1,_0x1fb583[_0x8aec53(0x116)]));continue;}if(_0x31a238==='-'&&_0x43689b==='-'){const _0xfc7df0=_0x107d6a;while(_0x107d6a<_0x1fb583[_0x8aec53(0x116)]&&_0x1fb583[_0x107d6a]!=='\x0a')_0x107d6a+=0x1;_0x575e81(_0xfc7df0,_0x107d6a);continue;}if(_0x31a238==='/'&&_0x43689b==='*'){const _0x33cd0c=_0x107d6a;_0x107d6a+=0x2;while(_0x107d6a<_0x1fb583[_0x8aec53(0x116)]&&!(_0x1fb583[_0x107d6a]==='*'&&_0x1fb583[_0x107d6a+0x1]==='/')){_0x107d6a+=0x1;}_0x107d6a=Math[_0x8aec53(0x137)](_0x107d6a+0x1,_0x1fb583[_0x8aec53(0x116)]-0x1),_0x575e81(_0x33cd0c,_0x107d6a+0x1);continue;}if(_0x31a238==='#'&&_0x43689b!=='{'){const _0x2ffc72=_0x107d6a;while(_0x107d6a<_0x1fb583[_0x8aec53(0x116)]&&_0x1fb583[_0x107d6a]!=='\x0a')_0x107d6a+=0x1;_0x575e81(_0x2ffc72,_0x107d6a);continue;}if((_0x31a238==='#'||_0x31a238==='$')&&_0x43689b==='{'){const _0xc008f6=_0x107d6a;_0x107d6a+=0x2;while(_0x107d6a<_0x1fb583[_0x8aec53(0x116)]&&_0x1fb583[_0x107d6a]!=='}')_0x107d6a+=0x1;_0x575e81(_0xc008f6,Math[_0x8aec53(0x137)](_0x107d6a+0x1,_0x1fb583[_0x8aec53(0x116)]));}}return _0x1fb583[_0x8aec53(0x125)]('');}function maskQuotedIdentifiers(_0x347b07){const _0x3dc133=a233_0x3153,_0x5d8bfd=Array['from'](_0x347b07);for(let _0x138d89=0x0;_0x138d89<_0x5d8bfd[_0x3dc133(0x116)];_0x138d89+=0x1){const _0x3e4067=_0x5d8bfd[_0x138d89];if(_0x3e4067!=='\x22'&&_0x3e4067!=='`')continue;_0x138d89+=0x1;while(_0x138d89<_0x5d8bfd[_0x3dc133(0x116)]){if(_0x5d8bfd[_0x138d89]===_0x3e4067){if(_0x5d8bfd[_0x138d89+0x1]===_0x3e4067){_0x5d8bfd[_0x138d89]='\x20',_0x5d8bfd[_0x138d89+0x1]='\x20',_0x138d89+=0x2;continue;}break;}_0x5d8bfd[_0x138d89]='\x20',_0x138d89+=0x1;}}return _0x5d8bfd['join']('');}function maskNestedQueries(_0x36c449){const _0x35c428=a233_0x3153,_0x2dc003=Array[_0x35c428(0x12c)](_0x36c449);for(let _0x2a87c8=0x0;_0x2a87c8<_0x2dc003[_0x35c428(0x116)];_0x2a87c8+=0x1){if(_0x2dc003[_0x2a87c8]!=='(')continue;const _0x495269=_0x36c449[_0x35c428(0x12f)](_0x2a87c8+0x1);if(!/^\s*(?:SELECT|WITH)\b/i['test'](_0x495269))continue;let _0x234315=0x1,_0x51c834=_0x2a87c8+0x1;for(;_0x51c834<_0x2dc003[_0x35c428(0x116)]&&_0x234315>0x0;_0x51c834+=0x1){if(_0x2dc003[_0x51c834]==='(')_0x234315+=0x1;if(_0x2dc003[_0x51c834]===')')_0x234315-=0x1;}if(_0x234315!==0x0)continue;for(let _0x5a2e28=_0x2a87c8;_0x5a2e28<_0x51c834;_0x5a2e28+=0x1){_0x2dc003[_0x5a2e28]='\x20';}const _0x2ad175=_0x35c428(0x136);for(let _0x283837=0x0;_0x283837<_0x2ad175[_0x35c428(0x116)]&&_0x2a87c8+_0x283837<_0x51c834;_0x283837+=0x1){_0x2dc003[_0x2a87c8+_0x283837]=_0x2ad175[_0x283837];}_0x2a87c8=_0x51c834-0x1;}return _0x2dc003['join']('');}function splitTopLevelAnd(_0x1455a2){const _0x4f85ed=a233_0x3153,_0x21e2a1=[];let _0x876ab9=0x0,_0x1a5ec6=0x0;for(let _0x3dc23a=0x0;_0x3dc23a<_0x1455a2[_0x4f85ed(0x116)];_0x3dc23a+=0x1){const _0x410603=_0x1455a2[_0x3dc23a];if(_0x410603==='(')_0x876ab9+=0x1;if(_0x410603===')')_0x876ab9=Math[_0x4f85ed(0x114)](0x0,_0x876ab9-0x1);_0x876ab9===0x0&&_0x1455a2[_0x4f85ed(0x12f)](_0x3dc23a)[_0x4f85ed(0x115)](/^AND\b/i)&&(_0x3dc23a===0x0||/\s/[_0x4f85ed(0xf6)](_0x1455a2[_0x3dc23a-0x1]??''))&&(_0x21e2a1[_0x4f85ed(0x12d)](_0x1455a2[_0x4f85ed(0x12f)](_0x1a5ec6,_0x3dc23a)[_0x4f85ed(0x12a)]()),_0x3dc23a+=0x2,_0x1a5ec6=_0x3dc23a+0x1);}const _0x50da5b=_0x1455a2[_0x4f85ed(0x12f)](_0x1a5ec6)[_0x4f85ed(0x12a)]();if(_0x50da5b)_0x21e2a1[_0x4f85ed(0x12d)](_0x50da5b);return _0x21e2a1;}function a233_0x1dc3(){const _0x5f0b13=['alias','unknown','tableName','error','filter','left','OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.','metadataAvailable','replace','unavailable','sql','\x5c$&','INDEX_METADATA_UNAVAILABLE','replaceAll','3hZSAte','Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','toUpperCase','endsWith','toLowerCase','map','exec','index','max','match','length','indexOf','12176874RjGOkr','4081BdmgQF','where','2504zhMmQs','Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.','indexes','26971hAmBmX','JOIN_PREDICATE_UNSUPPORTED','includes','INNER','reduce','2691790jrtpeB','MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.','join','containsUnresolvedInclude','632dDGETf','\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.','using','trim','table','from','push','columns','slice','JOIN_INDEX_MISSING','natural','\x5cs*\x5c.\x5cs*[\x5cw$]+','6QvraXh','position','right','__sq__','min','covered','full','warning','MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','116436LWfozA','(?:^|[^\x5cw$])','No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.','1730650Gzydet','JOIN_INDEX_NOT_USABLE','test','matchedPrefix','some','7318806CZkjxk','split','has','matchAll','The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.'];a233_0x1dc3=function(){return _0x5f0b13;};return a233_0x1dc3();}function hasTopLevelKeyword(_0x27b855,_0x4482a6){const _0x1b1ef2=a233_0x3153;let _0x50b492=0x0;for(let _0x1ceead=0x0;_0x1ceead<_0x27b855[_0x1b1ef2(0x116)];_0x1ceead+=0x1){const _0x5bef3c=_0x27b855[_0x1ceead];if(_0x5bef3c==='(')_0x50b492+=0x1;if(_0x5bef3c===')')_0x50b492=Math['max'](0x0,_0x50b492-0x1);if(_0x50b492!==0x0)continue;const _0x23fc4b=_0x27b855[_0x1b1ef2(0x12f)](_0x1ceead,_0x1ceead+_0x4482a6[_0x1b1ef2(0x116)]),_0x49d354=_0x27b855[_0x1ceead-0x1]??'\x20',_0x497651=_0x27b855[_0x1ceead+_0x4482a6[_0x1b1ef2(0x116)]]??'\x20';if(_0x23fc4b[_0x1b1ef2(0x10e)]()===_0x4482a6[_0x1b1ef2(0x10e)]()&&!/[\w$]/[_0x1b1ef2(0xf6)](_0x49d354)&&!/[\w$]/[_0x1b1ef2(0xf6)](_0x497651))return!![];}return![];}function splitEquality(_0x20a0cd){const _0x39c48a=a233_0x3153,_0x45142e=stripOuterParentheses(_0x20a0cd);let _0x3bbe83=0x0,_0x2d2366;for(let _0x3644af=0x0;_0x3644af<_0x45142e[_0x39c48a(0x116)];_0x3644af+=0x1){const _0xdf7dcd=_0x45142e[_0x3644af];if(_0xdf7dcd==='(')_0x3bbe83+=0x1;if(_0xdf7dcd===')')_0x3bbe83=Math[_0x39c48a(0x114)](0x0,_0x3bbe83-0x1);const _0x1e8601=_0x45142e[_0x3644af-0x1]??'',_0x3f8266=_0x45142e[_0x3644af+0x1]??'';if(_0xdf7dcd==='='&&_0x3bbe83===0x0&&!/[!<>=:]/[_0x39c48a(0xf6)](_0x1e8601)&&_0x3f8266!=='='){if(_0x2d2366!==undefined)return null;_0x2d2366=_0x3644af;}}return _0x2d2366===undefined?null:[_0x45142e[_0x39c48a(0x12f)](0x0,_0x2d2366)[_0x39c48a(0x12a)](),_0x45142e[_0x39c48a(0x12f)](_0x2d2366+0x1)[_0x39c48a(0x12a)]()];}function parseDirectColumnReference(_0x5e0da7,_0x338f1a){const _0x23e046=a233_0x3153,_0x2f33f1=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/[_0x23e046(0x112)](stripOuterParentheses(_0x5e0da7));if(!_0x2f33f1)return null;if(normalizeIdentifier(_0x2f33f1[0x1]??'')!==normalizeIdentifier(_0x338f1a))return null;return normalizeIdentifier(_0x2f33f1[0x2]??'');}function containsColumnReference(_0x4f6650,_0xb4c44e){const _0x525d82=a233_0x3153,_0x423f7c=_0x4f6650[_0x525d82(0x106)](/[`"]/g,''),_0x2e127a=_0xb4c44e[_0x525d82(0x106)](/[.*+?^${}()|[\]\\]/g,_0x525d82(0x109));return new RegExp(_0x525d82(0x13d)+_0x2e127a+_0x525d82(0x132),'i')[_0x525d82(0xf6)](_0x423f7c);}function findEqualityPrefix(_0x3e5e23,_0x84fe77){const _0x16dd2b=a233_0x3153,_0x3ebe85=new Set(_0x84fe77['map'](normalizeIdentifier)),_0x15667b=[];for(const _0x2a38d8 of _0x3e5e23){if(!_0x3ebe85[_0x16dd2b(0xfb)](normalizeIdentifier(_0x2a38d8)))break;_0x15667b[_0x16dd2b(0x12d)](_0x2a38d8);}return _0x15667b;}function resolveTableMetadata(_0x1a7b17,_0x7db5c5){const _0x52fbb9=a233_0x3153,_0x39d501=normalizeIdentifier(_0x7db5c5),_0x40eeec=_0x1a7b17['filter'](_0x534143=>normalizeIdentifier(_0x534143[_0x52fbb9(0x100)])===_0x39d501);if(_0x40eeec[_0x52fbb9(0x116)]===0x1)return _0x40eeec[0x0];const _0x5960e5=_0x39d501[_0x52fbb9(0x120)]('.'),_0x436ced=_0x39d501[_0x52fbb9(0xfa)]('.')['at'](-0x1),_0x2b9a62=_0x1a7b17['filter'](_0x299b50=>{const _0x8a25ff=_0x52fbb9,_0x2ae045=normalizeIdentifier(_0x299b50['tableName']);if(_0x5960e5&&_0x2ae045[_0x8a25ff(0x120)]('.'))return![];return _0x2ae045[_0x8a25ff(0xfa)]('.')['at'](-0x1)===_0x436ced;});return _0x2b9a62[_0x52fbb9(0x116)]===0x1?_0x2b9a62[0x0]:undefined;}function columnNamesMatch(_0x1f4e9e,_0x4b18dc){return normalizeIdentifier(_0x1f4e9e)===normalizeIdentifier(_0x4b18dc);}function normalizeIdentifier(_0x51dedd){const _0x532541=a233_0x3153;return _0x51dedd[_0x532541(0x106)](/[`"]/g,'')[_0x532541(0x12a)]()[_0x532541(0x110)]();}function isSqlClauseKeyword(_0x57cb21){const _0x4fc9fc=a233_0x3153;return new Set(['on',_0x4fc9fc(0x129),_0x4fc9fc(0x11a),'join','inner',_0x4fc9fc(0x103),_0x4fc9fc(0x135),_0x4fc9fc(0x139),'cross',_0x4fc9fc(0x131)])['has'](_0x57cb21);}function a233_0x3153(_0x3c84f0,_0x405cb8){_0x3c84f0=_0x3c84f0-0xf4;const _0x1dc322=a233_0x1dc3();let _0x3153e3=_0x1dc322[_0x3c84f0];return _0x3153e3;}function stripOuterParentheses(_0x4dcee2){const _0x562ae5=a233_0x3153;let _0x40439a=_0x4dcee2[_0x562ae5(0x12a)]();while(_0x40439a['startsWith']('(')&&_0x40439a[_0x562ae5(0x10f)](')')){let _0x39b8eb=0x0,_0x3b8486=!![];for(let _0x34fb84=0x0;_0x34fb84<_0x40439a['length'];_0x34fb84+=0x1){if(_0x40439a[_0x34fb84]==='(')_0x39b8eb+=0x1;if(_0x40439a[_0x34fb84]===')')_0x39b8eb-=0x1;if(_0x39b8eb===0x0&&_0x34fb84<_0x40439a[_0x562ae5(0x116)]-0x1){_0x3b8486=![];break;}}if(!_0x3b8486||_0x39b8eb!==0x0)break;_0x40439a=_0x40439a[_0x562ae5(0x12f)](0x1,-0x1)[_0x562ae5(0x12a)]();}return _0x40439a;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a234_0x1d1332=a234_0x4d82;(function(_0x1418e5,_0x5d44f9){const _0x3b1587=a234_0x4d82,_0x46c478=_0x1418e5();while(!![]){try{const _0x7e2a5b=-parseInt(_0x3b1587(0x1cd))/0x1*(parseInt(_0x3b1587(0x1cf))/0x2)+-parseInt(_0x3b1587(0x1d3))/0x3*(parseInt(_0x3b1587(0x1cc))/0x4)+parseInt(_0x3b1587(0x1ce))/0x5+-parseInt(_0x3b1587(0x1d6))/0x6*(-parseInt(_0x3b1587(0x1d1))/0x7)+-parseInt(_0x3b1587(0x1d8))/0x8+parseInt(_0x3b1587(0x1cb))/0x9+-parseInt(_0x3b1587(0x1d7))/0xa;if(_0x7e2a5b===_0x5d44f9)break;else _0x46c478['push'](_0x46c478['shift']());}catch(_0x4bd5da){_0x46c478['push'](_0x46c478['shift']());}}}(a234_0x5873,0xa1889));function a234_0x4d82(_0x4aafec,_0x4737d3){_0x4aafec=_0x4aafec-0x1cb;const _0x587381=a234_0x5873();let _0x4d82ac=_0x587381[_0x4aafec];return _0x4d82ac;}function a234_0x5873(){const _0x3d57a0=['5007420FtRFGR','334198XRBMxg','sql.lock.json','58156xfVJtP','sql-trash','168837lBWWCC','.rabetbase','/sql','888DwRbbi','2580970uqeOeM','6213128flOVmc','7297137PkKygU','60bGvmJu','3ngeSdw'];a234_0x5873=function(){return _0x3d57a0;};return a234_0x5873();}import{resolve}from'node:path';import{findProjectRootDirectory}from'../../context.js';const DOT_DIR=a234_0x1d1332(0x1d4),LOCK_FILE_NAME=a234_0x1d1332(0x1d0),TRASH_DIR_NAME=a234_0x1d1332(0x1d2);export function loadSqlProjectConfig(_0x398eec,_0x2efd94){const _0x35a12c=a234_0x1d1332,_0x4c8744=resolve(_0x2efd94??findProjectRootDirectory()),_0x4072ae=DOT_DIR+_0x35a12c(0x1d5),_0x9d7f2e=_0x4072ae+'/'+_0x398eec;return{'projectRoot':_0x4c8744,'appCode':_0x398eec,'sqlWorkspaceRoot':_0x4072ae,'sqlRoot':_0x9d7f2e,'sqlRootDir':resolve(_0x4c8744,DOT_DIR,'sql',_0x398eec),'lockFilePath':resolve(_0x4c8744,DOT_DIR,LOCK_FILE_NAME),'trashDir':resolve(_0x4c8744,DOT_DIR,TRASH_DIR_NAME)};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0xab50bc,_0x1d2a1f){const _0x3be3ea=a235_0x2779,_0xcee795=_0xab50bc();while(!![]){try{const _0x172553=parseInt(_0x3be3ea(0xd1))/0x1*(-parseInt(_0x3be3ea(0xca))/0x2)+parseInt(_0x3be3ea(0xda))/0x3*(-parseInt(_0x3be3ea(0xce))/0x4)+parseInt(_0x3be3ea(0xd9))/0x5+-parseInt(_0x3be3ea(0xc1))/0x6+parseInt(_0x3be3ea(0xc0))/0x7*(-parseInt(_0x3be3ea(0xbd))/0x8)+-parseInt(_0x3be3ea(0xd7))/0x9+parseInt(_0x3be3ea(0xcc))/0xa;if(_0x172553===_0x1d2a1f)break;else _0xcee795['push'](_0xcee795['shift']());}catch(_0x45e80f){_0xcee795['push'](_0xcee795['shift']());}}}(a235_0x88ea,0x75ad1));function a235_0x2779(_0x438fb2,_0x54c565){_0x438fb2=_0x438fb2-0xbc;const _0x88ea55=a235_0x88ea();let _0x277965=_0x88ea55[_0x438fb2];return _0x277965;}function a235_0x88ea(){const _0x2f4e24=['slice','3682345zRpNpX','306tEerxh','toLowerCase','1736SKhZXh','dbName','mode','1323yvwBCx','1068918orROMc','code','ENOENT','isFile','length','sqlRootDir','test','push','path','46tuLYax','replace','6702070kuqouY','split','11624uAmFDG','filter','sqlCode','17269kWewQW','dbId','.sql','indexOf','name','sqlName','107190RnPdsV'];a235_0x88ea=function(){return _0x2f4e24;};return a235_0x88ea();}import{readdir,stat}from'node:fs/promises';import{extname,join,relative}from'node:path';import{buildDefaultSqlFileName,buildSqlRelativePath}from'./utils.js';function extensionToMode(_0x4554d0){const _0xd2b6e5=a235_0x2779;if(_0x4554d0===_0xd2b6e5(0xd3))return'sql';if(_0x4554d0==='.xml')return'mybatisXml';return undefined;}async function scanSqlFilesRecursively(_0x412227,_0x32460f){const _0x1732fa=a235_0x2779,_0x371822=[];try{const _0x4f06f0=await readdir(_0x412227,{'withFileTypes':!![]});for(const _0x53feeb of _0x4f06f0){const _0x362cab=join(_0x412227,_0x53feeb[_0x1732fa(0xd5)]);if(_0x53feeb['isDirectory']()){_0x371822[_0x1732fa(0xc8)](...await scanSqlFilesRecursively(_0x362cab,_0x32460f));continue;}if(!_0x53feeb[_0x1732fa(0xc4)]())continue;const _0xd87223=extname(_0x53feeb['name'])[_0x1732fa(0xbc)](),_0x418c00=extensionToMode(_0xd87223);if(!_0x418c00)continue;const _0x34742b=relative(_0x32460f,_0x362cab)[_0x1732fa(0xcb)](/\\/g,'/'),_0x29f44c=_0x34742b[_0x1732fa(0xcd)]('/')[_0x1732fa(0xcf)](Boolean),_0x236f42=parseSqlPath(_0x29f44c,_0x53feeb[_0x1732fa(0xd5)],_0xd87223);if(!_0x236f42)continue;_0x371822[_0x1732fa(0xc8)]({'sqlCode':_0x236f42[_0x1732fa(0xd0)],'sqlName':_0x236f42[_0x1732fa(0xd6)],'dbDirectory':_0x29f44c[0x0],'filePath':_0x362cab,'relativePath':_0x34742b,'lockKey':_0x236f42['sqlCode'],'mode':_0x418c00});}}catch(_0x58450e){if(_0x58450e[_0x1732fa(0xc2)]!==_0x1732fa(0xc3))throw _0x58450e;}return _0x371822;}export async function scanLocalSqlQueries(_0x28e241){const _0x1bfc43=a235_0x2779;return scanSqlFilesRecursively(_0x28e241[_0x1bfc43(0xc6)],_0x28e241['sqlRootDir']);}export function resolveLocalSqlFilePath(_0x46d021,_0x2b55ba,_0x244f02){const _0xbdec48=a235_0x2779,_0x20e680=_0x244f02?.[_0xbdec48(0xc9)]||(_0x244f02?.[_0xbdec48(0xd6)]||_0x244f02?.[_0xbdec48(0xbe)]?buildSqlRelativePath(_0x2b55ba,_0x244f02?.[_0xbdec48(0xd6)],_0x244f02?.[_0xbdec48(0xbe)],_0x244f02?.['mode']||'sql',_0x244f02?.[_0xbdec48(0xd2)]):buildDefaultSqlFileName(_0x2b55ba,_0x244f02?.[_0xbdec48(0xbf)]||'sql'));return join(_0x46d021[_0xbdec48(0xc6)],_0x20e680);}export async function directoryExists(_0x3adf6b){try{const _0x1ebf0f=await stat(_0x3adf6b);return _0x1ebf0f['isDirectory']();}catch{return![];}}function parseSqlPath(_0x129558,_0x47b621,_0x3d13b3){const _0x32e782=a235_0x2779,_0x707745=_0x47b621[_0x32e782(0xd8)](0x0,-_0x3d13b3[_0x32e782(0xc5)]);if(_0x129558['length']<0x2)return null;const _0x2928e9=_0x707745[_0x32e782(0xd4)]('_');if(_0x2928e9<=0x0||_0x2928e9>=_0x707745['length']-0x1)return null;const _0x282194=_0x707745[_0x32e782(0xd8)](0x0,_0x2928e9);if(!isLikelySqlCode(_0x282194))return null;return{'sqlCode':_0x282194,'sqlName':_0x707745[_0x32e782(0xd8)](_0x2928e9+0x1)};}function isLikelySqlCode(_0x4fa978){const _0x57e30a=a235_0x2779;return/^[A-Za-z0-9-]+-[A-Za-z0-9-]+$/[_0x57e30a(0xc7)](_0x4fa978);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x1c85ed,_0x373c13){const _0x387081=a236_0x3e89,_0x24641b=_0x1c85ed();while(!![]){try{const _0x480bc4=-parseInt(_0x387081(0x18c))/0x1*(parseInt(_0x387081(0x18a))/0x2)+-parseInt(_0x387081(0x18f))/0x3*(-parseInt(_0x387081(0x18d))/0x4)+parseInt(_0x387081(0x184))/0x5+parseInt(_0x387081(0x190))/0x6*(parseInt(_0x387081(0x18e))/0x7)+parseInt(_0x387081(0x189))/0x8+-parseInt(_0x387081(0x185))/0x9+-parseInt(_0x387081(0x182))/0xa*(parseInt(_0x387081(0x18b))/0xb);if(_0x480bc4===_0x373c13)break;else _0x24641b['push'](_0x24641b['shift']());}catch(_0x336f47){_0x24641b['push'](_0x24641b['shift']());}}}(a236_0x2be5,0xb354f));import{readFile}from'node:fs/promises';function a236_0x3e89(_0x2bb981,_0x4d2d5){_0x2bb981=_0x2bb981-0x181;const _0x2be578=a236_0x2be5();let _0x3e8903=_0x2be578[_0x2bb981];return _0x3e8903;}import a236_0x310f22 from'node:crypto';function a236_0x2be5(){const _0x193707=['7OtMJGD','21VVLQMN','7387386enMfBW','utf8','20jjCMbr','md5','1171325TfVnSr','8445519JdElYI','hex','digest','createHash','10386144DbGWox','2xcjNgS','3803107VtARvn','1192379XzhEDA','453156YrzThM'];a236_0x2be5=function(){return _0x193707;};return a236_0x2be5();}export function computeSqlContentHash(_0x172b59){const _0x4b07ab=a236_0x3e89;return a236_0x310f22[_0x4b07ab(0x188)](_0x4b07ab(0x183))['update'](_0x172b59)[_0x4b07ab(0x187)](_0x4b07ab(0x186));}export async function computeSqlFileHash(_0x35819f){const _0x2154d2=a236_0x3e89,_0x5222fe=await readFile(_0x35819f,_0x2154d2(0x181));return computeSqlContentHash(_0x5222fe);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x106e77,_0xa1fd85){const _0x130cbe=a237_0x4d95,_0x5c07a7=_0x106e77();while(!![]){try{const _0x588479=-parseInt(_0x130cbe(0x1d3))/0x1*(-parseInt(_0x130cbe(0x1be))/0x2)+parseInt(_0x130cbe(0x1cd))/0x3+-parseInt(_0x130cbe(0x1bd))/0x4+-parseInt(_0x130cbe(0x1bb))/0x5+-parseInt(_0x130cbe(0x1ca))/0x6*(-parseInt(_0x130cbe(0x1ce))/0x7)+parseInt(_0x130cbe(0x1c4))/0x8*(-parseInt(_0x130cbe(0x1d1))/0x9)+parseInt(_0x130cbe(0x1c8))/0xa*(parseInt(_0x130cbe(0x1bf))/0xb);if(_0x588479===_0xa1fd85)break;else _0x5c07a7['push'](_0x5c07a7['shift']());}catch(_0x380ee7){_0x5c07a7['push'](_0x5c07a7['shift']());}}}(a237_0xf284,0x5af8a));import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';export function createEmptySqlLock(){return{'apps':{}};}function a237_0x4d95(_0x4d33c7,_0x411c98){_0x4d33c7=_0x4d33c7-0x1bb;const _0xf28429=a237_0xf284();let _0x4d9571=_0xf28429[_0x4d33c7];return _0x4d9571;}export function ensureSqlLockScope(_0x11d393,_0x574f11,_0x482a92,_0xa431ad){const _0x46322c=a237_0x4d95,_0x2e6fc2=_0x11d393??createEmptySqlLock();let _0x5612bc=_0x2e6fc2[_0x46322c(0x1d0)][_0x574f11];if(!_0x5612bc)return _0x5612bc={'sqlRoot':_0x482a92,'lastSync':'','sqls':{}},_0x2e6fc2['apps'][_0x574f11]=_0x5612bc,{'lockData':_0x2e6fc2,'appLock':_0x5612bc};if(!_0x5612bc[_0x46322c(0x1c6)])_0x5612bc[_0x46322c(0x1c6)]=_0x482a92;else{if(_0x5612bc[_0x46322c(0x1c6)]!==_0x482a92)throw new Error(_0xa431ad+_0x46322c(0x1c3)+_0x482a92+_0x46322c(0x1d2)+_0x5612bc['sqlRoot']+_0x46322c(0x1cc)+_0x46322c(0x1c7));}return!_0x5612bc['sqls']&&(_0x5612bc[_0x46322c(0x1c2)]={}),!_0x5612bc[_0x46322c(0x1c0)]&&(_0x5612bc[_0x46322c(0x1c0)]=''),{'lockData':_0x2e6fc2,'appLock':_0x5612bc};}function a237_0xf284(){const _0x50a6ae=['lastSync','stringify','sqls',':\x20sqlRoot\x20mismatch\x20—\x20current\x20\x22','8bPAgGJ','Failed\x20to\x20read\x20SQL\x20lock\x20file:\x20','sqlRoot','Check\x20.rabetbase/sql.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','2590kXzNXP','utf8','3093798IZdWGi','ENOENT','\x22.\x20','697767ymBFba','7ZEozhZ','parse','apps','5960646RMqYov','\x22\x20vs\x20lock\x20\x22','8829jqiAhF','3108065tnLTjh','code','2284488YQnLCj','24tXeMIS','58333IUegBY'];a237_0xf284=function(){return _0x50a6ae;};return a237_0xf284();}export async function readSqlLockFile(_0x980ffd){const _0x13f94d=a237_0x4d95;try{const _0x4d2793=await readFile(_0x980ffd,_0x13f94d(0x1c9));return JSON[_0x13f94d(0x1cf)](_0x4d2793);}catch(_0x456dbd){if(_0x456dbd[_0x13f94d(0x1bc)]===_0x13f94d(0x1cb))return null;throw new Error(_0x13f94d(0x1c5)+String(_0x456dbd));}}export async function writeSqlLockFile(_0x27765d,_0x525e70){const _0x1834bd=a237_0x4d95;await mkdir(dirname(_0x27765d),{'recursive':!![]}),await writeFile(_0x27765d,JSON[_0x1834bd(0x1c1)](_0x525e70,null,0x2),_0x1834bd(0x1c9));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4489b2,_0xdec2a9){const _0xa7b0a9=a239_0x59c5,_0x4e2f30=_0x4489b2();while(!![]){try{const _0x53502a=-parseInt(_0xa7b0a9(0x1db))/0x1+-parseInt(_0xa7b0a9(0x1da))/0x2*(parseInt(_0xa7b0a9(0x1e0))/0x3)+parseInt(_0xa7b0a9(0x1de))/0x4+-parseInt(_0xa7b0a9(0x1d9))/0x5+-parseInt(_0xa7b0a9(0x1d8))/0x6+-parseInt(_0xa7b0a9(0x1dd))/0x7+parseInt(_0xa7b0a9(0x1e1))/0x8*(parseInt(_0xa7b0a9(0x1dc))/0x9);if(_0x53502a===_0xdec2a9)break;else _0x4e2f30['push'](_0x4e2f30['shift']());}catch(_0x4befbb){_0x4e2f30['push'](_0x4e2f30['shift']());}}}(a239_0xc860,0x9328d));export function detectSqlMode(_0x896a3a){const _0xdf997b=a239_0x59c5,_0x1fbba8=_0x896a3a['trimStart']();if(/^<(select|insert|update|delete)\b/i[_0xdf997b(0x1e3)](_0x1fbba8))return _0xdf997b(0x1e5);return _0xdf997b(0x1e4);}export function getSqlFileExtension(_0x325205){const _0x5e5e63=a239_0x59c5;return _0x325205===_0x5e5e63(0x1e5)?'.xml':'.sql';}function a239_0x59c5(_0x416b6e,_0x1c8be4){_0x416b6e=_0x416b6e-0x1d8;const _0xc86084=a239_0xc860();let _0x59c569=_0xc86084[_0x416b6e];return _0x59c569;}export function buildDefaultSqlFileName(_0x3df004,_0x42ba38){return''+_0x3df004+getSqlFileExtension(_0x42ba38);}export function sanitizeSqlPathSegment(_0xd769a3,_0xa52186){const _0xe6c51e=a239_0x59c5,_0x4702fd=String(_0xd769a3??'')['trim'](),_0x4e09ae=_0x4702fd[_0xe6c51e(0x1e2)](/[<>:"/\\|?*\u0000-\u001F]/g,'-')[_0xe6c51e(0x1e2)](/\s+/g,'-')['replace'](/-+/g,'-')['replace'](/^\.+/,'')['replace'](/\.+$/,'')[_0xe6c51e(0x1e2)](/^-+/,'')[_0xe6c51e(0x1e2)](/-+$/,'');return _0x4e09ae||_0xa52186;}export function buildDbDirectoryName(_0x15159a,_0x2bfd5f){const _0x68697c=a239_0x59c5;return sanitizeSqlPathSegment(_0x15159a,_0x2bfd5f!=null?'db-'+_0x2bfd5f:_0x68697c(0x1e6));}export function buildSqlRelativePath(_0x4cce06,_0xc27eb0,_0x1f14ff,_0x584d38,_0x10480b){const _0x430241=a239_0x59c5,_0x59eeb6=buildDbDirectoryName(_0x1f14ff,_0x10480b),_0x2492bf=sanitizeSqlPathSegment(_0x4cce06,_0x430241(0x1df)),_0x4f14f2=sanitizeSqlPathSegment(_0xc27eb0,_0x2492bf);return _0x59eeb6+'/'+_0x2492bf+'_'+_0x4f14f2+getSqlFileExtension(_0x584d38);}function a239_0xc860(){const _0x5309d9=['2944432sRgTLY','unknown-sql','306351fVIPJg','1244312xGeawf','replace','test','sql','mybatisXml','unknown-db','7119078YqFHDU','3015710MsUzlZ','6wtnXTV','259628JwPRSF','144mguerp','1864331wgJcjJ'];a239_0xc860=function(){return _0x5309d9;};return a239_0xc860();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a240_0x365b4b=a240_0x508e;function a240_0x1644(){const _0x2b34fb=['Multiple\x20MyBatis\x20statement\x20wrappers\x20are\x20not\x20supported.','SQL\x20content\x20is\x20empty','INSERT','DELETE','DDL\x20statements\x20are\x20blocked\x20from\x20auto-save','\x20with\x20parameters:\x20','include','\x20statements\x20cannot\x20be\x20auto-saved.\x20Please\x20operate\x20manually\x20on\x20the\x20platform.','where','match','1760464XGhllN','join','Invalid\x20MyBatis\x20XML\x20tag.','UPDATE','error','outer','toLowerCase','length','Invalid\x20MyBatis\x20XML\x20closing\x20tag:\x20</','MyBatis\x20dynamic\x20tag\x20must\x20be\x20inside\x20the\x20statement\x20wrapper:\x20<','Invalid\x20XML\x20entity\x20reference.','from','slice','SELECT','trim','Unclosed\x20MyBatis\x20XML\x20tag:\x20<','MyBatis\x20dynamic\x20tag\x20names\x20must\x20be\x20lowercase:\x20<','^<\x5cs*(?:','set','"','test','has','replace',''','replaceAll','DELETE\x20statements\x20are\x20blocked\x20from\x20auto-save','\x20query\x20targeting\x20','unknown\x20table(s)','Unable\x20to\x20detect\x20SQL\x20type.\x20Please\x20check\x20the\x20SQL\x20content.','tagName','otherwise','push','Unterminated\x20XML\x20comment.','property','matchAll','2229897IdwppD','11483899aubDdW','rawName',')\x5cb','startsWith','reason','6762246dEOVgT','select','MyBatis\x20<property>\x20must\x20be\x20a\x20self-closing\x20direct\x20child\x20of\x20<include>.','includes','WITH','split','choose','pop','sql','<![CDATA[','parseInt','fromCodePoint','Unterminated\x20MyBatis\x20XML\x20tag.','exec',']]>','type','-->','Unsupported\x20MyBatis\x20XML\x20tag:\x20<','bind','UNKNOWN','3169630LgPyOU','CDATA\x20sections\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.','when','<','statementType','XML\x20declarations\x20must\x20precede\x20the\x20MyBatis\x20statement\x20wrapper.','indexOf','SQL\x20contains\x20blocked\x20DELETE\x20or\x20DDL\x20statements','SQL\x20text\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.','delete','Unable\x20to\x20detect\x20SQL\x20type.\x20','1393852wBaIVQ','772281kiZCCS','string','__RABETBASE_MYBATIS_DYNAMIC_START__','add','keys','<!--','isDangerous'];a240_0x1644=function(){return _0x2b34fb;};return a240_0x1644();}(function(_0x32ff68,_0x3bc611){const _0x2dd454=a240_0x508e,_0x4ca39b=_0x32ff68();while(!![]){try{const _0x267ddc=-parseInt(_0x2dd454(0x1bb))/0x1+-parseInt(_0x2dd454(0x1cc))/0x2+parseInt(_0x2dd454(0x195))/0x3+parseInt(_0x2dd454(0x1ba))/0x4+parseInt(_0x2dd454(0x1af))/0x5+-parseInt(_0x2dd454(0x19b))/0x6+parseInt(_0x2dd454(0x196))/0x7;if(_0x267ddc===_0x3bc611)break;else _0x4ca39b['push'](_0x4ca39b['shift']());}catch(_0x478f42){_0x4ca39b['push'](_0x4ca39b['shift']());}}}(a240_0x1644,0x8f3c3));const MYBATIS_OUTER_TAGS=new Map([[a240_0x365b4b(0x19c),'SELECT'],['insert',a240_0x365b4b(0x1c4)],['update',a240_0x365b4b(0x1cf)],[a240_0x365b4b(0x1b8),a240_0x365b4b(0x1c5)]]),MYBATIS_DYNAMIC_TAGS=new Set(['if',a240_0x365b4b(0x1ca),'foreach',a240_0x365b4b(0x1a1),a240_0x365b4b(0x1b1),'otherwise',a240_0x365b4b(0x1da),a240_0x365b4b(0x184),a240_0x365b4b(0x1ad),a240_0x365b4b(0x1c8),a240_0x365b4b(0x193)]),MYBATIS_BRANCH_TAGS=new Set(['if','foreach',a240_0x365b4b(0x1a1),a240_0x365b4b(0x1b1),a240_0x365b4b(0x190)]);export const MYBATIS_DYNAMIC_START_MARKER=a240_0x365b4b(0x1bd);export const MYBATIS_DYNAMIC_END_MARKER='__RABETBASE_MYBATIS_DYNAMIC_END__';export const MYBATIS_INCLUDE_MARKER='__RABETBASE_MYBATIS_INCLUDE_UNRESOLVED__';const UNRESOLVED_SQL_FRAGMENT='__RABETBASE_UNRESOLVED_SQL_FRAGMENT__',MYBATIS_OUTER_TAG_PATTERN=new RegExp(a240_0x365b4b(0x183)+[...MYBATIS_OUTER_TAGS[a240_0x365b4b(0x1bf)]()]['join']('|')+a240_0x365b4b(0x198),'i');export function normalizeSqlForStaticAnalysis(_0x4718a4){const _0x4ff39a=a240_0x365b4b,_0x5cf917=typeof _0x4718a4===_0x4ff39a(0x1bc)?_0x4718a4:'';if(!startsWithMybatisStatementWrapper(_0x5cf917))return{'sql':_0x5cf917,'mode':_0x4ff39a(0x1a3)};let _0x5f7ae1=0x0,_0x118ccc='',_0xd746a1,_0x2873d7=![],_0x122ea2=![];const _0x5c14f7=[];while(_0x5f7ae1<_0x5cf917[_0x4ff39a(0x1d3)]){if(_0x5cf917[_0x4ff39a(0x199)](_0x4ff39a(0x1c0),_0x5f7ae1)){const _0x4cfd8b=_0x5cf917['indexOf'](_0x4ff39a(0x1ab),_0x5f7ae1+0x4);if(_0x4cfd8b<0x0)return invalidMybatisSource(_0x4ff39a(0x192));_0x118ccc+='\x20',_0x5f7ae1=_0x4cfd8b+0x3;continue;}if(_0x5cf917['startsWith'](_0x4ff39a(0x1a4),_0x5f7ae1)){if(!_0x2873d7||_0x122ea2)return invalidMybatisSource(_0x4ff39a(0x1b0));const _0x4f4c52=_0x5cf917[_0x4ff39a(0x1b5)](_0x4ff39a(0x1a9),_0x5f7ae1+0x9);if(_0x4f4c52<0x0)return invalidMybatisSource('Unterminated\x20CDATA\x20section.');_0x118ccc+=_0x5cf917['slice'](_0x5f7ae1+0x9,_0x4f4c52),_0x5f7ae1=_0x4f4c52+0x3;continue;}if(_0x5cf917[_0x4ff39a(0x199)]('<?',_0x5f7ae1)){if(_0x2873d7)return invalidMybatisSource(_0x4ff39a(0x1b4));const _0x36988c=_0x5cf917[_0x4ff39a(0x1b5)]('?>',_0x5f7ae1+0x2);if(_0x36988c<0x0)return invalidMybatisSource('Unterminated\x20XML\x20declaration.');_0x118ccc+='\x20',_0x5f7ae1=_0x36988c+0x2;continue;}if(_0x5cf917[_0x5f7ae1]!=='<'){const _0x5b2a7e=_0x5cf917[_0x4ff39a(0x1b5)]('<',_0x5f7ae1),_0x5ae2c8=_0x5b2a7e<0x0?_0x5cf917['length']:_0x5b2a7e,_0x68a6de=_0x5cf917[_0x4ff39a(0x1d8)](_0x5f7ae1,_0x5ae2c8);if((!_0x2873d7||_0x122ea2)&&_0x68a6de['trim']())return invalidMybatisSource(_0x4ff39a(0x1b7));if(_0x2873d7&&!_0x122ea2){const _0x5d3da7=decodeXmlEntities(_0x68a6de);if(_0x5d3da7===null)return invalidMybatisSource(_0x4ff39a(0x1d6));_0x118ccc+=_0x5d3da7;}else _0x118ccc+='\x20';_0x5f7ae1=_0x5ae2c8;continue;}const _0x2f1181=findXmlTagEnd(_0x5cf917,_0x5f7ae1);if(_0x2f1181<0x0)return invalidMybatisSource(_0x4ff39a(0x1a7));const _0x4f8014=_0x5cf917['slice'](_0x5f7ae1,_0x2f1181+0x1),_0x39134c=/^<\s*(\/?)\s*([A-Za-z][\w:-]*)([\s\S]*?)(\/?)\s*>$/[_0x4ff39a(0x1a8)](_0x4f8014);if(!_0x39134c)return invalidMybatisSource(_0x4ff39a(0x1ce));const _0x2adff6=_0x39134c[0x1]==='/',_0x585c11=_0x39134c[0x2]??'',_0x112ea5=_0x585c11[_0x4ff39a(0x1d2)](),_0xa52901=_0x39134c[0x3]??'',_0x59ffd6=_0x39134c[0x4]==='/',_0x3362f8=MYBATIS_OUTER_TAGS['get'](_0x112ea5);if(!_0x3362f8&&!MYBATIS_DYNAMIC_TAGS['has'](_0x112ea5))return invalidMybatisSource(_0x4ff39a(0x1ac)+_0x112ea5+'>.');if(!_0x3362f8&&_0x585c11!==_0x112ea5)return invalidMybatisSource(_0x4ff39a(0x1dc)+_0x585c11+'>.');if(_0x2adff6){if(_0xa52901[_0x4ff39a(0x1da)]()||_0x59ffd6)return invalidMybatisSource(_0x4ff39a(0x1d4)+_0x585c11+'>.');const _0x20035e=_0x5c14f7['at'](-0x1);if(!_0x20035e||(_0x20035e[_0x4ff39a(0x1d1)]?_0x20035e['tagName']!==_0x112ea5:_0x20035e[_0x4ff39a(0x197)]!==_0x585c11))return invalidMybatisSource('Mismatched\x20MyBatis\x20XML\x20closing\x20tag:\x20</'+_0x585c11+'>.');_0x5c14f7[_0x4ff39a(0x1a2)]();if(_0x20035e[_0x4ff39a(0x1d1)])_0x122ea2=!![];_0x118ccc+=MYBATIS_BRANCH_TAGS[_0x4ff39a(0x187)](_0x112ea5)?'\x20'+MYBATIS_DYNAMIC_END_MARKER+'\x20':'\x20';}else{if(!hasWellFormedXmlAttributes(_0xa52901))return invalidMybatisSource('Invalid\x20attributes\x20on\x20MyBatis\x20XML\x20tag:\x20<'+_0x585c11+'>.');if(_0x112ea5===_0x4ff39a(0x193)&&(!_0x59ffd6||_0x5c14f7['at'](-0x1)?.[_0x4ff39a(0x18f)]!==_0x4ff39a(0x1c8)))return invalidMybatisSource(_0x4ff39a(0x19d));if(_0x3362f8){if(_0x2873d7||_0x5c14f7[_0x4ff39a(0x1d3)]>0x0)return invalidMybatisSource(_0x4ff39a(0x1c2));_0x2873d7=!![],_0x122ea2=_0x59ffd6,_0xd746a1=_0x3362f8;}else{if(!_0x2873d7||_0x122ea2)return invalidMybatisSource(_0x4ff39a(0x1d5)+_0x585c11+'>.');}_0x118ccc+=_0x112ea5==='where'?'\x20WHERE\x20':_0x112ea5===_0x4ff39a(0x184)?'\x20SET\x20':_0x112ea5===_0x4ff39a(0x1c8)?'\x20'+MYBATIS_INCLUDE_MARKER+'\x20':MYBATIS_BRANCH_TAGS[_0x4ff39a(0x187)](_0x112ea5)&&!_0x59ffd6?'\x20'+MYBATIS_DYNAMIC_START_MARKER+'\x20':'\x20',!_0x59ffd6&&_0x5c14f7['push']({'rawName':_0x585c11,'tagName':_0x112ea5,'outer':!!_0x3362f8});}_0x5f7ae1=_0x2f1181+0x1;}if(_0x5c14f7[_0x4ff39a(0x1d3)]>0x0)return invalidMybatisSource(_0x4ff39a(0x1db)+_0x5c14f7['at'](-0x1)?.[_0x4ff39a(0x197)]+'>.');if(!_0x2873d7||!_0x122ea2)return invalidMybatisSource('MyBatis\x20XML\x20must\x20contain\x20exactly\x20one\x20complete\x20statement\x20wrapper.');return{'sql':_0x118ccc['trim'](),'mode':'mybatisXml',..._0xd746a1?{'statementType':_0xd746a1}:{}};}function hasWellFormedXmlAttributes(_0x6f2761){const _0x431cc3=a240_0x365b4b;let _0x26f5d4=0x0;const _0x45d66f=new Set();while(_0x26f5d4<_0x6f2761[_0x431cc3(0x1d3)]){while(_0x26f5d4<_0x6f2761[_0x431cc3(0x1d3)]&&/\s/['test'](_0x6f2761[_0x26f5d4]??''))_0x26f5d4+=0x1;if(_0x26f5d4>=_0x6f2761['length'])return!![];const _0x4d52c1=/^[A-Za-z_:][\w:.-]*/[_0x431cc3(0x1a8)](_0x6f2761['slice'](_0x26f5d4)),_0x25b0fe=_0x4d52c1?.[0x0];if(!_0x25b0fe||_0x45d66f[_0x431cc3(0x187)](_0x25b0fe))return![];_0x45d66f['add'](_0x25b0fe),_0x26f5d4+=_0x25b0fe['length'];while(_0x26f5d4<_0x6f2761[_0x431cc3(0x1d3)]&&/\s/[_0x431cc3(0x186)](_0x6f2761[_0x26f5d4]??''))_0x26f5d4+=0x1;if(_0x6f2761[_0x26f5d4]!=='=')return![];_0x26f5d4+=0x1;while(_0x26f5d4<_0x6f2761[_0x431cc3(0x1d3)]&&/\s/['test'](_0x6f2761[_0x26f5d4]??''))_0x26f5d4+=0x1;const _0x392477=_0x6f2761[_0x26f5d4];if(_0x392477!=='\x22'&&_0x392477!=='\x27')return![];_0x26f5d4+=0x1;const _0x28b13d=_0x6f2761['indexOf'](_0x392477,_0x26f5d4);if(_0x28b13d<0x0)return![];if(decodeXmlEntities(_0x6f2761['slice'](_0x26f5d4,_0x28b13d))===null)return![];_0x26f5d4=_0x28b13d+0x1;}return!![];}function startsWithMybatisStatementWrapper(_0x35b596){const _0x402b5e=a240_0x365b4b;let _0x2b1837=0x0;const _0x531aa8=()=>{const _0xf5c620=a240_0x508e;while(_0x2b1837<_0x35b596[_0xf5c620(0x1d3)]&&/\s/[_0xf5c620(0x186)](_0x35b596[_0x2b1837]??''))_0x2b1837+=0x1;};_0x531aa8();while(_0x2b1837<_0x35b596[_0x402b5e(0x1d3)]){if(_0x35b596[_0x402b5e(0x199)](_0x402b5e(0x1c0),_0x2b1837)){const _0x267666=_0x35b596[_0x402b5e(0x1b5)](_0x402b5e(0x1ab),_0x2b1837+0x4);if(_0x267666<0x0)return!![];_0x2b1837=_0x267666+0x3,_0x531aa8();continue;}if(_0x35b596[_0x402b5e(0x199)]('<?',_0x2b1837)){const _0x39aa62=_0x35b596['indexOf']('?>',_0x2b1837+0x2);if(_0x39aa62<0x0)return!![];_0x2b1837=_0x39aa62+0x2,_0x531aa8();continue;}break;}return MYBATIS_OUTER_TAG_PATTERN[_0x402b5e(0x186)](_0x35b596[_0x402b5e(0x1d8)](_0x2b1837));}function invalidMybatisSource(_0x3a38ab){return{'sql':'','mode':'mybatisXml','error':_0x3a38ab};}function findXmlTagEnd(_0x41ce29,_0x486a58){const _0x5eeb02=a240_0x365b4b;let _0x5efe40;for(let _0x19ccc3=_0x486a58+0x1;_0x19ccc3<_0x41ce29[_0x5eeb02(0x1d3)];_0x19ccc3+=0x1){const _0x16126c=_0x41ce29[_0x19ccc3];if(_0x5efe40){if(_0x16126c===_0x5efe40)_0x5efe40=undefined;continue;}if(_0x16126c==='\x22'||_0x16126c==='\x27'){_0x5efe40=_0x16126c;continue;}if(_0x16126c==='>')return _0x19ccc3;}return-0x1;}function decodeXmlEntities(_0x74cde){let _0xfeb2f1=![];const _0x2c2c60=_0x74cde['replace'](/&(?:#x[0-9a-f]+;|#[0-9]+;|[A-Za-z_:][\w:.-]*;)?/g,_0x5168f6=>{const _0x3aa7a1=a240_0x508e;if(_0x5168f6===_0x3aa7a1(0x1b2))return'<';if(_0x5168f6==='>')return'>';if(_0x5168f6===_0x3aa7a1(0x185))return'\x22';if(_0x5168f6===_0x3aa7a1(0x189))return'\x27';if(_0x5168f6==='&')return'&';const _0x4318cc=/^&#(?:x([0-9a-f]+)|([0-9]+));$/[_0x3aa7a1(0x1a8)](_0x5168f6);if(_0x4318cc){const _0x104964=_0x4318cc[0x1],_0x5158b3=_0x4318cc[0x2],_0x407286=Number[_0x3aa7a1(0x1a5)](_0x104964??_0x5158b3??'',_0x104964?0x10:0xa);if(isValidXmlCharacter(_0x407286))return String[_0x3aa7a1(0x1a6)](_0x407286);}return _0xfeb2f1=!![],'';});return _0xfeb2f1?null:_0x2c2c60;}function isValidXmlCharacter(_0x979c61){return _0x979c61===0x9||_0x979c61===0xa||_0x979c61===0xd||_0x979c61>=0x20&&_0x979c61<=0xd7ff||_0x979c61>=0xe000&&_0x979c61<=0xfffd||_0x979c61>=0x10000&&_0x979c61<=0x10ffff;}function a240_0x508e(_0x36e960,_0x44e6a0){_0x36e960=_0x36e960-0x183;const _0x1644ae=a240_0x1644();let _0x508e90=_0x1644ae[_0x36e960];return _0x508e90;}export function detectSqlType(_0x372572){return detectNormalizedSqlType(normalizeSqlForStaticAnalysis(_0x372572));}function detectNormalizedSqlType(_0xe02c3b){const _0x202f8b=a240_0x365b4b;if(_0xe02c3b[_0x202f8b(0x1d0)])return{'type':_0x202f8b(0x1ae),'isSelectOnly':![],'isDangerous':![],'reason':_0xe02c3b[_0x202f8b(0x1d0)]};if(!_0xe02c3b[_0x202f8b(0x1a3)][_0x202f8b(0x1da)]())return{'type':_0x202f8b(0x1ae),'isSelectOnly':![],'isDangerous':![],'reason':_0x202f8b(0x1c3)};const _0xcb3db3=stripStaticAnalysisMarkers(_0xe02c3b[_0x202f8b(0x1a3)])['replace'](/#\{[^}]*\}/g,'?')['replace'](/\$\{[^}]*\}/g,'?')[_0x202f8b(0x188)](/@[^(\s]+(\([^)]*\))?/g,'')[_0x202f8b(0x188)](/\/\*[\s\S]*?\*\//g,'')[_0x202f8b(0x1da)](),_0x4b1ebb=_0xcb3db3[_0x202f8b(0x1a0)]('\x0a');let _0x5aeae4='';for(const _0xbae638 of _0x4b1ebb){const _0x3b7d9c=_0xbae638[_0x202f8b(0x1da)]();if(!_0x3b7d9c||_0x3b7d9c[_0x202f8b(0x199)]('--')||_0x3b7d9c[_0x202f8b(0x199)]('/*'))continue;_0x5aeae4=_0x3b7d9c;break;}const _0x4713a8=_0x5aeae4['toUpperCase'](),_0x116bbd=_0xe02c3b[_0x202f8b(0x1b3)],_0x5c9691=maskSqlTextForBlockedKeywordScan(_0xcb3db3),_0x2e7ae2=/\b(DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x202f8b(0x186)](_0x5c9691);if(_0x116bbd===_0x202f8b(0x1d9)||!_0x116bbd&&(_0x4713a8[_0x202f8b(0x199)](_0x202f8b(0x1d9))||_0x4713a8[_0x202f8b(0x199)](_0x202f8b(0x19f)))){const _0x32ce65=/\b(INSERT|UPDATE|DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x202f8b(0x186)](_0xcb3db3);return{'type':'SELECT','isSelectOnly':!_0x32ce65,'isDangerous':_0x32ce65,'reason':_0x32ce65?'SQL\x20contains\x20modification\x20statements\x20alongside\x20SELECT':undefined};}if(_0x116bbd===_0x202f8b(0x1c4)||!_0x116bbd&&_0x4713a8[_0x202f8b(0x199)]('INSERT'))return{'type':_0x202f8b(0x1c4),'isSelectOnly':![],'isDangerous':_0x2e7ae2,'reason':_0x2e7ae2?_0x202f8b(0x1b6):undefined};if(_0x116bbd===_0x202f8b(0x1cf)||!_0x116bbd&&_0x4713a8['startsWith']('UPDATE'))return{'type':_0x202f8b(0x1cf),'isSelectOnly':![],'isDangerous':_0x2e7ae2,'reason':_0x2e7ae2?_0x202f8b(0x1b6):undefined};if(_0x116bbd===_0x202f8b(0x1c5)||!_0x116bbd&&_0x4713a8['startsWith'](_0x202f8b(0x1c5)))return{'type':_0x202f8b(0x1c5),'isSelectOnly':![],'isDangerous':!![],'reason':_0x202f8b(0x18b)};if(/^(CREATE|ALTER|DROP|TRUNCATE)/i[_0x202f8b(0x186)](_0x4713a8))return{'type':'DDL','isSelectOnly':![],'isDangerous':!![],'reason':_0x202f8b(0x1c6)};return{'type':'UNKNOWN','isSelectOnly':![],'isDangerous':![]};}function stripStaticAnalysisMarkers(_0x3d7f3d){const _0x545ba4=a240_0x365b4b;return _0x3d7f3d[_0x545ba4(0x18a)](MYBATIS_DYNAMIC_START_MARKER,'\x20')['replaceAll'](MYBATIS_DYNAMIC_END_MARKER,'\x20')['replaceAll'](MYBATIS_INCLUDE_MARKER,'\x20'+UNRESOLVED_SQL_FRAGMENT+'\x20');}function maskSqlTextForBlockedKeywordScan(_0x3132ad){const _0x5bdc6a=a240_0x365b4b;return _0x3132ad[_0x5bdc6a(0x188)](/'(?:''|\\.|[^'])*'/g,'\x20')[_0x5bdc6a(0x188)](/"(?:""|\\.|[^"])*"/g,'\x20')['replace'](/`(?:``|\\.|[^`])*`/g,'\x20')['replace'](/--.*$/gm,'\x20')[_0x5bdc6a(0x188)](/#.*$/gm,'\x20')[_0x5bdc6a(0x188)](/\/\*[\s\S]*?\*\//g,'\x20');}function extractTables(_0x28b119){const _0x5171b8=a240_0x365b4b,_0x155426=_0x28b119[_0x5171b8(0x188)](/#\{[^}]*\}/g,'?')[_0x5171b8(0x188)](/\$\{[^}]*\}/g,'?')[_0x5171b8(0x188)](/'[^']*'/g,'\x27\x27')['replace'](/--.*$/gm,'')[_0x5171b8(0x188)](/\/\*[\s\S]*?\*\//g,''),_0x1cf452=[],_0x436cef=_0x155426[_0x5171b8(0x1cb)](/FROM\s+([^\s,)(]+)/i);addTable(_0x1cf452,_0x436cef?.[0x1]);for(const _0xfb2208 of _0x155426[_0x5171b8(0x194)](/(?:INNER|LEFT|RIGHT|FULL|CROSS)?\s*JOIN\s+([^\s,)(]+)/gi)){addTable(_0x1cf452,_0xfb2208[0x1]);}const _0x44f407=_0x155426[_0x5171b8(0x1cb)](/INTO\s+([^\s(]+)/i);addTable(_0x1cf452,_0x44f407?.[0x1]);const _0x1d6661=_0x155426[_0x5171b8(0x1cb)](/UPDATE\s+([^\s,)(]+)/i);return addTable(_0x1cf452,_0x1d6661?.[0x1]),_0x1cf452;}function addTable(_0x5b8e9e,_0xcbb81b){const _0x2c8a08=a240_0x365b4b,_0x48045d=_0xcbb81b?.[_0x2c8a08(0x188)](/[`"]/g,'');_0x48045d&&_0x48045d!==UNRESOLVED_SQL_FRAGMENT&&!_0x5b8e9e[_0x2c8a08(0x19e)](_0x48045d)&&_0x5b8e9e[_0x2c8a08(0x191)](_0x48045d);}function extractParameters(_0x1df204){const _0xd8919c=a240_0x365b4b,_0x56dc1e=new Set();for(const _0x250b83 of _0x1df204[_0xd8919c(0x194)](/[#$]\{\s*([A-Za-z_][\w.]*)\s*(?=[,}])/g)){if(_0x250b83[0x1])_0x56dc1e[_0xd8919c(0x1be)](_0x250b83[0x1]);}return Array[_0xd8919c(0x1d7)](_0x56dc1e);}export function validateSql(_0x568fd0){const _0x3787a7=a240_0x365b4b,_0x3fe8ae=normalizeSqlForStaticAnalysis(_0x568fd0),_0x568e01=detectNormalizedSqlType(_0x3fe8ae),_0x43db8a=stripStaticAnalysisMarkers(_0x3fe8ae[_0x3787a7(0x1a3)]),_0x3435bf=_0x3fe8ae[_0x3787a7(0x1d0)]?[]:extractTables(_0x43db8a),_0x5d76f2=_0x3fe8ae[_0x3787a7(0x1d0)]?[]:extractParameters(_0x43db8a);if(_0x568e01[_0x3787a7(0x1c1)])return{'valid':![],'sqlType':_0x568e01,'tables':_0x3435bf,'parameters':_0x5d76f2,'message':_0x568e01[_0x3787a7(0x19a)]||_0x568e01[_0x3787a7(0x1aa)]+_0x3787a7(0x1c9)};if(_0x568e01['type']==='UNKNOWN')return{'valid':![],'sqlType':_0x568e01,'tables':_0x3435bf,'parameters':_0x5d76f2,'message':_0x3fe8ae[_0x3787a7(0x1d0)]?_0x3787a7(0x1b9)+_0x3fe8ae[_0x3787a7(0x1d0)]:_0x3787a7(0x18e)};return{'valid':!![],'sqlType':_0x568e01,'tables':_0x3435bf,'parameters':_0x5d76f2,'message':_0x568e01[_0x3787a7(0x1aa)]+_0x3787a7(0x18c)+(_0x3435bf[_0x3787a7(0x1d3)]?_0x3435bf['join'](',\x20'):_0x3787a7(0x18d))+(_0x5d76f2['length']?_0x3787a7(0x1c7)+_0x5d76f2[_0x3787a7(0x1cd)](',\x20'):'')};}
|
|
1
|
+
const a240_0x1111c7=a240_0x3094;(function(_0x6fef45,_0x18b9d2){const _0x5a3358=a240_0x3094,_0x18afa1=_0x6fef45();while(!![]){try{const _0x4dc721=-parseInt(_0x5a3358(0x1ff))/0x1+-parseInt(_0x5a3358(0x206))/0x2*(parseInt(_0x5a3358(0x1f9))/0x3)+-parseInt(_0x5a3358(0x1ec))/0x4+parseInt(_0x5a3358(0x1f5))/0x5*(parseInt(_0x5a3358(0x222))/0x6)+parseInt(_0x5a3358(0x1e9))/0x7*(parseInt(_0x5a3358(0x204))/0x8)+parseInt(_0x5a3358(0x1f4))/0x9*(parseInt(_0x5a3358(0x1da))/0xa)+-parseInt(_0x5a3358(0x1e5))/0xb*(-parseInt(_0x5a3358(0x1dc))/0xc);if(_0x4dc721===_0x18b9d2)break;else _0x18afa1['push'](_0x18afa1['shift']());}catch(_0x1782b6){_0x18afa1['push'](_0x18afa1['shift']());}}}(a240_0x5ab5,0x1f5ed));const MYBATIS_OUTER_TAGS=new Map([[a240_0x1111c7(0x207),'SELECT'],[a240_0x1111c7(0x1e4),a240_0x1111c7(0x215)],[a240_0x1111c7(0x1ed),a240_0x1111c7(0x1fe)],[a240_0x1111c7(0x1f3),'DELETE']]),MYBATIS_DYNAMIC_TAGS=new Set(['if',a240_0x1111c7(0x1d9),a240_0x1111c7(0x1fb),a240_0x1111c7(0x216),'when',a240_0x1111c7(0x1f1),a240_0x1111c7(0x212),a240_0x1111c7(0x200),a240_0x1111c7(0x1d8),'include','property']),MYBATIS_BRANCH_TAGS=new Set(['if',a240_0x1111c7(0x1fb),a240_0x1111c7(0x216),a240_0x1111c7(0x1f7),a240_0x1111c7(0x1f1)]);export const MYBATIS_DYNAMIC_START_MARKER='__RABETBASE_MYBATIS_DYNAMIC_START__';export const MYBATIS_DYNAMIC_END_MARKER=a240_0x1111c7(0x201);export const MYBATIS_INCLUDE_MARKER='__RABETBASE_MYBATIS_INCLUDE_UNRESOLVED__';const UNRESOLVED_SQL_FRAGMENT=a240_0x1111c7(0x205),MYBATIS_OUTER_TAG_PATTERN=new RegExp('^<\x5cs*(?:'+[...MYBATIS_OUTER_TAGS['keys']()][a240_0x1111c7(0x1d3)]('|')+')\x5cb','i');function a240_0x3094(_0x1d8219,_0x534611){_0x1d8219=_0x1d8219-0x1c4;const _0x5ab55e=a240_0x5ab5();let _0x3094a6=_0x5ab55e[_0x1d8219];return _0x3094a6;}export function normalizeSqlForStaticAnalysis(_0x137c1a){const _0x173086=a240_0x1111c7,_0x2aa288=typeof _0x137c1a===_0x173086(0x1e7)?_0x137c1a:'';if(!startsWithMybatisStatementWrapper(_0x2aa288))return{'sql':_0x2aa288,'mode':_0x173086(0x1de)};let _0x88d21e=0x0,_0x731bde='',_0x81dd57,_0x9be2de=![],_0x4a7271=![];const _0x47591c=[];while(_0x88d21e<_0x2aa288['length']){if(_0x2aa288[_0x173086(0x1fc)](_0x173086(0x1d5),_0x88d21e)){const _0x3b9ff8=_0x2aa288[_0x173086(0x20f)](_0x173086(0x210),_0x88d21e+0x4);if(_0x3b9ff8<0x0)return invalidMybatisSource(_0x173086(0x203));_0x731bde+='\x20',_0x88d21e=_0x3b9ff8+0x3;continue;}if(_0x2aa288[_0x173086(0x1fc)](_0x173086(0x214),_0x88d21e)){if(!_0x9be2de||_0x4a7271)return invalidMybatisSource('CDATA\x20sections\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.');const _0x1daf87=_0x2aa288[_0x173086(0x20f)](']]>',_0x88d21e+0x9);if(_0x1daf87<0x0)return invalidMybatisSource(_0x173086(0x1e8));_0x731bde+=_0x2aa288['slice'](_0x88d21e+0x9,_0x1daf87),_0x88d21e=_0x1daf87+0x3;continue;}if(_0x2aa288[_0x173086(0x1fc)]('<?',_0x88d21e)){if(_0x9be2de)return invalidMybatisSource(_0x173086(0x20e));const _0xbc0e4e=_0x2aa288[_0x173086(0x20f)]('?>',_0x88d21e+0x2);if(_0xbc0e4e<0x0)return invalidMybatisSource(_0x173086(0x20d));_0x731bde+='\x20',_0x88d21e=_0xbc0e4e+0x2;continue;}if(_0x2aa288[_0x88d21e]!=='<'){const _0x14963e=_0x2aa288[_0x173086(0x20f)]('<',_0x88d21e),_0x3ed956=_0x14963e<0x0?_0x2aa288['length']:_0x14963e,_0x473a7f=_0x2aa288[_0x173086(0x1e3)](_0x88d21e,_0x3ed956);if((!_0x9be2de||_0x4a7271)&&_0x473a7f['trim']())return invalidMybatisSource(_0x173086(0x20c));if(_0x9be2de&&!_0x4a7271){const _0x5d9df9=decodeXmlEntities(_0x473a7f);if(_0x5d9df9===null)return invalidMybatisSource(_0x173086(0x21b));_0x731bde+=_0x5d9df9;}else _0x731bde+='\x20';_0x88d21e=_0x3ed956;continue;}const _0x1d3e34=findXmlTagEnd(_0x2aa288,_0x88d21e);if(_0x1d3e34<0x0)return invalidMybatisSource('Unterminated\x20MyBatis\x20XML\x20tag.');const _0x5f0db8=_0x2aa288['slice'](_0x88d21e,_0x1d3e34+0x1),_0xaf1629=/^<\s*(\/?)\s*([A-Za-z][\w:-]*)([\s\S]*?)(\/?)\s*>$/[_0x173086(0x1dd)](_0x5f0db8);if(!_0xaf1629)return invalidMybatisSource(_0x173086(0x1cb));const _0x3fa580=_0xaf1629[0x1]==='/',_0x16a3c8=_0xaf1629[0x2]??'',_0x41c27d=_0x16a3c8[_0x173086(0x1db)](),_0x1fe2ca=_0xaf1629[0x3]??'',_0x36cc65=_0xaf1629[0x4]==='/',_0xb27d50=MYBATIS_OUTER_TAGS[_0x173086(0x1f6)](_0x41c27d);if(!_0xb27d50&&!MYBATIS_DYNAMIC_TAGS[_0x173086(0x1cd)](_0x41c27d))return invalidMybatisSource(_0x173086(0x1e6)+_0x41c27d+'>.');if(!_0xb27d50&&_0x16a3c8!==_0x41c27d)return invalidMybatisSource(_0x173086(0x217)+_0x16a3c8+'>.');if(_0x3fa580){if(_0x1fe2ca[_0x173086(0x212)]()||_0x36cc65)return invalidMybatisSource(_0x173086(0x209)+_0x16a3c8+'>.');const _0x1ac4a2=_0x47591c['at'](-0x1);if(!_0x1ac4a2||(_0x1ac4a2[_0x173086(0x21f)]?_0x1ac4a2[_0x173086(0x1ce)]!==_0x41c27d:_0x1ac4a2[_0x173086(0x21a)]!==_0x16a3c8))return invalidMybatisSource(_0x173086(0x224)+_0x16a3c8+'>.');_0x47591c[_0x173086(0x1e2)]();if(_0x1ac4a2[_0x173086(0x21f)])_0x4a7271=!![];_0x731bde+=MYBATIS_BRANCH_TAGS[_0x173086(0x1cd)](_0x41c27d)?'\x20'+MYBATIS_DYNAMIC_END_MARKER+'\x20':'\x20';}else{if(!hasWellFormedXmlAttributes(_0x1fe2ca))return invalidMybatisSource(_0x173086(0x1c7)+_0x16a3c8+'>.');if(_0x41c27d===_0x173086(0x1d6)&&(!_0x36cc65||_0x47591c['at'](-0x1)?.[_0x173086(0x1ce)]!=='include'))return invalidMybatisSource('MyBatis\x20<property>\x20must\x20be\x20a\x20self-closing\x20direct\x20child\x20of\x20<include>.');if(_0xb27d50){if(_0x9be2de||_0x47591c[_0x173086(0x20b)]>0x0)return invalidMybatisSource(_0x173086(0x1d0));_0x9be2de=!![],_0x4a7271=_0x36cc65,_0x81dd57=_0xb27d50;}else{if(!_0x9be2de||_0x4a7271)return invalidMybatisSource('MyBatis\x20dynamic\x20tag\x20must\x20be\x20inside\x20the\x20statement\x20wrapper:\x20<'+_0x16a3c8+'>.');}_0x731bde+=_0x41c27d==='where'?_0x173086(0x1c5):_0x41c27d===_0x173086(0x200)?_0x173086(0x1f2):_0x41c27d===_0x173086(0x1eb)?'\x20'+MYBATIS_INCLUDE_MARKER+'\x20':MYBATIS_BRANCH_TAGS['has'](_0x41c27d)&&!_0x36cc65?'\x20'+MYBATIS_DYNAMIC_START_MARKER+'\x20':'\x20',!_0x36cc65&&_0x47591c['push']({'rawName':_0x16a3c8,'tagName':_0x41c27d,'outer':!!_0xb27d50});}_0x88d21e=_0x1d3e34+0x1;}if(_0x47591c[_0x173086(0x20b)]>0x0)return invalidMybatisSource(_0x173086(0x219)+_0x47591c['at'](-0x1)?.[_0x173086(0x21a)]+'>.');if(!_0x9be2de||!_0x4a7271)return invalidMybatisSource(_0x173086(0x1c9));return{'sql':_0x731bde[_0x173086(0x212)](),'mode':'mybatisXml',..._0x81dd57?{'statementType':_0x81dd57}:{}};}function hasWellFormedXmlAttributes(_0x2f00f0){const _0x581af3=a240_0x1111c7;let _0x1119e5=0x0;const _0x408faf=new Set();while(_0x1119e5<_0x2f00f0['length']){while(_0x1119e5<_0x2f00f0[_0x581af3(0x20b)]&&/\s/[_0x581af3(0x20a)](_0x2f00f0[_0x1119e5]??''))_0x1119e5+=0x1;if(_0x1119e5>=_0x2f00f0['length'])return!![];const _0x50136c=/^[A-Za-z_:][\w:.-]*/[_0x581af3(0x1dd)](_0x2f00f0[_0x581af3(0x1e3)](_0x1119e5)),_0x2a5d45=_0x50136c?.[0x0];if(!_0x2a5d45||_0x408faf['has'](_0x2a5d45))return![];_0x408faf[_0x581af3(0x1ee)](_0x2a5d45),_0x1119e5+=_0x2a5d45[_0x581af3(0x20b)];while(_0x1119e5<_0x2f00f0[_0x581af3(0x20b)]&&/\s/[_0x581af3(0x20a)](_0x2f00f0[_0x1119e5]??''))_0x1119e5+=0x1;if(_0x2f00f0[_0x1119e5]!=='=')return![];_0x1119e5+=0x1;while(_0x1119e5<_0x2f00f0['length']&&/\s/[_0x581af3(0x20a)](_0x2f00f0[_0x1119e5]??''))_0x1119e5+=0x1;const _0x21afff=_0x2f00f0[_0x1119e5];if(_0x21afff!=='\x22'&&_0x21afff!=='\x27')return![];_0x1119e5+=0x1;const _0x25708c=_0x2f00f0['indexOf'](_0x21afff,_0x1119e5);if(_0x25708c<0x0)return![];if(decodeXmlEntities(_0x2f00f0[_0x581af3(0x1e3)](_0x1119e5,_0x25708c))===null)return![];_0x1119e5=_0x25708c+0x1;}return!![];}function startsWithMybatisStatementWrapper(_0x7495e6){const _0xb6c37=a240_0x1111c7;let _0x4e8a55=0x0;const _0x401375=()=>{const _0x45b359=a240_0x3094;while(_0x4e8a55<_0x7495e6['length']&&/\s/[_0x45b359(0x20a)](_0x7495e6[_0x4e8a55]??''))_0x4e8a55+=0x1;};_0x401375();while(_0x4e8a55<_0x7495e6['length']){if(_0x7495e6[_0xb6c37(0x1fc)]('<!--',_0x4e8a55)){const _0x5a472f=_0x7495e6[_0xb6c37(0x20f)](_0xb6c37(0x210),_0x4e8a55+0x4);if(_0x5a472f<0x0)return!![];_0x4e8a55=_0x5a472f+0x3,_0x401375();continue;}if(_0x7495e6[_0xb6c37(0x1fc)]('<?',_0x4e8a55)){const _0xaf99ef=_0x7495e6[_0xb6c37(0x20f)]('?>',_0x4e8a55+0x2);if(_0xaf99ef<0x0)return!![];_0x4e8a55=_0xaf99ef+0x2,_0x401375();continue;}break;}return MYBATIS_OUTER_TAG_PATTERN[_0xb6c37(0x20a)](_0x7495e6[_0xb6c37(0x1e3)](_0x4e8a55));}function invalidMybatisSource(_0x59b86a){const _0x451d89=a240_0x1111c7;return{'sql':'','mode':_0x451d89(0x21e),'error':_0x59b86a};}function findXmlTagEnd(_0xc65bbe,_0x4c9f69){const _0xec8bc6=a240_0x1111c7;let _0x28fdcc;for(let _0x2da6d4=_0x4c9f69+0x1;_0x2da6d4<_0xc65bbe[_0xec8bc6(0x20b)];_0x2da6d4+=0x1){const _0x430ca3=_0xc65bbe[_0x2da6d4];if(_0x28fdcc){if(_0x430ca3===_0x28fdcc)_0x28fdcc=undefined;continue;}if(_0x430ca3==='\x22'||_0x430ca3==='\x27'){_0x28fdcc=_0x430ca3;continue;}if(_0x430ca3==='>')return _0x2da6d4;}return-0x1;}function decodeXmlEntities(_0x528a6f){const _0x2e430c=a240_0x1111c7;let _0x26bd2e=![];const _0x4d3d9e=_0x528a6f[_0x2e430c(0x21d)](/&(?:#x[0-9a-f]+;|#[0-9]+;|[A-Za-z_:][\w:.-]*;)?/g,_0x3aac28=>{const _0x873a50=_0x2e430c;if(_0x3aac28===_0x873a50(0x1fd))return'<';if(_0x3aac28===_0x873a50(0x1df))return'>';if(_0x3aac28===_0x873a50(0x1e0))return'\x22';if(_0x3aac28===''')return'\x27';if(_0x3aac28==='&')return'&';const _0x100314=/^&#(?:x([0-9a-f]+)|([0-9]+));$/[_0x873a50(0x1dd)](_0x3aac28);if(_0x100314){const _0x243b42=_0x100314[0x1],_0xebc7cf=_0x100314[0x2],_0x2e6801=Number[_0x873a50(0x1ef)](_0x243b42??_0xebc7cf??'',_0x243b42?0x10:0xa);if(isValidXmlCharacter(_0x2e6801))return String[_0x873a50(0x1d1)](_0x2e6801);}return _0x26bd2e=!![],'';});return _0x26bd2e?null:_0x4d3d9e;}function a240_0x5ab5(){const _0xc27b1b=['3bHyTcB','Unable\x20to\x20detect\x20SQL\x20type.\x20Please\x20check\x20the\x20SQL\x20content.','foreach','startsWith','<','UPDATE','230912PCAoLy','set','__RABETBASE_MYBATIS_DYNAMIC_END__','reason','Unterminated\x20XML\x20comment.','16JbDYZs','__RABETBASE_UNRESOLVED_SQL_FRAGMENT__','14156VGqrmQ','select','replaceAll','Invalid\x20MyBatis\x20XML\x20closing\x20tag:\x20</','test','length','SQL\x20text\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.','Unterminated\x20XML\x20declaration.','XML\x20declarations\x20must\x20precede\x20the\x20MyBatis\x20statement\x20wrapper.','indexOf','-->','matchAll','trim','match','<![CDATA[','INSERT','choose','MyBatis\x20dynamic\x20tag\x20names\x20must\x20be\x20lowercase:\x20<','DELETE','Unclosed\x20MyBatis\x20XML\x20tag:\x20<','rawName','Invalid\x20XML\x20entity\x20reference.','from','replace','mybatisXml','outer','DDL','UNKNOWN','1230942eHVzLr','isDangerous','Mismatched\x20MyBatis\x20XML\x20closing\x20tag:\x20</','push','\x20WHERE\x20','SELECT','Invalid\x20attributes\x20on\x20MyBatis\x20XML\x20tag:\x20<','type','MyBatis\x20XML\x20must\x20contain\x20exactly\x20one\x20complete\x20statement\x20wrapper.','WITH','Invalid\x20MyBatis\x20XML\x20tag.','Unable\x20to\x20detect\x20SQL\x20type.\x20','has','tagName','SQL\x20contains\x20modification\x20statements\x20alongside\x20SELECT','Multiple\x20MyBatis\x20statement\x20wrappers\x20are\x20not\x20supported.','fromCodePoint','unknown\x20table(s)','join','\x20statements\x20cannot\x20be\x20auto-saved.\x20Please\x20operate\x20manually\x20on\x20the\x20platform.','<!--','property','\x20with\x20parameters:\x20','bind','where','30aaBWGR','toLowerCase','15084XdVdSP','exec','sql','>','"','error','pop','slice','insert','1430jrwJbG','Unsupported\x20MyBatis\x20XML\x20tag:\x20<','string','Unterminated\x20CDATA\x20section.','471968FXfeMC','\x20query\x20targeting\x20','include','652344gGHjer','update','add','parseInt','SQL\x20contains\x20blocked\x20DELETE\x20or\x20DDL\x20statements','otherwise','\x20SET\x20','delete','78462hcgvtS','5ZrdGah','get','when','DDL\x20statements\x20are\x20blocked\x20from\x20auto-save'];a240_0x5ab5=function(){return _0xc27b1b;};return a240_0x5ab5();}function isValidXmlCharacter(_0x8f6bf9){return _0x8f6bf9===0x9||_0x8f6bf9===0xa||_0x8f6bf9===0xd||_0x8f6bf9>=0x20&&_0x8f6bf9<=0xd7ff||_0x8f6bf9>=0xe000&&_0x8f6bf9<=0xfffd||_0x8f6bf9>=0x10000&&_0x8f6bf9<=0x10ffff;}export function detectSqlType(_0x4d23d2){return detectNormalizedSqlType(normalizeSqlForStaticAnalysis(_0x4d23d2));}function detectNormalizedSqlType(_0xd82c18){const _0x27d4e1=a240_0x1111c7;if(_0xd82c18[_0x27d4e1(0x1e1)])return{'type':'UNKNOWN','isSelectOnly':![],'isDangerous':![],'reason':_0xd82c18['error']};if(!_0xd82c18[_0x27d4e1(0x1de)][_0x27d4e1(0x212)]())return{'type':_0x27d4e1(0x221),'isSelectOnly':![],'isDangerous':![],'reason':'SQL\x20content\x20is\x20empty'};const _0x5d7dd2=stripStaticAnalysisMarkers(_0xd82c18[_0x27d4e1(0x1de)])[_0x27d4e1(0x21d)](/#\{[^}]*\}/g,'?')[_0x27d4e1(0x21d)](/\$\{[^}]*\}/g,'?')[_0x27d4e1(0x21d)](/@[^(\s]+(\([^)]*\))?/g,'')[_0x27d4e1(0x21d)](/\/\*[\s\S]*?\*\//g,'')[_0x27d4e1(0x212)](),_0x320396=_0x5d7dd2['split']('\x0a');let _0x530eb0='';for(const _0x2732b6 of _0x320396){const _0x38cf16=_0x2732b6[_0x27d4e1(0x212)]();if(!_0x38cf16||_0x38cf16[_0x27d4e1(0x1fc)]('--')||_0x38cf16[_0x27d4e1(0x1fc)]('/*'))continue;_0x530eb0=_0x38cf16;break;}const _0x43d3f9=_0x530eb0['toUpperCase'](),_0x2612c0=_0xd82c18['statementType'],_0x178b28=maskSqlTextForBlockedKeywordScan(_0x5d7dd2),_0x3c67e1=/\b(DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x27d4e1(0x20a)](_0x178b28);if(_0x2612c0===_0x27d4e1(0x1c6)||!_0x2612c0&&(_0x43d3f9['startsWith'](_0x27d4e1(0x1c6))||_0x43d3f9[_0x27d4e1(0x1fc)](_0x27d4e1(0x1ca)))){const _0x33dc5b=/\b(INSERT|UPDATE|DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x27d4e1(0x20a)](_0x5d7dd2);return{'type':_0x27d4e1(0x1c6),'isSelectOnly':!_0x33dc5b,'isDangerous':_0x33dc5b,'reason':_0x33dc5b?_0x27d4e1(0x1cf):undefined};}if(_0x2612c0===_0x27d4e1(0x215)||!_0x2612c0&&_0x43d3f9[_0x27d4e1(0x1fc)](_0x27d4e1(0x215)))return{'type':_0x27d4e1(0x215),'isSelectOnly':![],'isDangerous':_0x3c67e1,'reason':_0x3c67e1?'SQL\x20contains\x20blocked\x20DELETE\x20or\x20DDL\x20statements':undefined};if(_0x2612c0===_0x27d4e1(0x1fe)||!_0x2612c0&&_0x43d3f9[_0x27d4e1(0x1fc)](_0x27d4e1(0x1fe)))return{'type':_0x27d4e1(0x1fe),'isSelectOnly':![],'isDangerous':_0x3c67e1,'reason':_0x3c67e1?_0x27d4e1(0x1f0):undefined};if(_0x2612c0==='DELETE'||!_0x2612c0&&_0x43d3f9['startsWith'](_0x27d4e1(0x218)))return{'type':_0x27d4e1(0x218),'isSelectOnly':![],'isDangerous':!![],'reason':'DELETE\x20statements\x20are\x20blocked\x20from\x20auto-save'};if(/^(CREATE|ALTER|DROP|TRUNCATE)/i[_0x27d4e1(0x20a)](_0x43d3f9))return{'type':_0x27d4e1(0x220),'isSelectOnly':![],'isDangerous':!![],'reason':_0x27d4e1(0x1f8)};return{'type':'UNKNOWN','isSelectOnly':![],'isDangerous':![]};}function stripStaticAnalysisMarkers(_0x162a62){const _0x2b19f8=a240_0x1111c7;return _0x162a62['replaceAll'](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x2b19f8(0x208)](MYBATIS_DYNAMIC_END_MARKER,'\x20')[_0x2b19f8(0x208)](MYBATIS_INCLUDE_MARKER,'\x20'+UNRESOLVED_SQL_FRAGMENT+'\x20');}function maskSqlTextForBlockedKeywordScan(_0x23f8d9){const _0x3173c2=a240_0x1111c7;return _0x23f8d9[_0x3173c2(0x21d)](/'(?:''|\\.|[^'])*'/g,'\x20')[_0x3173c2(0x21d)](/"(?:""|\\.|[^"])*"/g,'\x20')['replace'](/`(?:``|\\.|[^`])*`/g,'\x20')[_0x3173c2(0x21d)](/--.*$/gm,'\x20')['replace'](/#.*$/gm,'\x20')['replace'](/\/\*[\s\S]*?\*\//g,'\x20');}function extractTables(_0x2f17cc){const _0x3a83b4=a240_0x1111c7,_0x3bfe17=_0x2f17cc[_0x3a83b4(0x21d)](/#\{[^}]*\}/g,'?')['replace'](/\$\{[^}]*\}/g,'?')[_0x3a83b4(0x21d)](/'[^']*'/g,'\x27\x27')[_0x3a83b4(0x21d)](/--.*$/gm,'')[_0x3a83b4(0x21d)](/\/\*[\s\S]*?\*\//g,''),_0x40f5fc=[],_0x1a7928=_0x3bfe17[_0x3a83b4(0x213)](/FROM\s+([^\s,)(]+)/i);addTable(_0x40f5fc,_0x1a7928?.[0x1]);for(const _0x4b8402 of _0x3bfe17[_0x3a83b4(0x211)](/(?:INNER|LEFT|RIGHT|FULL|CROSS)?\s*JOIN\s+([^\s,)(]+)/gi)){addTable(_0x40f5fc,_0x4b8402[0x1]);}const _0x54ab13=_0x3bfe17[_0x3a83b4(0x213)](/INTO\s+([^\s(]+)/i);addTable(_0x40f5fc,_0x54ab13?.[0x1]);const _0x32e272=_0x3bfe17[_0x3a83b4(0x213)](/UPDATE\s+([^\s,)(]+)/i);return addTable(_0x40f5fc,_0x32e272?.[0x1]),_0x40f5fc;}function addTable(_0x3aa9a6,_0xd7ea27){const _0xfddd66=a240_0x1111c7,_0x2f25b9=_0xd7ea27?.['replace'](/[`"]/g,'');_0x2f25b9&&_0x2f25b9!==UNRESOLVED_SQL_FRAGMENT&&!_0x3aa9a6['includes'](_0x2f25b9)&&_0x3aa9a6[_0xfddd66(0x1c4)](_0x2f25b9);}function extractParameters(_0x4d30fc){const _0x1abbd2=a240_0x1111c7,_0x1ccd6b=new Set();for(const _0x3bfc0c of _0x4d30fc[_0x1abbd2(0x211)](/[#$]\{\s*([A-Za-z_][\w.]*)\s*(?=[,}])/g)){if(_0x3bfc0c[0x1])_0x1ccd6b[_0x1abbd2(0x1ee)](_0x3bfc0c[0x1]);}return Array[_0x1abbd2(0x21c)](_0x1ccd6b);}export function validateSql(_0x138ad3){const _0x24f709=a240_0x1111c7,_0x11fe44=normalizeSqlForStaticAnalysis(_0x138ad3),_0x47dd7e=detectNormalizedSqlType(_0x11fe44),_0x299113=stripStaticAnalysisMarkers(_0x11fe44[_0x24f709(0x1de)]),_0x1b6d5f=_0x11fe44[_0x24f709(0x1e1)]?[]:extractTables(_0x299113),_0x25ea05=_0x11fe44['error']?[]:extractParameters(_0x299113);if(_0x47dd7e[_0x24f709(0x223)])return{'valid':![],'sqlType':_0x47dd7e,'tables':_0x1b6d5f,'parameters':_0x25ea05,'message':_0x47dd7e[_0x24f709(0x202)]||_0x47dd7e['type']+_0x24f709(0x1d4)};if(_0x47dd7e['type']===_0x24f709(0x221))return{'valid':![],'sqlType':_0x47dd7e,'tables':_0x1b6d5f,'parameters':_0x25ea05,'message':_0x11fe44[_0x24f709(0x1e1)]?_0x24f709(0x1cc)+_0x11fe44['error']:_0x24f709(0x1fa)};return{'valid':!![],'sqlType':_0x47dd7e,'tables':_0x1b6d5f,'parameters':_0x25ea05,'message':_0x47dd7e[_0x24f709(0x1c8)]+_0x24f709(0x1ea)+(_0x1b6d5f[_0x24f709(0x20b)]?_0x1b6d5f[_0x24f709(0x1d3)](',\x20'):_0x24f709(0x1d2))+(_0x25ea05[_0x24f709(0x20b)]?_0x24f709(0x1d7)+_0x25ea05[_0x24f709(0x1d3)](',\x20'):'')};}
|
package/lib/errors.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a241_0x4be476=a241_0x22a5;(function(_0x1547c7,_0x16a60c){const _0x311577=a241_0x22a5,_0x3b51db=_0x1547c7();while(!![]){try{const _0x432c05=-parseInt(_0x311577(0x1ef))/0x1*(-parseInt(_0x311577(0x1eb))/0x2)+-parseInt(_0x311577(0x1ed))/0x3+-parseInt(_0x311577(0x1f7))/0x4*(parseInt(_0x311577(0x1f6))/0x5)+parseInt(_0x311577(0x1f4))/0x6+-parseInt(_0x311577(0x1ee))/0x7+-parseInt(_0x311577(0x1ea))/0x8*(-parseInt(_0x311577(0x1f0))/0x9)+-parseInt(_0x311577(0x1f8))/0xa*(-parseInt(_0x311577(0x1ec))/0xb);if(_0x432c05===_0x16a60c)break;else _0x3b51db['push'](_0x3b51db['shift']());}catch(_0x4270d1){_0x3b51db['push'](_0x3b51db['shift']());}}}(a241_0x2c2f,0x8d34c));import{CliError,createCliErrors}from'@lovrabet/cli-framework';import{CLI_BIN_NAME}from'./constant/cli.js';export{CliError};function a241_0x2c2f(){const _0x293bc8=['\x20init\x20--appcode\x20<code>`\x20or\x20pass\x20--appcode.','1172590xgUqPZ','4LsaTuX','530qBwapG','\x20auth`\x20to\x20login\x20first.','join','Set\x20appcode\x20via\x20`','8BwxAYR','27946IndEAH','803VFdwZR','2006961STCxgu','1259678VLycIN','61HTMFBY','2107683VtNlXV','Run\x20`','\x0a\x20\x20\x20\x20\x20\x20\x20','\x20init\x20--appcode\x20<code>\x20--global`\x20registers\x20globally\x20so\x20you\x20can\x20use\x20it\x20from\x20anywhere.','3428580Eyuczb'];a241_0x2c2f=function(){return _0x293bc8;};return a241_0x2c2f();}function a241_0x22a5(_0x50d085,_0x4bb4d2){_0x50d085=_0x50d085-0x1ea;const _0x2c2f3f=a241_0x2c2f();let _0x22a59b=_0x2c2f3f[_0x50d085];return _0x22a59b;}export const CliErrors=createCliErrors({'cliBinName':CLI_BIN_NAME,'authRequiredHint':a241_0x4be476(0x1f1)+CLI_BIN_NAME+a241_0x4be476(0x1f9),'configMissingHint':[a241_0x4be476(0x1fb)+CLI_BIN_NAME+a241_0x4be476(0x1f5),'Tip:\x20`'+CLI_BIN_NAME+a241_0x4be476(0x1f3)][a241_0x4be476(0x1fa)](a241_0x4be476(0x1f2)),'notInProjectHint':'Run\x20this\x20command\x20inside\x20a\x20project\x20with\x20.rabetbase.json\x20file.'});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5d4b4d,_0x181984){const _0x339ed7=a242_0x2878,_0x40a943=_0x5d4b4d();while(!![]){try{const _0x4ca1c7=-parseInt(_0x339ed7(0xa2))/0x1+-parseInt(_0x339ed7(0x9c))/0x2*(parseInt(_0x339ed7(0x9d))/0x3)+-parseInt(_0x339ed7(0xa4))/0x4+-parseInt(_0x339ed7(0xa1))/0x5+parseInt(_0x339ed7(0xa5))/0x6+parseInt(_0x339ed7(0xa3))/0x7+parseInt(_0x339ed7(0xa6))/0x8;if(_0x4ca1c7===_0x181984)break;else _0x40a943['push'](_0x40a943['shift']());}catch(_0x6f25df){_0x40a943['push'](_0x40a943['shift']());}}}(a242_0x358f,0x34c01));import{DEFAULT_COMMAND_OUTPUT_FORMAT}from'../constant/defaults.js';import{buildAllFlags as a242_0x48fcc2}from'@lovrabet/cli-framework';function a242_0x358f(){const _0x2a1c43=['3634816QKiFsG','123402vqAcuY','12XMgPgO','name','yes','map','1184990bSzSyN','164439IrsATW','1381786dldeCk','199196nIRrdK','1574130sSBaIA'];a242_0x358f=function(){return _0x2a1c43;};return a242_0x358f();}function a242_0x2878(_0x15f8c0,_0x1efe36){_0x15f8c0=_0x15f8c0-0x9c;const _0x358fff=a242_0x358f();let _0x287898=_0x358fff[_0x15f8c0];return _0x287898;}import{EXPLICIT_YES_FLAG_DESCRIPTION,requiresExplicitYes}from'../framework/explicit-yes.js';export function buildAllFlags(_0x1cc0df){const _0x45a2f1=a242_0x2878,_0x5d366f=a242_0x48fcc2(_0x1cc0df,{'defaultOutputFormat':DEFAULT_COMMAND_OUTPUT_FORMAT});if(!requiresExplicitYes(_0x1cc0df))return _0x5d366f;return _0x5d366f[_0x45a2f1(0xa0)](_0x170324=>_0x170324[_0x45a2f1(0x9e)]===_0x45a2f1(0x9f)?{..._0x170324,'description':EXPLICIT_YES_FLAG_DESCRIPTION}:_0x170324);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4556f2,_0x15f99a){var _0x367861=a243_0x27fc,_0x361423=_0x4556f2();while(!![]){try{var _0x420b07=parseInt(_0x367861(0xb2))/0x1+-parseInt(_0x367861(0xb6))/0x2+-parseInt(_0x367861(0xb5))/0x3*(-parseInt(_0x367861(0xb8))/0x4)+parseInt(_0x367861(0xba))/0x5+-parseInt(_0x367861(0xb1))/0x6+-parseInt(_0x367861(0xb9))/0x7+-parseInt(_0x367861(0xb7))/0x8*(-parseInt(_0x367861(0xb4))/0x9);if(_0x420b07===_0x15f99a)break;else _0x361423['push'](_0x361423['shift']());}catch(_0xab18e){_0x361423['push'](_0x361423['shift']());}}}(a243_0x55d6,0x76aa7));function a243_0x27fc(_0x316d74,_0x5acc0f){_0x316d74=_0x316d74-0xaf;var _0x55d6d7=a243_0x55d6();var _0x27fc58=_0x55d6d7[_0x316d74];return _0x27fc58;}import{resolveOutputConfig}from'@lovrabet/cli-framework';export function usesStructuredErrorOutput(_0x3c2915){var _0x5bea28=a243_0x27fc;return _0x3c2915?.[_0x5bea28(0xbb)]===!![];}export function resolveErrorOutputFormat(_0xc2d261){var _0x8939a8=a243_0x27fc;if(!_0xc2d261['def'])return _0xc2d261[_0x8939a8(0xb3)]??'compress';return resolveOutputConfig({'flags':_0xc2d261[_0x8939a8(0xaf)]??{},'def':_0xc2d261[_0x8939a8(0xb0)],'configDefault':_0xc2d261['defaultFormat']})['format'];}function a243_0x55d6(){var _0x218f7a=['8715213RHmJsp','116916BDeokP','1129944BMZscT','8OoQYCV','16VQUtUI','2868131TERSDi','3523925iTmvlv','structuredErrors','flags','def','5676516lRgiDD','577816JzfTvm','defaultFormat'];a243_0x55d6=function(){return _0x218f7a;};return a243_0x55d6();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a244_0x343c85=a244_0x3d99;(function(_0x4b733f,_0x1ca24b){const _0x41d865=a244_0x3d99,_0x2b5ec7=_0x4b733f();while(!![]){try{const _0x460019=-parseInt(_0x41d865(0x145))/0x1*(-parseInt(_0x41d865(0x140))/0x2)+parseInt(_0x41d865(0x14e))/0x3*(parseInt(_0x41d865(0x149))/0x4)+parseInt(_0x41d865(0x146))/0x5*(-parseInt(_0x41d865(0x148))/0x6)+parseInt(_0x41d865(0x13d))/0x7*(parseInt(_0x41d865(0x142))/0x8)+parseInt(_0x41d865(0x14a))/0x9*(-parseInt(_0x41d865(0x147))/0xa)+parseInt(_0x41d865(0x13e))/0xb*(parseInt(_0x41d865(0x14c))/0xc)+-parseInt(_0x41d865(0x14f))/0xd;if(_0x460019===_0x1ca24b)break;else _0x2b5ec7['push'](_0x2b5ec7['shift']());}catch(_0x1d3f0d){_0x2b5ec7['push'](_0x2b5ec7['shift']());}}}(a244_0x5504,0x62822));const EXPLICIT_YES_COMMANDS=new Set([a244_0x343c85(0x141),'kb\x20delete',a244_0x343c85(0x143),a244_0x343c85(0x144)]);export const EXPLICIT_YES_FLAG_DESCRIPTION='Required\x20for\x20execution\x20after\x20reviewing\x20the\x20--dry-run\x20plan';function a244_0x3d99(_0x1a9944,_0x1de047){_0x1a9944=_0x1a9944-0x13d;const _0x5504bf=a244_0x5504();let _0x3d9910=_0x5504bf[_0x1a9944];return _0x3d9910;}export function requiresExplicitYes(_0x363c0f){const _0x357255=a244_0x343c85;return EXPLICIT_YES_COMMANDS[_0x357255(0x13f)](_0x363c0f[_0x357255(0x14b)]+'\x20'+_0x363c0f[_0x357255(0x14d)]);}function a244_0x5504(){const _0xc30d50=['5SPRdWf','10dLrfuQ','235614mgutmS','1634776pELxQG','5636277LAHxJy','service','1770792BjmZkg','command','3hKnVBW','11554439oNvoJO','7cGOUNp','44WEGqCM','has','44bABhAT','menu\x20delete','6070312uMRzHk','notification\x20config-update','notification\x20config-delete','9094ILiXEn'];a244_0x5504=function(){return _0xc30d50;};return a244_0x5504();}
|
package/lib/framework/flags.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a245_0x2f813d=a245_0x2adf;(function(_0x21f545,_0x3e9346){const _0x295bd9=a245_0x2adf,_0x351aab=_0x21f545();while(!![]){try{const _0x214d0b=parseInt(_0x295bd9(0x10b))/0x1+parseInt(_0x295bd9(0x10c))/0x2*(-parseInt(_0x295bd9(0x106))/0x3)+-parseInt(_0x295bd9(0x10e))/0x4+parseInt(_0x295bd9(0x107))/0x5*(parseInt(_0x295bd9(0x10a))/0x6)+parseInt(_0x295bd9(0x104))/0x7*(parseInt(_0x295bd9(0x10d))/0x8)+parseInt(_0x295bd9(0x105))/0x9*(parseInt(_0x295bd9(0x10f))/0xa)+parseInt(_0x295bd9(0x109))/0xb*(-parseInt(_0x295bd9(0x108))/0xc);if(_0x214d0b===_0x3e9346)break;else _0x351aab['push'](_0x351aab['shift']());}catch(_0x390622){_0x351aab['push'](_0x351aab['shift']());}}}(a245_0x3b7e,0x30f12));import{createFlagHelpers}from'@lovrabet/cli-framework';function a245_0x3b7e(){const _0xbeb030=['285424KODOiG','3505430ZBgHiV','parseFlags','40236QymYdS','9ZhSpyj','106947OWxcgm','20fVSORX','5802228pidsgX','11cKMCBZ','262506rTxwPF','247095cCOTDH','10ZbdDfu','224bcSyHf'];a245_0x3b7e=function(){return _0xbeb030;};return a245_0x3b7e();}import{CliErrors}from'../errors.js';const helpers=createFlagHelpers(CliErrors);function a245_0x2adf(_0x41333e,_0x52a879){_0x41333e=_0x41333e-0x103;const _0x3b7e30=a245_0x3b7e();let _0x2adf89=_0x3b7e30[_0x41333e];return _0x2adf89;}export const parseFlags=helpers[a245_0x2f813d(0x103)];export const validateFlags=helpers['validateFlags'];
|
package/lib/framework/help.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a246_0x18ef29=a246_0x19cb;(function(_0x5fe4e,_0x55700c){const _0x13c043=a246_0x19cb,_0x541330=_0x5fe4e();while(!![]){try{const _0xeab4d0=parseInt(_0x13c043(0xcb))/0x1*(parseInt(_0x13c043(0xc1))/0x2)+-parseInt(_0x13c043(0xc7))/0x3+parseInt(_0x13c043(0xcd))/0x4+-parseInt(_0x13c043(0xc2))/0x5*(parseInt(_0x13c043(0xbf))/0x6)+parseInt(_0x13c043(0xc3))/0x7*(-parseInt(_0x13c043(0xc4))/0x8)+parseInt(_0x13c043(0xce))/0x9*(-parseInt(_0x13c043(0xc5))/0xa)+-parseInt(_0x13c043(0xcf))/0xb*(-parseInt(_0x13c043(0xca))/0xc);if(_0xeab4d0===_0x55700c)break;else _0x541330['push'](_0x541330['shift']());}catch(_0x40af1b){_0x541330['push'](_0x541330['shift']());}}}(a246_0x351b,0xcfcfc));function a246_0x19cb(_0x1a7fd7,_0x101ffc){_0x1a7fd7=_0x1a7fd7-0xbe;const _0x351bc8=a246_0x351b();let _0x19cb81=_0x351bc8[_0x1a7fd7];return _0x19cb81;}function a246_0x351b(){const _0xb3c5b8=['1481592WPZjFK','225AcBvgV','28315639NhANsC','Requires\x20appcode\x20(set\x20via\x20`','generateCommandHelp','\x20workspace\x20init`\x20or\x20--appcode).','\x20[args]\x20[flags]','generateServiceHelp','12AhSrPH','Requires\x20explicit\x20--yes\x20for\x20execution;\x20use\x20--dry-run\x20to\x20preview.','4ydhhNJ','144455RCqXQu','5351024zIqwTV','16ydSBKI','534500zXHmjg','get','1725675iaynJF','generateFullHelp','replace','12SwXAlj','702385TQRSzG','Requires\x20--yes\x20to\x20confirm,\x20or\x20interactive\x20prompt.'];a246_0x351b=function(){return _0xb3c5b8;};return a246_0x351b();}import{createHelpGenerators}from'@lovrabet/cli-framework';import{buildAllFlags}from'../framework/build-all-flags.js';import{serviceRegistry,serviceGroups,getServiceEntry}from'../commands/registry.js';import{CLI_BIN_NAME,CLI_DISPLAY_NAME,GLOBAL_FLAGS}from'../constant/cli.js';import{requiresExplicitYes}from'../framework/explicit-yes.js';const generators=createHelpGenerators({'cliBinName':CLI_BIN_NAME,'cliDisplayName':CLI_DISPLAY_NAME,'globalFlags':GLOBAL_FLAGS,'serviceRegistry':serviceRegistry,'getServiceEntry':getServiceEntry,'getServiceDefinitions':_0x466c84=>serviceGroups[a246_0x18ef29(0xc6)](_0x466c84),'buildAllFlags':buildAllFlags,'appPrerequisiteText':a246_0x18ef29(0xd0)+CLI_BIN_NAME+a246_0x18ef29(0xd2),'serviceUsageSuffix':a246_0x18ef29(0xd3)});export function generateCommandHelp(_0x2e6d15){const _0x4eaa8b=a246_0x18ef29,_0x5b7441=generators[_0x4eaa8b(0xd1)](_0x2e6d15);if(!requiresExplicitYes(_0x2e6d15))return _0x5b7441;return _0x5b7441[_0x4eaa8b(0xc9)](_0x4eaa8b(0xcc),_0x4eaa8b(0xc0));}export const generateServiceHelp=generators[a246_0x18ef29(0xbe)];export const generateFullHelp=generators[a246_0x18ef29(0xc8)];
|
package/lib/framework/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x291498,_0x1556a6){var _0x38e859=a247_0x7e37,_0x1e25a9=_0x291498();while(!![]){try{var _0x272f25=-parseInt(_0x38e859(0xfa))/0x1*(-parseInt(_0x38e859(0xf6))/0x2)+-parseInt(_0x38e859(0xf2))/0x3*(-parseInt(_0x38e859(0xf1))/0x4)+parseInt(_0x38e859(0xf4))/0x5+parseInt(_0x38e859(0xf5))/0x6+-parseInt(_0x38e859(0xf8))/0x7*(parseInt(_0x38e859(0xf0))/0x8)+parseInt(_0x38e859(0xf3))/0x9*(parseInt(_0x38e859(0xf7))/0xa)+-parseInt(_0x38e859(0xf9))/0xb;if(_0x272f25===_0x1556a6)break;else _0x1e25a9['push'](_0x1e25a9['shift']());}catch(_0x2d95fd){_0x1e25a9['push'](_0x1e25a9['shift']());}}}(a247_0x1170,0x99ba6));export{runCommand}from'../framework/runner.js';export{parseFlags,validateFlags}from'../framework/flags.js';export{formatOutput}from'../framework/output.js';function a247_0x7e37(_0x200376,_0x36dc3a){_0x200376=_0x200376-0xf0;var _0x11700f=a247_0x1170();var _0x7e37d3=_0x11700f[_0x200376];return _0x7e37d3;}export{generateCommandHelp,generateServiceHelp,generateFullHelp}from'../framework/help.js';function a247_0x1170(){var _0x3428a7=['7332304SMNJvE','4888096kLelBx','3lFzhex','1278jbhPRP','1333665tUCCJK','3105822jYyYQp','1292vkArsq','73220KsXEbx','7qodGrY','21736132EMAsTx','737AOfvKz'];a247_0x1170=function(){return _0x3428a7;};return a247_0x1170();}export{extractList,extractPaging}from'../framework/response.js';export{riskLevelOrder}from'../framework/types.js';
|